home *** CD-ROM | disk | FTP | other *** search
- # INTERPRE.DAT -- template file for INTERPRE.EXE
- # by Ned Konz 08/02/87
- # Note that any line can be continued by ending it with a backslash.
- # Comment lines may be started with any non-hex character.
- # Format of each line: NN[AH][AL] rest-of-line, i.e.:
- # 2,4, or 6 hex characters followed by the rest of the line.
- # First 2 characters (required) are the interrupt number
- # Next 2 (optional) are the contents of AH
- # Next 2 (optional) are the contents of AL
- # within the body of a template, the following strings are replaced
- # with the contents of the appropriate registers:
- #
- # AX AH AL BX BH BL CX CH CL DX DH DL BP DI SI DS ES CS IP
- #
- # Added functionality by Russell Nelson. If an interrupt is mentioned
- # in INTERPRE.DAT, then it is traced, otherwise not. No need to
- # recompile to change the interrupts. However, because of cheesy
- # programming, all interrupts belonging to a single vector (first two
- # digits identical) MUST be kept together. I.e. all the interrupt 10s,
- # then all the interrupt 21s, etc.
-
- 05 Print screen
- 1000 Set video mode to AL
- 1001 Set cursor to CH-CL
- 1002 Set cursor position to row DH col DL page BH
- 1003 Read cursor position (page BH)
- 1004 Read light-pen position
- 1005 Set active display page to AL
- 100580 Get display page register
- 100581 Set CPU display page register to BL
- 100582 Set CRT display page register to BH
- 100583 Set CPU display page register to BL, CRT display page register to BH
- 1006 Scroll window (CH,CL DH,DL) up by AL lines (fill with BH)
- 100600 Clear window (CH,CL DH,DL) (fill with BH)
- 1007 Scroll window (CH,CL DH,DL) down by AL lines (fill with BH)
- 100700 Clear window (CH,CL DH,DL) (fill with BH)
- 1008 Read character and attribute from page BH
- 1009 Write character (AL) CX times to page BH with attr. BL
- 100a Write character (AL) CX times to page BH (color BL if graphics mode)
- 100b Set color BH to (physical color) BL
- 100c Write pixel dot (color AL) to col. CX, row DL
- 100d Read pixel dot from col. CX, row DL
- 100e Write character (AL) as TTY (color BL if in graphics mode)
- 100f Get current video mode
- 101130 Get EGA font pointer for font BL (3:8x8, 5:9x14)
- 11 ???
- 12 ???
- 13 ???
- 14 ???
- 15 ???
- 1600 Read next keyboard character
- 1601 Report whether character ready
- 1602 Get shift status
- 1700 Send byte (AL) to printer
- 1701 Initialize printer
- 1702 Get printer status
- 1800 Jump to BASIC
- 1900 Reboot computer
- 1a00 Read the current clock count
- 1a01 Set the current clock count to CXDX ticks
- 1a02 Read AT real-time clock
- 1a03 Set AT real time clock to CH:CL:DH (DST if DL==1)
- 1a04 Read date from AT real-time clock
- 1a05 Set date of AT real-time clock to DH/DL/CHCL
- 1a06 Set AT alarm to CH:CL.DH
- 1a07 Reset AT alarm
- 20 Program terminate
- 2100 Terminate program (DOS 1 type)
- 2101 Keyboard input with echo
- 2106 Direct Kbd/Display I/O (get char if DL=ff) (output char DL otherwise)
- 2107 Direct keyboard input without echo
- 2108 Keyboard input without echo
- 2109 Display string (from DS:DX)
- 210a Buffered keyboard input (to DS:DX)
- 210b Check keyboard input status
- 210c01 Clear keyboard and do keyboard input with echo
- 210c06 Clear keyboard and do direct Kbd/Display I/O (get char if DL=ff) \
- (output char DL otherwise)
- 210c07 Clear keyboard and do direct keyboard input without echo
- 210c08 Clear keyboard and do keyboard input without echo
- 210c0a Clear keyboard and do buffered keyboard input (to DS:DX)
- 210d Reset Disk
- 210e Select DL as current drive
- 210f Open file using FCB at DS:DX
- 2110 Close file (FCB at DS:DX)
- 2111 Search for first file matching FCB at DS:DX
- 2112 Search for next matching file
- 2113 Delete file using FCB at DS:DX
- 2114 Read sequential file record (FCB at DS:DX)
- 2115 Write sequential file record (FCB at DS:DX)
- 2116 Create file (FCB at DS:DX)
- 2117 Rename file (modified FCB at DS:DX)
- 2118 Internal DOS function 24
- 2119 Report current drive
- 211a Set DTA to DS:DX
- 211b Get FAT information, current drive
- 211c Get FAT information, drive DL
- 211d Internal DOS function 1d
- 211e Internal DOS function 1e
- 211f Internal DOS function 1f
- 2120 Internal DOS function 20
- 2121 Read random file record (FCB at DS:DX)
- 2122 Write random file record (FCB at DS:DX)
- 2123 Get file size (FCB at DS:DX)
- 2124 Set random record field (FCB at DS:DX)
- 2125 Set interrupt AL vector to DS:DX
- 2126 Create PSP at segment DX
- 2126 Create program segment at DX
- 2127 Read CX random file records (FCB at DS:DX)
- 2128 Write CX random file records (FCB at DS:DX)
- 2129 Parse filename (string at DS:SI) (make FCB at ES:DI)
- 212a Get date
- 212b Set date to DH/DL/CH (weekday AL)
- 212c Get Time
- 212d Set Time to CH:CL:DH.DL
- 212e Called by command.com to reset transient portion of PSP (?) if DL!=00
- 212e00 Set verification off (if Dl(DL)==00), else undocumented
- 212e01 Set verification on (if Dl(DL)==00), else undocumented
- 212f Get DTA address
- 2130 Get DOS version number
- 2131 Terminate (ret. code AL) and stay resident (free from DX)
- 2131 Terminate and stay resident (return code AL) (return from DX:0000 on)
- 213300 Get control break
- 213300 Get control break state
- 213301 Set control break to DL
- 213301 Set control break state (to DL)
- 2135 Get interrupt AL vector
- 2136 Get disk DL free space
- 213700 Get switch character
- 213701 Set switch character to DL
- 2138 Get country-dependent info (for country AL) to DS:DX
- 2139 Make directory (name at DS:DX)
- 213a Remove directory (name at DS:DX)
- 213b Change current directory (name at DS:DX)
- 213c Create file (name at DS:DX) with attribute CL
- 213d Open file (name at DS:DX) mode AL
- 213e Close file handle #BX
- 213f Read CX bytes from file #BX to DS:DX
- 2140 Write CX bytes from DS:DX to file #BX
- 2141 Delete file (name at DS:DX)
- 2142 Move file #BX pointer by CX:DX (whence=AL)
- 214300 Get mode of file (name at DS:DX)
- 214301 Set mode of file (name at DS:DX) to CL
- 214400 IOCTL: get device info for file #BX
- 214401 IOCTL: set device info for file #BX to DX
- 214402 IOCTL: read CX bytes from control channel of file #BX (to DS:DX)
- 214403 IOCTL: write CX bytes (from DS:DX) to control channel of file #BX
- 214404 IOCTL: read CX bytes from control channel of drive #BL (to DS:DX)
- 214405 IOCTL: write CX bytes (from DS:DX) to control channel of drive #BL
- 214406 IOCTL: report input status of file #BL
- 214407 IOCTL: report output status of file #BL
- 214408 IOCTL: report whether removable media in disk #BL
- 21440b IOCTL: set retries for disk #BL to DX (retry time CX)
- 2145 Duplicate file handle #BX (DUP)
- 2146 Duplicate file handle #BX onto #CX (CDUP)
- 2147 Get current directory for drive #DL
- 2148 Allocate BX paragraphs of memory
- 2149 Free memory at ES:0000
- 214a Change size of memory block at ES:0000 to BX paragraphs
- 214b00 Load and execute (make PSP) (program name @DS:DX)
- 214b01 Load program (program name @DS:DX)
- 214c Terminate process (return code AL)
- 214d Get return code of subprogram
- 214e Begin file search (name at DS:DX) for files with attr. CL
- 214f Continue file search
- 2151 Get PSP address (undocumented, like 2162)
- 2152 Set PSP address to BX (undocumented, inverse of 2162)
- 2154 Get verify state
- 2156 Rename file (old name at DS:DX to new name at ES:DI)
- 215700 Get File #BX date/time
- 215701 Set File #BX date/time to DX:CX
- 2159 Get Extended error code (DOS version code:BX)
- 215a Create temp file (attr. CL), pathname at DS:DX
- 215b Create new file (name at DS:DX, attr. CL)
- 215c00 Lock file access for file #BX starting at offs. CXDX for SIDI bytes
- 215c01 Unlock file access for file #BX starting at offs. CXDX for SIDI bytes
- 2162 Get PSP address
- 25 Abs. disk read (DOS) of drive AL: CX sectors from sec. DX to DS:BX
- 26 Abs. disk write (DOS) CX sectors from sec. DX to drive AL: from DS:BX
- 27 Terminate and stay resident (return past CS:DX to DOS)
- 28 Idle loop
- 29 ???
- 2a ???
- 2f Print spool control (function AL) (Ds:Dx=DS:DX)
-