Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
back2root:ibm-pc-ms-dos:interrupts:old:ms_interrupt_list-17-20 [2023/01/05 04:01] – supprimée - modification externe (Unknown date) 127.0.0.1 | back2root:ibm-pc-ms-dos:interrupts:old:ms_interrupt_list-17-20 [2023/01/05 04:01] (Version actuelle) – créée - modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== MSDOS - Interrupt List 17h-20h ====== | ||
+ | |||
+ | ===== INT 17 ===== | ||
+ | |||
+ | ----------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" | ||
+ | ----------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/ | ||
+ | ----------1702------------------------------- | ||
+ | INT 17 - PRINTER - GET STATUS | ||
+ | AH = 02h | ||
+ | DX = printer number (00h-02h) | ||
+ | Return: AH = printer status (see AH=00h) | ||
+ | SeeAlso: AH=01h, | ||
+ | ----------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/ | ||
+ | ----------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, | ||
+ | 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, | ||
+ | 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/ | ||
+ | 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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------172406----------------------------- | ||
+ | INT 17 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED RECEIVE | ||
+ | AX = 2406h | ||
+ | Return: AL = status (see AX=2400h) | ||
+ | SeeAlso: AX=2407h, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------17240A----------------------------- | ||
+ | INT 17 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED TRANSMIT | ||
+ | AX = 240Ah | ||
+ | Return: AL = status (see AX=2400h) | ||
+ | SeeAlso: AX=2406h, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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 also hooks INT 10 and receives commands via INT 10/ | ||
+ | consisting of an 80h followed by the actual command | ||
+ | SeeAlso: INT 10/ | ||
+ | ----------1761------------------------------- | ||
+ | INT 17 - SPEEDSCR.COM - INSTALLATION CHECK | ||
+ | AH = 61h | ||
+ | Return: AL = 61h | ||
+ | DX = CS of resident code | ||
+ | Note: | ||
+ | ----------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: | ||
+ | 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: | ||
+ | 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, | ||
+ | ----------1785------------------------------- | ||
+ | INT 17 - AX (Japanese AT) PRINTER - ENABLE/ | ||
+ | AH = 85h | ||
+ | AL = new state (00h enabled, 01h disabled) | ||
+ | SeeAlso: AH=84h" | ||
+ | ----------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: | ||
+ | SeeAlso: AH=89h, | ||
+ | ----------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' | ||
+ | printers | ||
+ | SeeAlso: AH=88h, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------178D------------------------------- | ||
+ | INT 17 - Alloy NTNX,MW386 - RESET SPOOLER | ||
+ | AH = 8Dh | ||
+ | AL = 00h | ||
+ | Notes: | ||
+ | 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, | ||
+ | ----------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: | ||
+ | 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, | ||
+ | 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 (" | ||
+ | 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' | ||
+ | ----------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: | ||
+ | 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: | ||
+ | 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: | ||
+ | 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/ | ||
+ | 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, | ||
+ | ----------17A6------------------------------- | ||
+ | INT 17 - Alloy MW386 - ENABLE/ | ||
+ | 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, | ||
+ | ----------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: | ||
+ | collected from the application' | ||
+ | SeeAlso: AH=A9h | ||
+ | ----------17A9------------------------------- | ||
+ | INT 17 - Alloy MW386 - CHANGE TEMPORARY SPOOL DRIVE | ||
+ | AH = A9h | ||
+ | AL = new spool drive (2=C:, | ||
+ | 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 OK | ||
+ | 01h not ready | ||
+ | 02h paused with message | ||
+ | 03h paused | ||
+ | 04h initializing | ||
+ | FEh non-existent port | ||
+ | FFh not spooled | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------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: | ||
+ | SeeAlso: AH=C0h, | ||
+ | ----------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, | ||
+ | ----------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: | ||
+ | ----------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: | ||
+ | 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, | ||
+ | ----------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, | ||
+ | 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: | ||
+ | SeeAlso: AX=CD0Bh | ||
+ | ----------17F0------------------------------- | ||
+ | INT 17 - NorthNet Jetstream API - INSTALLATION CHECK | ||
+ | AH = F0h | ||
+ | DX = printer port (0-3) | ||
+ | Return: AX = 0001h Jetstream present | ||
+ | | ||
+ | Note: | ||
+ | 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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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 | ||
+ | |||
+ | ===== INT 18 ===== | ||
+ | |||
+ | ----------18--------------------------------- | ||
+ | INT 18 - START CASSETTE BASIC | ||
+ | Note: only PCs produced by IBM contain BASIC in ROM, so the action is | ||
+ | unpredicatable on compatibles; | ||
+ | system, and often has no effect at all | ||
+ | SeeAlso: INT 86" | ||
+ | ----------1800------------------------------- | ||
+ | INT 18 - NEC PC-9800 series - KEYBOARD - GET KEYSTROKE | ||
+ | AH = 00h | ||
+ | Return: AX = keystroke | ||
+ | SeeAlso: AH=01h, | ||
+ | ----------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, | ||
+ | ----------1802------------------------------- | ||
+ | INT 18 - NEC PC-9800 series - KEYBOARD - GET SHIFT STATUS | ||
+ | AH = 02h | ||
+ | Return: AL = shift flags | ||
+ | SeeAlso: AH=00h, | ||
+ | ----------18--------------------------------- | ||
+ | INT 18 - NEC PC-9800 series - KEYBOARD | ||
+ | AH = function | ||
+ | 03h initialize keyboard | ||
+ | 04h key pressed | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | Note: | ||
+ | SeeAlso: INT 16/ | ||
+ | ----------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: | ||
+ | text video RAM is located at segments A000h (characters) and A200h | ||
+ | (attributes) | ||
+ | |||
+ | ===== INT 19 ===== | ||
+ | |||
+ | ----------19--------------------------------- | ||
+ | INT 19 - SYSTEM - BOOTSTRAP LOADER | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | to 0000h: | ||
+ | read sector 1, head 0, track 0 of the first hard disk. This sector should | ||
+ | | ||
+ | | ||
+ | | ||
+ | then load the operating system' | ||
+ | | ||
+ | |||
+ | 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, | ||
+ | 0040h:0072h and jump to FFFFh: | ||
+ | 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). | ||
+ | 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/ | ||
+ | |||
+ | Format of VDISK header block (at beginning of INT 19 handler' | ||
+ | Offset Size Description | ||
+ | 00h 18 BYTEs n/a (for VDISK.SYS, the device driver header) | ||
+ | 12h 11 BYTEs signature string " | ||
+ | 1Dh 15 BYTEs n/a | ||
+ | | ||
+ | |||
+ | 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, | ||
+ | |||
+ | Format of partition record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | 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 | ||
+ | |||
+ | ===== INT 1A ===== | ||
+ | |||
+ | ----------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: | ||
+ | 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, | ||
+ | ----------1A01------------------------------- | ||
+ | INT 1A - TIME - SET SYSTEM TIME | ||
+ | AH = 01h | ||
+ | CX:DX = number of clock ticks since midnight | ||
+ | SeeAlso: AH=00h, | ||
+ | ----------1A02------------------------------- | ||
+ | INT 1A - TIME - GET REAL-TIME CLOCK TIME (AT, | ||
+ | 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, | ||
+ | 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, | ||
+ | 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, | ||
+ | ----------1A05------------------------------- | ||
+ | INT 1A - TIME - SET REAL-TIME CLOCK DATE (AT, | ||
+ | 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, | ||
+ | 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, | ||
+ | AH = 07h | ||
+ | Return: alarm disabled | ||
+ | Note: does not disable the real-time clock' | ||
+ | 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, | ||
+ | ----------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, | ||
+ | ----------1A10------------------------------- | ||
+ | INT 1A - NEC PC-9800 series - PRINTER - INITIALIZE | ||
+ | AH = 10h | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | SeeAlso: AH=11h, | ||
+ | ----------1A11------------------------------- | ||
+ | INT 1A - NEC PC-9800 series - PRINTER - OUTPUT CHARACTER | ||
+ | AH = 11h | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | SeeAlso: AH=10h, | ||
+ | ----------1A12------------------------------- | ||
+ | INT 1A - NEC PC-9800 series - PRINTER - SENSE STATUS | ||
+ | AH = 12h | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | SeeAlso: AH=10h, | ||
+ | ----------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 " | ||
+ | Notes: | ||
+ | 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 " | ||
+ | SeeAlso: INT 16/AX=5500h | ||
+ | ----------1A--------------------------------- | ||
+ | INT 1A - SNAP.EXE - API | ||
+ | AH = function (60h-64h, | ||
+ | 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/ | ||
+ | STACK unchanged | ||
+ | ----------1A6108----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 6108h | ||
+ | STACK: | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A6205----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 6205h | ||
+ | STACK: | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A6308----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 6308h | ||
+ | STACK: 8 WORDs ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A6405----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 6405h | ||
+ | STACK: 5 WORDs ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 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: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | SeeAlso: AX=6F01h | ||
+ | ----------1A6A01----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 6A01h | ||
+ | STACK: | ||
+ | Return: AX = ??? | ||
+ | ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A6B01----------------------------- | ||
+ | INT 1A - SNAP.EXE - SET ??? | ||
+ | AX = 6B01h | ||
+ | STACK: | ||
+ | Return: | ||
+ | Notes: | ||
+ | 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 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: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | SeeAlso: AX=6D04h | ||
+ | ----------1A6D04----------------------------- | ||
+ | INT 1A - SNAP.EXE - GET ??? | ||
+ | AX = 6D04h | ||
+ | STACK: | ||
+ | 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: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | SeeAlso: AX=6C04h | ||
+ | ----------1A6E01----------------------------- | ||
+ | INT 1A - SNAP.EXE - SET ??? | ||
+ | AX = 6E01h | ||
+ | STACK: | ||
+ | Return: AX = old value of ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 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: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP, and is | ||
+ | required by PCVENUS (a network shell). | ||
+ | PCVENUS allows the use of the Andrew File System as one or more | ||
+ | networked drives. | ||
+ | SeeAlso: AX=6900h, | ||
+ | ----------1A7002----------------------------- | ||
+ | INT 1A - SNAP.EXE - SET ??? | ||
+ | AX = 7002h | ||
+ | STACK: | ||
+ | WORD new value for ??? | ||
+ | Return: AX = status | ||
+ | 0000h successful | ||
+ | FFFFh failed (top word on stack not in range 00h-09h) | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | SeeAlso: AX=7101h | ||
+ | ----------1A7101----------------------------- | ||
+ | INT 1A - SNAP.EXE - GET ??? | ||
+ | AX = 7101h | ||
+ | STACK: | ||
+ | Return: AX = ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | SeeAlso: AX=7002h | ||
+ | ----------1A7202----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 7202h | ||
+ | STACK: | ||
+ | WORD offset within resident data segment of ??? | ||
+ | Return: AX = ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A7302----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 7302h | ||
+ | STACK: | ||
+ | WORD offset within resident data segment of ??? | ||
+ | Return: AX = ??? | ||
+ | ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 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 | ||
+ | | ||
+ | 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: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A77------------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AH = 77h | ||
+ | AL = ??? (at least 01h) | ||
+ | STACK: | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | Mellon University customized version of FTP, Inc.'s PC/TCP. | ||
+ | ----------1A7802----------------------------- | ||
+ | INT 1A - SNAP.EXE - ??? | ||
+ | AX = 7802h | ||
+ | STACK: | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 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, | ||
+ | ----------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, | ||
+ | ----------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' | ||
+ | boundary. | ||
+ | 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, | ||
+ | ----------1A85------------------------------- | ||
+ | INT 1A - Tandy 2500, Tandy 1000L series - DIGITAL SOUND??? | ||
+ | AH = 85h | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | SeeAlso: AH=7Fh, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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, | ||
+ | ----------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' | ||
+ | 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' | ||
+ | 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/ | ||
+ | 20h clear file pointed to by the despooler | ||
+ | 21h ??? (writes something to unknown file) | ||
+ | 22h ??? (writes something to spool file if spooler/ | ||
+ | same file) | ||
+ | 23h ??? (opens/ | ||
+ | 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' | ||
+ | 52h ??? (called by Disk Spool' | ||
+ | 57h ??? | ||
+ | SeeAlso: AH=A0h, | ||
+ | ----------1AF7------------------------------- | ||
+ | INT 1A - RighTime v1.1 - TEMPORARILY DISABLE | ||
+ | AH = F7h | ||
+ | Notes: | ||
+ | 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, | ||
+ | ----------1AF8------------------------------- | ||
+ | INT 1A - RighTime v1.1 - ENABLE | ||
+ | AH = F8h | ||
+ | Notes: | ||
+ | time to correct for clock drift | ||
+ | RighTime is TeSseRact-compatible (see INT 2F/ | ||
+ | TeSseRact program identifier based on its current state: " | ||
+ | when enabled, " | ||
+ | SeeAlso: AH=F7h, | ||
+ | ----------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" | ||
+ | ----------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/ | ||
+ | ----------1AFF------------------------------- | ||
+ | INT 1A - RighTime v1.1 - PERMANENTLY DISABLE | ||
+ | AH = FFh | ||
+ | Notes: | ||
+ | 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). | ||
+ | |||
+ | ===== INT 1B ===== | ||
+ | |||
+ | ----------1B--------------------------------- | ||
+ | INT 1B - KEYBOARD - CONTROL-BREAK HANDLER | ||
+ | | ||
+ | Note: | ||
+ | thus invoking INT 23h the next time DOS checks for Ctrl-C. | ||
+ | SeeAlso: INT 23 | ||
+ | |||
+ | ===== INT 1C ===== | ||
+ | |||
+ | ==== INT 1C - TIME - SYSTEM TIMER TICK ==== | ||
+ | |||
+ | called on each clock tick by the INT 08 handler | ||
+ | |||
+ | <WRAP round box> | ||
+ | preferred interrupt to chain when a program needs to be invoked regularly | ||
+ | not available on NEC 9800-series PCs | ||
+ | </ | ||
+ | |||
+ | SeeAlso: INT 08 | ||
+ | |||
+ | ===== INT 1D ===== | ||
+ | |||
+ | ==== INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES ==== | ||
+ | |||
+ | Note: | ||
+ | |||
+ | SeeAlso: INT 10/AH=00h | ||
+ | |||
+ | Format of video parameters: | ||
+ | |||
+ | ^ Offset | ||
+ | | 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 | | ||
+ | |||
+ | ===== INT 1E ===== | ||
+ | |||
+ | ==== INT 1E - SYSTEM DATA - DISKETTE PARAMETERS ==== | ||
+ | |||
+ | Note: | ||
+ | |||
+ | SeeAlso: INT 13/ | ||
+ | |||
+ | Format of diskette parameter table: | ||
+ | |||
+ | ^ Offset | ||
+ | | 00h | BYTE | first specify byte bits\\ | ||
+ | | 01h | BYTE | second specify byte\\ | ||
+ | | 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 | ||
+ | |||
+ | ===== INT 1F ===== | ||
+ | |||
+ | ==== INT 1F - SYSTEM DATA - 8x8 GRAPHICS FONT ==== | ||
+ | |||
+ | points at 1024 bytes of graphics data, 8 bytes for each character 80h-FFh | ||
+ | |||
+ | <WRAP round box> | ||
+ | graphics data for characters 00h-7Fh stored at F000h:FA6Eh in 100% compatible BIOSes | ||
+ | </ | ||
+ | |||
+ | SeeAlso: INT 10/ | ||
+ | |||
+ | ===== INT 20 ===== | ||
+ | |||
+ | ==== INT 20 - Minix - SEND/ | ||
+ | < | ||
+ | AX = process ID of other process | ||
+ | BX -> message | ||
+ | CX = 1 send | ||
+ | 2 receive | ||
+ | 3 send& | ||
+ | </ | ||
+ | |||
+ | <WRAP round box> | ||
+ | the message contains the system call number (numbered as in V7 Unix(tm)) and the call parameters | ||
+ | </ | ||
+ | |||
+ | ==== INT 20 - DOS 1+ - TERMINATE PROGRAM ==== | ||
+ | < | ||
+ | CS = PSP segment | ||
+ | </ | ||
+ | < | ||
+ | Return: never | ||
+ | </ | ||
+ | |||
+ | <WRAP round box> | ||
+ | (see notes for INT 21/AH=00h) | ||
+ | </ | ||
+ | |||
+ | SeeAlso: INT 21/ | ||