home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power CD-ROM!! 7
/
POWERCD7.ISO
/
prgmming
/
inter43
/
interrup.k
< prev
next >
Wrap
Text File
|
1994-11-06
|
198KB
|
5,619 lines
Interrupt List, part 11 of 12
This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994 Ralf Brown
--------I-68---------------------------------
INT 68 - Sangoma CCPOP 3270 resident module
SeeAlso: INT 67"Sangoma",INT 92"Sangoma"
--------N-68---------------------------------
INT 68 - Novell NetWare LU6.2
Note: the installation check consists of testing for the signature string
"APPC/PC" nine bytes before the interrupt handler
SeeAlso: AH=01h/SF=1B00h,AH=FAh
--------h-68---------------------------------
INT 68 - Hewlett Packard - EXTENDED BIOS - 8041 SERVICE REQUEST ISR
SeeAlso: INT 08"IRQ0",INT 69"Hewlett Packard"
--------N-6801--SF1B00-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - DISPLAY
AH = 01h subfn 1B00h
DS:DX -> control block (see #2108)
Return: control block updated
SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2B00h,INT 68"Novell"
Format of APPC/PC "DISPLAY" control block:
Offset Size Description (Table 2108)
00h 12 BYTEs reserved
0Ch WORD 1B00h (verb "DISPLAY")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah 8 BYTEs (big-endian) logical unit ID
22h 8 BYTEs (big-endian) partner logical unit name
2Ah 8 BYTEs (big-endian) mode name
32h BYTE logical unit session limit
33h BYTE partner logical unit session limit
34h BYTE node maximum negotiable session limit
35h BYTE current session limit
36h BYTE minimum negotiated winner limit
37h BYTE maximum negotiated loser limit
38h BYTE active session count
39h BYTE active CONWINNER session count
3Ah BYTE active CONLOSER session count
3Bh BYTE session termination count
3Ch BYTE bit 7: SESSION_TERMINATION_TARGET_DRAIN
bit 6: SESSION_TERMINATION_SOURCE_DRAIN
(Table 2109)
Values for APPC/PC return code:
0000h successful
0001h BAD_TP_ID
0002h BAD_CONV_ID
0003h bad logical unit ID
0008h no physical unit attached
0110h bad state
01B1h BAD_PART_LUNAME
01B2h bad mode name
0201h physical unit already active
0211h logical unit already active
0212h BAD_PART_SESS
0213h BAD_RU_SIZES
0214h BAD_MODE_SESS
0216h BAD_PACING_CNT
0219h EXTREME_RUS
021Ah SNASVCMG_1
0223h SSCP_CONNECTED_LU
0230h invalid change
0243h too many TPs
0272h adapter close failure
0281h GET_ALLOC_BAD_TYPE
0282h unsuccessful
0283h DLC failure
0284h unrecognized DLC
0286h duplicate DLC
0301h SSCP_PU_SESSION_NOT_ACTIVE
0302h data exceeds RU size
0401h invalid direction
0402h invalid type
0403h segment overlap
0404h invalid first character
0405h table error
0406h conversion error
F0010000h APPC disabled
F0020000h APPC busy
F0030000h APPC abended
F0040000h incomplete
--------N-6801--SF2000-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - ATTACH PHYSICAL UNIT
AH = 01h subfn 2000h
DS:DX -> control block (see #2110)
Return: control block updated
SeeAlso: AH=01h/SF=2100h,AH=01h/SF=2B00h
Format of APPC/PC "Attach Physical Unit" control block:
Offset Size Description (Table 2110)
00h 12 BYTEs reserved
0Ch WORD 2000h (verb "Attach Physical Unit")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah BYTE version
1Bh BYTE release
1Ch 8 BYTEs (big-endian) net name
24h 8 BYTEs (big-endian) physical unit name
2Ch 8 BYTEs 00h
34h DWORD pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh=don't log errors
(see also AH=01h/SF=2100h)
38h DWORD 00h
3Ch BYTE 00h RETURN_CONTROL: COMPLETE
01h RETURN_CONTROL: INCOMPLETE
--------N-6801--SF2100-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - ATTACH LOGICAL UNIT
AH = 01h subfn 2100h
DS:DX -> control block (see #2111)
Return: control block updated
SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2200h,AH=01h/SF=2B00h
Format of APPC/PC "Attach Logical Unit" control block:
Offset Size Description (Table 2111)
00h 12 BYTEs reserved
0Ch WORD 2100h (verb "Attach Logical Unit")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 70 offset to partner logical unit record
1Ah 8 BYTEs (big-endian) logical unit name
22h 8 BYTEs (big-endian) logical unit ID
2Ah BYTE logical unit local address
2Bh BYTE logical unit session limit
2Ch DWORD pointer to CREATE_TP_EXIT routine,
FFFFFFFFh = reject incoming ALLOCATEs
00000000h = queue ALLOCATEs
30h DWORD 00h
34h DWORD pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh=don't log errors
38h DWORD 00h
3Ch BYTE maximum TPs
3Dh BYTE queue depth
3Eh DWORD pointer to LU_LU_PASSWORD_EXIT routine, FFFFFFFFh=no pswd exit
42h DWORD 00h
46h WORD total length of partner records
48h var array of partner logical unit records (see #2112)
Format of APPC/PC partner logical unit record:
Offset Size Description (Table 2112)
00h WORD length of this partner logical unit record
02h WORD 42 offset to mode records
04h 8 BYTEs (big-endian) partner logical unit name
0Ch BYTE partner logical unit security capabilities
bit 7: already verified
bit 6: conversation level security
bit 5: session level security
0Dh BYTE partner logical unit session limit
0Eh WORD partner logical unit maximum MC_SEND_LL
10h 8 BYTEs (big-endian) partner logical unit DLC name
18h BYTE partner logical unit adapter number
19h 17 BYTEs (counted string) partner logical unit adapter address
2Ah WORD total length of mode records
2Ch 16N BYTEs array of mode records (see #2113)
Format of mode record:
Offset Size Description (Table 2113)
00h WORD 16 length of this mode record
02h 8 BYTEs (big-endian) mode name
0Ah WORD RU_SIZE high bound
0Ch WORD RU_SIZE low bound
0Eh BYTE mode maximum negotiable session limit
0Fh BYTE pacing size for receive
Routines defined by LU_LU_PASSWORD_EXIT, CREATE_TP_EXIT, and SYSTEM_LOG_EXIT
pointers are called by pushing the DWORD pointer to the verb on the stack and
then performing a FAR call.
Format of ACCESS_LU_LU_PW verb:
Offset Size Description (Table 2114)
00h 12 BYTEs reserved
0Ch WORD 1900h (verb "ACCESS_LU_LU_PW")
0Eh 8 BYTEs (big-endian) logical unit ID
16h 8 BYTEs (big-endian) logical unit name
1Eh 8 BYTEs (big-endian) partner logical unit name
26h 17 BYTEs (counted string) partner fully qualified logical unit name
37h BYTE password available (0=no, 1=yes)
38h 8 BYTEs password
Format of CREATE_TP verb:
Offset Size Description (Table 2115)
00h 12 BYTEs reserved
0Ch WORD 2300h (verb "CREATE_TP")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) sense code (see #2116)
18h 8 BYTEs (big-endian) TP ID
20h 8 BYTEs (big-endian) logical unit ID
28h DWORD (big-endian) conversation ID
2Ch BYTE 0 basic conversation, 1 mapped conversation
2Dh BYTE 0 no sync level, 1 confirm
2Eh BYTE reserved
2Fh 65 BYTEs (counted string) transaction program name
70h 6 BYTEs 00h
76h WORD length of ERROR_LOG_DATA to return
78h DWORD pointer to ERROR_LOG_DATA buffer
7Ch 8 BYTEs (big-endian) partner logical unit name
84h 18 BYTEs (counted string) partner fully qualified logical unit name
96h 8 BYTEs (big-endian) mode name
9Eh 12 BYTEs 00h
AAh 11 BYTEs (counted string) password
B5h 11 BYTEs (counted string) user ID
C0h BYTE 0 verification should be performed
1 already verified
(Table 2116)
Values for APPC/PC sense code:
00000000h Ok
080F6051h SECURITY_NOT_VALID
084B6031h TP_NOT_AVAIL_RETRY
084C0000h TP_NOT_AVAIL_NO_RETRY
10086021h TP_NAME_NOT_RECOGNIZED
10086034h CONVERSATION_TYPE_MISMATCH
10086041h SYNC_LEVEL_NOT_SUPPORTED
Format of SYSLOG verb:
Offset Size Description (Table 2117)
00h 12 BYTEs reserved
0Ch WORD 2600h (verb "SYSLOG")
0Eh 10 BYTEs 00h
18h WORD (big-endian) type
1Ah DWORD (big-endian) subtype
1Eh DWORD pointer to ADDITIONAL_INFO
22h DWORD (big-endian) conversation ID
26h 8 BYTEs (big-endian) TP ID
2Eh 8 BYTEs (big-endian) physical unit or logical unit name
36h WORD length of data
38h DWORD pointer to data
3Ch BYTE 00h
--------N-6801--SF2200-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - DETACH LOGICAL UNIT
AH = 01h subfn 2200h
DS:DX -> control block (see #2118)
Return: control block updated
SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2100h,AH=01h/SF=2700h
Format of APPC/PC "Detach Logical Unit" control block:
Offset Size Description (Table 2118)
00h 12 BYTEs reserved
0Ch WORD 2200h (verb "Detach Logical Unit")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h 8 BYTEs (big-endian) logical unit ID
20h BYTE 00h
--------N-6801--SF2700-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - DETACH PHYSICAL UNIT
AH = 01h subfn 2700h
DS:DX -> control block (see #2119)
Return: control block updated
SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2100h,AH=01h/SF=2200h
Format of APPC/PC "Detach Physical Unit" control block:
Offset Size Description (Table 2119)
00h 12 BYTEs reserved
0Ch WORD 2700h (verb "Detach Physical Unit")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h BYTE 00h type: hard
01h type: soft
--------N-6801--SF2B00-----------------------
INT 68 - APPC/PC - NETWORK DEVICE CONTROL - ACTIVATE DLC
AH = 01h subfn 2B00h
DS:DX -> control block (see #2120)
Return: control block updated
SeeAlso: AH=01h/SF=1B00h,AH=01h/SF=2000h
Format of APPC/PC "Activate DLC" control block:
Offset Size Description (Table 2120)
00h 12 BYTEs reserved
0Ch WORD 2B00h (verb "Activate DLC")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h 8 BYTEs (big-endian) DLC name
20h BYTE adapter number
--------N-6802--SF0100-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - ALLOCATE
AH = 02h subfn 0100h
DS:DX -> control block (see #2121)
Return: control block updated
SeeAlso: AH=02h/SF=0500h
Format of APPC/PC "Allocate" control block:
Offset Size Description (Table 2121)
00h 12 BYTEs reserved
0Ch WORD 0100h (verb "Allocate" or "MC_Allocate")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE (MC_Allocate only) conversation type
0 basic conversation
1 mapped conversation
27h BYTE SYNC_LEVEL (00h none, 01h confirm)
28h WORD 0000h
2Ah BYTE RETURN_CONTROL
00h when session allocated
01h immediate
02h when session free
2Bh 8 BYTEs 00h
33h 8 BYTEs (big-endian) partner logical unit name
3Bh 8 BYTEs (big-endian) mode name
43h 65 BYTEs (counted string) TP name
84h BYTE security (00h none, 01h same, 02h pgm)
85h 11 BYTEs 00h
90h 11 BYTEs (counted string) password
9Bh 11 BYTEs (counted string) user ID
A6h WORD PIP_DATA length
A8h DWORD pointer to PIP_DATA
(Table 2122)
Values for APPC/PC primary return code:
0000h successful
0001h parameter check
0002h state check
0003h allocation error
0005h deallocate abended
0006h deallocate abended program
0007h deallocate abended SVC
0008h deallocate abended timer
0009h deallocate normal return
000Ah data posting blocked
000Bh posting not active
000Ch PROG_ERROR_NO_TRUNC
000Dh PROG_ERROR_TRUNC
000Eh PROG_ERROR_PURGING
000Fh CONV_FAILURE_RETRY
0010h CONV_FAILURE_NO_RETRY
0011h SVC_ERROR_NO_TRUNC
0012h SVC_ERROR_TRUNC
0013h SVC_ERROR_PURGING
0014h unsuccessful
0018h CNOS partner logical unit reject
0019h conversation type mixed
F001h APPC disabled
F002h APPC busy
F003h APPC abended
F004h incomplete
(Table 2123)
Values for APPC/PC error code:
0001h bad TP ID
0002h bad conversation ID
0004h allocation error, no retry
0005h allocation error, retry
0006h data area crosses segment boundary
0010h bad TPN length
0011h bad CONV length
0012h bad SYNC level
0013h bad security selection
0014h bad return control
0015h SEC_TOKENS too big
0016h PIP_LEN incorrect
0017h no use of SNASVCMG
0018h unknown partner mode
0031h confirm: SYNC_NONE
0032h confirm: bad state
0033h confirm: NOT_LL_BDY
0041h confirmed: bad state
0051h deallocate: bad type
0052h deallocate: flush bad state
0053h deallocate: confirm bad state
0055h deallocate: NOT_LL_BDY
0057h deallocate: log LL_WRONG
0061h flush: not send state
0091h post on receipt: invalid length
0092h post on receipt: not in receive state
0093h post on receipt: bad fill
00A1h prepare to receive:invalid type
00A2h prepare to receive: unfinished LL
00A3h prepare to receive: not in send state
00B1h receive and wait: bad state
00B2h receive and wait: NOT_LL_BDY
00B5h receive and wait: bad fill
00C1h receive immediate: not in receive state
00C4h receive immediate: bad fill
00E1h request to send: not in receive state
00F1h send data: bad LL
00F2h send data: not in send state
0102h send error: log LL wrong
0103h send error: bad type
0121h test: invalid type
0122h test: not in receive state
--------N-6802--SF0300-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - CONFIRM
AH = 02h subfn 0300h
DS:DX -> control block (see #2124)
Return: control block updated
SeeAlso: AH=02h/SF=0400h
Format of APPC/PC "Confirm" control block:
Offset Size Description (Table 2124)
00h 12 BYTEs reserved
0Ch WORD 0300h (verb "Confirm" or "MC_Confirm")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE request to send received (0=no, 1=yes)
--------N-6802--SF0400-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - CONFIRMED
AH = 02h subfn 0400h
DS:DX -> control block (see #2125)
Return: control block updated
SeeAlso: AH=02h/SF=0300h
Format of APPC/PC "Confirmed" control block:
Offset Size Description (Table 2125)
00h 12 BYTEs reserved
0Ch WORD 0400h (verb "Confirmed" or "MC_Confirmed")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
--------N-6802--SF0500-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - DEALLOCATE
AH = 02h subfn 0500h
DS:DX -> control block (see #2126)
Return: control block updated
SeeAlso: AH=02h/SF=0100h,AH=02h/SF=0300h
Format of APPC/PC "Deallocate" control block:
Offset Size Description (Table 2126)
00h 12 BYTEs reserved
0Ch WORD 0500h (verb "Deallocate" or "MC_Deallocate")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE 00h
27h BYTE type
00h SYNC_LEVEL
01h FLUSH
02h ABEND_PROC
03h ABEND_SVC
04h ABEND_TIMER
05h ABEND
28h WORD (MC_Deallocate only) length of error log data
2Ah DWORD (MC_Deallocate only) pointer to error log data
--------N-6802--SF0600-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - FLUSH
AH = 02h subfn 0600h
DS:DX -> control block (see #2127)
Return: control block updated
SeeAlso: AH=02h/SF=0300h
Format of APPC/PC "Flush" control block:
Offset Size Description (Table 2127)
00h 12 BYTEs reserved
0Ch WORD 0600h (verb "Flush" or "MC_Flush")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
--------N-6802--SF0700-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - GET ATTRIBUTES
AH = 02h subfn 0700h
DS:DX -> control block (see #2128)
Return: control block updated
SeeAlso: AH=02h/SF=0300h
Format of APPC/PC "Get_Attributes" control block:
Offset Size Description (Table 2128)
00h 12 BYTEs reserved
0Ch WORD 0700h (verb "Get_Attributes" or "MC_Get_Attributes")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h 8 BYTEs (big-endian) logical unit ID
2Eh BYTE 00h
2Fh BYTE SYNC_LEVEL (0=none, 1=confirm)
30h 8 BYTEs (big-endian) mode name
38h 8 BYTEs (big-endian) own net name
40h 8 BYTEs (big-endian) own logical unit name
48h 8 BYTEs (big-endian) partner logical unit name
50h 18 BYTEs (counted string) partner's fully qualified logical unit name
62h BYTE 00h
63h 11 BYTEs (counted string) user ID
--------N-6802--SF0800-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - GET CONVERSATION TYPE
AH = 02h subfn 0800h
DS:DX -> control block (see #2129)
Return: control block updated
SeeAlso: AH=02h/SF=0300h
Format of APPC/PC "Get_Type" control block:
Offset Size Description (Table 2129)
00h 12 BYTEs reserved
0Ch WORD 0800h (verb "Get_Type")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE (return) type (0=basic conversation, 1=mapped conversation)
--------N-6802--SF0900-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - POST ON RECEIPT
AH = 02h subfn 0900h
DS:DX -> control block (see #2130)
Return: control block updated
SeeAlso: AH=02h/SF=0A00h
Format of APPC/PC "Post_on_Receipt" control block:
Offset Size Description (Table 2130)
00h 12 BYTEs reserved
0Ch WORD 0900h (verb "Post_on_Receipt")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h WORD maximum length
28h BYTE fill (0=buffer, 1=LL)
--------N-6802--SF0A00-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - PREPARE TO RECEIVE
AH = 02h subfn 0A00h
DS:DX -> control block (see #2131)
Return: control block updated
SeeAlso: AH=02h/SF=0900h,AH=02h/SF=0B00h
Format of APPC/PC "Prepare_to_Receive" control block:
Offset Size Description (Table 2131)
00h 12 BYTEs reserved
0Ch WORD 0A00h (verb "Prepare_to_Receive" or "MC_Prepare_to_Receive")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE type (0=SYNC_LEVEL, 1=FLUSH)
27h BYTE locks (0=short, 1=long)
--------N-6802--SF0B00-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - RECEIVE AND WAIT
AH = 02h subfn 0B00h
DS:DX -> control block (see #2132)
Return: control block updated
SeeAlso: AH=02h/SF=0C00h,AH=02h/SF=0F00h
Format of APPC/PC "Receive_and_Wait" control block:
Offset Size Description (Table 2132)
00h 12 BYTEs reserved
0Ch WORD 0B00h (verb "Receive_and_Wait" or "MC_Receive_and_Wait")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE type of information received (see #2133)
27h BYTE (MC_Receive_and_Wait only) fill (0=buffer, 1=LL)
28h BYTE Request_to_Send_Received (0=no, 1=yes)
29h WORD maximum length
2Bh WORD data length
2Dh DWORD pointer to data
(Table 2133)
Values for type of information received:
00h data
01h data complete
02h data incomplete
03h confirm
04h confirm send
05h confirm deallocate
06h send
--------N-6802--SF0C00-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - RECEIVE IMMEDIATE
AH = 02h subfn 0C00h
DS:DX -> control block (see #2134)
Return: control block updated
SeeAlso: AH=02h/SF=0B00h,AH=02h/SF=0F00h
Format of APPC/PC "Receive_Immediate" control block:
Offset Size Description (Table 2134)
00h 12 BYTEs reserved
0Ch WORD 0C00h (verb "Receive_Immediate" or "MC_Receive_Immediate")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE type of information received (see #2133)
27h BYTE (MC_Receive_Immediate only) fill (0=buffer, 1=LL)
28h BYTE Request_to_Send_Received (0=no, 1=yes)
29h WORD maximum length
2Bh WORD data length
2Dh DWORD pointer to data
--------N-6802--SF0E00-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - REQUEST TO SEND
AH = 02h subfn 0E00h
DS:DX -> control block (see #2135)
Return: control block updated
SeeAlso: AH=02h/SF=0F00h,AH=02h/SF=1000h
Format of APPC/PC "Request_to_Send" control block:
Offset Size Description (Table 2135)
00h 12 BYTEs reserved
0Ch WORD 0E00h (verb "Request_to_Send" or "MC_Request_to_Send")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
--------N-6802--SF0F00-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - SEND DATA
AH = 02h subfn 0F00h
DS:DX -> control block (see #2136)
Return: control block updated
SeeAlso: AH=02h/SF=0E00h,AH=02h/SF=1000h
Format of APPC/PC "Send_Data" control block:
Offset Size Description (Table 2136)
00h 12 BYTEs reserved
0Ch WORD 0F00h (verb "Send_Data" or "MC_Send_Data")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE request to send received (0=no, 1=yes)
27h BYTE 00h
28h WORD data length
2Ah DWORD pointer to data
--------N-6802--SF1000-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - SEND ERROR
AH = 02h subfn 1000h
DS:DX -> control block (see #2137)
Return: control block updated
SeeAlso: AH=02h/SF=0F00h
Format of APPC/PC "Send_Error" control block:
Offset Size Description (Table 2137)
00h 12 BYTEs reserved
0Ch WORD 1000h (verb "Send_Error" or "MC_Send_Error")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE request to send received (0=no, 1=yes)
27h BYTE type (0=program, 1=SVC)
28h DWORD 00h
2Ch WORD (MC_Send_Error only) LOG_DATA length
2Eh DWORD (MC_Send_Error only) pointer to LOG_DATA
--------N-6802--SF1200-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - TEST
AH = 02h subfn 1200h
DS:DX -> control block (see #2138)
Return: control block updated
SeeAlso: AH=02h/SF=1300h
Format of APPC/PC "Test" control block:
Offset Size Description (Table 2138)
00h 12 BYTEs reserved
0Ch WORD 1200h (verb "Test" or "MC_Test")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE (MC_Test only) test (0=posted, 1=request_to_send received)
Note: error code has different interpretations for:
0 posted data
1 posted not data (primary return code = 0)
1 bad TP_ID (primary return code = 1)
--------N-6802--SF1300-----------------------
INT 68 - APPC/PC - CONNECTION CONTROL - WAIT
AH = 02h subfn 1300h
DS:DX -> control block (see #2139)
Return: control block updated
SeeAlso: AH=02h/SF=1200h
Format of APPC/PC "Wait" control block:
Offset Size Description (Table 2139)
00h 12 BYTEs reserved
0Ch WORD 1300h (verb "Wait")
0Eh BYTE 1 if MC_ (mapped conversation) form of verb
0 if basic verb
0Fh 5 BYTEs reserved (0)
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) error code (see #2123,#2138)
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD (big-endian) conversation ID
26h BYTE number of conversations to wait on
Note: error codes have interpretations as for AH=02h/SF=1200h
--------N-6803--SF2400-----------------------
INT 68 - APPC/PC - TP STARTED
AH = 03h subfn 2400h
DS:DX -> control block (see #2140)
Return: control block updated
Format of APPC/PC "TP Started" control block:
Offset Size Description (Table 2140)
00h 12 BYTEs reserved
0Ch WORD 2400h (verb "TP Started")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah 8 BYTEs (big-endian) logical unit ID
22h 8 BYTEs (big-endian) TP ID
--------N-6803--SF2800-----------------------
INT 68 - APPC/PC - GET ALLOCATE
AH = 03h subfn 2800h
DS:DX -> control block (see #2141)
Return: control block updated
Format of APPC/PC "Get ALLOCATE" control block:
Offset Size Description (Table 2141)
00h 12 BYTEs reserved
0Ch WORD 2800h (verb "Get ALLOCATE")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah 8 BYTEs (big-endian) logical unit ID
22h BYTE type (00h dequeue, 01h test)
23h DWORD pointer to CREATE_TP record
--------N-6803--SF2A00-----------------------
INT 68 - APPC/PC - CHANGE LOGICAL UNIT
AH = 03h subfn 2A00h
DS:DX -> control block (see #2142)
Return: control block updated
Format of APPC/PC "Change Logical Unit" control block:
Offset Size Description (Table 2142)
00h 12 BYTEs reserved
0Ch WORD 2A00h (verb "Change Logical Unit")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah 8 BYTEs (big-endian) logical unit ID
22h DWORD pointer to CREATE_TP_EXIT routine
00000000h queue ALLOCATEs
FFFFFFFFh reject incoming ALLOCATEs
26h DWORD 00000000h
2Ah DWORD pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh= don't log errors
2Eh DWORD 00000000h
32h BYTE maximum TPs
33h BYTE 00h stop QUEUE_ALLOCATEs
01h resume QUEUE_ALLOCATEs
34h DWORD pointer to LU_LU_PASSWORD_EXIT routine, FFFFFFFFh = no exit
38h DWORD 00000000h
--------N-6804-------------------------------
INT 68 - APPC/PC - TRANSACTION PROCESSING
AH = 04h
DS:DX -> control block (see #2143)
Return: control block updated
Format of APPC/PC control block:
Offset Size Description (Table 2143)
00h 12 BYTEs reserved
0Ch WORD verb (action)
2500h TP_ENDED
2900h TP_VALID
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h WORD 00h
1Ah 8 BYTEs (big-endian) TP_ID
22h DWORD -> CREATE_TP record (only if verb = 2900h)
--------N-6805-------------------------------
INT 68 - APPC/PC - TRANSFER MESSAGE DATA
AH = 05h
DS:DX -> control block (see #2144)
Return: control block updated
Format of APPC/PC "Transfer Message Data" control block:
Offset Size Description (Table 2144)
00h 12 BYTEs reserved
0Ch WORD 1C00h (verb "Transfer Message Data")
0Eh BYTE data type
00h user defined
01h NMVT
02h alert subvectors
03h PDSTATS subvectors
0Fh 5 BYTEs 00h
14h DWORD (big-endian) return code (see #2109)
18h 12 BYTEs 00h
24h BYTE flags
bit 0: don't add correlation subvector
bit 1: don't add product set ID subvector
bit 2: don't do SYSLOG
bit 3: don't send SSCP_PU_SESSION
25h BYTE 00h
26h WORD length of data
28h N BYTEs data
--------N-6806-------------------------------
INT 68 - APPC/PC - CHANGE NUMBER OF SESSIONS
AH = 06h
DS:DX -> control block (see #2145)
Return: control block updated
Format of APPC/PC "Change Number of Sessions" control block:
Offset Size Description (Table 2145)
00h 12 BYTEs reserved
0Ch WORD 1500h (verb "Change Number of Sessions")
0Eh 6 BYTEs 00h
14h WORD (big-endian) primary return code (see #2122)
16h DWORD (big-endian) secondary return code (see #2109,#2146)
1Ah 8 BYTEs (big-endian) logical unit ID
22h 8 BYTEs blanks
2Ah 8 BYTEs (big-endian) partner logical unit name
32h 8 BYTEs (big-endian) mode name
3Ah BYTE bit 7: use MODE_NAME_SELECT_ALL rather than MODE_NAME
bit 6: set negotiable values
3Bh BYTE partner logical unit mode session limit
3Ch BYTE minimum CONWINNERS_SOURCE
3Dh BYTE maximum CONWINNERS_TARGET
3Eh BYTE automatic activation
3Fh BYTE 00h
40h BYTE flags
bit 7: drain target
bit 6: drain source
bit 5: target responsible, not source
(Table 2146)
Values for secondary return code (see also AH=01h/SF=1B00h):
0000h accepted
0001h negotiated
0003h bad logical unit ID
0004h allocation failure, no retry
0005h allocation failure, retry
0151h can't raise limits
0153h all modes must reset
0154h bad SNASVCMG limits
0155h minimum greater than total
0156h mode closed (primary return code = 1)
CNOS mode closed (primary return code = 18h)
0157h bad mode name (primary return code = 1)
CNOS bad mode name (primary return code = 18h)
0159h reset SNA drains
015Ah single not SRC response
015Bh bad partner logical unit
015Ch exceeds maximum allowed
015Dh change SRC drains
015Eh logical unit detached
015Fh CNOS command race reject
--------N-6807-------------------------------
INT 68 - APPC/PC - PASSTHROUGH
AH = 07h
DS:DX -> control block (format depends on application subsystem)
Return: control block updated
SeeAlso: AH=FFh
----------684300-----------------------------
INT 68 U - ??? - INSTALLATION CHECK???
AX = 4300h
Return: AX = F386h if ???
???
Note: called by Novell DOS 7.0 EMM386.EXE
SeeAlso: AX=4400h,INT 41/AX=004Fh
----------684400-----------------------------
INT 68 U - ???
AX = 4400h
BX = ???
CX = ???
DX = ???
DS:SI = real-mode address of protected-mode GDT
ES:DI = real-mode address of protected-mode IDT
Return: ???
Note: called by Novell DOS 7.0 EMM386.EXE if AX=4300h returns AX=F386h
SeeAlso: AX=4300h
----------6847-------------------------------
INT 68 - MS Windows debugging kernel - OUTPUT STRING
AH = 47h
ES:SI -> string
Notes: output a string (to inform a debugger of some events)
KERNEL outputs "Windows Kernel Entry\r\n" on startup
SeeAlso: INT 41/AX=0012h
--------N-68FA-------------------------------
INT 68 - APPC/PC - ENABLE/DISABLE APPC
AH = FAh
AL bit 0 = new state (0 enable, 1 disable)
SeeAlso: AH=FDh,INT 68"Novell"
--------N-68FB-------------------------------
INT 68 - APPC/PC - CONVERT
AH = FBh
DS:DX -> control block (see #2147)
Return: control block updated
Format of APPC/PC "CONVERT" control block:
Offset Size Description (Table 2147)
00h 12 BYTEs reserved
0Ch WORD 1A00h (verb "CONVERT")
0Eh 6 BYTEs 00h
14h DWORD (big-endian) return code
18h BYTE conversion
00h ASCII to EBCDIC
01h EBCDIC to ASCII
19h BYTE character set
00h AE
01h A
02h G
1Ah WORD length of string to convert
1Ch DWORD pointer to source
20h DWORD pointer to target
--------N-68FC-------------------------------
INT 68 - APPC/PC - ENABLE/DISABLE MESSAGE TRACING
AH = FCh
AL = new state
00h disable tracing
01h enable tracing
DX = number of bytes to keep (0=all)
SeeAlso: AH=FDh,AH=FEh
--------N-68FD-------------------------------
INT 68 - APPC/PC - ENABLE/DISABLE API VERB TRACING
AH = FDh
AL = new tracing state (00h disabled, 01h enabled)
SeeAlso: AH=FAh,AH=FCh,AH=FEh
--------N-68FE-------------------------------
INT 68 - APPC/PC - SET TRACE DESTINATION
AH = FEh
AL = trace destinations (see #2148)
DS:DX -> trace stats record if AL bit 0 set (see #2149)
SeeAlso: AH=FCh,AH=FDh
Bitfields for trace destinations:
Bit(s) Description (Table 2148)
0 storage (DS:DX -> trace stats record)
1 display
2 file (trace written to file OUTPUT.PC)
3 printer
Format of APPC/PC Trace Statistics Record:
Offset Size Description (Table 2149)
00h DWORD pointer to storage trace buffer
04h WORD max number of 80-byte records in trace
06h WORD (high-order byte first!) current record number (must init to 0)
08h DWORD (high-order byte first!) number of records written (init to 0)
0Ch DWORD reserved
Note: do not move record while trace is active
--------N-68FF-------------------------------
INT 68 - APPC/PC - SET PASSTHROUGH
AH = FFh
DS:DX -> passthrough exit routine
SeeAlso: AH=07h,INT 68"Novell"
--------b-69---------------------------------
INT 69 - Zenith AT BIOS - ???
Note: called by INT 09 handler
--------h-69---------------------------------
INT 69 - Hewlett Packard - EXTENDED BIOS - KEYBOARD OBF SERVICE ROUTINE
SeeAlso: INT 09"IRQ0",INT 68"Hewlett Packard",INT 6A"Hewlett Packard"
--------N-690100-----------------------------
INT 69 - DECnet DOS CTERM - INSTALLATION CHECK
AX = 0100h
Return: AL = FFh if present
SeeAlso: AX=010Fh
--------N-690101-----------------------------
INT 69 - DECnet DOS CTERM - SEND BYTE
AX = 0101h
BL = character
DX = session handle
Return: AH >= 80h on error
SeeAlso: AX=0102h
--------N-690102-----------------------------
INT 69 - DECnet DOS CTERM - READ BYTE
AX = 0102h
DX = session handle
Return: AH >= 80h on error
AH < 80h if successful
AL = character
SeeAlso: AX=0101h
--------N-690103-----------------------------
INT 69 - DECnet DOS CTERM - STATUS
AX = 0103h
DX = session handle
Return: AH status flags (see #2150)
AL = reason code if DECnet error (see #2151)
SeeAlso: AX=0104h
Bitfields for DECnet DOS CTERM status flags:
Bit(s) Description (Table 2150)
7 session has been aborted
6 DECnet error
1 trace data available
0 receive data available
(Table 2151)
Values for reason code:
00h normal disconnect
01h unknown message from host
02h protocol violation from host
03h could not process the initiate message
04h error receiving message from host
05h error sending message to host
06h error checking for message from host
07h remote system does not support CTERM
08h remote system does not support correct protocol version
09h did not receive BIND message from host
0Ah could not send BIND message to host
0Bh no more sessions available
0Ch session does not exist
0Dh not enough memory to complete operation
0Eh connection has broken
Index: error codes;DECnet DOS CTERM|DECnet DOS CTERM;error codes
--------N-690104-----------------------------
INT 69 - DECnet DOS CTERM - DECnet STATUS
AX = 0104h
DX = session handle
Return: AX = reason code (see #2151)
Note: use this call when AX=0103h returns a DECnet error
SeeAlso: AX=0103h
--------N-690105-----------------------------
INT 69 - DECnet DOS CTERM - OPEN SESSION
AX = 0105h
DS:BX -> ASCIZ node name
ES:DX -> buffer for session control block (see INT 6A/AH=D0h)
Return: AX <= 0 on error
AX > 0 session handle
SeeAlso: AX=0103h,AX=0106h,AX=010Ah
--------N-690106-----------------------------
INT 69 - DECnet DOS CTERM - CLOSE SESSION
AX = 0106h
DX = session handle
Return: AH = status
00h good close
other error code (see #2151)
SeeAlso: AX=0103h,AX=0105h
--------N-69010A-----------------------------
INT 69 - DECnet DOS CTERM - GET SESSION CONTROL BLOCK SIZE
AX = 010Ah
Return: AX = length of session control block in bytes
SeeAlso: AX=0105h
--------N-69010B-----------------------------
INT 69 - DECnet DOS CTERM - GET DECnet SOCKET
AX = 010Bh
DX = session handle
Return: AX > 0 DECnet socket for the session
AX = 0 no match for handle
--------N-69010F-----------------------------
INT 69 - DECnet DOS CTERM - DEINSTALL CTERM
AX = 010Fh
Return: AH = status
00h successful uninstall
other error code (see #2151)
Note: CTERM must have been the last TSR loaded in order to deinstall it
SeeAlso: AX=0100h
Index: uninstall;DECnet DOS CTERM
--------N-690A-------------------------------
INT 69 - DECnet DOS 2.1+ - DATA LINK LAYER
AH = 0Ah
AL = function number (see #2152)
ES:BX -> Datalink Communication Block
Return: AX = status (see #2153)
SeeAlso: INT 6D"DECnet"
(Table 2152)
Values for DECnet DOS Data Link Layer function:
00h initialize
01h open portal
02h close portal
03h enable multicast address
04h disable multicast address
05h transmit
06h request transmit buffer
07h deallocate transmit buffer
08h read channel status
09h read datalink portal list
0Ah read information about a datalink portal
0Bh read and/or clear counters
0Ch request to boot from a network server
0Dh enable Ethernet channel
0Eh disable Ethernet channel
0Fh start MOP/send a System ID message
10h stop MOP
11h get DECPARM
12h set DECPARM
13h external loopback
(Table 2153)
Values for DECnet DOS Data Link Layer status:
00h successful
01h hardware failed to initialize
02h channel state was not off (must be off to execute that command)
03h channel state is off (must be on to execute that command)
04h address not set
05h hardware missing
06h buffer too small
07h no more buffers available
08h no more resources available
09h promiscuous receiver active
0Ah non exclusive
0Bh unrecognized portal
0Ch protocol type in use
0Dh not a valid Multicast address
0Eh outstanding calls
0Fh hardware doesn't support receiving bad frames
10h none outstanding
11h no events
12h broken
13h buffer quota exceeded
14h already initialized
15h loopback failure
Index: error codes;DECnet DOS|DECnet DOS;error codes
Format of Datalink Communication Block:
Offset Size Description (Table 2154)
00h WORD portal ID
02h 6 BYTEs source address
08h 6 BYTEs destination address
0Eh DWORD buffer pointer
12h WORD buffer length
14h WORD operation
16h BYTE pad flag (used on open)
00h no pad
01h pad
17h BYTE mode flag (used on open)
00h 802.3
01h Ethernet
02h promiscuous
18h DWORD line status change function
1Ch DWORD received data function
20h DWORD transmitted data function
24h BYTE maximum outstanding transmits/receives
25h 2 BYTEs protocol type
27h WORD buffers lost
--------N-694001-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4001h
Return: CF clear
AX = 0000h
ES:SI -> ???
Range: INT 60 to INT 7F, selected by configuration
Note: the signature "SYSV" immediately before the interrupt handler serves
as the installation check
SeeAlso: AX=4002h
Index: installation check;10NET SYSSVC
--------N-694002-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4002h
???
Return: ???
Range: INT 60 to INT 7F, selected by configuration
Note: the signature "SYSV" immediately before the interrupt handler serves
as the installation check
--------N-694101-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4101h
Return: CF clear
ES:SI -> ???
Range: INT 60 to INT 7F, selected by configuration
SeeAlso: AX=4102h,AX=4103h,AX=4104h
--------N-694102-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4102h
???
Return: ???
--------N-694103-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4103h
???
Return: ???
--------N-694104-----------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AX = 4104h
???
Return: ???
--------N-6942-------------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AH = 42h
AL = function (01h-14h)
???
Return: ???
Range: INT 60 to INT 7F, selected by configuration
--------N-6943-------------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AH = 43h
AL = function (01h-05h)
???
Return: ???
--------N-6944-------------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - ???
AH = 44h
AL = function (01h-03h)
???
Return: ???
Range: INT 60 to INT 7F, selected by configuration
--------N-6949-------------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - BUG
AH = 49h
Note: due to a fencepost error, this function branches to hyperspace
SeeAlso: AX=4001h,AH=FFh
--------G-696996-----------------------------
INT 69 - ISR.COM v1.00 - SPECIFY INTERRUPT HANDLER
AX = 6996h
DS:DX -> interrupt handler or 0000h:0000h to disable
Return: AX = 9669h
Program: ISR (Interrupt Service Reflector) is a TSR by Rich Bono which permits
a program to provide hardware interrupt handlers even while being
debugged with a debugger that swaps interrupt vectors during
debugging.
Note: the interrupt vector which is to be reflected is set at installation
time and cannot be changed
--------N-69FF-------------------------------
INT 69 - 10NET v5.0 - SYSSVC.COM - SIGNAL SYSTEM ERROR
AH = FFh
Return: never???
Desc: displays "System Error" message and register dump, then halts system
Range: INT 60 to INT 7F, selected by configuration
Notes: the signature "SYSV" immediately before the interrupt handler serves
as the installation check
SeeAlso: AX=4001h,AH=49h
--------U-6A---------------------------------
INT 6A - OPTHELP.COM
Program: OPTHELP is an optionally-resident help system for SLR Systems's OPTASM
assembler
Range: INT 60h to INT 7Fh, selected by configuration
--------N-6A---------------------------------
INT 6A - DECnet DOS - LOCAL AREA TRANSPORT PROGRAM
Note: the installation check consists of testing for a signature area
immediately preceding the interrupt handler
SeeAlso: AH=01h/DH=FFh,INT 6B"DECnet",INT 6D"DECnet"
Index: installation check;DECnet DOS Local Area Transport
Format of DECnet DOS signature area:
Offset Size Description (Table 2155)
-5 BYTE major version number
-4 BYTE minor version number
-3 3 BYTEs signature (ASCII "LAT")
--------h-6A---------------------------------
INT 6A - Hewlett Packard - EXTENDED BIOS - HARDWARE INTERRUPT
SeeAlso: INT 0A"IRQ0",INT 69"Hewlett Packard",INT 6B"Hewlett Packard"
--------N-6A0000-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - INSTALLATION CHECK
AX = 0000h
Return: AX = 4357h ('CW')
Program: Super-TCP is a TCP/IP protocol stack by Frontier Technologies Corp.
Note: an alternate installation check is to test for the ASCIZ signature
"FTC Super-TCP" three bytes past the interrupt handler
SeeAlso: AX=0001h,AX=0002h,AX=000Fh,AX=0010h,INT 21/AH=3Fh"BW-TCP"
SeeAlso: INT 61"PCTCP",INT 62/AH=00h"ETHDEV"
--------N-6A0001-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - ???
AX = 0001h
BH = function number
01h ???
DS:SI -> ??? 24-byte record1 (see #2157)
ES:DI -> buffer containing ???
02h ???
DS:SI -> ??? 18-byte record2 (see #2158)
ES:DI -> buffer containing ???
04h ???
BL = subfunction
01h
DS:SI -> ??? 28-byte record3 (see #2159)
ES:DI -> buffer containing ???
02h
DS:SI -> ??? 28-byte record3 (see #2159)
ES:DI -> buffer containing ???
03h
DS:SI -> ??? 28-byte record3 (see #2159)
else Return: AX = 0005h
05h ???
DS:SI -> ??? 20-byte record4 (see #2160)
ES:DI -> buffer containing ???
06h ???
BL = subfunction
01h
DS:SI -> ??? 40-byte record5 (see #2161)
02h
DS:SI -> ??? 20-byte record6 (see #2162)
ES:DI -> ???
03h
DS:SI -> ??? 20-byte record6 (see #2162)
04h
DS:SI -> ??? 46-byte record7 (see #2163)
else Return: AX = 0005h
11h ???
DS:SI -> ??? 28-byte record8 (see #2164)
ES:DI -> ???
Return: AX = function status (see #2156)
SeeAlso: AX=0000h
(Table 2156)
Values for Super-TCP function status:
0000h successful
0005h unsupported function
000Ah out of memory
Format of record1:
Offset Size Description (Table 2157)
00h 4 BYTEs ???
04h WORD size of ES:DI buffer
06h 18 BYTEs ???
Format of record2:
Offset Size Description (Table 2158)
00h 4 BYTEs ???
04h WORD size of ES:DI buffer
06h 12 BYTEs ???
Format of record3:
Offset Size Description (Table 2159)
00h 2 BYTEs ???
02h WORD ???
04h WORD size of ES:DI buffer
06h WORD ???
08h WORD operation number (for function 0401h)
0Ah DWORD -> ???
0Eh WORD (return) ???
10h 12 BYTEs ???
Format of record4:
Offset Size Description (Table 2160)
00h 4 BYTEs ???
04h WORD size of ES:DI buffer
06h 14 BYTEs ???
Format of record5:
Offset Size Description (Table 2161)
00h BYTE operation??? (00h-07h)
01h BYTE ???
02h WORD (return) ???
04h DWORD -> ???
08h 4 BYTEs ???
0Ch DWORD -> ??? or 0000h:0000h
10h 16 BYTEs ???
20h DWORD ???
24h 4 BYTEs ???
Format of record6:
Offset Size Description (Table 2162)
00h 4 BYTEs ???
04h WORD size of ES:DI buffer
06h 14 BYTEs ???
Format of record7:
Offset Size Description (Table 2163)
00h WORD ???
02h WORD ???
04h WORD ???
06h 40 BYTEs ???
Format of record8:
Offset Size Description (Table 2164)
00h 4 BYTEs ???
04h WORD size of ES:DI buffer
06h 6 BYTEs ???
0Ch WORD (return) ???
0Eh WORD operation??? (01h-03h)
10h 12 BYTEs ???
--------N-6A0002-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - ???
AX = 0002h
BX = ??? (zero/nonzero)
CX = ??? identifier (see AX=0004h)
DS:SI -> 40-byte buffer for ??? or 0000h:0000h
ES:DI -> buffer for ??? or 0000h:0000h
Return: AX = 0000h (successful) ???
BL = ???
BH = ???
CX = ???
DX = ???
--------N-6A0003-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - GET ??? DATA AREA
AX = 0003h
Return: CX:DX -> data area (see #2165)
Format of Super-TCP data area:
Offset Size Description (Table 2165)
00h 2 BYTEs ???
02h DWORD original INT 6A vector
06h 2 BYTEs ???
08h 96 BYTEs array of 16 6-byte ???
68h WORD number of elements of above array in use
6Ah WORD ???
???
--------N-6A0004-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - ALLOCATE ???
AX = 0004h
CX = size in ???
Return: AX = 0000h (successful)
CX = DX = ???
SeeAlso: AX=0005h,AX=000Fh
--------N-6A0005-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ???
AX = 0005h
CX = ??? identifier (from AX=0004h)
Return: AX = status (0000h successful, FFFFh failed)
SeeAlso: AX=0004h,AX=000Fh
--------N-6A000F-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ALL ???
AX = 000Fh
Return: AX = 0000h (successful)
SeeAlso: AX=0000h,AX=0004h,AX=0005h
--------N-6A0010-----------------------------
INT 6A U - Super-TCP DOS TSR Kernel v3.57 - UNINSTALL
AX = 0010h
Return: AX = status
0000h successful
0002h can't uninstall, interrupt vector hooked by another program
Program: Super-TCP is a TCP/IP protocol stack by Frontier Technologies Corp.
Note: if AX is not one of the values listed here on entry, Super-TCP
returns AX=FFFEh
SeeAlso: AX=0000h
--------N-6A01--DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - SEND BYTE
AH = 01h
DH = FFh
AL = character
DL = handle
Return: AH >= 80h on error
SeeAlso: AH=02h
--------N-6A02--DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - READ BYTE
AH = 02h
DH = FFh
DL = handle
Return: AH < 80h if successful
AL = character
AH >= 80h on error
SeeAlso: AH=01h
--------N-6A03--DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - STATUS
AH = 03h
DH = FFh
DL = handle
Return: AH = status flags (see #2166)
Bitfields for DECnet DOS LAT status flags:
Bit(s) Description (Table 2166)
5 transmit buffer empty
3 session in start state
2 session not active
1 unable to queue transmit data
0 receive data available
--------N-6AD0--DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - OPEN SESSION
AH = D0h
DH = FFh
AL = password flag
FFh no password
0Fh password at ES:DI
ES:BX -> LAT session control block (see #2167)
ES:DI -> 16-byte blank-padded password (optional)
Return: AH = 00h success
DL = handle
SeeAlso: AX=D000h
Format of LAT Session Control Block:
Offset Size Description (Table 2167)
00h 18 BYTEs service name
12h 18 BYTEs node name (future use)
24h 18 BYTEs port name (future use)
36h DWORD -> session stopped post routine
3Ah DWORD -> service table overflow post routine
3Eh DWORD -> transmit post routine
42h DWORD -> receive post routine
46h WORD session status
04h circuit failure
08h stop slot received
---LAT v???---
48h WORD slot state (LAT driver use)
4Ah WORD local credits (LAT driver use)
4Ch DWORD -> VCB (LAT driver use)
50h WORD backward slot (LAT driver use)
52h WORD forward slot (LAT driver use)
54h WORD remote slot ID (LAT driver use)
56h WORD local slot ID (LAT driver use)
58h WORD slot byte count (LAT driver use)
5Ah BYTE remote credits (LAT driver use)
5Bh 255 BYTEs transmitted data slot
15Ah BYTE number of receive data slots (4 recommended)
15Bh BYTE number of occupied slots
15Ch BYTE index of next receive slot to use
15Dh BYTE index of current receive slot
15Eh WORD pointer to first received character
160h N WORDs pointers to receive slots (buffers); each is 259 bytes
259N BYTEs buffers
Note: set post routines to 0000h:0000h if polled operation will be used
---LAT v4.1.17---
48h WORD session state (LAT driver use)
4Ah BYTE local credits (LAT driver use)
4Bh DWORD -> VCB (LAT driver use)
4Fh WORD backward slot (LAT driver use)
51h WORD forward slot (LAT driver use)
53h BYTE remote slot ID (LAT driver use)
54h BYTE local slot ID (LAT driver use)
55h BYTE slot byte count (LAT driver use)
56h BYTE remote credits (LAT driver use)
57h 255 BYTEs transmitted data slot
156h BYTE number of receive data slots (4 recommended)
157h BYTE number of occupied slots
158h BYTE index of next receive slot to use
159h BYTE index of current receive slot
15Ah WORD pointer to first received character
15Ch N WORDs pointers to receive slots (buffers); each is 259 bytes
259N BYTEs buffers
Note: set post routines to 0000h:0000h if polled operation will be used
--------N-6AD000DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - CLOSE SESSION
AX = D000h
DH = FFh
DL = handle
Return: AX = status (see #2168)
SeeAlso: AH=D0h
(Table 2168)
Values for DECnet DOS LAT function status:
0000h successful
0001h no such session
0002h session not running, try again later
--------N-6AD100DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - SEND BREAK
AX = D100h
DH = FFh
DL = handle
Return: AX = 0000h if successful
AH bit 7 set if unable to send break
--------N-6AD300DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - RESET LAT COUNTERS
AX = D300h
DH = FFh
SeeAlso: AX=D400h
--------N-6AD400DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - COPY LAT COUNTERS
AX = D400h
DH = FFh
CX = buffer size
ES:BX -> buffer for LAT counters
Return: AX = status
0000h counters copied into buffer
FFFFh buffer too small
SeeAlso: AX=D300h
--------N-6AD500DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - GET NEXT LAT SERVICE NAME
AX = D500h
DH = FFh
ES:BX -> 17-byte buffer for name
Return: AH = 00h if successful
ES:BX buffer filled
AX = FFFFh if end of table or no name available
Notes: use this function to get the names of the hosts on the network
successive calls are necessary to get all names
SeeAlso: AX=D600h
--------N-6AD600DHFF-------------------------
INT 6A - DECnet DOS LOCAL AREA TRANSPORT - LAT SERVICE TABLE RESET
AX = D600h
DH = FFh
Return: AX = number of service table entries
BX = status
0000h service table has not overflowed
FFFFh service table has overflowed
SeeAlso: AX=D500h
--------N-6B---------------------------------
INT 6B - DECnet DOS - PORT DRIVER
Note: the installation check consists of testing for a signature area
(see #2169) immediately preceding the interrupt handler
SeeAlso: INT 6A"DECnet",INT 6C"DECnet"
Index: installation check;DECnet DOS Port Driver
Format of DECnet DOS signature area:
Offset Size Description (Table 2169)
-5 BYTE major version number
-4 BYTE minor version number
-3 3 BYTEs signature (ASCII "PDV")
--------v-6B---------------------------------
INT 6B - VIRUS - "Saddam" - ORIGINAL INT 21h VECTOR
SeeAlso: INT 21/AX=FFFFh,INT 61"VIRUS",INT 70"VIRUS"
--------h-6B---------------------------------
INT 6B - Hewlett Packard - EXTENDED BIOS - HARDWARE INTERRUPT
SeeAlso: INT 0B"IRQ0",INT 6A"Hewlett Packard",INT 6C"Hewlett Packard"
--------S-6B0000-----------------------------
INT 6B - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED WRITE
AX = 0000h
CX = length
ES:BX -> buffer
Return: CX = number of bytes written
Program: NASI is Novell's NetWare Asynchronous Services Interface (purchased
from Network Products Corp, who call it NCSI) which runs on
workstations; NACS is the NetWare Asynchronous Communications
Services module which runs on servers
Notes: the installation check consists of testing for the signature string
"NCSI" three bytes past the interrupt handler; see also AH=02h.
As of version 3.0, Novell's NASI can be distinguished from NPC's
NCSI by the presence of an 'A' immediately following the signature
this function is also supported by TelAPI, NPC NCSI, and Connection
Manager CLIENT.EXE; for TelAPI, nonzero values in AL specify a
connection ID
Connection Manager returns CF set/AL=FFh if called while an INT 6B
call is already in progress
SeeAlso: AX=0100h,AH=18h,INT 14/AH=19h,INT 14/AH=E3h
--------S-6B0100-----------------------------
INT 6B - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED READ
AX = 0100h
CX = length of buffer
ES:BX -> buffer
Return: CX = number of bytes read
Note: also supported by TelAPI and NPC NCSI; for TelAPI, nonzero values in
AL specify a connection ID
SeeAlso: AX=0000h,AH=19h,INT 14/AH=18h,INT 14/AH=E2h,INT 14/AX=FF02h
--------S-6B02-------------------------------
INT 6B - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - INSTALL CHECK
AH = 02h
AL nonzero
Return: AL = 00h if present and OK
Note: this function is also supported by TelAPI and NPC NCSI
SeeAlso: AX=0700h
--------S-6B0600-----------------------------
INT 6B - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - CONTROL
AX = 0600h
CX = command
02h send break
04h disconnect
06h hold
Return: CF clear if successful
AL = 00h
CF set on error
AX < 0
Note: this function is also supported by TelAPI and NPC NCSI
--------S-6B0700-----------------------------
INT 6B - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - GET STATUS
AX = 0700h
Return: CH <> 00h if connection active
Notes: this function is also supported by TelAPI and NPC NCSI
Novell TelAPI returns CX=FF01h and CF clear
SeeAlso: AH=02h,AH=10h
--------N-6B08-------------------------------
INT 6B - TelAPI - ???
AH = 08h
Return: CF clear
AL = 00h
CX = 0000h
Note: this function also clears ??? flag
SeeAlso: INT 14/AX=FF00h
--------S-6B10-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - GET STATUS
AH = 10h
AL = connection ID (Novell TELAPI.EXE)
CX = ???
Return: CF clear if successful
CL = ???
CH = ???
CF set on error
???
Notes: this function is also supported by TelAPI
when shelled out to an external protocol from Novell NASI, the circuit
whose status indicates that it is connected is the currently active
circuit
SeeAlso: AX=0700h,AH=12h,AH=1Fh
--------S-6B11--DX0001-----------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - ALLOCATE A VIRTUAL CIRCUIT
AH = 11h
DX = 0001h
AL = 00h
ES:BX -> service name string (8 characters, blank-padded)
Return: CF clear if successful
AL = virtual circuit number allocated (01h for Novell TELAPI.EXE)
CL = ??? (01h for Novell TELAPI.EXE)
CH = ??? (01h for Novell TELAPI.EXE)
CF set on error
???
Note: this function is also supported by TelAPI
SeeAlso: AH=12h,AH=15h,AH=16h,AH=17h,AH=18h
--------S-6B12-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - VIRTUAL CIRCUIT STATUS
AH = 12h
AL = virtual circuit number
CL = ???
ES:BX -> ???
Return: ???
Note: this function is also supported by TelAPI
SeeAlso: AH=10h,AH=15h,AH=1Ah,AH=1Bh,AH=1Fh
--------S-6B13-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE REQUEST/REPLY SERVICE NAME
AH = 13h
AL = virtual circuit number
CL = direction (00h get, nonzero set)
ES:BX -> buffer for/containing service name
Return: ???
Note: this function is also supported by TelAPI
SeeAlso: AH=14h,AH=15h
--------S-6B14-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE SERVICE ADDRESS
AH = 14h
AL = virtual circuit number
ES:BX -> buffer for/containing service address
Return: ???
Note: this function is also supported by TelAPI, which only supports
retrieving the address
SeeAlso: AH=13h,AH=15h,AH=21h
--------S-6B15-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE VIRTUAL CIRCUIT CONFIG
AH = 15h
AL = virtual circuit number
CL = direction (00h get, nonzero set)
ES:BX -> buffer for/containing virtual circuit config (see #2170)
Return: ES:BX buffer filled
Note: this function is also supported by TelAPI
SeeAlso: AH=13h"NCSI",AH=14h"NCSI"
Format of virtual circuit configuration:
Offset Size Description (Table 2170)
00h WORD buffer length
02h WORD port ID
04h WORD receive rate
06h WORD receive word length
08h WORD receive stop bits
0Ah WORD receive parity
0Ch WORD transmit rate
0Eh WORD transmit word length
10h WORD transmit stop bits
12h WORD transmit parity
14h WORD DTR
16h WORD RTS
--------S-6B16-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - LOG AND/OR INITIALIZE VIRTUAL CIRCUIT
AH = 16h
AL = virtual circuit number
CL = ??? switch (00h, ???)
Return: CF clear if successful
AL = virtual circuit number
CF set on error
???
Note: this function is also supported by TelAPI, which always returns CF
clear and AL=00h
SeeAlso: AH=11h,AH=12h,AH=17h
--------S-6B17-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - DISCONNECT A VIRTUAL CIRCUIT
AH = 17h
AL = virtual circuit number
Return: CF clear if successful
CF set on error
???
Note: this function is also supported by TelAPI, which always returns CF
clear and AL=00h
SeeAlso: AH=11h,AH=16h
--------S-6B18-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - WRITE DATA ON A VIRTUAL CIRCUIT
AH = 18h
AL = virtual circuit number
CX = number of characters to send
ES:BX -> buffer containing characters to be sent
Return: CF clear if successful
CF set on error
???
Note: this function is also supported by TelAPI, which always returns CF
clear and AL=30h
SeeAlso: AX=0000h,AH=12h,AH=19h
--------S-6B19-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - READ DATA ON A VIRTUAL CIRCUIT
AH = 19h
AL = virtual circuit number
CX = number of characters to read
ES:BX -> buffer for received characters
Return: CX = 0000h if failed
CX = nonzero (possibly number of characters received) if successful
Note: this function is also supported by TelAPI
SeeAlso: AX=0100h,AH=12h,AH=18h
--------S-6B1A-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - RECEIVE STATUS
AH = 1Ah
???
Return: ???
SeeAlso: AH=12h,AH=1Bh
--------S-6B1B-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT STATUS
AH = 1Bh
???
Return: ???
SeeAlso: AH=12h,AH=1Ah
--------S-6B1C-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - CLEAR RECEIVE BUFFER
AH = 1Ch
AL = circuit number
Return: nothing
SeeAlso: AH=1Dh"NCSI",AH=1Eh"NCSI"
--------S-6B1D-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT BUFFER CONTROL
AH = 1Dh
???
Return: ???
SeeAlso: AH=1Ch,AH=1Eh
--------S-6B1E-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - ISSUE CONTROL REQUEST
AH = 1Eh
???
Return: ???
SeeAlso: AH=1Ch,AH=1Dh
--------S-6B1F-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - EXTERNAL STATUS
AH = 1Fh
???
Return: ???
SeeAlso: AH=10h,AH=12h
--------S-6B20-------------------------------
INT 6B - Connection Manager CLIENT.EXE - ???
AH = 20h
???
Return: ???
Program: Connection Manager by Softwarehouse Corp. permits the sharing of
serial ports over an IPX or NetBIOS-based network
Note: CLIENT.EXE returns CF set/AL=F9h if AH is not 00h to 21h on entry
--------S-6B21-------------------------------
INT 6B - NPC NCSI EXTENDED SERIAL I/O - QUERY NAME SERVICE
AH = 21h
AL = virtual circuit number
CL = ??? (00h or 01h)
ES:BX -> buffer for service name structure (see #2171)
Return: CF clear if successful
ES:BX buffer filled
CF set on error
Notes: a program should call this function after allocating a virtual circuit
and check that the general name matches the requested service
prior to version 3.0, Novell's NASI returned the first available port;
v3.0+ returns the first port found--check the returned status to
determine whether the port is available
SeeAlso: AH=14h"NCSI"
Format of NCSI service name structure:
Offset Size Description (Table 2171)
00h WORD buffer length
02h 8 BYTEs service name
0Ah 8 BYTEs general name
12h 8 BYTEs specific name
1Ah 4 BYTEs ???
---Novell NASI v3.0+ ---
1Eh BYTE port number
1Fh BYTE port status
00h idle (available)
01h allocated (available)
02h connected
03h on hold
----------6B6B-------------------------------
INT 6B - Tandy SCHOOLMATE PLUS - API
AH = 6Bh
AL = E0h to FFh
Note: details not yet available
----------6C---------------------------------
INT 6C - system resume vector (CONVERTIBLE)
----------6C---------------------------------
INT 6C - DOS 3.2 Realtime Clock update
--------N-6C---------------------------------
INT 6C - DECnet DOS network scheduler
Notes: the installation check consists of testing for a signature area
immediately preceding the interrupt handler
also supported by DEC Pathworks for DOS
SeeAlso: INT 6B"DECnet",INT 6D"DECnet",INT 6E"DECnet"
Index: installation check;DECnet DOS scheduler
Format of DECnet DOS signature area:
Offset Size Description (Table 2172)
-5 BYTE major version number
-4 BYTE minor version number
-3 3 BYTEs signature (ASCII "SCH")
--------h-6C---------------------------------
INT 6C - Hewlett Packard - EXTENDED BIOS - HP-HIL CONTROLLER SERVICE ROUTINE
SeeAlso: INT 0C"IRQ0",INT 6B"Hewlett Packard",INT 6D"Hewlett Packard"
--------V-6D---------------------------------
INT 6D - VIDEO - many VGA - VIDEO BIOS ENTRY POINT
Desc: points at the original INT 10 entry point set up by the VGA BIOS
Note: used by IBM, ATI VGA Wonder, Paradise, Video7, and NCR, and many others
SeeAlso: INT 10
--------V-6D---------------------------------
INT 6D - Trident SVGA - VIDEO BIOS HANDLER
Note: the BIOS INT 10 handler on various Trident VGA cards consists merely
of a call to INT 6D followed by an IRET.
--------N-6D---------------------------------
INT 6D - DECnet DOS (before 2.1) - DATA LINK LAYER PROGRAM
AH = function
???
Return: ???
Note: the installation check consists of testing for a signature area
immediately preceding the interrupt handler
SeeAlso: INT 69/AH=0Ah,INT 6C"DECnet",INT 6E"DECnet"
Index: installation check;DECnet DOS Data Link Layer
Format of DECnet DOS signature area:
Offset Size Description (Table 2173)
-5 BYTE major version number
-4 BYTE minor version number
-3 3 BYTEs signature (ASCII "DLL")
--------h-6D---------------------------------
INT 6D - Hewlett Packard - EXTENDED BIOS - HARDWARE INTERRUPT
SeeAlso: INT 0D"IRQ0",INT 6C"Hewlett Packard",INT 6E"Hewlett Packard"
--------N-6E---------------------------------
INT 6E - DECnet DOS - DECnet NETWORK PROCESS API
Notes: this is the main DECnet DOS access, and is described in Digital manual
AA-EB46B-TV ("DECnet-DOS Programmer's Reference Manual")
there is a signature/data area immediately prior to the interrupt
handler which may be used as an installation check
Index: installation check;DECnet DOS
Format of DECnet DOS signature area:
Offset Size Description (Table 2174)
-5 BYTE major version number
-4 BYTE minor version number
-3 3 BYTEs signature (ASCII "DNP")
--------h-6E---------------------------------
INT 6E - Hewlett Packard - EXTENDED BIOS - HARDWARE INTERRUPT
SeeAlso: INT 0E"IRQ0",INT 6D"Hewlett Packard",INT 6F/AH=00h"HP HIL Vectras"
--------N-6F---------------------------------
INT 6F - Novell NetWare - PCOX API (3270 PC terminal interface)
AX = function
0000h enter terminal mode
Return: AX = status
0000h no action requested
0001h screen save
0001h reset interface and set configuration parameters
DX = bitfields
bits 2-0: model number
bits 4-3: I/O address
bits 6-5: DMA channel
Return: nothing
0002h set display parameters
DX = bitfields
bits 1-0: OIA mode
bits 4-2: monitor support
Return: nothing
0003h read status
Return: AX = status word (see #2175)
0004h read cursor position
Return: AX = cursor position
0005h get character from device buffer
DX = cursor position
Return: AH = type (00h data, 01h attribute)
AL = data or attribute character
0006h send character
DH = type (00h ASCII, 01h extended code)
DL = ASCII character or extended code
Return: nothing
0007h set timeout
DX = timeout in seconds
Return: nothing
0008h wait for location to be modified
DX = cursor position
Return: AX = status (0000h modified, nonzero timeout)
0009h NOP
000Ah restore display
Return: nothing
000Bh update device buffer
Return: AX = cursor positoin
000Ch write string to add information area
DS:DX -> string
Return: nothing
000Dh maintenance operations
DX = maintenance operation code
Return: AX = operation status
000Eh get control program version
Return: AH = release number (major version)
AL = level number (minor version)
000Fh get microcode version
Return: AH = release number (major version)
AL = level number (minor version)
0010h save or display graphics
BX = length of data buffer
CX = subfunction request code
DS:DX -> data buffer
Return: AX = return code
CX = length of PIF data
0011h perform structured field operation
CX = request number
DS:DX -> parameter list
Return: AX = status word (see #2175)
CX = error number
0012h set cursor position for direct write buffer
DX = new cursor position
Return: AX = status word (see #2175)
0013h write direct to buffer
DL = character to be written
DH = translation option
Return: AX = status word (see #2175)
0014h write direct to buffer without echo
DL = character to be written
DH = translation option
Return: AX = status word (see #2175)
0015h set direct write string length
DX = string value
Return: nothing
0016h write string direct to buffer
DS:DX -> string
Return: AX = status word (see #2175)
0017h write string direct to buffer, untranslated
DS:DX -> string
Return: AX = status word (see #2175)
0018h get direct-write cursor position
Return: AX = cursor position
0019h convert row/column to cursor position
DH = display row (1-43)
DL = display column (1-132)
Return: AX = cursor position
001Ah convert cursor position to row/column
DX = cursor position
Return: AH = display row
AL = display column
001Bh find next field
DX = initial cursor position
Return: AX = field cursor position
001Ch find previous field
DX = initial cursor position
Return: AX = field cursor position
001Dh find next unprotected field
DX = initial cursor position
Return: AX = field cursor position
001Eh find previous unprotected field
DX = initial cursor position
Return: AX = field cursor position
001Fh find next protected field
DX = initial cursor position
Return: AX = field cursor position
0020h find previous protected field
DX = initial cursor position
Return: AX = field cursor position
0021h masked search forward
DH = mask
DL = search pattern
Return: AX = cursor position or 0000h
0022h masked search backward
DH = mask
DL = search pattern
Return: AX = cursor position or 0FFFh
0023h find field length
DX = cursor position
Return: AX = field length
0024h read field
DS:DX -> buffer for field contents
Return: AX = status word (see #2175)
0025h read screen
DS:DX -> buffer for screen contents
Return: AX = status word (see #2175)
0026h read buffer untranslated
DX = cursor position
Return: AX = buffer code
CX:BX -> 3278/79 device buffer image
0027h enable/disable keyboard
DL = new state of keyboard breaks (00h enabled, 01h disabled)
Return: nothing
0028h select host session
DL = session short name
Return: AX = session information
0029h retrieve host session name
AX = short name (DFT) or 0000h (not available, CUT mode)
002Ah get current device buffer size
Return: AX = device buffer size
CX = segment of EAB
002Bh arm modified location trigger
DX = cursor position
Return: AX = status (0000h not available, 0001h successful)
Bitfields for PCOX status word:
Bit(s) Description (Table 2175)
0,1 cursor type
2 cursor inhibited
3 display inhibited
4 feature step inhibited
5 480-character format code
6,7 unused
8-10 model number (2-5)
11 unit has been reset by controller (cleared after status returned)
12 buffer has been written into (cleared after status returned)
13 alarm has been sounded (cleared after status returned)
14-15 monitor type (01 mono, 10 color, 11 hybrid)
--------N-6F00-------------------------------
INT 6F - 10NET - LOGIN
AH = 00h
DS:DX -> login record (see #2176)
Return: CL = security level
AX = status (see #2177)
SeeAlso: AH=01h,AH=80h,INT 21/AX=4402h"10MEMMGR"
Format of 10NET login record:
Offset Size Description (Table 2176)
00h 8 BYTEs user name
08h 8 BYTEs password
10h 12 BYTEs name of SuperStation
(Table 2177)
Values for 10NET status:
0000h successful
01FFh "RTO_NERR" transmit interrupt lost (time out on response)
02FFh "NET_NERR" network (hardware) error
03FFh "PAS_NERR" invalid password
04FFh "LRN_NERR" local resource not available
05FFh "SRN_NERR" server resource not available
06FFh "LNM_NERR" already logged in under different name
07FFh "LSF_NERR" login security failure (node)
08FFh "NLI_NERR" not logged in
09FFh "DIVZ_NERR" position calc error
0AFFh "NT1_NERR" receive subfunction not = send subfunction (i.e. read,write)
0BFFh "RFNC_NERR" request function not in range
0CFFh "NSFH_NERR" no more server file handle entries left
0DFFh "NFTAB_NERR" no more shared file table entries left
0EFFh "NUFH_NERR" no more user file handle entries left
0FFFh "CHAT_NERR" chat permit not on
10FFh "NSRV_NERR" not a server on request
11FFh "NOBD_NERR" no transporter board error
12FFh "STO_NERR" time out on send
13FFh "INF_NERR" item not found (spool item not on queue)
14FFh "DACS_NERR" DOS access incompatible
15FFh "RLOCK_NERR" record already locked
16FFh "IVP_NERR" invalid parameter
17FFh "RLTO_NERR" record lock time out error
18FFh "CSPL_NERR" currently spooling to named device
19FFh "DRP_NERR" dropped receive message (throttle)
1AFFh "SOPV_NERR" open sharing violation
1BFFh "NTUF_NERR" no more tuf entries left
1CFFh "NOWN_NERR" not file owner on open
1DFFh "RSEC_NERR" read security not passed
1EFFh "WSEC_NERR" write security not passed
1FFFh "GSEC_NERR" group security not passed
20FFh "SEC1_NERR" security file failure
21FFh "ACT1_NERR" activity file failure
22FFh "SPL1_NERR" spool control file failure
23FFh "NMT_NERR" device not mounted (spooling)
24FFh "RSPL_NERR" spool file has not been terminated
25FFh "DNSH_NERR" device not mounted or is not being shared
26FFh "DUP_NERR" duplicate node ID
27FFh "FNF_NERR" file not found error
28FFh "NMF_NERR" no more files
29FFh "UN_NERR" unknown internal system error
2AFFh "QCP_NERR" print queue is full or corrupted
2BFFh "IFNC_NERR" invalid function
2CFFh "IVH_NERR" invalid handle
2DFFh "TOF_NERR" too many files opened
2EFFh "PNF_NERR" path not found
2FFFh "SACT_NERR" named file is active
---10NET v5.0+ ---
30FFh "NAK_NERR" received NAK on send (destination out of buffers)
31FFh "RENT_NERR" reentrancy in driver F_SEND
32FFh "RECV_NERR" driver could not be put in receive mode
33FFh "NRLT_NERR" no more RLTAB entries left
34FFh "DIAL_NERR" function requires an unsupported dialect
35FFh "IVD_NERR" invalid device
36FFh "NALV_NERR" netname access level violated
37FFh "NPIDNF_NERR" network path not found
38FFh "SP_NERR" server is paused
39FFh "TMNM_NERR" too many remote user names
3AFFh "DUPD_NERR" duplicate network device
3BFFh "DIU_NERR" shared device in use, can't delete
3CFFh "NNWD_NERR" network name was deleted
3DFFh "NPFS_NERR" not enough space for print file
3EFFh "NNNF_NERR" network name not found (can't find the call name)
3FFFh "NB_NERR" network busy
40FFh "NDNLE_NERR" network device no longer exists
41FFh "NBCLE_NERR" NetBIOS command limit exceeded
42FFh "FINT24_NERR" Fail on INT 24h
43FFh "PEXP_NERR" password expired
44FFh "NPUP_NERR" new password error
45FFh "MAXS_NERR" maximum allowed disk space exceeded
46FFh "TDOW_NERR" time-of-day/day-of-week error
SeeAlso: #2188
Index: error codes;10Net|10Net;error codes
--------b-6F00-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_ISR" - RESPOND TO LOGICAL ISR
AH = 00h
BP = ID for driver (0012h???)
???
Return: ???
SeeAlso: INT 6F/AH=02h"Hewlett Packard"
--------N-6F01-------------------------------
INT 6F - 10NET - LOGOFF
AH = 01h
DS:DX -> superstation ID or nulls (12 bytes)
Return: CX = number of files closed
AX = status (see also #2177)
08FFh superstation ID not already logged in
SeeAlso: AH=00h"10NET",AH=81h
--------N-6F02-------------------------------
INT 6F - 10NET - STATUS OF NODE
AH = 02h
DS:DX -> 512-byte status record (see #2179)
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: INT 21/AX=5E01h"10NET"
(Table 2178)
Values for 10NET station type:
00h workstation
01h superstation
02h gateway station
03h gateway active
04h logged into multiple superstations
05h reserved
Format of 10NET node status record:
Offset Size Description (Table 2179)
00h 8 BYTEs user name (0 if none)
08h BYTE station type (see #2178)
09h 24 BYTEs list of superstations logged into more than one superstation
21h 12 BYTEs node ID
2Dh WORD message count for this station (send for user node, receive for
superstations)
---for superstations only---
2Fh WORD drives allocated (bit 0=A:, bit 1=B:,...)
31h BYTE user service flags (see #2180)
32h BYTE printers allocated (bit 0=LPT1,...)
33h BYTE number of unprinted spool files
34h BYTE number of opened files
35h BYTE number of logged on nodes
36h BYTE primary drive (1=A:)
37h BYTE reserved
38h N BYTEs list of logged on node IDs (each 12 bytes, max 37 IDs)
1F4h 3 BYTEs time: sec/min/hrs
1F7h 3 BYTEs date: day/mon/year-1980
Bitfields for 10NET user service flags:
Bit(s) Description (Table 2180)
7 gate
6 print permit on
4 SUBMIT is on
3 mail waiting for node
2 calendar waiting for you
1 news waiting for you
0 mail waiting for you
--------b-6F02-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_SYSTEM" - SYSTEM FUNCTIONS
AH = 02h
BP = driver ID
AL = subfunction
00h "SF_INIT" start initializing a driver
02h "SF_START" complete driver initialization
04h "SF_RPT_STAT" report driver state
06h "SF_VER_DESC" get driver's revision number and date code
08h "SF_DEF_ATTR" get driver's default configuration
0Ah "SF_GET_ATTR" get driver's current configuration
0Ch "SF_SET_ATTR" specify new configuration for driver
0Eh "SF_OPEN" reserve driver for exclusive access
10h "SF_CLOSE" release driver from exclusive access
12h "SF_TIMEOUT" tell driver that a requested timeout has occurred
14h "SF_INTERVAL" tell driver that a requested 60Hz interval done
16h "SF_TEST" tell driver to perform hardware test
??? details not yet available
Return: ???
SeeAlso: AH=00h"Hewlett Packard",AH=04h"Hewlett Packard"
--------W-6F0204-----------------------------
INT 6F C - MS Windows 3.0 - DOS APPLICATION SWITCH HOOK
AX = 0204h
Return: AX = status
0000h switch is allowed
other switch not allowed
Note: intercepting this call will allow a DOS application to ensure that
Windows will not switch away from it.
--------N-6F03-------------------------------
INT 6F - 10NET - GET ADDRESS OF CONFIGURATION TABLE
AH = 03h
DS:DI -> node ID (optional)
Return: ES:BX -> configuration table (see #2181)
SeeAlso: AH=13h,INT 21/AX=5E01h"10NET"
Format of 10NET configuration table:
Offset Size Description (Table 2181)
-41 WORD local device table address
-39 WORD extended network error mapping table address
-37 WORD shared device table address
-35 WORD mounted device table address
-33 BYTE receive buffer counter
-32 BYTE collect buffer counter
-31 WORD TUF address
-29 BYTE enable flag
-28 BYTE FCB keep flag
-27 WORD reserved
---up to here, 10NET v3.3---
-25 WORD count of dropped Send6F
-23 WORD buffer start address
-21 WORD comm driver base address
-19 WORD send/receive retry count
-17 BYTE number of 550ms loops before timeout
-16 WORD UFH address
-14 WORD CDIR address
-12 WORD LTAB address
-10 WORD SFH address
-8 WORD FTAB address
-6 WORD RLTAB address
-4 WORD SMI address
-2 WORD NTAB address
00h WORD address of first CT_DRV
02h BYTE number of DRV entries
03h 8 BYTEs login name
0Bh 12 BYTEs node ID (blank-padded)
17h 6 BYTEs node address
1Dh BYTE flag
1Eh BYTE CT_CFLG (chat permit)
bit 1: sound bell
bit 0: CHAT permit
1Fh BYTE CT_PSFLG (see #2182)
20h BYTE in 10Net flag
21h WORD receive message count
23h WORD send message count
25h WORD retry count
27h WORD failed count
29h WORD driver errors
2Bh WORD dropped responses/CHATs
2Dh 9 BYTEs LIST ID/NTAB address (3 entries--LPT1-3)
36h 6 BYTEs AUX ID/NTAB address (2 entries--COM1-2)
3Ch BYTE active CB channel
3Dh BYTE received 6F messages on queue
3Eh 9 BYTEs activity counters for channels 1-9
---beyond here, 10NET v3.3---
47h BYTE bit 0: RS232 gate
bit 1: Send6F gate (user set)
48h DWORD pointer into gate (user set)
4Ch DWORD pointer into 10Net send
50h N WORDs addresses of timer blocks
Bitfields for CT_PSFLG:
Bit(s) Description (Table 2182)
5 PRINT permit
4 KB initiated
3 CHAT called FOXPTRM
2 SUBMIT active
1 SUBMIT received
0 SUBMIT permit
--------N-6F04-------------------------------
INT 6F - 10NET - SEND
AH = 04h
DS:BX -> send record (see #2183)
DS:DX -> data (max 1024 bytes)
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: AH=05h,AH=09h,AH=0Ah
Format of 10NET send record:
Offset Size Description (Table 2183)
00h 12 BYTEs receiving node's ID
if first byte has high-order bit set, message is directed to
the CT_RGATE vector at the receiver
if second byte is 00h, first byte is taken as a CB
channel number and delivered to all nodes on same channel
0Ch WORD length of data at DX
--------b-6F04-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_IO_CTRL" - DRIVER CONTROL
AH = 04h
BP = driver ID
AL = subfunction
00h "SF_LOCK" reserve specified sub-addresses for exclusive access
02h "SF_UNLOCK" release specified sub-addresses
others driver-dependent
??? details not yet available
Return: ???
SeeAlso: AH=02h"Hewlett Packard",AH=06h"Hewlett Packard"
--------N-6F05-------------------------------
INT 6F - 10NET - RECEIVE
AH = 05h
CX = number of seconds before timeout
DS:DX -> receive buffer (see #2184)
Return: CF clear if successful
AH = FEh if dequeued message is a CB message
CF set on error
AX = error code (see #2177)
SeeAlso: AH=04h"10NET"
Format of 10NET receive buffer:
Offset Size Description (Table 2184)
00h 12 BYTEs sending node's ID
0Ch WORD length of message
0Eh N BYTEs message (maximum 1024 bytes)
--------b-6F06-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_PUT_BYTE" WRITE A BYTE OF DATA
AH = 06h
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=04h"Hewlett Packard",AH=08h"Hewlett Packard",AH=0Ah"Hewlett"
--------N-6F07-------------------------------
INT 6F - 10NET - LOCK HANDLE
AH = 07h
BX = file handle
CX:DX = starting offset in file
SI = record length
Return: CF clear if successful
CF set on error
AX = error code (see also AH=00h)
0002h file not found
SeeAlso: AH=08h"10NET",AH=0Fh,INT 21/AH=5Ch
--------N-6F08-------------------------------
INT 6F - 10NET - UNLOCK HANDLE
AH = 08h
BX = file handle
AL = mode
00h unlock all
01h unlock record at CX:DX
Return: CF clear if successful
CF set on error
AX = error code (see also AH=00h)
0002h file not found
SeeAlso: AH=07h,AH=0Fh,INT 21/AH=5Ch
--------b-6F08-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_GET_BYTE" READ A BYTE OF DATA
AH = 08h
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=06h"Hewlett Packard",AH=0Ah"Hewlett Packard",AH=0Ch"Hewlett"
--------N-6F09-------------------------------
INT 6F - 10NET - SUBMIT
AH = 09h
DS:BX -> submit record (see #2185)
SeeAlso: AH=04h"10NET"
Format of 10NET submit record:
Offset Size Description (Table 2185)
00h 12 BYTEs destination node ID (must be logged in)
0Ch WORD length+2 of following 'command line' text
0Eh N BYTEs command line text (<=100 bytes), system adds CR
--------N-6F0A-------------------------------
INT 6F - 10NET - CHAT
AH = 0Ah
DS:BX -> control parameters (see #2186)
DS:DX -> chat message (see #2187)
SeeAlso: AH=04h"10NET",AH=8Ah
Format of 10NET chat control parameters:
Offset Size Description (Table 2186)
00h 8 BYTEs sender ID, defaults to node's userID if nulls
08h 8 BYTEs destination user ID, 'EVERYONE' may be used
10h 12 BYTEs destination node ID
Format of 10NET chat message:
Offset Size Description (Table 2187)
00h WORD length+2 of following text
02h N BYTEs text, max 101 bytes
--------b-6F0A-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_PUT_BUF" WRITE A BUFFER
AH = 0Ah
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=06h"Hewlett Packard",AH=0Ch"Hewlett Packard"
--------N-6F0B-------------------------------
INT 6F - 10NET - LOCK SEMAPHORE, RETURN IMMEDIATELY
AH = 0Bh
AL = drive number or 0
ES:SI = Ethernet address or 0
DS:BX -> 31-byte ASCIZ semaphore name
Return: AL = status (see #2188)
Note: same as INT 60/AH=12h
SeeAlso: AH=0Ch"10NET",INT 60/AH=12h
(Table 2188)
Values for 10NET status:
00h successful
01h semaphore currently locked
02h server not responding
03h invalid semaphore name
04h semaphore list is full
05h invalid drive ID
06h invalid Ethernet address
07h not logged in
08h write to network failed
09h semaphore already logged in this CPU
SeeAlso: #2177
Index: error codes;10-Net|10-Net;error codes
--------N-6F0C-------------------------------
INT 6F - 10NET - UNLOCK SEMAPHORE
AH = 0Ch
AL = drive number or 0
ES:SI = Ethernet address or 0
DS:BX -> 31-byte ASCIZ semaphore name
Return: AL = status (see also #2188)
01h semaphore not locked
Note: same as INT 60/AH=13h
SeeAlso: AH=0Bh,INT 60/AH=13h
--------b-6F0C-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_GET_BUF" READ A BUFFER OF DATA
AH = 0Ch
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=08h"Hewlett Packard",AH=0Ah"Hewlett Packard",AH=0Eh"Hewlett"
--------N-6F0D-------------------------------
INT 6F - 10NET - "WHO" - ENUMERATE USERS ON NETWORK
AH = 0Dh
AL = type code
01h return superstations only
02h return non-superstations only
otherwise return all
CX = length of data buffer
DS:DX -> array of records to be filled (see #2189)
Return: CL = number of records returned (responding stations)
SeeAlso: AH=16h,AH=8Dh
Format of station record:
Offset Size Description (Table 2189)
00h 12 BYTEs node ID
0Ch BYTE station flags (see #2190)
---if AL = 01h---
0Dh BYTE version number
0Eh WORD level number of 10Net software in responding node
---if AL = 02h---
0Dh 8 BYTEs user ID
15h BYTE version number
16h WORD level number
Bitfields for station flags:
Bit(s) Description (Table 2190)
1 workstation
2 superstation
3 xgate
4 active gate
--------N-6F0E-------------------------------
INT 6F - 10NET - SPOOL/PRINT
AH = 0Eh
DS:DX -> spool/print record (see #2192)
Return: CF clear if successful
CF set on error
AX = error code (see also #2177)
17FFh device not mounted
18FFh already spooling to named device
(Table 2191)
Values for 10NET spooler operation code:
0000h initiate spool
0001h abort print
0002h close spool
0003h delete spool
0004h print
0005h get report info
0006h set chat template
0007h queue
0008h return queue
0009h queue non-spooled file for printing
Format of 10NET Spool/Print record:
Offset Size Description (Table 2192)
00h WORD operation code (see #2191)
02h 11 BYTEs file name in FCB format
---if operation code = 00h or 06h---
0Dh BYTE notification flags (see #2193)
0Eh BYTE days to keep (FFh=forever)
0Fh BYTE bits 0,1: device (1=LPT1)
bits 4-7: remote drive to store spool file (1=A,...)
10h WORD length of following data area
12h N BYTEs up to 64 bytes of description
---if operation code = 03h---
0Dh 8 BYTEs user ID to associate with filename
---if operation code = 04h---
0Dh WORD block number
0Fh 8 BYTEs user ID to associate with filename
---if operation code = 05h---
0Dh BYTE RRN to start retrieve
0Eh BYTE bits 0,1: local print device (LPTx)
bit 3: if set, return entries for all users
0Fh WORD length of following area
11h N BYTEs up to 1500 bytes to receive $SCNTL records returned
---if operation code = 07h---
0Dh BYTE queue number
0Eh BYTE bits 0,1: local print device (LPTx)
0Fh WORD number of bytes of test print to be done
11h BYTE code:
01h print device
02h test print count
03h prn
---if operation code = 08h---
0Dh BYTE queue location or $SCNTL location to start access
returns next item for access:
00h-7Fh queued items
80h-FEh non-queued, non-printed items
FFh no more items
0Eh WORD unused
10h WORD length of following area
12h N BYTEs up to 64 bytes to receive $SCNTL records
---if operation code = 09h---
0Dh 3 BYTEs unused
10h N BYTEs path to non-spooled file to be queued for printing
Bitfields for notification flags:
Bit(s) Description (Table 2193)
7 queue to top
6 do ID page
5 no form feed
4 reserved
3 explicit queuing only
2 notify at print completion
1 notify server operator, with reply
0 notify at print start
Format of 10NET $SCNTL record:
Offset Size Description (Table 2194)
00h 8 BYTEs user ID
08h 11 BYTEs filename in FCB format
13h 6 BYTEs node ID
19h 3 BYTEs creation date
1Ch BYTE notification flags (see #2193)
1Dh BYTE retention time in days
1Eh BYTE printing device (LPTx)
1Fh 3 BYTEs date last printed (0 = never)
22h BYTE device containing spoolfile
23h WORD bytes to print for test print
25h WORD block number to start print
27h BYTE reserved
--------b-6F0E-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_PUT_WORD" WRITE A WORD OF DATA
AH = 0Eh
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=06h"Hewlett Packard",AH=0Ah"Hewlett Packard",AH=10h"Hewlett"
--------N-6F0F-------------------------------
INT 6F - 10NET v5.0 - "RM LOCK" - ???
AH = 0Fh
???
Return: ???
SeeAlso: AH=07h,AH=08h"10NET"
--------N-6F10-------------------------------
INT 6F - 10NET - ATTACH/DETACH PRINTER
AH = 10h
AL = subfunction
00h initiate spooling if LPT1 is mounted
01h terminate spooling if LPT1 is mounted
SeeAlso: INT 21/AX=5D08h
--------b-6F10-------------------------------
INT 6F - Hewlett Packard - EXTENDED BIOS - "F_GET_WORD" READ A WORD OF DATA
AH = 10h
BP = driver ID
??? details not yet available
Return: ???
SeeAlso: AH=08h"Hewlett Packard",AH=0Ah"Hewlett Packard",AH=0Eh"Hewlett"
--------N-6F11-------------------------------
INT 6F - 10NET - LOCK FCB
AH = 11h
AL = mode
01h sequential
02h random
03h random block
CX = number of records
DS:DX -> FCB (see #0506 at INT 21/AH=0Fh)
Return: CF clear if successful
CF set on error
AX = error code (see also #2177)
0002h file not found
SeeAlso: AH=12h,INT 21/AH=0Fh
--------N-6F12-------------------------------
INT 6F - 10NET - UNLOCK FCB
AH = 12h
AL = mode
00h sequential
01h random
02h random block
CX = number of records
DS:DX -> FCB (see #0506 at INT 21/AH=0Fh)
Return: CF clear if successful
CF set on error
AX = error code (see also #2177)
0002h file not found
SeeAlso: AH=11h
--------N-6F13-------------------------------
INT 6F - 10NET v3.3+ - GET REMOTE CONFIGURATION TABLE ADDRESS
AH = 13h
DS:DX -> node ID, 12 bytes blank-padded
Return: CF clear if successful
ES:BX = configuration table address on given machine
CF set on error
AX = error code (see #2177)
SeeAlso: AH=03h
--------N-6F14-------------------------------
INT 6F - 10NET v3.3+ - GET REMOTE MEMORY
AH = 14h
BX:SI = address of remote memory
CX = length (<=1024 bytes)
DS:DX -> node ID, 12 bytes blank-padded
DS:DI -> area to receive remote memory image
Return: CF clear if successful
CX = amount of memory copied to DS:SI
CF set on error
AX = error code (see #2177)
--------N-6F1501-----------------------------
INT 6F - 10NET v3.3+ - GET SHARED DEVICE ENTRY
AX = 1501h
BX = zero-based index
DS:SI -> node ID, 12 bytes blank-padded
ES:DI -> 85-byte buffer for shared device table entry (see #2195)
Return: CF clear if successful
ES:DI buffer contains shared device table entry of BXth device
CF set on error
AX = error code (see #2177)
SeeAlso: AX=1502h,AX=1503h,AX=9501h
Format of 10NET shared device table entry:
Offset Size Description (Table 2195)
00h 8 BYTEs device
08h 8 BYTEs alias
10h 64 BYTEs path
50h 8 BYTEs password
58h BYTE access
59h 4 BYTEs mask
--------N-6F1502-----------------------------
INT 6F - 10NET v3.3+ - SET SHARED DEVICE ENTRY
AX = 1502h
DS:SI -> node ID, 12 bytes blank-padded
ES:DI -> valid shared device table entry
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: AX=1501h,AX=1503h,AX=9502h
--------N-6F1503-----------------------------
INT 6F - 10NET v3.3+ - DELETE SHARED DEVICE ENTRY
AX = 1503h
BX = zero-based index
DS:SI -> node ID, 12 bytes blank-padded
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: AX=1501h,AX=1502h,AX=9503h
--------N-6F16-------------------------------
INT 6F - 10NET v5.0 - "GL WHO" - ???
AH = 16h
???
Return: ???
SeeAlso: AH=0Dh
--------N-6F17-------------------------------
INT 6F - 10NET v3.3+ - MOUNT
AH = 17h
AL = local drive number (0=A:)
BL = remote drive letter or '1'..'3' for LPTn or '4' or '5' for COMx
DS:DX -> node ID, 12 bytes blank-padded
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: AH=18h
--------N-6F18-------------------------------
INT 6F - 10NET v3.3+ - UNMOUNT
AH = 18h
AL = local drive number (0=A:)
BL = type
00h disk
01h-03h LPTn
04h,05h COMx
Return: CF clear if successful
CF set on error
AX = error code (see #2177)
SeeAlso: AH=17h
--------N-6F19-------------------------------
INT 6F U - 10NET v5.0 - AUDIT
AH = 19h
???
Return: ???
SeeAlso: AH=99h
--------N-6F1A-------------------------------
INT 6F U - 10NET v5.0 - "BULL" - ???
AH = 1Ah
???
Return: ???
--------N-6F1B-------------------------------
INT 6F U - 10NET v5.0 - "GMOUNT" - ???
AH = 1Bh
???
Return: ???
--------N-6F1C-------------------------------
INT 6F U - 10NET v5.0 - "GLOGIN" - GET LOGIN LIST
AH = 1Ch
???
Return: ???
--------N-6F1D-------------------------------
INT 6F U - 10NET v5.0 - "TABDATA" - ???
AH = 1Dh
???
Return: ???
--------N-6F1E-------------------------------
INT 6F U - 10NET v5.0 - "SCHED" - ???
AH = 1Eh
???
Return: ???
--------N-6F1F-------------------------------
INT 6F U - 10NET v5.0 - "WHOAMI" - ???
AH = 1Fh
???
Return: ???
--------N-6F20-------------------------------
INT 6F U - 10NET v5.0 - ???
AH = 20h
???
Return: ???
--------N-6F21-------------------------------
INT 6F U - 10NET v5.0 - ???
AH = 21h
???
Return: ???
--------N-6F22-------------------------------
INT 6F U - 10NET v5.0 - ???
AH = 22h
???
Return: ???
--------b-6F22--BP0012-----------------------
INT 6F - HP HIL Vectras - EXTENDED BIOS - READ CMOS MEMORY
AH = 22h
BP = 0012h (ID of V_SYSTEM driver)
BL = address of CMOS byte to read
Return: AH = status
AL = byte read
BP, DS destroyed
Note: supported by ES, QS, and RS series HP Vectras
SeeAlso: BP=0012h/AH=24h
--------b-6F24--BP0012-----------------------
INT 6F - HP HIL Vectras - EXTENDED BIOS - WRITE CMOS MEMORY
AH = 24h
BP = 0012h (ID of V_SYSTEM driver)
BL = address of CMOS byte to write
AL = new value
Return: AH = status
BP, DS destroyed
SeeAlso: BP=0012h/AH=22h
--------N-6F80-------------------------------
INT 6F - 10NET v5.0 - LOGIN
AH = 80h
DS:DX -> login record (see #2196)
Return: CF clear if successful
BL = number of days until password expires (00h = never)
CL = security level
CF set on error
AX = status (see #2177)
SeeAlso: AH=00h,AH=81h
Format of 10NET login record:
Offset Size Description (Table 2196)
00h 8 BYTEs user name
08h 8 BYTEs password
10h 15 BYTEs server node ID
1Fh 8 BYTEs new password
27h BYTE invoke mode (00h command line, 01h interactive)
--------N-6F81-------------------------------
INT 6F - 10NET v5.0 - LOGOUT
AH = 81h
DS:DX -> server node ID (DX=0000h for universal logout)
Return: AX = status (see #2177)
SeeAlso: AH=01h,AH=80h
--------N-6F8A-------------------------------
INT 6F - 10NET v5.0 - CHAT
AH = 8Ah
DS:BX -> chat parameters (see #2197)
DS:DX -> chat message (see #2198)
Return: CF clear if successful
CF set on error
AX = status (see #2177)
SeeAlso: AH=0Ah
Format of 10NET chat parameters:
Offset Size Description (Table 2197)
00h 8 BYTEs sender's user name
08h 8 BYTEs destination user name
10h 15 BYTEs destination node (0 if broadcast-style chat)
Format of 10NET chat message:
Offset Size Description (Table 2198)
00h WORD message length
02h N BYTEs chat message contents
--------N-6F8D-------------------------------
INT 6F - 10NET v5.0 - "WHO" - ENUMERATE USERS ON NETWORK
AH = 8Dh
BX = service mask (see #2199)
CX = length of buffer
DS:DX -> buffer for array of Who data structures (see #2200)
Return: CF clear if successful
CX = number of nodes matching service mask
DS:DX buffer filled
CF set on error
AX = status (see #2177)
SeeAlso: AH=0Dh
Bitfields for 10NET service mask:
Bit(s) Description (Table 2199)
0 workstation
1 file server
2 print server
3 de-spool server
Format of 10NET Who data structure:
Offset Size Description (Table 2200)
00h 8 BYTEs user name
08h 15 BYTEs node ID
17h 3 BYTEs unique portion of Ethernet address
1Ah BYTE Who group number
1Bh WORD service mask (see #2199)
1Dh DWORD serial number
21h BYTE maximum concurrent users with same serial number allowed on net
22h BYTE chat mask (see #2201)
23h BYTE internal system bits (see #2202)
24h 9 BYTEs version number in format MM.mm.xxx
2Dh BYTE number of shared directories
2Eh BYTE number of shared printer queues
Bitfields for 10NET chat mask:
Bit(s) Description (Table 2201)
0 chat permitted
1 bell enabled
2 chat keyboard initiated
3 in INT 16 handler
4 in Get Input
5 display has timed out
6 chat is idle
Bitfields for 10NET internal system bits:
Bit(s) Description (Table 2202)
0 submit permitted
1 submit initiated
2 submit executing
3 internal client call/chat/spool/autospool
4 in spool termination
5 print permitted
6 waiting for keyboard input
--------N-6F9501-----------------------------
INT 6F - 10NET v5.0 - GET SHARED DEVICE ENTRY
AX = 9501h
BX = zero-based index
DS:SI -> server's node ID
ES:DI -> buffer for shared device structure (see #2203)
Return: CF clear if successful
CF set on error
AX = status (see #2177)
SeeAlso: AX=1501h,AX=9502h,AX=9503h,AX=9504h
Format of 10NET shared device structure:
Offset Size Description (Table 2203)
00h 8 BYTEs alias
08h BYTE type (02h modem, 03h print queue, 04h directory)
09h BYTE access rights
bit 0: read
bit 1: write
bit 2: create
0Ah 8 BYTEs password
12h 32 BYTEs comment
---directory---
32h 64 BYTEs pathname of shared directory
---print queue---
32h BYTE notification bit mask (see #2204)
33h BYTE job control bit mask (see #2205)
34h WORD number of days to retain file
36h WORD test print length
38h BYTE number of copies to print
39h BYTE compression algorithm
3Ah BYTE tab width (00h = don't expand)
3Bh BYTE priority
3Ch WORD time to open queue (FFFFh = always)
3Eh WORD time to close queue
40h WORD pause following queue switch, in clock ticks
42h WORD pause between print jobs, in clock ticks
44h BYTE associate queue file existence mask
bit 0: queue switch file exists
bit 1: initiate file exists
bit 2: abort file exists
45h 6 BYTEs character sequence for page eject
4Bh BYTE status of print queue
bit 0: queue is closed
4Ch WORD number of jobs on queue
4Eh WORD offset of next print job to be dispatched (FFFFh = none)
50h BYTE number of print devices in printer pool
51h WORD offset of first print device structure (FFFFh if empty)
Bitfields for notification flags:
Bit(s) Description (Table 2204)
0 user at print start
1 operator at start, with reply
2 user at print completion
3 operator at completion, with reply
4 user on queue switch
5 operator on queue switch, with reply
6 user on print error
Bitfields for 10NET job control mask:
Bit(s) Description (Table 2205)
0 print banner page
1 eject page at end of job
2 mark as "held" (queue but don't print)
3 rush job (queue at top)
4 overwrite file with zeros before deletion
5 hyperspool if possible
--------N-6F9502-----------------------------
INT 6F - 10NET v5.0 - SET SHARED DEVICE ENTRY
AX = 9502h
DS:SI -> server's node ID
ES:DI -> shared device structure (see #2203)
Return: CF clear if successful
CF set on error
AX = status (see #2177)
SeeAlso: AX=1502h,AX=9501h,AX=9503h,AX=9504h
--------N-6F9503-----------------------------
INT 6F - 10NET v5.0 - DELETE SHARED DEVICE
AX = 9503h
BX = zero-based index
DS:SI -> server's node ID
Return: CF clear if successful
CF set on error
AX = status (see #2177)
SeeAlso: AX=1503h,AX=9501h,AX=9502h,AX=9504h
--------N-6F9504-----------------------------
INT 6F - 10NET v5.0 - ENUMERATE USERS OF SHARED DEVICE
AX = 9504h
BX = zero-based shared device index
CX = zero-based user index
DS:SI -> server's node ID
Return: CF clear if successful
ES:DI -> node ID of the CX'th user of the BX'th device
CF set on error
AX = status (see #2177)
SeeAlso: AX=9501h,AX=9502h,AX=9503h
--------N-6F99-------------------------------
INT 6F - 10NET v5.0 - AUDIT
AH = 99h
DS:SI -> server's node ID
ES:DI -> data to be appended to audit trail file (max 106 bytes)
Return: CF clear if successful
CF set on error
AX = status (see #2177)
SeeAlso: AH=19h,AH=9Ch
--------N-6F9C-------------------------------
INT 6F - 10NET v5.0 - GET LOGIN LIST
AH = 9Ch
BX = zero-based index
Return: CF clear if successful
DS:DI -> BX'th node ID that caller's machine is logged into
CF set on error
AX = status (see #2177)
--------H-70---------------------------------
INT 70 - IRQ8 - CMOS REAL-TIME CLOCK
Desc: this interrupt is called when the real-time clock chip generates an
alarm or periodic interrupt, among others. The periodic interrupt
occurs 1024 times per second.
Nots: many BIOSes turn off the periodic interrupt in the INT 70h handler
unless in an event wait (see INT 15/AH=83h or INT 15/AH=86h).
may be masked by setting bit 0 on I/O port A1h
SeeAlso: INT 08,INT 0F"HP 95LX",INT 15/AH=01h"Amstrad",INT 15/AH=83h
SeeAlso: INT 15/AH=86h,INT 1A/AH=02h,INT 58"DESQview"
--------v-70---------------------------------
INT 70 - VIRUS - "Stupid" - ORIGINAL INT 21h VECTOR
Note: the virus sets this interrupt to be the same as INT 21, and then
performs only INT 70 calls; since INT 70 is also generated by the
real-time clock on the PC/AT and higher, this could cause random
actions on an infected system
SeeAlso: INT 6B"VIRUS",INT 9E"VIRUS",INT E0"VIRUS"
--------H-71---------------------------------
INT 71 - IRQ9 - REDIRECTED TO INT 0A BY BIOS
Notes: may be masked by setting bit 1 on I/O port A1h
the default BIOS handler invokes INT 0A for compatibility, since the
pin for IRQ2 on the PC expansion bus became the pin for IRQ9 on the
AT expansion bus.
under DESQview, only the INT 15h vector and BASIC segment address (the
word at 0000h:0510h) may be assumed to be valid for the handler's
process
SeeAlso: INT 0A,INT 59
--------H-72---------------------------------
INT 72 - IRQ10 - RESERVED
Note: may be masked by setting bit 2 on I/O port A1h
SeeAlso: INT 5A
--------H-73---------------------------------
INT 73 - IRQ11 - RESERVED
Note: may be masked by setting bit 3 on I/O port A1h
SeeAlso: INT 5B
--------H-74---------------------------------
INT 74 - IRQ12 - POINTING DEVICE (PS)
Notes: may be masked by setting bit 4 on I/O port A1h
under DESQview, only the INT 15h vector and BASIC segment address (the
word at 0000h:0510h) may be assumed to be valid for the handler's
process
SeeAlso: INT 33,INT 5C
--------H-75---------------------------------
INT 75 - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)
Desc: redirected to INT 02 by the BIOS, for compatibility with the PC
Notes: may be masked by setting bit 5 on I/O port A1h
not all clones wire the coprocessor to generate this IRQ; some systems
generate an NMI (see INT 02) or assert the -ERROR pin on the CPU
(see INT 10"COPROCESSOR")
under DESQview, only the INT 15h vector and BASIC segment address (the
word at 0000h:0510h) may be assumed to be valid for the handler's
process
SeeAlso: INT 10"COPROCESSOR",INT 5D
--------H-76---------------------------------
INT 76 - IRQ14 - HARD DISK CONTROLLER OPERATION COMPLETE (AT and later)
Notes: may be masked by setting bit 6 on I/O port A1h
on the PS/2, this interrupt is designed to be shared with other
devices that produce an operation-complete interrupt, though
the only current user is the hard disk
SeeAlso: INT 0E"IRQ6",INT 15/AH=91h,INT 5E
--------H-77---------------------------------
INT 77 - IRQ15 - RESERVED (AT,PS)
Note: may be masked by setting bit 7 on I/O port A1h
SeeAlso: INT 5F
--------H-77---------------------------------
INT 77 - IRQ15 - POWER CONSERVATION (Compaq SLT/286)
Note: may be masked by setting bit 7 on I/O port A1h
SeeAlso: INT 15/AX=4600h,INT 5F
--------E-78---------------------------------
INT 78 - UofSalford DBOS DOS extender - API
AH = function
00h (PB) display 32-bit memory specified by command argument
01h (PT) display 32-bit instruction(s) specified by command arg
02h specify offset to subsequent PB and PT commands
03h switch to protected mode
DWORD following INT instruction point to map; protected-mode
entry point is immediately following the DWORD
Return: never
Note: if bit 31 of the map address is set, only a stub was
loaded by DOS and DBOS will load the entire program
04h specify that subsequent load (AH=03h) should leave program in
memory
05h release program from memory
06h set break point at address and option count from commandline
07h resume program execution
08h single-step program
09h set read/write breakpoint using 386 debug registers
0Ah set write breakpoint using 386 debug register
0Bh set memory byte to new value
0Ch display CPU registers
0Dh run until specified program address reached
0Fh print trace from program map
10h specify an offset using a map symbol
14h print memory without any offset
18h switch DBOS into/out of test mode (ON/OFF commandline args)
1Dh get address of real/protected-mode communication buffer
Return: ES:BP -> comm buffer
1Eh set real-mode memory size (specify how much real-mode memory
to leave free when running FTN77 programs)
22h uninstall DBOS
24h force DBOS to emulate coprocessor instructions
26h set named DBOS switches from commandline
27h reset named DBOS switched from commandline
2Ah set list of dynamic link libraries to contents of commandline
file
35h specify that subsequent load (AH=03h) should stop at first
instruction
Return: ???
Notes: DBOS supports functions 00h through 50h; many of these functions
provide a low-level debugging interface
command arguments are read from the calling program's PSP
SeeAlso: INT 79"DBOS"
Index: uninstall;DBOS DOS extender
--------E-78---------------------------------
INT 78 - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ0
Program: GO32.EXE is a DOS extender included as part of the 80386 port of the
GNU C/C++ compiler by DJ Delorie and distributed as DJGPP
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 08,INT 10/AH=FFh"GO32",INT 79"GO32"
--------A-78---------------------------------
INT 78 R - AutoCAD Device Interface - PLOTTER - SEND COMMAND
AX = function
0001h begin plot
BX = file level
0000h ASCII file
0001h binary file
0002h AutoCAD DXB file
0003h installed ADI driver
0002h end plot (close plotter)
0003h move (pen up)
BX = new X position
CX = new Y position
0004h move (pen down)
BX = new X position
CX = new Y position
0005h select pen
BX = pen number
0006h select drawing speed
BX = drawing speed N
0007h select line style
BX = line style N
0008h raise pen
0009h abort plot
Return: AX = 0000h (may be used for driver status in future releases)
SeeAlso: INT 79"AutoCAD",INT 7A/AX=0001h"AutoCAD",INT 7B/AX=8001h"AutoCAD"
--------d-78---------------------------------
INT 78 - ADP-60 IDE controller - ORIGINAL INT 13
SeeAlso: INT 79"ADP-60"
--------d-7800-------------------------------
INT 78 - TARGA.DEV - CMC International SCSI device driver - SET I/O PORT
AH = 00h
DX = interface board I/O port
Return: CF set on error
AL = error code (see #2206)
Note: if this routine is not called, the port is the driver's default
(usually 0280h or 0300h)
an installation check is performed by TARGA.DEV upon initialization
by checking for the string "SCSI" at offset 03h into the interrupt
handler
SeeAlso: AH=01h,AH=02h
Index: installation check;TARGA.DEV
(Table 2206)
Values for TARGA.DEV error code:
00h illegal command given to SCSI code
01h invalid I/O port specified (must be from 100H to 3F8H, and must be on
an 8-port boundary)
02h invalid DMA channel specified (must be from 1 to 3)
03h invalid SCSI board number specified (must be from 0 to 7)
04h error from data register test during self-test
05h SCSI input signals not all 0 when SCSI RST activated
06h SCSI input signals not all 0 before selecting a SCSI device
07h BSY signal is active; SCSI bus is busy
08h SCSI board not selected, BSY signal did not come on in response to
raising SEL
09h time-out waiting for status state, signifying end of DMA transfer
----------7800-------------------------------
INT 78 - HugeRealMode Driver - API
AH = 00h
AL = function
00h installation check
Return: AX = DBCA if installed
01h get entry point
Return: ES:BX -> far call entry point
Program: the HugeRealMode driver was published in the German DOS Extra Nr. 20
(1992), and makes a 4G flat address space (for both data and code)
available to real-mode DOS programs
--------d-7801-------------------------------
INT 78 - TARGA.DEV - GET I/O PORT
AH = 01h
Return: DX = current interface board I/O port
SeeAlso: AH=00h,AH=03h"TARGA"
--------d-7802-------------------------------
INT 78 - TARGA.DEV - SET DMA CHANNEL
AH = 02h
AL = interface board DMA channel
Return: CF set on error
AL = error code (see #2206)
Note: if this routine is not called, the DMA channel is the driver's default
(usually 3)
SeeAlso: AH=00h,AH=03h"TARGA"
--------d-7803-------------------------------
INT 78 - TARGA.DEV - GET DMA CHANNEL
AH = 03h
Return: AL = current interface board DMA channel
SeeAlso: AH=01h,AH=02h
--------d-7804-------------------------------
INT 78 - TARGA.DEV - SET SCSI DEVICE NUMBER
AH = 04h
AL = SCSI device number
Return: CF set on error
AL = error code (see #2206)
Note: if this routine is not called, the device number used is the driver's
default (usually 0)
SeeAlso: AH=02h,AH=05h
--------d-7805-------------------------------
INT 78 - TARGA.DEV - GET SCSI DEVICE NUMBER
AH = 05h
Return: AL = current SCSI device number
SeeAlso: AH=03h"TARGA",AH=04h
--------d-7806-------------------------------
INT 78 - TARGA.DEV - SET/CLEAR EARLY RETURN MODE
AH = 06h
AL = new state
00h clear early return mode
01h set early return mode
Note: if early return mode is set then SCSI will return with no errors
when the last DMA transfer is started in a call with AH=13h or AH=14h
if this routine is not called, early return mode is cleared
SeeAlso: AH=13h,AH=14h,AH=15h
--------d-7808-------------------------------
INT 78 - TARGA.DEV - INTERFACE BOARD SELF-TEST
AH = 08h
Return: CF set on error
AL = error code (see #2206)
Note: the SCSI bus is also reset
SeeAlso: AH=09h
--------d-7809-------------------------------
INT 78 - TARGA.DEV - RESET SCSI BUS
AH = 09h
Return: AL = error code if carry set (see #2206)
SeeAlso: AH=08h
--------d-7810-------------------------------
INT 78 - TARGA.DEV - SEND SCSI COMMAND
AH = 10h
DS:SI -> command bytes
Return: AH = SCSI status byte
CF clear if successful
AL = SCSI message byte
CF set on error
AL = error code (see #2206)
SeeAlso: AH=11h,INT 21/AX=4403h"ST-01"
Format of SCSI Command:
Offset Size Description (Table 2207)
00h BYTE length of command
01h ??? command bytes
--------d-7811-------------------------------
INT 78 - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (PROGRAMMED I/O)
AH = 11h
DS:SI -> command bytes
ES:BX -> data storage area
CX = number of data bytes to transfer
Return: AH = SCSI status byte
CF clear if successful
AL = SCSI message byte
CF set on error
AL = error code (see #2206)
Note: this command receives data internally one byte at a time
SeeAlso: AH=10h,AH=13h
Format of TARGA.DEV SCSI Command:
Offset Size Description (Table 2208)
00h BYTE length of command
01h ??? command bytes
--------d-7812-------------------------------
INT 78 - TARGA.DEV - SEND SCSI COMMAND AND DATA (PROGRAMMED I/O)
AH = 12h
DS:SI -> command bytes
ES:BX -> data storage area
CX = number of data bytes to transfer
Return: AH = SCSI status byte
CF clear if successful
AL = SCSI message byte
CF set on error
AL = error code (see #2206)
Note: this command sends data internally one byte at a time
SeeAlso: AH=14h
Format of TARGA.DEV SCSI Command:
Offset Size Description (Table 2209)
00h BYTE length of command
01h ??? command bytes
--------d-7813-------------------------------
INT 78 - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (DMA)
AH = 13h
DS:SI -> command bytes
ES:BX -> data storage area
DX:CX = number of data bytes to transfer
Return: AH = SCSI status byte (if early return mode is clear)
CF clear if successful
AL = SCSI message byte (if early return mode is clear)
CF set on error
AL = error code (see #2206)
Note: this command receives data using DMA
SeeAlso: AH=11h,AH=12h
Format of TARGA.DEV SCSI Command:
Offset Size Description (Table 2210)
00h BYTE length of command
01h ??? command bytes
--------d-7814-------------------------------
INT 78 - TARGA.DEV - SEND SCSI COMMAND AND DATA (DMA)
AH = 14h
DS:SI -> command bytes
ES:BX -> data storage area
DX:CX = number of data bytes to transfer
Return: AH = SCSI status byte (if early return mode is clear)
CF clear if successful
AL = SCSI message byte (if early return mode is clear)
CF set on error
AL = error code (see #2206)
Note: this command sends data using DMA
SeeAlso: AH=12h,AH=13h
Format of TARGA.DEV SCSI Command:
Offset Size Description (Table 2211)
00h BYTE length of command
01h ??? command bytes
--------d-7815-------------------------------
INT 78 - TARGA.DEV - FINISH DATA TRANSFER (DMA)
AH = 15h
Return: AH = SCSI status byte
CF clear if successful
AL = SCSI message byte
CF set on error
AL = error code (see #2206)
Note: if AH=06h was previously called to set the early return mode, this
function finishes a command AH=13h or AH=14h which returned before
the last DMA transfer was finished
SeeAlso: AH=06h,AH=13h,AH=14h
--------V-79---------------------------------
INT 79 - AVATAR.SYS - FAST GET KEYSTROKE
Return: CF set if no keystroke available
AX = FFFFh
CF clear if key pressed
AX = keystroke
Program: AVATAR.SYS is a CON driver by George Adam Stanislav which interprets
AVATAR command codes just as ANSI.SYS interprets ANSI commands
Note: if a keystroke is available, it is removed from the keyboard buffer
before being returned
SeeAlso: INT 29,INT 2F/AX=1A00h/BX=4156h
--------E-79---------------------------------
INT 79 - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ1
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 09,INT 78"GO32",INT 7A"GO32"
--------d-79---------------------------------
INT 79 U - ADP-60 IDE adapter - ???
SeeAlso: INT 78"ADP-60"
--------E-79---------------------------------
INT 79 - DBOS DOS Extender
details not available
Desc: this interrupt is used by an MS Windows virtual device driver with
which the DBOS extender communicates when run inside a Windows
Enhanced Mode DOS box
SeeAlso: INT 78"DBOS"
--------A-790001-----------------------------
INT 79 R - AutoCAD Device Interface - DIGITIZER - INITIALIZE
AX = 0001h
BX = interface level (0001h)
Return: AX = status (0000h initialization failed, 0001h init successful)
BX = digitizer type
0000h relative pointing device (mouse, etc.)
0001h digitizing tablet
CX = digitizer dataflow type
0000h continuous
0001h pauses between packets
SeeAlso: AX=0002h,AX=0003h,INT 7A/AX=0001h"AutoCAD"
--------A-790002-----------------------------
INT 79 R - AutoCAD Device Interface - DIGITIZER - TERMINATE
AX = 0002h
SeeAlso: AX=0001h,AX=0003h
--------A-790003-----------------------------
INT 79 R - AutoCAD Device Interface - DIGITIZER - GET DIGITIZER STATUS
AX = 0003h
Return: AX = status
0000h nothing
0002h tracking point (no button pressed)
BX = X coordinate
CX = Y coordinate
0003h picked point (button 0,A,B,C,D pressed)
BX = X coordinate
CX = Y coordinate
0004h button pick
BX = button number
0005h button and coordinates
BX = button number
CX = X coordinate
DX = Y coordinate
SeeAlso: AX=0001h,AX=0002h
--------N-7A---------------------------------
INT 7A U - Topware Network Operating System - ???
AL = ???
???
Return: ???
SeeAlso: INT 21/AX=FF00h"Topware",INT 2F/AX=FF00h
--------N-7A---------------------------------
INT 7A - X.PC Packet software interface
ES:BX -> parameter block
SeeAlso: INT 60/AX=01FFh
--------E-7A---------------------------------
INT 7A - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ2
Program: GO32.EXE is a DOS extender included as part of the 80386 port of the
GNU C/C++ compiler by DJ Delorie and distributed as DJGPP
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 0A,INT 79"GO32",INT 7B"GO32"
--------P-7A---------------------------------
INT 7A O - PRINDIR - API (moved to INT 7C)
SeeAlso: INT 7C"PRINDIR"
--------N-7A---------------------------------
INT 7A - Novell NetWare - LOW-LEVEL API - Notes
Note: this interrupt is used for IPX/SPX access in NetWare versions through
2.0a; in later versions, you should use INT 2F/AX=7A00h to get an
entry point even though INT 7A still exists. For both INT 7A and
the FAR entry point, BX contains the function number; IPX is
sometimes called internally with BX bit 15 set, which causes the
handler to bypass some initial checks and an optional call to the
IPX Windows support handler set with INT 2F/AX=7AFFh/BX=0000h
(see #1514)
SeeAlso: INT 2F/AX=7A00h,INT 64"Novell",INT 7A/BX=0000h
--------N-7A----BX0000-----------------------
INT 7A - Novell NetWare - IPX Driver - OPEN SOCKET
BX = 0000h
AL = socket longevity
00h open until close or terminate
FFh open until close
DX = socket number (high byte in DL)
0000h dynamic allocation
else socket to open (see #2212)
Return: AL = return code
00h success
DX = socket number
FEh socket table full
FFh socket already open
Notes: TSRs which need to use sockets should set AL to FFh, non-resident
programs should normally use AL=00h
IPX can be configured to support up to 150 open sockets on a
workstation, and defaults to 20
this function is supported by Advanced NetWare 1.02+
SeeAlso: INT 7A/BX=0001h,INT 7A/BX=0004h,INT 7A/BX=0023h
(Table 2212)
Values for IPX socket number:
0451h File Service (NetWare Core Protocol)
0452h Service Advertising Protocol
0453h Routing Information Packet
0455h NetBIOS Packet
0456h diagnostics
0457h server serial numbers (labeled "Copy Protection" by Lanalyzer)
4000h-7FFFh used for dynamic allocation
4444h Brightwork Development's SiteLock server
5555h Brightwork Development's SiteLock client (workstation)
8000h-FFFFh assigned by Novell
Note: SiteLock is an application metering product using IPX to communicate
between the application and the license server
--------N-7A----BX0001-----------------------
INT 7A - Novell NetWare - IPX Driver - CLOSE SOCKET
BX = 0001h
DX = socket number (high byte in DL)
Notes: also cancels events set by any Event Control Blocks for the socket
the program must close all open sockets before terminating
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0000h
--------N-7A----BX0002-----------------------
INT 7A - Novell NetWare - IPX Driver - GET LOCAL TARGET
BX = 0002h
ES:SI -> target internetwork address (see INT 7A/BX=000Bh)
ES:DI -> 6-byte buffer for local target
Return: AL = return code
00h success
CX = expected one-way transfer time (clock ticks) for a 576-byte
packet
ES:DI -> local target
FAh unsuccessful (no path to destination)
Notes: the internetwork address consists of a 4-byte network address followed
by a 6-byte node address. The local target is only a 6-byte node
address. If the target is in the same network, the local target is
just the node address of target; otherwise, the local target is the
node address of the bridge that leads to the target.
this function may be called from inside IPX and AES Event Service
Routines, but not from other interrupt handlers
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0009h
--------N-7A----BX0003-----------------------
INT 7A - Novell NetWare - IPX Driver - SEND PACKET
BX = 0003h
ES:SI -> Event Control Block (see #2213,#2214)
Notes: returns immediately; IPX attempts to send the packet in the background
this function is supported by Advanced NetWare 1.02+
this function is nearly identical to BX=000Fh, except that it always
copies the source address into the IPX header assumed to be at the
beginning of the first fragment
SeeAlso: BX=0004h,BX=000Fh,INT 21/AH=EEh"Novell"
Format of IPX Event Control Block:
Offset Size Description (Table 2213)
00h DWORD Link
04h DWORD -> Event Service Routine (00000000h if none)
08h BYTE in use flag (see #2215)
09h BYTE completion code (see #2216)
0Ah WORD (big-endian) socket number (see INT 7A/BX=0000h)
0Ch 4 BYTEs IPX workspace
10h 12 BYTEs driver workspace
1Ch 6 BYTEs immediate local node address
22h WORD fragment count
24h var fragment descriptors
Offset Size Description
00h DWORD -> fragment data
04h WORD size of fragment in bytes.
Notes: ESR is a far procedure that is called when the ECB has been handled.
On call, the in use flag is zero if the ECB has been handled,
non-zero otherwise. If the flag is zero, the completion code holds
the result of the event.
the first fragment should start with an IPX header
all fragments are concatenated and sent in one piece
node address FFh FFh FFh FFh FFh FFh broadcasts to all nodes
Format of AES-ECB:
Offset Size Description (Table 2214)
00h DWORD Link
04h DWORD ESR address
08h BYTE in use flag (see #2215)
09h 5 BYTEs AES workspace
(Table 2215)
Values for ECB in use flag:
00h available
E0h AES temporary
F6h \ special IPX/SPX processing for v3.02+
F7h /
F8h IPX in critical section
F9h SPX listening
FAh processing
FBh holding
FCh AES waiting
FDh AES couting down delay time
FEh awaiting packet reception
FFh sending packet
(Table 2216)
Values for ECB completion code:
00h success
ECh remote terminated connection without acknowledging packet
EDh abnormal connection termination
EEh invalid connection ID
EFh SPX connection table full
F9h event should not be cancelled
FAh cannot establish connection with specified destination
FCh cancelled
FDh malformed packet
FEh packet undeliverable
FFh physical error
(Table 2217)
Values event Service Routine is called with:
AL = caller's identity (00h = AES, FFh = IPX)
ES:SI -> event control block
interrupts disabled
Format of IPX header:
Offset Size Description (Table 2218)
00h WORD (big-endian) checksum
02h WORD (big-endian) length in bytes of total packet
04h BYTE transport control
05h BYTE packet type (see #2219)
06h 10 BYTEs destination internetwork address
10h WORD (big-endian) destination socket
12h 10 BYTEs source internetwork address
1Ch WORD (big-endian) source socket
(Table 2219)
Values for IPX packet type:
00h unknown packet type
01h routing information packet
02h echo packet
03h error packet
04h packet exchange packet (always use this one)
05h SPX packet
11h NetWare Core Protocol
14h Propagated Packet (for NetWare), NetBIOS name packet
15h-1Eh experimental protocols
Note: undocumented packet type 14h will cross up to 16 networks deep in
all directions; as Aaron Martin of Origin Systems discovered, the
first 64 bytes of the IPX data in such packets should be considered
reserved, as IPX places the traversed server nodes there.
Format of Service Advertising Protocol Service Query Packet:
Offset Size Description (Table 2220)
00h 30 BYTEs IPX header
1Eh WORD (big-endian) query type
0001h general find service
0003h find nearest server
20h WORD (big-endian) server type (see INT 21/AH=E3h"NetWare")
Format of Service Advertising Protocol Server Identification Packet:
Offset Size Description (Table 2221)
00h 30 BYTEs IPX header
1Eh WORD (big-endian) response type
0002h general service
0004h nearest service
20h 64N BYTEs server entries (1-7) (see #2222)
Format of SAP server entry:
Offset Size Description (Table 2222)
00h WORD (big-endian) server type (see INT 21/AH=E3h"NetWare")
02h 48 BYTEs ASCIZ server name
32h 2 WORDs (big-endian) network number
34h 3 WORDs (big-endian) node number
3Ch WORD (big-endian) socket number
3Eh WORD (big-endian) number of hops between caller and server
Format of IPX Routing Information packet:
Offset Size Description (Table 2223)
00h 30 BYTEs IPX header
1Eh WORD operation (0001h request, 0002h response)
20h 8N BYTEs network entries (1-50) (see #2224)
Format of RIP network entry:
Offset Size Description (Table 2224)
00h DWORD network number (FFFFFFFFh = general request)
04h WORD (response) number of hops
06h WORD (response) number of clock ticks to reach destination
--------N-7A----BX0004-----------------------
INT 7A - Novell NetWare - IPX Driver - LISTEN FOR PACKET
BX = 0004h
ES:SI -> Event Control Block (see BX=0003h)
Return: AL = status
00h successful
FFh no listening socket for packet
Desc: this function provides IPX with an ECB for receiving an IPX packet, but
does not wait for a packet to arrive
Notes: the application must open a socket and initialize the ECB's ESR
address, socket number, fragment count, and fragment descriptor
fields before invoking this function
there is no limit on the number of ECBs which may simultaneously be
listening on a socket
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0000h,BX=0003h
--------N-7A----BX0005-----------------------
INT 7A - Novell NetWare - IPX Driver - SCHEDULE IPX EVENT
BX = 0005h
AX = delay time in clock ticks
ES:SI -> Event Control Block (see BX=0003h)
Note: this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0006h,BX=0007h,BX=0008h
--------N-7A----BX0006-----------------------
INT 7A - Novell NetWare - IPX Driver - CANCEL EVENT
BX = 0006h
ES:SI -> Event Control Block (see BX=0003h)
Return: AL = return code (see #2225)
Notes: cannot cancel packets which the node's driver has already sent
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0005h
(Table 2225)
Values for IPX return code:
00h success
F9h event in use
FCh event cancelled
FFh unsuccessful, event not in use, or unrecognized ECB flag
--------N-7A----BX0007-----------------------
INT 7A - Novell NetWare - IPX Driver - SCHEDULE SPECIAL EVENT
BX = 0007h
AX = delay time
ES:SI -> Event Control Block (see BX=0003h)
Note: this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0006h
--------N-7A----BX0008-----------------------
INT 7A - Novell NetWare - IPX Driver - GET INTERVAL MARKER
BX = 0008h
Return: AX = interval marker in clock ticks
Notes: may be used to measure the time elapsed between two events, up to one
hour
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0005h
--------N-7A----BX0009-----------------------
INT 7A - Novell NetWare - IPX Driver - GET INTERNETWORK ADDRESS
BX = 0009h
ES:SI -> buffer for own internetwork address (see #2226)
Return: ES:SI buffer filled
SI destroyed
Note: this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0002h,BX=000Bh
Format of IPX internetwork address:
Offset Size Description (Table 2226)
00h 4 BYTEs (big-endian) network number
04h 6 BYTEs (big-endian) node number within network
--------N-7A----BX000A-----------------------
INT 7A - Novell NetWare - IPX Driver - RELINQUISH CONTROL
BX = 000Ah
Desc: this call indicates that the application is idle and permits the IPX
driver to do some work
Note: this function is supported by Advanced NetWare 1.02+
SeeAlso: INT 15/AX=1000h,INT 21/AH=89h,INT 2F/AX=1680h
--------N-7A----BX000B-----------------------
INT 7A - Novell NetWare - IPX Driver - DISCONNECT FROM TARGET
BX = 000Bh
ES:SI -> internetwork address (see #2227)
Notes: this function permits the network software on the remote machine to
remove any virtual connection with the calling machine
only use in point-to-point networks
should never be called from within an Event Service Routine
this function is supported by Advanced NetWare 1.02+
SeeAlso: BX=0002h,BX=0009h
Format of IPX internetwork address:
Offset Size Description (Table 2227)
00h 4 BYTEs (big-endian) destination network
04h 6 BYTEs (big-endian) destination node
0Ah 2 BYTEs (big-endian) destination socket
--------N-7A----BX000C-----------------------
INT 7A U - Novell NetWare - IPX Driver - internal - INITIALIZE NETWORK ADDRESS
BX = 000Ch
CX:DX = global network address (see INT 7A/BX=0002h)
ES:DI -> "OSINCRITICALSECTION" flag
DS:SI -> current mode for socket
Note: the address cannot be changed once it has been initialized
SeeAlso: INT 7A/BX=0024h
--------N-7A----BX000D-----------------------
INT 7A U - Novell NetWare - IPX Driver - internal - IPX GET PACKET SIZE
BX = 000Dh
Return: AX = maximum packet size
CX = retry count
SeeAlso: BX=001Ah
--------N-7A----BX000E-----------------------
INT 7A U - Novell NetWare - IPX Driver - internal - TERMINATE SOCKETS
BX = 000Eh
Return: nothing
Notes: this function terminates all sockets opened with the current mode; this
may be intended for future enhancements as the socket mode never
changes in v2.15
called by the NetWare shell if a program terminates
--------N-7A----BX000F-----------------------
INT 7A - Novell NetWare - IPX Driver - INTERNAL - SEND PACKET
BX = 000Fh
ES:SI -> Event Control Block (see BX=0003h)
Note: nearly identical to function 0003h, but does not copy address into
the first fragment, and bypasses normal error checking
SeeAlso: BX=0003h
--------N-7A----BX0010-----------------------
INT 7A - Novell NetWare - SPX Driver - INSTALLATION CHECK
BX = 0010h
AL = 00h
Return: AL = FFh if SPX loaded
BH = SPX major version
BL = SPX minor version
CX = maximum SPX connections
DX = SPX connections available
Notes: this function is supported by Advanced NetWare 2.1+
this interrupt is used for IPX/SPX access in NetWare versions through
2.0a; in later versions, you should use INT 2F/AX=7A00h to get an
entry point even though INT 7A still exists. For both INT 7A and
the FAR entry point, BX contains the function number
IPX is sometimes called internally with BX bit 15 set, which causes the
entry point handler to bypass some checks and an optional call to
the IPX Windows support handler set with INT 2F/AX=7AFFh/BX=0000h
(see #1514)
SeeAlso: BX=0015h
--------N-7A----BX0011-----------------------
INT 7A - Novell NetWare - SPX Driver - ESTABLISH SPX CONNECTION
BX = 0011h
AL = retry count
AH = watchdog flag
ES:SI -> Event Control Block (see BX=0003h)
Return: AL = status (see #2228)
DX = assigned connection ID number
Desc: attempt to establish a connection with a listening socket
Notes: there should always be at least two SPX ECB's listening to a socket, so
that NetWare can perform its internal packet exchanges
the first fragment should start with a SPX header. Fill in all
destination addresses.
this function is supported by Advanced NetWare 2.1+
SeeAlso: BX=0000h,BX=0012h,BX=0013h,BX=0014h,BX=0015h
(Table 2228)
Values for SPX function status:
00h attempting to contact destination socket
EFh local connection table full
FDh buffer size not 42 or fragment count not 1
FFh sending socket not open
Format of SPX header:
Offset Size Description (Table 2229)
00h WORD (big-endian) checksum
02h WORD (big-endian) length in bytes of total packet
04h BYTE transport control
05h BYTE packet type (see INT 7A/BX=0003h)
06h 10 BYTEs destination internet address
10h WORD (big-endian) destination socket
12h 10 BYTEs source internet address
1Ch WORD (big-endian) source socket
1Eh BYTE connection control (see #2230)
1Fh BYTE datastream type
FEh terminate connection request packet
FFh terminate connection acknowledgement packet
other user-defined, ignored by SPX
20h WORD (big-endian) source connection ID
22h WORD (big-endian) destination connection ID
24h WORD (big-endian) sequence number
26h WORD (big-endian) acknowledge number
28h WORD (big-endian) allocation number
Bitfields for SPX connection control:
Bit(s) Description (Table 2230)
3-0 unused???
4 end of message
5 reserved
6 acknowledgement required
7 system packet
--------N-7A----BX0012-----------------------
INT 7A - Novell NetWare - SPX Driver - LISTEN FOR SPX CONNECTION
BX = 0012h
AH = watchdog flag (00h disabled, 01h enabled)
AL = retry count (00h = default)
ES:SI -> Event Control Block (see BX=0003h)
Notes: there should always be at least two SPX ECB's listening to a socket, so
that NetWare can perform its internal packet exchanges
this function is supported by Advanced NetWare 2.1+
SeeAlso: BX=0011h,BX=0013h,BX=0014h
--------N-7A----BX0013-----------------------
INT 7A - Novell NetWare - SPX Driver - TERMINATE SPX CONNECTION
BX = 0013h
DX = connection ID to terminate
ES:SI -> Event Control Block (see BX=0003h)
Note: this function is supported by Advanced NetWare 2.1+
SeeAlso: BX=0011h,BX=0012h,BX=0014h
--------N-7A----BX0014-----------------------
INT 7A - Novell NetWare - SPX Driver - ABORT SPX CONNECTION
BX = 0014h
DX = connection ID to terminate
Notes: this function is supported by Advanced NetWare 2.1+
this function does not tell the other side that the connection has been
terminated
also aborts any outstanding Establish Connection, Terminate Connection,
and Send Sequenced Packet commands
SeeAlso: BX=0011h,BX=0013h
--------N-7A----BX0015-----------------------
INT 7A - Novell NetWare - SPX Driver - GET SPX CONNECTION STATUS
BX = 0015h
DX = connection ID
ES:SI -> status buffer (see #2231)
Return: AL = return code
00h connection still valid
ES:SI -> status buffer filled
EEh no such connection
Note: this function is supported by Advanced NetWare 2.1+
SeeAlso: BX=0010h,BX=0011h
Format of SPX status buffer:
Offset Size Description (Table 2231)
00h BYTE connection state
01h waiting to establish connection
02h starting (attempting to create connection)
03h connection established
04h terminating
01h BYTE watchdog flag
bit 0: used internally by SPX
bit 1: SPX watchdog is monitoring connection
bits 2-7 used internally by SPX
02h WORD (big-endian) source connection ID
04h WORD (big-endian) destination connection ID
06h WORD (big-endian) sequence number of next packet sent
08h WORD (big-endian) acknowledge number, expected sequence number of
next received packet
0Ah WORD (big-endian) maximum sequence number remote SPX may send
without ACK from local SPX
0Ch WORD (big-endian) remote acknowledge number, next sequence number
remote SPX expects to receive
0Eh WORD (big-endian) remote allocation number, maximum sequence number
local SPX may send
10h WORD (big-endian) connection socket
12h 6 BYTEs immediate node address--bridge on local network to destination
18h 10 BYTEs destination internetwork address (see INT 7A/BX=000Bh)
22h WORD (big-endian) retransmit count
24h WORD (big-endian) estimated roundtrip delay
26h WORD (big-endian) retransmitted packets
28h WORD (big-endian) suppressed packets
2Ah 12 BYTEs ??? (v2.15)
--------N-7A----BX0016-----------------------
INT 7A - Novell NetWare - SPX Driver - SEND SPX PACKET
BX = 0016h
DX = connection ID
ES:SI -> Event Control Block (see BX=0003h)
Notes: this function is supported by Advanced NetWare 2.1+
CX may need to be 0001h ???
SeeAlso: BX=0011h,BX=0017h
--------N-7A----BX0017-----------------------
INT 7A - Novell NetWare - SPX Driver - LISTEN FOR SPX PACKET
BX = 0017h
DX = connection ID (unused in v2.15)
ES:SI -> Event Control Block (see BX=0003h)
Notes: this function is supported by Advanced NetWare 2.1+
CX may need to be 0001h ???
SeeAlso: BX=0011h,BX=0016h
--------N-7A----BX0018-----------------------
INT 7A U - Novell NetWare - IPX Driver - internal - ADD DIAGNOSTIC ELEMENT
BX = 0018h
ES:SI -> diagnostic element (see #2232) to be added to Diagnostic Queue
Note: this function is supported on file servers only under v2.15; v3.02 also
supports it on workstations
SeeAlso: BX=0019h
Format of IPX diagnostic element:
Offset Size Description (Table 2232)
00h DWORD pointer to next diagnostic element
04h DWORD pointer to function for ???
08h DWORD pointer to function for ???
--------N-7A----BX0019-----------------------
INT 7A U - Novell NetWare - IPX Driver - internal - CANCEL DIAGNOSTIC ELEMENT
BX = 0019h
ES:SI -> diagnostic element (see BX=0018h) to be removed
Note: this function is supported on file servers only under v2.15; v3.02 also
supports it on workstations
SeeAlso: BX=0018h
--------N-7A----BX001A-----------------------
INT 7A - Novell NetWare - IPX Driver - internal - GET DRIVER PACKT SIZE LIMIT
BX = 001Ah
Return: AX = packet size with preamble
CX = IPX retry count
Note: this function is has existed since November 1989; it is documented in
Novell document FYI.A.3709, 03May91
SeeAlso: BX=000Dh
--------N-7A----BX001B-----------------------
INT 7A U - Novell NetWare - IPX Driver - INTERNAL
BX = 001Bh
???
Return: ???
Notes: this function is supported on file servers only under v2.15; v3.02 also
supports it on workstations
used by NetWare Access Server
--------N-7A----BX001C-----------------------
INT 7A U - Novell NetWare - NetWare Access Server - ???
BX = 001Ch to 001Eh
???
Return: ???
BX corrupted
Notes: these functions are NOPs for standard IPX drivers such as IPXODI v2.12
SeeAlso: INT 2F/AX=7AF1h
--------N-7A----BX001F-----------------------
INT 7A - Novell NetWare - IPXODI v2.12+ - GET IPX FLAGS
BX = 001Fh
DX = 0000h
Return: AX = ???
BX:CX -> ??? entry point (see #2233)
DX = flags
bit 0: IPXODI rather than dedicated IPX
bit 1: checksumming functions 0020h-0022h supported
ES:SI -> array of words containing used socket number (undocumented);
0000h ends array
Note: IPXODI v2.12 is distributed as part of the Personal NetWare system
bundled with Novell DOS 7
SeeAlso: BX=0020h,INT 2F/AX=7A2Fh
(Table 2233)
Call IPXODI entry point with:
ES:SI -> ??? data (offset 24h is far pointer to ??? data)
--------N-7A----BX0020-----------------------
INT 7A - Novell NetWare - IPXODI v2.12+ - SEND WITH CHECKSUM
BX = 0020h
ES:SI -> ECB data (see #2234)
Return: DS preserved
BX,BP corrupted
SeeAlso: BX=001Fh,BX=0021h,BX=0022h,INT 2F/AX=7A2Fh
Format of ECB data:
Offset Size Description (Table 2234)
00h 8 BYTEs ???
08h BYTE (return) ???
09h BYTE (return) ???
0Ah WORD ???
0Ch 16 BYTEs ???
1Ch 3 WORDs ???
22h WORD number of records at offset 28h
24h DWORD -> ???
28h 6N BYTEs ??? records
--------N-7A----BX0021-----------------------
INT 7A - Novell NetWare - IPXODI v2.12+ - IPX GENERATE CHECKSUM
BX = 0021h
ES:SI -> ECB data (see #2234)
Return: ES,DS,SI preserved
BX,BP corrupted
Notes: the checksum and TransportControl fields of the IPX packet are updated
this function enables interrupts and is fully reentrant
SeeAlso: BX=001Fh,BX=0020h,BX=0022h,INT 2F/AX=7A2Fh
--------N-7A----BX0022-----------------------
INT 7A - Novell NetWare - IPXODI v2.12+ - IPX VERIFY CHECKSUM
BX = 0022h
ES:SI -> ECB data (see #2234)
Return: AX = status (0000h checksum matches)
DS,ES,SI preserved
BX,BP corrupted
Note: this function enables interrupts and is fully reentrant
SeeAlso: BX=001Fh,BX=0020h,BX=0021h,INT 2F/AX=7A2Fh
--------N-7A----BX0023-----------------------
INT 7A - Novell NetWare - IPXODI v2.12+ - OPEN LOOK-AHEAD SOCKET
BX = 0023h
AL = ???
DX = socket number
ES:SI -> Look Ahead handler (see #2235)
Return: AL = 00h if successful
BX corrupted
Notes: the socket will always be long-lived, and must thus be explicitly
closed with INT 7A/BX=0001h before the Look Ahead handler code is
removed from memory (i.e. the program terminates)
this function is only supported if INT 2F/AX=7A00h returns ES:BX
pointing at an IPX version greater than 3.30
SeeAlso: INT 7A/BX=0000h,INT 7A/BX=0001h
(Table 2235)
Call IPX Look-Ahead handler with:
AX = socket
DS:SI -> look-ahead structure (see #1583 at INT 2F/AX=C000h"LSL")
DF clear
interrupt disabled (must remain disabled)
Return: AX = packet use
0000h application want packet
ES:SI -> ODI ECB (see #1584 at INT 2F/AX=C000h"LSL")
8001h application does not want packet
ZF set if AX=0000h
DS,DI,BP,SS,SP preserved
--------N-7A----BX0024-----------------------
INT 7A U - Novell NetWare - IPXODI v2.20+ - SET INTERNETWORK ADDRESS
BX = 0024h
ES:SI -> buffer containing internetwork address (see #2227)
Return: BX,CX,SI,DI,ES destroyed
Note: this function differs from INT 7A/BX=000Ch in that it unconditionally
sets the address
SeeAlso: INT 7A/BX=000Ch
--------A-7A0001-----------------------------
INT 7A R - AutoCAD Device Interface - DISPLAY - INITIALIZE (INIT1)
AX = 0001h
BX = configuration
CX = interface level (0001h)
Return: AX = status
0000h initialization failed
0001h pre-v4.0 driver initialized successfully
0003h post-v3.1 driver initialized successfully (driver truncates
excessivly long packets)
BX = width of graphics area in pixels, or 0000h if using packet
communication
DX:CX -> packet-mode entry point (see #2236)
SeeAlso: AX=0001h,AX=0200h,AX=07D0h,INT 61/AX=0007h"OPTIMA",INT 78"AutoCAD"
SeeAlso: INT 79/AX=0001h,INT 7B/AX=8001h"AutoCAD",INT 7C"AutoShade"
(Table 2236)
Call packet-mode entry point with:
STACK: DWORD pointer to request packet (see #2237)
WORD length of packet
Format of request packet:
Offset Size Description (Table 2237)
00h WORD function number (00h-45h for Compaq VGADI41.EXE)
--------A-7A0200BX0000-----------------------
INT 7A R - AutoCAD Device Interface - RENDERING DEVICE - INITIALIZE (RDLINKUP)
AX = 0200h
BX = 0000h
CX = interface level (0001h)
Return: BX = 0000h (driver uses packet communication)
DX:CX -> packet-mode entry point (see #2236)
SeeAlso: AX=0001h"AutoCAD",INT 79/AX=0001h,INT 7B/AX=8001h"AutoCAD"
--------I-7A04-------------------------------
INT 7A - IBM 3270 Workstation Program API - CREATE A QUEUE
AH = 04h
???
Return: ???
SeeAlso: AH=06h
--------I-7A06-------------------------------
INT 7A - IBM 3270 Workstation Program API - DELETE A QUEUE
AH = 06h
???
Return: ???
SeeAlso: AH=04h
----------7A07D0-----------------------------
INT 7A R - AutoCAD Device Interface - Compaq VGADI41.EXE - GET ENTRY POINT
AX = 07D0h
Return: AX = ??? (0003h)
BX = 0000h
DX:CX -> ADI entry point (see AX=0001h)
SeeAlso: AX=0001h
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - SESSION SERVICES
AH = 09h
BX = 8020h (synchronous request)
CX = 0000h
DX = ID of session manager (SESSMGR)
AL = service (see #2238)
ES:DI -> control block
Return: ???
(Table 2238)
Values for service:
01h get session ID
02h get session info
04h dettach from session
05h attach to session
06h get list of windows available
07h get environment of window
08h get 'PIF' (program information file) info
0Ah get base window ID
0Bh get cursor info
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - KEYBOARD SERVICES
AH = 09h
BX = 8020h (synchronous request)
CX = 0000h
DX = ID of keyboard manager
AL = service number (see #2239)
ES:DI -> control block
Return: ???
(Table 2239)
Values for 3270 Workstation Program keyboard service:
01h connect to keyboard
02h disconnect from keyboard
03h read from keyboard
04h send keystroke to session
05h disable input
06h enable input
07h update status code
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - WINDOW SERVICES
AH = 09h
BX = 8020h (synchronous request)
CX = 00FFh
DX = ID of window service controller (WSCTRL)
AL = service number (see #2240)
ES:DI -> control block
Return: ???
(Table 2240)
Values for 3270 Workstation Program window service:
01h connect to WS control
02h disconnect from WS control
03h add a window
04h change window's position on screen
05h change window's size
06h change window's color
07h change window's position in the presentation space
08h hide/unhide toggle
09h enlarge/reduce toggle
0Ah change screen background color
0Bh get window's position on screen
0Ch get window's size
0Dh get window's color
0Eh get window's position in the presentation space
0Fh determine whether hidden
10h determine whether enlarged
11h get background color
12h get window names
13h delete all windows from profile
14h pick active window
15h redraw screen
16h redraw window
17h delete a window from profile
18h get active window
19h get active screen
1Ah get window data
1Bh change window data
1Ch select active screen
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - PRESENTATION SPACE SERVICES
AH = 09h
BX = 8020h
CX = 00FFh
DX = ID of PCPSM
AL = service
01h define presentation space
02h delete presentation space
03h display presentation space
04h position cursor in presentation space
05h change default presentation space
ES:DI -> control block
Return: ???
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - 3270 EMULATION
AH = 09h
BX = 8020h
CX = 00FFh
DX = ID of 3270EML
AL = service
01h connect
02h disconnect
ES:DI -> control block
Return: ???
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - OPERATOR INFORMATION AREA
AH = 09h
BX = 8020h
CX = 00FFh
DX = ID of OIAM
AL = service
01h read Operator Information Area
02h read OIA subset
ES:DI -> control block
Return: ???
Note: the OIA is the 25th line on the Host session
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - TRANSLATE DATA
AH = 09h
BX = 8020h
CX = 00FFh
DX = ID of XLATE
AL = service
01h translate from host characters to ASCII and vice versa
(determined by control block byte 11)
ES:DI -> control block
Return: ???
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - COPY SERVICE
AH = 09h
BX = 8020h
CX = 00FFh
DX = ID of copy service
AL = service
01h copy string from one presentation space to another
02h copy block from one presentation space to another
03h connect to PC session for copy
04h disconnect PC session from copy
ES:DI -> control block
Return: ???
--------I-7A09--BX8020-----------------------
INT 7A - IBM 3270 Workstation Program API - Multi-DOS
AH = 09h
BX = 8020h
CX = 00FFh
ES:DI -> control block
DX = ID of INDJQRY
get environment size
= ID of INDJASY
request DOS functions from workstation
= ID of MEMORY
AL = function
01h allocate memory
02h deallocate memory
03h modify allocated size
Return: ???
--------I-7A09-------------------------------
INT 7A - IBM 3270 Workstation Program API - HOST SERVICES
AH = 09h
BX = request type (4000h async, 8028h synchronous)
CX = 0000h
DX = ID of MFIC
AL = service (see #2241)
ES:DI -> control block
(Table 2241)
Values for 3270 Workstation Program host service:
01h connect to host
02h disconnect from host
03h read DFT structured data from host
04h write DFT structured data to host
05h create a host buffer
--------I-7A13-------------------------------
INT 7A - IBM 3270 Workstation Program API - GET DATA FROM A QUEUE
AH = 13h
???
Return: ???
----------7A7A-------------------------------
INT 7A - Canon IX-30F Image Scanner SI3.SYS - INTERFACE
AH = 7Ah
???
Return: AX = status
0000h success
000Eh undefined function code
Range: unknown, selected by device driver commandline arguments
--------I-7A81-------------------------------
INT 7A - IBM 3270 Workstation Program API - RESOLVE A GATE NAME
AH = 81h
ES:DI -> 8-char blank-padded gate name (see #2242)
Return: DX = gate ID
(Table 2242)
Values for 3270 Workstation Program gate name:
"SESSMGR "
"KEYBOARD"
"WSCTRL "
"MFIC "
"PCPSM "
"3270EML "
"COPY "
"XLATE "
"OIAM "
"MEMORY "
"INDJQRY "
"INDJASY "
--------I-7A83-------------------------------
INT 7A - IBM 3270 Workstation Program API - GET COMPLETION RESULTS
AH = 83h
???
Return: ???
--------I-7AFDCB-----------------------------
INT 7A - IBM Personal Communications/3270 - INSTALLATION CHECK
AX = FDCBh
Return: DX:AX -> PCS/3270 signature block if loaded (see #2243)
Format of Personal Communications/3270 signature block:
Offset Size Description (Table 2243)
04h WORD PCS/3270 signature (5741h)
06h WORD version (0501h = PCS/3270 v1.0)
--------I-7AFE01-----------------------------
INT 7A - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION
AX = FE01h
???
Return: ???
SeeAlso: AX=FE02h
--------I-7AFE02-----------------------------
INT 7A - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION
AX = FE02h
???
Return: ???
SeeAlso: AX=FE01h
--------I-7AFF01-----------------------------
INT 7A - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION
AX = FF01h
ES:DI -> API function handler routine
Return: CX = 1200h
SeeAlso: AX=FF02h,AX=FF03h
--------I-7AFF02-----------------------------
INT 7A - IBM PC3270 EMUL PROG v3 - INTERNAL API TERMINATION
AX = FF02h
Return: CX = 1200h
SeeAlso: AX=FF01h
--------I-7AFF03-----------------------------
INT 7A - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION
AX = FF03h
ES:DI -> send/receive function handler routine
Return: CX = 1200h
SeeAlso: AX=FF01h
--------I-7AFF04-----------------------------
INT 7A U - IBM PC3270 EMUL PROG v3 - INTERNAL ???
AX = FF04h
ES:DI -> ???
Return: CX = 1200h
--------f-7B---------------------------------
INT 7B - Btrieve API (single user)
DS:DX -> 38-byte parameter record (see #2244)
Return: return code field set
Note: Btrieve sets low byte of vector to 33h; this serves as the installation
check
SeeAlso: INT 2F/AX=AB01h,INT 7F/AX=0200h
Format of Btrieve parameter record:
Offset Size Description (Table 2244)
00h DWORD pointer to data buffer
04h WORD data buffer length
06h DWORD pointer to 90-byte record containing positioning info
(should be same for all calls for same file)
0Ah DWORD pointer to 38-byte FCB info buffer
(should be same for all calls for same file)
0Eh WORD function code (see #2245)
10h DWORD pointer to file name/key buffer
14h BYTE key length
15h BYTE key number
16h DWORD pointer to status code (see #2246)
1Ah WORD interface code (version specific)
6176h version 5.10
(Table 2245)
Values for function code:
00h open
01h close
02h insert
03h update
04h delete
05h get_equal
06h get_next
07h get_prev
08h get_greater
09h get_gr_eql
0Ah get_less
0Bh get_less_eq
0Ch get_first
0Dh get_last
0Eh create
0Fh stat
10h extend
11h set_dir: set directory information
12h get_dir: get directory information
13h begin_trans
14h end_trans
15h abort_trans
16h get_pos: get record position number
17h get_direct: get data by sending record position
18h step_next
19h stop
1Ah version
1Bh unlock
1Ch reset
1Dh set owner
1Eh clear owner
1Fh create supplemental index
20h drop supplemental index
21h step first
22h step last
23h step previous
24h get next extended: get multiple records using a filter
25h get previous extended: get multiple records using a filter
26h step next extended: get multiple records using a filter
27h step previous extended: get multiple records using a filter
28h insert extended: insert one or more records
31h ???
Notes: add 50 (32h) to any "get" operation to just return the key data
add 100 (64h) for a single-record wait lock (automatically released
on next get)
add 200 (C8h) for a single-record nowait lock (nowait lock returns
error 54h or 55h if record already locked)
add 300 (12Ch) for a multiple-record wait lock (not released until
unlock called)
add 400 (190h) for a multiple-record nowait lock (nowait lock returns
error 54h or 55h if record already locked)
(Table 2246)
Values for Btrieve status code:
00h successful
01h invalid operation
02h I/O error
03h file not open
04h key value not found
05h duplicate key value
06h invalid key number
07h different key number
08h invalid positioning
09h end of file
0Ah modifiable key value error
0Bh invalid file name
0Ch file not found
0Dh extended file error
0Eh pre-image open error
0Fh pre-image I/O error
10h expansion error
11h close error
12h disk full
13h unrecoverable error
14h record manager inactive
15h key buffer too short
16h data buffer length overrun
17h position block length
18h page size error
19h create I/O error
1Ah number of keys
1Bh invalid key position
1Ch invalid record length
1Dh invalid key length
1Eh not a Btrieve file
1Fh file already extended
20h extended I/O error
22h invalid extension name
23h directory error
24h transaction error
25h transaction is active
26h transaction control file I/O error
27h end/abort transaction error
28h transaction max files
29h operation not allowed
2Ah incomplete accelerated access
2Bh invalid record address
2Ch null key path
2Dh inconsistent key flags
2Eh access to file denied
2Fh maximum open files
30h invalid alternate sequence definition
31h key type error
32h owner already set
33h invalid owner
34h error writing cache
35h invalid interface
36h variable page error
37h autoincrement error
38h incomplete index
39h expanded memory error
3Ah compression buffer too short
3Bh file already exists
3Ch reject count reached
3Dh work space too small
3Eh incorrect descriptor
3Fh invalid extended insert
40h filter limit reached
41h incorrect field offset
4Ah automatic transaction abort
4Dh Btrieve engine busy or resource locked by another user
4Eh deadlock detected
50h conflict
51h lock error
52h lost position
53h read outside transaction
54h record in use
55h file in use
56h file table full
57h handle table full
58h incompatible open mode
5Ah redirected device table full
5Bh server error
5Ch transaction table full
5Dh incompatible lock type
5Eh permission error
5Fh session no longer valid
60h communications environment error
61h data message too small
62h internal transaction error
--------I-7B---------------------------------
INT 7B - Eicon Access API (3270/5250 gateways)
SeeAlso: INT 5C"NetBIOS"
--------E-7B---------------------------------
INT 7B - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ3
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 0B,INT 10/AH=FFh"GO32",INT 7A"GO32",INT 7C"GO32"
--------A-7B---------------------------------
INT 7B CR - AutoCAD Device Interface - PRINTER/PLOTTER - SEND PLOTTING DATA
AX = data length (0000h-7FFFh)
CX:BX -> data to be plotted
DX = vertical position of line on page
Return: nothing
Notes: This interrupt is called by AutoCAD to perform its output
A data length of 0000h indicates that a blank line is to be output
SeeAlso: AX=8001h,AX=8002h,INT 78"AutoCAD",INT 7A/AX=0001h"AutoCAD"
----------7B---------------------------------
INT 7B - Novell XQL - XQL PRIMITIVES MANAGER API
DS:DX -> parameter block (see #2247)
Return: parameter block updated
(Table 2247)
Values for Novell XQL function number:
00h log in
01h log out
02h "tNewFcn"
03h "tFreeFcn"
04h "tMoveFldFcn"
05h "tFieldFcn"
06h "tDescribeFcn"
07h "tFetchFcn"
08h "tComputeFcn"
09h "tOrderFcn"
0Ah "tRestrictFcn"
0Bh "tJoinFcn"
0Ch "tInsertFcn"
0Dh "tUpdateFcn"
0Eh "tUpdallFcn"
0Fh "tRemoveFcn"
10h "tRemallFcn"
11h "tResetFcn"
12h "tTransFcn"
13h "tStatFcn"
14h "tDDCreFcn"
15h "tStoreFcn"
16h "tRecallFcn"
17h "tStopFcn"
18h "tDDFileFcn"
19h "tDDFieldFcn"
1Ah "tDDIndexFcn"
1Bh "tDDModFcn"
1Ch "tDDViewFcn"
1Dh "tDDDrpFcn"
1Eh "tDDPathFcn"
1Fh "tDDAttrFcn"
20h "tDDFcn"
21h "tSecurFcn"
22h "tUserFcn"
23h "tAccessFcn"
24h "tPswdFcn"
25h "tCharFcn"
26h "tVersionFcn"
27h "tCnvFcn"
28h "tValFcn"
29h "tMaskFcn"
Format of XQL parameter block:
Offset Size Description (Table 2248)
00h 4 BYTEs signature "XQLP"
04h WORD function number (see #2247)
06h WORD handle
08h WORD status
0Ah WORD session ID
0Ch var data record (varies by function)
---function 00h---
0Ch DWORD -> user name
10h DWORD -> password
14h DWORD -> dictionary
18h DWORD -> filepath
1Ch DWORD -> machine name
20h WORD process ID
---function 01h---
no additional fields???
---function 02h---
0Ch DWORD -> filename
10h DWORD -> owner name
14h WORD open mode
---function 03h---
no additional fields???
---function 04h---
0Ch WORD "frompos"
0Eh WORD "topos"
---function 05h---
0Ch WORD subfunction
0Eh WORD position
10h WORD count
12h DWORD -> field list
---function 06h---
0Ch WORD subfunction
0Eh WORD length of description
10h WORD position
12h WORD count
14h DWORD pointer to description list
---function 07h---
0Ch WORD data length
0Eh WORD "op"
10h DWORD "select"
14h DWORD "reject"
18h DWORD pointer to data buffer
---function 08h---
0Ch DWORD -> field name
10h WORD field type
12h WORD field size
14h WORD "flddec"
16h WORD "explen"
18h DWORD pointer to "expbuf"
---function 09h---
0Ch WORD count
0Eh DWORD -> field list
---function 0Ah---
0Ch WORD "newexp"
0Eh WORD "explen"
10h DWORD -> "expbuf"
---function 0Bh---
0Ch DWORD -> filename
10h DWORD -> owner name
14h WORD type of join
16h WORD "pCount"
18h DWORD -> "pNames"
1Ch WORD "sCount"
1Eh DWORD -> "sNames"
---functions 0Ch, 0Dh, 0Fh---
0Ch WORD file count
0Eh DWORD -> file list
12h DWORD count
16h DWORD -> buffer
---function 0Eh---
0Ch WORD file count
0Eh DWORD -> file list
12h WORD "op"
14h DWORD "select"
18h DWORD "reject"
1Ch WORD count
1Eh DWORD -> "res"
22h DWORD -> "comp"
---function 10h---
0Ch WORD file count
0Eh DWORD -> file list
12h WORD "op"
14h DWORD "select"
18h DWORD "reject"
---function 11h---
0Ch DWORD machine name
---function 12h---
0Ch WORD option
---function 13h---
0Ch WORD subfunction
0Eh WORD length of buffer
10h DWORD -> buffer
---function 14h---
0Ch WORD subfunction
0Eh DWORD -> filename
12h WORD "create"
14h DWORD -> pathname
18h DWORD -> owner name
1Ch WORD owner access restrictions
1Eh WORD number of fields
20h DWORD -> field list
24h WORD number of keys
28h DWORD -> key list
2Ch WORD "buflen"
2Eh DWORD -> create parameters
---function 15h---
0Ch DWORD -> "StoreName"
10h WORD length of buffer
12h DWORD -> buffer
---function 16h---
0Ch DWORD -> "RecallName"
10h WORD owner number
12h DWORD -> owner list
16h WORD open mode
18h WORD length of buffer
1Ah DWORD -> buffer
---function 17h---
no additional fields???
---function 18h---
0Ch WORD "rtype"
0Eh WORD count
10h DWORD -> "filebuf"
14h WORD length of following buffer
16h DWORD -> output buffer
---functions 19h, 1Ah---
0Ch WORD "rtype"
0Eh WORD count
10h DWORD -> field buffer
14h WORD length of following buffer
16h DWORD -> output buffer
---function 1Bh---
0Ch WORD subfunction
0Eh DWORD -> filename
12h WORD "create"
14h DWORD -> pathname
18h DWORD -> owner name
1Ch WORD owner access restrictions
1Eh WORD field count
20h DWORD -> field list
24h WORD number of keys
26h DWORD -> list of keys
---function 1Ch---
0Ch WORD count
0Eh DWORD -> view name
12h WORD length of following buffer
14h DWORD -> output buffer
---function 1Dh---
0Ch DWORD -> filename
10h WORD file type
12h WORD "deletepath"
---function 1Eh---
0Ch WORD "dirtype"
0Eh DWORD -> pathname
---function 1Fh---
0Ch WORD function
0Eh DWORD -> field name
12h WORD attribute
14h WORD size of buffer
16h DWORD -> buffer for attributes
---function 20h---
0Ch DWORD -> directory path
10h WORD function
---function 21h---
0Ch DWORD -> master password
10h WORD "securityflag"
---function 22h---
0Ch DWORD -> master password
10h WORD function (add/modify/remove)
12h DWORD -> user name
16h DWORD -> password
1Ah WORD global rights
1Ch WORD count
1Eh WORD length of following buffer
20h DWORD -> "userbuf"
---function 23h---
0Ch DWORD -> master password
10h DWORD -> user name
14h WORD function (allow/deny/getrights)
16h WORD rights
18h DWORD -> filename
1Ch WORD number of field names in following buffer
1Eh DWORD -> field names
22h WORD maximum buffer length
24h DWORD -> output buffer
---function 24h---
0Ch DWORD -> user name
10h DWORD -> password
---function 25h---
0Ch WORD "charFcn"
0Eh WORD "charType"
10h WORD "charValue"
---function 26h---
0Ch DWORD -> buffer
---function 27h---
0Ch WORD option
0Eh WORD type
10h WORD size
12h WORD "dec"
14h WORD "dsize"
16h DWORD -> value
1Ah DWORD -> "retval"
1Eh DWORD -> mask
22h WORD "justify"
---function 28h---
0Ch DWORD -> field name
10h WORD length of buffer
12h DWORD -> buffer for data
---function 29h---
0Ch WORD option
0Eh WORD type
10h WORD size
12h WORD "dec"
14h WORD length of mask
16h DWORD -> mask
--------A-7B8001-----------------------------
INT 7B R - AutoCAD Device Interface - PRINTER/PLOTTER - BEGIN PLOT
AX = 8001h
BX = file level
0000h binary file
0001h CAD/camera image file
0002h installed ADI driver
CX = horizontal size in pixels
DX = vertical size in pixels
Return: AX = status (0000h initialization failed, 0001h init successful)
BX = allowed output format
0000h monochrome
0001h color (4 bits per pixel)
SeeAlso: AX=8002h,AX=8003h,INT 7B"AutoCAD",INT 7C"AutoShade"
--------A-7B8002-----------------------------
INT 7B R - AutoCAD Device Interface - PRINTER/PLOTTER - END PLOT
AX = 8002h
SeeAlso: AX=8001h,AX=8003h
--------A-7B8003-----------------------------
INT 7B R - AutoCAD Device Interface - PRINTER/PLOTTER - ABORT PLOT
AX = 8003h
SeeAlso: AX=8001h,AX=8002h
--------r-7C---------------------------------
INT 7C U - IBM REXX88PC command language
???
--------E-7C---------------------------------
INT 7C - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ4
Program: GO32.EXE is a DOS extender included as part of the 80386 port of the
GNU C/C++ compiler by DJ Delorie and distributed as DJGPP
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 0C,INT 7B"GO32",INT 7D"GO32"
--------P-7C---------------------------------
INT 7C - PRINDIR v8.02+ - API
AH = function
00h set output to Invisible mode
01h set output to LPT1
02h set output to LPT2
03h set output to LPT3
04h set output to COM1
05h set output to COM2
06h set output to COM3
07h set output to COM4
08h set output to screen
09h set output to file
0Ah change file path
ES:DI -> new path
CX = length of path (max 41, but not range-checked)
0Bh change file name
ES:DI -> new filename
CX = length of new name (max 41, but not range-checked)
0Ch set redirected device
(01h = LPT1 ... 03h = LPT3, 04h = COM1 ... 07h = COM4)
0Dh force buffer dump
0Eh set display color
AL = new color attribute (see INT 10/AH=08h)
0Fh set popup hotkey
AL = hotkey scancode
10h toggle byte display
AL = new state (00h off, 01h on)
11h change buffer flush delay
AL = timer ticks before flush
Return: AX = status
0000h successful
0001h invalid function or nothing in buffer to be dumped
(documented as "nonzero = error")
Program: PRINDIR is a shareware printer-redirection program by J.M. Allen
Creations
Notes: the installation check consists of testing for the ASCIZ signature
"PRINDIR N.NN" (where N.NN is the version number) two bytes beyond
the start of the interrupt handler
prior versions of PRINDIR used INT 7A instead of INT 7C
SeeAlso: INT 7A"PRINDIR"
Index: hotkeys;PRINDIR
--------A-7C---------------------------------
INT 7C - AutoShade v2 - RENDERING HARDCOPY DRIVER
Note: this is the default interrupt vector for rendering hardcopy drivers
instead of INT 7A used by AutoCAD drivers
SeeAlso: INT 7A/AX=0001h"AutoCAD"
--------N-7C---------------------------------
INT 7C - SK-UPPS/SK-PASSPORT Data Link Interface (DLI) API
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of it Data Link Interface, allowing the
use of any of several network transport layers; this product is
called SK-PASSPORT in the USA.
Notes: The installation check consists of testing for the ASCII signature
string "UPPS_DLI" immediately preceding the interrupt handler.
To find the service interrupt being used by the driver, an application
should scan through the interrupt table until it finds an interrupt
vector with the "UPPS_DLI" string.
There may be more than one DLI loaded, each having its own service
interrupt.
SeeAlso: AX=0000h,AX=0002h,AX=000Fh
Index: installation check;SK-UPPS
--------N-7C0000-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET DRIVER VERSION
AX = 0000h
Return: AH = major DLI version
AL = minor DLI version
DX = OEM signature (see #2249)
CL = DLI 2.8+ topology: 1=Ethernet, 2=FDDI, 3=Token-Ring
SeeAlso: AX=0002h,AX=000Bh,AX=000Dh,AX=000Eh
(Table 2249)
Values for SK-UPPS Data Link Interface OEM signature (defined by SK):
0001h experimental
3343h ('3C') 3COM
4942h ('IB') IBM
4943h ('IC') Intellicom
494Eh ('IN') Intel
4B4Fh ('KO') Kodiak
4D41h ('MA') Madge
4E45h ('NE') Novell
4F43h ('OC') Olicom
5349h ('SI') Siemens
534Bh ('SK') Schneider & Koch (SysKonnect)
5744h ('WD') Western Digital
--------N-7C0001-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DOWN DRIVER
AX = 0001h
Return: AX = completion code (see #2250)
Note: the DLI will refuse to unload if there are any protocols
(see AX=0007h) or clients (see AX=0010h) active.
Index: uninstall;SK-UPPS Data Link Interface
(Table 2250)
Values for SK-UPPS completion code:
0000h SUCCESS
0005h INVALID_MULTICAST
0006h BUFFER_TOO_SMALL
0007h NO_BUFFERS_LEFT
0008h NO_RESOURCES_LEFT
000Bh ILLEGAL_PROTOCOL_ID
000Ch PROTOCOL_IN_USE
000Dh NO_MULTICAST_ADDRESS
000Fh PROTOCOLS_ACTIVE
0010h CLIENTS_ACTIVE
001Bh INVALID_MODE
001Ch MODE_NOT_SUPPORTED
FFFFh UNKNOWN_SERVICE
--------N-7C0002-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET DRIVER STATUS
AX = 0002h
ES:DI -> Status Information Block (SIB) (see #2262)
Return: AX = completion code (see #2250)
Note: GET DRIVER INFO (AX=000Eh) should be used instead.
SeeAlso: AX=0000h,AX=000Bh,AX=000Dh,AX=000Eh
--------N-7C0003-----------------------------
INT 7C - SK-UPPS Data Link Interface API - CHANGE DRIVER ADDRESS
AX = 0003h
ES:DI -> new node address (6 bytes)
Return: AX = completion code (see #2250)
Note: the DLI will refuse to change the address if any protocols
(see AX=0007h) are active
SeeAlso: AX=0001h,AX=000Eh
--------N-7C0004-----------------------------
INT 7C - SK-UPPS Data Link Interface API - REQUEST BUFFER
AX = 0004h
DX = protocol ID (see AX=0007h,#2253)
Return: AX = completion code (see also #2250)
0000h successful
ES:BX -> Memory Buffer (Mbuf) (see #2251)
Note: if the DLI has no free Mbufs, it will set an internal flag for the
protocol and later call the protocol's Event Upcall with
EV_BUFFER_AVAILABLE (see #2257,#2258) as soon as an Mbuf becomes
available. There will only be one "buffer available" Upcall, even
if this function has been called several times before.
SeeAlso: AX=0005h,AX=0006h,AX=0012h,AX=0013h
Format of SK-UPPS Memory Buffer (Mbuf):
Offset Size Description (Table 2251)
00h DWORD -> NEXT Mbuf (linked list)
04h WORD OFFSET of actual data within DATA area
06h 2 BYTEs reserved (currently unused)
08h WORD LENGTH of actual data found in DATA area starting at OFFSET
0Ah 2 BYTEs reserved (currently unused)
0Ch DWORD -> DATA area (size can be obtained via AX=000Eh call)
10h WORD PROTOCOL ID of protocol currently "owning" the Mbuf
12h BYTE IN USE flag; nonzero if Mbuf still in use by DLI (see AX=0006h)
13h BYTE RECEIVE STATUS (bit 0-7 only; see AX=0007h - Receive Upcall)
--------N-7C0005-----------------------------
INT 7C - SK-UPPS Data Link Interface API - RELEASE BUFFER
AX = 0005h
ES:BX -> Mbuf (see #2251)
Return: nothing
SeeAlso: AX=0004h
--------N-7C0006-----------------------------
INT 7C - SK-UPPS Data Link Interface API - TRANSMIT FRAME
AX = 0006h
ES:BX -> Mbuf (see #2251)
Return: nothing
Notes: The DLI will send LENGTH bytes found in the Mbuf's DATA area starting
at OFFSET. A complete and valid frame must be stored there. The DLI
will only copy the current node address (see AX=0003h) to the
source node field of the frame's MAC header.
On Ethernet, the DLI will always send a minimum of 60 bytes, regardless
of the value found in the LENGTH field.
This function returns immediately; the DLI will call the protocol's
Transmit Upcall (see #2252) when the frame has been sent.
The Mbuf's IN USE field will be non-zero until the DLI calls the
Transmit Upcall.
SeeAlso: AX=0002h,AX=0004h,AX=0013h
(Table 2252)
Values SK-UPPS Transmit Upcall is called with:
ES:BX -> Mbuf (NEXT field destroyed)
interrupts disabled
Note: On FDDI the bytes of the source and destination node fields in the MAC
header have been bit-swapped to physical address format.
--------N-7C0007-----------------------------
INT 7C - SK-UPPS Data Link Interface API - REGISTER PROTOCOL
AX = 0007h
ES:BX -> Protocol Control Block (see #2253)
Return: AX = completion code (see #2250)
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of its Data Link Interface, allowing the
use of any of several network transport layers
SeeAlso: AX=0008h,AX=000Bh
Format of SK-UPPS Protocol Control Block (PCB):
Offset Size Description (Table 2253)
00h WORD (big-endian) protocol type
02h WORD protocol mode (see #2254)
04h DWORD -> Receive Upcall routine
08h DWORD -> Transmit Upcall routine
0Ch DWORD -> Event Upcall routine
10h DWORD -> ASCIZ protocol name (zero if none)
14h WORD protocol ID will be returned here (always non-zero)
Bitfields for SK-UPPS protocol mode:
Bit(s) Description (Table 2254)
0 promiscuous mode; protocol receives all frames regardless of their
destination (PROTOCOL TYPE must be FFFFh)
1 if set, protocol's Event Upcall will be called on entry and exit of the
DLI's Interrupt Service Routine (see event codes below)
2 DLI 2.2+ hook mode; protocol receives all directed frames destined for
this station (PROTOCOL TYPE must be FFFFh)
3 DLI 2.3+ receive error frames (only valid in promiscuous mode (0))
4-5 DLI 2.5+ frame type:
00 Ethernet II; specify type code in PROTOCOL TYPE field (high-low)
01 IEEE 802.2; specify Service Access Point (SAP) in MSB
(offset 0) of PROCOTOL TYPE field; LSB must be zero
10 IEEE 802.2 with SNAP header; specify type code in PROTOCOL TYPE
field (high-low)
11 reserved (currently unused)
6 DLI 2.5+ if set, protocol's Event Upcall will be called with event code
EV_BUFFER_WANTED, when DLI runs out of Mbufs
7 DLI 2.7+ chain mode; if set, client allows the specified frame type to
be shared with other clients
8 DLI 2.8+ receive non-LLC frames rather than LLC frames
9 DLI 2.8+ receive all multicast frames (see also AX=0009h)
10-15 reserved (currently unused; must be zero)
Notes: If PROTOCOL TYPE is FFFFh and neither the "promiscuous" nor the "hook"
mode is set, the protocol receives all frames that did not match
any registered frame type (demultiplexor mode).
Protocols using "promiscuous", "hook" or "chain" mode should always
return from the Receive Upcall with the received Mbuf in ES:BX and
the Carry Flag set. The DLI will then pass the Mbuf to the FEED BACK
BUFFER function (see AX=000Fh).
Some DLIs do not support all or even any of the "promiscuous",
"receive non-LLC" and "receive all multicasts" mode bits.
(Table 2255)
Values SK-UPPS Receive Upcall is called with:
ES:BX -> Mbuf
AX = receive status (see #2256) (also stored in Mbuf's RECEIVE STATUS field)
interrupts disabled
Bitfields for SK-UPPS receive status:
Bit(s) Description (Table 2256)
0-2 reserved (0), currently unused
3 frame check sequence (FCS) error
4 overflow (frame too long)
5 framing error
6 reserved (0), currently unused
7 non-LLC frame (see 8 of PCB's protocol mode field)
8-15 reserved (0), currently unused
Notes: The protocol's Receive Upcall routine will be called whenever a frame
matching the specified frame type is received. A received frame is
passed to the protocol in the Mbuf's DATA area at OFFSET and its size
is LENGTH bytes.
The receive status passed to the Receive Upcall in register AL is
always zero, except for protocols using "non-LLC" mode (8 of PCB's
protocol mode field) or "promiscuous" mode together with "receive
error frames" (0 & 3).
Upcalls are FAR routines and must return with a RET FAR. If the Carry
Flag is set on return from a Receive or Transmit Upcall, then ES:BX
must point to an Mbuf, which the DLI will then pass to the RELEASE
BUFFER function (see AX=0005h). See also notes for PROTOCOL MODE.
(Table 2257)
Values SK-UPPS Event Upcall is called with:
AX = event code (see #2258)
Note: All Event Upcalls may be ignored by the protocol.
(Table 2258)
Values for SK-UPPS Event Upcall event code:
00h EV_BUFFER_AVAILABLE client may now call REQUEST BUFFER (AX=0004h)
01h EV_ISR_START start of Interrupt Service Routine
02h EV_ISR_END end of ISR (see bit 1 in PCB's protocol mode field)
03h EV_BUFFER_WANTED DLI temporarily out of Mbufs
04h EV_NETWORK_STATUS DLI 2.8+ network status (DX=status; see below)
05h EV_IO_CONTROL DLI 2.8+ I/O control (DX=subfunction; see AX=0016h)
Bitfields for EV_NETWORK_STATUS in register DX:
Bit(s) Description (Table 2259)
Token-Ring FDDI
15 SIGNAL_LOSS SIGNAL_LOSS
14 HARD_ERROR HARD_ERROR
13 SOFT_ERROR SOFT_ERROR
12 TRANSMIT_BEACON TRANSMIT_BEACON
11 LOBE_WIRE_FAULT PATH_TEST_FAILED
10 AUTO_REMOVAL SELF_TEST_REQUIRED
9 reserved reserved
8 REMOVE_RECEIVED REMOTE_DISCONNECT
7 COUNTER_OVERFLOW reserved
6 SINGLE_STATION DUPLICATE_ADDRESS
5 RING_RECOVERY NO_RING_OP_STATUS
4 reserved VERSION_MISMATCH
3 reserved STUCK_BYPASS
2 reserved FDDI_EVENT
1 reserved RING_OP_CHANGE
0 reserved reserved
Note: EV_NETWORK_STATUS is not supported on Ethernet
--------N-7C0008-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DISABLE PROTOCOL
AX = 0008h
BX = protocol ID (see #2253)
Return: AX = completion code (see #2250)
Note: the DLI will handle any Mbufs given to TRANSMIT FRAME (AX=0006h) as if
they had been given to TRANSMIT FRAME RELEASE (AX=0013h).
all multicast addresses registered for this protocol will be disabled.
after this function returns, the protocol's Upcall routines will no
longer be called.
SeeAlso: AX=0007h,AX=000Bh
--------N-7C0009-----------------------------
INT 7C - SK-UPPS Data Link Interface API - REGISTER MULTICAST
AX = 0009h
BX = protocol ID (see #2253)
ES:DI -> multicast address (6 bytes)
Return: AX = completion code (see #2250)
Notes: The broadcast address is always enabled.
Set bit 9 of PCB's protocol mode field in REGISTER PROTOCOL call
(AX=0007h) to receive all multicast frames.
SeeAlso: AX=000Ah,AX=0014h
--------N-7C000A-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DISABLE MULTICAST
AX = 000Ah
BX = protocol ID (see #2253)
ES:DI -> multicast address (6 bytes)
Return: AX = completion code (see #2250)
SeeAlso: AX=0009h,AX=0014h
--------N-7C000B-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET PROTOCOL LIST
AX = 000Bh
ES:DI -> protocol ID buffer
CX = number of 2-byte protocol IDs that may be stored in buffer
Return: AX = completion code (see #2250)
CX = number of active protocols (regardless of value returned in AX)
protocol ID buffer filled with active protocol IDs
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of its Data Link Interface, allowing the
use of any of several network transport layers
Note: If the buffer supplied is too small, CX still contains the total number
of active protocols and the buffer has been filled until full.
SeeAlso: AX=000Ch,AX=0014h
--------N-7C000C-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET PROTOCOL STATUS
AX = 000Ch
BX = protocol ID (see #2253,AX=000Bh)
ES:DI -> Protocol Status Block (see #2260)
Return: AX = completion code (see #2250)
SeeAlso: AX=000Bh,AX=0014h
Format of SK-UPPS Protocol Status Block (PSB):
Offset Size Description (Table 2260)
00h DWORD -> ASCIZ protocol name
04h WORD protocol mode (see #2254)
06h WORD protocol type (see AX=0007h)
08h WORD number of registered multicasts (see AX=0009h,AX=0014h)
--------N-7C000D-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET DRIVER STATISTICS
AX = 000Dh
BX = flag: 0=don't clear statistics, 1=clear statistics
ES:DI -> Statistics Data Block (see #2261)
Return: AX = completion code (see #2250)
SeeAlso: AX=0002h,AX=0015h
Format of SK-UPPS Statistics Data Block (SDB):
Offset Size Description (Table 2261)
00h DWORD node uptime in ticks (1/18.21 sec.)
04h DWORD bytes received
08h DWORD bytes transmitted
0Ch DWORD frames received
10h DWORD frames transmitted
14h DWORD multicast bytes received
18h DWORD multicast frames received
1Ch DWORD unrecognized frames
20h WORD missed frames
22h WORD frame check sequence (FCS) errors
24h WORD framing errors
26h WORD babbling errors
28h WORD late collision errors
2Ah WORD loss of carrier errors
2Ch WORD 16 retries failed errors
2Eh WORD overflow errors
Note: fields 26h through 2Ch are always zero, except in some very old
versions of the DLI. Use GET MEDIA STATISTICS (AX=0015h) to get
more detailed information.
--------N-7C000E-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DLI 2.5+ - GET DRIVER INFO
AX = 000Eh
ES:DI -> Driver Information Block (see #2262)
BX = offset of 1st field within DIB to be returned
CX = number of bytes to be returned
Return: AX = completion code (see #2250)
CX = number of bytes copied (regardless of value returned in AX)
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of its Data Link Interface, allowing the
use of any of several network transport layers
SeeAlso: AX=0000h,AX=0002h,AX=000Bh,AX=000Dh,AX=0015h
Format of SK-UPPS Driver Information Block (DIB):
Offset Size Description (Table 2262)
00h 6 BYTEs physical node address (from adapter's ROM)
06h 6 BYTEs current node address (see AX=0003h)
0Ch BYTE adapter id (defined by OEM)
0Dh BYTE IRQ line (FFh if none)
0Eh DWORD -> shared memory (zero if none)
12h DWORD size of shared memory (zero if none)
16h WORD base I/O port (zero if none)
18h BYTE DMA line (FFh if none)
19h BYTE DLI 2.4+ topology (see AX=0000h)
1Ah WORD size of an Mbuf's DATA area (see #2251)
1Ch 2 BYTEs reserved (currently unused)
1Eh WORD total number of Mbufs the DLI has
20h WORD maximum number of Mbufs that can be allocated via REQUEST
BUFFER (AX=0004h) and SYNC REQUEST BUFFER (AX=0012h)
---- end of Status Information Block returned by GET DRIVER STATUS (AX=0002h)
22h DWORD -> ASCIZ adapter name
26h WORD number of I/O ports used (zero if none)
28h DWORD line speed in bits/sec.
--------N-7C000F-----------------------------
INT 7C - SK-UPPS Data Link Interface API - FEED BACK BUFFER
AX = 000Fh
ES:BX -> Mbuf (see #2251)
Return: nothing
Notes: A protocol may call this function instead of returning the Mbuf
directly from the Receive Upcall if it is running in "promiscuous",
"hook" or "chain" mode.
SeeAlso: AX=0007h
--------N-7C0010-----------------------------
INT 7C - SK-UPPS Data Link Interface API - CLIENT HOOK
AX = 0010h
Return: nothing
Notes: An application having no active protocols may call this function to
prevent the DLI from unloading.
SeeAlso: AX=0001h,AX=0011h
--------N-7C0011-----------------------------
INT 7C - SK-UPPS Data Link Interface API - CLIENT UNHOOK
AX = 0011h
Return: nothing
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of its Data Link Interface, allowing the
use of any of several network transport layers
SeeAlso: AX=0010h
--------N-7C0012-----------------------------
INT 7C - SK-UPPS Data Link Interface API - SYNC REQUEST BUFFER
AX = 0012h
DX = protocol ID (see #2253)
Return: AX = completion code (see #2250)
if AX=0000h: ES:BX -> Mbuf (see #2251)
Note: If the protocol wants to be informed when an Mbuf becomes available,
REQUEST BUFFER (AX=0004h) should be used instead.
SeeAlso: AX=0004h,AX=0005h,AX=0006h,AX=0013h
--------N-7C0013-----------------------------
INT 7C - SK-UPPS Data Link Interface API - TRANSMIT FRAME RELEASE
AX = 0013h
ES:BX -> Mbuf (see #2251)
Return: nothing
Notes: Returns immediately; The protocol's Transmit Upcall will NOT be called.
The Mbuf may no more be used by the protocol in any way (i.e. the
Mbuf's IN USE field may not be polled).
SeeAlso: AX=0004h,AX=0013h
--------N-7C0014-----------------------------
INT 7C - SK-UPPS Data Link Interface API - GET MULTICAST LIST
AX = 0014h
BX = protocol ID (see #2253,AX=000Bh)
ES:DI -> multicast address buffer
CX = number of 6-byte multicast addresses that may be stored in buffer
Return: AX = completion code (see #2250)
CX = number of registered multicast addresses for this protocol
(regardless of value returned in AX)
multicast address buffer filled with multicast addresses registered for
this protocol
Note: If the buffer supplied is too small, CX still contains the total number
of registered multicast addresses for this protocol and the buffer
has been completely filled
SeeAlso: AX=000Bh,AX=0009h,AX=000Ch
--------N-7C0015-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DLI 2.6+ - GET MEDIA STATISTICS
AX = 0015h
ES:DI -> media-specific statistics buffer (see #2263,#2264,#2265)
BX = offset of 1st field within MSS to be returned
CX = number of bytes to be returned
Return: AX = completion code (see #2250)
CX = number of bytes copied (regardless of value returned in AX)
Note: not supported by all DLIs (will return AX=FFFFh if not supported).
SeeAlso: AX=0000h,AX=000Dh
Format of SK-UPPS media-specific statistics for Ethernet:
Offset Size Description (Table 2263)
00h DWORD alignment errors
04h DWORD frame check sequence (FCS) errors
08h DWORD single collision frames
0Ch DWORD multiple collision frames
10h DWORD signal quality error (SQE) test errors
14h DWORD deferred transmissions
18h DWORD late collisions
1Ch DWORD excessive collisions
20h DWORD internal MAC transmit errors
24h DWORD carrier sense errors
28h DWORD excessive deferrals
2Ch DWORD frame too longs
30h DWORD in range length errors
34h DWORD out of range length fields
38h DWORD internal MAC receive errors
Format of SK-UPPS media-specific statistics for FDDI:
Offset Size Description (Table 2264)
00h DWORD SMT operating version id (refer to ANSI 7.1.2.2)
04h DWORD SMT CF state: 1=Isolated, 2= Wrap_S, 3=Wrap_A, 4=Wrap_B,
5=Wrap_AB, 6=Thru (refer to ANSI SMT 9.7.4.3)
08h DWORD SMT frames sent
0Ch DWORD SMT frames received
10h DWORD SMT ring up count
14h 6 BYTEs MAC upstream neighbour
1Ah 6 BYTEs MAC downstream neighbour
20h DWORD MAC frame counter (refer to ANSI MAC 2.2.1)
24h DWORD MAC error counter ( " )
28h DWORD MAC lost counter ( " )
2Ch BYTE port 1 link error estimate (ranges from 10**-4 to 10**-15 and
is reported as the absolute value of the exponent)
2Dh BYTE port 2 link error estimate ( " )
2Eh 2 BYTEs reserved (currently unused)
30h DWORD attachment class: 1=single-attachment (S PORT),
2=dual-attachment (A/B PORT pairs), 3=concentrator (M PORTs)
34h DWORD attachment optical bypass present: 1=true, 2=false
Format of SK-UPPS media-specific statistics for Token-Ring:
Offset Size Description (Table 2265)
00h 6 BYTEs upstream neighbour
06h WORD local ring number
08h DWORD ring up count
0Ch DWORD signal loss errors
10h DWORD lobe wire faults
14h DWORD ring recovery count
18h DWORD line errors
1Ch DWORD burst errors
20h DWORD ARI/FCI errors
24h DWORD lost frame errors
28h DWORD receive congestion errors
2Ch DWORD frame copied errors
30h DWORD token errors
34h DWORD DMA bus errors
38h DWORD DMA parity errors
3Ch DWORD receive overflow errors
--------N-7C0016-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DLI 2.8+ - DRIVER I/O CONTROL
AX = 0016h
DX = subfunction; bits 14-15 specify direction of I/O:
00 no data at all (ES:BX undefined)
01 driver -> application (GET)
10 application -> driver (SET)
11 both directions (GET/SET)
ES:BX -> I/O buffer (optional)
CX = size of buffer (if ES:BX valid)
Return: AX = completion code; defined by OEM
Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,
which provides an API on top of its Data Link Interface, allowing the
use of any of several network transport layers
Notes: not supported by all DLIs (will return AX=FFFFh if not supported)
subfunction codes are defined by OEMs
SeeAlso: AX=0001h
--------N-7C0017-----------------------------
INT 7C - SK-UPPS Data Link Interface API - DLI 2.8+ - INTERRUPT REQUEST
AX = 0017h
Return: AX = completion code (see #2250)
Notes: not supported by all DLIs (will return AX=FFFFh, if not supported).
must be called with interrupts disabled; when the client re-enables
interrupts, an interrupt will be generated and reported to the client
through an Event Upcall (see AX=0007h [EV_ISR_START/EV_ISR_END])
SeeAlso: AX=0007h
--------t-7D---------------------------------
INT 7D O - [obsoleted proposal] - ALTERNATE MULTIPLEX INTERRUPT
Note: this interface has been moved to INT 2D; there are no known
implementations on INT 7D
SeeAlso: INT 2D,INT 2F
--------S-7D---------------------------------
INT 7D U - YTERM 1.4 - CLOCK SUPPORT
SeeAlso: INT 7E"YTERM"
--------E-7D---------------------------------
INT 7D - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ5
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 0D,INT 7C"GO32",INT 7E"GO32"
--------U-7D---------------------------------
INT 7D - HyperPAD v2.2 - API ACCESS
Note: this vector is hooked but immediately passed on (without checking
whether the previous handler was 0000h:0000h). The sole purpose of
this vector is to provide the address of the data area described
below.
Format of HyperPAD data area:
Offset Size Description (Table 2266)
-16h DWORD pointer to ??? FAR function
-12h DWORD pointer to callback setting function
[C calling conventions, (*callback)(int (_loadds far *)()) ]
-0Eh 6 BYTEs signature "BRC001"
-08h DWORD pointer to previous INT 7D handler
-04h DWORD pointer to ??? data
00h HyperPAD INT 7D handler
----------7D---------------------------------
INT 7D - IBM DOS 6.1 E.EXE - ???
Note: E.EXE checks whether this interrupt is in use (not 0000h:0000h),
and if it is used, attempts to load E55VGA.EX instead of the
default E.EX overlay. However, E55VGA.EX is not included in
IBM DOS 6.1.
----------7D00-------------------------------
INT 7D - SCSILink - RESET SCSI BUS
AH = 00h
Program: SCSILink is a TSR by Cross Products Ltd which allows its PC-hosted
cross assemblers and similar products to communicate with Cross
Products hardware debuggers
Desc: reset all devices on the SCSI bus
Note: the installation check is the signature "SCSILINK" immediately prior
to the interrupt handler
Index: installation check;SCSILink
----------7D01-------------------------------
INT 7D - SCSILink - CONNECT TO TARGET
AH = 01h
AL = target ID
Return: CF clear if successful
CF set on error
AL = initiator error
AH = target error
Desc: arbitrate the use of the bus and select the specified target device
----------7D02-------------------------------
INT 7D - SCSILink - SEND COMMAND
AH = 02h
ES:BX -> parameter block (see #2267)
Return: CF clear if successful
CF set on error
AL = initiator error
AH = target error
Desc: send the specified command block to the target device and perform any
related I/O
Format of SCSILink parameter block:
Offset Size Description (Table 2267)
00h DWORD size of command block
04h DWORD address of command block (see #2268)
08h DWORD size of buffer
0Ch DWORD address of buffer
Format of SCSILink command block:
Offset Size Description (Table 2268)
00h info not yet available
----------7D03-------------------------------
INT 7D - SCSILink - SET TIMEOUT
AH = 03h
AL = timeout selector (see #2269)
BX = new value in 55ms ticks
Desc: change an internal timeout value to allow communication with very
slow targets
(Table 2269)
Values for SCSILink timeout selector:
00h time to wait for bus (default 18)
01h time to wait for new phase (default 5)
02h maximum time to send/receive block (default 18)
03h time to wait for reselect (default 180)
----------7D04-------------------------------
INT 7D - SCSILink - GET ERROR STRING
AH = 04h
AL = error number
Return: ES:BX -> ASCIZ error string for error number
----------7D05-------------------------------
INT 7D - SCSILink - GET ADDRESS
AH = 05h
Return: AL = DMA channel
AH = initiator ID
BX = card address
Desc: determine the current hardware configuration
----------7D06-------------------------------
INT 7D - SCSILink - PUT DATA
AH = 06h
CX = number of bytes to store (0001h-0100h)
ES:BX -> data to be saved
Return: CF clear if successful
CF set on error
AL = error code (01h = too much data)
Note: the specified data is stored in SCSILink's PSP
SeeAlso: AH=07h
----------7D07-------------------------------
INT 7D - SCSILink - GET DATA
AH = 07h
CX = number of bytes to retrieve (0001h-0100h)
ES:BX -> buffer for data
Return: CF clear if successful
CF set on error
AL = error code (01h = too much data)
Note: retrieve data previously stored with AH=06h
SeeAlso: AH=06h
----------7D08-------------------------------
INT 7D - SCSILink - TERMINATE SESSION
AH = 08h
Desc: indicate to any other programs that intercept INT 7D that the program
has finished with the link
Note: the program should call this function even if a SCSI error caused its
termination
----------7D09-------------------------------
INT 7D - SCSILink - POLL REQUEST
AH = 09h
AL = target ID
Return: AL = status
FEh resident driver experienced SCSI error
FFh resident driver handleded event
Desc: give any drivers chained onto INT 7D a chance to handle an exception
not specifically handled by the calling program
Notes: this service exists so that resident disk servers, etc. can continue
running even while debuggers and profilers are active
the resident driver assumes that a connection has been established and
attempts to leave the target connected
--------*-7E---------------------------------
INT 7E - RESERVED FOR DIP, Ltd. ROM LIBRARY
--------S-7E---------------------------------
INT 7E U - YTERM 1.4 - ???
SeeAlso: INT 7D"YTERM",INT 7F"YTERM"
--------E-7E---------------------------------
INT 7E - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ6
Program: GO32.EXE is a DOS extender included as part of the 80386 port of the
GNU C/C++ compiler by DJ Delorie and distributed as DJGPP
Notes: this vector is overwritten when GO32 starts but is not restored by
early versions of the extender
the newest versions of GO32 dynamically allocate the vectors used
for the relocated IRQs, much as DESQview does (see INT 50"DESQview")
SeeAlso: INT 0E,INT 7D"GO32",INT 7F"GO32"
--------s-7E00FE-----------------------------
INT 7E - SBOS - UNINSTALL
AX = 00FEh
Return: nothing, SBOS removed
Program: SBOS is a SoundBlaster emulator for the Gravis UltraSound
Note: this function may not be called if any SBOS vectors have been hooked
SeeAlso: INT 21/AX=FD12h
--------m-7E5857BL57-------------------------
INT 7E - XLOAD - INSTALLATION CHECK
AX = 5857h
BL = 57h
Return: AX = 0000h if installed
Program: XLOAD is the LOADHIGH-equivalent from Helix Software's Netroom
SeeAlso: AX=5857h/BL=5Ah,AX=5857h/BL=5Bh
--------m-7E5857BL5A-------------------------
INT 7E - XLOAD - GET ???
AX = 5857h
BL = 5Ah
Return: AX = 0000h
CX = ???
DS:SI -> ???
SeeAlso: AX=5857h/BL=57h,AX=5857h/BL=5Bh
--------m-7E5857BL5B-------------------------
INT 7E - XLOAD - GET XLOAD MEMORY SIZE
AX = 5857h
BL = 5Bh
Return: AX = 0000h
CX = segment of XLOAD TSR
DX = size of memory block in which XLOAD TSR is located
SeeAlso: AX=5857h/BL=57h,AX=5857h/BL=5Ah
--------!---Section--------------------------