^$#K+"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"

^$#K+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 long versions of interrupt search strings are enabled (see Win95 WinHelp Restrictions).

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.

^$#K+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.

^$#+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. Search can fail in long topics after about 32 kb.

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 (10 seconds on a 120 MHz Pentium based computer, 50 seconds on a 33 MHz 486 based, Interrupt List release 48). 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 Microsoft's 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.

WinHelp v. 4.0 (coming with Windows 95) implements Full Text Search. Be aware of the following facts:
1. WinHelp generates an index file the first time full text search is used on a help file. If you want to search for phrases (e.g. "list of lists") you must compile the list with maximum information. The size of a maximum information index file is about 2.5 times the size of intwin.hlp, and the size of a minimum information index file about 0.8 times the size of intwin.hlp. HINTSRCH can search intwin.hlp about 30 times in the same amount of time that it takes WinHelp to compile the index file.
2. WinHelp loads the index information the first time full text search is used after a help file is opened. HINTSRCH can search intwin.hlp about three times in the same amount of time that it takes WinHelp to load the index information.
3. WinHelp opens topics with search hits at the beginning of the topics, not at the proper position inside the topics. The search hits are not flaged in any way.
The times above are based on intwin.hlp and a maximum information index file located on a remote drive.

^$#K+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 secondary (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.

^$#K+INTWIN Help and Hints

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

^$#K+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.

^$#K+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.

^$#K+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 - <title> | nn_0 | Sub-sub index for INT NN, nn are two hex digits, e.g. 00_0, 03_0.

INT NN AHAL - <title>

nn_1

First entry about INT NN, the following 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 title>

tnnnn

Table No. nnnn, nnnn are the four decimal 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 File | id1st | INTERRUP.1ST file topic.
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.

^$#K+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 5) \
	INT 21 AX = 5E01         5)  \
	INT 21 AH = 5E           5)   \
	INT 21          1)       5)    \
	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.
5)	The long version of interrupt search keys can be disabled at compile time, see Win95 WinHelp Restrictions. In this case, topic "INT  xx Search Keys" lists examples of corresponding long and short search keys.

^$#K+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.

^$#K+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.

^$#K+Win95 WinHelp Restrictions

WinHelp 4.00 coming with Windows 95 has a limited capacity in its keyword index, and intwin.hlp compiled with the default configuration file in release 48 of the Interrupt List exceeds its capacity. Therefore the search index window is left empty. Since there are no warnings, this is possibly an unintended feature of WinHelp 4.00.

The following ways are suggested for using the search index under Windows 95:

1. Complain to Microsoft about the limitation (if you can find or make a breach in their walls against complains).

2. Compile the Interrupt List with a limited number of keywords. Version 1.17 of int2whlp published with Interrupt List release 49 has an option to disable the long version of interrupt search keys (see Compile Time Configuration and Search Facilities). This does reduce the convenience of intwin.hlp, but not the functionallity. The configuration file included in release 49 disables the long keys. This will probably keep intwin.hlp release 49 below WinHelp 4.00's index limit, and possibly also release 50. WinHelp 3.10/3.11 users can override the disabling by compiling with
	INTWIN -L+

3. Stick to WinHelp.exe 3.10/3.11

4. Do not necessarily compile the newest version of the Interrupt List, see paragraph 2.

5. Compile the list with ports.lst and/or memory.lst included as type 1 files instead of type 2 files, so they do not get their own indexes and generate search keys for each individual topic. However, this significantly reduces the functionallity of intwin.hlp.