———-17—-DX0ABC———————– INT 17 - PRINTER - LPTx v5.x INSTALLATION CHECK
DX = 0ABCh
Return: AX = AAAAh
DX = BAAAh ES = code segment of resident portion
———-17—-DX0B90———————– INT 17 - PRINTER - LPTx v6.x INSTALLATION CHECK
DX = 0B90h
Return: DX = ABBBh
ES = code segment of resident portion
———-17—-DX0B91———————– INT 17 - PRINTER - LPTx v7.x INSTALLATION CHECK
DX = 0B91h
Return: DX = ABCBh
ES = code segment of resident portion
———-17—-DX0F5F———————– INT 17 - PRINTER - LPTx v4.x INSTALLATION CHECK
DX = 0F5Fh
Return: AX = AAAAh
DX = F555h ES = code segment of resident portion
———-1700——————————- INT 17 - PRINTER - WRITE CHARACTER
AH = 00h AL = character to write DX = printer number (00h-02h)
Return: AH = printer status
bit 7: not busy 6: acknowledge 5: out of paper 4: selected 3: I/O error 2: unused 1: unused 0: timeout
SeeAlso: AH=84h“AX”,AH=F1h,INT 16/AX=FFE3h,INT 1A/AH=11h“NEC” ———-1701——————————- INT 17 - PRINTER - INITIALIZE PORT
AH = 01h DX = printer number (00h-02h)
Return: AH = printer status (see AH=00h) SeeAlso: AH=02h,INT 1A/AH=10h“NEC” ———-1702——————————- INT 17 - PRINTER - GET STATUS
AH = 02h DX = printer number (00h-02h)
Return: AH = printer status (see AH=00h) SeeAlso: AH=01h,AH=F2h,INT 1A/AH=12h“NEC” ———-1702–DX0000———————– INT 17 - INSET - INSTALLATION CHECK
AH = 02h DX = 0000h CX = 07C3h (1987d)
Return: CX = 07C2h (1986d) if installed Note: INSET is a text/graphics integration program ———-1720——————————- INT 17 - PC Paint Plus 2.0 - PRINTER DRIVER
AH = 20h AL = function number 00h installation check Return: BX = driver version number (BH=major,BL=minor) CH = ??? (00h) CL = ??? DX = ??? (0100h) Note: also enables the remaining functions 01h set ??? flag 02h get information CL = subfunction 00h get printer type Return: ES:DI -> ASCIZ printer name 01h get paper size DX = size index Return: ES:DI -> ASCIZ paper size description 02h get ??? Return: BX = ??? 03h get printer information??? DX = ??? ES:BX -> buffer for ??? (min 134 bytes) 03h ??? ES:BX -> ??? 04h get ??? Return: ES:DI -> ??? 05h advance printer to next page Note: also clears flag set by function 01h 06h advance printer to next page and shut down Note: also clears flag set by function 01h and disables functions other than 00h 07h not implemented, AX returned unchanged BL = printer number???
Return: AX = status
0000h successful 0001h invalid printer??? 0002h ??? 0003h invalid subfunction 0005h driver disabled, must call function 00h first 0009h unknown printer error 000Bh printer not selected 000Ch printer out of paper 000Eh error while writing to serial printer 000Fh ??? 0010h invalid function number 0011h value out of range
———-172400—————————– INT 17 - Shamrock Software NET.24 v3.11+ - ENABLE/DISABLE API FUNCTIONS
AX = 2400h DL = new state 00h disabled 01h enabled
Return: DL = 24h if installed
DH = minor version number CX = network address of this machine AL = status 00h successful 01h timeout 02h header error 03h data error 04h busy 05h invalid parameters
SeeAlso: AX=2403h,INT 16/AX=4500h ———-172401—————————– INT 17 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, NO HANDSHAKE
AX = 2401h BL = timeout in clock ticks
Return: AL = status (see AX=2400h)
DX:BX -> receive buffer
SeeAlso: AX=2402h,AX=2404h,AX=2408h ———-172402—————————– INT 17 - Shamrock Software NET.24 v3.11+ - TRANSMIT BLOCK, NO HANDSHAKE
AX = 2402h transmit buffer filled (see AX=2403h)
Return: AL = status (see AX=2400h) SeeAlso: AX=2401h,AX=2403h,AX=2404h,AX=2409h ———-172403—————————– INT 17 - Shamrock Software NET.24 v3.11+ - GET STATUS AND TRANSMISSION BUFFER
AX = 2403h
Return: AL = status (see AX=2400h)
CX = number of characters in receive ring buffer DX:BX -> transmit buffer
SeeAlso: AX=2400h,AX=2402h ———-172404—————————– INT 17 - Shamrock Software NET.24 v3.11+ - SEND ACK BLOCK
AX = 2404h BX = target address
Return: AL = status (see AX=2400h) SeeAlso: AX=2402h,AX=2405h ———-172405—————————– INT 17 - Shamrock Software NET.24 v3.11+ - SEND NAK BLOCK
AX = 2405h BX = target address
Return: AL = status (see AX=2400h) SeeAlso: AX=2402h,AX=2404h ———-172406—————————– INT 17 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED RECEIVE
AX = 2406h
Return: AL = status (see AX=2400h) SeeAlso: AX=2407h,AX=240Ah ———-172407—————————– INT 17 - Shamrock Software NET.24 v3.11+ - RECEIVE CHARACTER FROM REMOTE
AX = 2407h
Return: AL = status (see also AX=2400h)
06h end of data DL = received character
SeeAlso: AX=2406h ———-172408—————————– INT 17 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, WITH HANDSHAKE
AX = 2408h
Return: AL = status (see also AX=2400h)
06h end of data CX = number of bytes in receive buffer DX:SI -> receive buffer
SeeAlso: AX=2401h,AX=2405h,AX=2409h ———-172409—————————– INT 17 - Shamrock Software NET.24 v3.11+ - TRANSMIT COMMAND, WITH HANDSHAKE
AX = 2409h BX = target address CX = number of data bytes DL = command code to send DS:SI -> data bytes for command
Return: AL = status (see also AX=2400h)
03h no response 06h remote currently unable to perform command
SeeAlso: AX=2405h,AX=2408h ———-17240A—————————– INT 17 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED TRANSMIT
AX = 240Ah
Return: AL = status (see AX=2400h) SeeAlso: AX=2406h,AX=240Bh,AX=240Ch ———-17240B—————————– INT 17 - Shamrock Software NET.24 v3.11+ - TRANSMIT SINGLE CHARACTER TO REMOTE
AX = 240Bh DL = character to send
Return: AL = status (see also AX=2400h)
03h transmission error 06h write error
SeeAlso: AX=2407h,AX=240Ah,AX=240Ch ———-17240C—————————– INT 17 - Shamrock Software NET.24 v3.11+ - END CHARACTER-ORIENTED TRANSMIT
AX = 240Ch
Return: AL = status (see also AX=2400h)
03h transmission error 06h remote breaks connection
SeeAlso: AX=240Ah,AX=240Bh ———-175000—————————– INT 17 - AX (Japanese AT) PRINTER - SET PRINTER COUNTRY CODE
AX = 5000h BX = country code 0001h USA (English), 0051h Japan
Return: AL = status
00h successful 01h bad country code 02h other error
SeeAlso: AX=5001h,AH=51h,INT 10/AX=5000h,INT 16/AX=5000h ———-175001—————————– INT 17 - AX (Japanese AT) PRINTER - GET PRINTER COUNTRY CODE
AX = 5001h
Return: AL = status
00h successful BX = country code 02h error
SeeAlso: AX=5000h,AH=51h,INT 10/AX=5001h,INT 16/AX=5001h ———-1751——————————- INT 17 - AX (Japanese AT) PRINTER - JIS to Shift-JIS CONVERSION
AH = 51h DX = 2-byte JIS code
Return: DX = shift-JIS value or 0000h on error Note: one of AH=51h and AH=52h converts from JIS (Japanese Industry Standard)
characters to Shift-JIS characters, and the other performs the opposite conversion
SeeAlso: AX=5000h,AH=52h ———-1752——————————- INT 17 - AX (Japanese AT) PRINTER - Shift-JIS to JIS CONVERSION
AH = 52h DX = 2-byte shift-JIS code
Return: DX = JIS code or 0000h on error Note: one of AH=51h and AH=52h converts from JIS (Japanese Industry Standard)
characters to Shift-JIS characters, and the other performs the opposite conversion
SeeAlso: AH=51h ———-1760——————————- INT 17 - FLASHUP.COM - INSTALLATION CHECK
AH = 60h
Return: AL = 60h
DX = CS of resident code
Notes: FLASHUP.COM is part of Flash-Up Windows by The Software Bottling Co.
FLASHUP also hooks INT 10 and receives commands via INT 10/AH=09h,0Ah consisting of an 80h followed by the actual command
SeeAlso: INT 10/AH=09h,INT 10/AH=0Ah ———-1761——————————- INT 17 - SPEEDSCR.COM - INSTALLATION CHECK
AH = 61h
Return: AL = 61h
DX = CS of resident code
Note: SPEEDSCR.COM is by The Software Bottling Co. ———-1781——————————- INT 17 - Alloy NTNX, MW386 - CANCEL JOBS FOR CURRENT USER
AH = 81h AL = 00h (NTNX compatibility mode) CL = number of jobs to cancel
Return: AL = status
00h success 01h..7Fh warning 80h general failure 81h host overloaded (NTNX only) 82h module busy (NTNX only) 83h host busy (NTNX only) 84h re-entry flag set 85h invalid request 86h invalid printer 87h invalid process ID 89h access denied 8Ah option not available for given port type 8Bh option not available for given task type 91h printer busy C2h file not found C3h path not found C4h file access failure
Note: cancels the last CL printouts for the current task SeeAlso: AH=82h ———-1782——————————- INT 17 - Alloy NTNX, MW386 - CANCEL ALL JOBS FOR CURRENT USER
AH = 82h AL = 00h (NTNX compatibility mode)
Return: AL = status (see AH=81h) SeeAlso: AH=81h ———-1783——————————- INT 17 - Alloy NTNX, MW386 - SET NUMBER OF COPIES
AH = 83h AL = mode 00h NTNX compatibility CL = number of copies (max 99, default 1) 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 CX = number of copies
Return: AL = status (see AH=81h) Note: in NTNX compatibility mode, this function only affects LPT1 ———-1784——————————- INT 17 - Alloy NTNX, MW386 - GENERATE PRINT BREAK
AH = 84h AL = mode 00h NTNX compatibility 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4
Note: closes spool file and tells spooler to queue the print job (LPT1 only
under MW386 in NTNX compatibility mode)
———-1784——————————- INT 17 - AX (Japanese AT) PRINTER - OUTPUT CHARACTER WITHOUT CONVERSION
AH = 84h AL = character DX = printer number
Return: AH = printer status (see AH=00h) SeeAlso: AH=00h,AH=85h ———-1785——————————- INT 17 - AX (Japanese AT) PRINTER - ENABLE/DISABLE CHARACTER CONVERSION
AH = 85h AL = new state (00h enabled, 01h disabled)
SeeAlso: AH=84h“AX” ———-1787——————————- INT 17 - Alloy NTNX - SET INDOS POINTER
AH = 87h AL = 00h CX:BX -> buffer for user-written printer drivers
Return: BX,CX destroyed Note: must be executed before the printer is enabled SeeAlso: AH=8Ah ———-1788——————————- INT 17 - Alloy NTNX, MW386 - REMOVE PRINTER FROM SPOOLER
AH = 88h AL = mode 00h NTNX compatibility DX = NTNX printer number 00h host LPT1 01h host LPT2 02h host LPT3 03h host LPT4 04h host COM1 05h host COM2 06h user's logical COM2 07h user's terminal AUX port 08h user's logical COM1 (MW386 only) 01h MW386 DX = MW386 printer number
Return: AH = status (see AH=81h) Note: removes specified printer from the spooler's list of printers SeeAlso: AH=89h,AH=8Bh ———-1789——————————- INT 17 - Alloy NTNX, MW386 - ADD PRINTER TO SPOOLER
AH = 89h AL = mode 00h NTNX compatibility DX = NTNX printer number (see AH=88h) 01h MW386 DX = MW386 printer number
Return: AL = status (see AH=81h) Note: the specified printer is added to the spooler's list of available
printers
SeeAlso: AH=88h,AH=8Bh ———-178A——————————- INT 17 - Alloy NTNX - ACTIVATE USER-WRITTEN PRINTER DRIVER
AH = 8Ah ???
SeeAlso: AH=92h ———-178B——————————- INT 17 - Alloy MW386 - GET PHYSICAL DEVICE NUMBER FROM NAME
AH = 8Bh DS:DX -> ASCIZ printer name
Return: AL = status (see also AH=81h)
00h successful DX = physical device number
SeeAlso: AH=89h,AH=8Ch,INT 14/AH=20h“Alloy” ———-178C——————————- INT 17 - Alloy MW386 - GET DEVICE NAME FROM PHYSICAL DEVICE NUMBER
AH = 8Ch DX = physical device number ES:DI -> 17-byte buffer for ASCIZ device name
Return: AL = status (see also AH=81h)
00h successful ES:DI buffer filled
SeeAlso: AH=88h,AH=8Bh ———-178D——————————- INT 17 - Alloy NTNX,MW386 - RESET SPOOLER
AH = 8Dh AL = 00h
Notes: clears all buffers and resets spooler to boot-up values
MW386 supports this function for compatibility only; it is a NOP
Return: AL = status (see AH=81h) ———-178E——————————- INT 17 - Alloy NTNX - GET INT 28 ENTRY POINT
AH = 8Eh AL = 00h
Return: CX:BX → INT 28 entry point SeeAlso: AH=8Fh ———-178F——————————- INT 17 - Alloy NTNX - GET DOS INTERCEPT ENTRY POINT
AH = 8Fh AL = 00h
Return: CX:BX → DOS intercept routine SeeAlso: AH=8Eh ———-1790——————————- INT 17 - Alloy NTNX, MW386 - SPOOL FILE BY NAME
AH = 90h AL = mode 00h NTNX compatibility DL = printer code (FFh=current) (NTNX, MW386 v1.x only) DH = number of copies (FFh=current) (NTNX, MW386 v1.x only) 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 CX:SI -> ASCIZ pathname
Return: AL = status (see AH=81h) Note: in mode 00h, the file is always sent to logical LPT1 SeeAlso: AH=A0h ———-1791——————————- INT 17 - Alloy NTNX, MW386 - GET USER NUMBER AND CURRENT PRINTER
AH = 91h AL = mode 00h NTNX compatibility Return: CX = user number (00h = host) DX = currently selected printer number (00h-08h) 01h MW386 Return: CX = user number DX = physical dev number of currently selected printer 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 Return: CX = user number DX = physical device number
Return: AL = status (see AH=81h) SeeAlso: AH=8Ch ———-1792——————————- INT 17 - Alloy NTNX - CHECK PRINTER DRIVER
AH = 92h AL = 00h CL = 00h
Return: CL = driver state
01h initialized 80h not initialized AX = status (see AH=81h)
SeeAlso: AH=8Ah ———-1794——————————- INT 17 - Alloy NTNX, MW386 - SELECT PRINTER
AH = 94h AL = mode 00h NTNX compatibility DX = NTNX printer number (see AH=88h) 01h MW386 DX = MW386 printer number 02h MW386 v2+ BX = logical printer number DX = MW386 printer number
Return: AL = status (see AH=81h) Note: modes 00h and 01h affect only logical LPT1 SeeAlso: AH=8Bh,AH=95h ———-1795——————————- INT 17 - Alloy NTNX, MW386 - GET CURRENT PRINTER
AH = 95h AL = mode 00h NTNX compatibility Return: DX = NTNX printer number (see AH=88h) (FFFFh if current printer not compatible with NTNX) 01h MW386 Return: DX = MW386 printer number 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 Return: DX = MW386 printer number (FFFFh = none)
Return: AL = status (see AH=81h) Note: modes 00h and 01h return the printer number of logical LPT1 only SeeAlso: AH=94h ———-1796——————————- INT 17 - Alloy NTNX - SET SERIAL PORT PARAMETERS
AH = 96h AL = 00h
Note: documentation states that this is a NOP, doing only XOR AX,AX before
returning
SeeAlso: INT 14/AH=24h ———-1797——————————- INT 17 - Alloy NTNX, MW386 - SET DATA DRIVEN PRINT BREAK
AH = 97h AL = mode 00h NTNX compatibility 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 CH,CL,DH = three character break sequence DL = subfunction 00h set break string else reset break
Return: AL = status (see AH=81h) Notes: mode 00h affects only logical LPT1
when the break string is encountered, the spool file will be closed and queued for printing automatically the break string is not permanently saved, and will be reset each time MW386 or the user is rebooted
SeeAlso: AH=9Bh ———-1798——————————- INT 17 - Alloy NTNX,MW386 - RESTART PRINTER
AH = 98h AL = 00h DL = printer number (FFh=current)
Return: AL = status
00h successful 01h incorrect printer 02h task not found
Note: MW386 supports this function for compatibility only; it is a NOP ———-1799——————————- INT 17 - Alloy NTNX, MW386 - GET/SET PRINTER MODE
AH = 99h AL = mode 00h NTNX compatibility DL = NTNX printer number (see AH=88h) (FFh = task's current logical LPT1) DH = mode bit 0: get mode if 1, set mode if 0 1: private ("attached") 2: direct instead of spooled 3-7 reserved (0) 01h MW386 DX = MW386 printer number CL = mode (as for DH above)
Return: AL = status (see AH=81h)
DH = mode (bits 1 and 2 set as above) DL = printer owner's user number if not spooled
———-179A——————————- INT 17 - Alloy NTNX,MW386 - SET TAB EXPANSION
AH = 9Ah AL = mode 00h NTNX compatibility DX = NTNX printer number (see AH=88h) (FFFFh = current logical LPT1) 01h MW386 DX = MW386 printer number CL = tab length (00h = no expansion, 01h-63h = spaces per tab)
Return: AL = status (see AH=81h) Note: beginning with MW386 v2.0, tab expansion is set on a per-printer basis
rather than a per-user basis; NTNX and MW386 v1.x ignore DX
SeeAlso: AH=A4h ———-179B——————————- INT 17 - Alloy NTNX,MW386 - SET PRINT BREAK TIMEOUT
AH = 9Bh AL = mode 00h NTNX compatibility CX = timeout value in clock ticks (1/18 sec) (00h = never) 01h MW386 CX = timeout value in seconds (00h = never) 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 CX = timeout value in seconds (00h = never)
Return: AL = status (see AH=81h) Notes: modes 00h and 01h affect only the current logical LPT1
if no data is sent to a printer for the specified amount of time, the spool file will be closed and queued for printing automatically
SeeAlso: AH=97h ———-17A0——————————- INT 17 - Alloy MW386 - SPOOL COPY OF FILE
AH = A0h AL = mode 00h NTNX compatibility DX = ??? (NTNX, MW386 v1.x only) 02h MW386 v2+ BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4 CX:SI -> ASCIZ pathname
Return: AL = status (see AH=81h) Notes: makes a copy of the specified file in the spooler's directory, allowing
the original file to be modified or deleted while the copy is printed in mode 00h, the file is printed on logical LPT1
SeeAlso: AH=90h ———-17A4——————————- INT 17 - Alloy MW386 - ENABLE/DISABLE FORM FEED
AH = A4h AL = new state 00h form feed after end of print job disabled 01h form feed enabled
Return: AL = status (see AH=81h) Note: only affects the current logical LPT1 SeeAlso: AH=9Ah,AH=A6h,INT 7F/AH=05h“NTNX (Host)” ———-17A6——————————- INT 17 - Alloy MW386 - ENABLE/DISABLE BANNER PAGE
AH = A6h AL = new state 00h banner page before print job disabled 01h banner page enabled
Return: AL = status (see AH=81h) Note: only affects the current logical LPT1 SeeAlso: AH=A4h ———-17A7——————————- INT 17 - Alloy MW386 v2+ - GET/SET SPOOL FLAGS
AH = A7h AL = spool flags bit 0: banner page enabled (see AH=A4h) 1: form feed enabled (see AH=A6h) 2-6: reserved (0) 7: set flags if 1, get flags if 0 BX = logical device number 00h-03h = LPT1-LPT4 04h-07h = COM1-COM4
Return: AL = status (see AH=81h) Note: the documentation does not state which register contains the result of
a GET
SeeAlso: AH=A4h,AH=A6h ———-17A8——————————- INT 17 - Alloy MW386 - DEFINE TEMPORARY FILENAME
AH = A8h CX:SI -> ASCIZ filename without extension (max 8 chars)
Return: AL = status (see AH=81h) Note: allows application to specify banner page filename for spool files
collected from the application's printer output
SeeAlso: AH=A9h ———-17A9——————————- INT 17 - Alloy MW386 - CHANGE TEMPORARY SPOOL DRIVE
AH = A9h AL = new spool drive (2=C:,3=D:,etc)
Return: AL = status (see AH=81h) Note: does not remove previous spooling directory since jobs may be pending SeeAlso: AH=A8h ———-17AA——————————- INT 17 - Alloy MW386 v2+ - GET REAL-TIME PRINTER STATUS
AH = AAh AL = mode 00h NTNX DX = NTNX printer number (see AH=88h) 01h MW386 DX = MW386 printer number
Return: AH = instantaneous printer status
00h printer ready 01h not ready 12h off line 13h out of paper 14h general device failure 15h device timeout 16h bad device number
———-17AF——————————- INT 17 - Alloy MW386 - CHECK SPOOLER
AH = AFh
Return: AX = 55AAh if spooler available ———-17C0——————————- INT 17 - PC Magazine PCSpool - GET CONTROL BLOCK ADDRESS
AH = C0h DX = printer port (0-3)
Return: ES:BX → control block (see below) SeeAlso: AH=C1h
Format of control block: Offset Size Description 00h WORD printer number 02h WORD address of printer status port 04h WORD number of first record in queue 06h WORD number of last record in queue 08h DWORD characters already printed 0Ch DWORD number of characters remaining 10h DWORD pointer to dequeue buffer 14h DWORD previous count of characters printed 18h DWORD number of clock ticks taken to print them 1Ch WORD offset of next character to output 1Eh WORD offset of next character to print 20h WORD pointer to spooling queue record 22h BYTE current spooling status 23h BYTE current printer status:
00h OK 01h not ready 02h paused with message 03h paused 04h initializing FEh non-existent port FFh not spooled
24h BYTE current control record type 25h WORD observed printer speed 27h WORD characters to print per service 29h BYTE 01h if disk write needed 2Ah BYTE 01h if queued data should be flushed 2Bh BYTE 01h to update cps status ———-17C1——————————– INT 17 - PC Magazine PCSpool - BUILD PAUSE CONTROL RECORD
AH = C1h DX = printer port (0-3) DS:SI -> ASCIIZ string to save for display
Note: flushes pending writes SeeAlso: AH=C0h,AH=C2h ———-17C2——————————- INT 17 - PC Magazine PCSpool - FLUSH PENDING WRITES
AH = C2h DX = printer port (0-3)
SeeAlso: AH=C3h ———-17C3——————————- INT 17 - PC Magazine PCSpool - CANCEL PRINTER QUEUE (FLUSH ALL QUEUED OUTPUT)
AH = C3h DX = printer port (0-3)
SeeAlso: AH=C2h,AH=C7h ———-17C4——————————- INT 17 - PC Magazine PCSpool - QUERY SPOOLER ACTIVE
AH = C4h
Return: DI = B0BFh
SI = segment
———-17C5——————————- INT 17 - PC Magazine PCSpool - JOB SKIP PRINTER QUEUE
AH = C5h DX = printer port (0-3)
Note: cancels up to the pause record ———-17C6——————————- INT 17 - PC Magazine PCSpool - CHECK PRINTER QUEUE STATUS
AH = C6h DX = printer port (0-3)
Return: AX = 0 printer not active or at pause
= 1 printer busy
———-17C7——————————- INT 17 - PC Magazine PCSpool - CLOSE QUEUE
AH = C7h DX = printer port (0-3)
SeeAlso: AH=C3h ———-17CD00—————————– INT 17 - INSET - EXECUTE COMMAND STRING
AX = CD00h DS:DX -> ASCIZ command string (max 80 bytes)
Return: CX = 07C2h (1986d) Note: user interface menus pop up after last command, unless that command
exits INSET
———-17CD01—————————– INT 17 - INSET - GET IMAGE SIZE
AX = CD01h DS:DX -> ASCIZ name of image file
Return: AX = height in 1/720th inch
BX = width in 1/720th inch CX = 07C2h (1986d)
———-17CD02—————————– INT 17 - INSET - INITIALIZE
AX = CD02h
Return: CX = 07C2h (1986d) Note: all open files are closed and the printer is reset SeeAlso: AX=CD04h ———-17CD03—————————– INT 17 - INSET - EXECUTE INSET MENU WITHIN OVERRIDE MODE
AX = CD03h
Return: CX = 07C2h (1986d) ———-17CD04—————————– INT 17 - INSET - INITIALIZE LINKED MODE
AX = CD04h ES:SI -> FAR routine for linked mode
Return: CX = 07C2h Note: calling sequence for linked-mode routine
AL = 00h send character in BL to printer = 01h send CX bytes from DS:DX to printer = 02h move print head to horizontal starting position of image return code for linked-mode routine: AX = 0000h success = 0001h failure
SeeAlso: AX=CD02h,AX=CD08h ———-17CD05—————————– INT 17 - INSET - START MERGING IMAGE INTO TEXT
AX = CD05h DS:DX -> ASCIZ name of PIX file CX = left margin of text in 1/720th inch
Return: AH = printer type
00h page-oriented (multiple images may be placed side-by-side) 01h line-oriented (use AX=CD06h for vertical paper movement) CX = 07C2h (1986d)
SeeAlso: AX=CD07h ———-17CD06—————————– INT 17 - INSET - GRAPHICS LINE FEED
AX = CD06h
Return: AH = completion status
00h image complete 01h image incomplete CX = 07C2h (1986d)
SeeAlso: AX=CD09h ———-17CD07—————————– INT 17 - INSET - FLUSH GRAPHICS FROM MERGE BUFFER
AX = CD07h
Return: CX = 07C2h SeeAlso: AX=CD05h ———-17CD08—————————– INT 17 - INSET - CANCEL LINK MODE
AX = CD08h
Return: CX = 07C2h SeeAlso: AX=CD04h ———-17CD09—————————– INT 17 - INSET - ALTER TEXT LINE SPACING
AX = CD09h CX = line spacing in 1/720th inch
Return: CX = 07C2h Note: not yet implemented, line spacing is currently fixed at 1/6 inch SeeAlso: AX=CD06h ———-17CD0A—————————– INT 17 - INSET - GET SETUP
AX = CD0Ah DS:DX -> buffer for IN.SET data
Return: CX = 07C2h ———-17CD0B—————————– INT 17 - INSET - START GETTING SCALED IMAGE
AX = CD0Bh DS:SI -> ASCIZ pathname of .PIX file BX = number of bitplanes CX = number of rows in output bitmap DX = number of columns in output bitmap
Return: AX = status
0000h OK FFFFh error
Note: image is returned in strips by repeated calls to AX=CD0Ch ———-17CD0C—————————– INT 17 - INSET - GET NEXT IMAGE STRIP
AX = CD0Ch
Return: AX = status
0000h OK but not complete 0001h OK and image complete FFFFh error DS:SI -> buffer (max 4K) for bit map strip CX = start row DX = number of rows BX = offset in bytes between bit planes
Note: buffer may be overwritten by subsequent calls SeeAlso: AX=CD0Bh ———-17F0——————————- INT 17 - NorthNet Jetstream API - INSTALLATION CHECK
AH = F0h DX = printer port (0-3)
Return: AX = 0001h Jetstream present
else non-Jetstream port
Note: NorthNet Jetstream is a high-performance DMA-driven parallel card able
to drive printers at up to 80000 characters per second
———-17F1——————————- INT 17 - NorthNet Jetstream API - PRINT DATA BUFFER
AH = F1h CX = data buffer length DX = printer port (0-3) DS:SI -> data buffer
Return: AX = status
0000h printer not ready (see also AH=02h) other printing started
SeeAlso: AH=00h,AH=F2h,AH=F3h,AH=F5h ———-17F2——————————- INT 17 - NorthNet Jetstream API - GET PRINT PROGRESS STATUS
AH = F2h DX = printer port (0-3)
Return: AX = status
0000h prior print request finished other number of characters left to print
SeeAlso: AH=02h,AH=F1h,AH=F3h ———-17F3——————————- INT 17 - NorthNet Jetstream API - ABORT PRINT OPERATION
AH = F3h DX = printer port (0-3)
Return: AX = number of unprinted characters due to abort SeeAlso: AH=F1h,AH=F4h ———-17F4——————————- INT 17 - NorthNet Jetstream API - SET COMPLETION (POST) ADDRESS
AH = F4h DX = printer port (0-3) DS:DS -> FAR post address (called with interrupts on)
SeeAlso: AH=F1h,AH=F3h ———-17F5——————————- INT 17 - NorthNet Jetstream API - PRINT DATA BUFFER FROM EXTENDED MEMORY
AH = F5h CX = data buffer length DX = printer port (0-3) DS:SI -> data buffer (32-bit physical address)
Return: AX = status
0000h printer not ready (see also AH=02h) other printing started
SeeAlso: AH=F1h
———-18——————————— INT 18 - START CASSETTE BASIC Note: only PCs produced by IBM contain BASIC in ROM, so the action is
unpredicatable on compatibles; this interrupt often reboots the system, and often has no effect at all
SeeAlso: INT 86“NetBIOS” ———-1800——————————- INT 18 - NEC PC-9800 series - KEYBOARD - GET KEYSTROKE
AH = 00h
Return: AX = keystroke SeeAlso: AH=01h,AH=02h,INT 16/AH=00h ———-1801——————————- INT 18 - NEC PC-9800 series - KEYBOARD - CHECK FOR KEYSTROKE
AH = 01h
Return: ZF set if no keystroke available
ZF clear if keystroke available AX = keystroke
SeeAlso: AH=00h,AH=02h,INT 16/AH=01h ———-1802——————————- INT 18 - NEC PC-9800 series - KEYBOARD - GET SHIFT STATUS
AH = 02h
Return: AL = shift flags SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,INT 16/AH=02h ———-18——————————— INT 18 - NEC PC-9800 series - KEYBOARD
AH = function 03h initialize keyboard 04h key pressed ???
Return: ??? Note: details are not available at this time SeeAlso: INT 16/AH=00h,INT 16/AH=01h,INT 16/AH=02h ———-18——————————— INT 18 - NEC PC-9800 series - VIDEO
AH = function 0Ah set video mode 0Bh get video mode 0Ch start text screen display 0Dh end text screen display 0Eh set single display area 0Fh set multiple display area 10h set cursor shape 11h display cursor 12h terminate cursor 13h set cursor position 14h read font patter 16h initialize text video RAM 1Ah define user character ???
Return: ??? Notes: details are not available at this time
text video RAM is located at segments A000h (characters) and A200h (attributes)
———-19——————————— INT 19 - SYSTEM - BOOTSTRAP LOADER
Reboot the system without clearing memory or restoring interrupt vectors. Because interrupt vectors are preserved, this interrupt usually causes a system hang if any TSRs have hooked vectors from 00h through 1Ch, particularly INT 08.
Usually, the BIOS will try to read sector 1, head 0, track 0 from drive A: to 0000h:7C00h. If this fails, and a hard disk is installed, the BIOS will read sector 1, head 0, track 0 of the first hard disk. This sector should contain a master bootstrap loader and a partition table. After loading the master boot sector at 0000h:7C00h, the master bootstrap loader is given control. It will scan the partition table for an active partition, and will then load the operating system's bootstrap loader (contained in the first sector of the active partition) and give it control.
True IBM PCs issue an INT 18 if neither floppy nor hard disk have a valid boot sector.
Notes: to accomplish a warm boot equivalent to Ctrl-Alt-Del, store 1234h in
0040h:0072h and jump to FFFFh:0000h. For a cold boot equivalent to a reset, store 0000h at 0040h:0072h before jumping. VDISK.SYS hooks this interrupt to allow applications to find out how much extended memory has been used by VDISKs (see below). DOS 3.3+ PRINT hooks INT 19 but does not set up a correct VDISK header block at the beginning of its INT 19 handler segment, thus causing some programs to overwrite extended memory which is already in use. default handler is at F000h:E6F2h for 100% compatible BIOSes
SeeAlso: INT 14/AH=17h,INT 18
Format of VDISK header block (at beginning of INT 19 handler's segment): Offset Size Description 00h 18 BYTEs n/a (for VDISK.SYS, the device driver header) 12h 11 BYTEs signature string “VDISK Vn.m” for VDISK.SYS version n.m 1Dh 15 BYTEs n/a 2Ch 3 BYTEs linear address of first byte of available extended memory
Format of hard disk master boot sector: Offset Size Description 00h 446 BYTEs Master bootstrap loader code 1BEh 16 BYTEs partition record for partition 1 (see below) 1CEh 16 BYTEs partition record for partition 2 1DEh 16 BYTEs partition record for partition 3 1EEh 16 BYTEs partition record for partition 4 1FEh WORD signature, AA55h indicates valid boot block
Format of partition record: Offset Size Description 00h BYTE boot indicator (80h = active partition) 01h BYTE partition start head 02h BYTE partition start sector (bits 0-5) 03h BYTE partition start track (bits 8,9 in bits 6,7 of sector) 04h BYTE operating system indicator (see below) 05h BYTE partition end head 06h BYTE partition end sector (bits 0-5) 07h BYTE partition end track (bits 8,9 in bits 6,7 of sector) 08h DWORD sectors preceding partition 0Ch DWORD length of partition in sectors
Values for operating system indicator: 00h empty 01h DOS 12-bit FAT 02h XENIX root file system 03h XENIX /usr file system (obsolete) 04h DOS 16-bit FAT 05h DOS 3.3+ extended partition 06h DOS 3.31+ Large File System 07h QNX 07h OS/2 HPFS 07h Advanced Unix 08h AIX bootable partition, SplitDrive 09h AIX data partition 09h Coherent 0Ah OPUS 10h OPUS 40h VENIX 80286 50h Disk Manager, read-only partition 51h Novell??? 51h Disk Manager, read/write partition 52h CP/M 52h Microport System V/386 56h GoldenBow VFeature 61h SpeedStor 63h Unix SysV/386, 386/ix 63h Mach, MtXinu BSD 4.3 on Mach 63h GNU HURD 64h Novell NetWare 75h PC/IX 80h Minix v1.1 - 1.4a 81h Minix v1.4b+ 81h Linux 82h Linux Swap partition (planned) 93h Amoeba file system 94h Amoeba bad block table B7h BSDI file system (secondarily swap) B8h BSDI swap partition (secondarily file system) C6h DR-DOS 6.0 LOGIN.EXE-secured partition DBh CP/M, Concurrent CP/M, Concurrent DOS DBh CTOS (Convergent Technologies OS) E1h SpeedStor 12-bit FAT extended partition E4h SpeedStor 16-bit FAT extended partition F2h DOS 3.3+ secondary FEh LANstep FFh Xenix bad block table
———-1A00——————————- INT 1A - TIME - GET SYSTEM TIME
AH = 00h
Return: CX:DX = number of clock ticks since midnight
AL = midnight flag, nonzero if midnight passed since time last read
Notes: there are approximately 18.2 clock ticks per second, 1800B0h per 24 hrs
IBM and many clone BIOSes set the flag for AL rather than incrementing it, leading to loss of a day if two consecutive midnights pass without a request for the time (e.g. if the system is on but idle)
SeeAlso: AH=01h,AH=02h,INT 21/AH=2Ch ———-1A01——————————- INT 1A - TIME - SET SYSTEM TIME
AH = 01h CX:DX = number of clock ticks since midnight
SeeAlso: AH=00h,AH=03h,INT 21/AH=2Dh ———-1A02——————————- INT 1A - TIME - GET REAL-TIME CLOCK TIME (AT,XT286,PS)
AH = 02h
Return: CF clear if successful
CH = hour (BCD) CL = minutes (BCD) DH = seconds (BCD) DL = daylight savings flag (00h standard time, 01h daylight time) CF set on error (i.e. clock not running or in middle of update)
SeeAlso: AH=00h ———-1A03——————————- INT 1A - TIME - SET REAL-TIME CLOCK TIME (AT,XT286,PS)
AH = 03h CH = hour (BCD) CL = minutes (BCD) DH = seconds (BCD) DL = daylight savings flag (00h standard time, 01h daylight time)
SeeAlso: AH=01h ———-1A04——————————- INT 1A - TIME - GET REAL-TIME CLOCK DATE (AT,XT286,PS)
AH = 04h
Return: CF clear if successful
CH = century (BCD) CL = year (BCD) DH = month (BCD) DL = day (BCD) CF set on error
SeeAlso: AH=02h,AH=05h,INT 21/AH=2Ah ———-1A05——————————- INT 1A - TIME - SET REAL-TIME CLOCK DATE (AT,XT286,PS)
AH = 05h CH = century (BCD) CL = year (BCD) DH = month (BCD) DL = day (BCD)
SeeAlso: AH=04h,INT 21/AH=2Bh ———-1A06——————————- INT 1A - TIME - SET ALARM (AT,XT286,PS)
AH = 06h CH = hour (BCD) CL = minutes (BCD) DH = seconds (BCD)
Return: CF set on error (alarm already set or clock stopped for update)
CF clear if successful
Note: the alarm occurs every 24 hours until turned off, invoking INT 4A each
time
SeeAlso: AH=07h,INT 4A ———-1A07——————————- INT 1A - TIME - CANCEL ALARM (AT,XT286,PS)
AH = 07h
Return: alarm disabled Note: does not disable the real-time clock's IRQ SeeAlso: AH=06h,INT 70 ———-1A08——————————- INT 1A - TIME - SET RTC ACTIVATED POWER ON MODE (CONVERTIBLE)
AH = 08h CH = hours in BCD CL = minutes in BCD DH = seconds in BCD
———-1A09——————————- INT 1A - TIME - READ RTC ALARM TIME AND STATUS (CONV,PS30)
AH = 09h
Return: CH = hours in BCD
CL = minutes in BCD DH = seconds in BCD DL = alarm status 00h alarm not enabled 01h alarm enabled but will not power up system 02h alarm will power up system
———-1A0A——————————- INT 1A - TIME - READ SYSTEM-TIMER DAY COUNTER (XT2,PS)
AH = 0Ah
Return: CF set on error
CF clear if successful CX = count of days since Jan 1,1980
SeeAlso: AH=04h,AH=0Bh ———-1A0B——————————- INT 1A - TIME - SET SYSTEM-TIMER DAY COUNTER (XT2,PS)
AH = 0Bh CX = count of days since Jan 1,1980
Return: CF set on error
CF clear if successful
SeeAlso: AH=05h,AH=0Ah ———-1A10——————————- INT 1A - NEC PC-9800 series - PRINTER - INITIALIZE
AH = 10h ???
Return: ??? SeeAlso: AH=11h,AH=12h,INT 17/AH=01h ———-1A11——————————- INT 1A - NEC PC-9800 series - PRINTER - OUTPUT CHARACTER
AH = 11h ???
Return: ??? SeeAlso: AH=10h,AH=12h,INT 17/AH=00h ———-1A12——————————- INT 1A - NEC PC-9800 series - PRINTER - SENSE STATUS
AH = 12h ???
Return: ??? SeeAlso: AH=10h,AH=11h,INT 17/AH=02h ———-1A3601—————————– INT 1A - WORD PERFECT v5.0 Third Party Interface - INSTALLATION CHECK
AX = 3601h
Return: DS:SI = routine to monitor keyboard input, immediately preceded by the
ASCIZ string "WPCORP\0"
Notes: WordPerfect 5.0 will call this interrupt at start up to determine if a
third party product wants to interface with it. The third party product must intercept this interrupt and return the address of a keyboard monitor routine. Before checking for keyboard input, and after every key entered by the user, Word Perfect will call the routine whose address was provided in DS:SI with the following parameters: Entry: AX = key code or 0 BX = WordPerfect state flag Exit: AX = 0 or key code BX = 0 or segment address of buffer with key codes See the "WordPerfect 5.0 Developer's Toolkit" for further information.
SeeAlso: INT 16/AX=5500h ———-1A——————————— INT 1A - SNAP.EXE - API
AH = function (60h-64h,69h-78h) (see individual entries below) AL = number of words on stack (00h-09h or FFh; FFh is same as 00h) STACK: appropriate arguments
Return: AX = status
0000h successful FFFFh failed (invalid function/parameter) STACK unchanged
———-1A6108—————————– INT 1A - SNAP.EXE - ???
AX = 6108h STACK: WORD index of ??? (0000h-0009h) DWORD pointer to ??? WORD ??? DWORD pointer to ??? WORD ??? WORD ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6205—————————– INT 1A - SNAP.EXE - ???
AX = 6205h STACK: WORD index of ??? (0000h-0009h) DWORD pointer to ??? WORD ??? WORD ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6308—————————– INT 1A - SNAP.EXE - ???
AX = 6308h STACK: 8 WORDs ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6405—————————– INT 1A - SNAP.EXE - ???
AX = 6405h STACK: 5 WORDs ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6900—————————– INT 1A - SNAP.EXE - GET RESIDENT DATA SEGMENT
AX = 6900h
Return: AX = value used for DS by resident code Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: AX=6F01h ———-1A6A01—————————– INT 1A - SNAP.EXE - ???
AX = 6A01h STACK: WORD ???
Return: AX = ???
??? STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6B01—————————– INT 1A - SNAP.EXE - SET ???
AX = 6B01h STACK: WORD offset within ??? of ???
Return: STACK unchanged Notes: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP. this call is a NOP if the specified offset is 0000h
———-1A6C04—————————– INT 1A - SNAP.EXE - SET ???
AX = 6C04h STACK: WORD offset within ??? of destination (nonzero) WORD segment of source buffer WORD offset of source buffer WORD number of bytes to copy
Return: AX = offset of byte after last one copied to destination
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: AX=6D04h ———-1A6D04—————————– INT 1A - SNAP.EXE - GET ???
AX = 6D04h STACK: WORD offset within ??? of source WORD segment of destination buffer WORD offset of destination buffer WORD number of bytes to copy
Return: AX = offset of byte after last one copied from source
buffer filled STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: AX=6C04h ———-1A6E01—————————– INT 1A - SNAP.EXE - SET ???
AX = 6E01h STACK: WORD new value for ???
Return: AX = old value of ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A6F01—————————– INT 1A - SNAP.EXE - INSTALLATION CHECK
AX = 6F01h STACK: WORD 0000h
Return: AX = status
0000h SNAP is resident other SNAP not present STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP, and is required by PCVENUS (a network shell). The combination of SNAP and PCVENUS allows the use of the Andrew File System as one or more networked drives.
SeeAlso: AX=6900h,AX=7400h ———-1A7002—————————– INT 1A - SNAP.EXE - SET ???
AX = 7002h STACK: WORD index of ??? (0000h-0009h) WORD new value for ???
Return: AX = status
0000h successful FFFFh failed (top word on stack not in range 00h-09h) STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: AX=7101h ———-1A7101—————————– INT 1A - SNAP.EXE - GET ???
AX = 7101h STACK: WORD index of ??? (0000h-0009h)
Return: AX = ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: AX=7002h ———-1A7202—————————– INT 1A - SNAP.EXE - ???
AX = 7202h STACK: WORD index of ??? (0000h-0009h) WORD offset within resident data segment of ???
Return: AX = ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A7302—————————– INT 1A - SNAP.EXE - ???
AX = 7302h STACK: WORD index of ??? (0000h-0009h) WORD offset within resident data segment of ???
Return: AX = ???
??? STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A7400—————————– INT 1A - SNAP.EXE - GET VERSION
AX = 7400h
Return: AX = version (AH=major, AL=minor) Notes: this call is only valid if SNAP is installed
SNAP.EXE is a program written by IBM&CMU included with the Carnegie Mellon University customized version of FTP, Inc.'s PC/TCP.
SeeAlso: INT 1A/AX=6F01h ———-1A75——————————- INT 1A - SNAP.EXE - ???
AH = 75h AL = ???
Return: AX = ??? (0000h) Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A77——————————- INT 1A - SNAP.EXE - ???
AH = 77h AL = ??? (at least 01h) STACK: WORD ??? ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A7802—————————– INT 1A - SNAP.EXE - ???
AX = 7802h STACK: WORD ??? WORD ???
Return: ???
STACK unchanged
Note: SNAP.EXE is a program written by IBM&CMU included with the Carnegie
Mellon University customized version of FTP, Inc.'s PC/TCP.
———-1A7F——————————- INT 1A - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???
AH = 7Fh ???
Return: ??? SeeAlso: AH=80h,AH=83h,AH=85h ———-1A80——————————- INT 1A - PCjr - SET UP SOUND MULTIPLEXOR
AH = 80h AL = 00h source is 8253 channel 2 01h source is cassette input 02h source is I/O channel "Audio IN" 03h source is sound generator chip
SeeAlso: AH=7Fh,AH=83h ———-1A8100—————————– INT 1A - Tandy 2500, Tandy 1000L series - DIGITAL SOUND - INSTALLATION CHECK
AX = 8100h
Return: AH > 80h if supported ———-1A83——————————- INT 1A - Tandy 2500, Tandy 1000L series - START PLAYING DIGITAL SOUND
AH = 83h AL = volume (0=lowest, 7=highest) CX = number of bytes to play DX = time between sound samples (multiples of 273 nanoseconds) ES:BX -> sound data (array of 8-bit PCM samples)
Return: ??? Notes: this call returns immediately while the sound plays in the
background The sound data pointed to by ES:BX probably shouldn't cross a 64k boundary. The BIOS appears to call INT 15/AX=91FBh when the sound device underflows to allow another INT 1A/AH=83h for seamless playing of long sounds.
SeeAlso: AH=84h,INT 15/AH=91h ———-1A84——————————- INT 1A - Tandy 2500, Tandy 1000L series - STOP PLAYING DIGITAL SOUND
AH = 84h
Return: ??? SeeAlso: AH=83h,AH=85h ———-1A85——————————- INT 1A - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???
AH = 85h ???
Return: ??? SeeAlso: AH=7Fh,AH=83h ———-1AA0——————————- INT 1A - Disk Spool II v2.07 - INSTALLATION CHECK
AH = A0h
Return: AH = B0h if installed
AL = pending INT 1A/AH=D0h subfunction if nonzero??? ES = code segment ES:BX -> name of current spool file ES:SI -> current despool file CL = 00h despooler is disabled = 41h despooler is enabled CH = 00h spooler is disabled = 41h spooler is enabled DL = 00h despooler is currently active printing a file = 41h despooler is standing by DH = 00h ??? = 41h ??? DI = 0000h ??? 0001h ???
Note: Disk Spool II is a shareware disk-based print spooler by Budget
Software Company
SeeAlso: AH=ABh,AH=C0h,AH=D0h ———-1AAB——————————- INT 1A - Disk Spool II v1.83 - INSTALLATION CHECK
AH = ABh
Return: AH = BAh if installed
AL = pending INT 1A/AH=ADh subfunction if nonzero??? ES = code segment ES:BX -> name of current spool file ES:SI -> current despool file CL = 00h despooler is disabled = 41h despooler is enabled CH = 00h spooler is disabled = 41h spooler is enabled DL = 00h despooler is currently active printing a file = 41h despooler is standing by DH = 00h ??? = 41h ??? DI = 0000h ??? 0001h ???
Note: Disk Spool II is a shareware disk-based print spooler by Budget
Software Company
SeeAlso: AH=A0h,AH=ACh,AH=ADh ———-1AAC——————————- INT 1A - Disk Spool II v1.83 - INSTALLATION CHECK
AH = ACh
Return: (see AH=ABh) Note: this function is identical to AH=ABh SeeAlso: AH=A0h,AH=ABh,AH=ADh ———-1AAD——————————- INT 1A - Disk Spool II v1.83 - FUNCTION CALLS
AH = ADh AL = function code 02h enable spooler only 03h enable the despooler 04h disable the despooler 08h inhibit popup menu 09h enable popup menu 0Ah ??? 0Bh disable the spooler 0Ch start despooler after last successfully printed document??? 0Dh start despooler at the exact point where it last left off??? 0Eh pop up the menu 0Fh ??? 11h ??? 14h ??? 15h ??? 16h ??? 17h ??? 18h ??? 19h ??? 20h clear file pointed to by the despooler??? 21h ??? 22h ??? 23h ??? 30h ???
Return: AH = 00h if successful SeeAlso: AH=ABh ———-1AC0——————————- INT 1A - Disk Spool II v2.07 - ALTERNATE INSTALLATION CHECK
AH = C0h
Return: (see AH=A0h) Note: this call is identical to AH=A0h SeeAlso: AH=A0h,AH=ABh,AH=D0h ———-1AD0——————————- INT 1A - Disk Spool II v2.07 - FUNCTION CALLS
AH = D0h AL = function code 01h enable spooler and despooler 02h enable spooler only 03h enable despooler at beginning of file 04h disable the despooler 05h disable the despooler and spooler 06h clear the spool file 08h inhibit the popup menu 09h enable the popup menu 0Ah ??? (called by Disk Spool's INT 21 handler) 0Bh disable the spooler 0Ch start despooler after last successfully printed document 0Dh start despooler at the exact point where it last left off 0Eh pop up the menu 0Fh ??? 11h start new spool file??? (called by Disk Spool's INT 21 handler when a program terminates) 14h ??? 15h delete despool file and reset ??? 16h ??? (writes something to unknown file) 17h ??? (writes something to despool file, then reads something else and ???) 18h ??? (reads something from despool file, and then ???) 19h ??? (creates/truncates spool file) 20h clear file pointed to by the despooler 21h ??? (writes something to unknown file) 22h ??? (writes something to spool file if spooler/despooler using same file) 23h ??? (opens/creates unknown file, then ???) 30h ??? 31h ??? 32h beep 33h append CRLF to spool file??? 34h ??? 35h ??? 36h ??? 37h append CRLF to spool file and start a new spool file??? 38h ??? 51h ??? (called by Disk Spool's INT 21 handler) 52h ??? (called by Disk Spool's INT 21 handler) 57h ???
SeeAlso: AH=A0h,AH=ADh ———-1AF7——————————- INT 1A - RighTime v1.1 - TEMPORARILY DISABLE
AH = F7h
Notes: RighTime is a TSR by G.T. Becker which continuously adjusts the system
time to correct for clock drift any AH value from F0h-F7h or F9h-FEh will perform this function in version 1.1, but F7h is the function called by transient portion
SeeAlso: AH=F8h,AH=FFh“RighTime” ———-1AF8——————————- INT 1A - RighTime v1.1 - ENABLE
AH = F8h
Notes: RighTime is a TSR by G.T. Becker which continuously adjusts the system
time to correct for clock drift RighTime is TeSseRact-compatible (see INT 2F/AX=5453h) and modifies its TeSseRact program identifier based on its current state: "RighTime" when enabled, "RighTim"F7h when disabled.
SeeAlso: AH=F7h,AH=FFh“RighTime” ———-1AFE——————————- INT 1A - AT&T 6300 - READ TIME AND DATE
AH = FEh
Return: BX = day count (0 = Jan 1, 1984)
CH = hour CL = minute DH = second DL = hundredths
SeeAlso: AH=FFh“AT&T”,INT 21/AH=2Ah,INT 21/AH=2Ch ———-1AFF——————————- INT 1A - AT&T 6300 - SET TIME AND DATE
AH = FFh BX = day count (0 = Jan 1, 1984) CH = hour CL = minute DH = second DL = hundredths
Return: ??? SeeAlso: AH=FEh,INT 21/AH=2Bh,INT 21/AH=2Dh ———-1AFF——————————- INT 1A - RighTime v1.1 - PERMANENTLY DISABLE
AH = FFh
Notes: RighTime is a TSR by G.T. Becker which continuously adjusts the system
time to correct for clock drift upon being permanently disabled, RighTime closes the file handle referencing its executable (which is updated with time correction information every two minutes while RighTime is enabled).
———-1B——————————— INT 1B - KEYBOARD - CONTROL-BREAK HANDLER
called when INT 09 determines that Control-Break has been pressed
Note: normally points to a short routine in DOS which sets the Ctrl-C flag,
thus invoking INT 23h the next time DOS checks for Ctrl-C.
SeeAlso: INT 23
called on each clock tick by the INT 08 handler
preferred interrupt to chain when a program needs to be invoked regularly not available on NEC 9800-series PCs
SeeAlso: INT 08
Note: default parameter table at F000h:F0A4h for 100% compatible BIOSes
SeeAlso: INT 10/AH=00h
Format of video parameters:
Offset | Size | Description |
---|---|---|
00h | 16 BYTEs | 6845 register values for modes 00h and 01h |
10h | 16 BYTEs | 6845 register values for modes 02h and 03h |
20h | 16 BYTEs | 6845 register values for modes 04h and 05h |
30h | 16 BYTEs | 6845 register values for modes 06h and 07h |
40h | WORD | bytes in video buffer for modes 00h and 01h |
42h | WORD | bytes in video buffer for modes 02h and 03h |
44h | WORD | bytes in video buffer for modes 04h and 05h |
46h | WORD | bytes in video buffer for modes 06h and 07h |
48h | 8 BYTEs | columns on screen for each of modes 00h through 07h |
50h | 8 BYTEs | CRT controller mode bytes for each of modes 00h through 07h |
Note: default parameter table at F000h:EFC7h for 100% compatible BIOSes
SeeAlso: INT 13/AH=0Fh,INT 41
Format of diskette parameter table:
Offset | Size | Description |
---|---|---|
00h | BYTE | first specify byte bits * 7-4: step rate * 3-0: head unload time (0Fh = 240 ms) |
01h | BYTE | second specify byte * bits 7-1: head load time (01h = 4 ms) * 0: non-DMA mode (always 0) |
02h | BYTE | delay until motor turned off (in clock ticks) |
03h | BYTE | bytes per sector (00h = 128, 01h = 256, 02h = 512, 03h = 1024) |
04h | BYTE | sectors per track |
05h | BYTE | length of gap between sectors (2Ah for 5.25“, 1Bh for 3.5”) |
06h | BYTE | data length (ignored if bytes-per-sector field nonzero) |
07h | BYTE | gap length when formatting (50h for 5.25“, 6Ch for 3.5”) |
08h | BYTE | format filler byte (default F6h) |
09h | BYTE | head settle time in milliseconds |
0Ah | BYTE | motor start time in 1/8 seconds |
points at 1024 bytes of graphics data, 8 bytes for each character 80h-FFh
graphics data for characters 00h-7Fh stored at F000h:FA6Eh in 100% compatible BIOSes
SeeAlso: INT 10/AX=5000h,INT 43
AX = process ID of other process BX -> message CX = 1 send 2 receive 3 send&receive
the message contains the system call number (numbered as in V7 Unix™) and the call parameters
CS = PSP segment
Return: never
(see notes for INT 21/AH=00h)
SeeAlso: INT 21/AH=00h,INT 21/AH=4Ch