INTWIN Help and Hints

Interrupts
Table Cross-References
Search Facilities
"SeeAlso:"
Printing
Copying
Help Window Pushbuttons
Compile Time Configuration
Size and Color
Remote Access


Interrupts
----------

The interrupt topics can be accessed with search keys (see Search Facilities)
or from the main index via sub indexes.

The appearance of sub indexes depends on some configuration file settings and
program options at compile time. The following text describes the default
appearence. See Compile Time Configuration for other posibilities.

The main index's "Interrupt Index" entry takes you to either a compressed index
or to an expanded index. Each of them has a hotspot at the top causing the
other one to pop up and to be the one selected from the main index.

The compressed index has references to a subindex for each interrupt number,
for example to INT 03 - CPU-generated - BREAKPOINT. The subindexes have
references to the individual interrupt topics.

The expanded index has direct references to each individual interrupt topic.

Many interrupt topics have references to tables, always of the form "#nnnn"
where nnnn is a four digit decimal number. Clicking on these hotspots causes
the table to pop up in a separate window, so it is easy to switch between the
two topics. Tables can have references to other tables, and if such a hotspot
is selected in the secondary (table) window, the current window is erased and
the new table is drawn. To ease cross referencing between two tables, use the
first table's hotspot "Copy to Main" to have it pop up in the main window
before selecting the referenced table.


Table Cross-References
----------------------

Tables are separate topics in the help file. When referenced from a "#nnnn"
hotspot, the table pops up in a secondary window, thus the user can easily
change between the source in the main help window and the referenced table in
the secondary window. However, secondary windows are less flexible than the
main window:
        Topics are not recorded in the history list.
        You cannot browse between topics (<< and >> pushbuttons).
        The topics cannot be copied or printed from the secondary window.
        Therefore all tables have a "Copy to Main" hotspot at the top.

Copying a table to the main window also eases cross referencing between the
table and subtables referenced from that table.

There are two search keys for each table topic: "#nnnn" where nnnn is the four
digit table number, and the table title as given in the Interrupt List
("Bitfields for ...", "Call ... with:", "Format of ...", "Values for ...").

There is a Tables subindex with a listing of all the tables.

The table topic titles include the interrupt number and subfunction where the
table is defined, and there is a hotspot at the end of each table that pops up
the appropriate interrupt in the main window.

Normally every table will be referenced from the current interrupt either
directly or inderectly (from another table). If for some reason the compiler
program creating the INTWIN help file fails to detect a reference to one or
more table, the program inserts a "Table #nnnn" hotspot at the end of the
interrupt topic for each of these tables, to ensure a path to the table.


Search Facilities
-----------------

INTWIN facilitates seaching interrupt topics with many different keys, based
on:
a. Elements in the interrupt header line.
b. Keys in the file CATEGORY.KEY for the appropriate interrupts category.
c. Combinations of interrupt number and register contents. These keys have a
   normal and a short form. The short form was introduced to ease the typing
   of a search string. See the examples below.
d. Category letters.

For example,

--------D-215E01CH00-----------------------------
INT 21 - DOS 3.1+ network - SET MACHINE NAME
        AX = 5E01h
        CH = 00h undefine name (make it invalid)

will be listed with the following search keys:

        DOS 3.1+ network          \      a
        SET MACHINE NAME          /
        DOS kernal                \
        kernal (DOS)               >     b
        operating systems (DOS)   /
        INT 21 AX = 5E01 CH = 00  \
        INT 21 AX = 5E01           \
        INT 21 AH = 5E              \
        INT 21          1)           \
        21 5E01 CH00                  \
        21 5E01                        > c
        21 5E           2)            /
        21              1)           /
        AX = 5E01                   /
        AH = 5E         3)         /
        CH = 00                   /
        D!              4)               d

1) WINHELP lists only the first 400 search hits.
2) The short form of an interrupt using AL to specify a function has two
   leading dashes in the function number, e.g. the short form of INT 2D AL =
   10 is 2D --10.
   Two dashes can be appended to the short form of an interrupt using AH for
   funtion number, to distinguish the string from the more general string
   used also as keyword for interrupts with the same value in the high part
   of the AX register, e.g. 10 00-- will give less search hits than 10 00.
3) Use AH = nn to search for functions called with nn in AH or in the high
   byte of AX. Use AX = nn-- to search for functions called with nn in AH and
   no specific value in AL.
4) Because WINHELP's search facility does not distinguish between letter
   case, the search keys for capital letter categories are the letter
   followed by an exclamation mark.


"SeeAlso:"
----------

INTWIN does not provide hotspots for interrupt references in "See" or
"SeeAlso:" fields, as a failsafe interpretation of these references is not
feasible. Rather, use INTWIN's search facilities, and use the short form
interrupt search string. Then, from the list of hits, select the right topic.
Remember that if no interrupt number is specified in the reference, it is the
current interrupt number.

