To implement all its features, ANSIPLUS attaches itself to up to eleven system interrupts. Two are replaced (1Bh and 29h), and the remaining nine are supplemented (i.e., ANSIPLUS calls the original interrupt but extends its function). If possible, ANSIPLUS should always be installed after any other drivers that take over any of these interrupts without passing calls through. The following table lists the ANSIPLUS hooked interrupts and reasons for each:
The MS-DOS KEYB program for international keyboard support hooks the Int 09h Key Event interrupt without passing calls through to whatever was installed before (i.e., to ANSIPLUS). However, the Novell DOS version of KEYB does pass calls through to the prior Int 09h handler. Therefore, under MS-DOS (but not Novell DOS) if the KEYB program is being used to set up the keyboard, the following command must be executed after loading KEYB otherwise most ANSIPLUS keyboard related features will not work:
SETAPLUS LINK KEYEVENT
This command will re-install ANSIPLUS on the key event interrupt. The INSTALL program will automatically add this command to AUTOEXEC.bat if it finds a reference in it or in CONFIG.sys to KEYB and you are not using Novell DOS.
If the DISPLAY.sys device driver for code page switching is being used, the ANSIPLUS.exe device driver must be installed before DISPLAY.sys in CONFIG.sys. The INSTALL program will also automatically handle this.
If you suspect that a system interrupt is no longer accessible to ANSIPLUS because of a TSR or device driver that has been loaded after ANSIPLUS, you can test this with the command:
SETAPLUS INTERRUPT <intnum>
which displays, to the extent possible, the chain of programs attached to any selected interrupt. The <intnum> may be either a hexadecimal interrupt number or one of the following keywords:
|KEYEVENT||Interrupt 09h Key Event|
|VIDEO||Interrupt 10h Video|
|SYSTEMSERVICE||Interrupt 15h System Services|
|KEYREQUEST||Interrupt 16h Keyboard Request|
|KEYBREAK||Interrupt 1Bh Keyboard Break|
|TIMERTICK||Interrupt 1Ch User Timer Tick|
|DOSIDLE||Interrupt 28h DOS Idle|
|DOSTTY||Interrupt 29h DOS Fast TTY Output|
|MULTIPLEX||Interrupt 2Fh Multiplex|
|MSMOUSE||Interrupt 33h Mouse|
|PS2MOUSE||Interrupt 74h PS/2 Mouse Event|
If ANSIPLUS is missing from the listing, it can be relinked with the command:
SETAPLUS LINK <intnum>
© Copyright 2000-2007, Kristofer Sweger. All rights reserved.