📄 interrup.h
字号:
Return: CF clear if successful
CF set on error
AX = error code
BX = next queue entry index
SeeAlso: AX=5FB0h
--------N-215FB3-----------------------------
INT 21 - LANtastic v3+ - TRANSLATE PATH
AX = 5FB3h
DS:SI -> 128-byte buffer for ASCIZ result
ES:DI -> full ASCIZ path, including server name
DX = types of translation to be performed
bit 0: expand last component as indirect file
bit 1: return actual path relative to server's physical disk
Return: CF clear if successful
CF set on error
AX = error code
Note: always expands any indirect files along the path
SeeALso: AX=5FB4h,INT 21/AH=60h
--------N-215FB4-----------------------------
INT 21 - LANtastic v3+ - CREATE INDIRECT FILE
AX = 5FB4h
DS:SI -> 128-byte buffer containing ASCIZ contents of indirect file
ES:DI -> full ASCIZ path of indirect file to create, incl machine name
Return: CF clear if successful
CF set on error
AX = error code
Note: the contents of the indirect file may be any valid server-relative path
SeeAlso: AX=5FB3h,AX=5FB5h
--------N-215FB5-----------------------------
INT 21 - LANtastic v3+ - GET INDIRECT FILE CONTENTS
AX = 5FB5h
DS:SI -> 128-byte buffer for ASCIZ indirect file contents
ES:DI -> full ASCIZ path of indirect file
Return: CF clear if successful
CF set on error
AX = error code
SeeAlso: AX=5FB4h
--------N-215FB6-----------------------------
INT 21 - LANtastic v4.1+ - SET AUTO-LOGIN DEFAULTS
AX = 5FB6h
ES:DI -> pointer to ASCIZ default user name, immediately followed by
ASCIZ password
BL = adapter number to use for default login attempt
FFh try all valid adapters
00h-05h try adapter 0-5 explicitly
Return: CF clear if successful
CF set on error
AX = error code
Notes: call with ES:DI -> two nulls to disable auto-login
SeeAlso: AX=5FB7h
--------N-215FB7-----------------------------
INT 21 - LANtastic v4.1+ - GET AUTO-LOGIN DEFAULTS
AX = 5FB7h
ES:DI -> pointer to 16-byte buffer to store ASCIZ auto-login user name
Return: CF clear if successful
DL = adapter number used for default login attempt
FFh all valid adapters will be tried
00h-05h specified adapter will be tried explicitly
CF set on error
AX = error code
SeeAlso: AX=5F81h,AX=5FB6h
--------N-215FC0-----------------------------
INT 21 - LANtastic - GET TIME FROM SERVER
AX = 5FC0h
DS:SI -> time block (see #01743)
ES:DI -> ASCIZ server name to get time from
Return: CF clear if successful
CF set on error
AX = error code
SeeAlso: AH=E7h"Novell"
Format of LANtastic time block:
Offset Size Description (Table 01743)
00h WORD year
02h BYTE day
03h BYTE month
04h BYTE minutes
05h BYTE hour
06h BYTE hundredths of second
07h BYTE second
--------N-215FC8-----------------------------
INT 21 - LANtastic v4.0+ - SCHEDULE SERVER SHUTDOWN
AX = 5FC8h
ES:DI -> ASCIZ server name in form "\\machine"
DS:SI -> ASCIZ reason string (80 characters)
CX = number of minutes until shutdown (0 = immediate)
DX = option flags (see #01744)
Return: CF clear if successful
CF set on error
AX = error code
SeeAlso: AX=5FC9h
Bitfields for LANtastic option flags:
Bit(s) Description (Table 01744)
0 auto reboot
1 do not notify users
2 halt after shutdown
3 shutdown due to power fail (used by UPS)
4-7 reserved
8-14 user definable
15 reserved
--------N-215FC9-----------------------------
INT 21 - LANtastic v4.0+ - CANCEL SERVER SHUTDOWN
AX = 5FC9h
ES:DI -> ASCIZ server name in form "\\machine"
Return: CF clear if successful
CF set on error
AX = error code
Note: you must have the "S" privilege to use this call
SeeAlso: AX=5FC8h
--------N-215FCA-----------------------------
INT 21 - LANtastic v4.0+ - STUFF SERVER KEYBOARD BUFFER
AX = 5FCAh
ES:DI -> ASCIZ server name in form "\\machine"
DS:SI -> ASCIZ string to stuff (128 bytes)
Return: CF clear if successful
CF set on error
AX = error code
Note: you must have the "S" privilege to use this call
maximum number of characters that can be stuffed is determined by the
server's RUN BUFFER SIZE.
SeeAlso: INT 16/AH=05h
--------N-215FCB-----------------------------
INT 21 - LANtastic v4.1+ - TERMINATE USER
AX = 5FCBh
ES:DI -> ASCIZ server name in form "\\machine"
DS:SI -> blank-padded username. A null char = wildcard.
DS:DX -> blank-padded machine name. A null char = wildcard.
CX = minutes until termination (0 = immediate)
Return: CF clear if successful
CF set on error
AX = error code
Note: you must have the "S" privilege to use this call
you cannot log yourself out using this call
SeeAlso: AX=5F82h
--------N-215FCC-----------------------------
INT 21 - LANtastic v4.1+ - GET/SET SERVER CONTROL BITS
AX = 5FCCh
ES:DI -> ASCIZ server name in form "\\machine"
CX = bit values (value of bits you want to set) (see #01745)
DX = bit mask (bits you are interested in, 0 = get only) (see #01745)
Return: CF clear if successful
CX = control bits after call (see #01745)
CF set on error
AX = error code
Note: you must have the "S" privilege to SET, anyone can GET.
Bitfields for control bits:
Bit(s) Description (Table 01745)
0 disable logins
--------N-215FCD-----------------------------
INT 21 - LANtastic v4.1+ - FLUSH SERVER CACHES
AX = 5FCDh
ES:DI -> ASCIZ server name in form "\\machine"
Return: CF clear if successful
CF set on error
AX = error code
Note: you must have the "S" privilege to use this call.
--------N-215FD0-----------------------------
INT 21 - LANtastic - GET REDIRECTED PRINTER TIMEOUT
AX = 5FD0h
Return: CF clear if successful
CX = redirected printer timeout in clock ticks of 55ms
0000h if timeout disabled
CF set on error
AX = error code
SeeAlso: AX=5FD1h
--------N-215FD1-----------------------------
INT 21 - LANtastic - SET REDIRECTED PRINTER TIMEOUT
AX = 5FD1h
CX = printer timeout in clock ticks of 55ms, 0000h to disable timeouts
Return: CF clear if successful
CF set on error
AX = error code
SeeAlso: AX=5FD0h
--------N-215FE0-----------------------------
INT 21 C - LANtastic - GET DOS SERVICE VECTOR
AX = 5FE0h
Return: CF clear if successful
ES:BX -> current FAR service routine
CF set on error
AX = error code
Note: the service routine is called by the LANtastic redirector whenever DOS
may safely be called, permitting external TSRs and drivers to hook
into LANtastic's DOS busy flag checking
SeeAlso: AX=5FE1h,INT 28,INT 2A/AH=84h
--------N-215FE1-----------------------------
INT 21 - LANtastic - SET DOS SERVICE VECTOR
AX = 5FE1h
ES:BX -> FAR routine to call when DOS services are available
Return: CF clear if successful
CF set on error
AX = error code
Note: new handler must chain to previous handler as its first action
SeeAlso: AX=5FE0h
--------N-215FE2-----------------------------
INT 21 - LANtastic - GET MESSAGE SERVICE VECTOR
AX = 5FE2h
Return: CF clear if successful
ES:BX -> current FAR message service routine
CF set on error
AX = error code
SeeAlso: AX=5FE0h,AX=5FE3h
--------N-215FE3-----------------------------
INT 21 - LANtastic - SET MESSAGE SERVICE VECTOR
AX = 5FE3h
ES:BX -> FAR routine for processing network messages
Return: CF clear if successful
CF set on error
AX = error code
Notes: handler must chain to previous handler as its first action
on invocation, ES:BX -> just-received message
SeeAlso: AX=5FE2h
--------D-2160-------------------------------
INT 21 - DOS 3.0+ - "TRUENAME" - CANONICALIZE FILENAME OR PATH
AH = 60h
DS:SI -> ASCIZ filename or path
ES:DI -> 128-byte buffer for canonicalized name
Return: CF set on error
AX = error code
02h invalid component in directory path or drive letter only
03h malformed path or invalid drive letter
ES:DI buffer unchanged
CF clear if successful
AH = 00h or 3Ah (DOS 6.1/6.2 for character device)
AL = destroyed (00h or 2Fh or 5Ch or last character of current
directory on drive)
buffer filled with qualified name of form D:\PATH\FILE.EXT or
\\MACHINE\PATH\FILE.EXT
Desc: determine the canonical name of the specified filename or path,
corresponding to the undocumented TRUENAME command in COMMAND.COM
Notes: the input path need not actually exist
letters are uppercased, forward slashes converted to backslashes,
asterisks converted to appropriate number of question marks, and
file and directory names are truncated to 8.3 if necessary. (DR DOS
3.41 and 5.0 do not expand asterisks)
'.' and '..' in the path are resolved
filespecs on local drives always start with "d:", those on network
drives always start with "\\"
if path string is on a JOINed drive, the returned name is the one that
would be needed if the drive were not JOINed; similarly for a
SUBSTed, ASSIGNed, or network drive letter. Because of this, it is
possible to get a qualified name that is not legal under the current
combination of SUBSTs, ASSIGNs, JOINs, and network redirections
under DOS 3.3 through 6.00, a device name is translated differently if
the device name does not have an explicit directory or the directory
is \DEV (relative directory DEV from the root directory works
correctly). In these cases, the returned string consists of the
unchanged device name and extension appended to the string X:/
(forward slash instead of backward slash as in all other cases) where
X is the default or explicit drive letter.
under MS-DOS 7.0, this call returns the short name for any
long-filename portions of the provided pathname or filename
functions which take pathnames require canonical paths if invoked via
INT 21/AX=5D00h
supported by OS/2 v1.1 compatibility box
NetWare 2.1x does not support characters with the high bit set; early
versions of NetWare 386 support such characters except in this call.
In addition, NetWare returns error code 3 for the path "X:\"; one
should use "X:\." instead.
Novell DOS 7 reportedly has difficulty with non-MS-DOS filenames on
network drives, and can return "D:" instead of "SERVER/VOLUME"
for DOS 3.3-6.0, the input and output buffers may be the same, as the
canonicalized name is built in an internal buffer and copied to the
specified output buffer as the very last step
for DR DOS 6.0, this function is not automatically called when on a
network. Device drivers reportedly cannot make this call from their
INIT function. Using the same pointer for both input and output
buffers is not supported in the April 1992 and earlier versions of
DR DOS
Windows for Workgroups 3.11, Windows95 and even MS-DOS 7.00 only
return the local drive path; to obtain network paths use
INT 21/AX=5F02h or INT 21/AX=5F46h instead
Corel's CORELCDX and MSCDEX without the /S switch return canonical
names of the form "\\D.\A.\path", where "D" is the CD-ROM drive
letter and "A" appears to indicate the first physical CD-ROM drive;
MSCDEX with the /S switch returns a canonical name with embedded
blanks. Novell DOS 7 NWCDEX as of the 11/16/94 update returns the
same canonical path as MSCDEX; earlier revisions returned
"Cdex. D:\path", where "D" is the CD-ROM drive letter
the Windows95 MSCDEX-replacement VxD returns "D:\path", even though the
MS-DOS 7.00 MSCDEX behaves identically to older versions (above)
BUG: Windows95 incorrectly treats filenames where the first two characters
after the drive letter and colon are both slashes (either forward
or backward) as a UNC (network name) and requires several seconds
to attempt to resolve the name before returning an unchanged
string
SeeAlso: AX=5F02h,AX=5FB3h,AX=7160h/CL=00h,INT 2F/AX=1123h,INT 2F/AX=1221h
--------D-2161-------------------------------
INT 21 - DOS 3.0+ - UNUSED (RESERVED FOR NETWORK USE)
AH = 61h
Return: AL = 00h
Note: this function does nothing and returns immediately
--------O-2161--BP6467-----------------------
INT 21 U - OS/2 v1.x FAPI - OS/2 FILE SYSTEM JOIN/SUBST
AH = 61h
BP = 6467h ("dg")
AL = function
00h list (i.e. get)
01h add
02h delete
BX = drive number
CX = size of buffer
SI = type (0002h JOIN, 0003h SUBST)
ES:DI -> buffer
Return: CF clear if successful
AX = 0000h
ES:DI buffer filled, if appropriate
CF set on error
AX = error code
Notes: used by JOIN and SUBST to communicate with the OS/2 file system
for function 00h (list), the ES:DI buffer is filled with the ASCIZ
JOIN/SUBST path or an empty string if the drive is not JOINed/SUBSTed
also supported by OS/2 v2.0+ Virtual DOS Machines
--------D-2162-------------------------------
INT 21 - DOS 3.0+ - GET CURRENT PSP ADDRESS
AH = 62h
Return: BX = segment of PSP for current process
Notes: this function does not use any of the DOS-internal stacks and may
thus be called at any time, even during another INT 21h call
the current PSP is not necessarily the caller's PSP
identical to the undocumented AH=51h
SeeAlso: AH=50h,AH=51h
--------U-216262SI1994-----------------------
INT 21 - ENVLOCK - INSTALLATION CHECK
AX = 6262h
SI = 1994h
Return: AX = 1994h if installed
ES = ENVLOCK's resident segment
Notes: to deactivate ENVLOCK, zero out the byte at ES:[0102h]
Program: ENVLOCK is a TSR by Alexander Yanovsky (aka PC Hawk) that forces
other TSRs to deallocate their environment when they stay resident
--------D-216300-----------------------------
INT 21 - DOS 2.25 only - GET LEAD BYTE TABLE ADDRESS
AX = 6300h
Return: CF clear if successful
DS:SI -> lead byte table (see #01746)
CF set on error
AX = error code (01h) (see #01680 at AH=59h/BX=0000h)
Notes: does not preserve any registers other than SS:SP
the US version of MS-DOS 3.30 treats this as an unused function,
setting AL=00h and returning immediately
SeeAlso: AX=6301h,AH=07h,AH=08h,AH=0Bh
Format of double-byte character set lead byte table entry:
Offset Size Description (Table 01746)
00h 2 BYTEs low/high ends of a range of leading byte of double-byte chars
02h 2 BYTEs low/high ends of a range of leading byte of double-byte chars
...
N 2 BYTEs 00h,00h end flag
--------D-216300-----------------------------
INT 21 - DOS 3.2+ - GET DOUBLE BYTE CHARACTER SET LEAD-BYTE TABLE
AX = 6300h
Return: AL = error code
00h successful
DS:SI -> DBCS table (see #01746)
all other registers except CS:IP and SS:SP destroyed
FFh n
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -