[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Int 2F Fn 5453 - Tesseract RAM-resident Program Interface [t]
AX = 5453h
BX = subfunction
00h installation check
CX = 0000h
DS:SI -> 8-char blank-padded name
Return: AX = FFFFh installed
CX = ID number of already-installed copy
= anything else, not installed
CX = ID number for TSR when installed
01h get user parameters
CX = TSR ID number
Return: AX = 0000h successful
ES:BX -> user parameter block (see below)
= nonzero failed
02h check if hotkey in use
CL = scan code of hot key
Return: AX = FFFFh hot key conflicts with another TSR
otherwise safe to use the hotkey
03h replace default critical error handler
CX = TSR ID number
DS:SI -> new routine for INT 24h
Return: AX = nonzero, unable to install new handler
04h get internal data area
CX = TSR ID number
Return: AX = 0000h
ES:BX -> TSR's internal data area (see below)
= nonzero, TSR not found
05h set multiple hot keys
CX = TSR ID number
DL = number of additional hot keys to allocate
DS:SI -> table of hot keys
BYTE hotkey scan code
BYTE hotkey shift state
BYTE flag value to pass to TSR (nonzero)
Return: AX = nonzero, unable to install hot keys
06h - 0Fh reserved
10h enable TSR
CX = TSR ID number
Return: AX = nonzero, unable to enable
11h disable TSR
CX = TSR ID number
Return: AX = nonzero, unable to disable
12h unload TSR
CX = TSR ID number
Return: AX = nonzero, invalid TSR number
Note: if any interrupts used by TSR have been grabbed by
another TSR, the TesSeRact routines will wait until
it is safe to remove the indicated TSR from memory
13h restart TSR
CX = TSR ID number of TSR which was unloaded but is still in
memory
Return: AX = nonzero, unable to restart TSR
14h get status word
CX = TSR ID number
Return: AX = FFFFh invalid ID number
= other, successful
BX = bit flags
15h set status word
CX = TSR ID number
DX = new bit flags
Return: AX = nonzero, unable to set status word
16h get INDOS state at popup
CX = TSR ID number
Return: AX = 0000h successful
BX = value of INDOS flag
17h - 1Fh reserved
20h call user procedure
CX = TSR ID number
ES:DI -> user-defined data
Return: AX = 0000h successful
21h stuff keystrokes into keyboard buffer
CX = TSR ID number
DL = speed
00h stuff keystrokes only when buffer is empty
01h stuff up to four keystrokes per clock tick
02h stuff up to 15 keystrokes per clock tick
DH = scan code flag
if zero, buffer contains alternating ASCII and scan codes
if nonzero, buffer contains only ASCII codes
SI = number of keystrokes
ES:DI -> buffer to stuff
Return: AX = 0000h success
F0F0h user aborted with r reak
other unable to stuff keystrokes
22h (v1.10) trigger popup
CX = TSR ID number
Return: AX = 0000h success, TSR will either pop up or beep to
indicate that it is unable to pop up
nonzero invalid ID number
23h (v1.10) invoke TSR's background function
CX = TSR ID number
Return: AX = 0000h success
FFFFh not safe to call background function
nonzero invalid ID number
24h - 2Fh reserved
Notes: Borland's THELP.COM popup help system for Turbo Pascal and Turbo C
(versions 1.x and 2.x only) fully supports the TesSeRact API, as
do the SWAP?? programs by Innovative Data Concepts.
AVATAR.SYS supports functions 00h and 01h (only the first three fields
of the user parameter block) using the name "AVATAR "
See Also: AX=CAFEh,INT 16/AX=55FFh,INT 2D"AMIS"
Index: installation check;TesSeRact TSR interface|uninstall;TesSeRact
Values for TesSeract names:
"AVATAR " AVATAR.SYS
"QeditTSR" TSR version of SemWare's Qedit editor
"SCRNBLNK" Trusted Access screen blanker
Format of User Parameter Block:
Offset Size Description
00h 8 BYTEs blank-padded TSR name
08h WORD TSR ID number
0Ah DWORD bitmap of supported functions
0Eh BYTE scan code of primary hotkey
00h = pop up when shift states match
FFh = no popup (if shift state also FFh)
0Fh BYTE shift state of primary hotkey
FFh = no popup (if scan code also FFh)
10h BYTE number of secondary hotkeys
11h DWORD pointer to extra hotkeys set by func 05h
15h WORD current TSR status flags
17h WORD PSP segment of TSR
19h DWORD DTA for TSR
1Dh WORD default DS for TSR
1Fh DWORD stack at popup
23h DWORD stack at background invocation
Index: hotkeys;TesSeRact TSR interface
Format of TSR internal data area:
Offset Size Description
00h BYTE revision level of TesSeRact library
01h BYTE type of popup in effect
02h BYTE INT 08 occurred since last invocation
03h BYTE INT 13 occurred since last invocation
04h BYTE active interrupts
05h BYTE active soft interrupts
06h BYTE DOS major version
07h BYTE how long to wait before popping up
08h DWORD pointer to INDOS flag
0CH DWORD pointer to DOS critical error flag
10h WORD PSP segment of interrupted program
12h WORD PSP segment of prog interrupted by INT 28
14h DWORD DTA of interrupted program
18h DWORD DTA of program interrupted by INT 28
1Ch WORD SS of interrupted program
1Eh WORD SP of interrupted program
20h WORD SS of program interrupted by INT 28
22h WORD SP of program interrupted by INT 28
24h DWORD INT 24 of interrupted program
28h 3 WORDs DOS 3+ extended error info
2Eh BYTE old BREAK setting
2Fh BYTE old VERIFY setting
30h BYTE were running MS WORD 4.0 before popup
31h BYTE MS WORD 4.0 special popup flag
32h BYTE enhanced keyboard call in use
33h BYTE delay for MS WORD 4.0
11 times (for INTs 08h,09h,13h,16h,1Ch,21h,28h,2Fh,1Bh,23h, and 24h):
DWORD old interrupt vector
BYTE interrupt number
WORD offset in TesSeRact code segment of new interrupt handler
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson