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-51-60 [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-51-60 [2023/01/05 04:01] (Version actuelle) – créée - modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== MSDOS - Interrupt List 51h-60h ====== | ||
+ | |||
+ | ===== INT 51 ====== | ||
+ | |||
+ | |||
+ | ==== INT 51 - through 53 - IRQ1-IRQ3 relocated by DESQview ==== | ||
+ | |||
+ | Note: this is the default location for older versions; see INT 50" | ||
+ | for details of interrupt relocation | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 51 - through 53 - IRQ1-IRQ3 relocated by IBM 3278 emulation control program ==== | ||
+ | |||
+ | SeeAlso: INT 50"IBM 3278", | ||
+ | |||
+ | ==== INT 51 - through 53 - IRQ1-IRQ3 relocated by OS/2 v1.x ==== | ||
+ | |||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 53 - ??? - API ==== | ||
+ | |||
+ | BX = function | ||
+ | 0000h ??? | ||
+ | AX = ??? | ||
+ | Return: AX = ??? | ||
+ | 0004h ??? | ||
+ | 0009h ??? | ||
+ | 0015h | ||
+ | AX = ??? | ||
+ | DX = ??? | ||
+ | 0017h | ||
+ | Return: ??? | ||
+ | Notes: the installation check consists of looking for the signature " | ||
+ | immediately prior to the interrupt handler | ||
+ | the above calls are made by Show Partner F/X v3.6 (see INT 10/AH=53h) | ||
+ | |||
+ | ===== INT 54 ===== | ||
+ | |||
+ | ==== INT 54 - through 57 - IRQ4-IRQ7 relocated by DESQview ==== | ||
+ | |||
+ | Note: this is the default location for older versions; see INT 50" | ||
+ | for details of interrupt relocation | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 54 - through 57 - IRQ4-IRQ7 relocated by IBM 3278 emulation control program ==== | ||
+ | |||
+ | SeeAlso: INT 51"IBM 3278" | ||
+ | |||
+ | ==== INT 54 - through 57 - IRQ4-IRQ7 relocated by OS/2 v1.x ==== | ||
+ | |||
+ | SeeAlso: INT 51" | ||
+ | |||
+ | ===== INT 58 ===== | ||
+ | |||
+ | ==== INT 58 - IRQ8 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 58 - IRQ0 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 08 | ||
+ | |||
+ | ===== INT 59 ====: | ||
+ | |||
+ | ==== INT 59 - IRQ9 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 59 - IRQ1 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 09 | ||
+ | ----------59--------------------------------- | ||
+ | ==== INT 59 - GSS Computer Graphics Interface (GSS*CGI) ==== | ||
+ | |||
+ | DS:DX -> block of 5 array pointers | ||
+ | Return: CF set on error | ||
+ | AX = error code | ||
+ | CF clear if successful | ||
+ | AX = return code | ||
+ | Note: INT 59 is the means by which GSS*CGI language bindings communicate with | ||
+ | GSS*CGI device drivers and the GSS*CGI device driver controller. | ||
+ | also used by the IBM Graphic Development Toolkit | ||
+ | |||
+ | ===== INT 5A ===== | ||
+ | |||
+ | ==== INT 5A - IRQ10 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 5A - IRQ2 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0A | ||
+ | |||
+ | ==== INT 5A - Cluster adapter BIOS entry address ==== | ||
+ | |||
+ | ??? | ||
+ | |||
+ | ==== INT 5B - IRQ11 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT50" | ||
+ | |||
+ | ===== INT 5B ===== | ||
+ | |||
+ | ==== INT 5B - IRQ3 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0B | ||
+ | |||
+ | ==== INT 5B - Used by cluster adapter ==== | ||
+ | |||
+ | |||
+ | ==== INT 5B - AT&T Starlan Extended NetBIOS (variable length names) ==== | ||
+ | |||
+ | ES:BX -> Network Control Block (see below) | ||
+ | Return: AL = status (see INT 5C) | ||
+ | SeeAlso: INT 5C | ||
+ | |||
+ | Format of Network Control Block | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 0Ah 16 BYTEs ncb_callname | ||
+ | 1Ah 16 BYTEs ncb_name | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | Note: fields 00h-31h are the same as for a standard NetBIOS NCB (see INT 5C) | ||
+ | |||
+ | Values for ncb_command field same as for INT 5C, except | ||
+ | 70h send net Break | ||
+ | |||
+ | ==== INT 5B - Microsoft Network Transport Layer Interface ==== | ||
+ | |||
+ | Note: used by MS-NET for executing network commands | ||
+ | SeeAlso: INT 5C" | ||
+ | |||
+ | ==== INT 5B - used by Alloy NTNX ==== | ||
+ | |||
+ | |||
+ | ==== INT 5B - ISOLAN Multi Protocol Software ==== | ||
+ | |||
+ | ES:BX -> Transfer Control Block | ||
+ | Return: AL - status | ||
+ | Note: this software interface allows multiple protocols/ | ||
+ | to access a BICC 411x network card | ||
+ | |||
+ | Format of Transfer Control Block: | ||
+ | Offset Type Description | ||
+ | | ||
+ | B3h Status | ||
+ | F2h Activate | ||
+ | F3h Deactivate | ||
+ | F4h Send Data | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 0Bh 16 BYTEs local network address | ||
+ | 1Bh 16 BYTEs remote network address | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ===== INT 5C ===== | ||
+ | |||
+ | ==== INT 5C - IRQ12 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 5C - IRQ4 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0C | ||
+ | |||
+ | ==== INT 5C - NetBIOS INTERFACE ==== | ||
+ | |||
+ | ES:BX -> network control block (NCB) (see below) | ||
+ | Return: AL = status | ||
+ | 00h successful | ||
+ | 01h bad buffer size | ||
+ | 03h invalid NETBIOS command | ||
+ | 05h timeout | ||
+ | 06h receive buffer too small | ||
+ | 07h No-ACK command failed | ||
+ | 08h bad session number | ||
+ | 09h LAN card out of memory | ||
+ | 0Ah session closed | ||
+ | 0Bh command has been cancelled | ||
+ | 0Dh name already exists | ||
+ | 0Eh local name table full | ||
+ | 0Fh name still in use, can't delete | ||
+ | 11h local session table full | ||
+ | 12h remote PC not listening | ||
+ | 13h bad NCB_NUM field | ||
+ | 14h no answer to CALL or no such remote | ||
+ | 15h name not in local name table | ||
+ | 16h duplicate name | ||
+ | 17h bad delete | ||
+ | 18h abnormal end | ||
+ | 19h name error, multiple identical names in use | ||
+ | 1Ah bad packet | ||
+ | 21h network card busy | ||
+ | 22h too many commands queued | ||
+ | 23h bad LAN card number | ||
+ | 24h command finished while cancelling | ||
+ | 26h command can't be cancelled | ||
+ | 30h name defined by another process (OS/2) | ||
+ | 34h NetBIOS environment not defined, must issue reset (OS/2) | ||
+ | 35h required operating system resources exhausted (OS/2) | ||
+ | 36h maximum applications exceeded (OS/2) | ||
+ | 37h no SAPs available for NetBIOS (OS/2) | ||
+ | 38h requested resources not available (OS/2) | ||
+ | 40h Lana System Error | ||
+ | 41h Lana Remote Hot Carrier | ||
+ | 42h Lana Local Hot Carrier | ||
+ | 43h Lana No Carrier Detected | ||
+ | 44h unusual network condition | ||
+ | 45h-4Fh hardware error | ||
+ | 50h adapter malfunction | ||
+ | FFh NetBIOS busy (command pending) | ||
+ | Note: Sytek PCnet card uses DMA 3. | ||
+ | SeeAlso: INT 2A/ | ||
+ | |||
+ | Format of Network Control Block: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 0Ah 16 BYTEs remote system to call | ||
+ | 1Ah 16 BYTEs network name of local machine | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 00h-03h IBM NetBIOS specs | ||
+ | F0h-FFh Eicon NABios interface (see also INT 7B" | ||
+ | | ||
+ | 32h 14 BYTEs reserved for network card | ||
+ | |||
+ | Values for command code field in NCB (or with 80h for non-waiting call): | ||
+ | 10h start session with NCB_NAME name (call) | ||
+ | 11h listen for call | ||
+ | 12h end session with NCB_NAME name (hangup) | ||
+ | 14h send data via NCB_LSN | ||
+ | 15h receive data from a session | ||
+ | 16h receive data from any session | ||
+ | 17h send multiple data buffers | ||
+ | 20h send unACKed message (datagram) | ||
+ | 21h receive datagram | ||
+ | 22h send broadcast datagram | ||
+ | 23h receive broadcast datagram | ||
+ | 30h add name to name table | ||
+ | 31h delete name from name table | ||
+ | 32h reset adapter card and tables | ||
+ | 33h get adapter status (see structure " | ||
+ | 34h status of all sessions for name (see structure " | ||
+ | 35h cancel | ||
+ | 36h add group name to name table | ||
+ | 48h send data and receive data (LAN Manager NETBEUI.DOS) | ||
+ | 70h unlink from IBM remote program (no F0h function) | ||
+ | 71h send data without ACK | ||
+ | 72h send multiple buffers without ACK | ||
+ | 72h UngermannBass Register (conflicts with above function) | ||
+ | 73h UngermannBass SendNmc | ||
+ | 74h UngermannBass Callniu | ||
+ | 75h UngermannBass Calladdr | ||
+ | 76h UngermannBass Listenaddr | ||
+ | 77h UngermannBass SendPkt | ||
+ | 78h find name | ||
+ | 78h UngermannBass RcvPkt (conflicts with above function) | ||
+ | 79h token-ring protocol trace | ||
+ | 79h UngermannBass SendAttn (conflicts with above function) | ||
+ | 7Ah UngermannBass RcvAttn | ||
+ | 7Bh UngermannBass Listenniu | ||
+ | 7Ch UngermannBass RcvRaw | ||
+ | 7Dh UngermannBass SendNmc2 | ||
+ | |||
+ | Format of structure " | ||
+ | Offset Size Description | ||
+ | 00h 16 BYTEs " | ||
+ | | ||
+ | | ||
+ | |||
+ | Format of structure " | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 3Ch 16 name structures as_name | ||
+ | |||
+ | Format of structure " | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Format of structure " | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | 01h listen pending | ||
+ | 02h call pending | ||
+ | 03h session established | ||
+ | 04h hangup pending | ||
+ | 05h hangup done | ||
+ | 06h session aborted | ||
+ | 02h 16 BYTEs local name | ||
+ | 12h 16 BYTEs remote name | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 5C - TOPS INTERFACE ==== | ||
+ | |||
+ | ES:BX -> Network Control Block | ||
+ | Note: TOPS card uses DMA 1, 3 or none. | ||
+ | |||
+ | ==== INT 5C - ATALK.SYS - AppleTalk INTERFACE ==== | ||
+ | |||
+ | DX:BX -> control block (see below) | ||
+ | Return: none | ||
+ | Notes: this driver can use any interrupt from 5Ch to 70h | ||
+ | the signature ' | ||
+ | handler; this serves as the installation check | ||
+ | |||
+ | Format of AppleTalk control block: | ||
+ | Offset Size Description | ||
+ | | ||
+ | 01h " | ||
+ | 02h " | ||
+ | 03h " | ||
+ | 04h " | ||
+ | 05h " | ||
+ | 06h " | ||
+ | 07h " | ||
+ | 10h " | ||
+ | 11h " | ||
+ | 12h " | ||
+ | 13h " | ||
+ | 14h " | ||
+ | 20h " | ||
+ | 21h " | ||
+ | 22h " | ||
+ | 23h " | ||
+ | 24h " | ||
+ | 30h " | ||
+ | 31h " | ||
+ | 32h " | ||
+ | 33h " | ||
+ | 34h " | ||
+ | 35h " | ||
+ | 36h " | ||
+ | 37h " | ||
+ | 38h " | ||
+ | 40h " | ||
+ | 41h " | ||
+ | 42h " | ||
+ | 43h " | ||
+ | 44h " | ||
+ | 45h " | ||
+ | 46h " | ||
+ | 47h " | ||
+ | 48h " | ||
+ | 50h " | ||
+ | 51h " | ||
+ | 52h " | ||
+ | 53h " | ||
+ | 54h " | ||
+ | 55h " | ||
+ | 56h " | ||
+ | 57h " | ||
+ | 58h " | ||
+ | 59h " | ||
+ | 5Ah " | ||
+ | 5Bh " | ||
+ | 5Ch " | ||
+ | 5Dh " | ||
+ | 5Eh " | ||
+ | 5Fh " | ||
+ | 60h " | ||
+ | 61h " | ||
+ | 70h " | ||
+ | 71h " | ||
+ | 72h " | ||
+ | 73h " | ||
+ | 74h " | ||
+ | 75h " | ||
+ | 76h " | ||
+ | 77h " | ||
+ | 78h " | ||
+ | 79h " | ||
+ | 7Ah " | ||
+ | 7Bh " | ||
+ | |||
+ | or with the following flags | ||
+ | 8000h start command then return | ||
+ | 4000h wait for interrupt service to complete | ||
+ | | ||
+ | 0000h success (already initialized if func 01h) | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---if general func (01h,03h), control block continues: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---if DDP function (20h-24h), control block continues: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---if Name Binding Protocol (30h-34h), control block continues: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---if AppleTalk Transaction Protocol (42h), control block continues: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | bit 5: exactly one transaction | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Format of Name Binding Protocol Name-to-Address binding entries for NBP_LOOKUP: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 05h 99 BYTEs name | ||
+ | |||
+ | Format of BDS entries: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 5C - IBM 802.2 INTERFACE (LLC) ==== | ||
+ | |||
+ | ES:BX -> CCB | ||
+ | Return: none | ||
+ | |||
+ | Format of CCB: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 5C - $25 LAN - INSTALLATION CHECK ==== | ||
+ | |||
+ | Notes: | ||
+ | future versions are supposed to have the signature " | ||
+ | bytes preceding the INT 5C handler | ||
+ | |||
+ | ==== INT 5C - $25 LAN - CHECK IF CONNECTION ALIVE ==== | ||
+ | |||
+ | AH = 04h | ||
+ | AL = COM port (0 = default) | ||
+ | CX = wait count in character times (should be at least 100) | ||
+ | Return: ZF set if link alive | ||
+ | |||
+ | ==== INT 5D - IRQ13 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 5D - IRQ5 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0D,INT 5C" | ||
+ | |||
+ | ===== INT 5E ===== | ||
+ | |||
+ | ==== INT 5E - IRQ14 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 5E - IRQ6 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0E,INT 5D" | ||
+ | |||
+ | ===== INT 5F ===== | ||
+ | |||
+ | ==== INT 5F - IRQ15 relocated by DESQview 2.26+ ==== | ||
+ | |||
+ | Note: this is the default, but other INTs may be used (see INT 50" | ||
+ | SeeAlso: INT 50" | ||
+ | |||
+ | ==== INT 5F - IRQ7 relocated by DoubleDOS ==== | ||
+ | |||
+ | SeeAlso: INT 0F,INT 5E" | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET VIDEO MODE ==== | ||
+ | |||
+ | AH = 00h | ||
+ | AL = video mode | ||
+ | 07h text, system manager compliant | ||
+ | 20h 240x128 mono graphics, system manager compliant | ||
+ | 87h text, not system manager compliant | ||
+ | A0h 240x128 mono graphics, not system manager compliant | ||
+ | Note: the defaults after setting the mode to graphics are (0,0) logical | ||
+ | origin, full-screen clip region, (0,0) pen location, pen color 1, | ||
+ | pixel replacement FORCE, line type and fill mask all bits set | ||
+ | SeeAlso: INT 0F"HP 95LX", | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET FILL MASK ==== | ||
+ | |||
+ | AH = 01h | ||
+ | ES:DI -> 8-byte fill mask | ||
+ | Note: the fill mask represents an 8x8 pixel box and is repeated as necessary | ||
+ | when drawing filled rectangles; it is always aligned with the byte | ||
+ | boundaries of video memory, regardless of the actual boundaries of | ||
+ | the rectangle | ||
+ | SeeAlso: AH=02h | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFORMATION ==== | ||
+ | |||
+ | AH = 02h | ||
+ | ES:DI -> graphics info record (see below) | ||
+ | Return: DX:AX -> filled graphics info record (for return to high-level langs) | ||
+ | Format of graphics info record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN ==== | ||
+ | |||
+ | AH = 03h | ||
+ | CX = column | ||
+ | DX = row | ||
+ | SeeAlso: AH=04h | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET CLIP REGION ==== | ||
+ | |||
+ | AH = 04h | ||
+ | CX = left-most column | ||
+ | DX = top-most row | ||
+ | SI = right-most column | ||
+ | DI = bottom-most row | ||
+ | SeeAlso: AH=03h | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - DRAW RECTANGLE ==== | ||
+ | |||
+ | AH = 05h | ||
+ | AL = fill type | ||
+ | 00h outline, using current line type and color | ||
+ | 01h solid, using current color | ||
+ | 02h pattern, using current fill mask and color | ||
+ | DX,CX = row,column of other corner of rectangle | ||
+ | Note: the rectangle is drawn starting at the current pen position | ||
+ | SeeAlso: AH=01h, | ||
+ | |||
+ | ==== INT 5F - HP 95LX GRAPHICS PRIMITIVES - DRAW LINE ==== | ||
+ | |||
+ | AH = 06h | ||
+ | DX,CX = row,column of end point | ||
+ | Note: the line is drawn starting at the current pen position | ||
+ | SeeAlso: AH=05h, | ||
+ | ----------5F07------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - PLOT POINT | ||
+ | AH = 07h | ||
+ | DX,CX = row,column of point | ||
+ | Note: also sets pen position to the specified point | ||
+ | SeeAlso: AH=06h, | ||
+ | ----------5F08------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - MOVE PEN | ||
+ | AH = 08h | ||
+ | DX,CX = row,column of new pen position | ||
+ | SeeAlso: AH=07h, | ||
+ | ----------5F09------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET PEN COLOR | ||
+ | AH = 09h | ||
+ | AL = new color (00h = white, 01h = black) | ||
+ | SeeAlso: AH=08h, | ||
+ | ----------5F0A------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE | ||
+ | AH = 0Ah | ||
+ | AL = new replacement rule | ||
+ | 00h force | ||
+ | 01h AND | ||
+ | 02h OR | ||
+ | 03h XOR | ||
+ | SeeAlso: AH=01h, | ||
+ | ----------5F0B------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - SET LINE TYPE | ||
+ | AH = 0Bh | ||
+ | CX = new line type | ||
+ | Note: the line type specifies 16 bits which are repeated over and over while | ||
+ | drawing the pixels of a line | ||
+ | SeeAlso: AH=09h, | ||
+ | ----------5F0C------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - GET PIXEL | ||
+ | AH = 0Ch | ||
+ | DX,CX = row,column of pixel to read | ||
+ | Return: AX = pixel color | ||
+ | SeeAlso: AH=07h | ||
+ | ----------5F0D------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - GET IMAGE | ||
+ | AH = 0Dh | ||
+ | DX,CX = row,column of first corner | ||
+ | BP,SI = row,column of second corner | ||
+ | ES:DI -> image buffer (see below) | ||
+ | Note: the specified corners are included in the saved image | ||
+ | SeeAlso: AH=0Eh | ||
+ | |||
+ | Format of image buffer: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | requires (WIDTH+7)/8 * HEIGHT bytes | ||
+ | ----------5F0E------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - PUT IMAGE | ||
+ | AH = 0Eh | ||
+ | AL = replacement rule | ||
+ | bit 2: invert image before applying rule | ||
+ | bits 1-0: 00 force | ||
+ | 01 AND | ||
+ | 10 OR | ||
+ | 11 XOR | ||
+ | DX,CX = row,column of top left corner | ||
+ | ES:DI -> image buffer (see AH=0Dh) | ||
+ | Note: if the specified image does not fit completely on the screen, this call | ||
+ | does nothing | ||
+ | SeeAlso: AH=0Dh | ||
+ | ----------5F0F------------------------------- | ||
+ | INT 5F - HP 95LX GRAPHICS PRIMITIVES - WRITE TEXT | ||
+ | AH = 0Fh | ||
+ | AL = rotate flag (if nonzero, rotate 90 degrees counter-clockwise) | ||
+ | DX,CX = row,column of first character' | ||
+ | ES:DI -> ASCIZ text | ||
+ | |||
+ | ===== INT 60 - reserved for user interrupt ===== | ||
+ | |||
+ | |||
+ | ==== INT 60 - VIRUS - "Zero Bug" - INSTALLATION CHECK ==== | ||
+ | |||
+ | <WRAP round box> | ||
+ | The "Zero Bug" virus hooks this vector. | ||
+ | |||
+ | It considers itself installed if offset 103h of the handler' | ||
+ | </ | ||
+ | |||
+ | SeeAlso: INT 32,INT 61" | ||
+ | |||
+ | ==== INT 60 - Adaptec and OMTI controllers - DRIVE 0 DATA ==== | ||
+ | |||
+ | SeeAlso: INT 61" | ||
+ | |||
+ | <WRAP round box> | ||
+ | this vector stores the first four bytes of the parameter table for hard disk 0 | ||
+ | |||
+ | these vectors are used by the following Adaptec controllers: | ||
+ | * ACB 2370 A/B/C, ACB 2372 A/B/C, ACB 2333 A/B, 2322B-8, 2322B-16 | ||
+ | |||
+ | these vectors are NOT used by the following Adaptec controllers: | ||
+ | * ACB 2310, ACB 2312, ACB 2320D, ACB 2322D | ||
+ | </ | ||
+ | |||
+ | ==== INT 60 - Atari Portfolio - USER INTERFACE FUNCTIONS ==== | ||
+ | |||
+ | <WRAP round box> | ||
+ | supplies a number of subfunctions which perform such functions as drawing boxes and menus, and provide input line editing | ||
+ | </ | ||
+ | |||
+ | SeeAlso: INT 61" | ||
+ | |||
+ | ==== INT 60 - PC-IPC API ==== | ||
+ | |||
+ | < | ||
+ | STACK: | ||
+ | Return: STACK: | ||
+ | </ | ||
+ | |||
+ | <WRAP round box> | ||
+ | PC-IPC is a shareware TSR by Donnelly Software Engineering which allows communication between independent programs | ||
+ | |||
+ | INT 60 is the default, any interrupt vector may be used by specifying the vector on the commandline | ||
+ | </ | ||
+ | |||
+ | Format of parameter block: | ||
+ | ^ Offset | ||
+ | | 00h | ||
+ | | 02h | ||
+ | | 04h | ||
+ | | 06h | ||
+ | | 08h | ||
+ | | 0Ah | ||
+ | | 0Ch | ||
+ | |||
+ | Values of command code: | ||
+ | | 01h | " | ||
+ | | 02h | " | ||
+ | | 03h | " | ||
+ | | 04h | " | ||
+ | | 06h | " | ||
+ | | 07h | " | ||
+ | | 08h | " | ||
+ | | 09h | " | ||
+ | | 0Ah | " | ||
+ | | 0Bh | " | ||
+ | |||
+ | Values for error code: | ||
+ | | 00h | no error | | ||
+ | | 01h | invalid command or parameter | ||
+ | | 02h | only process 0 can install/ | ||
+ | | 03h | process can not install/ | ||
+ | | 04h | IPC is not enabled | ||
+ | | 05h | process can not disable IPC | | ||
+ | | 06h | invalid destination process ID | | ||
+ | | 07h | invalid sending process ID | | ||
+ | | 08h | invalid data destination | ||
+ | | 09h | no more process IDs available | ||
+ | | 0Ah | can not relinquish that process ID | | ||
+ | | 0Bh | message space is full | | ||
+ | | 0Ch | IPC is not installed | ||
+ | |||
+ | ==== INT 60 - Tangram Arbiter - API ==== | ||
+ | |||
+ | Notes: | ||
+ | identified by string " | ||
+ | the interrupt handler address | ||
+ | Arbiter makes a PC disk look like a slow disk over an SNA link to an | ||
+ | IBM mainframe | ||
+ | |||
+ | ==== INT 60 U - INTRSPY/ | ||
+ | |||
+ | Notes: | ||
+ | The installation check is to | ||
+ | a) determine that the handler is an IRET instruction | ||
+ | b) the signature 0Dh " | ||
+ | If INTRSPY is installed, the DWORD immediately after the IRET stores | ||
+ | its entry point. | ||
+ | INTRSPY is a script-driven debugger included with the book | ||
+ | _Undocumented_DOS_. | ||
+ | |||
+ | Call INTRSPY entry point with: | ||
+ | AH = function | ||
+ | 00h ??? | ||
+ | 01h set current directory (for use in reporting) | ||
+ | ES:DI -> counted string containing directory name (max 79 char) | ||
+ | 02h set name of script file | ||
+ | ES:DI -> counted string containing file name (max 79 chars) | ||
+ | 03h set script arguments | ||
+ | ES:DI -> counted string containing arguments (max 79 chars) | ||
+ | 04h get directory set with function 01h | ||
+ | ES:DI -> 80-byte buffer for directory name | ||
+ | 05h get name of script file | ||
+ | ES:DI -> 80-byte buffer for script filename | ||
+ | 06h get script arguments | ||
+ | ES:DI -> 80-byte buffer for script arguments | ||
+ | 07h get ??? | ||
+ | CL = 00h-15h specifies what to get | ||
+ | ES:DI -> WORD to be set with desired value on return | ||
+ | 08h get ??? | ||
+ | ES:DI -> WORD to be set with returned value | ||
+ | 09h get ??? | ||
+ | ES:DI -> WORD to be set with returned value | ||
+ | 0Bh store code for interrupt handler??? | ||
+ | ES:DI -> data | ||
+ | CX = number of bytes | ||
+ | 0Ch ??? | ||
+ | ES:DI -> ??? | ||
+ | 0Dh get ??? | ||
+ | ES:DI -> BYTE to be set with returned value | ||
+ | 0Eh set ??? flag | ||
+ | 0Fh clear ??? flag | ||
+ | 10h ??? | ||
+ | Return: AL = 04h or 05h if failed | ||
+ | 11h ??? | ||
+ | Return: AL = 05h if failed | ||
+ | 12h get ??? | ||
+ | ES:DI -> buffer | ||
+ | Return: CX = number of bytes returned in buffer | ||
+ | 13h ??? | ||
+ | Return: AH = 00h | ||
+ | AL = status | ||
+ | 00h successful | ||
+ | 01h invalid function | ||
+ | 02h ??? | ||
+ | 03h ??? | ||
+ | 04h ??? | ||
+ | 05h ??? | ||
+ | |||
+ | |||
+ | |||
+ | INT 60 U - PC/370 v4.2 - ??? | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | Notes: | ||
+ | this is the default interrupt, however the documentation includes | ||
+ | instructions for patching the system for another interrupt | ||
+ | SeeAlso: INT 2F/ | ||
+ | |||
+ | ==== INT 60 - JPI TopSPEED Modula-2 v1 - PROCEDURE ENTRY TRAP ==== | ||
+ | |||
+ | SeeAlso: INT 61" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - PC/TCP Packet Driver Specification ==== | ||
+ | |||
+ | <WRAP round box 80%> | ||
+ | The handler for the interrupt will start with a 3-byte jump instruction, | ||
+ | |||
+ | To find the interrupt being used by the driver, an application should scan through interrupt vectors 60h to 80h (20h through FFh for v1.10+ of the specification) until it finds one with the "PKT DRVR" string. | ||
+ | |||
+ | AH values of 80h to FFh have been reserved for user-defined additions. | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - WAIT FOR EVENT ==== | ||
+ | |||
+ | DI = 0100h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to event record (see below) | ||
+ | Return: event record filled | ||
+ | STACK unchanged | ||
+ | Note: this call will timeout after about 500ms | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | Format of event record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | 00h no events | ||
+ | 01h keystroke available | ||
+ | 02h Ctrl-Break | ||
+ | 03h reactivation (always follows deactivation event) | ||
+ | 04h about to deactivate (sleep) | ||
+ | next get-event call will not return until reactivated | ||
+ | 05h forced application termination | ||
+ | 06h 1-2-3 bridge service request (only given to 1-2-3) | ||
+ | 07h request to grow | ||
+ | 08h request to shrink | ||
+ | 09h application' | ||
+ | 0Ah daily chance to set an alarm | ||
+ | 0Bh system date or time has been changed | ||
+ | | ||
+ | or grow/shrink amount in paragraphs or 0000h if error | ||
+ | or alarm expiration data | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | or pointer to time change structure (see below) | ||
+ | Note: if the System Manager is waiting the conclusion of a bridge service | ||
+ | or grow/shrink call and the event type field is set to FFFFh on | ||
+ | entry, the SysMgr will resume | ||
+ | |||
+ | Format of time change structure: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------60----DI0101----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CHECK FOR EVENT | ||
+ | DI = 0101h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to event record (INT 60/ | ||
+ | Return: event record filled | ||
+ | STACK unchanged | ||
+ | Note: this call returns immediately if no event is available | ||
+ | SeeAlso: INT 60/DI=0100h | ||
+ | ----------60----DI0102----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0102h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0104----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES | ||
+ | DI = 0104h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to bridge record (see below) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | Format of bridge record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | 00h test | ||
+ | 01h get range | ||
+ | 02h " | ||
+ | 03h " | ||
+ | 04h " | ||
+ | 05h " | ||
+ | 06h recalculate | ||
+ | 07h get cursor | ||
+ | 08h set cursor | ||
+ | 09h redisplay | ||
+ | 0Ah cell type | ||
+ | 0Bh " | ||
+ | | ||
+ | 04h 16 BYTEs ASCII range name | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------60----DI0105----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FLUSH KEYBOARD BUFFER | ||
+ | DI = 0105h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - YIELD CPU ==== | ||
+ | |||
+ | DI = 0106h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - " | ||
+ | |||
+ | DI = 0107h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SETUP MENU ==== | ||
+ | |||
+ | DI = 0200h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to menu data (see below) | ||
+ | DWORD pointer to ??? | ||
+ | WORD number of items on menu??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | Format of menu data: | ||
+ | Offset Size Description | ||
+ | 00h 80 BYTEs first line of menu text | ||
+ | 50h 80 BYTEs second line of menu text | ||
+ | A0h 80 BYTEs third line of menu text | ||
+ | | ||
+ | | ||
+ | | ||
+ | F6h 20 BYTEs which line each of 20 keywords is located on | ||
+ | 10Ah 20 BYTEs offset of each of 20 keywords within its line | ||
+ | 11Eh 20 BYTEs length of each of 20 keywords | ||
+ | 132h 20 BYTEs first letter of each of 20 keywords | ||
+ | 146h 20 WORDs offsets of long prompts for each of 20 keywords | ||
+ | ----------60----DI0201----------------------- | ||
+ | ==== INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU ==== | ||
+ | |||
+ | DI = 0201h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to menu data (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0202----------------------- | ||
+ | ==== INT 60 u - HP 95LX System Manager - " | ||
+ | |||
+ | DI = 0202h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to menu data (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0203----------------------- | ||
+ | ==== INT 60 u - HP 95LX System Manager - REMOVE MENU ==== | ||
+ | |||
+ | DI = 0203h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to menu data (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE ==== | ||
+ | |||
+ | DI = 0204h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to menu data (see INT 60/ | ||
+ | WORD keystroke | ||
+ | DWORD pointer to WORD to receive selection number | ||
+ | Return: buffer for selection number filled with index of selected menu item or | ||
+ | FFFFh if no final selection yet | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU ==== | ||
+ | |||
+ | DI = 0205h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file menu structure (see below) | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | DWORD pointer to wildcard filespec for initial file list | ||
+ | WORD row??? | ||
+ | WORD column??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | Format of file menu structure: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---the remaining fields are initialized by the System Manager--- | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Format of file list workspace entry: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 09h 13 BYTEs ASCIZ filename | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - DISPLAY/ | ||
+ | |||
+ | DI = 0206h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file menu structure (see INT 60/ | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0205h | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE ==== | ||
+ | |||
+ | DI = 0207h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file menu structure (see INT 60/ | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | WORD keystroke | ||
+ | Return: AX = status | ||
+ | 0000h keystroke processed, call INT 60/DI=0206h to refresh menu | ||
+ | 0001h redisplay application area before refreshing menu | ||
+ | 0002h user confirmed selection, filename is in edit record' | ||
+ | 0003h user aborted menu | ||
+ | FFFBh bad filename | ||
+ | FFFCh bad directory | ||
+ | FFFDh bad drive | ||
+ | FFFEh unknown keystroke | ||
+ | FFFFh keystroke known but invalid in current context | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - REMOVE FILE SELECTION MENU ==== | ||
+ | |||
+ | DI = 0208h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file menu structure (see INT 60/ | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - DISPLAY STRING ==== | ||
+ | |||
+ | DI = 0300h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD starting row (-3 is topmost, 0 is first user line) | ||
+ | WORD starting column | ||
+ | DWORD pointer to string | ||
+ | WORD length of string | ||
+ | WORD display style: 0000h normal, 0001h reverse video | ||
+ | WORD " | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - CLEAR PORTION OF SCREEN ==== | ||
+ | |||
+ | DI = 0301h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD starting row (-3 is topmost, 0 is first user line) | ||
+ | WORD starting column | ||
+ | WORD number of rows | ||
+ | WORD number of columns | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCROLL PORTION OF SCREEN ==== | ||
+ | |||
+ | DI = 0302h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD starting row??? | ||
+ | WORD starting column??? | ||
+ | WORD height of scroll region??? | ||
+ | WORD width of scroll region??? | ||
+ | WORD number of lines to scroll region??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0301h | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCREEN SERVICE " | ||
+ | |||
+ | DI = 0303h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCREEN SERVICE " | ||
+ | |||
+ | DI = 0304h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCREEN SERVICE " | ||
+ | |||
+ | DI = 0305h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCREEN SERVICE " | ||
+ | |||
+ | DI = 0307h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - SCREEN SERVICE " | ||
+ | |||
+ | DI = 0308h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0309----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE | ||
+ | DI = 0309h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD new mode | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI030A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE | ||
+ | DI = 030Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI030B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET CURSOR POSITION | ||
+ | DI = 030Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD row (-3 is topmost, 0 is first non-reserved line) | ||
+ | WORD column | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | display | ||
+ | SeeAlso: INT 10/ | ||
+ | ----------60----DI0400----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0400h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to edit record (see below) | ||
+ | DWORD pointer to string to be edited | ||
+ | WORD initial length of string being edited | ||
+ | WORD maximum length of edited string | ||
+ | WORD row of edit field | ||
+ | WORD leftmost column of edit field | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | Format of edit record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | bit 0: tab handling | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 12h 80 BYTEs workspace for editing | ||
+ | | ||
+ | 66h 36 BYTEs multi-line edit record (see below) | ||
+ | | ||
+ | |||
+ | Format of multi-line edit record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------60----DI0401----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - EDIT ON TOP LINE | ||
+ | DI = 0401h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | DWORD pointer to string to edit | ||
+ | WORD initial length of string being edited | ||
+ | WORD maximum length of edited string | ||
+ | DWORD pointer to first line of prompt | ||
+ | WORD length of first line | ||
+ | DWORD pointer to second line of prompt | ||
+ | WORD length of second line | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0402----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD | ||
+ | DI = 0402h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0403----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK | ||
+ | DI = 0403h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to edit record (see INT 60/ | ||
+ | WORD keystroke | ||
+ | DWORD pointer to WORD buffer for result code | ||
+ | Return: result code buffer filled with 0001h if editing complete | ||
+ | STACK unchanged | ||
+ | ----------60----DI0404----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0404h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0405----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0405h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0406----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0406h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0407----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0407h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0408----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0408h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0409----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0409h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI040A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 040Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI040B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 040Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0500----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - OPEN FILE | ||
+ | DI = 0500h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see below) | ||
+ | DWORD pointer to filename | ||
+ | WORD length of filename | ||
+ | WORD ??? | ||
+ | WORD suppress buffering if nonzero | ||
+ | Return: AX = status | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | Format of file state record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | bit 0: buffer contents valid | ||
+ | bit 1: buffer is dirty and must be written | ||
+ | bit 2: unbuffered I/O | ||
+ | bit 3: file is a character device | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ---buffered I/O only--- | ||
+ | 12h 512 BYTEs file buffer | ||
+ | ----------60----DI0501----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE | ||
+ | DI = 0501h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to filename | ||
+ | WORD length of filename | ||
+ | WORD ??? | ||
+ | WORD suppress buffering if nonzero | ||
+ | Return: AX = status | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0500h | ||
+ | ----------60----DI0502----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CREATE NEW FILE | ||
+ | DI = 0502h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to filename | ||
+ | WORD length of filename | ||
+ | WORD ??? | ||
+ | WORD suppress buffering if nonzero | ||
+ | Return: AX = status | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0503----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CREATE OR TRUNCATE FILE | ||
+ | DI = 0503h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to filename | ||
+ | WORD length of filename | ||
+ | WORD ??? | ||
+ | WORD suppress buffering if nonzero | ||
+ | Return: AX = status | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0502h | ||
+ | ----------60----DI0504----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - READ FROM FILE | ||
+ | DI = 0504h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to data buffer | ||
+ | WORD number of bytes to read | ||
+ | DWORD pointer to WORD in which to return actual bytes read | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0505h | ||
+ | ----------60----DI0505----------------------- | ||
+ | INT 60 - HP 95LX System Manager - WRITE TO FILE | ||
+ | DI = 0505h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to data | ||
+ | WORD length of data | ||
+ | Return: AX = status | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0504h | ||
+ | ----------60----DI0506----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET FILE POSITION | ||
+ | DI = 0506h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0507h | ||
+ | ----------60----DI0507----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - GET FILE POSITION | ||
+ | DI = 0507h " | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | DWORD pointer to DWORD buffer for file position??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0506h | ||
+ | ----------60----DI0508----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOSE FILE | ||
+ | DI = 0508h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to file state record (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0500h | ||
+ | ----------60----DI0509----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 0509h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI050A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 050Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | Format of pattern match control block: | ||
+ | Offset Size Description | ||
+ | 00h 43 BYTEs FindFirst data block (see INT 21/AH=4Eh) | ||
+ | 2Bh 80 BYTEs full path name | ||
+ | | ||
+ | | ||
+ | ----------60----DI050B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - IDENTIFY FILENAME REFERENT | ||
+ | DI = 050Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | Values returned: | ||
+ | 0000h nonexistent | ||
+ | 0001h file | ||
+ | 0002h directory | ||
+ | 0003h character device | ||
+ | ----------60----DI050C----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DELETE FILE | ||
+ | DI = 050Ch " | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI050D----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - RENAME FILE | ||
+ | DI = 050Dh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI050E----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 050Eh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI050F----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 050Fh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0510----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 0510h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0511----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - MAKE A SUBDIRECTORY | ||
+ | DI = 0511h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0512----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - REMOVE A SUBDIRECTORY | ||
+ | DI = 0512h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0513----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - GET DEFAULT DRIVE | ||
+ | DI = 0513h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? buffer for current drive | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0514----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET DEFAULT DRIVE | ||
+ | DI = 0514h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD new drive | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0515----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 0515h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0516----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 0516h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0517----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - GET FILE ATTRIBUTES | ||
+ | DI = 0517h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? buffer for file's attributes??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0518----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET FILE ATTRIBUTES | ||
+ | DI = 0518h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD new attributes??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0519----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 0519h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI051A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 051Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI051B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 051Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI051C----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FILE SERVICE " | ||
+ | DI = 051Ch | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0600----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - PROCESS INITIALIZING | ||
+ | DI = 0600h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0601----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - PROCESS TERMINATION | ||
+ | DI = 0601h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: never | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 21/ | ||
+ | ----------60----DI0602----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0602h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0603----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0603h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0604----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0604h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0605----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0605h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0606----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0606h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0607----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0607h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0608----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0608h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0609----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0609h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0700----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - OPEN CLIPBOARD | ||
+ | DI = 0700h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | Values for error code: | ||
+ | | ||
+ | FFF8h transfer request out of bounds | ||
+ | FFF9h no such representation | ||
+ | FFFAh no representation open | ||
+ | FFFBh a representation is already open | ||
+ | FFFCh representation already exists | ||
+ | FFFDh heap allocation failure | ||
+ | FFFEh clipboard not open | ||
+ | FFFFh clipboard access denied | ||
+ | ----------60----DI0701----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOSE CLIPBOARD | ||
+ | DI = 0701h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0702----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - RESET CLIPBOARD | ||
+ | DI = 0702h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0700h | ||
+ | ----------60----DI0704----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0704h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0705----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE " | ||
+ | DI = 0705h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0704h | ||
+ | ----------60----DI0706----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE " | ||
+ | DI = 0706h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0707----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE " | ||
+ | DI = 0707h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0708----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - WRITE TO CLIPBOARD | ||
+ | DI = 0708h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to data to be written??? | ||
+ | WORD length of data??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0709h | ||
+ | ----------60----DI0709----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - READ FROM CLIPBOARD | ||
+ | DI = 0709h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to buffer for data??? | ||
+ | WORD length of buffer??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0708h | ||
+ | ----------60----DI0800----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - BEEP | ||
+ | DI = 0800h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0801----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SOUND SERVICE " | ||
+ | DI = 0801h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0802----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - MAKE A SOUND PATTERN | ||
+ | DI = 0802h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD pattern number (00h-06h) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0803----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - TURN OFF SOUND | ||
+ | DI = 0803h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0900----------------------- | ||
+ | INT 60 - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK | ||
+ | DI = 0900h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD size of block in bytes | ||
+ | Return: AX -> memory block | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 64K data) | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0902----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK | ||
+ | DI = 0902h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD offset of memory block??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | 64K data) | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0903----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK | ||
+ | DI = 0903h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD size of block in bytes??? | ||
+ | Return: AX -> memory block??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0904----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - FREE LARGE MEMORY BLOCK | ||
+ | DI = 0904h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD segment of memory block??? | ||
+ | Return: AX -> ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0B00----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B00h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B01----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B01h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B02----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B02h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B03----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B03h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B04----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B04h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to alarm record??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | |||
+ | Format of alarm record: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 08h 40 BYTEs message displayed when alarm activates | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------60----DI0B05----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B05h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B06----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B06h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B07----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B07h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B08----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0B08h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD timestamp format | ||
+ | bits 1-0: | ||
+ | 00 date only | ||
+ | 01 time only | ||
+ | 10 date and time | ||
+ | 11 day and date | ||
+ | bit 4: supply am/pm | ||
+ | bit 5: supply seconds | ||
+ | bit 6: show year | ||
+ | bit 7: four-digit year | ||
+ | WORD row (-3 is topmost, 0 is first non-reserved line) | ||
+ | WORD column | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B09----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B09h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | Format of system settings: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 00h . , , | ||
+ | 01h , . . | ||
+ | 02h . ; ; | ||
+ | 03h , ; . | ||
+ | 04h . , | ||
+ | 05h , | ||
+ | 06h . ; | ||
+ | 07h , | ||
+ | | ||
+ | | ||
+ | 00h dd-mmm-yy | ||
+ | 01h dd-mmm | ||
+ | 02h mmm-yy | ||
+ | 03h mm/dd/yy | ||
+ | 04h dd/mm/yy | ||
+ | 05h dd.mm.yy | ||
+ | 06h yy-mm-dd | ||
+ | 07h mm/dd | ||
+ | 08h dd/mm | ||
+ | 09h dd.mm | ||
+ | 0Ah mm-dd | ||
+ | | ||
+ | 00h HH:MM:SS am/pm | ||
+ | 01h HH:MM am/pm | ||
+ | 02h HH:MM:SS | ||
+ | 03h HH.MM.SS | ||
+ | 04h HH,MM,SS | ||
+ | 05h HHhMMmSSs | ||
+ | 06h HH:MM | ||
+ | 07h HH.MM | ||
+ | 08h HH,MM | ||
+ | 09h HHhMMm | ||
+ | | ||
+ | 00h numbers first, 01h letters first, 02h ASCII | ||
+ | 12h 80 BYTEs name of picture file | ||
+ | 62h 30 BYTEs name | ||
+ | 80h 30 BYTEs title | ||
+ | 9Eh 28 BYTEs company name | ||
+ | | ||
+ | | ||
+ | C2h 66 BYTEs language menu | ||
+ | 104h 2 BYTEs ASCIZ date separator | ||
+ | 106h 2 BYTEs ASCIZ time separator | ||
+ | 108h BYTE date order | ||
+ | 109h BYTE use 24 hour time? | ||
+ | 10Ah 16 BYTEs currency string | ||
+ | 11Ah WORD currency string position (00h prefix, 01h suffix) | ||
+ | 11Ch WORD keyboard (see below) | ||
+ | 11Eh WORD printer baud rate | ||
+ | 00h 300, 01h 1200, 02h 2400, 03h 4800, 04h 9600, 05h 19200 | ||
+ | 120h WORD printer driver code | ||
+ | 00h Epson FX80, 01h HP Laserjet, 02h IBM ProPrinter | ||
+ | 122h WORD printer interface (00h COM1, 01h COM2, 02h IR, 03h LPT1) | ||
+ | 124h WORD system manager interrupt (60h by default) | ||
+ | 126h WORD code page (01h CP850, 02h CP437) | ||
+ | 128h WORD active exit key | ||
+ | 12Ah WORD active menu key | ||
+ | 12Ch WORD active CHAR key toggle | ||
+ | 12Eh 6 BYTEs alarm | ||
+ | |||
+ | Values for keyboard: | ||
+ | 0001h Belgium | ||
+ | 0002h French Canadian | ||
+ | 0004h Denmark | ||
+ | 0008h Finland | ||
+ | 0010h French | ||
+ | 0020h Finland | ||
+ | 0040h Italy | ||
+ | 0080h Netherlands | ||
+ | 0100h Norway | ||
+ | 0200h Portugal | ||
+ | 0400h Spain | ||
+ | 0800h Sweden | ||
+ | 1000h Swiss French | ||
+ | 2000h Swiss German | ||
+ | 4000h United Kingdom | ||
+ | 8000h USA | ||
+ | ----------60----DI0B0A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0B09h | ||
+ | ----------60----DI0B0B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0B0C----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Ch | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0B0D----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Dh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0B0E----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Eh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B0F----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B0Fh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: DX:AX -> system settings record (see INT 60/ | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0B09h | ||
+ | ----------60----DI0B10----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - PARSE DATE SPECIFICATION | ||
+ | DI = 0B10h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B11----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - PARSE TIME SPECIFICATION | ||
+ | DI = 0B11h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B12----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET DATE PARSING RULE | ||
+ | DI = 0B12h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD new parsing rule | ||
+ | 01h day-month-year | ||
+ | 02h month-day-year | ||
+ | 03h year-month-day | ||
+ | 04h " | ||
+ | 05h " | ||
+ | OR with 08h to get any year | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0B13h | ||
+ | ----------60----DI0B13----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET TIME PARSING RULE | ||
+ | DI = 0B13h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD new parsing rule | ||
+ | 01h HH:MM:SS (am/pm) | ||
+ | 02h HH:MM:SS (24hr) | ||
+ | 03h HHMM:SS (24hr) | ||
+ | 04h HH:MM:SS.hh (24hr) | ||
+ | 05h HH:MM (am/pm) | ||
+ | 06h HH:MM (24hr) | ||
+ | 07h HHMM (24hr) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0B12h | ||
+ | ----------60----DI0B14----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B14h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0B15----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOCK/ | ||
+ | DI = 0B15h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0C00----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - OPEN PRINTER | ||
+ | DI = 0C00h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0C01----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOSE PRINTER | ||
+ | DI = 0C01h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | Note: | ||
+ | SeeAlso: INT 60/DI=0C00h | ||
+ | ----------60----DI0C02----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - WRITE TO PRINTER | ||
+ | DI = 0C02h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to data to be written | ||
+ | WORD length of data | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0C00h | ||
+ | ----------60----DI0C03----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - INITIALIZE PRINTER | ||
+ | DI = 0C03h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0C00h | ||
+ | ----------60----DI0C04----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0C04h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0C05----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0C05h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0E00----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - COMMUNICATIONS SERVICE " | ||
+ | DI = 0E00h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | |||
+ | Values for error code: | ||
+ | | ||
+ | FFF1h " | ||
+ | FFF2h timeout | ||
+ | FFF3h framing error | ||
+ | FFF4h parity error | ||
+ | FFF5h overrun error | ||
+ | FFF6h " | ||
+ | FFF7h " | ||
+ | FFF8h not open | ||
+ | FFF9h out of memory | ||
+ | FFFAh buffer overflow | ||
+ | FFFBh " | ||
+ | FFFCh unsupported | ||
+ | FFFDh " | ||
+ | FFFEh " | ||
+ | FFFFh " | ||
+ | ----------60----DI0E01----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL | ||
+ | DI = 0E01h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to WORD buffer for comm channel handle | ||
+ | WORD communications line number (01h-04h) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0E02----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL | ||
+ | DI = 0E02h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0E03----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E03h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E04----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E04h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E05----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E05h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E06----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL | ||
+ | DI = 0E06h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | WORD reset options | ||
+ | bit 0: reset line | ||
+ | bit 1: flush transmit buffer | ||
+ | bit 2: flush receive buffer | ||
+ | bit 3: reset modem | ||
+ | bit 4: reset receiver' | ||
+ | bit 5: reset transmitter' | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E07----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E07h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E08----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL | ||
+ | DI = 0E08h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | DWORD pointer to data to be sent | ||
+ | WORD option flags | ||
+ | bit 0: send partial buffer | ||
+ | bit 1: turn on receiver after sending | ||
+ | DWORD pointer to WORD containing length of data to be sent | ||
+ | Return: length WORD updated to contain number of bytes actually sent??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0E09----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE | ||
+ | DI = 0E09h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? WORD | ||
+ | DWORD pointer to ??? WORD | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0E0Ah | ||
+ | ----------60----DI0E0A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE | ||
+ | DI = 0E0Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | DWORD pointer to WORD to get receive buffer size | ||
+ | DWORD pointer to WORD to get free bytes in receive buffer | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0E0B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL | ||
+ | DI = 0E0Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | DWORD pointer to data buffer | ||
+ | DWORD pointer to WORD (input) length of data buffer | ||
+ | (output) number of bytes received | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0E0C----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E0Ch | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E0D----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E0Dh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E0E----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E0Eh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E0F----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E0Fh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E10----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E10h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E11----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E11h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E12----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E12h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E13----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E13h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E14----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS | ||
+ | DI = 0E14h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD comm channel handle | ||
+ | DWORD pointer to comm settings (see below) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0E15h | ||
+ | |||
+ | Format of comm settings: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 01h none, 02h XOFF/XON, 04h XOFF/any, 08h ENQ/ACK | ||
+ | | ||
+ | | ||
+ | | ||
+ | ----------60----DI0E15----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS | ||
+ | DI = 0E15h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to buffer for settings (see INT 60/ | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0E14h | ||
+ | ----------60----DI0E16----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E16h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0E17----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0E17h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI0F00----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F00h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F01----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DRAW STANDARD TITLE BOX | ||
+ | DI = 0F01h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ASCIZ title string | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F02----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F02h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F03----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX | ||
+ | DI = 0F03h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to first line of message | ||
+ | WORD length of first line | ||
+ | DWORD pointer to second line of message | ||
+ | WORD length of second line | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0F04----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - REMOVE MESSAGE BOX | ||
+ | DI = 0F04h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0F05----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F05h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F06----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F06h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F07----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F07h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F08----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F08h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F09----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX | ||
+ | DI = 0F09h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to first line of message | ||
+ | WORD length of first line | ||
+ | DWORD pointer to second line of message | ||
+ | WORD length of second line | ||
+ | DWORD pointer to third line of message | ||
+ | WORD length of third line | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/ | ||
+ | ----------60----DI0F0A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DISABLE MACROS | ||
+ | DI = 0F0Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0F0Bh | ||
+ | ----------60----DI0F0B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - ENABLE MACROS | ||
+ | DI = 0F0Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 60/DI=0F0Ah | ||
+ | ----------60----DI0F0C----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F0Ch | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F0D----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F0Dh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI0F0E----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 0F0Eh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI1005----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1005h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 10/ | ||
+ | ----------60----DI1200----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - RESOURCE SERVICE " | ||
+ | DI = 1200h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1201----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1201h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | WORD ??? | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI1202----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1202h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: DX:AX -> ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1203----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1203h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1300----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - INITIALIZE HELP SYSTEM | ||
+ | DI = 1300h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1301----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - DISPLAY HELP | ||
+ | DI = 1301h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1302----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1302h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1303----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1303h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI1400----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1400h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | Return: AX = ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1401----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1401h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1402----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1402h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1403----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1403h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1404----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1404h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1405----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1405h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1406----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1406h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | DWORD pointer to ??? | ||
+ | WORD ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | ----------60----DI1500----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1500h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1501----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1501h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1502----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1502h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1503----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1503h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1504----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1504h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1505----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1505h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1506----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1506h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1507----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1507h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1508----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1508h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI1509----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 1509h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI150A----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 150Ah | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | ----------60----DI150B----------------------- | ||
+ | INT 60 u - HP 95LX System Manager - " | ||
+ | DI = 150Bh | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | ==== INT 60 u - HP 95LX System Manager - " | ||
+ | |||
+ | DI = 1604h | ||
+ | STACK: 2 WORDs unused dummies (for calls from high level languages) | ||
+ | ??? | ||
+ | Return: ??? | ||
+ | STACK unchanged | ||
+ | SeeAlso: INT 15/ | ||
+ | |||
+ | ==== INT 60 - SYS_PROF.EXE - PROFILER STATUS ==== | ||
+ | |||
+ | AH = 00h | ||
+ | Return: AX = 0000h profiling is off | ||
+ | otherwise profiling is on | ||
+ | Note: | ||
+ | SeeAlso: AH=01h" | ||
+ | |||
+ | ==== INT 60 - MDEBUG - GET STATUS ==== | ||
+ | |||
+ | AH = 00h | ||
+ | DS:SI -> password or a null byte | ||
+ | Return: AX = return code | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | else successful | ||
+ | ES = value of the monitor register SE | ||
+ | DI = value of the monitor register OF | ||
+ | CH = monitor color | ||
+ | CL = interpreter color | ||
+ | BH = monitor start line | ||
+ | BL = interpreter start line | ||
+ | AH = makecode of the hotkey | ||
+ | AL = ASCII code of the hotkey | ||
+ | DL = status of special keys (only SHIFT, ALT, CTRL) for the | ||
+ | hotkey (coded as for the keyboard flag at 0040h: | ||
+ | DH = basic process number for the communication with drivers | ||
+ | process number for the display driver, DH+1 = process | ||
+ | number for the command driver(s) | ||
+ | DS:SI -> MDEBUG identification table | ||
+ | Notes: | ||
+ | including a memory monitor, an interpreter, | ||
+ | MDEBUG uses INT 60 by default, but may be directed to any of INT 60 | ||
+ | through INT 67; the interrupt handler is preceded by the signature | ||
+ | " | ||
+ | if DS:SI points at a null byte, MDEBUG will prompt for a password if | ||
+ | passwords are active; enough stack space must be provided for an | ||
+ | INT 10h call (which MDEBUG uses while prompting for the password) | ||
+ | SeeAlso: AH=02h" | ||
+ | |||
+ | Format of MDEBUG identification table: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 60 - MDEBUG - GET ADDRESS OF THE HELP REGISTERS ==== | ||
+ | |||
+ | AH = 01h | ||
+ | DS:SI -> password or a null byte | ||
+ | Return: AX = return code | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | else successful | ||
+ | ES:DI point to the help registers of MDEBUG | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ... | ||
+ | | ||
+ | |||
+ | ==== INT 60 - SYS_PROF.EXE - TURN PROFILING OFF ==== | ||
+ | |||
+ | AH = 01h | ||
+ | Note: | ||
+ | SeeAlso: AH=00h" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - GET DRIVER INFO ==== | ||
+ | |||
+ | AX = 01FFh | ||
+ | BX = handle returned by function 02h | ||
+ | Return: CF set on error | ||
+ | DH = error code (see below) | ||
+ | CF clear if successful | ||
+ | BX = version | ||
+ | CH = network interface class (see below) | ||
+ | DX = interface type (see below) | ||
+ | CL = number | ||
+ | DS:SI -> name | ||
+ | AL = driver functions supported | ||
+ | 01h basic | ||
+ | 02h basic and extended | ||
+ | 05h basic and high-performance | ||
+ | 06h basic, high-performance, | ||
+ | FFh not installed | ||
+ | Note: the handle in BX is optional for drivers written to v1.07 or later of | ||
+ | the packet driver specification | ||
+ | |||
+ | Values for error code: | ||
+ | 01h " | ||
+ | 02h " | ||
+ | 03h " | ||
+ | 04h " | ||
+ | 05h " | ||
+ | 06h " | ||
+ | 07h " | ||
+ | 08h " | ||
+ | 09h " | ||
+ | 0Ah " | ||
+ | 0Bh " | ||
+ | 0Ch " | ||
+ | 0Dh " | ||
+ | 0Eh " | ||
+ | 0Fh " | ||
+ | |||
+ | Values for Network Interface classes/ | ||
+ | Class 01h Ethernet/ | ||
+ | 01h 3COM 3C500/3C501 | ||
+ | 02h 3COM 3C505 | ||
+ | 03h MICOM-Interlan NI5010 | ||
+ | 04h BICC Data Networks 4110 | ||
+ | 05h BICC Data Networks 4117 | ||
+ | 06h MICOM-Interlan NP600 | ||
+ | 08h Ungermann-Bass PC-NIC | ||
+ | 09h Univation NC-516 | ||
+ | 0Ah TRW PC-2000 | ||
+ | 0Bh MICOM-Interlan NI5210 | ||
+ | 0Ch 3COM 3C503 | ||
+ | 0Dh 3COM 3C523 | ||
+ | 0Eh Western Digital WD8003 | ||
+ | 0Fh Spider Systems S4 | ||
+ | 10h Torus Frame Level | ||
+ | 11h 10Net Communications | ||
+ | 12h Gateway PC-bus | ||
+ | 13h Gateway AT-bus | ||
+ | 14h Gateway MCA-bus | ||
+ | 15h IMC PCnic | ||
+ | 16h IMC PCnic II | ||
+ | 17h IMC PCnic 8-bit | ||
+ | 18h Tigan Communications | ||
+ | 19h Micromatic Research | ||
+ | 1Ah Clarkson " | ||
+ | 1Bh D-Link 8-bit | ||
+ | 1Ch D-Link 16-bit | ||
+ | 1Dh D-Link PS/2 | ||
+ | 1Eh Research Machines 8 | ||
+ | 1Fh Research Machines 16 | ||
+ | 20h Research Machines MCA | ||
+ | 21h Radix Microsystems EXM1 16-bit | ||
+ | 22h Interlan Ni9210 | ||
+ | 23h Interlan Ni6510 | ||
+ | 24h Vestra LANMASTER 16-bit | ||
+ | 25h Vestra LANMASTER 8-bit | ||
+ | 26h Allied Telesis PC/XT/AT | ||
+ | 27h Allied Telesis NEC PC-98 | ||
+ | 28h Allied Telesis Fujitsu FMR | ||
+ | 29h Ungermann-Bass NIC/PS2 | ||
+ | 2Ah Tiara LANCard/E AT | ||
+ | 2Bh Tiara LANCard/E MC | ||
+ | 2Ch Tiara LANCard/E TP | ||
+ | 2Dh Spider Communications SpiderComm 8 | ||
+ | 2Eh Spider Communications SpiderComm 16 | ||
+ | 2Fh AT&T Starlan NAU | ||
+ | 30h AT&T Starlan-10 NAU | ||
+ | 31h AT&T Ethernet NAU | ||
+ | 32h Intel smart card | ||
+ | 33h Xircom Packet Adapter | ||
+ | 34h Aquila Ethernet | ||
+ | 35h Novell NE1000 | ||
+ | 36h Novell NE2000 | ||
+ | 37h SMC PC-510 | ||
+ | 38h AT&T Fiber NAU | ||
+ | 39h NDIS to Packet Driver adapter | ||
+ | 3Ah Racal-InterLan ES3210 | ||
+ | 3Bh General Systems ISDN simulated Ethernet | ||
+ | 3Ch Hewlett-Packard | ||
+ | 3Dh IMC EtherNic-8 | ||
+ | 3Eh IMC EtherNic-16 | ||
+ | 3Fh IMC EtherNic-MCA | ||
+ | 40h NetWorth EtherNext | ||
+ | 41h Dataco Scanet | ||
+ | 42h DEC DEPCA | ||
+ | 43h C-Net | ||
+ | 44h Gandalf LANLine | ||
+ | 45h Apricot built-in | ||
+ | 46h David Systems Ether-T | ||
+ | 47h ODI to Packet Driver adapter | ||
+ | 48h AMD Am21110-16 | ||
+ | 49h Intel ICD Network controller family | ||
+ | 4Ah Intel ICD PCL2 | ||
+ | 4Bh Intel ICD PCL2A | ||
+ | 4Ch AT&T LANPacer | ||
+ | 4Dh AT&T LANPacer+ | ||
+ | 4Eh AT&T EVB | ||
+ | 4Fh AT&T StarStation | ||
+ | 50h SLIP simulated ethernet | ||
+ | 51h Racal-Interlan NIA310 | ||
+ | 52h Racal-Interlan NISE | ||
+ | 53h Racal-Interlan NISE30 | ||
+ | 54h Racal-Interlan NI6610 | ||
+ | 55h Ethernet over IP/UDP | ||
+ | Class 02h ProNET-10 | ||
+ | 01h Proteon p1300 | ||
+ | 02h Proteon p1800 | ||
+ | Class 03h IEEE 802.5/ | ||
+ | 01h IBM Token-Ring Adapter | ||
+ | 02h Proteon p1340 | ||
+ | 03h Proteon p1344 | ||
+ | 04h Gateway PC-bus | ||
+ | 05h Gateway AT-bus | ||
+ | 06h Gateway MCA-bus | ||
+ | 39h NDIS to Packet Driver adapter | ||
+ | 47h ODI to Packet Driver adapter | ||
+ | Class 04h Omninet | ||
+ | Class 05h Appletalk | ||
+ | 01h ATALK.SYS adapter | ||
+ | Class 06h Serial Line | ||
+ | 01h Clarkson 8250-SLIP | ||
+ | 02h Clarkson " | ||
+ | Class 07h StarLAN (subsumed by Ethernet class) | ||
+ | Class 08h ARCnet | ||
+ | 01h Datapoint RIM | ||
+ | Class 09h AX.25 | ||
+ | 01h Ottawa PI card | ||
+ | Class 0Ah KISS | ||
+ | Class 0Bh IEEE 802.3 with 802.2 headers | ||
+ | types same as for class 01h | ||
+ | Class 0Ch FDDI with 802.2 headers | ||
+ | 01h Western Digital | ||
+ | 02h Frontier Technology | ||
+ | Class 0Dh Internet X.25 | ||
+ | 01h Western Digital | ||
+ | 02h Frontier Technology | ||
+ | Class 0Eh N.T. LANSTAR (encapsulating DIX Ethernet) | ||
+ | 01h NT LANSTAR/8 | ||
+ | 02h NT LANSTAR/MC | ||
+ | Class 0Fh SLFP (MIT serial specification) | ||
+ | 01h MERIT | ||
+ | Class 10h PPP (Point-to-Point Protocol) | ||
+ | |||
+ | Note: class and type numbers are cleared through FTP Software | ||
+ | |||
+ | ==== INT 60 - MDEBUG - SET STATUS ==== | ||
+ | |||
+ | AH = 02h | ||
+ | DS:SI -> password or a null byte | ||
+ | ES = new value for the register SE | ||
+ | DI = new value for the register OF | ||
+ | CH = new monitor color if nonzero | ||
+ | CL = new interpreter color if nonzero | ||
+ | BH = new monitor start line if nonzero | ||
+ | BL = new interpreter start line if nonzero | ||
+ | AL = new ASCII code for the hotkey (' | ||
+ | DL = new status of the special keys (SHIFT, ALT, CTRL) for the hotkey | ||
+ | if nonzero | ||
+ | DH = if nonzero, new basic process number for communication with the | ||
+ | drivers (DH = multiplex number for the display driver, | ||
+ | DH+1 = multiplex number for the command driver or drivers) | ||
+ | Return: AX = return code | ||
+ | FFFFh call not allowed | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | 0000h successful, status changed | ||
+ | else AL = error code | ||
+ | bit 0 invalid monitor start line | ||
+ | 1 invalid interpreter start line | ||
+ | 2 invalid hotkey | ||
+ | 3 invalid process number | ||
+ | 4-7 reserved | ||
+ | Note: the values of the registers SE and OF are always changed, the other | ||
+ | values are only changed if they are valid | ||
+ | SeeAlso: AH=00h" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - ACCESS TYPE ==== | ||
+ | |||
+ | AH = 02h | ||
+ | AL = interface class | ||
+ | BX = interface type | ||
+ | DL = interface number | ||
+ | DS:SI -> type | ||
+ | CX = length of type (0000h for all packets) | ||
+ | ES:DI -> receiver | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | AX = handle | ||
+ | SeeAlso: AH=03h" | ||
+ | |||
+ | Receiver is called with: | ||
+ | AX = subfunction | ||
+ | 00h get packet buffer | ||
+ | DX = lookahead length (v1.10+) | ||
+ | DS:SI -> lookahead buffer if DX nonzero (v1.10+) | ||
+ | DI = error flags (class dependent) (v1.10+) | ||
+ | Return: ES:DI -> packet buffer | ||
+ | 0000h: | ||
+ | CX = size of buffer (v1.10+), may be smaller than | ||
+ | incoming data | ||
+ | 01h copy completed | ||
+ | DS:SI -> buffer | ||
+ | CX = bytes actually copied (v1.10+) | ||
+ | BX = handle | ||
+ | CX = buffer length | ||
+ | when a packet is received | ||
+ | |||
+ | ==== INT 60 - SYS_PROF.EXE - TURN PROFILING ON ==== | ||
+ | |||
+ | AH = 02h | ||
+ | Note: | ||
+ | SeeAlso: AH=00h" | ||
+ | |||
+ | ==== INT 60 - MDEBUG - POP UP ==== | ||
+ | |||
+ | AH = 03h | ||
+ | DS:SI -> password or a null byte | ||
+ | ES -> new value for the register SE | ||
+ | DI -> new value for the register OF | ||
+ | Return: AX = return code | ||
+ | FFFFh call not allowed | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | else successful | ||
+ | SeeAlso: AH=04h" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - RELEASE TYPE ==== | ||
+ | |||
+ | AH = 03h | ||
+ | BX = handle | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=02h" | ||
+ | |||
+ | ==== INT 60 - SYS_PROF.EXE - GET ADDRESS OF PROFILING TABLE ==== | ||
+ | |||
+ | AH = 03h | ||
+ | Return: ES:BX -> profiling table | ||
+ | Note: | ||
+ | SeeAlso: AH=04h" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - SEND PACKET ==== | ||
+ | |||
+ | AH = 04h | ||
+ | DS:SI -> buffer | ||
+ | CX = length | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | Note: the buffer may be modified immediately upon return from this call | ||
+ | SeeAlso: AH=0Bh | ||
+ | |||
+ | ==== INT 60 - MDEBUG - POP UP ==== | ||
+ | |||
+ | AH = 04h | ||
+ | DS:SI -> password or a null byte | ||
+ | Return: AX = return code | ||
+ | FFFFh call not allowed | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | else successful | ||
+ | SeeAlso: AH=03h" | ||
+ | |||
+ | ==== INT 60 - SYS_PROF.EXE - CLEAR PROFILING TABLE ==== | ||
+ | |||
+ | AH = 04h | ||
+ | Note: | ||
+ | SeeAlso: AH=03h" | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - TERMINATE DRIVER FOR HANDLE ==== | ||
+ | |||
+ | AH = 05h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | |||
+ | ==== INT 60 - MDEBUG - GET AND SET MDEBUG FLAGS ==== | ||
+ | |||
+ | AH = 05h | ||
+ | DS:SI -> password or a null byte | ||
+ | BL = new value for the semaphor of MDEBUG | ||
+ | | ||
+ | else disable popup of MDEBUG | ||
+ | Return: AX = return code | ||
+ | FFFEh password is invalid | ||
+ | FFFDh display mode is invalid | ||
+ | else successful | ||
+ | BL = old value of the semapor of MDEBUG | ||
+ | BH = old value of the INT 08h semaphor | ||
+ | (this semaphor is always reset after this function) | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - GET ADDRESS ==== | ||
+ | |||
+ | AH = 06h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | ES:DI -> buffer | ||
+ | CX = length | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | CX = length | ||
+ | Note: | ||
+ | |||
+ | ==== INT 60 - MDEBUG - GET PASSWORD STATUS ==== | ||
+ | |||
+ | AH = 06h | ||
+ | Return: AL = status | ||
+ | 00h password inactive | ||
+ | 01h password active | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - BASIC FUNC - RESET INTERFACE ==== | ||
+ | |||
+ | AH = 07h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | |||
+ | ==== INT 60 - MDEBUG v1.70+ - GET ACTIVE PART OF MDEBUG ==== | ||
+ | |||
+ | AH = 07h | ||
+ | Return: AL = active part for the next popup session of MDEBUG: | ||
+ | bit 0: the next popup session will start in the interpreter rather | ||
+ | | ||
+ | bit 1: the next popup session will sart in the online-help | ||
+ | SeeAlso: AH=03h" | ||
+ | |||
+ | ==== INT 60 - MDEBUG - UNUSED ==== | ||
+ | |||
+ | AH = 08h-FFh | ||
+ | Return: AX = FFFCh | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver 1.09+ - HIGH-PERF FUNC - GET PARAMETERS ==== | ||
+ | |||
+ | AH = 0Ah | ||
+ | Return: CF set on error | ||
+ | DH = error code (0Bh) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | ES:DI -> parameter table (see below) | ||
+ | |||
+ | Format of parameter table: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver 1.09 - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET ==== | ||
+ | |||
+ | AH = 0Bh | ||
+ | DS:SI -> buffer | ||
+ | CX = length of buffer | ||
+ | ES:DI -> FAR function to call when buffer becomes available | ||
+ | Return: CF set on error | ||
+ | DH = error code (0Bh,0Ch) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | Notes: | ||
+ | soon as the call returns; the buffer may be queued by the driver and | ||
+ | not processed until later | ||
+ | this function has been dropped from v1.10+ of the specification and | ||
+ | replaced by function 0Ch | ||
+ | SeeAlso: AH=04h" | ||
+ | |||
+ | Completion function called with: | ||
+ | AX = result | ||
+ | 00h copy OK | ||
+ | nonzero error | ||
+ | ES:DI -> buffer passed to INT 60/AH=0Bh call | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET ==== | ||
+ | |||
+ | AH = 0Ch | ||
+ | ES:DI -> pointer to IOCB | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=04h" | ||
+ | |||
+ | Format of IOCB: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | bit 0: packet driver is finished with IOCB | ||
+ | bit 1: application requests upcall when driver completes | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Completion function called with: | ||
+ | ES:DI -> IOCB passed to INT 60/AH=0Ch | ||
+ | |||
+ | ==== INT 60 - Banyan VINES, 3com - GET STATION ADDRESS ==== | ||
+ | |||
+ | AH = 0Ch | ||
+ | Return: AL = status | ||
+ | 00h successful | ||
+ | ES:SI -> 6-byte station address | ||
+ | 02h semaphore service is unavailable | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - DROP PACKET FROM QUEUE ==== | ||
+ | |||
+ | AH = 0Dh | ||
+ | ES:DI -> IOCB | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=0Ch" | ||
+ | |||
+ | ==== INT 60 - 3com, 10-NET, Banyan VINES - LOCK AND WAIT ==== | ||
+ | |||
+ | AH = 11h | ||
+ | AL = drive number or 0 | ||
+ | DX = number of seconds to wait | ||
+ | ES:SI = Ethernet address or 0 | ||
+ | DS:BX -> 31-byte ASCIZ semaphore name | ||
+ | Return: AL = status | ||
+ | 00h successful | ||
+ | 01h timeout | ||
+ | 02h server not responding | ||
+ | 03h invalid semaphore name | ||
+ | 04h semaphore list is full | ||
+ | 05h invalid drive ID | ||
+ | 06h invalid Ethernet address | ||
+ | 07h not logged in | ||
+ | 08h write to network failed | ||
+ | 09h semaphore already logged for this CPU | ||
+ | SeeAlso: AH=12h, | ||
+ | |||
+ | ==== INT 60 - 3com, 10-NET, Banyan VINES - LOCK ==== | ||
+ | |||
+ | AH = 12h | ||
+ | AL = drive number or 00h | ||
+ | ES:SI = Ethernet address or 0000h:0000h | ||
+ | DS:BX -> 31-byte ASCIZ semaphore name | ||
+ | Return: AL = status (see also AH=11h) | ||
+ | 01h semaphore currently locked by another PC | ||
+ | Note: | ||
+ | SeeAlso: AH=11h, | ||
+ | |||
+ | ==== INT 60 - 3com, 10-NET, Banyan VINES - UNLOCK ==== | ||
+ | |||
+ | AH = 13h | ||
+ | AL = drive number or 00h | ||
+ | ES:SI = Ethernet address or 0000h:0000h | ||
+ | DS:BX -> 31-byte ASCIZ semaphore name | ||
+ | Return: AL = status (see also AH=11h) | ||
+ | 1 semaphore not locked | ||
+ | SeeAlso: AH=11h, | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - SET RECEIVE MODE ==== | ||
+ | |||
+ | AH = 14h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | CX = mode | ||
+ | 01h turn off receiver | ||
+ | 02h receive only packets sent to this interface | ||
+ | 03h mode 2 plus broadcast packets | ||
+ | 04h mode 3 plus limited multicast packets | ||
+ | 05h mode 3 plus all multicast packets | ||
+ | 06h all packets | ||
+ | 07h raw mode for serial line only (v1.10+) | ||
+ | Return: CF set on error | ||
+ | DH = error code (01h,08h) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=15h | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - GET RECEIVE MODE ==== | ||
+ | |||
+ | AH = 15h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | Return: CF set on error | ||
+ | DH = error code (01h) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | AX = mode | ||
+ | SeeAlso: AH=14h | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - SET MULTICAST LIST ==== | ||
+ | |||
+ | AH = 16h | ||
+ | ES:DI -> multicast list | ||
+ | CX = length of list in bytes | ||
+ | Return: CF set on error | ||
+ | DH = error code (06h, | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=17h | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - GET MULTICAST LIST ==== | ||
+ | |||
+ | AH = 17h | ||
+ | Return: CF set on error | ||
+ | DH = error code (06h,09h) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | ES:DI -> multicast addresses (do not modify) | ||
+ | CX = bytes of multicast addresses currently in use | ||
+ | SeeAlso: AH=16h | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - GET STATISTICS ==== | ||
+ | |||
+ | AH = 18h | ||
+ | BX = handle (optional for v1.10+) | ||
+ | Return: CF set on error | ||
+ | DH = error code (01h) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | DS:SI -> statistics (see below) | ||
+ | |||
+ | Format of statistics: | ||
+ | Offset Size Description | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver - EXTENDED FUNC - SET NETWORK ADDRESS ==== | ||
+ | |||
+ | AH = 19h | ||
+ | ES:DI -> address | ||
+ | CX = length of address | ||
+ | Return: CF set on error | ||
+ | DH = error code (0Dh,0Eh) (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | CX = length | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver v1.10+ - EXTENDED FUNC - SEND RAW BYTES ==== | ||
+ | |||
+ | AH = 1Ah | ||
+ | DS:SI -> buffer | ||
+ | CX = length of buffer | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=1Ch | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver v1.10+ - EXTENDED FUNC - FLUSH RAW BYTES RECEIVED ==== | ||
+ | |||
+ | AH = 1Bh | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | SeeAlso: AH=1Ch | ||
+ | |||
+ | ==== INT 60 - FTP Packet Driver v1.10+ - EXTENDED FUNC - FETCH RAW BYTES RECEIVED ==== | ||
+ | |||
+ | AH = 1Ch | ||
+ | DS:SI -> buffer | ||
+ | CX = length of buffer | ||
+ | DX = timeout in clock ticks | ||
+ | Return: CF set on error | ||
+ | DH = error code (see AX=01FFh) | ||
+ | CF clear if successful | ||
+ | CX = number of bytes transferred to buffer | ||
+ | SeeAlso: AH=1Ah, | ||
+ | |||
+ | ==== INT 60 - AccessDOS - API ==== | ||
+ | |||
+ | AH = ADh | ||
+ | AL = function | ||
+ | E1h ??? | ||
+ | Return: AX = ??? | ||
+ | E2h get configuration | ||
+ | Return: BX:AX -> configuration data | ||
+ | Notes: | ||
+ | Development Center which provides extensions for keyboard, mouse, | ||
+ | and sound access by the visually, hearing, or motor-control | ||
+ | impaired. | ||
+ | INT 60 is the default vector; AccessDOS will use the first 0000h:0000h | ||
+ | vector in the range 60h through 66h. | ||