328 lines
17 KiB
HTML
328 lines
17 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>Int 2F/AX=5453h
|
|
</TITLE>
|
|
<META NAME="Description" CONTENT="
|
|
Int 2F/AX=5453h - TesSeRact RAM-RESIDENT PROGRAM INTERFACE -
|
|
AX = 5453h
|
|
BX = subfunction
|
|
00h installation check
|
|
CX = 0000h
|
|
DS:SI - 8-char blank-padded name (see #02840)
|
|
Return: AX = FFFFh installed
|
|
CX = ID number of already-installed copy
|
|
AX = anything else, not installed
|
|
CX = ID number for TSR when installed
|
|
01h get user parameters
|
|
">
|
|
<META NAME="robots" CONTENT="none">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#FFD0A0">
|
|
<center>
|
|
<h2>Int 2F/AX=5453h
|
|
</h2>
|
|
</center><p>
|
|
<table border=1 cellpadding=3 cellspacing=1>
|
|
<td>
|
|
<a href="rb-4890.htm" tppabs="http://www.ctyme.com/intr/rb-4890.htm">
|
|
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
|
<a href="rb-4892.htm" tppabs="http://www.ctyme.com/intr/rb-4892.htm">
|
|
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
|
|
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
|
|
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
|
|
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
|
|
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
|
|
</td></table><p>
|
|
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
<h3><font color=#C00040>TesSeRact RAM-RESIDENT PROGRAM INTERFACE</font></h3>
|
|
<PRE>
|
|
AX = 5453h
|
|
BX = subfunction
|
|
00h installation check
|
|
CX = 0000h
|
|
DS:SI -> 8-char blank-padded name <a href="rb-4891.htm#Table2840" tppabs="http://www.ctyme.com/intr/rb-4891.htm#Table2840">(see #02840)</a>
|
|
<p><b>Return:</b><br>AX = FFFFh installed
|
|
CX = ID number of already-installed copy
|
|
AX = anything else, not installed
|
|
CX = ID number for TSR when installed
|
|
01h get user parameters
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = status
|
|
0000h successful
|
|
ES:BX -> user parameter block <a href="rb-4891.htm#Table2841" tppabs="http://www.ctyme.com/intr/rb-4891.htm#Table2841">(see #02841)</a>
|
|
nonzero failed
|
|
02h check if hotkey in use
|
|
CL = scan code of hot key <a href="rb-0045.htm#Table6" tppabs="http://www.ctyme.com/intr/rb-0045.htm#Table6">(see #00006)</a>
|
|
<p><b>Return:</b><br>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
|
|
<p><b>Return:</b><br>AX = nonzero, unable to install new handler
|
|
04h get internal data area
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = status
|
|
0000h successful
|
|
ES:BX -> TSR's internal data area <a href="rb-4891.htm#Table2842" tppabs="http://www.ctyme.com/intr/rb-4891.htm#Table2842">(see #02842)</a>
|
|
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 <a href="rb-0045.htm#Table6" tppabs="http://www.ctyme.com/intr/rb-0045.htm#Table6">(see #00006)</a>
|
|
BYTE hotkey shift state
|
|
BYTE flag value to pass to TSR (nonzero)
|
|
<p><b>Return:</b><br>AX = nonzero, unable to install hot keys
|
|
06h - 0Fh reserved
|
|
10h enable TSR
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = nonzero, unable to enable
|
|
11h disable TSR
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = nonzero, unable to disable
|
|
12h unload TSR
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = nonzero, invalid TSR number
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
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
|
|
<PRE>
|
|
<p><b>Return:</b><br>AX = nonzero, unable to restart TSR
|
|
14h get status word
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = FFFFh invalid ID number
|
|
= other, successful
|
|
BX = bit flags
|
|
15h set status word
|
|
CX = TSR ID number
|
|
DX = new bit flags
|
|
<p><b>Return:</b><br>AX = nonzero, unable to set status word
|
|
16h get INDOS state at popup
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>AX = 0000h successful
|
|
BX = value of INDOS flag
|
|
17h - 1Fh reserved
|
|
20h call user procedure
|
|
CX = TSR ID number
|
|
ES:DI -> user-defined data
|
|
<p><b>Return:</b><br>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
|
|
<p><b>Return:</b><br>AX = 0000h success
|
|
F0F0h user aborted with ^C or ^Break
|
|
other unable to stuff keystrokes
|
|
22h (v1.10) trigger popup
|
|
CX = TSR ID number
|
|
<p><b>Return:</b><br>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
|
|
<p><b>Return:</b><br>AX = 0000h success
|
|
FFFFh not safe to call background function
|
|
nonzero invalid ID number
|
|
24h - 2Fh reserved
|
|
</PRE>
|
|
<p><b>Notes:</b>
|
|
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 "
|
|
<p><b>See Also:</b>
|
|
<a href="rb-5419.htm" tppabs="http://www.ctyme.com/intr/rb-5419.htm">AX=CAFEh</a> - <a href="rb-1814.htm" tppabs="http://www.ctyme.com/intr/rb-1814.htm">INT 16/AX=55FFh</a> - <a href="rb-4215.htm" tppabs="http://www.ctyme.com/intr/rb-4215.htm">INT 2D"AMIS"</a>
|
|
<PRE>
|
|
<p><b>Index:</b><br>Installation check;TesSeRact TSR interface|uninstall;TesSeRact
|
|
<p>
|
|
<a name=table2840></a>
|
|
(Table 02840)
|
|
Values for TesSeRact names:
|
|
"AVATAR " AVATAR.SYS
|
|
"QeditTSR" TSR version of SemWare's Qedit editor
|
|
"SCRNBLNK" Trusted Access screen blanker
|
|
<p>
|
|
Format of TesSeRact User Parameter Block:
|
|
<a name=table2841></a>
|
|
Offset Size Description (Table 02841)
|
|
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 <a href="rb-0045.htm#Table6" tppabs="http://www.ctyme.com/intr/rb-0045.htm#Table6">(see #00006)</a>
|
|
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
|
|
<p><b>Index:</b><br>Hotkeys;TesSeRact TSR interface
|
|
<p>
|
|
Format of TSR internal data area:
|
|
<a name=table2842></a>
|
|
Offset Size Description (Table 02842)
|
|
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.0+ 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
|
|
</PRE>
|
|
<p>
|
|
<b>Category: <a href="cat-042.htm" tppabs="http://www.ctyme.com/intr/cat-042.htm">
|
|
TSR Libraries</a>
|
|
- <a href="int-2f-1.htm" tppabs="http://www.ctyme.com/intr/int-2F.htm">
|
|
Int 2Fh</a>
|
|
- <a href="alpha-t.htm" tppabs="http://www.ctyme.com/intr/alpha-t.htm">
|
|
T</a>
|
|
</b><p><p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
<table border=1 cellpadding=3 cellspacing=1>
|
|
<td>
|
|
<a href="rb-4890.htm" tppabs="http://www.ctyme.com/intr/rb-4890.htm">
|
|
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
|
<a href="rb-4892.htm" tppabs="http://www.ctyme.com/intr/rb-4892.htm">
|
|
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
|
|
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
|
|
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
|
|
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
|
|
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
|
|
</td></table><p>
|
|
|
|
<!-- Bottom Link Start -->
|
|
|
|
<center>
|
|
|
|
<p><table border=1 bgcolor="#ffff99"><tr><td>
|
|
<table border=0 height=80>
|
|
<tr align=center><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">
|
|
<img src="tip.gif" tppabs="http://graphics.ctyme.com/gif/tip.gif" ALT="Sponsors" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">Shopping</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">
|
|
<img src="comment.gif" tppabs="http://graphics.ctyme.com/gif/comment.gif" ALT="Forum" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">Forum</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">
|
|
<img src="mail.gif" tppabs="http://graphics.ctyme.com/gif/mail.gif" ALT="email" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">EMail</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">
|
|
<img src="toc.gif" tppabs="http://graphics.ctyme.com/gif/toc.gif" ALT="Index" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">Index</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">
|
|
<img src="home.gif" tppabs="http://graphics.ctyme.com/gif/home.gif" ALT="Home" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">Home</a>
|
|
|
|
</td><td width="90">
|
|
|
|
<center>
|
|
<FORM ACTION="https://secure.paypal.com/cgi-bin/webscr" tppabs="https://secure.paypal.com/cgi-bin/webscr" METHOD="POST" traget="_blank">
|
|
<INPUT TYPE="hidden" NAME="cmd" VALUE="_xclick">
|
|
<INPUT TYPE="hidden" NAME="business" VALUE="marc@perkel.com">
|
|
<INPUT TYPE="hidden" NAME="return" VALUE="http://www.perkel.com">
|
|
<INPUT TYPE="hidden" NAME="item_name" VALUE="Donation To Support this Site">
|
|
<INPUT TYPE="hidden" NAME="no_intl" VALUE="1">
|
|
<INPUT TYPE="image" SRC="x-click-but7.gif" tppabs="http://images.paypal.com/images/x-click-but7.gif" vspace=9
|
|
NAME="submit" ALT="Make payments with PayPal - it's fast, free and secure!">
|
|
</FORM>
|
|
|
|
</td></tr></table></td></tr></table><p>
|
|
|
|
|
|
<center>
|
|
<p>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/hosting/index.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/hosting/index.htm'" tppabs="http://www.ctyme.com/hosting/index.htm" target="_blank">
|
|
<img src="ctymehost.gif" tppabs="http://graphics.ctyme.com/gif/ctymehost.gif"
|
|
border=3 height=60 width=468></a>
|
|
<p>
|
|
<!-- Ad End --->
|
|
|
|
</center>
|
|
<FORM ACTION="http://service.bfast.com/bfast/click" target="_blank">
|
|
<INPUT TYPE="hidden" NAME="siteid" VALUE="30472466" >
|
|
<INPUT TYPE="hidden" NAME="bfpage" VALUE="horizontal">
|
|
<INPUT TYPE="hidden" NAME="bfmid" VALUE="27253343" >
|
|
<INPUT TYPE="hidden" NAME="num" VALUE="30">
|
|
|
|
<table bgcolor=white border=3><tr><td>
|
|
<table bgcolor=white border=0>
|
|
<tr><td>
|
|
<IMG SRC="serve-bfmid=27253343&siteid=30472466&bfpage=horizontal.gif" tppabs="http://service.bfast.com/bfast/serve?bfmid=27253343&siteid=30472466&bfpage=horizontal" BORDER="0" WIDTH="1" HEIGHT="1" align=right NOSAVE >
|
|
<center><b>Search the web with Google</b></center>
|
|
</td></tr><tr><td>
|
|
<TABLE cellpadding=0 cellspacing=5 bgcolor="#FFFFFF">
|
|
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr><tr><td>
|
|
<IMG SRC="affiliate_logo.gif" tppabs="http://www.google.com/affiliates/affiliate_logo.gif" border="0" ALT="Google" align="center">
|
|
<INPUT TYPE=text name=q size=30 maxlength=255 value="">
|
|
<INPUT type=submit name=sa VALUE="Go">
|
|
</td></tr>
|
|
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr></TABLE>
|
|
</td></tr></table>
|
|
</tr></td></table>
|
|
</FORM>
|
|
|
|
</center>
|
|
|
|
|
|
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
|
|
<!-- Bottom Link End -->
|
|
|
|
</BODY>
|
|
</HTML>
|