Examples and number of hits are based on release 43 of the List:

INT 03 - Columbia PCs (desktop,VP portables) - ROM DEBUGGER
...
SeeAlso: INT 00"Zenith",INT 03"Realia"

Search on "00": 2 hits, one is "INT 00 ---- - Zenith - ROM DEBUGGER"
Search on "03": 8 hits, one is "INT 03 ---- - Realia COBOL - DEBUGGER SUPPORT"

INT 05 - PRINT SCREEN
...
SeeAlso: INT 10/AH=12h/BL=20h

Search on "10 12 BL20": one hit.

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE
        AX = 007Eh
        BX = horizontal dimension of the mode desired
...
SeeAlso: AH=00h,AX=0070h,AX=007Fh,AX=6F05h,AH=FFh"GO32"

Search on "10 00--": one hit.
Search on "10 0070": one hit.
Search on "10 007F": 9 hits, 4 begin with "INT 10 007F - VIDEO - Paradise VGA"
Search on "10 6F05": one hit.
Search on "10 FF--": 3 hits, one is "INT 10 FF-- - DJ GO32.EXE ..."

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION
        AX = 007Fh
        BH = 00h
...
SeeAlso: AX=007Fh/BH=01h,AX=007Fh/BH=02h

Search on "10 007F BH01" and "10 007F BH02": one hit each. - In this case it is
evident that the referenced topics are probably the next topics, so browsing to
them is easier than searching.

INT 10 - VIDEO - SET CURSOR POSITION
        AH = 02h
...
SeeAlso: AH=03h,AH=05h,INT 60/DI=030Bh

Search on "10 03": one hit.
Search on "10 05": 3 hits, one is "INT 10 05-- - VIDEO -  SELECT ACTIVE DISPLAY
PAGE"
Search on "60 DI030B": one hit.

INT 88 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE
        AL = 01h
...
SeeAlso: AL=02h,AL=08h,INT C8"APL"

Search on "88 --02": one hit
Search on "88 --08": one hit
Search on "C8": 2 hits, one is "INT C8 ---- - APL*PLUS/PC - IDENTICAL TO INT
88"


Full Text Search
----------------

This compilation of the Interrupt List includes a full text search facility
implemented as a special version of Oxford Computer Consultants' text search
facility. To use it, copy HINTSRCH.DLL from Oxford Computer Consultants'
program package HINTSRCH.ZIP to your Windows SYSTEM directory. Use the
"Find Text" push button to invoke the facility from the Interrupt List window.

Thanks to Oxford Computer Consultants for supplying this program. See material
in HINTSRCH.ZIP for information about Oxford Computer Consultants' products.
Note that HINTSRCH.DLL will work only with the INTWIN.HLP file.

Oxford Computer Consultants' text search facility is pretty fast, but after
all, it does take time to uncompress and search several megabytes of text.
Microsoft offers a Full Text Search kit in the Development Network library
which uses an index file for the search, so a search is a matter of an index
lookup rather than a text search, and thus it is virtually instant. This
compilation of the Interrupt List is prepared to use the Microsoft kit in that
it includes a BAG.INI baggage file with the following contents:


	[bag.ini]
	groupcount=1
	group1=INTWIN
	[INTWIN]
	Title=INTWIN Full Text Search
	Indexfile=INTWIN.IND

If you have access to Microsoft's kit and want to use it for the List, you can
use the WH_wEdit program (see "Size and Color") to delete macros for the Oxford
Computer Consultants text search facility and insert the macros for the
Microsoft text search facility. Note that the index file you must generate is
very long, about 1.7 times the size of INTWIN.HLP.


Printing
--------

A topic can be sent to the currently selected printer by clicking on the Print
pushbutton or by pressing P.

Another printer or printer setup can be specified using the File menu's Print
setup... entry.


Copying
-------

A topic can be copied to the clipboard by clicking on the Copy pushbutton or by
pressing O.

A selected part of a topic can be copied to the clipboard from the Edit menu's
Copy... entry.


Help Window Pushbuttons
-----------------------

The Help Window includes some extra shortcut pushbuttons.

"Print" sends the current topic to the currently selected printer. See also
Printing.

"Copy" copies the current topic to the clipboard. See also Copying.

"Exit" closes both the main window and an open secodary (table) window.
Selecting "Close" from the control menu or pressing Alt F4 close only the main
window.

"Print" and "Exit" are equivalent to selecting "Print Topic" and "Exit" from
the "File" menu.

"Text Search" invokes a Full Text Search facility.


Compile Time Configuration
--------------------------

Apparently this help file was already compiled. Many properties of the help
file can be defined in the INT2WHLP.CFG file used by the the INT2WHLP compiler
available in the DOS version of Ralf Brown's Interrupt List, see INTERRUP.1ST.
After compilation, only a few of them can be changed, and only utilizing
special programs, see Size and Color.

The following can be controlled at compile time:

Whether the help file has both a compressed and an expanded index, or a
compressed index only.

Which one of the two pops up initially.

Whether single-entry interrupts (interrupts numbers with only one topic in the
list) are referenced directly from the compressed index, or the reference in
the compressed index goes to a subindex with one entry.

Whether the compressed index is listed in a single column with a header for
each interrupt number, or in 4, 8, or 16 columns without headers, but with more
entries visible simultaniously.

Whether or not the expanded index has headers separating the interrupt numbers.

Whether or not keywords (like "See also:", "Notes") are bolded.

Whether or not there are spaces around the equal sign in interrupt search
strings e.g. "INT 21 AH = 4C" or "INT 21 AH=4C".

The initial position and size, and the background colors of both the main and
the table window.

The font and font size used for the headers and for the text.

Extra topics included in addition to Ralf Brown's Interrupt List (like this
Help and Hints text).

See also the files (in INTERnn?.ZIP/INT2WHLP.ZIP):
        I2W-FILE.TXT
        I2W-HINT.TXT
        I2W-CFG.TXT
        I2W-OPT.TXT
        Program source files.
        I2W-TEST.ZIP
Use the latter subpackage for experimenting with compile time options and their
effects.


Size and Color
--------------

The position and size of the secondary window used for tables must be defined
at compile time, and the information is stored in the INTWIN.HLP file. However,
WINHELP reads the values as a fraction of the screen size, and therefore proper
values depend on the graphics resolution.

To facilitate the use of a help file on another graphics system than it was
compiled for, the program WH_wEdit can be obtained from SimTel Software
Repository mirrors as WH_EDnnn.ZIP in directory SimTel/win3/winhelp/. nnn is a
version number >= 111. The SimTel directory may be a subdirectory on some
mirror sites. This program will let you edit both the position and size, and
the background colors of the nonscrolling (header) and scrolling (text) areas
of the screen. See INTERRUP.1ST for SimTel mirror sites.

Version 1.11 (and newer) of WH_wEdit facilitates also editing of macros in help
files. This can be useful if you want to use another Full Text Search facility
than the one included in this compilation.

WH_wEdit is a Windows application, and it is straightforward to use. It has a -
very short - online help.

WH_wEdit is freeware. It is supplied without any warranties. Be sure to have a
backup of files you want to edit with WH_wEdit.


Remote Access
-------------

This file can be accessed from other help files. The interfile jump address
"Identifier@drive:\path\intwin.hlp" or the jump macro
"JumpId(`drive:\path\intwin.hlp',`Identifier')"  will open this file at the
specified identifier - or "context string" as it is usually called in WINHELP
terminology. Below is a list of identifiers used for the Interrupt List.

Window Title    Identifier      Comment

Contents:       contents        Main index

Interrupt Index idIndex         Expanded subindex, if included

Interrupts      idInterrupts    Compressed subindex

INT NN -        nn_0            Sub-sub index for INT NN, nn are two hex
<title>                         digits, e.g. 00_0, 03_0.

INT NN AHAL -   nn_1            First entry about INT NN, the following
<title>                         entries have consecutive identifiers ... nn_9,
                                nn_10, ... , for example. 03_1, 03_2.
                                Note: Topics selected with these identifiers
                                can change as information is updated in new
                                releases of Ralf Brown's Interrupt List. See
                                also "aliases" later in this topic.

Tables          idTables        Table index.

NN AHAL <table  nnnn            Table No. nnnn, nnnn are the four decimal
title>                          digits from the List.
                                NN and AHAL in the title are the interrupt
                                number and the register contents (sub
                                function) where the table is defined.
                                Examples: t0001, t0002. See note at identifier
                                "nn_1".

FILELIST        1               The initial part of the Interrrupt List.

<notes>         n               Other notes have consecutive numbers as
                                identifiers, e.g. 2, 3.

INTERRUP.1ST    id1st           INTERRUP.1ST file topic.
File

Credits         idCredits       The Credits topic.


The help file also uses the identifier "Compressed_Index", and partial
(filtered) compilations of the list use the identifiers "idPartComp",
"idFlt_file", and "idFlt_meth".

Aliases for Interrupt List topics can be included in the INT2WHLP configuration
file and compiled with the list. As an example, the configuration file's
[ALIAS] and [TABLEALIAS] sections have the lines:

HHtest1=INT 02 ---- - external hardware - NON-MASKABLE INTERRUPT
and
HHtest2=03 0913 Format of Soft-ICE breakpoint structure:

causing HHtest1 and HHtest2 to be alternative identifiers for the interrupt and
the table specified, also available for interfile (remote) access.

Other identifiers can be defined by including files at compile time, for
example idHelpHints for the index to this part of the file, and HHaccess for
this topic.

