📄 interrup.o
字号:
Interrupt List, part 15 of 18
Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 Ralf Brown
--------*-60---------------------------------
INT 60 - reserved for user interrupt
--------v-60---------------------------------
INT 60 - VIRUS - "Zero Bug" - INSTALLATION CHECK
Desc: The "Zero Bug" virus hooks this vector. It considers itself installed
if offset 103h of the handler's segment contains the bytes "ZE"
SeeAlso: INT 32"VIRUS",INT 44"VIRUS",INT 61"SEMTEX"
--------d-60---------------------------------
INT 60 - Adaptec and OMTI controllers - DRIVE 0 DATA
SeeAlso: INT 41"HARD DISK 0",INT 61"Adaptec",INT 62"Adaptec",INT 63"Adaptec"
SeeAlso: INT 64"Adaptec",INT C0"AMI",#00732 at INT 1A/AX=B102h
Notes: this vector stores the first four bytes of the parameter table for
hard disk 0
these vectors are used by the following Adaptec controllers:
ACB 2370 A/B/C, ACB 2372 A/B/C, ACB 2333 A/B, 2322B-8, 2322B-16
these vectors are NOT used by the following Adaptec controllers:
ACB 2310, ACB 2312, ACB 2320D, ACB 2322D
--------b-60---------------------------------
INT 60 - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)
Desc: the low word of this vector contains the segment of the RAM data area
to be used by the system ROM at F400h:A000h, and the high word
contains the length of the data area (see #03263)
SeeAlso: INT 61"TI Professional PC",INT 66"TI Professional PC"
Format of TI Professional System ROM data area:
Offset Size Description (Table 03263)
00h BYTE port 00h shadow
01h BYTE port 03h shadow
02h BYTE port 04h shadow
03h WORD system configuration word (see #03266)
05h BYTE 25ms count
06h WORD offset of timing event 1 (0008h)
08h WORD (event 1) offset of timing event 2 (0010h)
0Ah BYTE (event 1) unused (FFh)
0Bh BYTE (event 1) active flag (bit 7 set if on)
0Ch WORD (event 1) count-down until end of event
0Eh WORD (event 1) event routine (in segment F400h) to call at timeout
10h WORD (event 2) offset of timing event 3 (0018h)
12h BYTE (event 2) unused (FFh)
13h BYTE (event 2) active flag (bit 7 set if on)
14h WORD (event 2) count-down until end of event
16h WORD (event 2) event routine (in segment F400h) to call at timeout
18h WORD (event 3) offset of timing event 3 (0020h)
1Ah BYTE (event 3) unused (FFh)
1Bh BYTE (event 3) active flag (bit 7 set if on)
1Ch WORD (event 3) count-down until end of event
1Eh WORD (event 3) event routine (in segment F400h) to call at timeout
20h WORD (event 4) 0000h - last event
22h BYTE (event 4) unused (FFh)
23h BYTE (event 4) active flag (bit 7 set if on)
24h WORD (event 4) count-down until end of event
26h WORD (event 4) event routine (in segment F400h) to call at timeout
28h WORD offset of start of text display within segment DE00h
2Ah WORD end of display
2Ch WORD current absolute cursor position
2Eh WORD start of current character row
30h WORD current cursor column
32h WORD cursor type and size (see #03264)
34h WORD start of protected status region on screen (0000h = none)
36h BYTE pop flag used by some ROM routines
00h pop registers before return
nonzero: do not pop
37h BYTE unused (FFh)
38h BYTE PAUSE flag
00h off
FFh on
39h BYTE temp: current attribute while moving characters on screen
3Ah WORD start of keyboard queue (next key at start+2 or 0042h if 0060h)
3Ch WORD end of keyboard queue (next key inserted at end+2 or 0042h)
3Eh BYTE number of characters in buffer
3Fh BYTE keyboard mode flags (see #03265)
40h BYTE Alt-digit-digit-digit accumulator
41h BYTE Alt-digit-digit-digit count of digits (mod 3)
42h 16 WORDs keyboard buffer (circular queue)
62h 8 DWORDs Drive Interface Table pointers for floppies A:-D: + four others
(0000h:0000h if pointer not in use)
82h BYTE disk-error retry count (incremented on each disk error)
83h 2 BYTEs BIOS scratch space
85h 8 BYTEs current cylinder number for drives 0-7
FFh = unknown
8Dh BYTE BIOS scratch space
8Eh BYTE hard error code for last disk access
00h operation successful
8Fh 8 BYTEs save area for disk DSR parameters
97h 6 BYTEs current drive status
9Dh BYTE retry error status
9Eh BYTE BIOS scratch space
9Fh 7 BYTEs ???
A6h 2 WORDs INT 47 save area for SS,SP
AAh 2 WORDs INT 46 save area for SS,SP
AEh 2 WORDs INT 43 save area for SS,SP
B2h 2 WORDs save area for SS,SP to be restored by common intr. exit routine
B6h 24 WORDs stack for INT 47
E6h 24 WORDs stack for INT 46
116h 17 WORDs stack for INT 43
13Ah 6 BYTEs system date and time (hundredths, seconds, minutes, hours, and
WORD days since 01jan1980)
Note: timing event 1 is the disk I/O timeout, event 2 is the floppy disk
motor timeout, event 3 is the floppy disk motor spin-up time, and
event 4 is used to turn off the speaker after a delay
Bitfields for TI Professional PC cursor size and type:
Bit(s) Description (Table 03264)
15 reserved (0)
14-13 cursor type
00 nonblinking
01 off
10 slow blink
11 fast blink
12-8 starting scan line (0-11)
7-5 reserved (0)
4-0 ending scan line (0-11)
SeeAlso: #03263
Bitfields for TI Professional PC keyboard mode flags:
Bit(s) Description (Table 03265)
7 CapsLock was ON at last keypress
6-4 reserved (0)
3 repeat key
2 Shift was down at last keypress
1 Alt was down at last keypress
0 Ctrl was down at last keypress
SeeAlso: #03263
Bitfields for TI Professional System Configuration Word:
Bit(s) Description (Table 03266)
0 drive A: installed
1 drive B: installed
2 drive C: installed
3 drive D: installed
4 drive A: is 80-track
5 drive A: is double-sided
6 60-Hz (USA,etc.) system instead of 50-Hz (Europe)
7 hard disk installed
8 serial port 1 installed
9 serial port 2 installed
10 serial port 3 installed
11 serial port 4 installed
14-12 installed graphics planes
000 none
001 plane A
111 planes A, B, and C
15 clock installed
SeeAlso: #03263
--------b-60---------------------------------
INT 60 - Atari Portfolio - USER INTERFACE FUNCTIONS
Desc: supplies a number of subfunctions which perform such functions as
drawing boxes and menus, and provide input line editing
SeeAlso: INT 61/AH=00h"Atari",INT 61"EXTENDED BIOS"
--------V-60---------------------------------
INT 60 - Nabbit v2.0 - (NOT A VECTOR!) - INSTALLATION CHECK
Program: Nabbit is a shareware resident screen data grabber by RSE Inc.
Range: INT 60 to INT 66, selected by searching for first free vector
Note: the Nabbit installation check consists of testing whether the
interrupt vector points at the ASCIZ signature string "iG"
(69h 47h 00h)
--------V-60---------------------------------
INT 60 - ATI M64VBE.COM - INSTALLATION SIGNATURE
Program: M64VBE is a VESA VBE 2.0 driver TSR for ATI's Mach64 video chip
InstallCheck: scan for an interrupt with the ASCIZ signature "M64VBE" three
bytes past the interrupt handler
Range: INT 60 to INT 66, selected by searching for first free vector
SeeAlso: INT 10/AX=4FDDh"M64VBE",INT 10/AX=4FFFh/BX=364Dh"M64VBE"
--------V-60---------------------------------
INT 60 U - Buffit v3.0 - (NOT A VECTOR!) - INSTALLATION CHECK
Program: Buffit is a shareware scrollback utility by D.T. Hamilton
Range: INT 60 to INT 6F, selected by searching for first free vector
Notes: the Buffit installation check consists of testing whether the
interrupt vector points at the ASCII signature "Buffit "
there is a private entry point (see #03267) immediately following the
signature string, i.e. eight bytes beyond the address pointed at
by the interrupt vector
(Table 03267)
Call Buffit private entry point with:
AH = function
00h get information and hotkey state
01h get information and toggle hotkey state
Return: AH = new hotkey state (00h enabled, 01h disabled)
AL = hotkey scan code (see #00006)
BH = hotkey shift states
BL = ??? (01h)
CX = segment of resident code
DH = interrupt number used for signature pointer
DL = ??? (00h)
SI = INT 09 handler offset
DI = INT 21 handler offset
Index: hotkeys;Buffit
--------r-60---------------------------------
INT 60 - PC-IPC API
STACK: DWORD pointer to parameter block (see #03268)
Return: STACK: unchanged
Program: PC-IPC is a shareware TSR by Donnelly Software Engineering which
allows communication between independent programs
Range: INT 00 to INT FF, selected by commandline switch
Format of PC-IPC parameter block:
Offset Size Description (Table 03268)
00h WORD caller's ID
02h WORD to ID
04h WORD command code (see #03269)
06h WORD returned status (see #03270)
08h WORD returned error code (see #03271)
0Ah WORD size of data
0Ch DWORD pointer to data buffer
(Table 03269)
Values for PC-IPC command code:
01h "IPC_CMND_INQUIRE" inquire current status
set status field, writes WORD to data buffer containing free
message space in bytes, and sets the "size" field to the
number of messages waiting
02h "IPC_CMND_ENABLE" reenable PC-IPC
ignored unless called with the same ID that disabled PC-IPC
03h "IPC_CMND_DISABLE" disable PC-IPC
04h "IPC_CMND_INSTALL" reset PC-IPC
06h "IPC_CMND_RDATA" read data
returns first message in data buffer, sets "size" to message length
and "to ID" field to sender's ID
if no messages available, bit 4 of status is cleared and "size" is
set to zero
07h "IPC_CMND_SDATA" send data
08h "IPC_CMND_REQID" require user ID
create a new recognized ID and return in "caller's ID" field
09h "IPC_CMND_DELID" cancel user ID
delete caller's ID from pool of recognized IDs
0Ah "IPC_CMND_RDATAW" read data, wait if no messages available
0Bh "IPC_CMND_VERS" get PC-IPC version
string representing version returned in data buffer, "size" field
set to length of string
Bitfields for returned status:
Bit(s) Description (Table 03270)
0 unused
1 IPC enabled
2 IPC installed
3 error
4 message(s) available
(Table 03271)
Values for PC-IPC error code:
00h no error
01h invalid command or parameter
02h only process 0 can install/reset IPC
03h process can not install/reset IPC
04h IPC is not enabled
05h process can not disable IPC
06h invalid destination process ID
07h invalid sending process ID
08h invalid data destination
09h no more process IDs available
0Ah can not relinquish that process ID
0Bh message space is full
0Ch IPC is not installed
--------R-60---------------------------------
INT 60 - Tangram Arbiter - API
Desc: Arbiter makes a PC disk look like a slow disk over an SNA link to an
IBM mainframe
Range: INT 60h to INT 66h, selected by configuration parameter
Notes: identified by string "@ARB_API" immediately following a short jump at
the interrupt handler address
--------N-60---------------------------------
INT 60 - Excelan LAN Workplace for DOS 3.5 - API
ES:BX -> request packet (see #03272)
Return: request packet updated
InstallCheck: test for the WORD 4142h ('AB') immediately preceding the
interrupt handler
Note: this interrupt is also supported by Beame&Whiteside's BWLWP35 shim,
which was used in creating this description
BUG: because BWLWP35 range-checks only the low byte of the function number,
and has a fencepost error even in that test, functions 000Bh and
XX01h-XX0Bh (XX nonzero) branch to random locations
SeeAlso: INT 2F/AX=7A40h
Format of Excelan request packet:
Offset Size Description (Table 03272)
00h 12 BYTEs ???
0Ch WORD (ret) error code (see #03273)
0Eh DWORD -> FAR function for ???
12h WORD function number
0001h ???
0002h NOP
0003h NOP
0004h NOP
0005h ???
0006h get ??? record
0007h NOP
0008h reset ???
0009h NOP
000Ah set ???
???
---function 01h---
20h BYTE (call) subfunction (32h-3Bh)
3Bh non-blocking I/O request (will be tested every clock tick)
21h BYTE (ret) error code
00h successful
09h invalid connection number
2Ah bad connection type
45h ???
---function 01h, subfunction 32h---
3Ah WORD (call) connection type (01h stream, 02h datagram)
---function 01h, subfunction 34h---
26h WORD (call) ???
28h WORD (call) ???
2Ah WORD (call) ???
---function 01h, subfunction 35h---
1Ah WORD (call) connection number???
26h WORD (ret) ???
---function 01h, subfunction 36h---
1Ah WORD (call) connection number???
38h WORD ???
---function 01h, subfunction 37h---
24h WORD (ret) ???
26h WORD (ret) ???
---function 01h, subfunction 38h---
1Ah WORD (call) connection number???
---function 01h, subfunction 3Ah---
22h WORD (call) ???
667Eh ???
667Fh ???
24h BYTE (call 667Eh) ???
24h WORD (return 667Fh) ???
---function 01h, subfunction 3Bh---
0Eh DWORD (call) -> function to invoke for I/O or 0000h:0000h
function called with AX = 0000h
STACK: DWORD -> request packet
WORD 0000h
should return STACK unchanged
1Ah WORD (call) connection number???
21h BYTE (ret) set to 01h when I/O becomes possible
22h BYTE (call) direction (00h write, 01h read)
34h DWORD (ret) -> next pending request packet
---function 05h---
1Eh WORD (call) ???
20h WORD (call) ???
34h DWORD (call) -> ???
---function 06h---
16h DWORD (call) -> buffer for ??? record (see #03274)
1Ah WORD (call) number of bytes to copy
22h WORD (ret) number of bytes transferred
---function 08h---
14h WORD (ret) ??? (0001h)
---function 0Ah---
16h DWORD (call) -> WORD ???
1Ch WORD (call) must be 000Ah for BWLWP35
(Table 03273)
Values for Excelan error code:
0000h successful
002Dh invalid function
0050h ???
Format of ??? record:
Offset Size Description (Table 03274)
00h WORD offset of ???
02h 4 BYTEs ???
06h DWORD IP address (big-endian)
0Ah 6 BYTEs physical address (big-endian)
???
--------N-60---------------------------------
INT 60 - TCPDRV 2.01 - TCP/IP Application Binary Interface (ABI)
Note: The handler for the interrupt will start with a 2-byte NEAR jump
instruction, followed by the ASCIZ signature string "TCP DRVR".
To find the interrupt being used by the driver, an application
should scan through interrupt vectors 60h to 7Fh until it finds
one with the "TCP DRVR" string.
This specification is being proposed by Peter R. Tattam from the
University of Tasmania.
Index: installation check;TCPDRV
--------G-60---------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -