Interrupt List Release 61 Last change 16jul00
Copyright (c) 1989-1999,2000 Ralf Brown
Index for category b - vendor-specific BIOS extensions,

Table of Contents by Order
06 - INT 06 C - HP 95LX - SLEEP/WAKEUP
100E--CXABCD - INT 10 - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE
10BF00 - INT 10 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR
10BF01 - INT 10 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR
10BF02 - INT 10 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER
10BF03BX0000 - INT 10 - VIDEO - Compaq Extensions - GET ENVIRONMENT
10BF04 - INT 10 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY
10BF05 - INT 10 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY
10BF06 - INT 10 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE
10BF07 - INT 10 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE
10BF08 - INT 10 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS
10BF09 - INT 10 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO
10BF0A - INT 10 - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO
10BF0B - INT 10 - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED
10BF0C - INT 10 - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE
10BF0D - INT 10 - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE
10BF0E - INT 10 - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode
10BF0F - INT 10 - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER
10BF10 - INT 10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER
10BF11 - INT 10 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT
10BF12 - INT 10 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR
10BF13 - INT 10 - VIDEO - Compaq QVision - GAMMA CORRECTION
1320 - INT 13 U - Compaq, ATAPI Removable Media Device - GET CURRENT MEDIA FORMAT
1501 - INT 15 - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM
1502 - INT 15 - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM
1506 - INT 15 - Amstrad PC1512 - GET ROS VERSION NUMBER
152400 - INT 15 - SYSTEM - later PS/2s - DISABLE A20 GATE
152401 - INT 15 - SYSTEM - later PS/2s - ENABLE A20 GATE
152402 - INT 15 - SYSTEM - later PS/2s - GET A20 GATE STATUS
152403 - INT 15 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT
154280 - INT 15 - Compaq SLT/286 - ENTER STANDBY
1544C0 - INT 15 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???
1544C1 - INT 15 - Olivetti Quaderno - ???
1544C2 - INT 15 - Olivetti Quaderno - ???
1544C3 - INT 15 - Olivetti Quaderno - GET ???
1544C4 - INT 15 - Olivetti Quaderno - ???
1544C6 - INT 15 - Olivetti Quaderno - READ LCD
1544C7 - INT 15 - Olivetti Quaderno - WRITE LCD
1544C8 - INT 15 - Olivetti Quaderno - ???
1544C9 - INT 15 - Olivetti Quaderno - GET XBIOS VERSION
1545 - INT 15 U - HP 100LX/200LX - SET DISPLAY CONTROL STATUS
1546 - INT 15 U - HP 100LX/200LX - SET POWER OFF TIMEOUT
154600 - INT 15 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION
154601 - INT 15 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION
154604 - INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - GET ???
154605 - INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - ???
1547 - INT 15 U - HP 100LX/200LX - GET/SET DISPLAY CONTRAST
1548 - INT 15 U - HP 100LX/200LX - SET BUZZER VOLUME
154B - INT 15 U - HP 100LX/200LX - ADJUST SYSTEM TIME
154DD4 - INT 15 - HP 95LX/100LX/200LX - INSTALLATION CHECK
154E - INT 15 - HP 95LX - ENABLE/DISABLE LIGHT SLEEP
1560 - INT 15 - HUNTER 16 - SET SYSTEM CLOCK SPEED
1561 - INT 15 - HUNTER 16 - GET POWER LEVEL
1561 - INT 15 U - HP 100LX/200LX - SET ANNOUNCIATORS POSITION
1562 - INT 15 - HUNTER 16 - SET LOW POWER THRESHOLD
1562 - INT 15 U - HP 100LX/200LX - SET DISPLAY CONTRAST
156300 - INT 15 - HUNTER 16 - GET IDLE TIMEOUT
156301 - INT 15 - HUNTER 16 - SET IDLE TIMEOUT
1564 - INT 15 - HUNTER 16 - CONTROL RESUME MODE
1565 - INT 15 - HUNTER 16 - AUTHORISE CHARGING
1566 - INT 15 - HUNTER 16 - SET BATTERY LEVEL
1567 - INT 15 - HUNTER 16 - CONTROL STOP MODE
1568 - INT 15 - HUNTER 16 - REQUEST POWER DOWN
1569 - INT 15 - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY
156A - INT 15 - HUNTER 16 - CONTROL SLOW MODE
156B - INT 15 - HUNTER 16 - GET ROM BIOS VERSION
156C - INT 15 - HUNTER 16 - GET SERIAL NUMBER
156D - INT 15 - HUNTER 16 - GET EVENT DETAIL
156E - INT 15 - HUNTER 16 - ENABLE/TRAP EVENT
156F - INT 15 - HUNTER 16 - ACKNOWLEDGE EVENT
1570 - INT 15 - HUNTER 16 - CONTROL SOUND
1571 - INT 15 - HUNTER 16 - SELECT POWER UP KEYS
157200 - INT 15 - HUNTER 16 - RESET SERIAL NUMBER
1572 - INT 15 - HUNTER 16 - REDIRECT SERIAL NUMBER
1573 - INT 15 - HUNTER 16 - GET ORACLE GT POWER LEVEL
1574 - INT 15 - HUNTER 16 - SET BACKLIGHT POWER UP STATE
1575 - INT 15 - HUNTER 16 - SET CONTRAST POWER UP STATE
1576 - INT 15 - HUNTER 16 - CONTROL POWER SAVE
1579 - INT 15 - HUNTER 16 - REDIRECT LPT1
157A - INT 15 - HUNTER 16 - INVOKE HOT KEY
157B - INT 15 - HUNTER 16 - CONTROL HOT KEY
157C - INT 15 - HUNTER 16 - CONTROL HOT KEY POWER OPTION
157D - INT 15 - HUNTER 16 - OVERRIDE LOW POWER TURN OFF
157E - INT 15 - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)
157F - INT 15 - HUNTER 16 - SET BATTERY TYPE (APM)
1580 - INT 15 - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)
1581 - INT 15 - HUNTER 16 - CONTROL POWER OUTPUT
1582 - INT 15 - HUNTER 16 - SOUND OUTPUT
1583 - INT 15 - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION
1584 - INT 15 - V20-XT-BIOS - JOYSTICK SUPPORT
158400 - INT 15 - HUNTER 16 - GET DISKETTE PORT
158401 - INT 15 - HUNTER 16 - SET DISKETTE PORT
158500 - INT 15 - HUNTER 16 - RESTORE POWER MENU (APM)
158501 - INT 15 - HUNTER 16 - SET POWER MENU (APM)
1586 - INT 15 - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE
1587 - INT 15 - HUNTER 16 - SET INT 72h VECTOR
1588 - INT 15 - HUNTER 16 - GET POWER UP KEYS
158900 - INT 15 - HUNTER 16 - GET POWER MODE
158901 - INT 15 - HUNTER 16 - SET POWER MODE
158A - INT 15 - HUNTER 16 - CONTROL POWER INPUT (SPM)
158A - INT 15 - Phoenix BIOS v4.0 - GET BIG MEMORY SIZE
158B - INT 15 - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE
158C - INT 15 - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG
158D - INT 15 - HUNTER 16 - GET/SET BOOST CHARGE (SPM)
15BC - INT 15 - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS
15D820 - INT 15 - Compaq LTE Lite - GET ???
15D821 - INT 15 - Compaq LTE Lite - SET ???
15D822BL00 - INT 15 - Compaq EISA System ROM 04/08/93 - GET ???
15D823 - INT 15 - Compaq EISA System ROM 04/08/93 - ???
15D8 - INT 15 - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS
15DA00 - INT 15 U - AMI PCI BIOS - ???
15DA01 - INT 15 U - AMI PCI BIOS - CPU SPEED CONTROL
15DA20 - INT 15 U - AMI PCI BIOS v1.00.12.AX1T - CMOS RAM BITFIELD MANIPULATION
15DB00 - INT 15 U - AMI BIOS - Flash ROM - READ FLASH BIOS
15DB01 - INT 15 U - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION
15DB02 - INT 15 U - AMI BIOS - Flash ROM - GET SIZE OF FLASH ROM PROGRAMMING CODE
15DB03 - INT 15 U - AMI BIOS - Flash ROM - GET FLASH ROM PROGRAMMING CODE
15DB04 - INT 15 U - AMI BIOS - Flash ROM - GET BIOS REVISION
15DF - INT 15 - Juko UNIQUE UX BIOS - TURBO MODE CONTROL
15E00F - INT 15 - Compaq Systempro - MULTIPROCESSOR DISPATCH
15E10E - INT 15 - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH
15E200 - INT 15 - Compaq Systempro - MULTIPROCESSOR AVAILABLE
15E4 - INT 15 - Tandy??? - ???
15E4 - INT 15 - Compaq ROM BIOS 1993/08/03 and newer - ???
15E800 - INT 15 - Compaq Contura - GET ???
15E800 - INT 15 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???
15E800 - INT 15 - Compaq Prolinea - GET ???
15E801 - INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS
15E802 - INT 15 - Compaq Contura - GET ???
15E820 - INT 15 - newer BIOSes - GET SYSTEM MEMORY MAP
15E881 - INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS (32-bit)
1604 - INT 16 - Tandy 2000 - KEYBOARD - FLUSH KEYBOARD BUFFER
1605 - INT 16 - Tandy 2000 - KEYBOARD - RESET KEYBOARD
1620 - INT 16 - HUNTER 16 - SET TEMPORARY SHIFT
1621 - INT 16 - HUNTER 16 - CONTROL SHIFT KEYS
1622 - INT 16 - HUNTER 16 - CONTROL CTRL-ALT-DEL
1623 - INT 16 - HUNTER 16 - CONTROL EMERGENCY BREAKOUT
1624 - INT 16 - HUNTER 16 - REDEFINE KEY CODES
1625 - INT 16 - HUNTER 16 - RESET KEYBOARD
1626 - INT 16 - HUNTER 16 - CONTROL KEYCLICK
1627 - INT 16 - HUNTER 16 - CONTROL SCREEN DUMP AREA
1629 - INT 16 - HUNTER 16 - GET KEY REPEAT
162A - INT 16 - HUNTER 16 - CONTROL KEY REPEAT
162B - INT 16 - HUNTER 16 - REDEFINE KEY SCAN CODES
162C - INT 16 - HUNTER 16 - REDEFINE RAW KEY CODES
162D - INT 16 - HUNTER 16 - CONTROL BREAK KEYS
166F00 - INT 16 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK
166F01 - INT 16 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES
166F02 - INT 16 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES
166F03 - INT 16 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES
166F04 - INT 16 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS
166F05 - INT 16 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS
166F06 - INT 16 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS
166F07 - INT 16 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS
166F08 - INT 16 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION
166F09 - INT 16 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS
166F0A - INT 16 - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED
166F0B - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW
166F0C - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH
166F0D - INT 16 - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER
166F0E - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER
166F0F - INT 16 - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING
166F10 - INT 16 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING
166F11 - INT 16 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE
166F12 - INT 16 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM
16E000 - INT 16 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER
16E001 - INT 16 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE
16E002 - INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET
16E003 - INT 16 - AMI BIOS - BIOS-FLASH Interface - RESTORE CHIPSET STATUS
16E004 - INT 16 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp
16E005 - INT 16 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp
16E006 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT
16E007 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE
16E008 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT
16E009 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT
16E00A - INT 16 - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY
16E00B - INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS
16E00C - INT 16 - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS
16E0FF - INT 16 - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET
16F0 - INT 16 - Compaq 386 and newer - SET CPU SPEED
16F1 - INT 16 - Compaq 386 and newer - READ CURRENT CPU SPEED
16F2 - INT 16 - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE
16F3 - INT 16 - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)
16F400 - INT 16 - Compaq Systempro and higher - CACHE CONTROLLER STATUS
16F401 - INT 16 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER
16F402 - INT 16 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER
170200BX5050 - INT 17 - Enhanced Parallel Port (EPP) BIOS - INSTALLATION CHECK
176F00BX0000 - INT 17 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK
176F02 - INT 17 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER
1A02 - INT 1A - Tandy 2000 - TIME - GET DATE AND TIME
1A03 - INT 1A - Tandy 2000 - TIME - SET DATE AND TIME
1A04 - INT 1A - Sperry PC - GET REAL-TIME CLOCK DATE
1A05 - INT 1A - Sperry PC - SET REAL-TIME CLOCK DATE
1AFE - INT 1A - AT&T 6300 - READ TIME AND DATE
1AFF - INT 1A - AT&T 6300 - SET TIME AND DATE
1F12 - INT 1F U - C&T "SuperState" BIOS - POWER OFF
1F17 - INT 1F U - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState
1F19 - INT 1F U - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE
1F1C - INT 1F U - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT
1F1D - INT 1F U - C&T "SuperState" BIOS - SET SLEEP TIMEOUT
1FF5--BLFA - INT 1F U - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT
1FF5--BLFD - INT 1F U - C&T "SuperState" BIOS - ENCRYPT PASSWORD
1FF5--BLFE - INT 1F U - C&T "SuperState" BIOS - SET PASSWORD
1FF5--BLFF - INT 1F U - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD
1FFB - INT 1F U - C&T "SuperState" BIOS - GET/SET CPU SPEED
1FFC--BL00 - INT 1F U - C&T "SuperState" BIOS - GET ALARM STATUS
1FFC--BL01 - INT 1F U - C&T "SuperState" BIOS - SET ALARM STATUS
1FFC--BL02 - INT 1F U - C&T "SuperState" BIOS - GET ALARM TIME
1FFC--BL03 - INT 1F U - C&T "SuperState" BIOS - SET ALARM TIME
1FFC--BL04 - INT 1F U - C&T "SuperState" BIOS - GET ALARM DATE
1FFC--BL05 - INT 1F U - C&T "SuperState" BIOS - SET ALARM DATE
1FFD--BL00 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS
1FFD--BL01 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS
1FFD--BL02 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME
1FFD--BL03 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME
1FFD--BL04 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE
1FFD--BL05 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE
2D--DC - INT 2D C - DAISY.SYS - BROADCAST: CHAIN RESCANNED
42 - INT 42 - Western Digital WD1002 SuperBIOS - INT 40 CASCADE
47 - INT 47 - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE
48 - INT 48 - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)
4800 - INT 48 - TI Professional PC - SPEAKER DEVICE - SOUND SPEAKER
4801 - INT 48 - TI Professional PC - SPEAKER DEVICE - CHECK SPEAKER STATUS
4802 - INT 48 - TI Professional PC - SPEAKER DEVICE - SET SPEAKER FREQUENCY
4803 - INT 48 - TI Professional PC - SPEAKER DEVICE - TURN ON SPEAKER
4804 - INT 48 - TI Professional PC - SPEAKER DEVICE - TURN OFF SPEAKER
4805 - INT 48 - TI Professional PC - SPEAKER DEVICE - DELAY
4806 - INT 48 - TI Professional PC - CALCULATE CRC
4807 - INT 48 - TI Professional PC - PRINT ROM MESSAGE
4808 - INT 48 - TI Professional PC - DISPLAY SYSTEM ERROR MESSAGE
4809 - INT 48 - TI Professional PC - GET SYSTEM CONFIGURATION DATA
480A - INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFO ADDRESS
480B - INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFORMATION
49 - INT 49 - Tandy 2000 - BOOTSTRAP LOADER
4A - INT 4A - Tandy 2000 - PRINT SCREEN
4A00 - INT 4A - TI Professional PC - KEYBOARD - GET KEYPRESS
4A01 - INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD STATUS
4A02 - INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD MODE
4A03 - INT 4A - TI Professional PC - KEYBOARD - FLUSH KEYBOARD BUFFER
4A04 - INT 4A - TI Professional PC - KEYBOARD - SEND COMMAND TO KEYBOARD
4A05 - INT 4A - TI Professional PC - KEYBOARD - INSERT CHARACTER INTO KEYBOARD BUFFER
4B - INT 4B - Tandy 2000 - EQUIPMENT DETERMINATION
4B00 - INT 4B - TI Professional PC - PARALLEL PORT - OUTPUT CHARACTER
4B01 - INT 4B - TI Professional PC - PARALLEL PORT - INITIALIZE PRINTER
4B02 - INT 4B - TI Professional PC - PARALLEL PORT - GET PRINTER STATUS
4C - INT 4C - TI Professional PC - CLOCK/ANALOG INTERFACE
4C - INT 4C - Tandy 2000 - GET MEMORY SIZE
4E00 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS DATE
4E01 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS TIME
4E02 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - GET BIOS DATA AND TIME
4F - INT 4F - TI Professional PC - SYSTEM CONFIGURATION CALL
51 - INT 51 - Tandy 2000 - KEYBOARD SERVICES
52 - INT 52 - Tandy 2000 - VIDEO SERVICES
53 - INT 53 - Tandy 2000 - SERIAL COMMUNICATIONS
54 - INT 54 - Tandy 2000 - LINE PRINTER
55 - INT 55 - TI Professional PC - RESERVED FOR FUTURE USE
55 - INT 55 - Tandy 2000 - SYSTEM CLOCK
56 - INT 56 - TI Professional PC - RESERVED FOR FUTURE USE
56 - INT 56 - Tandy 2000 - FLOPPY DISK SERVICES
57 - INT 57 C - TI Professional PC - CRT MAPPING HOOK
58 - INT 58 C - TI Professional PC - SYSTEM TIMER 25ms HOOK
59 - INT 59 - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR
5A - INT 5A - TI Professional PC - SYSTEM TIMER 100ms HOOK
5B - INT 5B C - TI Professional PC - KEYBOARD MAPPING HOOK
5C0100 - INT 5C C - TI Professional PC - KEYBOARD PAUSE KEY VECTOR
5D - INT 5D C - TI Professional PC - KEYBOARD BREAK KEY VECTOR
5E - INT 5E C - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR
5F - INT 5F C - TI Professional PC - KEYBOARD QUEUEING VECTOR
5F00 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE
5F01 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET FILL MASK
5F02 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO
5F03 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN
5F04 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET CLIP REGION
5F05 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW RECTANGLE
5F06 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW LINE
5F07 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT
5F08 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN
5F09 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR
5F0A - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE
5F0B - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LINE TYPE
5F0C - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL
5F0D - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET IMAGE
5F0E - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE
5F0F - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT
5F10 - INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER
5F11 - INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT
60 - INT 60 - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)
60 - INT 60 - Atari Portfolio - USER INTERFACE FUNCTIONS
60----DI0100 - INT 60 u - HP 95LX System Manager - WAIT FOR EVENT
60----DI0101 - INT 60 u - HP 95LX System Manager - CHECK FOR EVENT
60----DI0102 - INT 60 u - HP 95LX System Manager - "SH_STATUS"
60----DI0104 - INT 60 u - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES
60----DI0105 - INT 60 u - HP 95LX System Manager - FLUSH KEYBOARD BUFFER
60----DI0106 - INT 60 u - HP 95LX System Manager - YIELD CPU
60----DI0107 - INT 60 u - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST
60----DI0200 - INT 60 u - HP 95LX System Manager - SETUP MENU
60----DI0201 - INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU
60----DI0202 - INT 60 u - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU
60----DI0203 - INT 60 u - HP 95LX System Manager - REMOVE MENU
60----DI0204 - INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE
60----DI0205 - INT 60 u - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU
60----DI0206 - INT 60 u - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU
60----DI0207 - INT 60 u - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE
60----DI0208 - INT 60 u - HP 95LX System Manager - REMOVE FILE SELECTION MENU
60----DI0300 - INT 60 u - HP 95LX System Manager - DISPLAY STRING
60----DI0301 - INT 60 u - HP 95LX System Manager - CLEAR PORTION OF SCREEN
60----DI0302 - INT 60 u - HP 95LX System Manager - SCROLL PORTION OF SCREEN
60----DI0303 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"
60----DI0304 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"
60----DI0305 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"
60----DI0307 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"
60----DI0308 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"
60----DI0309 - INT 60 u - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE
60----DI030A - INT 60 u - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE
60----DI030B - INT 60 u - HP 95LX System Manager - SET CURSOR POSITION
60----DI0400 - INT 60 u - HP 95LX System Manager - "EDIT_INIT"
60----DI0401 - INT 60 u - HP 95LX System Manager - EDIT ON TOP LINE
60----DI0402 - INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD
60----DI0403 - INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK
60----DI0404 - INT 60 u - HP 95LX System Manager - "MDIT_INI"
60----DI0405 - INT 60 u - HP 95LX System Manager - "MDIT_DIS"
60----DI0406 - INT 60 u - HP 95LX System Manager - "MDIT_KEY"
60----DI0407 - INT 60 u - HP 95LX System Manager - "MDIT_FIL"
60----DI0408 - INT 60 u - HP 95LX System Manager - "MDIT_MARK"
60----DI0409 - INT 60 u - HP 95LX System Manager - "MDIT_UNMARK"
60----DI040A - INT 60 u - HP 95LX System Manager - "MDIT_CUTMARK"
60----DI040B - INT 60 u - HP 95LX System Manager - "MDIT_INS_STR"
60----DI0500 - INT 60 u - HP 95LX System Manager - OPEN FILE
60----DI0501 - INT 60 u - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE
60----DI0502 - INT 60 u - HP 95LX System Manager - CREATE NEW FILE
60----DI0503 - INT 60 u - HP 95LX System Manager - CREATE OR TRUNCATE FILE
60----DI0504 - INT 60 u - HP 95LX System Manager - READ FROM FILE
60----DI0505 - INT 60 - HP 95LX System Manager - WRITE TO FILE
60----DI0506 - INT 60 u - HP 95LX System Manager - SET FILE POSITION
60----DI0507 - INT 60 u - HP 95LX System Manager - GET FILE POSITION
60----DI0508 - INT 60 u - HP 95LX System Manager - CLOSE FILE
60----DI0509 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETPAT"
60----DI050A - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_MATCH"
60----DI050B - INT 60 u - HP 95LX System Manager - IDENTIFY FILENAME REFERENT
60----DI050C - INT 60 u - HP 95LX System Manager - DELETE FILE
60----DI050D - INT 60 u - HP 95LX System Manager - RENAME FILE
60----DI050E - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETDIR"
60----DI050F - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETDIR"
60----DI0510 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_VOLUME"
60----DI0511 - INT 60 u - HP 95LX System Manager - MAKE A SUBDIRECTORY
60----DI0512 - INT 60 u - HP 95LX System Manager - REMOVE A SUBDIRECTORY
60----DI0513 - INT 60 u - HP 95LX System Manager - GET DEFAULT DRIVE
60----DI0514 - INT 60 u - HP 95LX System Manager - SET DEFAULT DRIVE
60----DI0515 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_FDATE"
60----DI0516 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"
60----DI0517 - INT 60 u - HP 95LX System Manager - GET FILE ATTRIBUTES
60----DI0518 - INT 60 u - HP 95LX System Manager - SET FILE ATTRIBUTES
60----DI0519 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"
60----DI051A - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COPYDT"
60----DI051B - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETFDT"
60----DI051C - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"
60----DI0600 - INT 60 u - HP 95LX System Manager - PROCESS INITIALIZING
60----DI0601 - INT 60 u - HP 95LX System Manager - PROCESS TERMINATION
60----DI0602 - INT 60 u - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES
60----DI0603 - INT 60 u - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES
60----DI0604 - INT 60 u - HP 95LX System Manager - "M_SPAWN"
60----DI0605 - INT 60 u - HP 95LX System Manager - "M_APPCOUNT"
60----DI0606 - INT 60 u - HP 95LX System Manager - "M_REBOOT"
60----DI0607 - INT 60 u - HP 95LX System Manager - "M_SPAWNARG"
60----DI0608 - INT 60 u - HP 95LX System Manager - "M_REG_APP_NAME"
60----DI0609 - INT 60 u - HP 95LX System Manager - "M_APP_NAME"
60----DI0700 - INT 60 u - HP 95LX System Manager - OPEN CLIPBOARD
60----DI0701 - INT 60 u - HP 95LX System Manager - CLOSE CLIPBOARD
60----DI0702 - INT 60 u - HP 95LX System Manager - RESET CLIPBOARD
60----DI0704 - INT 60 u - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???
60----DI0705 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"
60----DI0706 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"
60----DI0707 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"
60----DI0708 - INT 60 u - HP 95LX System Manager - WRITE TO CLIPBOARD
60----DI0709 - INT 60 u - HP 95LX System Manager - READ FROM CLIPBOARD
60----DI0800 - INT 60 u - HP 95LX System Manager - BEEP
60----DI0801 - INT 60 u - HP 95LX System Manager - SOUND SERVICE "M_THUD"
60----DI0802 - INT 60 u - HP 95LX System Manager - MAKE A SOUND PATTERN
60----DI0803 - INT 60 u - HP 95LX System Manager - TURN OFF SOUND
60----DI0900 - INT 60 - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK
60----DI0902 - INT 60 u - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK
60----DI0903 - INT 60 u - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK
60----DI0904 - INT 60 u - HP 95LX System Manager - FREE LARGE MEMORY BLOCK
60----DI0B00 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"
60----DI0B01 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"
60----DI0B02 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"
60----DI0B03 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"
60----DI0B04 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"
60----DI0B05 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"
60----DI0B06 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"
60----DI0B07 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"
60----DI0B08 - INT 60 u - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP
60----DI0B09 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"
60----DI0B0A - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"
60----DI0B0B - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"
60----DI0B0C - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"
60----DI0B0D - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"
60----DI0B0E - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"
60----DI0B0F - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"
60----DI0B10 - INT 60 u - HP 95LX System Manager - PARSE DATE SPECIFICATION
60----DI0B11 - INT 60 u - HP 95LX System Manager - PARSE TIME SPECIFICATION
60----DI0B12 - INT 60 u - HP 95LX System Manager - SET DATE PARSING RULE
60----DI0B13 - INT 60 u - HP 95LX System Manager - SET TIME PARSING RULE
60----DI0B14 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"
60----DI0B15 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"
60----DI0C00 - INT 60 u - HP 95LX System Manager - OPEN PRINTER
60----DI0C01 - INT 60 u - HP 95LX System Manager - CLOSE PRINTER
60----DI0C02 - INT 60 u - HP 95LX System Manager - WRITE TO PRINTER
60----DI0C03 - INT 60 u - HP 95LX System Manager - INITIALIZE PRINTER
60----DI0C04 - INT 60 u - HP 95LX System Manager - "M_TRANS_PRINTER"
60----DI0C05 - INT 60 u - HP 95LX System Manager - "M_FALL_PRINTER"
60----DI0E00 - INT 60 u - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"
60----DI0E01 - INT 60 u - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL
60----DI0E02 - INT 60 u - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL
60----DI0E03 - INT 60 u - HP 95LX System Manager - "M_COMM_GETMDM"
60----DI0E04 - INT 60 u - HP 95LX System Manager - "M_COMM_ANSWER"
60----DI0E05 - INT 60 u - HP 95LX System Manager - "M_COMM_DIAL"
60----DI0E06 - INT 60 u - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL
60----DI0E07 - INT 60 u - HP 95LX System Manager - "M_COMM_HANGUP"
60----DI0E08 - INT 60 u - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL
60----DI0E09 - INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE
60----DI0E0A - INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE
60----DI0E0B - INT 60 u - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL
60----DI0E0C - INT 60 u - HP 95LX System Manager - "M_COMM_HAZCMD"
60----DI0E0D - INT 60 u - HP 95LX System Manager - "M_COMM_COMAND"
60----DI0E0E - INT 60 u - HP 95LX System Manager - "M_COMM_BREAK"
60----DI0E0F - INT 60 u - HP 95LX System Manager - "M_COMM_FRCXON"
60----DI0E10 - INT 60 u - HP 95LX System Manager - "M_COMM_FRCXOF"
60----DI0E11 - INT 60 u - HP 95LX System Manager - "M_COMM_SETDTR"
60----DI0E12 - INT 60 u - HP 95LX System Manager - "M_COMM_XMITNG"
60----DI0E13 - INT 60 u - HP 95LX System Manager - "M_COMM_STATUS"
60----DI0E14 - INT 60 u - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS
60----DI0E15 - INT 60 u - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS
60----DI0E16 - INT 60 u - HP 95LX System Manager - "M_COMM_CNFGUR"
60----DI0E17 - INT 60 u - HP 95LX System Manager - "M_COMM_QRYERR"
60----DI0F00 - INT 60 u - HP 95LX System Manager - "M_ERRMSG"
60----DI0F01 - INT 60 u - HP 95LX System Manager - DRAW STANDARD TITLE BOX
60----DI0F02 - INT 60 u - HP 95LX System Manager - "SHOWNAME"
60----DI0F03 - INT 60 u - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX
60----DI0F04 - INT 60 u - HP 95LX System Manager - REMOVE MESSAGE BOX
60----DI0F05 - INT 60 u - HP 95LX System Manager - "M_COM_TIMER_ADDR"
60----DI0F06 - INT 60 u - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"
60----DI0F07 - INT 60 u - HP 95LX System Manager - "M_SYS_RSRC_ADDR"
60----DI0F08 - INT 60 u - HP 95LX System Manager - "M_BIOS_OUTSTR"
60----DI0F09 - INT 60 u - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX
60----DI0F0A - INT 60 u - HP 95LX System Manager - DISABLE MACROS
60----DI0F0B - INT 60 u - HP 95LX System Manager - ENABLE MACROS
60----DI0F0C - INT 60 u - HP 95LX System Manager - "M_DATE_TIME_SEPS"
60----DI0F0D - INT 60 u - HP 95LX System Manager - "M_FORM_FT"
60----DI0F0E - INT 60 u - HP 95LX System Manager - "M_RAM_IV_INFO"
60----DI1005 - INT 60 u - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE
60----DI1200 - INT 60 u - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"
60----DI1201 - INT 60 u - HP 95LX System Manager - "GET_RESOURCE_PTR"
60----DI1202 - INT 60 u - HP 95LX System Manager - "GET_RSRC_TAB_PTR"
60----DI1203 - INT 60 u - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"
60----DI1300 - INT 60 u - HP 95LX System Manager - INITIALIZE HELP SYSTEM
60----DI1301 - INT 60 u - HP 95LX System Manager - DISPLAY HELP
60----DI1302 - INT 60 u - HP 95LX System Manager - "M_HELP_KEY"
60----DI1303 - INT 60 u - HP 95LX System Manager - "M_HELP_TERM"
60----DI1400 - INT 60 u - HP 95LX System Manager - "M_ColInit"
60----DI1401 - INT 60 u - HP 95LX System Manager - "M_ColCpStr"
60----DI1402 - INT 60 u - HP 95LX System Manager - "M_ColLicsStr"
60----DI1403 - INT 60 u - HP 95LX System Manager - "M_ColLicsChar"
60----DI1404 - INT 60 u - HP 95LX System Manager - "M_ColToLower"
60----DI1405 - INT 60 u - HP 95LX System Manager - "M_ColCpSearch"
60----DI1406 - INT 60 u - HP 95LX System Manager - "M_ColToUpper"
60----DI1500 - INT 60 u - HP 95LX System Manager - "GrDispInit"
60----DI1501 - INT 60 u - HP 95LX System Manager - "GrDispClear"
60----DI1502 - INT 60 u - HP 95LX System Manager - "GrDispDot"
60----DI1503 - INT 60 u - HP 95LX System Manager - "GrDispDraw"
60----DI1504 - INT 60 u - HP 95LX System Manager - "GrDispFill"
60----DI1505 - INT 60 u - HP 95LX System Manager - "GrDispRead"
60----DI1506 - INT 60 u - HP 95LX System Manager - "GrDispString"
60----DI1507 - INT 60 u - HP 95LX System Manager - "GrDispPan"
60----DI1508 - INT 60 u - HP 95LX System Manager - "GrDispZoom"
60----DI1509 - INT 60 u - HP 95LX System Manager - "GrDispSave"
60----DI150A - INT 60 u - HP 95LX System Manager - "GrDispRestore"
60----DI150B - INT 60 u - HP 95LX System Manager - "GrDispCorner"
60----DI1604 - INT 60 u - HP 95LX System Manager - "CP_TO_LICS"
61 - INT 61 - Atari Portfolio - EXTENDED BIOS
61 - INT 61 - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)
61 - INT 61 - HP 95LX System Manager - LOAD DS
6100 - INT 61 - Atari Portfolio - SERVICE INITIALIZATION
6107 - INT 61 - Atari Portfolio - FORMAT CREDIT CARD MEMORY
6108 - INT 61 - Atari Portfolio - GET SIZE OF INTERNAL DISK
6109 - INT 61 - Atari Portfolio - FORMAT INTERNAL DISK
610B - INT 61 - Atari Portfolio - DETERMINE CCM VALIDITY
610D - INT 61 - Atari Portfolio - GET SCREEN SIZE
610E - INT 61 - Atari Portfolio - GET/SET SCREEN MODE
610F - INT 61 - Atari Portfolio - GET/SET CURSOR MODE
6110 - INT 61 - Atari Portfolio - GET/SET VIRTUAL SCREEN POSITION
6111 - INT 61 - Atari Portfolio - MOVE VIRTUAL SCREEN ORIGIN
6112 - INT 61 - Atari Portfolio - SCREEN REFRESH
6115 - INT 61 - Atari Portfolio - SOUND GENERATION
6116 - INT 61 - Atari Portfolio - MELODY TONE GENERATOR
6117 - INT 61 - Atari Portfolio - DIAL NUMBER
6118 - INT 61 - Atari Portfolio - MUTE STATES
6119 - INT 61 - Atari Portfolio - GET SERIAL PORT PARAMETERS
611A - INT 61 - Atari Portfolio - GET PERIPHERAL ID BYTE
611B - INT 61 - Atari Portfolio - SET PERIPHERAL ID BYTE
611C - INT 61 - Atari Portfolio - PRESET/GET PERIPHERAL DATA
611E - INT 61 - Atari Portfolio - GET/SET CLOCK TICK SPEED
611F - INT 61 - Atari Portfolio - GET KEY/NMI-INVOKED SCREEN REFRESH
6120 - INT 61 - Atari Portfolio - GET/SET INT 09 REVECTORING
6124 - INT 61 - Atari Portfolio - GET/SET ROM/CCM SPACE STATE
6126 - INT 61 - Atari Portfolio - GET/SET POWER CONTROL
6128 - INT 61 - Atari Portfolio - GET/SET TEXT/KEYBOARD LANGUAGE
612C - INT 61 - Atari Portfolio - GET VERSION
612D - INT 61 - Atari Portfolio - TURN SYSTEM OFF
612E - INT 61 - Atari Portfolio - ENABLE/DISABLE SYSTEM STATUS LINE
6130 - INT 61 - Atari Portfolio - FILE TRANSFER SERVICES
62 - INT 62 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
62 - INT 62 - HP 95LX - USED BY CALCULATOR
63 - INT 63 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
6300 - INT 63 - HP 100LX - MAP HIGH MEMORY
6301 - INT 63 - HP 100LX - SAVE/RESTORE MEMORY MAP
64 - INT 64 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
65 - INT 65 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
66 - INT 66 - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)
67 - INT 67 - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)
69 - INT 69 - Zenith AT BIOS - ???
6F00 - INT 6F - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR
6F0200 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER
6F0202 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.
6F0204 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE
6F0206 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION
6F0208 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR
6F020A - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES
6F020C - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES
6F020E - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS
6F0210 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER
6F0212 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT
6F0214 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED
6F0216 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST
6F04--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS
6F04--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS
6F0400 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES
6F0400BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT
6F0400BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS
6F0400BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK
6F0400BP00CC - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER
6F0402 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES
6F0402BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT
6F0402BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS
6F0402BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO
6F0402BP00CC - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT
6F0404 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON
6F0404BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT
6F0404BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS
6F0404BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO
6F0406 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF
6F0406BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT
6F0406BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG
6F0406BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK
6F0408 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER
6F0408BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT
6F0408BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN
6F0408BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT
6F040A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER
6F040ABP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT
6F040ABP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE
6F040ABP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY
6F040ABP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE
6F040C - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER
6F040CBP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY
6F040CBP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE
6F040E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING
6F040EBP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE
6F040EBP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF
6F0410 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING
6F0410BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE
6F0410BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST
6F0412BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041
6F0412BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS
6F0414BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH
6F0414BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME
6F0416BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE
6F0416BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC
6F0418BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME
6F0418BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS
6F041ABP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041
6F06 - INT 6F - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE
6F06 - INT 6F - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION
6F06--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR
6F06--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD
6F06--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING
6F08 - INT 6F - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE
6F08--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR
6F08--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE
6F08--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING
6F0A - INT 6F - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE
6F0A - INT 6F - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE
6F0A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR
6F0A--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR
6F0A--BP005A - INT 6F - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS
6F0C - INT 6F - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE
6F0C - INT 6F - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE
6F0C--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR
6F0C--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT
6F0C--BP005A - INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS
6F0E - INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE
6F0E - INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA
6F0E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR
6F0E--BP005A - INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS
6F10 - INT 6F - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE
6F10--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR
6F10--BP005A - INT 6F - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE
6F12--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR
6F12--BP005A - INT 6F - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE
6F14--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR
6F16--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR
6F18--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES
6F1E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA
6F20--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY
6F22--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY
6F24--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY
6F2A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS
6F30--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS
6F32--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS
6F34--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK
6F36--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS
6F38--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS
6F3A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES
6F3C--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION
6F3E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION
6F40--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX
6F42--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST
6F44--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST
6F46--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST
6F48--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING
80 - INT 80 U - AMI BIOS v1.00.12.AX1T - internal - BIOS SUBSYSTEM SELECTION
81 - INT 81 - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION
DF - INT DF - Victor 9000/Sirius 1 - SuperBIOS
FF - INT FF - Z100 - WARM BOOT


06 - INT 06 C - HP 95LX - SLEEP/WAKEUP
INT 06 C - HP 95LX - SLEEP/WAKEUP
Desc:	this interrupt is called just before going into light or deep
	  (shutdown) sleep and just after returning from light or deep sleep
SeeAlso: INT 0B"HP 95LX",INT 15/AX=4DD4h,INT 15/AH=4Eh

Top
100E--CXABCD - INT 10 - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE
INT 10 - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE
	AH = 0Eh
	CX = ABCDh
	BP = ABCDh
	AL = character to write
	BH = page number
	BL = foreground color (text modes as well as graphics modes)
Return: nothing
Program: V20-XT-BIOS is a ROM BIOS replacement with extensions by Peter
	  Koehlmann / c't magazine
Desc:	display a character on the screen, advancing the cursor and scrolling
	  the screen as necessary
Notes:	characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted
	  and do the expected things
SeeAlso: INT 15/AH=84h"V20-XT-BIOS"

Top
10BF00 - INT 10 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR
INT 10 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR
	AX = BF00h
Return: nothing
Desc:	specify that the external monitor become the active monitor
Note:	all registers preserved and the internal monitor is blanked
SeeAlso: AX=BF01h,AX=BF12h,AH=12h/BL=35h

Top
10BF01 - INT 10 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR
INT 10 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR
	AX = BF01h
Return: nothing
Desc:	specify that the internal monitor become the active monitor
Note:	all registers preserved and the external monitor is blanked
SeeAlso: AX=BF00h,AX=BF12h,AH=12h/BL=35h

Top
10BF02 - INT 10 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER
INT 10 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER
	AX = BF02h
	BH = master mode
	    04h CGA
	    05h EGA
	    07h MDA
Return: nothing
SeeAlso: AX=BF03h

Top
10BF03BX0000 - INT 10 - VIDEO - Compaq Extensions - GET ENVIRONMENT
INT 10 - VIDEO - Compaq Extensions - GET ENVIRONMENT
	AX = BF03h
	BX = 0000h
Return: BH = active monitor
	    (00h = external, 01h = internal, 03h both, 04h neither)
	BL = master mode (see #00211)
	CH = ASIC type and version
	    00h (reserved, very early Compaq VGCs)
	    31h if QVision VGA
	CL = switchable VDU modes supported (see #00212)
	DH = internal monitor type (see #00213)
	DL = external monitor type (see #00213)
SeeAlso: AX=1A00h,AX=BF00h,AX=BF01h,AX=BF02h,AX=BF11h

(Table 00211)
Values for Compaq video master mode:
 00h	switchable VDU not present
 04h	CGA
 05h	EGA
 07h	MDA
 08h	switchable LCD controller present
 09h	plasma VGA
 0Ah	TFT (active-matrix) VGA

Bitfields for Compaq switchable VDU modes support:
Bit(s)	Description	(Table 00212)
 0	CGA supported
 1,2	reserved (1)
 3	MDA supported
 4	BitBLT engine available
 5	132-column support availble
 6	640x480x256 mode available
 7	8-bit DAC mode available

(Table 00213)
Values for Compaq monitor type:
 00h	none
 01h	dual-mode monitor
 02h	5153 RGB monitor (RGBI 16-color)
 03h	Compaq Color monitor
 04h	640x400 flat panel (Plasma CGA)
 05h	VGC monochrome
 06h	VGC color
 07h	8-level mono LCD VGA (internal)
	1024x768 mono VGA (external)
 08h	16-level mono plasma VGA (internal)
	1024x768 color VGA (external)
 09h	4-level mono LCD CGA
 0Ah	16-level mono LCD VGA
 0Bh	active-matrix color VGA
 0Ch	active-matrix mono VGA
 0Dh	STN color VGA

Top
10BF04 - INT 10 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY
INT 10 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY
	AX = BF04h
	BH = new state of delay (00h enabled, 01h disabled)
Return: nothing
Note:	the 1993/04/08 sytem ROM appears to use BL instead of BH; a future
	  version of the list will provide more definite information
SeeAlso: AX=BF05h

Top
10BF05 - INT 10 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY
INT 10 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY
	AX = BF05h
	BH = new state of video
	    00h off
	    01h on
Return: nothing
Note:	the 1993/04/08 sytem ROM appears to use BL instead of BH; a future
	  version of the list will provide more definite information
SeeAlso: AH=12h/BL=36h,AX=BF04h

Top
10BF06 - INT 10 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE
INT 10 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE
	AX = BF06h
	CL = address to be read from gray scale table
Return: AL = bit 3-0 - Value read from gray scale table
	CL = address to be read from gray scale table
SeeAlso: AH=12h/BL=33h,AX=BF07h

Top
10BF07 - INT 10 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE
INT 10 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE
	AX = BF07h
	CH = value to write to gray scale table
	CL = address to be written to gray scale table
Return: nothing
SeeAlso: AX=BF06h,AX=BF08h

Top
10BF08 - INT 10 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS
INT 10 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS
	AX = BF08h
	CH = bits 7-4 green weight
	     bits 3-0 blue weight
	CL = bits 7-4 unused
	     bits 3-0 red weight
Return: nothing
SeeAlso: AH=12h/BL=33h,AX=BF07h

Top
10BF09 - INT 10 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO
INT 10 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO
	AX = BF09h
Return: CF clear
Notes:	sets bit 6 of port 03CEh index 81h; in some cases also sets index 84h
	  to 6Fh and index 83h to 04h
	supported by at least the QVision board and the LTE Lite ROM BIOS
SeeAlso: AX=BF0Ah,AX=BF0Bh

Top
10BF0A - INT 10 - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO
INT 10 - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO
	AX = BF0Ah
Return: CF clear
Notes:	clears bit 6 of port 03CEh index 81h; in some cases also sets index 84h
	  to 80h and index 83h to FBh
	supported by at least the QVision board and the LTE Lite ROM BIOS
SeeAlso: AX=BF09h,AX=BF0Bh

Top
10BF0B - INT 10 - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED
INT 10 - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED
	AX = BF0Bh
Return: CF clear
	AX = state (0000h normal video, 0001h reverse video)
Note:	supported by at least the QVision board and the LTE Lite ROM BIOS
SeeAlso: AX=BF09h,AX=BF0Ah

Top
10BF0C - INT 10 - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE
INT 10 - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE
	AX = BF0Ch
Return: CF clear
Desc:	specify that video DAC registers use only six bits of color info
Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS
SeeAlso: AX=BF0Dh,AX=BF0Eh

Top
10BF0D - INT 10 - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE
INT 10 - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE
	AX = BF0Dh
Return: CF clear
Desc:	specify that video DAC registers use all eight bits of color info
Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS
SeeAlso: AX=BF0Ch,AX=BF0Eh

Top
10BF0E - INT 10 - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode
INT 10 - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode
	AX = BF0Eh
Return: CF clear
	AL = DAC mode
	    00h in 6-bit mode
	    01h in 8-bit mode
Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS
SeeAlso: AX=BF0Ch,AX=BF0Dh

Top
10BF0F - INT 10 - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER
INT 10 - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER
	AX = BF0Fh
	BX = high address map location in megabytes, or
	    0000h to disable high address map, or
	    FFFFh to let ROM configure high address map
Return: CF clear
	AX = previous value of high address map register
Notes:	supported by at least the QVision board and the SystemPro XL and LTE
	  Lite ROM BIOSes
SeeAlso: AX=BF10h

Top
10BF10 - INT 10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER
INT 10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER
	AX = BF10h
Return: CF clear
	AX = current value of high address map register
Notes:	supported by at least the QVision board and the SystemPro XL and LTE
	  Lite ROM BIOSes
	the Compaq QVision documentation (October 1993) says the value is
	  returned in BX, but this appears to be one of many typos
SeeAlso: AX=BF0Fh

Top
10BF11 - INT 10 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT
INT 10 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT
	AX = BF11h
Return: AL = BFh if supported
	    CF clear
	    ES:DI -> ASCII signature "COMPAQ"
	    ES:SI -> advanced functionality table (see #00214)
Note:	supported by at least the QVision board and the LTE Lite and ProSignia
	  ROM BIOSes
SeeAlso: AX=1A00h,AX=BF03h

Bitfields for Compaq advanced video functionality:
Bit(s)	Description	(Table 00214)
 31	future graphics extensions (reserved, set to 0)
 30-16	reserved
 15-12	available video memory in 256K blocks, less one (0000 = 256K, etc.)
 11-8	reserved
 7	QVision modes supported
 6	Advanced VGA modes supported
 5	Accelerated VGA modes supported
 4	standard VGA modes supported
 3-2	reserved
 1	132-column modes supported
 0	reserved

Top
10BF12 - INT 10 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR
INT 10 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR
	AX = BF12h
	BH reserved
	BL = function mask (see #00215)
Return: CF clear
Notes:	this function is a NOP if the VGA subsystem is inactive or the current
	  Display Combination Code is 10h or higher
	supported by at least the QVision board and the LTE Lite and ProSignia
	  ROM BIOSes
SeeAlso: AX=BF01h,AX=BF02h,#00733

Bitfields for function mask:
Bit(s)	Description	(Table 00215)
 7	command mode
	if set, bits 1 and 0 make the monitor active when set
	if clear, bits 1 and 0 toggle the monitor's state when set
 6-2	reserved
 1	internal monitor
 0	external monitor

Top
10BF13 - INT 10 - VIDEO - Compaq QVision - GAMMA CORRECTION
INT 10 - VIDEO - Compaq QVision - GAMMA CORRECTION
	AX = BF13h
	BL = subfunction
	    00h load gamma correction table for true-color mode
		DS = BIOS data segment
	    01h set palette RAM bypass
	BH = 00h
Return: nothing
Note:	these functions must be called after a video mode set, and are in
	  effect only for the current video mode
SeeAlso: #00733

Top
1320 - INT 13 U - Compaq, ATAPI Removable Media Device - GET CURRENT MEDIA FORMAT
INT 13 U - Compaq, ATAPI Removable Media Device - GET CURRENT MEDIA FORMAT
	AH = 20h
	DL = drive number (00h,01h)
Return: CF clear if successful
	    AL = media type (see #00265)
	    AH = 00h
	CF set on error
	    AH = error code
		01h invalid request
		30h drive does not support media sense
		31h no such drive / media not present
		32h non-default media / drive does not support media type
Notes:	this function is supported by the 1993/3/8 Compaq ROM BIOS, but only
	  partially (AL is always 00h when successful) by the 1993/8/3 version
	this function is also supported by some recent versions of the Phoenix
	  486 BIOS
	this function does not seem to be supported by some Toshiba BIOSes
	  (at least before 1995, maybe some laptops??? with 1.44 MB floppies),
	  because S/DOS 1.0 contains code to bypass a call to this function,
	  always assuming the drive would not support media sense.
SeeAlso: AH=15h

(Table 00265)
Values for Compaq/ATAPI diskette media type:
 03h	720K  (1M unformatted)
 04h	1.44M (2M unformatted)
 06h	2.88M (4M unformatted)
 0Ch	360K
 0Dh	1.2M
 0Eh	Toshiba 3mode
 0Fh	NEC 3mode (1024-byte sectors)
 10h	ATAPI Removable Media Device

Top
1501 - INT 15 - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM
INT 15 - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM
	AH = 01h
	AL = NVRAM location (00h to 3Fh) (see #00405)
	BL = NVRAM data value
Return: AH = return code
	    00h OK
	    01h address bad
	    02h write error
SeeAlso: AH=02h"Amstrad"

Format of Amstrad NVRAM:
Offset	Size	Description	(Table 00405)
 00h	BYTE	time of day: seconds
 01h	BYTE	alarm time: seconds
 02h	BYTE	time of day: minutes
 03h	BYTE	alarm time: minutes
 04h	BYTE	time of day: hours
 05h	BYTE	alarm time: hours
 06h	BYTE	day of week, 1 = Sunday
 07h	BYTE	day of month
 08h	BYTE	month
 09h	BYTE	year mod 100
 0Ah	BYTE	RTC status register A (see #00406)
 0Bh	BYTE	RTC status register B (see #00407)
 0Ch	BYTE	RTC status register C (read-only) (see #00408)
 0Dh	BYTE	RTC status register D
		bit 7: battery good
 0Eh  6 BYTEs	time and date machine last used
 14h	BYTE	user RAM checksum
 15h	WORD	Enter key scancode/ASCII code
 17h	WORD	Forward delete key scancode/ASCII code
 19h	WORD	Joystick fire button 1 scancode/ASCII code
 1Bh	WORD	Joystick fire button 2 scancode/ASCII code
 1Dh	WORD	mouse button 1 scancode/ASCII code
 1Fh	WORD	mouse button 2 scancode/ASCII code
 21h	BYTE	mouse X scaling factor
 22h	BYTE	mouse Y scaling factor
 23h	BYTE	initial VDU mode and drive count
 24h	BYTE	initial VDU character attribute
 25h	BYTE	size of RAM disk in 2K blocks
 26h	BYTE	initial system UART setup byte
 27h	BYTE	initial external UART setup byte
 28h 24 BYTEs	available for user application
Note:	bytes 00h-0Dh are the same on the IBM AT as they are used/updated by
	  the clock chip

Bitfields for RTC status register A:
Bit(s)	Description	(Table 00406)
 7	set if date/time being updated
 6-4	time base speed, default 010 = 32768 Hz
 3-0	interrupt rate selection, default 0110 = 1024 Hz
SeeAlso: #00405

Bitfields for RTC status register B:
Bit(s)	Description	(Table 00407)
 7	clear if normal update, set if abort update
 6	periodic interrupt enable
 5	alarm interrupt enable
 4	update end interrupt enable
 3	square wave enable
 2	date mode (clear = BCD, set = binary)
 1	24-hour format
 0	daylight saving time enable
SeeAlso: #00405

Bitfields for RTC status register C:
Bit(s)	Description	(Table 00408)
 7	IRQF flag
 6	PF flag
 5	AF flag
 4	UF flag
SeeAlso: #00405

Top
1502 - INT 15 - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM
INT 15 - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM
	AH = 02h
	AL = NVRAM location (00h to 3Fh)
Return: AH = return code
	    00h OK
	    01h address bad
	    02h checksum error
	AL = NVRAM data value
SeeAlso: AH=01h"Amstrad"

Top
1506 - INT 15 - Amstrad PC1512 - GET ROS VERSION NUMBER
INT 15 - Amstrad PC1512 - GET ROS VERSION NUMBER
	AH = 06h
Return: BX = version number

Top
152400 - INT 15 - SYSTEM - later PS/2s - DISABLE A20 GATE
INT 15 - SYSTEM - later PS/2s - DISABLE A20 GATE
	AX = 2400h
Return: CF clear if successful
	    AH = 00h
	CF set on error
	    AH = status
		01h keyboard controller is in secure mode
		86h function not supported
Notes:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+
	IBM classifies this function as optional
BUG:	AMI BIOS v1.00.03.AV0M never reports an error on failure to disable
	  the A20 gate; it simply writes 0 to PORT 0092h
SeeAlso: AX=2401h,AX=2402h,AX=2403h,PORT 0092h

Top
152401 - INT 15 - SYSTEM - later PS/2s - ENABLE A20 GATE
INT 15 - SYSTEM - later PS/2s - ENABLE A20 GATE
	AX = 2401h
Return: CF clear if successful
	    AH = 00h
	CF set on error
	    AH = status
		01h keyboard controller is in secure mode
		86h function not supported
Notes:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+
	IBM classifies this function as optional
SeeAlso: AX=2400h,AX=2402h,PORT 0092h

Top
152402 - INT 15 - SYSTEM - later PS/2s - GET A20 GATE STATUS
INT 15 - SYSTEM - later PS/2s - GET A20 GATE STATUS
	AX = 2402h
Return: CF clear if successful
	    AH = 00h
	    AL = current state (00h disabled, 01h enabled)
	    CX = ??? (set to 0000h-000Bh or FFFFh by AMI BIOS v1.00.03.AV0M)
		FFFFh if keyboard controller does not become ready within C000h
			 read attempts
	CF set on error
	    AH = status
		01h keyboard controller is in secure mode
		86h function not supported
Notes:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+
	IBM classifies this function as optional
SeeAlso: AX=2400h,AX=2401h

Top
152403 - INT 15 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT
INT 15 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT
	AX = 2403h
Return: CF clear if successful
	    AH = 00h
	    BX = status of A20 gate support (see #00462)
	CF set on error
	    AH = status
		01h keyboard controller is in secure mode
		86h function not supported
Notes:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+
	IBM classifies this function as optional
BUG:	at one point early in processing INT 15/AH=24h, the AMI PCI BIOS
	  version 1.00.05.AX1 compares whether AL==03h instead of AL>=03h,
	  thus causing a random branch on any value of AL greater than 3.
SeeAlso: AX=2402h

Bitfields for A20 gate support status:
Bit(s)	Description	(Table 00462)
 0	supported on keyboard controller
 1	supported with bit 1 of I/O port 92h
 14-2	reserved
 15	additional data is available (location not yet defined)

Top
154280 - INT 15 - Compaq SLT/286 - ENTER STANDBY
INT 15 - Compaq SLT/286 - ENTER STANDBY
	AX = 4280h
Return: AH = 42h
	CF clear if successful
	CF set if unable to enter standby
SeeAlso: AX=4600h,AX=5307h/CX=0001h"STAND-BY"

Top
1544C0 - INT 15 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???
INT 15 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???
	AX = 44C0h
	ES:DI -> new DSP procedure (exchanged with CMOS[28h])
	ES:SI -> ??? buffer
Return: ES:DI -> old DSP procedure
	ES:SI buffer filled with ten bytes from CMOS (addresses 14h-1Ch)
	  followed by 00h (addresses 15h-1Ch copied only if less than 21h)
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C9h

Top
1544C1 - INT 15 - Olivetti Quaderno - ???
INT 15 - Olivetti Quaderno - ???
	AX = 44C1h
	???
Return: ???
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C9h

Top
1544C2 - INT 15 - Olivetti Quaderno - ???
INT 15 - Olivetti Quaderno - ???
	AX = 44C2h
	DL = byte to be written to I/O port 350h
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C3h,AX=44C9h

Top
1544C3 - INT 15 - Olivetti Quaderno - GET ???
INT 15 - Olivetti Quaderno - GET ???
	AX = 44C3h
Return: DH = bitfields (see #00465)
	DL = value read from I/O port 350h
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C2h,AX=44C9h

Bitfields for Olivetti Quaderno ???:
Bit(s)	Description	(Table 00465)
 5-7	5-7 read from I/O port 351h
 2-4	zero
 1-0	"tres complique"

Top
1544C4 - INT 15 - Olivetti Quaderno - ???
INT 15 - Olivetti Quaderno - ???
	AX = 44C4h and 44C5h
	???
Return: ???
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C9h

Top
1544C6 - INT 15 - Olivetti Quaderno - READ LCD
INT 15 - Olivetti Quaderno - READ LCD
	AX = 44C6h
Return: DX = FFFFh clock is displayed on LCD display
	DX = other: hex number displayed in first four positions of display
	BH = left alphanumeric character on display (see #00466)
	BL = right alphanumeric character on display (see #00466)
	CL = colon flags (see #00467)
Notes:	the LCD display has the format HH:HH:AA, where H is a hex digit and A
	  is an alphanumeric character
	this function is also supported by XBIOS.COM
SeeAlso: AX=44C7h,AX=44C9h

(Table 00466)
Values for Olivetti Quaderno LCD alphanumeric characters:
 00h-0Fh hex digit
 2Bh	"+"
 2Dh	"-"
 30h-39h "0" to "9"
 41h-5Ah "A" to "Z"
 61h-6Ah "a" to "z"
 else	blank

Bitfields for Olivetti Quaderno LCD colon flags:
Bit(s)	Description	(Table 00467)
 0	left colon on
 1	right colon on
 2-7	unused

Top
1544C7 - INT 15 - Olivetti Quaderno - WRITE LCD
INT 15 - Olivetti Quaderno - WRITE LCD
	AX = 44C7h
	DX = hex display
	    FFFFh display clock and "HI", "Md", or "Lo"
		BH,BL,CL unused
	    other: display specified hex number in first four positions
		BH = left alphanumeric character on display (see #00466)
		BL = right alphanumeric character on display (see #00466)
		CL = colon flags (see #00467)
Return: nothing
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C6h

Top
1544C8 - INT 15 - Olivetti Quaderno - ???
INT 15 - Olivetti Quaderno - ???
	AX = 44C8h
	CL = ??? (00h,02h,21h)
	CH = ???
	???
Return: ???
Note:	this function is also supported by XBIOS.COM
SeeAlso: AX=44C9h

Top
1544C9 - INT 15 - Olivetti Quaderno - GET XBIOS VERSION
INT 15 - Olivetti Quaderno - GET XBIOS VERSION
	AX = 44C9h
Return: AL = major version
	AH = minor version
Note:	this function is also supported by XBIOS.COM

Top
1545 - INT 15 U - HP 100LX/200LX - SET DISPLAY CONTROL STATUS
INT 15 U - HP 100LX/200LX - SET DISPLAY CONTROL STATUS
	AH = 45h
	AL = new display control status
	    bit 0: DISPCTL flag +C instead of -C
	    bit 1: DISPCTL flag +K instead of -K
SeeAlso: AH=46h"HP",AH=47h"HP"

Top
1546 - INT 15 U - HP 100LX/200LX - SET POWER OFF TIMEOUT
INT 15 U - HP 100LX/200LX - SET POWER OFF TIMEOUT
	AH = 46h
	BX = timeout value in ticks
	    0000h inhibit auto power off
Note:	the 200LX default timeout is 0CCDh = 3277 ticks = approx. 3 min.
SeeAlso: AH=45h"HP",AH=47h"HP"

Top
154600 - INT 15 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION
INT 15 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION
	AX = 4600h
Return: AH = modem configuration information (see #00468)
	AL = power conservation status information (see #00469)
	BH = default system inactivity timeout (1-21 minutes)
	BL = current system inactivity timeout (1-21 minutes)
	CH = default video display inactivity timeout (1-63 minutes)
	CL = current video display inactivity timeout (1-63 minutes)
	DH = default fixed disk drive inactivity timeout (1-21 minutes)
	DL = current fixed disk drive inactivity timeout (1-21 minutes)
SeeAlso: AX=4280h,AX=4601h,INT 77

Bitfields for Compaq SLT/286 modem configuration information:
Bit(s)	Description	(Table 00468)
 0	powerup state (0 off, 1 on)
 1	modem installed
 2	IRQ line assignment (0 IRQ 4, 1 IRQ 3)
 3	COM port assignment (0 = COM 2, 1 = COM 1)
 4	modem state (0 not assigned, 1 assigned)
 5	modem is on

Bitfields for Compaq SLT/286 power conservation status:
Bit(s)	Description	(Table 00469)
 0	power source (0 internal, 1 external)
 1-2	low battery state
	00 no low battery condition
	01 low battery 1
	10 reserved
	11 low battery 2
 3-4	power conservation mode
	00 automatic, 01 on, 10 off, 11 reserved

Top
154601 - INT 15 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION
INT 15 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION
	AX = 4601h
	BL = system inactivity timeout (1-21 minutes)
	    FFh do not change
	CL = video display inactivity timeout (1-63 minutes)
	    FFh do not change
	DL = current fixed disk drive inactivity timeout (1-21 minutes)
	    FFh do not change
	DH = new modem state (00h turn off, 01h turn on, FFh don't change)
Return: CF clear if successful
	    AH = 00h
	    BL = current system inactivity timeout (1-21 minutes)
	    CL = current video display inactivity timeout (1-63 minutes)
	    DL = current fixed disk drive inactivity timeout (1-21 minutes)
	    DH = modem state (FFh unchanged, 00h turned off, 01h turned on)
	CF set on error
	    AH = error code
		01h input is out of range
		02h no modem present
SeeAlso: AX=4600h,INT 77

Top
154604 - INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - GET ???
INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - GET ???
	AX = 4604h
Return: CF clear if successful
	    AL = byte read from I/O port 03F8h
	CF set on error (not supported)
	    AH = 86h (unsupported function)
Note:	also supported by 1993/7/26 LTE Lite 386 ROM

Top
154605 - INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - ???
INT 15 - Compaq Contura 486 and "Alladin" 1993/08/05 ROMs - ???
	AX = 4605h
Return: CF clear if successful
	CF set on error (not supported)
	    AH = 86h (unsupported function)
Note:	this function is a NOP (other than clearing CF) in the 1993/08/05
	  version of the Contura 486/486c/486cx and "Aladdin" ROM, and the
	  1993/7/26 LTE Lite 386 ROM

Top
1547 - INT 15 U - HP 100LX/200LX - GET/SET DISPLAY CONTRAST
INT 15 U - HP 100LX/200LX - GET/SET DISPLAY CONTRAST
	AH = 47h
	AL = subfunction
	   00h set contrast
		BL = new contrast
		    (00h-0Fh, 0Fh is darkest, 10h-FFh are same as 0Fh)
	   other get current contrast
Return: AL = contrast (00h-0Fh, 0Fh is darkest)
Note:	may be for backward compatibility with HP95LX, as INT 15/AH=62h does
	  substantially the same thing as this function
SeeAlso: AH=45h"HP",AH=48h"HP",AH=62h"HP"

Top
1548 - INT 15 U - HP 100LX/200LX - SET BUZZER VOLUME
INT 15 U - HP 100LX/200LX - SET BUZZER VOLUME
	AH = 48h
	AL = volume (00h-03h; 03h is loudest, 04h-FFh are same as 03h)
SeeAlso: AH=47h"HP"

Top
154B - INT 15 U - HP 100LX/200LX - ADJUST SYSTEM TIME
INT 15 U - HP 100LX/200LX - ADJUST SYSTEM TIME
	AH = 4Bh
Desc:	adjust system time based on real-time clock
SeeAlso: AH=4Ah"HP",INT 1A/AH=02h,INT 21/AH=2Ch

Top
154DD4 - INT 15 - HP 95LX/100LX/200LX - INSTALLATION CHECK
INT 15 - HP 95LX/100LX/200LX - INSTALLATION CHECK
	AX = 4DD4h
Return: BX = 4850h ("HP") if HP 95LX/100LX/200LX
	    CX = model
		0101h HP 95LX
		0102h HP 100LX/200LX
	    DH = ???
		02h HP 200LX 2MB BIOS 1.01 A D german
	    DL = ???
		00h HP 95LX
		01h HP 200LX 2MB BIOS 1.01 A D german
SeeAlso: INT 0B"HP 95LX",INT 0F"HP 95LX",INT 5F/AH=00h,INT 60/DI=0100h
SeeAlso: INT 61"HP 95LX"

Top
154E - INT 15 - HP 95LX - ENABLE/DISABLE LIGHT SLEEP
INT 15 - HP 95LX - ENABLE/DISABLE LIGHT SLEEP
	AH = 4Eh
	AL = light sleep
	    00h disabled
	    01h enabled
Note:	when light sleep is disabled, the system will continue running at full
	  speed; when enabled, it may automatically slow to conserve batteries
SeeAlso: INT 06"HP 95LX",INT 60/DI=0100h

Top
1560 - INT 15 - HUNTER 16 - SET SYSTEM CLOCK SPEED
INT 15 - HUNTER 16 - SET SYSTEM CLOCK SPEED
	AH = 60h
	AL = new speed
	    00h normal (8 MHz)
	    01h Slow Mode 1 (4 MHz)
	    02h Slow Mode 2 (2 MHz)
Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family
	  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.
SeeAlso: AX=6301h

Top
1561 - INT 15 - HUNTER 16 - GET POWER LEVEL
INT 15 - HUNTER 16 - GET POWER LEVEL
	AH = 61h
Return: AH = percentage of full power left (0..100)
Desc:	determine how much battery power is left
SeeAlso: AH=62h,AH=66h,AH=73h"HUNTER"

Top
1561 - INT 15 U - HP 100LX/200LX - SET ANNOUNCIATORS POSITION
INT 15 U - HP 100LX/200LX - SET ANNOUNCIATORS POSITION
	AH = 61h
	AL = position (20h = left, 60h = right)
Note:	The announciators are the indicator symbols for the Shift and Fn keys
	  in the bottom line
SeeAlso: AH=62h"HP",INT 16/AH=02h

Top
1562 - INT 15 - HUNTER 16 - SET LOW POWER THRESHOLD
INT 15 - HUNTER 16 - SET LOW POWER THRESHOLD
	AH = 62h
	AL = level (00h 5%, 01h 10%, ... 12h 95%)
	BX = interval between power low warnings in seconds (1..600)
Return: AH = Status
Desc:	set the level (relative to full power) when power-low warnings begin
	  and the interval between the warnings
SeeAlso: AH=61h,AH=65h,AH=66h

Top
1562 - INT 15 U - HP 100LX/200LX - SET DISPLAY CONTRAST
INT 15 U - HP 100LX/200LX - SET DISPLAY CONTRAST
	AH = 62h
	BL = contrast (00h-1Fh, 1Fh is the darkest)
SeeAlso: AH=47h"HP",AH=61h"HP"

Top
156300 - INT 15 - HUNTER 16 - GET IDLE TIMEOUT
INT 15 - HUNTER 16 - GET IDLE TIMEOUT
	AX = 6300h
Return: AH = status
	BX = timeout in seconds (0-3600)
Desc:	get the idle timeout value, the interval without keyboard or
	   communications activity before the system shuts down
SeeAlso: AX=6301h

Top
156301 - INT 15 - HUNTER 16 - SET IDLE TIMEOUT
INT 15 - HUNTER 16 - SET IDLE TIMEOUT
	AX = 6301h
	BX = timeout in seconds (0-3600)
Desc:	sets the idle timeout value, the interval without keyboard or
	  communications activity before the system shuts down
SeeAlso: AX=6300h

Top
1564 - INT 15 - HUNTER 16 - CONTROL RESUME MODE
INT 15 - HUNTER 16 - CONTROL RESUME MODE
	AH = 64h
	AL = new state
	    00h disable Resume mode
	    01h enable Resume mode
Return: AH = status
Desc:	turn Resume mode on or off. In Resume mode the system starts in
	  the application that was running when it shut down as if nothing
	  had happened.
SeeAlso: AH=67h,AH=68h,AH=69h

Top
1565 - INT 15 - HUNTER 16 - AUTHORISE CHARGING
INT 15 - HUNTER 16 - AUTHORISE CHARGING
	AH = 65h
	AL = charging level
	    01h charging not allowed
	    02h charging allowed until power down
	    03h charging allowed until batteries changed or fail.
		Ask user if charging is still allowed on next poweron
	    04h charging allowed indefinitely
	BX = 0203h
	CX = 0405h
	DX = 0607h
Return: AH = status
SeeAlso: AH=66h,AH=68h

Top
1566 - INT 15 - HUNTER 16 - SET BATTERY LEVEL
INT 15 - HUNTER 16 - SET BATTERY LEVEL
	AH = 66h
	AL = level in percent of maximum (0..100)
Return: AH = status
SeeAlso: AH=61h,AH=65h

Top
1567 - INT 15 - HUNTER 16 - CONTROL STOP MODE
INT 15 - HUNTER 16 - CONTROL STOP MODE
	AH = 67h
	AL = mode when waiting for input
	    00h use STOP mode (allows communication)
	    01h use HALT mode (disallows communication)
Return: AH = status
Desc:	select the power save mode to use when waiting for input
SeeAlso: AH=69h

Top
1568 - INT 15 - HUNTER 16 - REQUEST POWER DOWN
INT 15 - HUNTER 16 - REQUEST POWER DOWN
	AH = 68h
Desc:	turns off the Hunter 16 if power down is allowed (see AH=69h)
SeeAlso: AH=69h

Top
1569 - INT 15 - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY
INT 15 - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY
	AH = 69h
	AL = mode
	    00h inhibit power down
	    01h allow power down
Return: AH = status
SeeAlso: AH=67h,AH=68h,AH=6Ah

Top
156A - INT 15 - HUNTER 16 - CONTROL SLOW MODE
INT 15 - HUNTER 16 - CONTROL SLOW MODE
	AH = 6Ah
	AL = mode
	    00h inhibit Slow mode
	    01h allow Slow mode
Return: AH = status
SeeAlso: AH=69h

Top
156B - INT 15 - HUNTER 16 - GET ROM BIOS VERSION
INT 15 - HUNTER 16 - GET ROM BIOS VERSION
	AH = 6Bh
Return: BH = version number (ASCII)
	BL = release number (ASCII)
	CH = major??? release number (ASCII)
	CL = minor??? release number (ASCII)
SeeAlso: AH=6Ch

Top
156C - INT 15 - HUNTER 16 - GET SERIAL NUMBER
INT 15 - HUNTER 16 - GET SERIAL NUMBER
	AH = 6Ch
Return: BL:CX = BCD serial number
Note:	when shipped, all Hunter 16s have the same Serial Number, but a
	  different number can be stored (see AH=72h)
SeeAlso: AH=6Bh,AH=72h

Top
156D - INT 15 - HUNTER 16 - GET EVENT DETAIL
INT 15 - HUNTER 16 - GET EVENT DETAIL
	AH = 6Dh
Return: AH = 00h if successful
	CX:BX = event flags bit 0..31 (see #00494)
Note:	this function allows testing for events
SeeAlso: AH=6Eh,AH=6Fh

Bitfields for HUNTER 16 events:
Bit(s)	Description	(Table 00494)
 6	RI received
 5	RTC Alarm
 4	data received on COM2
 3	data received on COM1
 2	error on COM2
 1	error on COM1
 0	PWR button pressed

Top
156E - INT 15 - HUNTER 16 - ENABLE/TRAP EVENT
INT 15 - HUNTER 16 - ENABLE/TRAP EVENT
	AH = 6Eh
	AL = Software Interrupt
	      00h  do not trap event
	      else trap as software interrupt number AL
	BH = event number (see AH=6Dh)
	BL = enable mask
	    00h disable event
	    01h enable event
Return: AH = 00h if successful
SeeAlso: AH=6Dh,AH=6Fh

Top
156F - INT 15 - HUNTER 16 - ACKNOWLEDGE EVENT
INT 15 - HUNTER 16 - ACKNOWLEDGE EVENT
	AH = 6Fh
	AL = event number (see AH=6Dh)
Return: AH = 00h if successful
Desc:	Acknowledges the event, so the next similar event can be detected
SeeAlso: AH=6Dh"HUNTER",AH=6Eh

Top
1570 - INT 15 - HUNTER 16 - CONTROL SOUND
INT 15 - HUNTER 16 - CONTROL SOUND
	AH = 70h
	AL = new state
	    00h disable sound
	    else enable sound
Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family
	  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

Top
1571 - INT 15 - HUNTER 16 - SELECT POWER UP KEYS
INT 15 - HUNTER 16 - SELECT POWER UP KEYS
	AH = 71h
	BL = column
	BH = row
	AL = column switch (00h disable, 01h enable)
	CL = row switch (00h disable, 01h enable)
Return: AH = status
SeeAlso: AH=7Bh,AH=88h

Top
157200 - INT 15 - HUNTER 16 - RESET SERIAL NUMBER
INT 15 - HUNTER 16 - RESET SERIAL NUMBER
	AX = 7200h
Return: AH = 00h if successful
Desc:	reset the serial number to the default serial number present when the
	  Hunter 16 was shipped
SeeAlso: AH=6Ch,AH=72h

Top
1572 - INT 15 - HUNTER 16 - REDIRECT SERIAL NUMBER
INT 15 - HUNTER 16 - REDIRECT SERIAL NUMBER
	AH = 72h
	AL nonzero
	DS:BX -> new serial number (6 ASCII digits)
Return: AH = 00h if successful
Desc:	install a new serial number
SeeAlso: AH=6Ch,AX=7200h

Top
1573 - INT 15 - HUNTER 16 - GET ORACLE GT POWER LEVEL
INT 15 - HUNTER 16 - GET ORACLE GT POWER LEVEL
	AH = 73h
	AL = drive (0: A:, 1: B:)
Return: AH = status
	    00h successful
	    FFh Oracle GT drive not connected
	AL = power level in percent of maximum (0..100)
Desc:	get the power remaining in the Oracle GT batteries
SeeAlso: AH=61h

Top
1574 - INT 15 - HUNTER 16 - SET BACKLIGHT POWER UP STATE
INT 15 - HUNTER 16 - SET BACKLIGHT POWER UP STATE
	AH = 74h
	AL = new level
	    01h off
	    02h unchanged
	    03h change level
		BL = desired level (00h-7Fh)
Return: AH = status
Desc:	select the backlight level to use when the Hunter is next turned on
SeeAlso: AH=64h,AH=75h,INT 10/AH=64h,INT 10/AH=78h

Top
1575 - INT 15 - HUNTER 16 - SET CONTRAST POWER UP STATE
INT 15 - HUNTER 16 - SET CONTRAST POWER UP STATE
	AH = 75h
	AL = new level
	    01h off
	    02h unchanged
	    03h change level
		BL = desired level (00h-7Fh)
Return: AH = status
Desc:	select the LCD contrast level to use when the Hunter is next turned on
SeeAlso: AH=63h,AH=74h

Top
1576 - INT 15 - HUNTER 16 - CONTROL POWER SAVE
INT 15 - HUNTER 16 - CONTROL POWER SAVE
	AH = 76h
	BX = power save control (see #00495)
SeeAlso: AH=74h

Bitfields for HUNTER 16 power save control:
Bit(s)	Description	(Table 00495)
 0	power save enabled
 1	inhibit power save when waiting for COM1 data
 2	inhibit power save when waiting for COM2 data
 3	inhibit power save when waiting for data from barcode wand
 4	inhibit power up on timer tick

Top
1579 - INT 15 - HUNTER 16 - REDIRECT LPT1
INT 15 - HUNTER 16 - REDIRECT LPT1
	AH = 79h
	AL = port to which to redirect (00h COM1, 01h COM2)

Top
157A - INT 15 - HUNTER 16 - INVOKE HOT KEY
INT 15 - HUNTER 16 - INVOKE HOT KEY
	AH = 7Ah
Desc:	this function has the same effect as pressing the HOT key
SeeAlso: AH=7Bh

Top
157B - INT 15 - HUNTER 16 - CONTROL HOT KEY
INT 15 - HUNTER 16 - CONTROL HOT KEY
	AH = 7Bh
	AL = 00h prevent HOT key
	    else allow HOT key
Desc:	Allow or prevent the HOT key function which is used to examine and
	  change the Hunter setup
SeeAlso: AH=71h,AH=7Ah,AH=7Ch

Top
157C - INT 15 - HUNTER 16 - CONTROL HOT KEY POWER OPTION
INT 15 - HUNTER 16 - CONTROL HOT KEY POWER OPTION
	AH = 7Ch
	AL = 00h prevent HOT key power option
	    else allow HOT key power option
Desc:	allow or prevent changing the power options
SeeAlso: AH=7Bh,AH=7Dh

Top
157D - INT 15 - HUNTER 16 - OVERRIDE LOW POWER TURN OFF
INT 15 - HUNTER 16 - OVERRIDE LOW POWER TURN OFF
	AH = 7Dh
	AL = 00h turn off after 10 warnings
	    else never turn off
Desc:	specify whether the Hunter 16 turns off after 10 low power warnings
SeeAlso: AH=7Ch

Top
157E - INT 15 - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)
INT 15 - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)
	AH = 7Eh
	AL = 00h do not prompt
	    else prompt
Desc:	select whether the user is prompted for the battery state if the
	  battery cap has been off when the system is turned on
SeeAlso: AH=7Fh

Top
157F - INT 15 - HUNTER 16 - SET BATTERY TYPE (APM)
INT 15 - HUNTER 16 - SET BATTERY TYPE (APM)
	AH = 7Fh
	AL = battery type
	    00h	 non-rechargeable
	    else rechargeable
SeeAlso: AH=7Eh

Top
1580 - INT 15 - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)
INT 15 - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)
	AH = 80h
	AL = function
	    00h get
		Return: AL = capacity (500mA + AL * 50mA, max 40 = 2500mA)
	    else set
		BL = battery capacity (same as AL above)
SeeAlso: AH=61h"HUNTER",AH=81h"HUNTER"

Top
1581 - INT 15 - HUNTER 16 - CONTROL POWER OUTPUT
INT 15 - HUNTER 16 - CONTROL POWER OUTPUT
	AH = 81h
	AL = new state of power output (00h off, nonzero on)
Desc:	turn the +5V low power output on or off
SeeAlso: AH=80h"HUNTER"

Top
1582 - INT 15 - HUNTER 16 - SOUND OUTPUT
INT 15 - HUNTER 16 - SOUND OUTPUT
	AH = 82h
	DX = length (duration in seconds = DX * 666670 / frequency)
	BX = pitch (see #00497)
Desc:	Sound the tone specified in BX for the duration in DX
SeeAlso: AX=1019h

(Table 00497)
Values for HUNTER 16 sound pitch:
BX(dec)	 Note	Frequency	BX(dec)	 Note	Frequency
  425	G	1568.000	 1515	A	 440.000
  451	F#	1479.503	 1605	G#	 415.307
  477	F	1396.900	 1701	G	 392.000
  506	E	1318.500	 1802	F#	 369.998
  536	D#	1244.523	 1909	F	 349.230
  568	D	1174.700	 2022	E	 329.630
  601	C#	1108.749	 2143	D#	 311.127
  637	C	1046.500	 2270	D	 293.660
  675	B	 958.770	 2405	C#	 277.183
  715	A#	 932.329	 2548	MID C	 261.630
  758	A	 880.000	 2700	B	 246.940
  803	G#	 830.609	 2860	A#	 233.081
  850	G	 783.990	 3030	A	 220.000
  901	F#	 739.990	 3210	G#	 207.654
  954	F	 698.460	 3401	G	 196.000
 1011	E	 659.260	 3604	F#	 184.996
 1071	D#	 622.257	 3818	F	 174.610
 1135	D	 587.330	 4045	E	 164.810
 1203	C#	 554.365	 4286	D#	 155.560
 1274	C	 523.250	 4540	D	 146.830
 1350	B	 493.880	 4668	C#	 142.827
 1430	A#	 466.162	 4803	C	 138.810

Top
1583 - INT 15 - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION
INT 15 - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION
	AH = 83h
	AL = state of LCD window (00h disabled, nonzero enabled)
Desc:	Enable/disable the facility where the displayed window tracks the
	  cursor output to keep the focus visible

Top
1584 - INT 15 - V20-XT-BIOS - JOYSTICK SUPPORT
INT 15 - V20-XT-BIOS - JOYSTICK SUPPORT
	AH = 84h
	DX = subfunction
	    0000h read joystick switches
		Return: AL bits 7-4 = switch settings
	    other: read positions of joysticks as indicated by bits 0-3
		Return: AX = X position of joystick A (if DX bit 0 set)
			BX = Y position of joystick A (if DX bit 1 set)
			CX = X position of joystick B (if DX bit 2 set)
			DX = Y position of joystick B (if DX bit 3 set)
Return: CF set on error
	    AH = status (see #00496)
	CF clear if successful
Program: V20-XT-BIOS is a ROM BIOS replacement with extensions by Peter
	   Koehlmann / c't magazine
SeeAlso: AH=84h"PS",INT 10/AH=0Eh/CX=ABCDh

Top
158400 - INT 15 - HUNTER 16 - GET DISKETTE PORT
INT 15 - HUNTER 16 - GET DISKETTE PORT
	AX = 8400h
	BH = Drive (0: A:, 1: B:)
Return: AL = Port (0: COM1, >0: COM2)
Desc:	return the COM port used for the floppy drive
SeeAlso: AX=8401h

Top
158401 - INT 15 - HUNTER 16 - SET DISKETTE PORT
INT 15 - HUNTER 16 - SET DISKETTE PORT
	AX = 8401h
	BH = Drive (0: A:, 1: B:)
	BL = Port (0: COM1, >0: COM2)
Desc:	set the COM port used for the floppy drive
SeeAlso: AX=8400h

Top
158500 - INT 15 - HUNTER 16 - RESTORE POWER MENU (APM)
INT 15 - HUNTER 16 - RESTORE POWER MENU (APM)
	AX = 8500h
Desc:	restore the standard power menu
SeeAlso: AX=8501h"HUNTER"

Top
158501 - INT 15 - HUNTER 16 - SET POWER MENU (APM)
INT 15 - HUNTER 16 - SET POWER MENU (APM)
	AX = 8501h
	BL = user software interrupt number
Desc:	install an alternate power menu routine
SeeAlso: AX=8500h"HUNTER"

Top
1586 - INT 15 - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE
INT 15 - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE
	AH = 86h
	AL = function (00h get, nonzero set)
	BX = 1234h
	DS:SI -> 256-byte Attribute buffer
Note:	In text modes each character has its attribute byte XOR'd with the
	  corresponding byte in the attribute table.  If the attribute is 15,
	  15 is XOR'd with Table[15]

Top
1587 - INT 15 - HUNTER 16 - SET INT 72h VECTOR
INT 15 - HUNTER 16 - SET INT 72h VECTOR
	AH = 87h
	DS:DX = new service routine
Desc:	set the INT 72h vector which is called in 2 cases:
	  - when the machine is about to turn off or reboot, INT 72h is called
	    with AH=0
	  - when the machine is powering up INT 72h is called with AH=01h
Note:	the actual INT 72h vector must also be changed with INT 21/AH=25h

Top
1588 - INT 15 - HUNTER 16 - GET POWER UP KEYS
INT 15 - HUNTER 16 - GET POWER UP KEYS
	AH = 88h
Return: AH = 00h
	BX = column
	CL = row
SeeAlso: AH=71h

Top
158900 - INT 15 - HUNTER 16 - GET POWER MODE
INT 15 - HUNTER 16 - GET POWER MODE
	AX = 8900h
Return: AH = 00h
	BL = current power mode
	    00h Standard Power Mode (SPM)
	    01h Advanced Power Mode (APM)
SeeAlso: AX=8901h

Top
158901 - INT 15 - HUNTER 16 - SET POWER MODE
INT 15 - HUNTER 16 - SET POWER MODE
	AX = 8901h
	BL = new mode
	    00h Standard Power Mode (SPM)
	    01h Advanced Power Mode (APM)
Return: AH = 00h
SeeAlso: AX=8900h

Top
158A - INT 15 - HUNTER 16 - CONTROL POWER INPUT (SPM)
INT 15 - HUNTER 16 - CONTROL POWER INPUT (SPM)
	AH = 8Ah
	AL = new state of Power Input (00h disabled, nonzero enabled)
	SI = 1234h
	DI = 5678h
Return: AH = status
	    00h success
	    FFh failure
Desc:	Enable or disable Power Input. When Power Input is disabled the AC
	  adapter will neither charge the batteries nor supply power to the
	  Hunter 16. Disable Power Input if using Alkaline batteries.

Top
158A - INT 15 - Phoenix BIOS v4.0 - GET BIG MEMORY SIZE
INT 15 - Phoenix BIOS v4.0 - GET BIG MEMORY SIZE
	AH = 8Ah
Return: DX:AX = extended memory size in K
SeeAlso: AH=88h,AX=E801h,AX=E820h

Top
158B - INT 15 - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE
INT 15 - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE
	AH = 8Bh
	AL = function
	    00h get
		Return:	BH = Maximum charging temperature
				Temp = -20 + (n * 0.63) degrees Centigrade
			BL = Minimum charging temperature
	    else set
		BH = maximum charging temperature (as above)
		BL = minimum charging temperature (as above)
Return: AH = status
	    00h success
	    FFh failure
Desc:	get/set the temperature interval within which the charger should
	  operate

Top
158C - INT 15 - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG
INT 15 - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG
	AH = 8Ch
	AL = function
	    00h get
		Return: BX = which operations disable power save (see #00506)
	    else set
		BX = which operations should disable power save (see #00506)
SeeAlso: AH=8Dh

Bitfields for HUNTER 16 operations disabling power save:
Bit(s)	Description	(Table 00506)
 0	INT 10h prevents power save
 1	INT 13h prevents power save
 2	INT 14h prevents power save
 3	INT 15h prevents power save
 4	INT 1Ah prevents power save
 5	INT 21h prevents power save
 6	direct write to video RAM prevents power save
 7	access to 8250 UART prevents power save
 8	access to 8253 (Sound) prevents power save

Top
158D - INT 15 - HUNTER 16 - GET/SET BOOST CHARGE (SPM)
INT 15 - HUNTER 16 - GET/SET BOOST CHARGE (SPM)
	AH = 8Dh
	AL = function
	    00h get
		Return: AL = Fast Charge state (00h prevented, else allowed)
	    nonzero set
		BH = Fast Charge state (00h prevent, nonzero allow)
Return: AH = status
	    00h success
	    FFh failure
Desc:	control whether Fast Charging (200ma rather than 70ma) is allowed
SeeAlso: AH=8Ch

Top
15BC - INT 15 - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS
INT 15 - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS
	AH = BCh
Return: CF clear
	(Phoenix 1.10 10a) BYTE 0040h:00B0h set to delay loop count
	(Dell 4xxDE BIOS A11) WORD 0040h:00ECh set to delay loop count
Note:	this function reads system timer channel 0 twice, then does
	  calculations on the returned values to determine the delay loop
	  counter needed by the BIOS for beeps and floppy timeouts
SeeAlso: AX=2305h,MEM 0040h:00B0h

Top
15D820 - INT 15 - Compaq LTE Lite - GET ???
INT 15 - Compaq LTE Lite - GET ???
	AX = D820h
	DS:SI -> 17-byte buffer for ???
Return: DS:SI buffer filled (first byte is length of remaining data, unless
	  it is greater than 10h, in which case the second byte is 00h and no
	  other data is returned)
Note:	this function is also supported by Compaq's EISA System ROM, Contura
	  486/486c/486cx and recent DESKPRO/i ROMs
SeeAlso: AX=D821h

Top
15D821 - INT 15 - Compaq LTE Lite - SET ???
INT 15 - Compaq LTE Lite - SET ???
	AX = D821h
	DS:SI -> counted string (should not be more than 16 bytes)
Return: AH = 00h
Note:	this function is also supported by Compaq's EISA System ROM, Contura
	  486/486c/486cx and recent DESKPRO/i ROMs
SeeAlso: AX=D820h

Top
15D822BL00 - INT 15 - Compaq EISA System ROM 04/08/93 - GET ???
INT 15 - Compaq EISA System ROM 04/08/93 - GET ???
	AX = D822h
	BL = 00h
	CX = size of buffer or 0000h to retrieve required buffer size
	DS:SI -> buffer for ??? (if CX nonzero)
Return: CF clear if successful
	    AH = 00h
	    DH = 08h
	    CX = required buffer size to retrieve all data (if CX=0 on entry)
	    DS:SI buffer filled (if CX nonzero on entry)
	CF set on error (BL nonzero)
	    AH = 86h

Top
15D823 - INT 15 - Compaq EISA System ROM 04/08/93 - ???
INT 15 - Compaq EISA System ROM 04/08/93 - ???
	AX = D823h
	BL = subfunction??? (00h or 80h)
	BH = ???
	DS:SI -> buffer for ??? (see #00541)
Return: CF clear if successful
	    AH = 00h
	    DH = 08h
	    DL = ???
	CF set on error
	    AH = error code
		86h BL neither 00h nor 80h
		87h ???

Format of Compaq EISA buffer:
Offset	Size	Description	(Table 00541)
 00h	BYTE	???
 01h	WORD	???
 03h	BYTE	???
 04h	WORD	???
 06h	WORD	???
	???

Top
15D8 - INT 15 - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS
INT 15 - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS
	AH = D8h
	AL = A0h to A6h
	other registers as appropriate for AL=20h to 26h
Return: as appropriate for AL=20h to 26h
Note:	these functions are identical to AX=D820h to D826h, except that they
	  should be called when using 32-bit CS addressing mode

Top
15DA00 - INT 15 U - AMI PCI BIOS - ???
INT 15 U - AMI PCI BIOS - ???
	AX = DA00h
	CL = subfunction
	    00h ???
	    01h ???
	    02h get ???
	???
Return: CF clear if successful
	    ???
	CF set on error
	    AH = error code (86h unsupported subfunction)
Note:	in the v1.00.05.AX1 BIOS, subfunctions 00h and 01h always return
	  failure
SeeAlso: AX=DA01h

Top
15DA01 - INT 15 U - AMI PCI BIOS - CPU SPEED CONTROL
INT 15 U - AMI PCI BIOS - CPU SPEED CONTROL
	AX = DA01h
	CL = subfunction (00h-02h)
	    00h set low CPU speed
	    01h set high CPU speed
	    02h get current CPU speed
Return: CF clear if successful
	    AH = current/new CPU speed (00h low, 01h high)
	    AL = ??? (00h)
	CF set on error
	    AH = error code (86h unsupported subfunction)
Notes:	in the v1.00.05.AX1 BIOS, subfunctions 00h and 01h are NOPs in both
	  protected and V86 modes due to a test of MSW bit 0
	setting the CPU speed also generates the same audible signals generated
	  when manually switching speeds with Ctrl-Alt-Gray- and Ctrl-Alt-Gray+
BUG:	the BIOS apparently intends to return CF set if ???, but fails to use
	  a different exit path in that case, resulting in CF clear

Top
15DA20 - INT 15 U - AMI PCI BIOS v1.00.12.AX1T - CMOS RAM BITFIELD MANIPULATION
INT 15 U - AMI PCI BIOS v1.00.12.AX1T - CMOS RAM BITFIELD MANIPULATION
	AX = DA20h
	BL = subfunction
	    00h set CMOS data field
		BH = CMOS data field number (00h-4Dh)
		CH = new value for bitfield (in lowest bits of register)
	    01h read CMOS data field
		BH = CMOS data field number (00h-4Dh)
		Return: CH = value of bitfield
			CL = mask of valid bits
		Note:	both CL/CH shifted to move valid bits into lowest pos
	    02h set CMOS byte
		CL = CMOS RAM address (00h-7Fh)
		CH = new value for CMOS byte
	    03h get CMOS byte
		CL = CMOS RAM address (00h-7Fh)
		Return: CH = value of CMOS byte
	    04h update CMOS checksums
		Note:	sets 2Eh/2Fh to checksum of 10h-2Dh and 7Eh/7Fh to
			  checksum of 48h-7Dh
	    05h verify CMOS checksums
		Return:	CF clear if checksums OK
			    AH = 00h
			CF set if checksum mismatch
			    AH = 01h
Return: CF clear if successful
	    AH = 00h
	CF set on error
	    AH = error code (86h unsupported function/data field)
Notes:	this function was not supported by the v1.00.05.AX1 BIOS, but had been
	  added by 1.00.12.AX1T
	after using subfunctions 00h or 02h, the application must call
	  subfunction 04h to update the checksums to prevent an error the next
	  time the system is booted

(Table 00542)
Values for AMI BIOS v1.00.12.AX1T CMOS bitfield identifier:
 ID	address	bit(s)	contents
 00h	1Ah	7-6
 01h	1Dh	7-6
 02h	6Eh	1
 03h	77h	0
 04h	77h	1
 05h	77h	2
 06h	77h	3
 07h	77h	5
 08h	77h	6
 09h	77h	7
 0Ah	78h	7	power management enabled???
 0Bh	78h	6
 0Ch	10h	7-4	first floppy drive type
 0Dh	10h	3-0	second floppy drive type
 0Eh	11h	7
 0Fh	20h	4-0	selected language for error messages/setup utility
 10h	11h	2-1
 11h	11h	4
 12h	11h	0
 13h	11h	3
 14h	13h	7
 15h	13h	6-5
 16h	13h	4-2
 17h	19h	7
 18h	19h	6
 19h	19h	5
 1Ah	19h	4
 1Bh	1Eh	2-0
 1Ch	1Bh	7-6
 1Dh	1Ch	7
 1Eh	1Ch	3
 1Fh	1Ah	5-4
 20h	1Dh	5-4
 21h	1Bh	5-4
 22h	1Ch	6
 23h	1Ch	2
 24h	1Ah	3-2
 25h	1Dh	3-2
 26h	1Bh	3-2
 27h	1Ch	5
 28h	1Ch	1
 29h	1Ah	1-0
 2Ah	1Dh	1-0
 2Bh	1Bh	1-0
 2Ch	1Ch	4
 2Dh	1Ch	0
 2Eh	50h	7-0
 2Fh	51h	7-0
 30h	52h	7-0
 31h	53h	7-0
 32h	60h	0
 33h	60h	0
 34h	60h	0
 35h	60h	0
 36h	60h	0
 37h	60h	0
 38h	60h	1
 39h	61h	7
 3Ah	60h	2
 3Bh	61h	6-4
 3Ch	61h	2-0
 3Dh	60h	7-6
 3Eh	60h	5-4
 3Fh	78h	5-4
 40h	6Eh	5
 41h	1Eh	3
 42h	6Eh	0
 43h	6Eh	2
 44h	6Fh	1-0
 45h	6Fh	1-0
 46h	28h	4-2
 47h	28h	7-5
 48h	6Eh	4
 49h	6Eh	3
 4Ah	76h	7-0
 4Bh	77h	4
 4Ch	11h	6
 4Dh	1Fh	7-0

Top
15DB00 - INT 15 U - AMI BIOS - Flash ROM - READ FLASH BIOS
INT 15 U - AMI BIOS - Flash ROM - READ FLASH BIOS
	AX = DB00h
	DS:SI -> parameter block (see #00544)
	ES:DI -> buffer for copied information
Return: CF clear if successful
	CF set on error
	    AH = status (86h if not implemented)
	DS,ES destroyed, possibly other registers
Note:	used by FMUP.EXE, Intel's Flash Memory Update utility
SeeAlso: AH=DAh,AX=DB01h,AX=DB04h

Format of AMI BIOS Flash ROM parameter block:
Offset	Size	Description	(Table 00544)
 00h 32 BYTEs	ASCIZ description of the file's contents
 20h	BYTE	Logical area type (see #00545)
 21h	DWORD	logical area size (overall size of area)
 25h	BYTE	flag: load from file (FF=yes, 00=no)
 26h	BYTE	flag: reboot after update (FF=yes, 00=no)
 27h	BYTE	flag: update entire image (FF=yes, 00=no)
 28h 24	BYTEs	ASCIZ logical area name (cooresponds to offset 20)
		"System BIOS"
		"Logo Data Area", etc.
 40h 15 BYTEs	ASCIZ time stamp string: MM/DD/YY-HH:MM
 4Fh	BYTE	checksum for this header (sum of all bytes except this one)
		if checksum would be 00h,01h, or FFh, it is set to 2Ah
 50h	DWORD	this file's starting address (offset in image)
 54h	DWORD	size of image chunk in this file
 58h	BYTE	logical area type - same as offset 20h
 59h	BYTE	flag: last file in chain (FF=yes, 00=no)
 5Ah  6 BYTEs	ASCIZ signature "FLASH"
 60h 16 BYTEs	ASCIZ filename of next file in chain
 70h 16 BYTEs	ASCIZ BIOS reserved string (usually version #)
Notes:	this block is identical in format to the 128-byte header on an AMI
	  BIOS Update file
	for AX=DB00h, the following fields must be specified: 50h,54h,58h;
	  the fields at offset 20h and 5Ah should also be set if possible
	the fields at offsets 40h and 70h will be set on return, if available
SeeAlso: #00546

Top
15DB01 - INT 15 U - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION
INT 15 U - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION
	AX = DB01h
	CL = BIOS subsystem information identifier (see #00545)
Return: CF clear if successful
	    AX = 0000h
	    ES:DI -> 56-byte record describing subsystem (see #00546)
	CF set on error
	    AH = status
		01h nonexistent subsystem
		86h function not supported
	    AL = 00h
Note:	used by FMUP.EXE, Intel's Flash Memory Update utility
SeeAlso: AX=DB00h,AX=DB02h

(Table 00545)
Values for AMI BIOS subsystem identifier:
 00h	recovery code
 01h	system BIOS
 02h	PCI configuration data
 03h	OEM logo data area (see #00547)
 04h	system BIOS/Language Set (one system)
	configuration utility (another system)
SeeAlso: #00546

Format of AMI BIOS subsystem information:
Offset	Size	Description	(Table 00546)
 00h	BYTE	subsystem identifier/logical area type (see #00545)
 01h	DWORD	subsystem (FlashROM page) size in bytes
 05h	BYTE	flag: loadable from file (FFh=yes)
 06h	BYTE	flag: reboot after update (FFh=yes)
 07h	BYTE	flag: update entire image (FFh=yes)
 08h 24 BYTEs	subsystem/logical area name
 20h	BYTE	subsystem identifier???
 21h	BYTE	flag: reprogrammable if FFh
 22h	BYTE	??? (01h,02h seen)
 23h  5 BYTEs	??? (apparently always 00h)
 28h 16 BYTEs	BIOS reserved string (usually version number)
SeeAlso: #00544

Format of AMI OEM Logo data area:
Offset	Size	Description	(Table 00547)
 00h  8 BYTEs	signature
		"TEXTLOGO" if text-mode OEM logo
		8 DUP (FFh) if unused
 08h	WORD	offset of logo font definition table
 0Ah	WORD	offset of logo data
 0Ch	WORD	size of logo font table in words
 0Eh	WORD	offset of upper left corner of logo in video page
 10h	WORD	width of logo
 12h	WORD	height of logo
 14h	BYTE	reserved???
 var	var	logo font definition (16 bytes per character)
 var	var	logo data as character/attribute pairs
Note:	the attribute for the logo characters specifies which font will be used
	  for that character.  If bit 3 is cleared, the normal system font is
	  used; if bit 3 is set, the logo font is used, with screen colors
	  adjusted to match the corresponding non-bright attribute for the
	  system font
SeeAlso: #00545,#00546

Top
15DB02 - INT 15 U - AMI BIOS - Flash ROM - GET SIZE OF FLASH ROM PROGRAMMING CODE
INT 15 U - AMI BIOS - Flash ROM - GET SIZE OF FLASH ROM PROGRAMMING CODE
	AX = DB02h
Return: CF clear
	AX = 0000h
	BX = size of ROM programming code in bytes
Note:	used by FMUP.EXE, Intel's Flash Memory Update utility
SeeAlso: AX=DB00h,AX=DB03h

Top
15DB03 - INT 15 U - AMI BIOS - Flash ROM - GET FLASH ROM PROGRAMMING CODE
INT 15 U - AMI BIOS - Flash ROM - GET FLASH ROM PROGRAMMING CODE
	AX = DB03h
	DS:SI -> ???
	ES:DI -> buffer for Flash ROM programming code
	BX = ???
	DX = ???
Return: CF clear if successful
	    AH = ???
	    BX = ???
	    DX = ???
	CF set on error
	    AH = error code
Notes:	the entry point for the copied code (which is fully relocatable) is
	  the very first byte (see #00548)
	used by FMUP.EXE, Intel's Flash Memory Update utility
SeeAlso: AX=DB00h,AX=DB02h

(Table 00548)
Call AMI BIOS ??? code with:
	AL = function
	    00h erase Flash ROM block
		CX = ???
			bit 8: address line A16 inverted
		???
	    01h program new data into Flash ROM
		???
	    02h perform cold reboot
	DS:SI -> ??? (see #00549)
	ES:DI -> ???
Return: AH = status
	    00h successful
	    01h invalid function
	    02h ???
	    03h ???
	    04h ???
Note:	DS:SI and ES:DI are ignored for function 02h

Format of AMI BIOS Flash ROM programming parameters:
Offset	Size	Description	(Table 00549)
 00h 32 BYTEs	???
 20h	BYTE	BIOS section number
 21h	DWORD	length of BIOS code/data in bytes
 25h 43 BYTEs	???
 50h	DWORD	???
 54h 44 BYTEs	???
SeeAlso: #00548

Top
15DB04 - INT 15 U - AMI BIOS - Flash ROM - GET BIOS REVISION
INT 15 U - AMI BIOS - Flash ROM - GET BIOS REVISION
	AX = DB04h
Return: CF clear if supported
	    BL:BH:DL:DH = BIOS revision string
		(e.g. 'AX1 ' for v1.00.05.AX1, 'AV0M' for v1.00.03.AV0M)
	    CL = flag: DH valid?
		00h ignore DH; ignore DL as well if 20h (space)
		01h ignore DH if 20h (space)
	    CH = BIOS status
		00h normal mode
		01h ROM recovery mode
	    AL = ??? (02h)
Note:	used by FMUP.EXE, Intel's Flash Memory Update utility
SeeAlso: AX=DA05h,AX=DA15h,AX=DA8Ch,AX=DB00h,AX=DB03h

Top
15DF - INT 15 - Juko UNIQUE UX BIOS - TURBO MODE CONTROL
INT 15 - Juko UNIQUE UX BIOS - TURBO MODE CONTROL
	AH = DFh
	AL = function
	    00h turn on Turbo mode
	    01h turn off Turbo mode
	    02h set Turbo mode according to hardware switch
SeeAlso: INT 13/AX=FFFFh

Top
15E00F - INT 15 - Compaq Systempro - MULTIPROCESSOR DISPATCH
INT 15 - Compaq Systempro - MULTIPROCESSOR DISPATCH
	AX = E00Fh
	ES:BX -> start of 2nd processor's execution
Return: AL = status
	    0Fh successful
	    00h failure
SeeAlso: AX=E10Eh,AX=E200h

Top
15E10E - INT 15 - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH
INT 15 - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH
	AX = E10Eh
	ES:BX -> start of 2nd processor's execution
Return: AL = status
	    0Fh successful (halted)
	    00h failure (not halted)
SeeAlso: AX=E00Fh,AX=E200h

Top
15E200 - INT 15 - Compaq Systempro - MULTIPROCESSOR AVAILABLE
INT 15 - Compaq Systempro - MULTIPROCESSOR AVAILABLE
	AX = E200h
Return: AX bit 15 set if 2nd processor available
SeeAlso: AX=E00Fh,AX=E10Eh

Top
15E4 - INT 15 - Tandy??? - ???
INT 15 - Tandy??? - ???
	AH = E4h
	AL = subfunction
	    21h, 89h, 8Ah, 8Bh called by 386MAX v6.01
	DL = ???
Return: DL = 00h if successful???
Note:	the section of code in 386MAX which calls these functions also checks
	  whether the ROM BIOS has both Tandy and Phoenix Technologies
	  signatures if these calls fail; the Tandy 1000SL/TL BIOS does not
	  support this function, however, returning the usual CF set/AH=86h for
	  "unsupported function".

Top
15E4 - INT 15 - Compaq ROM BIOS 1993/08/03 and newer - ???
INT 15 - Compaq ROM BIOS 1993/08/03 and newer - ???
	AH = E4h
	AL = subfunction
	    00h get advanced system info
		Return: CF clear
			AH = 00h
			CX = 0000h
			BX = advanced system info flags (read from [XBDA:0094h])
			     bit 4: "mode 2" (dual harddisk controller) enabled
	    01h,02h unsupported by this ROM version
		Return: CF set, AH = 86h
	    80h set advanced system info
		BX = advanced system info flags
		     bit 4: enable "mode 2" (dual harddisk controller)
		???
		Return: ???
		Note:	On Compaq machines with "COMPAQ" signature at
			  F000h:FFEAh (see also MEM F000h:FFE0h), MS-DOS/PC DOS
			  IO.SYS/IBMBIO.COM use	this function to set bit 4
			  before calling INT 13h/AH=08h to retrieve the number
			  of hard disks installed (DL).
	    90h,A0h,B0h,C0h,D0h,E0h,F0h set ???
		Return: CF clear
			AH = 00h
			CX = 0000h
			BX = ???
	    81h,91h,A1h,B1h,C1h,D1h,E1h,F1h unsupported by 3/8/93&4/8/93 ROMs
		Return: CF set, AH = 86h
Notes:	functions 80h/90h/etc. are not supported by the 4/8/93 EISA System ROM
	these functions are not supported by the 7/26/93 LTE Lite 386 ROM

Top
15E800 - INT 15 - Compaq Contura - GET ???
INT 15 - Compaq Contura - GET ???
	AX = E800h
Return: AX = 0000h
	BH = 00h
	BL = ??? (read from port 0C7Ch)
	CH = ???
	CL = ???
	DX = 0000h
Note:	also supported by 3/8/93 DESKPRO/i and 7/26/93 LTE Lite 386 ROM BIOS

Top
15E800 - INT 15 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???
INT 15 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???
	AX = E800h
	BX = ??? (0000h)
Return: CF clear if successful
	    BH = 02h
	    BL = submodel??? (0Ch,0Dh,34h,38h,40h,44h,48h,64h,68h)
	CF set on error
	others???
Notes:	used by Compaq's SOFTPAQ number 0937 EPPBIOS.SYS to determine whether
	  the Enhanced Parallel Port expected by that driver is available
	used by Compaq's SOFTPAW number 0856 VOLCTRL.EXE to determine whether
	  volume control hardware expected by that driver is available

Top
15E800 - INT 15 - Compaq Prolinea - GET ???
INT 15 - Compaq Prolinea - GET ???
	AX = E800h
	BX = ??? (1369h)
Return: BH = 01h
	BL = ???
	others???
Note:	used by Compaq's SOFTPAQ number 0718 INT10_04.SYS to determine whether
	  the fix that driver applies is required (will not install if BX on
	  return is other than 010Eh or 010Fh)
SeeAlso: AX=E802h

Top
15E801 - INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS
INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS
	AX = E801h
Return: CF clear if successful
	    AX = extended memory between 1M and 16M, in K (max 3C00h = 15MB)
	    BX = extended memory above 16M, in 64K blocks
	    CX = configured memory 1M to 16M, in K
	    DX = configured memory above 16M, in 64K blocks
	CF set on error
Notes:	supported by the A03 level (6/14/94) and later XPS P90 BIOSes, as well
	  as the Compaq Contura, 3/8/93 DESKPRO/i, and 7/26/93 LTE Lite 386 ROM
	  BIOS
	supported by AMI BIOSes dated 8/23/94 or later
	on some systems, the BIOS returns AX=BX=0000h; in this case, use CX
	  and DX instead of AX and BX
	this interface is used by Windows NT 3.1, OS/2 v2.11/2.20, and is
	  used as a fall-back by newer versions if AX=E820h is not supported
	this function is not used by MS-DOS 6.0 HIMEM.SYS when an EISA machine
	  (for example with parameter /EISA) (see also MEM F000h:FFD9h), or no
	  Compaq machine was detected, or parameter /NOABOVE16 was given.
SeeAlso: AH=8Ah"Phoenix",AX=E802h,AX=E820h,AX=E881h"Phoenix"

Top
15E802 - INT 15 - Compaq Contura - GET ???
INT 15 - Compaq Contura - GET ???
	AX = E802h
Return: CF clear
	AX = 0000h
	BX = ???
	CX = 0000h
Note:	this function is also supported by the LTE Lite 25c, 25E, and 486; not
	  supported by LTE Lite 20 and 25.
SeeAlso: AX=E801h"Phoenix"

Top
15E820 - INT 15 - newer BIOSes - GET SYSTEM MEMORY MAP
INT 15 - newer BIOSes - GET SYSTEM MEMORY MAP
	AX = E820h
	EAX = 0000E820h
	EDX = 534D4150h ('SMAP')
	EBX = continuation value or 00000000h to start at beginning of map
	ECX = size of buffer for result, in bytes (should be >= 20 bytes)
	ES:DI -> buffer for result (see #00581)
Return: CF clear if successful
	    EAX = 534D4150h ('SMAP')
	    ES:DI buffer filled
	    EBX = next offset from which to copy or 00000000h if all done
	    ECX = actual length returned in bytes
	CF set on error
	    AH = error code (86h) (see #00496 at INT 15/AH=80h)
Notes:	originally introduced with the Phoenix BIOS v4.0, this function is
	  now supported by most newer BIOSes, since various versions of Windows
	  call it to find out about the system memory
	a maximum of 20 bytes will be transferred at one time, even if ECX is
	  higher; some BIOSes (e.g. Award Modular BIOS v4.50PG) ignore the
	  value of ECX on entry, and always copy 20 bytes
	some BIOSes expect the high word of EAX to be clear on entry, i.e.
	  EAX=0000E820h
	if this function is not supported, an application should fall back
	  to AX=E802h, AX=E801h, and then AH=88h
	the BIOS is permitted to return a nonzero continuation value in EBX
	  and indicate that the end of the list has already been reached by
	  returning with CF set on the next iteration
	this function will return base memory and ISA/PCI memory contiguous
	  with base memory as normal memory ranges; it will indicate
	  chipset-defined address holes which are not in use and motherboard
	  memory-mapped devices, and all occurrences of the system BIOS as
	  reserved; standard PC address ranges will not be reported
SeeAlso: AH=C7h,AX=E801h"Phoenix",AX=E881h,MEM xxxxh:xxx0h"ACPI"

Format of Phoenix BIOS system memory map address range descriptor:
Offset	Size	Description	(Table 00580)
 00h	QWORD	base address
 08h	QWORD	length in bytes
 10h	DWORD	type of address range (see #00581)

(Table 00581)
Values for System Memory Map address type:
 01h	memory, available to OS
 02h	reserved, not available (e.g. system ROM, memory-mapped device)
 03h	ACPI Reclaim Memory (usable by OS after reading ACPI tables)
 04h	ACPI NVS Memory (OS is required to save this memory between NVS
	  sessions)
 other	not defined yet -- treat as Reserved
SeeAlso: #00580

Top
15E881 - INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS (32-bit)
INT 15 - Phoenix BIOS v4.0 - GET MEMORY SIZE FOR >64M CONFIGURATIONS (32-bit)
	AX = E881h
Return: CF clear if successful
	    EAX = extended memory between 1M and 16M, in K (max 3C00h = 15MB)
	    EBX = extended memory above 16M, in 64K blocks
	    ECX = configured memory 1M to 16M, in K
	    EDX = configured memory above 16M, in 64K blocks
	CF set on error
Notes:	supported by AMI BIOSes dated 8/23/94 or later
	this interface is used by Windows NT 3.1, OS/2 v2.11/2.20, and is
	  used as a fall-back by newer versions if AX=E820h is not supported
SeeAlso: AX=E801h"Phoenix",AX=E820h"Phoenix"

Top
1604 - INT 16 - Tandy 2000 - KEYBOARD - FLUSH KEYBOARD BUFFER
INT 16 - Tandy 2000 - KEYBOARD - FLUSH KEYBOARD BUFFER
	AH = 04h
Note:	this interrupt is identical to INT 51 on the Tandy 2000
SeeAlso: INT 16/AH=00h,INT 16/AH=02h,INT 16/AH=05h"Tandy 2000"
SeeAlso: INT 51"Tandy 2000"

Top
1605 - INT 16 - Tandy 2000 - KEYBOARD - RESET KEYBOARD
INT 16 - Tandy 2000 - KEYBOARD - RESET KEYBOARD
	AH = 05h
Desc:	reset the keyboard and flush the keyboard buffer
Note:	this interrupt is identical to INT 51 on the Tandy 2000
SeeAlso: INT 16/AH=00h,INT 16/AH=02h,INT 16/AH=03h,INT 51"Tandy 2000"

Top
1620 - INT 16 - HUNTER 16 - SET TEMPORARY SHIFT
INT 16 - HUNTER 16 - SET TEMPORARY SHIFT
	AH = 20h
	AL = shift status (see #00590)
Notes:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family
	  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.
	the user can override the specified settings by pressing the keys

Bitfields for HUNTER 16 shift status:
Bit(s)	Description	(Table 00590)
 4	Scroll Lock on
 5	Num Lock on
 6	Caps Lock on

Top
1621 - INT 16 - HUNTER 16 - CONTROL SHIFT KEYS
INT 16 - HUNTER 16 - CONTROL SHIFT KEYS
	AH = 21h
	AL = shift keys to control (see #00582)
	BL = shift state for disabled keys
Note:	If a bit in AL is set the key is disabled and set to the state of the
	  corresponding bit in BL
SeeAlso: AH=20h"HUNTER",AH=22h"HUNTER"

Top
1622 - INT 16 - HUNTER 16 - CONTROL CTRL-ALT-DEL
INT 16 - HUNTER 16 - CONTROL CTRL-ALT-DEL
	AH = 22h
	AL = new Ctrl-Alt-Del state (00h enabled, nonzero disabled)
	BX = 0708h
	CX = 0910h
	DX = 1112h
Return: AL = 00h if successful
SeeAlso: AH=21h"HUNTER",AH=23h"HUNTER",AH=2Ah

Top
1623 - INT 16 - HUNTER 16 - CONTROL EMERGENCY BREAKOUT
INT 16 - HUNTER 16 - CONTROL EMERGENCY BREAKOUT
	AH = 23h
	AL = new state of breakout (00h enabled, nonzero disabled)
	BX = 0708h
	CX = 0910h
	DX = 1112h
Return: AL = 00h if successful
Desc:	Enables or disables the emergency breakout feature, where the
	  Hunter 16 at power on checks whether the X and P keys are pressed.
	  If so the machine will boot rather than continue the running program
SeeAlso: AH=22h"HUNTER"

Top
1624 - INT 16 - HUNTER 16 - REDEFINE KEY CODES
INT 16 - HUNTER 16 - REDEFINE KEY CODES
	AH = 24h
	AL = Matrix Code (see #00591)
	BL = new Key code
Return: AL = status (00h successful, nonzero failed)
SeeAlso: AH=2Bh,AH=2Ch

(Table 00591)
Values for HUNTER 16 Matrix Code:
 Code  Key		Code	Key		Code	Key
 00h   Esc key		1Eh	Space		3Bh	L
 01h   1		21h	0		3Ch	,
 02h   Q		22h	-		3Eh	Right shift
 03h   Tab		23h	'		42h	8
 04h   Num Lock		24h	Keypad 4	43h	7
 05h   \		25h	Enter		44h	U
 08h   LShift		26h	Keypad 7	45h	I
 09h   Ctrl		27h	.		46h	J
 0Ah   "Paw" key	28h	Keypad 1	47h	K
 0Bh   2		29h	Keypad 0	48h	M
 0Ch   W		2Ch	=		49h	N
 0Dh   A		2Dh	Backspace	4Ah	/
 0Eh   S		2Eh	Keypad 8	4Dh	6
 0Fh   Z		2Fh	Keypad 9	4Eh	5
 11h   Alt		30h	Keypad 5	4Fh	T
 16h   4		31h	Keypad 6	50h	Y
 17h   3		32h	Keypad 2	51h	G
 18h   E		33h	Keypad 3	52h	H
 19h   R		34h	Keypad .	53h	B
 1Ah   D		37h	9		54h	V
 1Bh   F		38h	O		55h	#
 1Ch   X		39h	P		58h	Pwr
 1Dh   C		3Ah	;		59h	Shift Pwr

Top
1625 - INT 16 - HUNTER 16 - RESET KEYBOARD
INT 16 - HUNTER 16 - RESET KEYBOARD
	AH = 25h
Return: AL = 00h
Desc:	restores the standard keyboard layout after any remapping
SeeAlso: AH=24h,AH=2Bh,AH=2Ch

Top
1626 - INT 16 - HUNTER 16 - CONTROL KEYCLICK
INT 16 - HUNTER 16 - CONTROL KEYCLICK
	AH = 26h
	AL = new state of keyclicks (00h disabled, 01h enabled)
Return: AL = 00h
SeeAlso: AH=2Ah

Top
1627 - INT 16 - HUNTER 16 - CONTROL SCREEN DUMP AREA
INT 16 - HUNTER 16 - CONTROL SCREEN DUMP AREA
	AH = 27h
	AL = what to dump
	    00h whole (virtual) window
	    01h LCD window only
Return: AL = 00h
Desc:	control whether printscren dumps the whole 80x25 screen or only the
	  part displayed in the LCD window
Note:	the Hunter 16 has a 240x64 LCD display which serves as a window into
	  a 640x200 virtual screen

Top
1629 - INT 16 - HUNTER 16 - GET KEY REPEAT
INT 16 - HUNTER 16 - GET KEY REPEAT
	AH = 29h
Return: BL = Typematic rate (characters per second) (see #00592)
	BH = delay (00h = 250ms, 01h = 500ms, 02h = 750ms, 03h = 1s)
SeeAlso: AH=03h,AH=2Ah

(Table 00592)
Values for HUNTER 16 Typematic rate:
 00h	30.0	 08h	15.0	 10h	7.5	 18h	3.7
 01h	26.7	 09h	13.3	 11h	6.7	 19h	3.3
 02h	24.0	 0Ah	12.0	 12h	6.0	 1Ah	3.0
 03h	21.8	 0Bh	10.9	 13h	5.5	 1Bh	2.7
 04h	20.0	 0Ch	10.0	 14h	5.0	 1Ch	2.5
 05h	18.5	 0Dh	 9.2	 15h	4.6	 1Dh	2.3
 06h	17.1	 0Eh	 8.6	 16h	4.3	 1Eh	2.1
 07h	16.0	 0Fh	 8.0	 17h	4.0	 1Fh	2.0
SeeAlso: AH=2Ah

Top
162A - INT 16 - HUNTER 16 - CONTROL KEY REPEAT
INT 16 - HUNTER 16 - CONTROL KEY REPEAT
	AH = 2Ah
	AL = new state of keyboard autorepeat (00h disabled, 01h enabled)
SeeAlso: AH=03h,AH=26h,AH=29h,AH=2Bh

Top
162B - INT 16 - HUNTER 16 - REDEFINE KEY SCAN CODES
INT 16 - HUNTER 16 - REDEFINE KEY SCAN CODES
	AH = 2Bh
	AL = which key table to redefine
	    00h unshifted
	    01h shifted
	    02h Numlock
	BH = standard scan code of key (00h-80h)
	BL = new scan code
Desc:	redefine the generated scan code from BH to BL
SeeAlso: AH=24h,AH=2Ah,AH=2Ch

Top
162C - INT 16 - HUNTER 16 - REDEFINE RAW KEY CODES
INT 16 - HUNTER 16 - REDEFINE RAW KEY CODES
	AH = 2Ch
	AL = Matrix code of key (see AH=29h)
	BL = new key code
Return: AL = status (00h success, nonzero failed)
Desc:	redefine the key code generated by holding the PAW key down and
	  pressing the key in AL
SeeAlso: AH=24h,AH=2Bh

Top
162D - INT 16 - HUNTER 16 - CONTROL BREAK KEYS
INT 16 - HUNTER 16 - CONTROL BREAK KEYS
	AH = 2Dh
	AL = enabled break keys
	    bit 0 Ctrl-C
	    bit 1 Ctrl-Break
	BX = 0708h
	CX = 0910h
	DX = 1112h
Return: AL = status (00h success, FFh failed)
SeeAlso: AH=21h"HUNTER"

Top
166F00 - INT 16 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK
INT 16 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK
	AX = 6F00h
	BX <> 4850h (usually set to 0000h for simplicity)
Return: BX = 4850h ("HP") if present
Notes:	called by recent MS Mouse drivers looking for an HP-HIL mouse
	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F01h,AX=6F04h,AX=6F07h,AX=6F09h,AX=6F0Dh,AX=6F11h,AX=6F12h
SeeAlso: INT 14/AX=6F00h,INT 17/AX=6F00h,INT 33/AX=6F00h
SeeAlso: INT 6F/AH=00h"HP Vectra"

Top
166F01 - INT 16 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES
INT 16 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES
	AX = 6F01h
Return: AH = 00h (successful)
	CX = 0004h (size of returned buffer)
	ES:SI -> buffer for typematic info (see #00596)
Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h

Format of HP Vectra EX-BIOS typematic info:
Offset	Size	Description	(Table 00596)
 00h	BYTE	delay before repeat for all non-Cursor Control Pad keys
		(see #00597)
 01h	BYTE	typematic rate for all non-Cursor Control Pad keys (see #00598)
 02h	BYTE	delay before repeat for Cursor Control Pad keys	(see #00599)
 03h	BYTE	typematic rate for Cursor Control Pad keys (see #00598)

(Table 00597)
Values for HP Vectra EX-BIOS non-CCP delay time:
 00h	17 ms
 01h	150 ms
 02h	283 ms
 03h	417 ms
 04h	550 ms
 05h	683 ms
 06h	817 ms
 07h	950 ms
 08h	1083 ms
 09h	1217 ms
 0Ah	1350 ms
 0Bh	1483 ms
 0Ch	1617 ms
 0Dh	1750 ms
 0Eh	1883 ms
 0Fh	2017 ms
Note:	the above values assume that the key repeat rate has been set to 60 Hz;
	  double the times if set to 30 Hz
SeeAlso: #00596,#00598,#00599

(Table 00598)
Values for HP Vectra EX-BIOS typematic rate:
 00h	60 / sec
 01h	30 / sec
 02h	20
 03h	15
 04h	12
 05h	10
 06h	8.57
 07h	7.5
 08h	6.66
 09h	6 / sec
 0Ah	5.45
 0Bh	5
 0Ch	4.62
 0Dh	4.28
 0Eh	4 / sec
 0Fh	typematic disabled
Note:	the above values assume that the key repeat rate has been set to 60 Hz;
	  halve the rates if set to 30 Hz
SeeAlso: #00597,#00599

(Table 00599)
Values for HP Vectra EX-BIOS CCP delay time:
 00h	17 ms
 01h	83 ms
 02h	150 ms
 03h	217 ms
 04h	283 ms
 05h	350 ms
 06h	417 ms
 07h	483 ms
 08h	550 ms
 09h	617 ms
 0Ah	683 ms
 0Bh	750 ms
 0Ch	817 ms
 0Dh	883 ms
 0Eh	950 ms
 0Fh	1017 ms
Note:	the above values assume that the key repeat rate has been set to 60 Hz;
	  double the times if set to 30 Hz
SeeAlso: #00597,#00598

Top
166F02 - INT 16 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES
INT 16 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES
	AX = 6F02h
Return: AH = 00h (successful)
	CX = 0004h (size of returned buffer)
	ES:SI -> buffer for typematic info (see #00596)
Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h
SeeAlso: AX=6F00h,AX=6F01h,AX=6F03h

Top
166F03 - INT 16 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES
INT 16 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES
	AX = 6F03h
	ES:SI -> buffer containing typematic info (see #00596)
Return: AH = 00h (successful)
Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h
SeeAlso: AX=6F00h,AX=6F01h,AX=6F02h

Top
166F04 - INT 16 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS
INT 16 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS
	AX = 6F04h
	ES:SI -> mapping buffer (see #00600)
Return: AH = 00h (successful)
	CX = 001Eh (number of bytes in buffer)
	ES:SI buffer filled
Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
	the HIL input system translates the HIL keyboard events to simulate
	  an IBM-compatible keyboard; the translation can be altered
	  dynamically by applications
SeeAlso: AX=6F00h,AX=6F05h,AX=6F06h

Format of HP Vectra EX-BIOS keyboard mapping info:
Offset	Size	Description	(Table 00600)
 00h  3 WORDs	entry for V_QWERTY driver (IP, CS, DS)
 06h  3 WORDs	entry for V_SOFTKEY driver (IP, CS, DS)
 0Ch  3 WORDs	entry for V_FUNCTION driver
 12h  3 WORDs	entry for V_NUMPAD driver
 18h  3 WORDs	entry for V_CCP driver

Top
166F05 - INT 16 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS
INT 16 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS
	AX = 6F05h
	ES:SI -> mapping buffer (see #00600)
Return: AH = 00h (successful)
	CX = 001Eh (number of bytes in buffer)
	ES:SI buffer filled
Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F04h,AX=6F06h

Top
166F06 - INT 16 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS
INT 16 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS
	AX = 6F06h
	CX = number of bytes in buffer (001Eh)
	ES:SI -> mapping buffer (see #00600)
Return: AH = 00h (successful)
Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
	any application which modifies the key mappings should restore them
	  before terminating
	drivers installed with this function are assured of 32 bytes of stack
	  space when they are invoked
SeeAlso: AX=6F04h,AX=6F05h,AX=6F07h

Top
166F07 - INT 16 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS
INT 16 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS
	AX = 6F07h
	BL = translation to set (see #00601)
Return: AH = 00h (successful)
Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
	this function may no longer work properly if the application has
	  modified the key mappings with AX=6F06h
SeeAlso: AX=6F06h,AX=6F09h

(Table 00601)
Values for HP Vectra keyboard translation specifier:
 00h	map V_CCP to V_CCPCUR, forcing the cursor pad to return cursor keys
 01h	map V_CCP to V_CCPNUM, forcing the cursor pad to always return numbers
 02h	map V_CCP to V_OFF, disabling the cursor pad
 03h	map V_CCP to V_CCPGID, converting cursor pad keys to GID data
 04h	map V_CCP to V_RAW, passing cursor pad data untranslated to INT 09
 05h	map V_SOFTKEY to V_SKEY2KFEY, translating into standard function keys
 06h	map V_SOFTKEY to V_RAW, passing Softkey scancodes direct to INT 09
 07h	map V_SOFTKEY to V_OFF, disabling HP Softkeys
SeeAlso: #00602

(Table 00602)
Values for HP Vectra scancodes and BIOS keycodes for V_RAW translator:
	      INT 09		 INT 16 keycode
    Key	     scan code	Default	 Shifted   Ctrl	     Alt
 * (NumPd)	37h	2Ah	 (Prt Sc)  00/72h    00/37H
 Sysreq		54h	  --	 --	   --	     --
 CCP-Up		60h	00/D9h	 00/BFh	   00/A5h    00/8BH
 CCP-Left	61h	00/DAh	 00/C0h	   00/A6h    00/8CH
 CCP-Down	62h	00/DBh	 00/C1h	   00/A7h    00/8DH
 CCP-Right	63h	00/DCh	 00/C2h	   00/A8h    00/8EH
 CCP-Home	64h	00/DDh	 00/C3h	   00/A9h    00/8FH
 CCP-PgUp	65h	00/DEh	 00/C4h	   00/AAh    00/90H
 CCP-End	66h	00/DFh	 00/C5h	   00/ABh    00/91H
 CCP-PgDn	67h	00/E0h	 00/C6h	   00/ACh    00/92H
 CCP-Ins	68h	00/E1h	 00/C7h	   00/ADh    00/93H
 CCP-Del	69h	00/E2h	 00/C8h	   00/AEh    00/94H
 CCP-CNTR	6Ah	00/E3h	 00/C9h	   00/AFh    00/95H
 f1		70h	00/E9h	 00/CFh	   00/B5h    00/9BH
 f2		71h	00/EAh	 00/D0h	   00/B6h    00/9CH
 f3		72h	00/EBh	 00/D1h	   00/B7h    00/9DH
 f4		73h	00/ECh	 00/D2h	   00/B8h    00/9EH
 f5		74h	00/EDh	 00/D3h	   00/B9h    00/9FH
 f6		75h	00/EEh	 00/D4h	   00/BAh    00/A0H
 f7		76h	00/EFh	 00/D5h	   00/BBh    00/A1H
 f8		77h	00/F0h	 00/D6h	   00/BCh    00/A2H
Note:	only HP-specific codes are listed in this table; see INT 09 for a full
	  list of standard scan codes
SeeAlso: #00006,#00601

Top
166F08 - INT 16 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION
INT 16 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION
	AX = 6F08h
Return: AH = status
	   00h successful
	   02h unsupported (non-HIL, i.e. standard, keyboard)
	BH = HP-HIL address (HP Vectra AT only???)
	BL = HP-HIL ID (HP Vectra AT only???)
	BL = keyboard language (ES/QS/RS only???) (see #00603)
Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
	the driver's address in the HP_VECTOR_TABLE (see INT 6F/AH=00h) may
	  be computed as (BH-1)*6 + N, where N is the address of the first
	  HP-HIL device driver (see INT 6F/AH=0Ah"F_INQUIRE_FIRST")
SeeAlso: AX=6F05h,AX=6F09h,INT 6F/AH=0Ah"F_INQUIRE_FIRST"

(Table 00603)
Values for HP HIL keyboard language code:
 00h	reserved
 01h	Arabic-French
 02h	Kanji
 03h	Swiss-French
 04h	Portugese
 05h	Arabic
 06h	Hebrew
 07h	Canadian-English
 08h	Turkish
 09h	Greek
 0Ah	Thai
 0Bh	Italian
 0Ch	Hangul (Korean)
 0Dh	Dutch
 0Eh	Swedish
 0Fh	German
 10h	Chinese (PRC)
 11h	Chinese (Taiwan)
 12h	Swiss (French ii)
 13h	Spanish
 14h	Swiss (German ii)
 15h	Belgian (Flemish)
 16h	Finnish
 17h	United Kingdom
 18h	French-Canadian
 19h	French-German
 1Ah	Norwegian
 1Bh	French
 1Ch	Danish
 1Dh	Katakana
 1Eh	Latin American Spanish
 1Fh	United States-American
 20h-FEh reserved
 FFh	non-HP keyboard (IBM AT keyboard and IBM Enhanced keyboard)

Top
166F09 - INT 16 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS
INT 16 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS
	AX = 6F09h
Return: AH = 00h (successful)
Desc:	reset all keyboard mappings to their default translators, and reset
	  typematic values to their defaults
Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras
SeeAlso: AX=6F04h,AX=6F07h,AX=6F08h

Top
166F0A - INT 16 - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED
INT 16 - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED
	AX = 6F0Ah
Return: AH = 00h (successful)
	BX = speed code
	    0Bh for low speed (see #00604)
	    12h for medium speed (see #00604)
	    0Ch for high speed (see #00604)
Note:	supported by ES, QS, and RS series of HP Vectras
SeeAlso: AX=6F00h

(Table 00604)
Values for HP Vetra CPU speed:
	Vectra		Low	    Medium	High
	ES		8 MHz	     -		 8 MHz
	ES/12		8 MHz	     -		12 MHz
	QS/16, RS/16	8 MHz	     -		16 MHz
	QS/16S		8 MHz	     -		16 MHz
	QS/20, RS/20	8 MHz	     -		20 MHz
	RS/20C		5 MHz	    10 MHz	20 MHz
	RS/25C		5 MHz	    12.5 MHz	25 MHz

Top
166F0B - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW
INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW
	AX = 6F0Bh
Return: AH = 00h (successful)
Notes:	see AX=6F0Ah for speed definitions
	supported by ES, QS, and RS series of HP Vectras
SeeAlso: AX=6F00h,AX=6F0Ah

Top
166F0C - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH
INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH
	AX = 6F0Ch
Return: AH = 00h (successful)
Notes:	see AX=6F0Ah for speed definitions
	supported by ES, QS, and RS series of HP Vectras
SeeAlso: AX=6F00h,AX=6F0Ah

Top
166F0D - INT 16 - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER
INT 16 - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER
	AX = 6F0Dh
Return: AH = interrupt number (default 6Fh, 02h means 6Fh as well)
Notes:	supported by ES, QS, and RS series of HP Vectras
	called by MS Windows HPSYSTEM.DRV and HPEBIOS.386 to support the HP-HIL
	  input system
SeeAlso: AX=6F00h,AX=6F0Eh,INT 6F/AH=00h"HP Vectra",INT 6F/AH=0Ah"HP"

Top
166F0E - INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER
INT 16 - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER
	AX = 6F0Eh
	BL = new interrupt number (60h-6Fh,78h-7Fh)
Return: AH = status (00h = successful)
Desc:	allows the HIL Extended BIOS software to use a non-default interrupt
	  number in case of an interrupt conflict with another application
Notes:	supported by ES, QS, and RS series of HP Vectras
	called by MS Windows HPSYSTEM.DRV and HPEBIOS.386 to support the HP-HIL
	  input system
SeeAlso: AX=6F00h,AX=6F0Dh,INT 6F/AH=00h"HP",INT 6F/AH=0Ah"HP"

Top
166F0F - INT 16 - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING
INT 16 - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING
	AX = 6F0Fh
Return: AH = status
	    00h successful
	    FEh cache subsystem is bad
SeeAlso: AX=6F00h,AX=6F10h,AX=6F11h

Top
166F10 - INT 16 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING
INT 16 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING
	AX = 6F10h
Return: AH = 00h (successful)
SeeAlso: AX=6F00h,AX=6F0Fh,AX=6F11h

Top
166F11 - INT 16 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE
INT 16 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE
	AX = 6F11h
Return: AH = 00h (successful)
	AL bit 0 = cache state
	    0 cache disabled
	    1 cache enabled
SeeAlso: AX=6F00h,AX=6F0Fh,AX=6F10h

Top
166F12 - INT 16 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM
INT 16 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM
	AX = 6F12h
Return: AH = 00h (successful)
Note:	see AX=6F0Ah for speed definitions
SeeAlso: AX=6F00h,AX=6F0Ah

Top
16E000 - INT 16 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER
INT 16 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER
	AX = E000h
Return: CF clear if successful
	    AL = FAh
	    BX = version number (BCD) (0200h = v2.00)
	CF set on error (not implemented)
Notes:	this interface is available on AMI BIOSes built from AMI core version
	  8/8/93 (HiFlex BIOS) or 11/15/93 (WinBIOS) or later
	the "Meningitis" virus uses this API when attacking a system equipped
	  with an AMI BIOS; it is supposedly able to write itself into the
	  Flash ROM and thus make itself part of the BIOS
SeeAlso: AX=E001h,AX=E004h,AX=E006h,AX=E008h,AX=E00Ah,AX=E00Bh,AX=E0FFh

Top
16E001 - INT 16 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE
INT 16 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE
	AX = E001h
Return: CF clear if successful
	    AL = FAh
	    BX = number of bytes required to save chipset configuration
	CF set on error
SeeAlso: AX=E000h,AX=E002h,AX=E003h

Top
16E002 - INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET
INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET
	AX = E002h
	ES:DI -> buffer for storing chipset status
Return: CF clear if successful
	    AL = FAh
	CF set on error
SeeAlso: AX=E000h,AX=E001h,AX=E003h

Top
16E003 - INT 16 - AMI BIOS - BIOS-FLASH Interface - RESTORE CHIPSET STATUS
INT 16 - AMI BIOS - BIOS-FLASH Interface -  RESTORE CHIPSET STATUS
	AX = E003h
	ES:DI -> buffer in which chipset status was previously stored
Return: CF clear if successful
	    AL = FAh
	CF set on error
SeeAlso: AX=E000h,AX=E001h,AX=E002h

Top
16E004 - INT 16 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp
INT 16 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp
	AX = E004h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	this function does not return until the voltage level stabilizes
SeeAlso: AX=E000h,AX=E005h,AX=E006h

Top
16E005 - INT 16 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp
INT 16 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp
	AX = E005h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	this function does not return until the voltage level stabilizes
SeeAlso: AX=E000h,AX=E004h,AX=E007h

Top
16E006 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT
INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT
	AX = E006h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	this function performs any delay required to allow the Flash ROM to
	  stabilize in the write-protected state
SeeAlso: AX=E000h,AX=E004h,AX=E007h

Top
16E007 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE
INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE
	AX = E007h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	this function performs any delay required to allow the Flash ROM to
	  stabilize in the write-enabled state
SeeAlso: AX=E000h,AX=E005h,AX=E006h,AX=E008h

Top
16E008 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT
INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT
	AX = E008h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Desc:	select the Flash ROM if the system contains both EPROM and Flash ROM
Note:	this function performs any delay required to allow the Flash ROM to
	  stabilize in the selected state; if no EPROM is present, this
	  function always returns successfully
SeeAlso: AX=E000h,AX=E007h,AX=E009h

Top
16E009 - INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT
INT 16 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT
	AX = E009h
Return: CF clear if successful
	    AL = FAh
	CF set on error
Desc:	select the EPROM if the system contains both EPROM and Flash ROM
Note:	this function performs any delay required to allow the Flash ROM to
	  stabilize in the de-selected state; if no EPROM is present, this
	  function always returns successfully
SeeAlso: AX=E000h,AX=E006h,AX=E008h

Top
16E00A - INT 16 - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY
INT 16 - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY
	AX = E00Ah
	BX = number of paragraphs
	ES = starting segment of memory
Return: CF clear if successful
	    AL = FAh
	CF set on error
Desc:	determine whether the specified memory may be used for flash
	  programming
Note:	always returns error if BX is zero on entry
SeeAlso: AX=E000h,AX=E00Bh

Top
16E00B - INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS
INT 16 - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS
	AX = E00Bh
	ES:DI -> buffer for internal cache status (minimum 4Kbytes)
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	always returns error if the hardware does not contain internal
	  cache or this call is made in protected mode
SeeAlso: AX=E000h,AX=E00Ah,AX=E00Ch

Top
16E00C - INT 16 - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS
INT 16 - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS
	AX = E00Ch
	ES:DI -> buffer containing internal cache status (minimum 4Kbytes)
Return: CF clear if successful
	    AL = FAh
	CF set on error
Note:	always returns error if the hardware does not contain internal
	  cache or this call is made in protected mode
SeeAlso: AX=E000h,AX=E00Bh

Top
16E0FF - INT 16 - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET
INT 16 - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET
	AX = E0FFh
Return: never
SeeAlso: AX=E000h,INT 14/AH=17h"FOSSIL"

Top
16F0 - INT 16 - Compaq 386 and newer - SET CPU SPEED
INT 16 - Compaq 386 and newer - SET CPU SPEED
	AH = F0h
	AL = speed code (see #00614)
	if AL=09h,
	    CX = speed value, 1 (slowest) to 50 (full), 3 ~= 8088
Note:	also supported by some versions of AMI BIOS dated June 1992 or later;
	  speed codes 0 or 1 are used for Low Speed, 2 for High Speed
SeeAlso: AH=F1h,AH=F3h

(Table 00614)
Values for speed code:
 00h	equivalent to 6 MHz 80286 (COMMON)
 01h	equivalent to 8 MHz 80286 (FAST)
 02h	full 16 MHz (HIGH)
 03h	toggles between 8 MHz-equivalent and speed set by system board switch
	  (AUTO or HIGH)
 08h	full 16 MHz except 8 MHz-equivalent during floppy disk access
 09h	specify speed directly

Top
16F1 - INT 16 - Compaq 386 and newer - READ CURRENT CPU SPEED
INT 16 - Compaq 386 and newer - READ CURRENT CPU SPEED
	AH = F1h
Return: AL = speed code (see #00614)
	if AL = 09h, CX = speed code
Note:	also supported by some versions of AMI BIOS dated June 1992 or later
SeeAlso: AH=F0h,AH=F3h

Top
16F2 - INT 16 - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE
INT 16 - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE
	AH = F2h
Return: AL = type
	    00h if 11-bit AT keyboard is in use
	    01h if 9-bit PC keyboard is in use
	AH = 00h (04/08/93 system ROM)
SeeAlso: MEM 0040h:00C2h

Top
16F3 - INT 16 - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)
INT 16 - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)
	AH = F3h
	AL = new limit
	    00h limit is 6 Mhz
	    01h limit is 8 Mhz/6 Mhz
SeeAlso: AH=F0h,AH=F1h

Top
16F400 - INT 16 - Compaq Systempro and higher - CACHE CONTROLLER STATUS
INT 16 - Compaq Systempro and higher - CACHE CONTROLLER STATUS
	AX = F400h
Return: AH = E2h (*)
	AL = status
	    00h not present
	    01h enabled
	    02h disabled
	CX = cache memory size
	    bit 15:	cache size information is NOT valid
	    bits 14-0:	cache memory size in kilobytes
	DH = cache write technology
	    bit 7:	cache write information is NOT valid
	    bits 6-1:	reserved (0)
	    bit 0:	0 = Write-through caching
			1 = Write-back caching
	DL = cache type
	    bit 7:	cache type information is NOT valid
	    bits 6-1:	reserved (0)
	    bit 0:	0 = Direct mapped
			1 = Two-way set-associative
Notes:	also supported by some versions of AMI BIOS dated June 1992 or later
	many (most) BIOSes return a modified AH when called for an unsupported
	  or non-keyboard function (typically, the highest supported keyboard
	  function [normally 12h] is subtracted from the original AH)
SeeAlso: AX=F401h,AX=F402h

Top
16F401 - INT 16 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER
INT 16 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER
	AX = F401h
Return: AX = E201h
Notes:	also supported by some versions of AMI BIOS dated June 1992 or later
	many (most) BIOSes return a modified AH when called for an unsupported
	  or non-keyboard function (typically, the highest supported keyboard
	  function [normally 12h] is subtracted from the original AH)
SeeAlso: AX=F400h,AX=F402h

Top
16F402 - INT 16 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER
INT 16 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER
	AX = F402h
Return: AX = E202h
Notes:	also supported by some versions of AMI BIOS dated June 1992 or later
	many (most) BIOSes return a modified AH when called for an unsupported
	  or non-keyboard function (typically, the highest supported keyboard
	  function [normally 12h] is subtracted from the original AH)
SeeAlso: AX=F400h,AX=F401h

Top
170200BX5050 - INT 17 - Enhanced Parallel Port (EPP) BIOS - INSTALLATION CHECK
INT 17 - Enhanced Parallel Port (EPP) BIOS - INSTALLATION CHECK
	AX = 0200h
	BX = 5050h ('PP')
	CH = 45h   ('E')
	DX = printer port number (00h-02h)
Return: AH = status
	    00h if installed and port is an enhanced parallel port
		CX:AL = installed BIOS type
		    5050h:45h ('PPE') if EPP v3.0+ BIOS installed
		    4550h:50h ('EPP') if EPP v1.0 BIOS installed
		---EPP 1.0, 3.0---
		DX:BX -> far entry point to Advanced BIOS (see #00632)
		---EPP Revision 7---
		DX = EPP I/O base address
		ES:BX -> far entry point to EPP BIOS (see #00632,#00633)
	    03h if installed but specified port not supported
		CF set
Program: The Enhanced Parallel Port BIOS provides support for parallel
	  port peripherals using the enhanced modes of the IEEE 1284.
SeeAlso: AH=E0h,MEM 0040h:0008h,MEM 0040h:00DCh

(Table 00632)
Call EPP BIOS entry point with:
	DL = port number (v1.0,v3.0)
	DX = (Revision 7) EPP port I/O base address
	AH = function
	    00h Query Configuration
		Return: AH = 00h if successful
			    AL = IRQ number used by port or FFh if no IRQ
			    BH = EPP BIOS revision (major in high nybble,
				  minor in low nybble)
			    BL = I/O capabilities (see #00635)
			    ES:DI -> ASCIZ driver information/version text
			    ---v1.0,v3.0---
			    CX = I/O port base address for parallel port
			    ---Revision 7---
			    CL = EPP chipset code (see #00636)
			    CH = hardware manufacturer's product code
	    01h Set Mode
		AL = mode bits (see #00637)
		Return: AX,BX destroyed
	    02h Get Mode
		Return: AL = mode bits (see also #00637)
				bit 7: EPP port interrupts enabled
			AH = 00h
			CF clear
			BX destroyed
	    03h Interrupt Control
		AL = subfunction
		    00h enable parallel port interrupts
		    01h disable parallel port interrupts
		Return: AH = status (00h,05h,06h) (see also #00634)
	    04h EPP Reset
		Return: AH = 00h if successful
			AL destroyed
	    05h perform Address-Write/Device-Select I/O cycle
		AL = device address
		Return: AH = status
			AL destroyed
	    06h perform Address-Read I/O cycle
		Return: AL = returned address/device data
			AH = status
	    07h write byte
		AL = data byte to write
		Return: AH = status
	    08h output block of data
		DS:SI -> block of data to be sent to parallel port
		CX = number of bytes to output
		Return: AH = status (see #00634)
			CX = number of unsent bytes
	    09h read byte of data
		Return: AH = status (see #00634)
			AL = byte read from parallel port
	    0Ah read block of data
		ES:DI -> buffer for received data
		CX = number of bytes to read from paralle port
		Return: AH = status (see #00634)
			ES:DI buffer filled if successful
			CX = number of bytes not transferred
	    0Bh Address/Byte-Read
		AL = device address
		Return: AH = status (see #00634)
			AL = byte read if successful
	    0Ch Address/Byte-Write
		AL = device address
		DH = data byte (v1.0,v3.0)
		CL = data byte (Revision 7)
		Return: AH = status (see #00634)
	    0Dh Address/Block-Read
		AL = device address
		ES:DI -> buffer for received data
		CX = number of bytes to read
		Return: AH = status (see #00634)
			CX = number of bytes NOT transferred
	    0Eh Address/Block-Write
		AL = device address
		ES:DI -> data to be sent (v1.0,v3.0)
		DS:SI -> data to be send (Revision 7)
		CX = number of bytes to write
		Return: AH = status (see #00634)
			CX = number of bytes NOT transferred
	    0Fh Lock Port
		AL = multiplexor port number
			bits 7-4: daisy chain port number (1-8)
			bits 3-0: mux device port number (1-8, 0 if no mux)
		Return: AH = status (00h,03h,05h) (see #00634)
	    10h Unlock Port
		AL = multiplexor port number
			bits 7-4: daisy chain port number (1-8)
			bits 3-0: mux device port number (1-8, 0 if no mux)
		Return: AH = status (00h,03h,05h) (see #00634)
	    11h Device Interrupt
		BL = multiplexor port number
			00h if no multiplexor, else mux device port (01h-08h)
		AL = subfunction
		    00h disable device interrupts
		    01h enable device interrupt
			ES:DI -> interrupt event handler
		Return: AH = status (00h,03h,05h,06h) (see #00634)
		Note:	AMI BIOS v1.00.12.AX1T ignores the multiplexor port
			  number; it also always sets INT 0F to the address
			  specified in ES:DI
	    12h Real-Time Mode
		AL = subfunction
		    00h check whether any real-time devices present
		    01h add (advertise) real-time device
		    02h remove real-time device
		Return: AH = status (00h,05h,06h,07h) (see #00634)
			AL = real-time devices present? (00h no, 01h yes)
		Note:	unlike all other functions, this one does not use DL/DX
Return: AH = status (see #00634)
	CF clear if successful
	CF set on error
	BX destroyed
SeeAlso: #00633

(Table 00633)
Call EPP BIOS (Revision 7) entry point multiplexor functions with:
	DX = EPP port base I/O address
	AH = function
	    40h Query Mux
		Return: AH = status (see #00634)
			AL = currently-selected port
			CH = status flags
				bit 0: channel locked
				bit 1: interrupt pending
			BH destroyed
		Note:	the PhoenixBIOS v4.0 documentation lists BL as the
			  currently-selected port and AL as the status flags
	    41h Query Device Port
		AL = EPP multiplex device port (1-8)
		Return: AH = status (see #00634)
			CH = status flags (see #00638)
			BX = EPP product/device ID (0000h if undefined)
		Note:	the PhoenixBIOS v4.0 documentation lists AL as the
			  status flags and CX as the device ID
	    42h Set Product ID
		AL = EPP multiplex device port (1-8)
		CX = EPP product ID
		Return: AH = status (see #00634)
			BX destroyed
	    50h Query Daisy Chain
		AL = EPP multiplexor device port (1-8)
		Return: AH = status (see #00634)
			CH = status flags
				bit 0: channel locked
				bit 1: interrupt pending
			BL = currently-selected device
			BH = EPP daisy chain revision (high nybble = major)
			CL = daisy-chain depth (00h if no daisy chain)
			ES:DI -> ASCIZ driver vendor identification string
		Note:	the PhoenixBIOS v4.0 documentation lists AH=51h as
			  "Query Daisy Chain" and BL as the multiplexor port;
			  it also lists AL as status flags on return
	    51h Rescan Daisy Chain (dynamically reassign port numbers)
		AL = EPP multiplexor device port (1-8)
		Return: AH = status (see #00634)
			BX destroyed
		Note:	the PhoenixBIOS v4.0 documentation lists AH=50h as
			  "Rescan Daisy Chain" and BL as the multiplexor port
Notes:	these functions are only valid if a port multiplexor or daisy chain
	  is present
	PhoenixBIOS 4.0 documents function 50h as "Rescan" and 51h as
	  "Query Daisy Chain"
SeeAlso: #00632,INT 2D/AL=DCh

(Table 00634)
Values for EPP BIOS function status:
 00h	successful
 02h	unsupported command/feature
 03h	unsupported parallel port
 05h	unsupported in current mode
 06h	invalid subfunction
 07h	already ???
 20h	multiplexor not present (AMI)
 40h	multiplexor not present
 41h	multiplexor currently locked
 80h	I/O timeout
 FFh	invalid/unsupported function
SeeAlso: #00632,#00633

Bitfields for EPP (v3.0, Revision 7) I/O capabilities:
Bit(s)	Description	(Table 00635)
 0	multiplexor present
 1	PS/2 bi-directional capable
 2	daisy chain present
 3	ECP capable
 4	EPP software emulation supported
 5	EPP capable
 6	fast Centronics supported
 7	standard EPP I/O map
SeeAlso: #00632

(Table 00636)
Values for EPP (Revision 7) chipset code:
 00h	Intel SL
 01h	FarPoint Communications
 02h	SMC
 03h	Chips&Technologies
 04h	Western Digital
 05h	National Semiconductor
SeeAlso: #00632

Bitfields for EPP BIOS mode bits:
Bit(s)	Description	(Table 00637)
 0	set compatibility mode
 1	set bi-directional mode
 2	set EPP mode
---Revision 7,v3.0---
 3	set ECP mode
 4	set EPP software emulation
 5	set fast Centronics mode
 6-7 reserved (0)
SeeAlso: #00632,#M0053

Bitfields for EPP BIOS multiplex status flags:
Bit(s)	Description	(Table 00638)
 0	port is selected
 1	port is locked
 2	interrupts are enabled
 3	interrupt pending
SeeAlso: #00633

Top
176F00BX0000 - INT 17 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK
INT 17 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK
	AX = 6F00h
	BX = 0000h
Return: BX = 4850h ("HP") if HP Extended BIOS printer extensions available
SeeAlso: AX=6F02h,INT 14/AX=6F00h,INT 10/AX=6F00h,INT 14/AX=6F00h
SeeAlso: INT 33/AX=6F00h,INT 6F/AH=00h"HP Vectra"

Top
176F02 - INT 17 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER
INT 17 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER
	AX = 6F02h
	CX = size of buffer in bytes
	DX = port number (0-3)
	ES:DI -> buffer containing characters to be printed
Return: AH = printer status (see #00631)
	CX = number of bytes successfully printed
	---on error (AH bit 0 set)---
	    ES:DI -> next byte to be sent
	---if successful---
	    ES:DI unchanged
SeeAlso: AH=00h,AX=6F00h,INT 14/AX=6F02h

Top
1A02 - INT 1A - Tandy 2000 - TIME - GET DATE AND TIME
INT 1A - Tandy 2000 - TIME - GET DATE AND TIME
	AH = 02h
Return: BX = number of days since January 1, 1980
	CH = hours
	CL = minutes
	DH = seconds
	DL = hundredths
SeeAlso: AH=03h"Tandy 2000",INT 55"Tandy 2000"

Top
1A03 - INT 1A - Tandy 2000 - TIME - SET DATE AND TIME
INT 1A - Tandy 2000 - TIME - SET DATE AND TIME
	AH = 03h
	BX = number of days since January 1, 1980
	CH = hours
	CL = minutes
	DH = seconds
	DL = hundredths
Return: nothing
SeeAlso: AH=02h"Tandy 2000",INT 55"Tandy 2000"

Top
1A04 - INT 1A - Sperry PC - GET REAL-TIME CLOCK DATE
INT 1A - Sperry PC - GET REAL-TIME CLOCK DATE
	AH = 04h
Return: CF clear if successful
	    CL = year-1980
	    DH = month (binary) (01h-0Ch)
	    DL = day (binary) (01h-1Fh)
	CF set on error
SeeAlso: AH=02h,AH=04h,AH=05h"Sperry",INT 21/AH=2Ah,INT 4B/AH=02h"TI"

Top
1A05 - INT 1A - Sperry PC - SET REAL-TIME CLOCK DATE
INT 1A - Sperry PC - SET REAL-TIME CLOCK DATE
	AH = 05h
	CL = year-1980
	CH = 00h (???)
	DH = month (binary) (01h-0Ch)
	DL = day (binary) (01h-1Fh)
Return: nothing
SeeAlso: AH=02h,AH=04h"Sperry",AH=05h,INT 21/AH=2Bh"DATE"

Top
1AFE - INT 1A - AT&T 6300 - READ TIME AND DATE
INT 1A - AT&T 6300 - READ TIME AND DATE
	AH = FEh
Return: BX = day count (0 = Jan 1, 1984)
	CH = hour
	CL = minute
	DH = second
	DL = hundredths
SeeAlso: AX=CCCCh/BX=CCCCh,AH=FFh"AT&T",INT 21/AH=2Ah,INT 21/AH=2Ch

Top
1AFF - INT 1A - AT&T 6300 - SET TIME AND DATE
INT 1A - AT&T 6300 - SET TIME AND DATE
	AH = FFh
	BX = day count (0 = Jan 1, 1984)
	CH = hour
	CL = minute
	DH = second
	DL = hundredths
Return: ???
SeeAlso: AX=CCCCh/BX=CCCCh,AH=FEh,INT 21/AH=2Bh"DATE",INT 21/AH=2Dh

Top
1F12 - INT 1F U - C&T "SuperState" BIOS - POWER OFF
INT 1F U - C&T "SuperState" BIOS - POWER OFF
	AH = 12h
Return: none
Note:	POWER OFF

Top
1F17 - INT 1F U - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState
INT 1F U - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState
	AH = 17h
	ES:DI -> far procedure
Return: all registers except AH,ES,DI
Note:	You can change the BIOS area (F000h:0000h - F000h:FFFFh) only through
	  this function

Top
1F19 - INT 1F U - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE
INT 1F U - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE
	AH = 19h
	AL = hour in BCD
	BH = minutes in BCD
	BL = seconds in BCD
	CH = year century in BCD (must be 19h)
	CL = year low in BCD
	DH = month in BCD
	DL = date in BCD
Return: CF clear

Top
1F1C - INT 1F U - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT
INT 1F U - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT
	AH = 1Ch
	BX = sec until suspend starts
Return: None

Top
1F1D - INT 1F U - C&T "SuperState" BIOS - SET SLEEP TIMEOUT
INT 1F U - C&T "SuperState" BIOS - SET SLEEP TIMEOUT
	AH = 1Dh
	BX = sec until sleep starts
Return: None

Top
1FF5--BLFA - INT 1F U - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT
INT 1F U - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT
	AH = F5h
	BL = FAh
Return: none
Note:	this function will not return until the correct password is entered
SeeAlso: AH=F5h/BL=FDh,AH=F5h/BL=FEh

Top
1FF5--BLFD - INT 1F U - C&T "SuperState" BIOS - ENCRYPT PASSWORD
INT 1F U - C&T "SuperState" BIOS - ENCRYPT PASSWORD
	AH = F5h
	BL = FDh
	CX:SI = input string
	DX:DI = encrypted string
	BH = length of input string
Return: CF set on error
SeeAlso: AH=F5h/BL=FAh,AH=F5h/BL=FEh

Top
1FF5--BLFE - INT 1F U - C&T "SuperState" BIOS - SET PASSWORD
INT 1F U - C&T "SuperState" BIOS - SET PASSWORD
	AH = F5h
	BL = FEh
	CX:SI -> input string
	BH = length of input string (if BH = 00h, clear password)
Return: CF set on error
Note:	the input string must be encrypted by INT 1Fh/AH=F5h/BL=FDh
SeeAlso: AH=F5h/BL=FDh,AH=F5h/BL=FFh

Top
1FF5--BLFF - INT 1F U - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD
INT 1F U - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD
	AH = F5h
	BL = FFh
	DX:DI = string buffer
Return: CF set on error
	CF clear if successful
	    BH = length of input string (if BH = 00h, password is not valid)
	    DX:DI -> encrypted password string
SeeAlso: AH=F5h/BL=FDh,AH=F5h/BL=FEh

Top
1FFB - INT 1F U - C&T "SuperState" BIOS - GET/SET CPU SPEED
INT 1F U - C&T "SuperState" BIOS - GET/SET CPU SPEED
	AH = FBh
	BL = function
	    00h get CPU speed
		Return: AL = current CPU speed (00h = fast, 01h = slow)
	    01h set CPU speed
		AL = new CPU speed (00h = fast, 01h = slow)
SeeAlso: AH=FCh/BL=00h

Top
1FFC--BL00 - INT 1F U - C&T "SuperState" BIOS - GET ALARM STATUS
INT 1F U - C&T "SuperState" BIOS - GET ALARM STATUS
	AH = FCh
	BL = 00h
Return: AL = current alarm state (00h = disabled, 01h = enabled)
SeeAlso: AH=FCh/BL=01h,AH=FCh/BL=02h

Top
1FFC--BL01 - INT 1F U - C&T "SuperState" BIOS - SET ALARM STATUS
INT 1F U - C&T "SuperState" BIOS - SET ALARM STATUS
	AH = FCh
	BL = 01h
	AL = new alarm state (00h = disabled, 01h = enabled)
SeeAlso: AH=FCh/BL=00h,AH=FCh/BL=03h

Top
1FFC--BL02 - INT 1F U - C&T "SuperState" BIOS - GET ALARM TIME
INT 1F U - C&T "SuperState" BIOS - GET ALARM TIME
	AH = FCh
	BL = 02h
Return: CH = hour by BCD
	CL = min by BCD
	DH = sec by BCD
SeeAlso: AH=FCh/BL=00h,AH=FCh/BL=03h,AH=FCh/BL=04h

Top
1FFC--BL03 - INT 1F U - C&T "SuperState" BIOS - SET ALARM TIME
INT 1F U - C&T "SuperState" BIOS - SET ALARM TIME
	AH = FCh
	BL = 03h
	CH = hour by BCD
	CL = min by BCD
	DH = sec by BCD
Return: CF set on error (incorrect time format or Alarm is not enable)
SeeAlso: AH=FCh/BL=01h,AH=FCh/BL=02h,AH=FCh/BL=05h

Top
1FFC--BL04 - INT 1F U - C&T "SuperState" BIOS - GET ALARM DATE
INT 1F U - C&T "SuperState" BIOS - GET ALARM DATE
	AH = FCh
	BL = 04h
Return: CH = year century by BCD
	CL = year low by BCD
	DH = month by BCD
	DL = date by BCD
SeeAlso: AH=FCh/BL=02h,AH=FCh/BL=05h

Top
1FFC--BL05 - INT 1F U - C&T "SuperState" BIOS - SET ALARM DATE
INT 1F U - C&T "SuperState" BIOS - SET ALARM DATE
	AH = FCh
	BL = 05h
	CH = year century by BCD
	CL = year low by BCD
	DH = month by BCD
	DL = date by BCD
Return: CF set on error (incorrect date format or Alarm is not enable)
SeeAlso: AH=FCh/BL=03h,AH=FCh/BL=04h

Top
1FFD--BL00 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS
INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS
	AH = FDh
	BL = 00h
Return: AL = current wake-up state (00h = disabled, 01h = enabled)
SeeAlso: AH=FDh/BL=01h,AH=FDh/BL=02h

Top
1FFD--BL01 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS
INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS
	AH = FDh
	BL = 01h
	AL = new wake-up state (00h = disabled, 01h = enabled)
SeeAlso: AH=FDh/BL=00h,AH=FDh/BL=03h

Top
1FFD--BL02 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME
INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME
	AH = FDh
	BL = 02h
Return: CH = hour by BCD
	CL = min by BCD
	DH = sec by BCD
SeeAlso: AH=FDh/BL=00h,AH=FDh/BL=03h

Top
1FFD--BL03 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME
INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME
       AH = FDh
       BL = 03h
       CH = hour by BCD
       CL = min by BCD
       DH = sec by BCD
Return: CF set on error (incorrect Time format or Auto Wake up is not enable)
SeeAlso: AH=FDh/BL=01h,AH=FDh/BL=02h

Top
1FFD--BL04 - INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE
INT 1F U - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE
	AH = FDh
	BL = 04h
Return: CH = year century in BCD
	CL = year low in BCD
	DH = month in BCD
	DL = date in BCD
SeeAlso: AH=FDh/BL=02h,AH=FDh/BL=05h

Top
1FFD--BL05 - INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE
INT 1F U - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE
	AH = FDh
	BL = 05h
	CH = year century in BCD
	CL = year low in BCD
	DH = month in BCD
	DL = date in BCD
Return: CF set on error (incorrect date format or Auto Wake up is not enable)
SeeAlso: AH=FDh/BL=03h"C&T",AH=FDh/BL=04h"C&T"

Top
2D--DC - INT 2D C - DAISY.SYS - BROADCAST: CHAIN RESCANNED
INT 2D C - DAISY.SYS - BROADCAST: CHAIN RESCANNED
	AL = DCh
	AH = AMIS multiplex number for signature 'DAISYCHA' 'INDRIVER'
	DL = LPT Port Rescanned
Program: DAISY.SYS is a daisy chain manager for parallel port peripherals
	  conforming to the IEEE 1284.3 Committee's daisy chain specification.
Desc:	This Broadcast is sent whenever daisy chain IDs are reassigned to
	  warn parallel port device drivers that their daisy chain ID may
	  have been changed.
Note:	This function is a callout from DAISY.SYS, NOT a call into DAISY.SYS
SeeAlso: INT 17/AX=0200h"Enhanced Parallel Port",#00633,#02570

Top
42 - INT 42 - Western Digital WD1002 SuperBIOS - INT 40 CASCADE
INT 42 - Western Digital WD1002 SuperBIOS - INT 40 CASCADE
Note:	if the second WD1002 controller in the system finds INT 40 already in
	  use, it uses this vector to cascade to the first controller's BIOS
SeeAlso: INT 40"DISKETTE",INT 47"SuperBIOS"

Top
47 - INT 47 - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE
INT 47 - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE
Desc:	used by the second WD1002-27X controller to cascade to the first
	  controller's INT 40
SeeAlso: INT 40"DISKETTE",INT 42"SuperBIOS",INT 48"SuperBIOS"

Top
48 - INT 48 - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)
INT 48 - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)
Note:	the second WD1002-27X controller in a system uses the low byte to
	  store the number of drives controlled by the second controller,
	  and the high word for temporary storage during track recalculation;
	  the first controller uses offsets 74h-77h in the BIOS data area
	  (refer to MEMORY.LST) to store data
SeeAlso: INT 47"SuperBIOS"

Top
4800 - INT 48 - TI Professional PC - SPEAKER DEVICE - SOUND SPEAKER
INT 48 - TI Professional PC - SPEAKER DEVICE - SOUND SPEAKER
	AH = 00h
	AL = number of 25ms ticks sound should last
Return: nothing
Desc:	sound the speaker at the current frequency setting (see AH=02h) for
	  the indicated duration
Notes:	this function returns immediately; the sound is terminated by the
	  timer interrupt handler
	if a new sound is requested while one is already in progress, the
	  previous sound is terminated immediately and the new sound takes
	  its place
SeeAlso: AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh
SeeAlso: INT 40"TI Professional",INT 49/AH=01h"TI"
SeeAlso: INT 4A/AH=00h"TI",INT 4C"TI Professional",INT 4D/AH=00h

Top
4801 - INT 48 - TI Professional PC - SPEAKER DEVICE - CHECK SPEAKER STATUS
INT 48 - TI Professional PC - SPEAKER DEVICE - CHECK SPEAKER STATUS
	AH = 01h
Return: ZF clear if speaker is currently on
	ZF set if speaker is currently off
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4802 - INT 48 - TI Professional PC - SPEAKER DEVICE - SET SPEAKER FREQUENCY
INT 48 - TI Professional PC - SPEAKER DEVICE - SET SPEAKER FREQUENCY
	AH = 02h
	CX = frequency divisor (freq = 1250000 / CX)
Return: nothing
SeeAlso: AH=00h,AH=01h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4803 - INT 48 - TI Professional PC - SPEAKER DEVICE - TURN ON SPEAKER
INT 48 - TI Professional PC - SPEAKER DEVICE - TURN ON SPEAKER
	AH = 03h
Return: nothing
Desc:	turn on the speaker at the current frequency, leaving it on until
	  explicitly turned off with AH=04h or the end of a subsequent
	  AH=00h
SeeAlso: AH=00h,AH=01h,AH=02h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4804 - INT 48 - TI Professional PC - SPEAKER DEVICE - TURN OFF SPEAKER
INT 48 - TI Professional PC - SPEAKER DEVICE - TURN OFF SPEAKER
	AH = 04h
Return: nothing
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4805 - INT 48 - TI Professional PC - SPEAKER DEVICE - DELAY
INT 48 - TI Professional PC - SPEAKER DEVICE - DELAY
	AH = 05h
	CX = desired delay in milliseconds
Return: after delay expires
Note:	the delay is only approximate, and may be longer than requested
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4806 - INT 48 - TI Professional PC - CALCULATE CRC
INT 48 - TI Professional PC - CALCULATE CRC
	AH = 06h
	ES:BX -> memory block for which to calculate CRC
	BP = size of block in bytes
Return: DX = CRC for block
	ZF set if DX = 0000h
Note:	if the CRC of a memory block is appended to the block, then the CRC
	  of the block plus CRC should equal 0000h
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4807 - INT 48 - TI Professional PC - PRINT ROM MESSAGE
INT 48 - TI Professional PC - PRINT ROM MESSAGE
	AH = 07h
	SI = offset of ASCIZ message string within segment F400h
Return: nothing
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4808 - INT 48 - TI Professional PC - DISPLAY SYSTEM ERROR MESSAGE
INT 48 - TI Professional PC - DISPLAY SYSTEM ERROR MESSAGE
	AH = 08h
	BX = error number
Return: nothing
Desc:	displays the error message " ** System Error ** - xxxx" where xxxx is
	  the hexadecimal value in BX
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
4809 - INT 48 - TI Professional PC - GET SYSTEM CONFIGURATION DATA
INT 48 - TI Professional PC - GET SYSTEM CONFIGURATION DATA
	AH = 09h
Return: ES:BX -> system configuration word (see #03227)
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah,AH=0Bh

Top
480A - INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFO ADDRESS
INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFO ADDRESS
	AH = 0Ah
Return: ES:BX -> configuration information (see #03205)
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Bh

Format of TI Professional PC extra system configuration information:
Offset	Size	Description	(Table 03205)
 -3	WORD	memory size in paragraphs
 00h	BYTE	drive type byte (see #03206)
 01h	WORD	extra system configuration word 1
		bit 0: 8087 is present
		bits 15-1: reserved (0)
 03h	WORD	extra system configuration word 2
		bits 15-0: reserved (0)

Bitfields for TI Professional PC drive type byte:
Bit(s)	Description	(Table 03206)
 0	drive A is double-sided
 1	drive A has 80 tracks instead of 40
 2	drive B is double-sided
 3	drive B has 80 tracks instead of 40
 4	drive C is double-sided
 5	drive C has 80 tracks instead of 40
 6	drive D is double-sided
 7	drive D has 80 tracks instead of 40
Note:	the type for drive A is determined by motherboard switches; the
	  remaining drives' types are set from a table in IO.SYS
SeeAlso: #03205

Top
480B - INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFORMATION
INT 48 - TI Professional PC - GET EXTRA SYSTEM CONFIGURATION INFORMATION
	AH = 0Bh
Return: AL = drive type byte (see #03206)
	BX = extra system configuration word 1 (see #03205)
	CX = extra system configuration word 2 (see #03205)
	AH destroyed
SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=06h,AH=08h,AH=0Ah

Top
49 - INT 49 - Tandy 2000 - BOOTSTRAP LOADER
INT 49 - Tandy 2000 - BOOTSTRAP LOADER
Note:	this interrupt is identical to INT 19
SeeAlso: INT 19,INT 4A"Tandy 2000",INT 4C"Tandy 2000",INT 51"Tandy 2000"

Top
4A - INT 4A - Tandy 2000 - PRINT SCREEN
INT 4A - Tandy 2000 - PRINT SCREEN
Note:	this interrupt is identical to INT 05
SeeAlso: INT 05"PRINT SCREEN"

Top
4A00 - INT 4A - TI Professional PC - KEYBOARD - GET KEYPRESS
INT 4A - TI Professional PC - KEYBOARD - GET KEYPRESS
	AH = 00h
Return: AX = keystroke (AH=00h for ASCII keys -- no scan code)
SeeAlso: AH=01h,AH=02h,AH=03h,AH=04h,AH=05h,INT 16/AH=00h
SeeAlso: INT 47"TI Professional",INT 48/AH=00h"TI Professional"
SeeAlso: INT 49/AH=01h"TI",INT 4C"TI Professional",INT 4D/AH=00h
SeeAlso: INT 5B"TI Professional"

Top
4A01 - INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD STATUS
INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD STATUS
	AH = 01h
Return: ZF set if no keystroke available
	ZF clear if keystrokes in buffer
	    AX = next keystroke (AH=00h for ASCII keys -- no scan code)
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=05h,INT 16/AH=01h

Top
4A02 - INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD MODE
INT 4A - TI Professional PC - KEYBOARD - GET KEYBOARD MODE
	AH = 02h
Return: AL = shift states (see #03213)
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=05h,INT 16/AH=02h

Bitfields for TI Professional PC keyboard shift states:
Bit(s)	Description	(Table 03213)
 0	Ctrl key pressed
 1	Alt key pressed
 2	either Shift key pressed
 3-6	0
 7	CapsLock is ON

Top
4A03 - INT 4A - TI Professional PC - KEYBOARD - FLUSH KEYBOARD BUFFER
INT 4A - TI Professional PC - KEYBOARD - FLUSH KEYBOARD BUFFER
	AH = 03h
Return: nothing
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=05h

Top
4A04 - INT 4A - TI Professional PC - KEYBOARD - SEND COMMAND TO KEYBOARD
INT 4A - TI Professional PC - KEYBOARD - SEND COMMAND TO KEYBOARD
	AH = 04h
	AL = command
	    00h reset to default states
	    01h enable auto-repeat (default)
	    02h disable auto-repeat
	    03h lock keyboard
	    04h unlock keyboard (default)
	    05h enable keyclick (requires hardware modification to work)
	    06h disable keyclick (default)
Return: nothing
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=05h

Top
4A05 - INT 4A - TI Professional PC - KEYBOARD - INSERT CHARACTER INTO KEYBOARD BUFFER
INT 4A - TI Professional PC - KEYBOARD - INSERT CHARACTER INTO KEYBOARD BUFFER
	AH = 05h
	BX = character code (BH=00h if ASCII character, BL=00h/BH nonzero for
	      extended codes) (see #03214)
Return: ZF set if keyboard buffer was already full
	ZF clear if keystroke inserted into buffer
SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,AH=05h,INT 5B"TI"

(Table 03214)
Values for TI Professional PC scan/character codes:
 Scan	Key	Normal	Shift	Ctrl	Alt	Notes
 00h	  -- unused
 01h	F5	3F00h	5800h	6200h	6C00h
 02h	F6	4000h	5900h	6300h	6D00h
 03h	F7	4100h	5A00h	6400h	6E00h
 04h	F8	4200h	5B00h	6500h	6F00h
 05h	F9	4300h	5C00h	6600h	7000h
 06h	F10	4400h	5D00h	6700h	7100h
 07h	F11	4500h	0800h	0A00h	0C00h
 08h	F12	4600h	0900h	0B00h	0D00h
 09h	1 !	0031h	0021h	----	7800h
 0Ah	2 @	0032h	0040h	0300h	7900h
 0Bh	3 #	0033h	0023h	----	7A00h
 0Ch	4 $	0034h	0024h	----	7B00h
 0Dh	5 %	0035h	0025h	----	7C00h
 0Eh	6 ^	0036h	005Eh	001Eh	7D00h
 0Fh	7 &	0037h	0026h	----	7E00h
 10h	8 *	0038h	002Ah	----	7F00h
 11h	9 (	0039h	0028h	----	8000h
 12h	0 )	0030h	0029h	----	8100h
 13h	- _	002Dh	005Fh	001Fh	8200h
 14h	= +	003Dh	002Bh	----	8300h
 15h BACK SPACE 0008h	0008h	007Fh	----
 16h	` ~	0060h	007Eh	----	----
 17h	NUM =	003Dh	003Dh	003Dh	8C00h
 18h	NUM +	002Bh	002Bh	002Bh	8D00h
 19h   NUM SPAC	0020h	0020h	0020h	8E00h
 1Ah   NUM TAB	0009h	0F00h	0009h	8F00h
 1Bh	NUM 1	0031h	0031h	0031h	(alt-###)	[Note 5]
 1Ch	(unused)
 1Dh	NUM 0	0030h	0030h	0030h	(alt-###)	[Note 5]
 1Eh  NUM ENTER	000Dh	000Dh	000Dh	----
 1Fh	NUM 4	0034h	0034h	0034h	(alt-###)	[Note 5]
 20h	NUM 5	0035h	0035h	0035h	(alt-###)	[Note 5]
 21h	NUM 9	0039h	0039h	0039h	(alt-###)	[Note 5]
 22h	NUM -	002Dh	002Dh	002Dh	----
 23h	NUM 2	0032h	0032h	0032h	(alt-###)	[Note 5]
 24h-26h  -- unused
 27h	NUM 7	0037h	0037h	0037h	(alt-###)	[Note 5]
 28h	NUM 8	0038h	0038h	0038h	(alt-###)	[Note 5]
 29h	NUM 6	0036h	0036h	0036h	(alt-###)	[Note 5]
 2Ah	NUM ,	002Ch	002Ch	002Ch	----
 2Bh	NUM 3	0033h	0033h	0033h	(alt-###)	[Note 5]
 2Ch	NUM .	002Eh	002Eh	002Eh	----
 2Dh	PRINT	7200h	[Note2]	----	----	[Notes 1,2]
 2Eh   RtArrow	4D00h	8A00h	7400h	4E00h
 2Fh	INS	5200h	2800h	2900h	2A00h	[Note 1]
 30h	DEL	5300h	3800h	3900h	3A00h	[Note 1]
 31h	TAB	0009h	0F00h	0009h	----
 32h	Q	0071h	0051h	0011h	1000h
 33h	W	0077h	0057h	0017h	1100h
 34h	E	0065h	0045h	0005h	1200h
 35h	R	0072h	0052h	0012h	1300h
 36h	T	0074h	0054h	0014h	1400h
 37h	Y	0079h	0059h	0019h	1500h
 38h	U	0075h	0055h	0015h	1600h
 39h	I	0069h	0049h	0009h	1700h
 3Ah	O	006Fh	004Fh	000Fh	1800h
 3Bh	P	0070h	0050h	0010h	1900h
 3Ch	[ {	005Bh	007Bh	001Bh	----
 3Dh	] }	005Dh	007Dh	001Dh	----
 3Eh  LINE FEED	000Ah	000Ah	7500h	4F00h
 3Fh  BRK/PAUS	[Note3]	[Note4]	----	----	[Notes 1,3,4]
 40h  UpArrow	4800h	8800h	8400h	4900h
 41h	ESC	001Bh	001Bh	001Bh	----
 42h	A	0061h	0041h	0001h	1E00h
 43h	S	0073h	0053h	0013h	1F00h
 44h	D	0064h	0044h	0004h	2000h
 45h	F	0066h	0046h	0006h	2100h
 46h	G	0067h	0047h	0007h	2200h
 47h	H	0068h	0048h	0008h	2300h
 48h	J	006Ah	004Ah	000Ah	2400h
 49h	K	006Bh	004Bh	000Bh	2500h
 4Ah	L	006Ch	004Ch	000Ch	2600h
 4Bh	; :	003Bh	003Ah	----	----
 4Ch	' "	0027h	0022h	----	----
 4Dh	RETURN	000Dh	000Dh	000Dh	----
 4Eh	\ |	005Ch	007Ch	001Ch	----
 4Fh  LeftArrow	4B00h	8B00h	7300h	4C00h
 50h	HOME	4700h	8600h	7700h	8500h
 51h  Space Bar	0020h	0020h	0020h	0020h
 52h	Z	007Ah	005Ah	001Ah	2C00h
 53h	X	0078h	0058h	0018h	2D00h
 54h	C	0063h	0043h	0003h	2E00h
 55h	V	0076h	0056h	0016h	2F00h
 56h	B	0062h	0042h	0002h	3000h
 57h	N	006Eh	004Eh	000Eh	3100h
 58h	M	006Dh	004Dh	000Dh	3200h
 59h	, <	002Ch	003Ch	----	----
 5Ah  PRINT	7200h	[Note2]	----	----	[Notes 1,2]
 5Bh	. >	002Eh	003Eh	----	----
 5Ch	/ ?	002Fh	003Fh	----	----
 5Dh	(unused)
 5Eh	DEL	5300h	3800h	3900h	3A00h	[Note 1]
 5Fh	INS	5200h	2800h	2900h	2A00h	[Note 1]
 60h  DownArrow	5000h	8900h	7600h	5100h
 61h-63h  -- unused
 64h  BRK/PAUS	[Note3]	[Note4]	----	----	[Notes 1,3,4]
 65h	F1	3B00h	5400h	5E00h	6800h
 66h	F2	3C00h	5500h	5F00h	6900h
 67h	F3	3D00h	5600h	6000h	6A00h
 68h	F4	3E00h	5700h	6100h	6B00h
 69h-6Fh  -- unused
Notes:	[1] four of the keys can have differing scan codes, depending on the
	  actual keyboard; the BIOS accepts either scan code ("normal": 2Fh,
	  30h, 5Ah, 64h; "alternate": 2Dh,3Fh,5Eh,5Fh) for any of these keys
	[2] Shift-Print invokes INT 5E for a screen dump; the PRTSCRN.DEV
	  device driver also supports Alt-Print, Ctrl-Print, Shift-Alt-Print,
	  and Shift-Ctrl-Print for dumping graphics in various permutations
	[3] BRK/PAUS invokes INT 5C for a pause, then stuffs 0100h into the
	  keyboard buffer
	[4] Shift-BRK/PAUS invokes INT 5D for the Break, then stuffs 0000h
	  into the keyboard buffer; MS-DOS hooks INT 5D to keep the 0000h from
	  appearing in the keyboard buffer
	[5] on the TI Pro, one enters an arbitrary character slightly
	  differently than on a standard PC: exactly three numberpad digits
	  must be pressed (using leading zeros for codes less than 100), and
	  the key for the requested code is inserted into the keyboard buffer
	  immediately on pressing the third key.  The Alt key may be released
	  and re-pressed arbitrarily often between digits without affecting
	  the Alt-digit-digit-digit sequence.
	scan codes with bit 7 set are not key releases, but rather
	  auto-repeated keystrokes, which the BIOS only places into the
	  keyboard buffer if the buffer is empty at the time (thus avoiding
	  typeahead of repeated keystrokes faster than they can be processed)
SeeAlso: #00006 at INT 09

Top
4B - INT 4B - Tandy 2000 - EQUIPMENT DETERMINATION
INT 4B - Tandy 2000 - EQUIPMENT DETERMINATION
Return: AX = BIOS equipment list word (see #03215)
Note:	this interrupt is identical to INT 11 on the Tandy 2000
SeeAlso: INT 11"EQUIPMENT",INT 4A"Tandy 2000",INT 4C"Tandy 2000"

Bitfields for Tandy 2000 BIOS equipment list:
Bit(s)	Description	(Table 03215)
 0	reserved
 1	monochrome graphics installed
 2	graphics with color option installed
 3	floppy disk drive 1 installed
 4	floppy disk drive 2 installed
 5	hard disk drive 1 installed
 6	hard disk drive 2 installed
 7	unused
 8	black and white monitor
 9	color monitor
 12-10	reserved
 13	printer installed
 14	reserved
 15	unused
SeeAlso: #00226 at INT 11

Top
4B00 - INT 4B - TI Professional PC - PARALLEL PORT - OUTPUT CHARACTER
INT 4B - TI Professional PC - PARALLEL PORT - OUTPUT CHARACTER
	AH = 00h
	DL = printer number (00h)
	AL = character to print
Return: AH = printer status (see #03216)
Note:	on the TI Pro, the BIOS only supports DL=00h; MS-DOS versions for the
	  TI hook INT 4B and handle requests for DL<>00h
SeeAlso: AH=01h,AH=02h,INT 17/AH=00h
SeeAlso: INT 40"TI Professional",INT 48/AH=00h"TI Professional"
SeeAlso: INT 49/AH=01h"TI",INT 4C"TI Professional",INT 4D/AH=00h

Bitfields for TI Professional PC printer status:
Bit(s)	Description	(Table 03216)
 0	timeout (function 00h only)
 3-1	unused
 4	busy
 5	paper out
 6	on-line (selected)
 7	fault

Top
4B01 - INT 4B - TI Professional PC - PARALLEL PORT - INITIALIZE PRINTER
INT 4B - TI Professional PC - PARALLEL PORT - INITIALIZE PRINTER
	AH = 01h
	DL = printer number (00h)
Return: AH = printer status (see #03216)
Note:	on the TI Pro, the BIOS only supports DL=00h; MS-DOS versions for the
	  TI hook INT 4B and handle requests for DL<>00h
SeeAlso: AH=00h,AH=02h,INT 17/AH=01h

Top
4B02 - INT 4B - TI Professional PC - PARALLEL PORT - GET PRINTER STATUS
INT 4B - TI Professional PC - PARALLEL PORT - GET PRINTER STATUS
	AH = 02h
	DL = printer number (00h)
Return: AH = printer status (see #03216)
Note:	on the TI Pro, the BIOS only supports DL=00h; MS-DOS versions for the
	  TI hook INT 4B and handle requests for DL<>00h
SeeAlso: AH=00h,AH=01h,INT 17/AH=02h

Top
4C - INT 4C - TI Professional PC - CLOCK/ANALOG INTERFACE
INT 4C - TI Professional PC - CLOCK/ANALOG INTERFACE
	no details available
SeeAlso: INT 40"TI Professional",INT 49/AH=01h"TI"
SeeAlso: INT 4A/AH=00h"TI",INT 4B"TI Professional",INT 4D/AH=00h
SeeAlso: INT 58"TI Professional"

Top
4C - INT 4C - Tandy 2000 - GET MEMORY SIZE
INT 4C - Tandy 2000 - GET MEMORY SIZE
Return: AX = kilobytes of contiguous memory starting at 0
Note:	this interrupt is identical to INT 12 on the Tandy 2000
SeeAlso: INT 12"BIOS",INT 4A"Tandy 2000",INT 4B"Tandy 2000",INT 51"Tandy 2000"

Top
4E00 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS DATE
INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS DATE
	AH = 00h
	BX = number of days since January 1, 1980
Return: nothing
SeeAlso: AH=01h,AH=02h
SeeAlso: INT 40"TI Professional",INT 48/AH=00h"TI Professional"
SeeAlso: INT 4A/AH=00h"TI",INT 4F"TI Professional"

Top
4E01 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS TIME
INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - SET BIOS TIME
	AH = 01h
	CH = hours
	CL = minutes
	DH = seconds
	DL = hundredths
Return: nothing
Note:	the BIOS does not validate the data passed to this function
SeeAlso: AH=00h,AH=02h

Top
4E02 - INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - GET BIOS DATA AND TIME
INT 4E - TI Professional PC - TIME-OF-DAY CLOCK - GET BIOS DATA AND TIME
	AH = 02h
Return: AX = number of days since January 1, 1980
	CH = hours
	CL = minutes
	DH = seconds
	DL = hundredths
SeeAlso: AH=00h,AH=01h

Top
4F - INT 4F - TI Professional PC - SYSTEM CONFIGURATION CALL
INT 4F - TI Professional PC - SYSTEM CONFIGURATION CALL
Return: AX = system configuration word (see #03227)
	BX = size of contiguous DOS memory in paragraphs
SeeAlso: INT 11"BIOS",INT 12"BIOS",INT 40"TI Professional",INT 48/AH=09h
SeeAlso: INT 49/AH=01h"TI",INT 4B"TI Professional",INT 4D/AH=00h
SeeAlso: INT 4E"TI Professional"

Bitfields for TI Professional PC system configuration:
Bit(s)	Description	(Table 03227)
 0	floppy drive 0 (A:, internal) installed
 1	floppy drive 1 (B:, internal) installed
 2	floppy drive 2 (C:, external) installed
 3	floppy drive 3 (D:, external) installed
 4	drive A: is 96tpi (80 tracks)
 5	drive A: is double-sided
 6	60 Hz power instead of 50 Hz
 7	hard disk (E: or E:/F:) installed
 8	serial port 1 installed
 9	serial port 2 installed
 10	serial port 3 installed
 11	serial port 4 installed
 14-12	installed graphics RAM
	000 none (text-only system)
	001 bank A only (graphics limited to 2 of 8 colors)
	111 banks A/B/C (graphics supports 8 of 8 colors)
 15	clock/analog board installed

Top
51 - INT 51 - Tandy 2000 - KEYBOARD SERVICES
INT 51 - Tandy 2000 - KEYBOARD SERVICES
Note:	this interrupt is identical to INT 16 on Tandy 2000
SeeAlso: INT 16/AH=00h,INT 16/AH=01h,INT 16/AH=02h,INT 16/AH=04h"Tandy"
SeeAlso: INT 16/AH=04h,INT 4A"Tandy 2000",INT 4C"Tandy 2000",INT 52"Tandy 2000"

Top
52 - INT 52 - Tandy 2000 - VIDEO SERVICES
INT 52 - Tandy 2000 - VIDEO SERVICES
Note:	this interrupt is identical to INT 10
SeeAlso: INT 10/AH=00h,INT 10/AH=01h,INT 10/AH=08h,INT 10/AH=0Eh
SeeAlso: INT 4A"Tandy 2000",INT 51"Tandy 2000",INT 53"Tandy 2000"

Top
53 - INT 53 - Tandy 2000 - SERIAL COMMUNICATIONS
INT 53 - Tandy 2000 - SERIAL COMMUNICATIONS
Note:	this interrupt is identical to INT 14 on Tandy 2000
SeeAlso: INT 14/AH=00h"SERIAL",INT 14/AH=01h,INT 14/AH=02h,INT 14/AH=03h
SeeAlso: INT 14/AH=04h"Tandy 2000",INT 52"Tandy 2000",INT 54"Tandy 2000"

Top
54 - INT 54 - Tandy 2000 - LINE PRINTER
INT 54 - Tandy 2000 - LINE PRINTER
Note:	this interrupt is identical to INT 17 on Tandy 2000
SeeAlso: INT 17/AH=00h,INT 17/AH=01h,INT 17/AH=02h,INT 4A"Tandy 2000"
SeeAlso: INT 53"Tandy 2000",INT 55"Tandy 2000"

Top
55 - INT 55 - TI Professional PC - RESERVED FOR FUTURE USE
INT 55 - TI Professional PC - RESERVED FOR FUTURE USE
Notes:	documented as "for system use only"; intended for multi-tasking
	  software
	this interrupt is not used by the BIOS; the default handler generates
	  a system error trap (see INT 51"TI Professional")
SeeAlso: INT 50"TI Professional",INT 56"TI Professional"

Top
55 - INT 55 - Tandy 2000 - SYSTEM CLOCK
INT 55 - Tandy 2000 - SYSTEM CLOCK
Note:	this interrupt is identical to INT 1A on Tandy 2000
SeeAlso: INT 1A/AH=00h,INT 1A/AH=01h,INT 1A/AH=02h"Tandy 2000"
SeeAlso: INT 1A/AH=03h"Tandy 2000",INT 54"Tandy 2000",INT 56"Tandy 2000"

Top
56 - INT 56 - TI Professional PC - RESERVED FOR FUTURE USE
INT 56 - TI Professional PC - RESERVED FOR FUTURE USE
Notes:	documented as "for system use only"; intended for multi-tasking
	  software
	this interrupt is not used by the BIOS; the default handler generates
	  a system error trap (see INT 51"TI Professional")
SeeAlso: INT 50"TI Professional",INT 55"TI Professional"

Top
56 - INT 56 - Tandy 2000 - FLOPPY DISK SERVICES
INT 56 - Tandy 2000 - FLOPPY DISK SERVICES
Note:	this interrupt is identical to INT 13 on Tandy 2000
SeeAlso: INT 13/AH=00h,INT 13/AH=01h,INT 13/AH=02h,INT 13/AH=03h
SeeAlso: INT 4A"Tandy 2000",INT 51"Tandy 2000",INT 55"Tandy 2000"

Top
57 - INT 57 C - TI Professional PC - CRT MAPPING HOOK
INT 57 C - TI Professional PC - CRT MAPPING HOOK
	AX/BX/CX/DX/BP/SI/DI same as on entry to CRT subroutine (e.g. INT 49)
	DS = BIOS system segment
	ES = DE00h
Return: DF/IF flags must be preserved
	ES,DS,BP preserved
	AX,BX,CX,DX,SI,DI may be changed as necessary to modify the original
	  call
Desc:	hooking this vector permits programs to intercept or modify all
	  screen output, including both application calls to INT 49 and
	  calls generated internally by the BIOS which bypass INT 49
Note:	by default, this vector points at an IRET instruction
SeeAlso: INT 49/AH=01h"TI",INT 50"TI Professional"

Top
58 - INT 58 C - TI Professional PC - SYSTEM TIMER 25ms HOOK
INT 58 C - TI Professional PC - SYSTEM TIMER 25ms HOOK
Desc:	called from the hardware timer tick interrupt, after executing the
	  first four BIOS timing events, updating the system clock, invoking
	  INT 5A if required, saving registers, and switching to a temporary
	  stack (the one reserved for IRQ3)
Notes:	the handler for this interrupt may destroy AX,BX,DI,ES but must
	  preserve all other registers; 8 WORDs of stack space are available,
	  of which at most 4 may be used if the handler enables interrupts
	if the handler switches stacks (because more than 4/8 WORDs are
	  required), the original stack must be restored before chaining to
	  the previous handler
SeeAlso: INT 43"TI Professional",INT 4C"TI Professional"
SeeAlso: INT 5A"TI Professional"

Top
59 - INT 59 - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR
INT 59 - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR
Desc:	all hardware interrupts on the TI Pro jump indirectly to the handler
	  pointed at by this interrupt vector to finish their handling of
	  the hardware interrupt
Notes:	the default handler decrements the interrupt count, restores registers
	  (including the stack pointer), sends an EOI to the interrupt
	  controller, and finally does an IRET
	can be used by multitaskers which need to get control after every
	  hardware interrupt
SeeAlso: INT 40"TI Professional",INT 47"TI Professional"
SeeAlso: INT 53"TI Professional"

Top
5A - INT 5A - TI Professional PC - SYSTEM TIMER 100ms HOOK
INT 5A - TI Professional PC - SYSTEM TIMER 100ms HOOK
Desc:	called from the hardware timer tick interrupt, after executing the
	  first four BIOS timing events, updating the system clock, saving
	  registers, and switching to a temporary stack (the one reserved
	  for IRQ3), but before calling INT 58
	no details available
Notes:	this interrupt is invoked on every fourth timer interrupt
	the handler for this interrupt may destroy AX,BX,DI,ES but must
	  preserve all other registers; 8 WORDs of stack space are available,
	  of which at most 4 may be used if the handler enables interrupts
	if the handler switches stacks (because more than 4/8 WORDs are
	  required), the original stack must be restored before chaining to
	  the previous handler
SeeAlso: INT 43"TI Professional",INT 4C"TI Professional"
SeeAlso: INT 58"TI Professional"

Top
5B - INT 5B C - TI Professional PC - KEYBOARD MAPPING HOOK
INT 5B C - TI Professional PC - KEYBOARD MAPPING HOOK
	CF set
	AH = shift state (see #03247)
	AL = scan code (see #03214)
Return:	BX, CX, DI, ES may be destroyed
	various return methods are supported:
	    IRET, AX unchanged: process keystroke normally
	    IRET, AL = FFh: discard keystroke
	    IRET, AX changed: process modified keystroke
	    chain to old INT 5B: allow other handlers to look at (possibly
		  modified) keystroke in AX
	    RETF 2, CF clear: place returned AX into keyboard buffer without
		  any further processing
Notes:	invoked by the keyboard ISR, and used to remap the keyboard
	if CF is clear on entry, some other handler has processed the
	  keystroke and the current handler should not modify it, instead
	  performing a RETF 2 or IRET (after clearing CF on the stack)
	when requesting that a value be placed directly into the keyboard
	  buffer, AL and AH may not *both* be nonzero (the TI does not
	  return scan codes as part of the key code for non-extended keys)
SeeAlso: INT 15/AH=4Fh,INT 4A/AH=00h"TI",INT 59"TI Professional"
SeeAlso: INT 5C"TI Professional",INT 5D"TI Professional"
SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

Bitfields for TI Professional PC keyboard mapping hook shift states:
Bit(s)	Description	(Table 03247)
 7	CAPS LOCK is on
 6-4	reserved (0)
 3	repeated key
 2	Shift is pressed
 1	Alt is pressed
 0	Ctrl is pressed

Top
5C0100 - INT 5C C - TI Professional PC - KEYBOARD PAUSE KEY VECTOR
INT 5C C - TI Professional PC - KEYBOARD PAUSE KEY VECTOR
	AX = 0100h
	CF clear
Return: CF clear
	    AX = keystroke to be placed into keyboard buffer
	CF set
	    AX ignored
Desc:	toggle a pause flag which is checked by the CRT Device Service Routine
	  (see INT 49/AH=01h"TI") and causes it to temporarily halt the
	  machine on the next video-related function (until a key is pressed)
SeeAlso: INT 09"IRQ1",INT 4A/AH=00h"TI",INT 59"TI Professional"
SeeAlso: INT 5B"TI Professional",INT 5D"TI Professional"
SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

Top
5D - INT 5D C - TI Professional PC - KEYBOARD BREAK KEY VECTOR
INT 5D C - TI Professional PC - KEYBOARD BREAK KEY VECTOR
	CF clear
	AX = 0000h
Return: CF clear
	    AX = keystroke to place into keyboard buffer
	CF set
	    AX ignored
Desc:	invoked by the keyboard ISR when Shift-BrkPause is pressed
Note:	the default handler is a simple IRET instruction
SeeAlso: INT 09"IRQ1",INT 4A/AH=00h"TI",INT 59"TI Professional"
SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"
SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

Top
5E - INT 5E C - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR
INT 5E C - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR
	CF set
Return: CF clear
	    AX = keystroke to be placed into keyboard buffer
	CF set
	    AX ignored
Desc:	hook to dump the screen to the printer
Notes:	hooked by TI MS-DOS, which provides a PRTSCRN character device which
	  can invoke screen prints when a decimal digit (indicating the type
	  of screen dump) is written to it
	the TI MS-DOS print-screen routine allows selective dumps of text
	  only, graphics only, or text and graphics superimposed, in either
	  normal or reverse, by pressing the appropriate keystroke combination:
	  Shift-Print, Ctrl-Print, Alt-Print, Shift-Alt-Print, Ctrl-Alt-Print,
	  or Shift-Ctrl-Print.
	the BIOS default routine for this vector is an IRET
SeeAlso: INT 05"PRINT SCREEN",INT 4A/AH=00h"TI",INT 59"TI Professional"
SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"
SeeAlso: INT 5D"TI Professional",INT 5F"TI Professional"

Top
5F - INT 5F C - TI Professional PC - KEYBOARD QUEUEING VECTOR
INT 5F C - TI Professional PC - KEYBOARD QUEUEING VECTOR
Return: all registers preserved
Desc:	hook for multitaskers to be informed when a keypress is placed in the
	  keyboard buffer
Note:	the default handler is a simple IRET instruction
SeeAlso: INT 09,INT 4A/AH=00h"TI",INT 59"TI Professional"
SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"
SeeAlso: INT 5D"TI Professional",INT 5E"TI Professional"

Top
5F00 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE
	AH = 00h
	AL = video mode
	    03h text,CGA color (100LX/200LX)
	    06h 640x200 CGA graphics (100LX/200LX)
	    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
Notes:	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
	modes 03h and 06h can also be set with the standard INT 10/AH=00h
SeeAlso: INT 0F"HP 95LX",INT 10/AH=00h,INT 15/AX=4DD4h

Top
5F01 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET FILL MASK
INT 5F - HP 95LX/100LX/200LX 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

Top
5F02 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO
	AH = 02h
	ES:DI -> graphics info record (see #03260)
Return: DX:AX -> filled graphics info record (for return to high-level langs)

Format of HP 95LX graphics info record:
Offset	Size	Description	(Table 03260)
 00h	BYTE	current video mode
 01h	BYTE	default video mode
 02h	WORD	display width in pixels
 04h	WORD	display height in pixels
 06h	WORD	current pen column
 08h	WORD	current pen row
 0Ah	WORD	current line type
 0Ch	WORD	current replacement rule
 0Eh	WORD	current pen color
 10h	WORD	current leftmost column of clip region
 12h	WORD	current rightmost column of clip region
 14h	WORD	current topmost row of clip region
 16h	WORD	current bottommost row of clip region
 18h	WORD	current column of logical origin
 1Ah	WORD	current row of logical origin
 1Ch  8 BYTEs	current fill mask

Top
5F03 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN
	AH = 03h
	CX = column
	DX = row
SeeAlso: AH=04h

Top
5F04 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET CLIP REGION
INT 5F - HP 95LX/100LX/200LX 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

Top
5F05 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW RECTANGLE
INT 5F - HP 95LX/100LX/200LX 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,AH=06h,AH=07h

Top
5F06 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW LINE
INT 5F - HP 95LX/100LX/200LX 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,AH=07h

Top
5F07 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT
	AH = 07h
	DX,CX = row,column of point
Note:	also sets pen position to the specified point
SeeAlso: AH=06h,AH=08h,AH=0Ch

Top
5F08 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN
	AH = 08h
	DX,CX = row,column of new pen position
SeeAlso: AH=07h,AH=09h

Top
5F09 - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR
	AH = 09h
	AL = new color (00h = white, 01h = black)
SeeAlso: AH=08h,AH=0Ah,AH=0Bh

Top
5F0A - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE
	AH = 0Ah
	AL = new replacement rule
	    00h force
	    01h AND
	    02h OR
	    03h XOR
	    ---100LX/200LX---
	    04h InvForce
	    05h InvAND
	    06h	InvOR
	    07h InvXOR
	    08h Txt
SeeAlso: AH=01h,AH=09h,AH=0Bh

Top
5F0B - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LINE TYPE
INT 5F - HP 95LX/100LX/200LX 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,AH=0Ah

Top
5F0C - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL
	AH = 0Ch
	DX,CX = row,column of pixel to read
Return: AX = pixel color
SeeAlso: AH=07h

Top
5F0D - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET IMAGE
INT 5F - HP 95LX/100LX/200LX 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 #03261)
Note:	the specified corners are included in the saved image
SeeAlso: AH=0Eh

Format of HP 95LX image buffer:
Offset	Size	Description	(Table 03261)
 00h	WORD	number of planes (always 01h on HP 95LX)
 02h	WORD	number of bits/pixel (always 01h on HP 95LX)
 04h	WORD	image width in pixels
 06h	WORD	image height in pixels
 08h  N BYTEs	image data
		requires (WIDTH+7)/8 * HEIGHT bytes

Top
5F0E - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE
	AH = 0Eh
	AL = replacement rule (see #03262)
	DX,CX = row,column of top left corner
	ES:DI -> image buffer (see #03261)
Note:	if the specified image does not fit completely on the screen, this call
	  does nothing
SeeAlso: AH=0Dh

Bitfields for replacement rule:
Bit(s)	Description	(Table 03262)
 2	invert image before applying rule
 1-0	function (00 force, 01 AND, 10 OR, 11 XOR)

Top
5F0F - INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT
INT 5F - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT
	AH = 0Fh
	AL = rotate flag (if nonzero, rotate 90 degrees counter-clockwise)
	DX,CX = row,column of first character's top left corner
	ES:DI -> ASCIZ text

Top
5F10 - INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER
INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER
	AH = 10h
	CX = font size of desired font
	    0808h  8x8	small  (80x25 text)
	    0A0Bh 11x10 medium (64x18 text)
	    100Ch 12x16 large  (40x16 text)
Return: DX:AX -> ptr to font or 0000h:fontID# if built-in font
SeeAlso: AH=11h

Top
5F11 - INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT
INT 5F - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT
	AH = 11h
	ES:DI -> ptr to font or 0000h:fontID# for built-in font
Note:	this function should be called immediately after AH=10h with the
	  pointer supplied by that call
SeeAlso: AH=10h

Top
60 - INT 60 - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)
INT 60 - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the system ROM at F400h:A000h, and the high word
	  contains the length of the data area (see #03263)
SeeAlso: INT 61"TI Professional PC",INT 66"TI Professional PC"

Format of TI Professional System ROM data area:
Offset	Size	Description	(Table 03263)
 00h	BYTE	port 00h shadow
 01h	BYTE	port 03h shadow
 02h	BYTE	port 04h shadow
 03h	WORD	system configuration word (see #03266)
 05h	BYTE	25ms count
 06h	WORD	offset of timing event 1 (0008h)
 08h	WORD	(event 1) offset of timing event 2 (0010h)
 0Ah	BYTE	(event 1) unused (FFh)
 0Bh	BYTE	(event 1) active flag (bit 7 set if on)
 0Ch	WORD	(event 1) count-down until end of event
 0Eh	WORD	(event 1) event routine (in segment F400h) to call at timeout
 10h	WORD	(event 2) offset of timing event 3 (0018h)
 12h	BYTE	(event 2) unused (FFh)
 13h	BYTE	(event 2) active flag (bit 7 set if on)
 14h	WORD	(event 2) count-down until end of event
 16h	WORD	(event 2) event routine (in segment F400h) to call at timeout
 18h	WORD	(event 3) offset of timing event 3 (0020h)
 1Ah	BYTE	(event 3) unused (FFh)
 1Bh	BYTE	(event 3) active flag (bit 7 set if on)
 1Ch	WORD	(event 3) count-down until end of event
 1Eh	WORD	(event 3) event routine (in segment F400h) to call at timeout
 20h	WORD	(event 4) 0000h - last event
 22h	BYTE	(event 4) unused (FFh)
 23h	BYTE	(event 4) active flag (bit 7 set if on)
 24h	WORD	(event 4) count-down until end of event
 26h	WORD	(event 4) event routine (in segment F400h) to call at timeout
 28h	WORD	offset of start of text display within segment DE00h
 2Ah	WORD	end of display
 2Ch	WORD	current absolute cursor position
 2Eh	WORD	start of current character row
 30h	WORD	current cursor column
 32h	WORD	cursor type and size (see #03264)
 34h	WORD	start of protected status region on screen (0000h = none)
 36h	BYTE	pop flag used by some ROM routines
		00h pop registers before return
		nonzero: do not pop
 37h	BYTE	unused (FFh)
 38h	BYTE	PAUSE flag
		00h off
		FFh on
 39h	BYTE	temp: current attribute while moving characters on screen
 3Ah	WORD	start of keyboard queue (next key at start+2 or 0042h if 0060h)
 3Ch	WORD	end of keyboard queue (next key inserted at end+2 or 0042h)
 3Eh	BYTE	number of characters in buffer
 3Fh	BYTE	keyboard mode flags (see #03265)
 40h	BYTE	Alt-digit-digit-digit accumulator
 41h	BYTE	Alt-digit-digit-digit count of digits (mod 3)
 42h 16 WORDs	keyboard buffer (circular queue)
 62h  8 DWORDs	Drive Interface Table pointers for floppies A:-D: + four others
		(0000h:0000h if pointer not in use)
 82h	BYTE	disk-error retry count (incremented on each disk error)
 83h  2	BYTEs	BIOS scratch space
 85h  8 BYTEs	current cylinder number for drives 0-7
		FFh = unknown
 8Dh	BYTE	BIOS scratch space
 8Eh	BYTE	hard error code for last disk access
		00h operation successful
 8Fh  8 BYTEs	save area for disk DSR parameters
 97h  6 BYTEs	current drive status
 9Dh	BYTE	retry error status
 9Eh	BYTE	BIOS scratch space
 9Fh  7 BYTEs	???
 A6h  2	WORDs	INT 47 save area for SS,SP
 AAh  2	WORDs	INT 46 save area for SS,SP
 AEh  2	WORDs	INT 43 save area for SS,SP
 B2h  2	WORDs	save area for SS,SP to be restored by common intr. exit routine
 B6h 24 WORDs	stack for INT 47
 E6h 24 WORDs	stack for INT 46
116h 17 WORDs	stack for INT 43
13Ah  6 BYTEs	system date and time (hundredths, seconds, minutes, hours, and
		  WORD days since 01jan1980)
Note:	timing event 1 is the disk I/O timeout, event 2 is the floppy disk
	  motor timeout, event 3 is the floppy disk motor spin-up time, and
	  event 4 is used to turn off the speaker after a delay

Bitfields for TI Professional PC cursor size and type:
Bit(s)	Description	(Table 03264)
 15	reserved (0)
 14-13	cursor type
	00 nonblinking
	01 off
	10 slow blink
	11 fast blink
 12-8	starting scan line (0-11)
 7-5	reserved (0)
 4-0	ending scan line (0-11)
SeeAlso: #03263

Bitfields for TI Professional PC keyboard mode flags:
Bit(s)	Description	(Table 03265)
 7	CapsLock was ON at last keypress
 6-4	reserved (0)
 3	repeat key
 2	Shift was down at last keypress
 1	Alt was down at last keypress
 0	Ctrl was down at last keypress
SeeAlso: #03263

Bitfields for TI Professional System Configuration Word:
Bit(s)	Description	(Table 03266)
 0	drive A: installed
 1	drive B: installed
 2	drive C: installed
 3	drive D: installed
 4	drive A: is 80-track
 5	drive A: is double-sided
 6	60-Hz (USA,etc.) system instead of 50-Hz (Europe)
 7	hard disk installed
 8	serial port 1 installed
 9	serial port 2 installed
 10	serial port 3 installed
 11	serial port 4 installed
 14-12	installed graphics planes
	000 none
	001 plane A
	111 planes A, B, and C
 15	clock installed
SeeAlso: #03263

Top
60 - INT 60 - Atari Portfolio - USER INTERFACE FUNCTIONS
INT 60 - Atari Portfolio - USER INTERFACE FUNCTIONS
Desc:	supplies a number of subfunctions which perform such functions as
	  drawing boxes and menus, and provide input line editing
SeeAlso: INT 61/AH=00h"Atari",INT 61"EXTENDED BIOS"

Top
60----DI0100 - INT 60 u - HP 95LX System Manager - WAIT FOR EVENT
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 #03277)
Return: event record filled
	STACK unchanged
Note:	this call will timeout after about 500ms
SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0101h,INT 61"HP 95LX",INT 62"HP 95LX"

(Table 03276)
Values for HP 95LX event type:
 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's alarm expired
 0Ah	daily chance to set an alarm
 0Bh	system date or time has been changed

Format of HP 95LX event record:
Offset	Size	Description	(Table 03277)
 00h	WORD	event type (see #03276)
 02h	WORD	ASCII code page 850 translation of keystroke
		or grow/shrink amount in paragraphs or 0000h if error
		or alarm expiration data
 04h	BYTE	scan code from BIOS
 05h	BYTE	shift key states at time keystroke is retrieved
 06h	WORD	LICS translation of keystroke
 08h	BYTE	function key number (1-2-3 only)
 09h	DWORD	pointer to 1-2-3 bridge record (see #03279)
		or pointer to time change structure (see #03278)
Note:	if the System Manager is awaiting 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 HP 95LX time change structure:
Offset	Size	Description	(Table 03278)
 00h	WORD	old year
 02h	BYTE	old month
 03h	BYTE	old date
 04h	BYTE	old day
 05h	BYTE	old hour
 06h	BYTE	old minute
 07h	BYTE	old second
 08h	BYTE	old hundredth of a second
 09h  9 BYTEs	new time in same format as old time

Top
60----DI0101 - INT 60 u - HP 95LX System Manager - CHECK FOR EVENT
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/DI=0100h)
Return: event record filled
	STACK unchanged
Note:	this call returns immediately if no event is available
SeeAlso: INT 60/DI=0100h

Top
60----DI0102 - INT 60 u - HP 95LX System Manager - "SH_STATUS"
INT 60 u - HP 95LX System Manager - "SH_STATUS"
	DI = 0102h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged

Top
60----DI0104 - INT 60 u - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES
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 #03279)
Return: ???
	STACK unchanged

Format of HP 95LX bridge record:
Offset	Size	Description	(Table 03279)
 00h	WORD	function code (see #03280)
 02h	WORD	return code from 1-2-3
 04h 16 BYTEs	ASCII range name
 14h	WORD	start column of range
 16h	WORD	start row of range
 18h	WORD	end column of range
 1Ah	WORD	end row of range
 1Ch	WORD	order in which data is placed in buffer
 1Eh	WORD	buffer size
 20h	WORD	offset within bridge record's segment of buffer for cell data

(Table 03280)
Values for HP 95LX function code:
 00h	test
 01h	get range
 02h	"GETRANGE_ADDR"
 03h	"SETRANGE_ADDR"
 04h	"GETRANGE_DATA"
 05h	"SETRANGE_DATA"
 06h	recalculate
 07h	get cursor
 08h	set cursor
 09h	redisplay
 0Ah	cell type
 0Bh	"CALCTYPE"

Top
60----DI0105 - INT 60 u - HP 95LX System Manager - FLUSH KEYBOARD BUFFER
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

Top
60----DI0106 - INT 60 u - HP 95LX System Manager - YIELD CPU
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/AX=1000h,INT 2F/AX=1680h

Top
60----DI0107 - INT 60 u - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST
INT 60 u - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST
	DI = 0107h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0200 - INT 60 u - HP 95LX System Manager - SETUP MENU
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 #03281)
		DWORD	pointer to ???
		WORD	number of items on menu???
		WORD	???
		DWORD	pointer to ???
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0201h,INT 60/DI=0203h,INT 60/DI=0205h

Format of HP 95LX menu data:
Offset	Size	Description	(Table 03281)
 00h 80 BYTEs	first line of menu text
 50h 80 BYTEs	second line of menu text
 A0h 80 BYTEs	third line of menu text
 F0h	WORD	number of keywords
 F2h	WORD	index of currently highlighted keyword or FFFFh
 F4h	WORD	single prompt on top line if nonzero
 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

Top
60----DI0201 - INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU
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 #03281)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0200h,INT 60/DI=0202h,INT 60/DI=0206h

Top
60----DI0202 - INT 60 u - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU
INT 60 u - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU
	DI = 0202h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to menu data (see #03281)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0200h,INT 60/DI=0201h,INT 60/DI=0203h

Top
60----DI0203 - INT 60 u - HP 95LX System Manager - REMOVE MENU
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 #03281)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0201h,INT 60/DI=0202h,INT 60/DI=0204h,INT 60/DI=0208h

Top
60----DI0204 - INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE
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 #03281)
		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/DI=0200h,INT 60/DI=0202h,INT 60/DI=0207h

Top
60----DI0205 - INT 60 u - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU
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 #03282)
		DWORD	pointer to edit record (see #03285 at INT 60/DI=0400h)
		DWORD	pointer to wildcard filespec for initial file list
		WORD	row???
		WORD	column???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0200h,INT 60/DI=0206h,INT 60/DI=0208h

Format of HP 95LX file menu structure:
Offset	Size	Description	(Table 03282)
 00h	DWORD	pointer to ASCIZ base directory name
 04h	DWORD	pointer to ASCIZ file pattern (wildcard filespec)
 08h	DWORD	pointer to file list workspace, at least 1024 bytes (see #03283)
 0Ch	WORD	size of file list workspace in bytes
 0Eh	WORD	starting row (-3 is topmost, 0 is first non-"reserved" line)
 10h	WORD	starting column
 12h	WORD	number of lines
 14h	WORD	number of columns
 16h	WORD	number of files displayed on each line
---the remaining fields are initialized by the System Manager---
 18h	WORD	0000h if first edit character, else multiline
 1Ah	WORD	number of files in file list
 1Ch	WORD	max files workspace has room for
 1Eh	WORD	file at top of list
 20h	WORD	index of file to highlight
 22h	WORD	index of file to unhighlight
 24h	WORD	current focus (01h FMENU, 02h EDIT)

Format of HP 95LX file list workspace entry:
Offset	Size	Description	(Table 03283)
 00h	BYTE	file attributes
 01h	WORD	file time (see #01665 at INT 21/AX=5700h)
 03h	WORD	file date (see #01666 at INT 21/AX=5700h)
 05h	DWORD	file size
 09h 13 BYTEs	ASCIZ filename

Top
60----DI0206 - INT 60 u - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU
INT 60 u - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU
	DI = 0206h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to file menu structure (see #03282)
		DWORD	pointer to edit record (see #03285 at INT 60/DI=0400h)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0205h

Top
60----DI0207 - INT 60 u - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE
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 #03282)
		DWORD	pointer to edit record (see #03285 at INT 60/DI=0400h)
		WORD	keystroke
Return: AX = status (see #03284)
	STACK unchanged
SeeAlso: INT 60/DI=0205h,INT 60/DI=0208h

(Table 03284)
Values for HP 95LX System Manager 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's buffer
 0003h	user aborted menu
 FFFBh	bad filename
 FFFCh	bad directory
 FFFDh	bad drive
 FFFEh	unknown keystroke
 FFFFh	keystroke known but invalid in current context

Top
60----DI0208 - INT 60 u - HP 95LX System Manager - REMOVE FILE SELECTION MENU
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 #03282)
		DWORD	pointer to edit record (see #03285 at INT 60/DI=0400h)
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0205h,INT 60/DI=0206h

Top
60----DI0300 - INT 60 u - HP 95LX System Manager - DISPLAY STRING
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	"OSTYLE"
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0F03h,INT 60/DI=1005h

Top
60----DI0301 - INT 60 u - HP 95LX System Manager - CLEAR PORTION OF SCREEN
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/DI=0302h,INT 60/DI=1005h

Top
60----DI0302 - INT 60 u - HP 95LX System Manager - SCROLL PORTION OF SCREEN
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

Top
60----DI0303 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"
INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"
	DI = 0303h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
		WORD	???
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0304 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"
INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"
	DI = 0304h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0305 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"
INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"
	DI = 0305h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0307 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"
INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"
	DI = 0307h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0308 - INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"
INT 60 u - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"
	DI = 0308h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged

Top
60----DI0309 - INT 60 u - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE
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

Top
60----DI030A - INT 60 u - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE
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

Top
60----DI030B - INT 60 u - HP 95LX System Manager - SET CURSOR POSITION
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:	cursor is hidden if the specified position is not on the physical
	  display
SeeAlso: INT 10/AH=02h,INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0400 - INT 60 u - HP 95LX System Manager - "EDIT_INIT"
INT 60 u - HP 95LX System Manager - "EDIT_INIT"
	DI = 0400h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to edit record (see #03285)
		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 HP 95LX edit record:
Offset	Size	Description	(Table 03285)
 00h	WORD	current length of edit buffer
 02h	BYTE	flag for special processing on first character
 03h	BYTE	flags
		bit 0: tab handling
 04h	WORD	editing in prompt window?
 06h	DWORD	pointer to top line of prompt window message
 0Ah	WORD	length of top line of prompt
 0Ch	DWORD	pointer to second line of prompt window message
 10h	WORD	length of second line of prompt
 12h 80 BYTEs	workspace for editing
 62h  2 WORDs	line array needed for multi-line editing
 66h 36 BYTEs	multi-line edit record (see #03286)
 8Ah	WORD	displayable columns

Format of HP 95LX multi-line edit record:
Offset	Size	Description	(Table 03286)
 00h	DWORD	pointer to user-supplied edit buffer
 04h	WORD	length of edit buffer
 06h	WORD	current cursor position
 08h	WORD	starting row of edit area (-3 is topmost, 0 is first user line)
 0Ah	WORD	starting column of edit area
 0Ch	WORD	height of edit area
 0Eh	WORD	width of edit area
 10h	WORD	current top row (-3 is topmost, 0 is first user line)
 12h	WORD	number of rows displayable
 14h	BYTE	cursor column
 15h	BYTE	01h if buffer has been modified
 16h	BYTE	first displayable column (ticker fields only)
 17h	BYTE	01h if wordwrap enabled, FFh if ticker field
 18h	DWORD	pointer to array of line starts (at least one bigger than edit
		  area is high)
 1Ch	BYTE	currently marking?
 1Dh	BYTE	flag
 1Eh	WORD	offset of mark start
 20h	WORD	offset of mark end (inclusive)
 22h	WORD	displayable columns

Top
60----DI0401 - INT 60 u - HP 95LX System Manager - EDIT ON TOP LINE
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 #03285)
		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

Top
60----DI0402 - INT 60 u - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD
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 #03285)
Return: ???
	STACK unchanged

Top
60----DI0403 - INT 60 u - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK
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 #03285)
		WORD	keystroke
		DWORD	pointer to WORD buffer for result code
Return: result code buffer filled with 0001h if editing complete
	STACK unchanged

Top
60----DI0404 - INT 60 u - HP 95LX System Manager - "MDIT_INI"
INT 60 u - HP 95LX System Manager - "MDIT_INI"
	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

Top
60----DI0405 - INT 60 u - HP 95LX System Manager - "MDIT_DIS"
INT 60 u - HP 95LX System Manager - "MDIT_DIS"
	DI = 0405h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0406 - INT 60 u - HP 95LX System Manager - "MDIT_KEY"
INT 60 u - HP 95LX System Manager - "MDIT_KEY"
	DI = 0406h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0407 - INT 60 u - HP 95LX System Manager - "MDIT_FIL"
INT 60 u - HP 95LX System Manager - "MDIT_FIL"
	DI = 0407h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0408 - INT 60 u - HP 95LX System Manager - "MDIT_MARK"
INT 60 u - HP 95LX System Manager - "MDIT_MARK"
	DI = 0408h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0409 - INT 60 u - HP 95LX System Manager - "MDIT_UNMARK"
INT 60 u - HP 95LX System Manager - "MDIT_UNMARK"
	DI = 0409h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI040A - INT 60 u - HP 95LX System Manager - "MDIT_CUTMARK"
INT 60 u - HP 95LX System Manager - "MDIT_CUTMARK"
	DI = 040Ah
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI040B - INT 60 u - HP 95LX System Manager - "MDIT_INS_STR"
INT 60 u - HP 95LX System Manager - "MDIT_INS_STR"
	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/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0500 - INT 60 u - HP 95LX System Manager - OPEN FILE
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 #03287)
		DWORD	pointer to filename
		WORD	length of filename
		WORD	???
		WORD	suppress buffering if nonzero
Return: AX = status
	STACK unchanged
SeeAlso: INT 60/DI=0501h,INT 60/DI=0502h,INT 60/DI=0508h

Format of HP 95LX file state record:
Offset	Size	Description	(Table 03287)
 00h	WORD	DOS file handle
 02h	WORD	state flags (see #03288)
 04h	DWORD	current DOS physical file offset (FFFFFFFFh if unknown)
 08h	DWORD	DOS file offset of start of buffer
 0Ch	DWORD	effective file offset as seen by caller
 10h	WORD	number of bytes in file buffer
---buffered I/O only---
 12h 512 BYTEs	file buffer

Bitfields for HP 95LX file state flags:
Bit(s)	Description	(Table 03288)
 0	buffer contents valid
 1	buffer is dirty and must be written
 2	unbuffered I/O
 3	file is a character device
SeeAlso: #03287

Top
60----DI0501 - INT 60 u - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE
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 #03287)
		DWORD	pointer to filename
		WORD	length of filename
		WORD	???
		WORD	suppress buffering if nonzero
Return: AX = status
	STACK unchanged
SeeAlso: INT 60/DI=0500h

Top
60----DI0502 - INT 60 u - HP 95LX System Manager - CREATE NEW FILE
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 #03287)
		DWORD	pointer to filename
		WORD	length of filename
		WORD	???
		WORD	suppress buffering if nonzero
Return: AX = status
	STACK unchanged
SeeAlso: INT 60/DI=0500h,INT 60/DI=0503h

Top
60----DI0503 - INT 60 u - HP 95LX System Manager - CREATE OR TRUNCATE FILE
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 #03287)
		DWORD	pointer to filename
		WORD	length of filename
		WORD	???
		WORD	suppress buffering if nonzero
Return: AX = status
	STACK unchanged
SeeAlso: INT 60/DI=0502h

Top
60----DI0504 - INT 60 u - HP 95LX System Manager - READ FROM FILE
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 #03287)
		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

Top
60----DI0505 - INT 60 - HP 95LX System Manager - WRITE TO FILE
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 #03287)
		DWORD	pointer to data
		WORD	length of data
Return: AX = status
	STACK unchanged
SeeAlso: INT 60/DI=0504h

Top
60----DI0506 - INT 60 u - HP 95LX System Manager - SET FILE POSITION
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 #03287)
		2 WORDs	???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0507h

Top
60----DI0507 - INT 60 u - HP 95LX System Manager - GET FILE POSITION
INT 60 u - HP 95LX System Manager - GET FILE POSITION
	DI = 0507h "M_TELL"
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to file state record (see #03287)
		DWORD	pointer to DWORD buffer for file position???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0506h

Top
60----DI0508 - INT 60 u - HP 95LX System Manager - CLOSE FILE
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 #03287)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0500h

Top
60----DI0509 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETPAT"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETPAT"
	DI = 0509h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI050A - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_MATCH"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_MATCH"
	DI = 050Ah
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ??? (see #03289)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Format of HP 95LX pattern match control block:
Offset	Size	Description	(Table 03289)
 00h 43 BYTEs	FindFirst data block (see #01626 at INT 21/AH=4Eh)
 2Bh 80 BYTEs	full path name
 7Bh	BYTE	offset of last component of filename
 7Ch	BYTE	DOS function number (4Eh or 4Fh)

Top
60----DI050B - INT 60 u - HP 95LX System Manager - IDENTIFY FILENAME REFERENT
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: ??? = result (see #03290)
	???
	STACK unchanged

(Table 03290)
Values returned by HP 95LX System Manager:
 0000h	nonexistent
 0001h	file
 0002h	directory
 0003h	character device

Top
60----DI050C - INT 60 u - HP 95LX System Manager - DELETE FILE
INT 60 u - HP 95LX System Manager - DELETE FILE
	DI = 050Ch "M_DELETE"
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI050D - INT 60 u - HP 95LX System Manager - RENAME FILE
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

Top
60----DI050E - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETDIR"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETDIR"
	DI = 050Eh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI050F - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETDIR"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_SETDIR"
	DI = 050Fh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0510 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_VOLUME"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_VOLUME"
	DI = 0510h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0511 - INT 60 u - HP 95LX System Manager - MAKE A SUBDIRECTORY
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
SeeAlso: INT 21/AH=39h,INT 60/DI=0512h

Top
60----DI0512 - INT 60 u - HP 95LX System Manager - REMOVE A SUBDIRECTORY
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
SeeAlso: INT 21/AH=3Ah,INT 60/DI=0511h

Top
60----DI0513 - INT 60 u - HP 95LX System Manager - GET DEFAULT DRIVE
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
SeeAlso: INT 21/AH=19h,INT 60/DI=0514h

Top
60----DI0514 - INT 60 u - HP 95LX System Manager - SET DEFAULT DRIVE
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
SeeAlso: INT 21/AH=0Eh"DOS 1+",INT 60/DI=0513h

Top
60----DI0515 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_FDATE"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_FDATE"
	DI = 0515h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0516 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"
	DI = 0516h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0517 - INT 60 u - HP 95LX System Manager - GET FILE ATTRIBUTES
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
SeeAlso: INT 21/AX=4300h,INT 60/DI=0518h

Top
60----DI0518 - INT 60 u - HP 95LX System Manager - SET FILE ATTRIBUTES
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
SeeAlso: INT 21/AX=4301h,INT 60/DI=0517h

Top
60----DI0519 - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"
	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

Top
60----DI051A - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COPYDT"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_COPYDT"
	DI = 051Ah
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI051B - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETFDT"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_GETFDT"
	DI = 051Bh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI051C - INT 60 u - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"
INT 60 u - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"
	DI = 051Ch
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0600 - INT 60 u - HP 95LX System Manager - PROCESS INITIALIZING
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/AX=4DD4h,INT 60/DI=0601h,INT 61"HP 95LX"

Top
60----DI0601 - INT 60 u - HP 95LX System Manager - PROCESS TERMINATION
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/AH=4Ch,INT 2F/AX=1122h,INT 60/DI=0600h

Top
60----DI0602 - INT 60 u - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES
INT 60 u - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES
	DI = 0602h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=101Bh,INT 2F/AX=1681h,INT 60/DI=0603h

Top
60----DI0603 - INT 60 u - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES
INT 60 u - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES
	DI = 0603h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=101Ch,INT 2F/AX=1682h,INT 60/DI=0602h

Top
60----DI0604 - INT 60 u - HP 95LX System Manager - "M_SPAWN"
INT 60 u - HP 95LX System Manager - "M_SPAWN"
	DI = 0604h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 21/AH=4Bh

Top
60----DI0605 - INT 60 u - HP 95LX System Manager - "M_APPCOUNT"
INT 60 u - HP 95LX System Manager - "M_APPCOUNT"
	DI = 0605h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged

Top
60----DI0606 - INT 60 u - HP 95LX System Manager - "M_REBOOT"
INT 60 u - HP 95LX System Manager - "M_REBOOT"
	DI = 0606h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 14/AH=17h"FOSSIL",INT 19

Top
60----DI0607 - INT 60 u - HP 95LX System Manager - "M_SPAWNARG"
INT 60 u - HP 95LX System Manager - "M_SPAWNARG"
	DI = 0607h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0608 - INT 60 u - HP 95LX System Manager - "M_REG_APP_NAME"
INT 60 u - HP 95LX System Manager - "M_REG_APP_NAME"
	DI = 0608h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0609 - INT 60 u - HP 95LX System Manager - "M_APP_NAME"
INT 60 u - HP 95LX System Manager - "M_APP_NAME"
	DI = 0609h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: DX:AX -> ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0700 - INT 60 u - HP 95LX System Manager - OPEN CLIPBOARD
INT 60 u - HP 95LX System Manager - OPEN CLIPBOARD
	DI = 0700h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ??? = error code (see #03291)
	???
	STACK unchanged
SeeAlso: INT 60/DI=0701h,INT 60/DI=0702h

(Table 03291)
Values for HP 95LX error code:
 0000h	successful
 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

Top
60----DI0701 - INT 60 u - HP 95LX System Manager - CLOSE CLIPBOARD
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/DI=0700h,INT 60/DI=0702h

Top
60----DI0702 - INT 60 u - HP 95LX System Manager - RESET CLIPBOARD
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

Top
60----DI0704 - INT 60 u - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???
INT 60 u - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???
	DI = 0704h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0705h,INT 60/DI=0706h,INT 60/DI=0707h

Top
60----DI0705 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"
INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"
	DI = 0705h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0704h

Top
60----DI0706 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"
INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"
	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/DI=0704h,INT 60/DI=0707h

Top
60----DI0707 - INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"
INT 60 u - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"
	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/DI=0704h,INT 60/DI=0706h

Top
60----DI0708 - INT 60 u - HP 95LX System Manager - WRITE TO CLIPBOARD
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

Top
60----DI0709 - INT 60 u - HP 95LX System Manager - READ FROM CLIPBOARD
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

Top
60----DI0800 - INT 60 u - HP 95LX System Manager - BEEP
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/DI=0801h,INT 60/DI=0802h,INT 60/DI=0803h

Top
60----DI0801 - INT 60 u - HP 95LX System Manager - SOUND SERVICE "M_THUD"
INT 60 u - HP 95LX System Manager - SOUND SERVICE "M_THUD"
	DI = 0801h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0800h,INT 60/DI=0802h,INT 60/DI=0803h

Top
60----DI0802 - INT 60 u - HP 95LX System Manager - MAKE A SOUND PATTERN
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/DI=0800h,INT 60/DI=0801h,INT 60/DI=0803h

Top
60----DI0803 - INT 60 u - HP 95LX System Manager - TURN OFF SOUND
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/DI=0800h,INT 60/DI=0801h,INT 60/DI=0802h

Top
60----DI0900 - INT 60 - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK
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:	System Manager-compliant applications are always small-model (64K code,
	  64K data)
SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0902h,INT 60/DI=0903h

Top
60----DI0902 - INT 60 u - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK
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:	System Manager-compliant applications are always small-model (64K code,
	  64K data)
SeeAlso: INT 60/DI=0900h,INT 60/DI=0904h

Top
60----DI0903 - INT 60 u - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK
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/DI=0900h,INT 60/DI=0904h

Top
60----DI0904 - INT 60 u - HP 95LX System Manager - FREE LARGE MEMORY BLOCK
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/DI=0902h,INT 60/DI=0903h

Top
60----DI0B00 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"
	DI = 0B00h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0B01 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"
	DI = 0B01h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0B02 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"
	DI = 0B02h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0B03 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"
	DI = 0B03h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0B04 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"
	DI = 0B04h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to alarm record??? (see #03292)
		WORD	???
Return: ???
	STACK unchanged

Format of HP 95LX alarm record:
Offset	Size	Description	(Table 03292)
 00h	BYTE	hour
 01h	BYTE	minute
 02h	BYTE	second
 03h	BYTE	unused padding
 04h	WORD	rescheduling interval, in seconds
 06h	BYTE	are seconds significant?
 07h	BYTE	alarm sound
 08h 40 BYTEs	message displayed when alarm activates
 30h	BYTE	task ID of owner
 31h	BYTE	application's own use for sub-class
 32h  4 BYTEs	application's own use for private data

Top
60----DI0B05 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"
	DI = 0B05h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0B06 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"
	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

Top
60----DI0B07 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"
	DI = 0B07h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0B08 - INT 60 u - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP
INT 60 u - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP
	DI = 0B08h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	timestamp format (see #03293)
		WORD	row (-3 is topmost, 0 is first non-reserved line)
		WORD	column
Return: ???
	STACK unchanged

Bitfields for HP 95LX timestamp format:
Bit(s)	Description	(Table 03293)
 1-0	timestamp components
	00 date only
	01 time only
	10 date and time
	11 day and date
 4	supply am/pm
 5	supply seconds
 6	show year
 7	four-digit year

Top
60----DI0B09 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"
	DI = 0B09h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ??? (see #03294)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0B0Ah,INT 60/DI=0B0Fh

Format of HP 95LX system settings:
Offset	Size	Description	(Table 03294)
 00h	WORD	country code
 02h	WORD	speaker volume (00h-03h or FFh for off)
 04h	WORD	contrast level (00h-0Fh)
 06h	WORD	week start (00h Sunday, 01h Monday)
 08h	WORD	punctuation format (see #03295)
 0Ah	WORD	two-character language code (only 5355h = "US" byte-swapped)
 0Ch	WORD	current date format (see #03296)
 0Eh	WORD	current time format (see #03297)
 10h	WORD	collating sequence
		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
 BAh	WORD	number of languages
 BCh  6 BYTEs	available languages
 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 #03298)
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

(Table 03295)
Values for HP 95LX punctuation format:
 code	decimal arg	thousands
 00h	.	,	,
 01h	,	.	.
 02h	.	;	;
 03h	,	;	.
 04h	.	,	" "
 05h	,	.	" "
 06h	.	;	" "
 07h	,	;	" "

(Table 03296)
Values for HP 95LX current date format:
 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

(Table 03297)
Values for HP 95LX current time format:
 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

(Table 03298)
Values for HP 95LX keyboard layout:
 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

Top
60----DI0B0A - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"
	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

Top
60----DI0B0B - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"
	DI = 0B0Bh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0B0Ch,INT 60/DI=0B0Dh

Top
60----DI0B0C - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"
	DI = 0B0Ch
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0B0Bh,INT 60/DI=0B0Dh

Top
60----DI0B0D - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"
	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/DI=0B0Bh,INT 60/DI=0B0Ch

Top
60----DI0B0E - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"
	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

Top
60----DI0B0F - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"
	DI = 0B0Fh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: DX:AX -> system settings record (see #03294)
	STACK unchanged
SeeAlso: INT 60/DI=0B09h

Top
60----DI0B10 - INT 60 u - HP 95LX System Manager - PARSE DATE SPECIFICATION
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

Top
60----DI0B11 - INT 60 u - HP 95LX System Manager - PARSE TIME SPECIFICATION
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

Top
60----DI0B12 - INT 60 u - HP 95LX System Manager - SET DATE PARSING RULE
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 (see #03299)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0B13h

(Table 03299)
Values for HP 95LX date parsing rule:
 01h	day-month-year
 02h	month-day-year
 03h	year-month-day
 04h	"DMYO"
 05h	"MDYO"
 OR with 08h to get any year

Top
60----DI0B13 - INT 60 u - HP 95LX System Manager - SET TIME PARSING RULE
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 (see #03300)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0B12h

(Table 03300)
Values for HP 95LX time 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)

Top
60----DI0B14 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"
	DI = 0B14h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged

Top
60----DI0B15 - INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"
INT 60 u - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"
	DI = 0B15h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0C00 - INT 60 u - HP 95LX System Manager - OPEN PRINTER
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/DI=0C01h,INT 60/DI=0C02h,INT 60/DI=0C03h

Top
60----DI0C01 - INT 60 u - HP 95LX System Manager - CLOSE PRINTER
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:	relinquishes control of printer
SeeAlso: INT 60/DI=0C00h

Top
60----DI0C02 - INT 60 u - HP 95LX System Manager - WRITE TO PRINTER
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

Top
60----DI0C03 - INT 60 u - HP 95LX System Manager - INITIALIZE PRINTER
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

Top
60----DI0C04 - INT 60 u - HP 95LX System Manager - "M_TRANS_PRINTER"
INT 60 u - HP 95LX System Manager - "M_TRANS_PRINTER"
	DI = 0C04h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0C05 - INT 60 u - HP 95LX System Manager - "M_FALL_PRINTER"
INT 60 u - HP 95LX System Manager - "M_FALL_PRINTER"
	DI = 0C05h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0E00 - INT 60 u - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"
INT 60 u - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"
	DI = 0E00h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: #03301,INT 60/DI=0E01h,INT 60/DI=0E02h

(Table 03301)
Values for HP 95LX error code:
 0000h	successful
 FFF1h	"E_BUSY"
 FFF2h	timeout
 FFF3h	framing error
 FFF4h	parity error
 FFF5h	overrun error
 FFF6h	"E_EMPTY"
 FFF7h	"E_CONECT"
 FFF8h	not open
 FFF9h	out of memory
 FFFAh	buffer overflow
 FFFBh	"E_NOFIT"
 FFFCh	unsupported
 FFFDh	"E_IVOPR"
 FFFEh	"E_IVCHN"
 FFFFh	"E_REOPEN"

Top
60----DI0E01 - INT 60 u - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL
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/DI=0E00h,INT 60/DI=0E02h

Top
60----DI0E02 - INT 60 u - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL
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/DI=0E00h,INT 60/DI=0E01h

Top
60----DI0E03 - INT 60 u - HP 95LX System Manager - "M_COMM_GETMDM"
INT 60 u - HP 95LX System Manager - "M_COMM_GETMDM"
	DI = 0E03h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E04 - INT 60 u - HP 95LX System Manager - "M_COMM_ANSWER"
INT 60 u - HP 95LX System Manager - "M_COMM_ANSWER"
	DI = 0E04h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E05 - INT 60 u - HP 95LX System Manager - "M_COMM_DIAL"
INT 60 u - HP 95LX System Manager - "M_COMM_DIAL"
	DI = 0E05h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0E06 - INT 60 u - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL
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 (see #03302)
Return: ???
	STACK unchanged

Bitfields for HP 95LX reset options:
Bit(s)	Description	(Table 03302)
 0	reset line
 1	flush transmit buffer
 2	flush receive buffer
 3	reset modem
 4	reset receiver's ^S state
 5	reset transmitter's ^S state

Top
60----DI0E07 - INT 60 u - HP 95LX System Manager - "M_COMM_HANGUP"
INT 60 u - HP 95LX System Manager - "M_COMM_HANGUP"
	DI = 0E07h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E08 - INT 60 u - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL
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/DI=0E09h,INT 60/DI=0E0Bh

Top
60----DI0E09 - INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE
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

Top
60----DI0E0A - INT 60 u - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE
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/DI=0E09h,INT 60/DI=0E0Bh

Top
60----DI0E0B - INT 60 u - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL
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 (call) length of data buffer
					(ret) number of bytes received
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0E08h,INT 60/DI=0E0Ah

Top
60----DI0E0C - INT 60 u - HP 95LX System Manager - "M_COMM_HAZCMD"
INT 60 u - HP 95LX System Manager - "M_COMM_HAZCMD"
	DI = 0E0Ch
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E0D - INT 60 u - HP 95LX System Manager - "M_COMM_COMAND"
INT 60 u - HP 95LX System Manager - "M_COMM_COMAND"
	DI = 0E0Dh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E0E - INT 60 u - HP 95LX System Manager - "M_COMM_BREAK"
INT 60 u - HP 95LX System Manager - "M_COMM_BREAK"
	DI = 0E0Eh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E0F - INT 60 u - HP 95LX System Manager - "M_COMM_FRCXON"
INT 60 u - HP 95LX System Manager - "M_COMM_FRCXON"
	DI = 0E0Fh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E10 - INT 60 u - HP 95LX System Manager - "M_COMM_FRCXOF"
INT 60 u - HP 95LX System Manager - "M_COMM_FRCXOF"
	DI = 0E10h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E11 - INT 60 u - HP 95LX System Manager - "M_COMM_SETDTR"
INT 60 u - HP 95LX System Manager - "M_COMM_SETDTR"
	DI = 0E11h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E12 - INT 60 u - HP 95LX System Manager - "M_COMM_XMITNG"
INT 60 u - HP 95LX System Manager - "M_COMM_XMITNG"
	DI = 0E12h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E13 - INT 60 u - HP 95LX System Manager - "M_COMM_STATUS"
INT 60 u - HP 95LX System Manager - "M_COMM_STATUS"
	DI = 0E13h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E14 - INT 60 u - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS
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 communications settings (see #03303)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0E15h

Format of HP 95LX communications settings:
Offset	Size	Description	(Table 03303)
 00h	BYTE	dial type ('T' tone, 'P' pulse)
 01h	WORD	baud rate divisor (115200/baud_rate)
 03h	BYTE	parity (00h none, 08h odd, 18h even, 28h mark, 38h space)
 04h	BYTE	stop bits (00h one, 04h two)
 05h	BYTE	data bits - 5
 06h	BYTE	software handshake
		01h none, 02h XOFF/XON, 04h XOFF/any, 08h ENQ/ACK
 07h	BYTE	infrared (01h off, 02h on)
 08h	BYTE	duplex (01h half, 02h full)
 09h	BYTE	echo (01h echo, 02h no echo)

Top
60----DI0E15 - INT 60 u - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS
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 #03303)
Return: ???
	STACK unchanged
SeeAlso: INT 60/DI=0E14h

Top
60----DI0E16 - INT 60 u - HP 95LX System Manager - "M_COMM_CNFGUR"
INT 60 u - HP 95LX System Manager - "M_COMM_CNFGUR"
	DI = 0E16h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		WORD	???
		WORD	???
		WORD	???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI0E17 - INT 60 u - HP 95LX System Manager - "M_COMM_QRYERR"
INT 60 u - HP 95LX System Manager - "M_COMM_QRYERR"
	DI = 0E17h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI0F00 - INT 60 u - HP 95LX System Manager - "M_ERRMSG"
INT 60 u - HP 95LX System Manager - "M_ERRMSG"
	DI = 0F00h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
		DWORD	pointer to ???
		WORD	???
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0F01 - INT 60 u - HP 95LX System Manager - DRAW STANDARD TITLE BOX
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

Top
60----DI0F02 - INT 60 u - HP 95LX System Manager - "SHOWNAME"
INT 60 u - HP 95LX System Manager - "SHOWNAME"
	DI = 0F02h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI0F03 - INT 60 u - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX
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/DI=0300h,INT 60/DI=0F04h,INT 60/DI=0F09h

Top
60----DI0F04 - INT 60 u - HP 95LX System Manager - REMOVE MESSAGE BOX
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/DI=0F03h,INT 60/DI=0F09h

Top
60----DI0F05 - INT 60 u - HP 95LX System Manager - "M_COM_TIMER_ADDR"
INT 60 u - HP 95LX System Manager - "M_COM_TIMER_ADDR"
	DI = 0F05h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: DX:AX -> ???
	STACK unchanged

Top
60----DI0F06 - INT 60 u - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"
INT 60 u - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"
	DI = 0F06h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: DX:AX -> ???
	STACK unchanged

Top
60----DI0F07 - INT 60 u - HP 95LX System Manager - "M_SYS_RSRC_ADDR"
INT 60 u - HP 95LX System Manager - "M_SYS_RSRC_ADDR"
	DI = 0F07h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: DX:AX -> ???
	STACK unchanged

Top
60----DI0F08 - INT 60 u - HP 95LX System Manager - "M_BIOS_OUTSTR"
INT 60 u - HP 95LX System Manager - "M_BIOS_OUTSTR"
	DI = 0F08h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI0F09 - INT 60 u - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX
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/DI=0F03h,INT 60/DI=0F04h

Top
60----DI0F0A - INT 60 u - HP 95LX System Manager - DISABLE MACROS
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

Top
60----DI0F0B - INT 60 u - HP 95LX System Manager - ENABLE MACROS
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

Top
60----DI0F0C - INT 60 u - HP 95LX System Manager - "M_DATE_TIME_SEPS"
INT 60 u - HP 95LX System Manager - "M_DATE_TIME_SEPS"
	DI = 0F0Ch
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI0F0D - INT 60 u - HP 95LX System Manager - "M_FORM_FT"
INT 60 u - HP 95LX System Manager - "M_FORM_FT"
	DI = 0F0Dh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: DX:AX -> ???
	STACK unchanged

Top
60----DI0F0E - INT 60 u - HP 95LX System Manager - "M_RAM_IV_INFO"
INT 60 u - HP 95LX System Manager - "M_RAM_IV_INFO"
	DI = 0F0Eh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: DX:AX -> ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI1005 - INT 60 u - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE
INT 60 u - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE
	DI = 1005h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged
SeeAlso: INT 10/AH=FFh,INT 60/DI=0300h,INT 60/DI=0301h

Top
60----DI1200 - INT 60 u - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"
INT 60 u - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"
	DI = 1200h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged

Top
60----DI1201 - INT 60 u - HP 95LX System Manager - "GET_RESOURCE_PTR"
INT 60 u - HP 95LX System Manager - "GET_RESOURCE_PTR"
	DI = 1201h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		WORD	???
Return: DX:AX -> ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI1202 - INT 60 u - HP 95LX System Manager - "GET_RSRC_TAB_PTR"
INT 60 u - HP 95LX System Manager - "GET_RSRC_TAB_PTR"
	DI = 1202h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: DX:AX -> ???
	STACK unchanged

Top
60----DI1203 - INT 60 u - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"
INT 60 u - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"
	DI = 1203h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: ???
	STACK unchanged

Top
60----DI1300 - INT 60 u - HP 95LX System Manager - INITIALIZE HELP SYSTEM
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

Top
60----DI1301 - INT 60 u - HP 95LX System Manager - DISPLAY HELP
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

Top
60----DI1302 - INT 60 u - HP 95LX System Manager - "M_HELP_KEY"
INT 60 u - HP 95LX System Manager - "M_HELP_KEY"
	DI = 1302h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI1303 - INT 60 u - HP 95LX System Manager - "M_HELP_TERM"
INT 60 u - HP 95LX System Manager - "M_HELP_TERM"
	DI = 1303h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI1400 - INT 60 u - HP 95LX System Manager - "M_ColInit"
INT 60 u - HP 95LX System Manager - "M_ColInit"
	DI = 1400h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
Return: AX = ???
	STACK unchanged

Top
60----DI1401 - INT 60 u - HP 95LX System Manager - "M_ColCpStr"
INT 60 u - HP 95LX System Manager - "M_ColCpStr"
	DI = 1401h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI1402 - INT 60 u - HP 95LX System Manager - "M_ColLicsStr"
INT 60 u - HP 95LX System Manager - "M_ColLicsStr"
	DI = 1402h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1403 - INT 60 u - HP 95LX System Manager - "M_ColLicsChar"
INT 60 u - HP 95LX System Manager - "M_ColLicsChar"
	DI = 1403h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1404 - INT 60 u - HP 95LX System Manager - "M_ColToLower"
INT 60 u - HP 95LX System Manager - "M_ColToLower"
	DI = 1404h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged

Top
60----DI1405 - INT 60 u - HP 95LX System Manager - "M_ColCpSearch"
INT 60 u - HP 95LX System Manager - "M_ColCpSearch"
	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

Top
60----DI1406 - INT 60 u - HP 95LX System Manager - "M_ColToUpper"
INT 60 u - HP 95LX System Manager - "M_ColToUpper"
	DI = 1406h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		DWORD	pointer to ???
		WORD	???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI1500 - INT 60 u - HP 95LX System Manager - "GrDispInit"
INT 60 u - HP 95LX System Manager - "GrDispInit"
	DI = 1500h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1501 - INT 60 u - HP 95LX System Manager - "GrDispClear"
INT 60 u - HP 95LX System Manager - "GrDispClear"
	DI = 1501h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1502 - INT 60 u - HP 95LX System Manager - "GrDispDot"
INT 60 u - HP 95LX System Manager - "GrDispDot"
	DI = 1502h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1503 - INT 60 u - HP 95LX System Manager - "GrDispDraw"
INT 60 u - HP 95LX System Manager - "GrDispDraw"
	DI = 1503h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1504 - INT 60 u - HP 95LX System Manager - "GrDispFill"
INT 60 u - HP 95LX System Manager - "GrDispFill"
	DI = 1504h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1505 - INT 60 u - HP 95LX System Manager - "GrDispRead"
INT 60 u - HP 95LX System Manager - "GrDispRead"
	DI = 1505h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1506 - INT 60 u - HP 95LX System Manager - "GrDispString"
INT 60 u - HP 95LX System Manager - "GrDispString"
	DI = 1506h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1507 - INT 60 u - HP 95LX System Manager - "GrDispPan"
INT 60 u - HP 95LX System Manager - "GrDispPan"
	DI = 1507h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1508 - INT 60 u - HP 95LX System Manager - "GrDispZoom"
INT 60 u - HP 95LX System Manager - "GrDispZoom"
	DI = 1508h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI1509 - INT 60 u - HP 95LX System Manager - "GrDispSave"
INT 60 u - HP 95LX System Manager - "GrDispSave"
	DI = 1509h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI150A - INT 60 u - HP 95LX System Manager - "GrDispRestore"
INT 60 u - HP 95LX System Manager - "GrDispRestore"
	DI = 150Ah
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged

Top
60----DI150B - INT 60 u - HP 95LX System Manager - "GrDispCorner"
INT 60 u - HP 95LX System Manager - "GrDispCorner"
	DI = 150Bh
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
60----DI1604 - INT 60 u - HP 95LX System Manager - "CP_TO_LICS"
INT 60 u - HP 95LX System Manager - "CP_TO_LICS"
	DI = 1604h
	STACK:	2 WORDs unused dummies (for calls from high level languages)
		???
Return: ???
	STACK unchanged
SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

Top
61 - INT 61 - Atari Portfolio - EXTENDED BIOS
INT 61 - Atari Portfolio - EXTENDED BIOS
Desc:	provides subfunctions such as turning off the machine, accessing
	  internal variables, and mapping memory cards
SeeAlso: INT 60"Atari",AH=00h"Portfolio",AH=08h"Portfolio",AH=0Dh"Portfolio"
SeeAlso: AH=11h"Portfolio",AH=15h"Portfolio",AH=19h"Portfolio"
SeeAlso: AH=1Bh"Portfolio",AH=24h"Portfolio",AH=2Ch"Portfolio"
SeeAlso: AH=30h"Portfolio"

Top
61 - INT 61 - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)
INT 61 - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the expansion ROM at F400h:0000h, and the high word
	  contains the length of the data area; this segment and size are
	  both set to 0000h if no ROM is installed at F400h:0000h
SeeAlso: INT 60"TI Professional PC",INT 62"TI Professional"
SeeAlso: INT 66"TI Professional PC"

Top
61 - INT 61 - HP 95LX System Manager - LOAD DS
INT 61 - HP 95LX System Manager - LOAD DS
SeeAlso: INT 0F"HP 95LX",INT 60/DI=0102h"HP 95LX"

Top
6100 - INT 61 - Atari Portfolio - SERVICE INITIALIZATION
INT 61 - Atari Portfolio - SERVICE INITIALIZATION
	AH = 00h
Return: nothing
Note:	applications using any Portfolio INT 61 calls should call this function
	  exactly once at startup
SeeAlso: AH=07h"Portfolio",AH=09h"Portfolio",AH=0Dh"Portfolio"
SeeAlso: AH=11h"Portfolio",AH=15h"Portfolio",AH=19h"Portfolio"
SeeAlso: AH=1Bh"Portfolio",AH=24h"Portfolio",AH=2Ch"Portfolio"
SeeAlso: AH=30h"Portfolio"

Top
6107 - INT 61 - Atari Portfolio - FORMAT CREDIT CARD MEMORY
INT 61 - Atari Portfolio - FORMAT CREDIT CARD MEMORY
	AH = 07h
	AL = drive number (00h = A:,01h = B:)
Return: CF clear if successful
	CF set on error
	    AH = error code (see #00234 at INT 13/AH=01h)
Note:	do not use this function to format the internal disk (drive number 02h)
SeeAlso: AH=00h"Portfolio",AH=08h"Portfolio",AH=09h"Portfolio"

Top
6108 - INT 61 - Atari Portfolio - GET SIZE OF INTERNAL DISK
INT 61 - Atari Portfolio - GET SIZE OF INTERNAL DISK
	AH = 08h
Return: AX = segment address of RAMdisk
	BX = size in KB
SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=09h"Portfolio"

Top
6109 - INT 61 - Atari Portfolio - FORMAT INTERNAL DISK
INT 61 - Atari Portfolio - FORMAT INTERNAL DISK
	AH = 09h
	BX = desired size of disk in KB
Return: CF clear if successful
	CF set on error
	    BX = maximum possible size in KB
Desc:	resize and erase the internal RAMdisk, then reboot the system
SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=08h"Portfolio"
SeeAlso: AH=0Bh"Portfolio"

Top
610B - INT 61 - Atari Portfolio - DETERMINE CCM VALIDITY
INT 61 - Atari Portfolio - DETERMINE CCM VALIDITY
	AH = 0Bh
	AL = drive number (00h = A:,01h = B:)
Return: CF clear if successful (card present and correct)
	CF set on error
	    AH = error code (see #00234 at INT 13/AH=01h)
SeeAlso: AH=00h"Portfolio",AH=07h"Portfolio",AH=0Dh"Portfolio"

Top
610D - INT 61 - Atari Portfolio - GET SCREEN SIZE
INT 61 - Atari Portfolio - GET SCREEN SIZE
	AH = 0Dh
Return: AX = physical screen size (AH=rows, AL=columns)
	DX = logical screen size (DH=rows, DL=columns)
SeeAlso: AH=00h"Portfolio",AH=0Bh"Portfolio",AH=0Eh"Portfolio"

Top
610E - INT 61 - Atari Portfolio - GET/SET SCREEN MODE
INT 61 - Atari Portfolio - GET/SET SCREEN MODE
	AH = 0Eh
	AL = function
	    00h get mode
	    01h set mode
		DL = new mode (see #03460)
Return: DL = current/old mode
Note:	if changing the mode places the cursor position or virtual screen
	  origin outside the displayed area, the screen origin will be reset
	  to (0,0), the screen cleared, and the cursor position set to (0,0)
SeeAlso: AH=00h"Portfolio",AH=0Dh"Portfolio",AH=0Fh"Portfolio",INT 10/AH=00h

Bitfields for Atari Portfolio screen mode:
Bit(s)	Description	(Table 03460)
 0	40x8 mode instead of 80x25
 1	tracked mode
 7	graphics
Note:	the above bits are mutually exclusive

Top
610F - INT 61 - Atari Portfolio - GET/SET CURSOR MODE
INT 61 - Atari Portfolio - GET/SET CURSOR MODE
	AH = 0Fh
	AL = function
	    00h get mode
	    01h set mode
		BL = new cursor mode
			00h cursor off
			01h underline
			02h block
	    02h force mode (set size to reflect NumLock state)
Return: BL = current/old cursor mode
SeeAlso: AH=00h"Portfolio",AH=0Eh"Portfolio",AH=10h"Portfolio",INT 10/AH=01h

Top
6110 - INT 61 - Atari Portfolio - GET/SET VIRTUAL SCREEN POSITION
INT 61 - Atari Portfolio - GET/SET VIRTUAL SCREEN POSITION
	AH = 10h
	AL = function
	    00h get position
		Return: DH,DL = current row,column
	    01h set position
		DH = row
		DL = column
Desc:	get or specify the upper-left corner of the 40x8 window into the
	  logical screen
SeeAlso: AH=00h"Portfolio",AH=0Eh"Portfolio",AH=0Fh"Portfolio"
SeeAlso: AH=11h"Portfolio"

Top
6111 - INT 61 - Atari Portfolio - MOVE VIRTUAL SCREEN ORIGIN
INT 61 - Atari Portfolio - MOVE VIRTUAL SCREEN ORIGIN
	AH = 11h
	AL = number of lines to move
	DL = direction of move (1=up, 2=down, 3=left, 4=right)
SeeAlso: AH=00h"Portfolio",AH=10h"Portfolio",AH=12h"Portfolio"

Top
6112 - INT 61 - Atari Portfolio - SCREEN REFRESH
INT 61 - Atari Portfolio - SCREEN REFRESH
	AH = 12h
Return: nothing
Desc:	copy contents of video RAM to LCD controller
SeeAlso: AH=10h"Portfolio",AH=11h"Portfolio",AH=15h"Portfolio"

Top
6115 - INT 61 - Atari Portfolio - SOUND GENERATION
INT 61 - Atari Portfolio - SOUND GENERATION
	AH = 15h
	AL = function
	    00h key click
	    01h beep
	    02h alarm
Return: nothing
SeeAlso: AH=00h"Portfolio",AH=12h"Portfolio",AH=16h"Portfolio"

Top
6116 - INT 61 - Atari Portfolio - MELODY TONE GENERATOR
INT 61 - Atari Portfolio - MELODY TONE GENERATOR
	AH = 16h
	CX = length of tones in 1/100 sec
	DL = tone code (see #03463)
SeeAlso: AH=15h"Portfolio",AH=17h"Portfolio"

(Table 03463)
Values for Atari Portfolio tone code:
 04h	A6#01864.7 Hz
 05h	B6	1975.5 Hz
 06h	D7	2348.3 Hz
 07h	D7#	2489.0 Hz
 0Eh	F6#	1480.0 Hz
 25h	C7	2093.0 Hz
 29h	D6	1174.7 Hz
 2Ch	G6#	1661.2 Hz
 2Fh	C7#	2217.5 Hz
 30h	D5#	622.3 Hz
 31h	E5	659.3 Hz
 32h	F5	698.5 Hz
 33h	F5#	740.0 Hz
 34h	G5	784.0 Hz
 35h	G5#	830.6 Hz
 36h	A5	880.6 Hz
 37h	A5#	932.3 Hz
 38h	B5	987.8 Hz
 39h	C6	1046.5 Hz
 3Ah	C6#	1108.7 Hz
 3Bh	D6#	1244.5 Hz
 3Ch	E6	1318.5 Hz
 3Dh	F6	1396.9 Hz
 3Eh	G6	1568.9 Hz
 3Fh	A6	1760.0 Hz

Top
6117 - INT 61 - Atari Portfolio - DIAL NUMBER
INT 61 - Atari Portfolio - DIAL NUMBER
	AH = 17h
	DS:SI -> ASCII string containing number to dial
	CX = length of string
Note:	valid characters for string are "0123456789ABCD*#"
SeeAlso: AH=00h"Portfolio",AH=15h"Portfolio",AH=16h"Portfolio"
SeeAlso: AH=18h"Portfolio"

Top
6118 - INT 61 - Atari Portfolio - MUTE STATES
INT 61 - Atari Portfolio - MUTE STATES
	AH = 18h
	AL = function
	    00h get mute state
	    01h set mute state
	    02h get key click state
	    03h set key click state
	    04h get beep state
	    05h set beep state
	    06h get alarm state
	    07h set alarm state
	    08h get DTMF duration
	    09h set DTMF duration
	DL = new state ("set" functions) (00h off [muted], 01h on)
Return: DL = current state ("get" functions) (00h off [muted], 01h on)
SeeAlso: AH=15h"Portfolio",AH=16h"Portfolio",AH=17h"Portfolio"
SeeAlso: AH=19h"Portfolio"

Top
6119 - INT 61 - Atari Portfolio - GET SERIAL PORT PARAMETERS
INT 61 - Atari Portfolio - GET SERIAL PORT PARAMETERS
	AH = 19h
	DX = serial port number
Return: AH = status
	    00h successful
		AL = composite parameters (see #00300 at INT 14/AH=00h"SERIAL")
	    other error
SeeAlso: AH=00h"Portfolio",AH=15h"Portfolio",AH=1Ah"Portfolio"

Top
611A - INT 61 - Atari Portfolio - GET PERIPHERAL ID BYTE
INT 61 - Atari Portfolio - GET PERIPHERAL ID BYTE
	AH = 1Ah
Return: AH = peripheral ID byte
	AL = 00h if no peripheral installed
Desc:	get the ID code for the current terminating peripheral
SeeAlso: AH=00h"Portfolio",AH=18h"Portfolio",AH=1Bh"Portfolio"

Top
611B - INT 61 - Atari Portfolio - SET PERIPHERAL ID BYTE
INT 61 - Atari Portfolio - SET PERIPHERAL ID BYTE
	AH = 1Bh
	AL = which peripheral to set
	    00h serial
	    01h parallel
	DL = peripheral ID
Return: nothing
Desc:	specify that a peripheral is compatible with the BIOS serial or
	  parallel services
SeeAlso: AH=1Ah"Portfolio",AH=1Ch"Portfolio"

Top
611C - INT 61 - Atari Portfolio - PRESET/GET PERIPHERAL DATA
INT 61 - Atari Portfolio - PRESET/GET PERIPHERAL DATA
	AH = 1Ch
	AL = function
	    00h preset data values
		BL = data value
		DX = I/O address
	    01h get data values
	BH = table entry number (04h-09h)
Return: if function 01h
	    BL = data value
	    DX = I/O address
Desc:	preset peripheral I/O data in a table mapping I/O addresses to data
	  values; function 00h additionally outputs the data value to the
	  I/O port
SeeAlso: AH=1Ah"Portfolio",AH=1Bh"Portfolio",AH=1Eh"Portfolio"

Top
611E - INT 61 - Atari Portfolio - GET/SET CLOCK TICK SPEED
INT 61 - Atari Portfolio - GET/SET CLOCK TICK SPEED
	AH = 1Eh
	AL = function
	    00h get speed
	    01h set speed
		BX = clock tick speed
		    0000h tick every 128 seconds
		    0001h tick every second
Return: if function 00h
	    BX = clock tick speed
Note:	the faster tick speed also uses more power
SeeAlso: AH=00h"Portfolio",AH=1Ch"Portfolio",AH=1Fh"Portfolio"

Top
611F - INT 61 - Atari Portfolio - GET KEY/NMI-INVOKED SCREEN REFRESH
INT 61 - Atari Portfolio - GET KEY/NMI-INVOKED SCREEN REFRESH
	AH = 1Fh
	AL = function
	    00h get state
	    01h set state
		DH = new refresh-on-NMI state
		    (00h disabled, 01h enabled, bit 7 set = don't change)
		DL = new refresh-on-key state
Return: DH,DL = current/old states
SeeAlso: AH=00h"Portfolio",AH=1Eh"Portfolio",AH=20h"Portfolio"

Top
6120 - INT 61 - Atari Portfolio - GET/SET INT 09 REVECTORING
INT 61 - Atari Portfolio - GET/SET INT 09 REVECTORING
	AH = 20h
	AL = function
	    00h get INT 09 revectoring state
	    01h set state
		DL = new state (00h disable, 01h enable)
Return: if function 00h
	    DL = new state (00h disabled, 01h enabled)
Desc:	specify whether INT 09 is automatically revectored to the BIOS,
	  preventing applications from using their own INT 09 handler on the
	  incompatible keyboard hardware
SeeAlso: AH=1Eh"Portfolio",AH=1Fh"Portfolio",AH=24h"Portfolio"

Top
6124 - INT 61 - Atari Portfolio - GET/SET ROM/CCM SPACE STATE
INT 61 - Atari Portfolio - GET/SET ROM/CCM SPACE STATE
	AH = 24h
	AL = function
	    00h get state
	    01h set state
		DL = new ROM state (see #03469)
		DH = new CCM state (see #03470)
Return: CF clear if successful
	    DL = current/old ROM state
	    DH = current/old CCM state
	CF set on error (invalid option or other error)
Desc:	control whether memory cards or an extension ROM are visible in the
	  range 000C0000h to 000DFFFFh
SeeAlso: AH=00h"Portfolio",AH=20h"Portfolio",AH=26h"Portfolio"

(Table 03469)
Values for Atari Portfolio ROM space state:
 00h	normal application ROM
 01h	CCM drive A:
 02h	CCM drive B:
 03h	expansion ROM
SeeAlso: #03470

(Table 03470)
Values for Atari Portfolio CCM space state:
 00h	CCM drives disabled
 01h	CCM drive A: permanently enabled
 02h	CCM drive B: permanently enabled
SeeAlso: #03469

Top
6126 - INT 61 - Atari Portfolio - GET/SET POWER CONTROL
INT 61 - Atari Portfolio - GET/SET POWER CONTROL
	AH = 26h
	AL = function
	    00h get state
	    01h set state
		DL = new state
		    00h normal power-down on low battery
		    01h no power-down, but display warning
		    02h no power-down, no warning on low battery
Return: AL = current/old state
SeeAlso: AH=00h"Portfolio",AH=24h"Portfolio",AH=28h"Portfolio"

Top
6128 - INT 61 - Atari Portfolio - GET/SET TEXT/KEYBOARD LANGUAGE
INT 61 - Atari Portfolio - GET/SET TEXT/KEYBOARD LANGUAGE
	AH = 28h
	AL = function
	    00h get languages
	    01h set languages
		DH = new text language (set bit 7 to leave unchanged)
		DL = new keyboard language (set bit 7 to leave unchanged)
	    03h get language table pointers
Return: if function 00h or 01h:
	    DH = current/old text language
	    DL = current/old keyboard language
	if function 03h
	    ES:CX -> keyboard table (see #03471)
	    ES:DX -> language table (see #03471)
SeeAlso: AH=24h"Portfolio",AH=26h"Portfolio",AH=2Ch"Portfolio"

Format of Atari Portfolio language table:
Offset	Size	Description	(Table 03471)
 00h	BYTE	number of languages supported
 01h  N BYTEs	supported languages
		00h English
		01h French
		02h German
		03h Spanish
		04h Italian
		05h Swedish
		06h Danish

Top
612C - INT 61 - Atari Portfolio - GET VERSION
INT 61 - Atari Portfolio - GET VERSION
	AH = 2Ch
Return: DS:BX -> BIOS version string ('$'-terminated)
SeeAlso: AH=28h"Portfolio",AH=2Dh"Portfolio"

Top
612D - INT 61 - Atari Portfolio - TURN SYSTEM OFF
INT 61 - Atari Portfolio - TURN SYSTEM OFF
	AH = 2Dh
Return: nothing
SeeAlso: AH=00h"Portfolio",AH=2Ch"Portfolio",AH=2Eh"Portfolio"

Top
612E - INT 61 - Atari Portfolio - ENABLE/DISABLE SYSTEM STATUS LINE
INT 61 - Atari Portfolio - ENABLE/DISABLE SYSTEM STATUS LINE
	AH = 2Eh
	AL = new state
	    00h disabled
	    01h enabled
		DH,DL = row,column at which to display
Return: nothing
SeeAlso: AH=00h"Portfolio",AH=2Dh"Portfolio",AH=30h"Portfolio"

Top
6130 - INT 61 - Atari Portfolio - FILE TRANSFER SERVICES
INT 61 - Atari Portfolio - FILE TRANSFER SERVICES
	AH = 30h
	AL = function
	    00h transmit block
		CX = number of bytes to send
	    01h receive block
		CX = buffer size
	    02h open ports
	    03h close ports
	    04h wait 500ms
	DS:DX -> start of data buffer
Return: DL = status
	    00h successful
	    01h buffer too small
	    02h transmission timeout
	    03h checksum failure
	    04h invalid subfunction
	    05h peripheral not installed
	if function 01h:
	    CX = number of bytes received
SeeAlso: AH=00h"Portfolio",AH=2Eh"Portfolio"

Top
62 - INT 62 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
INT 62 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the expansion ROM at F400h:2000h, and the high word
	  contains the length of the data area; this segment and size are
	  both set to 0000h if no ROM is installed at F400h:2000h
SeeAlso: INT 61"TI Professional PC",INT 63"TI Professional"
SeeAlso: INT 66"TI Professional PC"

Top
62 - INT 62 - HP 95LX - USED BY CALCULATOR
INT 62 - HP 95LX - USED BY CALCULATOR
SeeAlso: INT 60/DI=0104h"HP 95LX"

Top
63 - INT 63 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
INT 63 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the expansion ROM at F400h:4000h, and the high word
	  contains the length of the data area; this segment and size are
	  both set to 0000h if no ROM is installed at F400h:4000h
SeeAlso: INT 60"TI Professional PC",INT 62"TI Professional"
SeeAlso: INT 64"TI Professional PC"

Top
6300 - INT 63 - HP 100LX - MAP HIGH MEMORY
INT 63 - HP 100LX - MAP HIGH MEMORY
	AH = 00h
	AL = physical page (00h seg C000, 01h seg C400h, ...)
	BX = zero-based logical page
	CX = page number
	DX = device ID (00h system ROM, 05h plugin, etc.)
Return: ???
SeeAlso: AH=01h

Top
6301 - INT 63 - HP 100LX - SAVE/RESTORE MEMORY MAP
INT 63 - HP 100LX - SAVE/RESTORE MEMORY MAP
	AH = 01h
	AL = function (00h save, 01h restore)
	???
Return: ???

Top
64 - INT 64 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
INT 64 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the expansion ROM at F400h:6000h, and the high word
	  contains the length of the data area; this segment and size are
	  both set to 0000h if no ROM is installed at F400h:6000h
SeeAlso: INT 60"TI Professional PC",INT 63"TI Professional"
SeeAlso: INT 65"TI Professional PC"

Top
65 - INT 65 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
INT 65 - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)
Desc:	the low word of this vector contains the segment of the RAM data area
	  to be used by the expansion ROM at F400h:8000h, and the high word
	  contains the length of the data area; this segment and size are
	  both set to 0000h if no ROM is installed at F400h:8000h
SeeAlso: INT 60"TI Professional PC",INT 64"TI Professional"
SeeAlso: INT 66"TI Professional PC"

Top
66 - INT 66 - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)
INT 66 - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)
Desc:	the low word of this vector contains the system memory size in
	  paragraphs; the third byte contains the number of outstanding
	  interrupt requests, and the fourth byte contains a description
	  of the installed drive types (see #03517)
SeeAlso: INT 60"TI Professional PC",INT 67"TI Professional"

Bitfields for TI Professional drive type information:
Bit(s)	Description	(Table 03517)
 7	floppy drive D: has 80 tracks
 6	floppy drive D: is double-sided
 5	floppy drive C: has 80 tracks
 4	floppy drive C: is double-sided
 3	floppy drive B: has 80 tracks
 2	floppy drive B: is double-sided
 1	floppy drive A: has 80 tracks
 0	floppy drive A: is double-sided

Top
67 - INT 67 - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)
INT 67 - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)
Desc:	this vector contains the TI Pro's system configuration words
	  (see #03521)
SeeAlso: INT 66"TI Professional PC"

Bitfields for TI Professional PC System Configuration doubleword:
Bit(s)	Description	(Table 03521)
 0	8087 present
 31-1	reserved (0)

Top
69 - INT 69 - Zenith AT BIOS - ???
INT 69 - Zenith AT BIOS - ???
Note:	called by INT 09 handler

Top
6F00 - INT 6F - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR
INT 6F - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR
	AH = 00h
	BP = ID for driver (see #03741)
	DH = data type (see #03742)
	DL = physical device driver's index (driver ID / 6)
	BX,CX = data
	ES:0000h -> physical device's Describe Record (see #03749)
	---keypress event data---
	    BH = keyboard state (only if bit 5 of DH set) (see #03743)
	    BL = scancode (if bit 4 of DH clear)
	    CX = number of scancodes in list (if bit 4 of DH set)
	    ES:SI -> scancode list (if bit 4 of DH set)
	---motion event data---
	    BX = new X position (abs device) or X increment (relative device)
	    CX = new Y position (abs device) or Y increment (relative device)
	---button event data
	    BL = button information
		bits 15-8 reserved
		bit 7: button state (0 = down, 1 = up)
		bits 6-0: button number (0-7)
	    BH = reserved
Return: AH = status (see #03744)
	BP,DS destroyed
	---if device is keyboard translator---
	    BL = translated scancode
	    BH = new keyboard state (if DH bit 5 set) (see #03743)
	    DH = new scancode type (see #03742)
Notes:	INT 6F corresponds to IRQ23 on the original HP Vectra AT, which is
	  unavailable because of its use as a BIOS extension software interrupt
	the INT 6F handler consists of an instruction to load DS with the
	  driver's data segment followed by an indexed far jump using BP to
	  select the destination vector; since the interrupt handler is
	  located immediately following the dispatch table, the HP_VECTOR_TABLE
	  may be found by looking at offset 0000h in the INT 6F segment, and
	  its size is equal to the offset of the interrupt handler
	each entry in the HP_VECTOR table consists of a DWORD for the driver's
	  entry point address and a WORD for the driver's data segment
	this function is not user-callable, as it is a response to a physical
	  event, and assumes that the caller has already handled the physical
	  interrupt and updated the Describe Record (see #03749) to reflect
	  the event
SeeAlso: INT 6C"HP Vectra",INT 6F/AX=0200h"HP Vectra"

(Table 03741)
Values for HP Vectra EX-BIOS driver ID:
 0000h	V_SCOPY (null driver, but DS value points at system copyright string)
 0006h	V_DOLITTLE (null driver)
 000Ch	V_PNULL (null driver)
 0012h	V_SYSTEM
 0018h	reserved
 001Eh	V_S8259
 0024h	reserved
 002Ah	V_SINPUT
 0030h	reserved
 0036h	V_QWERTY (keyboard translator)
 003Ch	V_SOFTKEY (keyboard translator)
 0042h	V_FUNCTION (keyboard translator)
 0048h	V_NUMPAD (keyboard translator)
 004Eh	V_CCP (keyboard translator)
 0054h	V_SVIDEO
 005Ah	V_STRACK
 0060h	V_EVENT_TOUCH
 0066h	V_EVENT_TABLET
 006Ch	V_EVENT_POINTER
 0072h	reserved
 0078h	reserved
 007Eh	reserved
 0084h	reserved
 008Ah	V_CCPCUR (keyboard translator)
 0090h	V_RAW (keyboard translator)
 0096h	V_CCPNUM (keyboard translator)
 009Ch	V_OFF (keyboard translator)
 00A2h	V_CCPGID (translator: cursor control pad keys to GID data)
 00A8h	V_SKEY2FKEY (keyboard translator)
 00AEh	V_8041
 00B4h	V_PGID_CCP
 00BAh	C_LTABLET
 00C0h	V_LPOINTER (pointing device: mouse, etc.)
 00C6h	V_LTOUCH (touch screen)
 00CCh	V_LHPMOUSE
 00D2h	???
 ...
 0102h	???
 0108h	V_LNULL
 010Eh	reserved
 0114h	V_HPHIL
 011Ah-01C2h reserved
 016Eh	V_SCANDOOR (scancode management chip driver) (ES/QS/RS only)
 01C8h-0228h available

(Table 03742)
Values for HP Vectra EX-BIOS ISR data type:
 00h	reserved "T_KC_R0"
 01h	reserved "T_KC_R1"
 02h	ASCII data
 03h	reserved "T_KC_R3"
 04h	HP150 keyboard (ITF) scancode
 05h	reserved "T_KC_R5"
 06h	device-definable type
 07h	HP Vectra keyboard set
 08h	IBM AT scancode set
 09h	button data
 0Ah	IBM PC scancode set
 0Bh	Softkey keypad (F1-F8)
 0Ch	function key keypad (F1-F10)
 0Dh	HP Cursor Control Pad keypad
 0Eh	Qwerty keypad
 0Fh	Numeric keypad
 1xh	bit 4 set: string of CX scancode of type 0xh at ES:SI
 2xh	bit 5 set: BH contains current keyboard state
 40h	signed 8-bit relative data
 41h	signed 16-bit relative data
 42h	unsigned 8-bit absolute data
 43h	unsigned 16-bit absolute data
 45h	specially-formed data (80x25) generated by V_LTOUCH
 46h	specially-formed data (640x200) generated by V_LTABLET
 47h	specially-formed data (640x200) generated by V_LPOINTER

Bitfields for HP Vectra EX-BIOS keyboard state:
Bit(s)	Description	(Table 03743)
 0	Alt pressed
 1	Left Shift pressed
 2	Right Shift pressed
 3	Ctrl pressed
 4	CapsLock active
 5	NumLock active
 6	Right unlabeled key pressed (some international keyboards)
 7	Left unlabeled key pressed (some international keyboards)
SeeAlso: #00582

(Table 03744)
Values for HP Vectra EX-BIOS status:
 00h	successful
 02h	unsupported function
 04h	not serviced
 06h	done (no further processing should be performed on the ISR event)
 F2h	device is out of paper
 F4h	device is offline
 F6h	no more space for more drivers
 F8h	driver is busy
 FAh	bad parameter
 FEh	operation failed
Note:	status codes are always even; negative values (>= 80h) indicate errors
	  while positive values indicate exceptional conditions

Format of HP EX-BIOS driver header data:
Offset	Size	Description	(Table 03745)
 00h	WORD	driver attributes (see #03746)
 02h	WORD	string index of driver's name
 04h	WORD	driver's default logical device vector (see #03741)
 06h	WORD	driver's parent class (bitset) (see #03747)
 08h	WORD	driver's child class (bitset)
 0Ah	WORD	driver's parent vector
 0Ch	WORD	driver's child vector
 0Eh	BYTE	major subaddress
 0Fh	BYTE	minor subaddress
Notes:	this structure is located at offset 0 in the driver's data segment,
	  which in turn may be read from the HP_VECTOR_TABLE (refer to note in
	  main entry)
	only the first WORD is required, and everything from offset 6 onward
	  is only required if the device wishes to perform device mapping
SeeAlso: #03748,#03749

Bitfields for HP EX-BIOS driver header attributes:
Bit(s)	Description	(Table 03746)
 15	this is a complete driver header
 14	"ATR_DEVCFG" reserved
 13	driver can be mapped with the parent vector at offset 0Ah
 12	driver can be mapped with the child vector at offset 0Ch
 11-9	driver type
	000 reserved vector
	001 free vector
	010 EX-BIOS service
	011 logical driver (mapped from parent to child)
	100 mappable driver (cannot be last in driver chain)
	101 mappable driver that is last in driver chain
	110 input driver (mappable)
	111 reserved
 8	"ATR_STRING" reserved
 7	call SF_START whenever driver is remapped
 6-5	addressing requirements
	00 no subaddresses required
	01 requires major address be stored at offset 0Eh
	10 requires minor address be stored at offset 0Fh
	11 required major,minor, and mid addresses (minor in low nybble of
	      offset 0Fh, mid address in high nybble of 0Fh)
 4	driver can be shared between several parent drivers
 3	driver can be shared between several child drivers
 2	this driver header is in ROM
 1	"ATR_YIELD" reserved
 0	reserved
SeeAlso: #03745,#03747

Bitfields for HP EX-BIOS driver class:
Bit(s)	Description	(Table 03747)
 15	maps F1 to F8 softkeys
 14	keyboard
 13	cursor pad
 12	console device
 11	serial output device (may be capable of limited input)
 10	"CL_COMM" reserved
 9	interfaces multiple resources transparent to operating system
 8	serial output device filter (can be mapped between logical and physical
	  driver to perform translations)
 7	addressed block device
 6	priority boot device
 5	logical graphics input device
 4	physical graphics input device (can map to child of another driver)
 3	"CL_GID" can map to an event
 2	physical touch device
 1	reserved
 0	class extension bit
Note:	special values: FFFFh maps to all other devices (V_PNULL), and 0000h
	  maps to no other driver
SeeAlso: #03745

Format of HP EX-BIOS global data area:
Offset	Size	Description	(Table 03748)
 00h 20 BYTEs	reserved
 14h	BYTE	sound driver status
 15h	BYTE	number of pending key clicks (max 4) (see AH=34h/BP=0012h)
 16h	BYTE	current tick duration scaling factor
 17h	BYTE	current key click volume
 18h	WORD	current beep period (10 us increments) (see AH=3Ch/BP=0012h)
 1Ah	WORD	current beep duration (10 us increments)
 1Ch	BYTE	number of pending beep functions (max 4) (see AH=3Ah/BP=0012h)
 1Dh	BYTE	reserved
 1Eh	WORD	next unused string index number
 20h	...	reserved
SeeAlso: #03745

Format of HP EX-BIOS Driver Describe Record:
Offset	Size	Description	(Table 03749)
 00h 16 BYTEs	EX-BIOS driver header data (see #03745)
 10h	BYTE	device GID type
		bits 7-4: device type
		bits 3-0: physical device link address
 11h	BYTE	physical device ID (see #03751)
 12h	WORD	logical device status bits (see #03750)
 14h	BYTE	physical device vector number (driver ID / 6)
 15h	BYTE	maximum number of axes reported (0-2)
 16h	BYTE	device class
		bits 7-4: current class
		bits 3-0: default class
 17h	BYTE	number of buttons/prompts
		bits 7-4: number of prompts
		bits 3-0: number of buttons
 18h	BYTE	reserved
 19h	BYTE	(physical devices only) maximum output burst length
 1Ah	BYTE	(physical devices only) number of write registers
 1Bh	BYTE	(physical devices only) number of read registers
 1Ch	BYTE	button transition flags (bit 0 = button0, etc.)
 1Dh	BYTE	current button states (bit 0 = button0, etc.)
 1Eh	WORD	device resolution
 20h	WORD	maximum x-axis count
 22h	WORD	maximum y-axis count
 24h	WORD	X position data for absolute devices
 26h	WORD	Y position data for absolute devices
 28h	WORD	X delta for relative devices
 2Ah	WORD	Y delta for relative devices
 2Ch	WORD	(logical devices only) X-axis scaling accumulator
		(fraction of one logical unit)
 2Eh	WORD	(logical devices only) Y-axis scaling accumulator
		(fraction of one logical unit)

Bitfields for HP logical device status flags:
Bit(s)	Description	(Table 03750)
 15-5	reserved
 4	event enabled
 3	tracking enabled
 2	clipping enabled
 1	button error occurred
 0	interrupt in progress
SeeAlso: #03749

(Table 03751)
Values for HP-HIL device ID:
 00h-02h reserved
 03h	Swiss-French keyboard
 04h-06h reserved
 07h	Canadian-English keyboard
 08h-0Ah reserved
 0Bh	Italian keyboard
 0Ch	reserved
 0Dh	Dutch keyboard
 0Eh	Swedish keyboard
 0Fh	German keyboard
 10h-12h reserved
 13h	Spanish keyboard
 14h	reserved
 15h	Belgian (Flemish) keyboard
 16h	Finnish keyboard
 17h	UK keyboard
 18h	French-Canadian keyboard
 19h	Swiss-German keyboard
 1Ah	Nerwegian keyboard
 1Bh	Frensh keyboard
 1Ch	Danish keyboard
 1Dh	Katakana keyboard
 1Eh	Latin American-Spanish keyboard
 1Fh	US-American keyboard
 20h-2Bh reserved
 2Ch-2Fh tone generator
 30h-3Fh reserved
 40h-5Bh reserved (character entry)
 5Ch-5Fh barcode reader
 60h-67h reserved (relative positions)
 68h-6Bh mouse
 6Ch-6Fh trackball
 70h-7Fh reserved (relative positions)
 80h-87h reserved (absolute positions)
 88h-8Bh touchpad
 8Ch-8Fh touch screen
 90h-97h graphics tablet
 98h-9Fh reserved (absolute positions)
 A0h-BFh compressed keyboard (91-93 keys)
 C0h-DFh extended keyboard (107-109 keys)
 E0h-FFh standard keyboard (85-87 keys)

Top
6F0200 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER
	AX = 0200h
	BP = driver ID (see #03741)
	BX = "last-used DS" value from HP global data area (see #03748)
Return: AH = status (see #03744)
	BX = new "last-used DS" value
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0202h,AH=0Ch"F_INS_FIXOWNDS"

Top
6F0202 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.
	AX = 0202h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0204h"HP Vectra"

Top
6F0204 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE
	AX = 0204h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	DX = device state from Logical Describe Record (see #03749,#03755)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0206h"HP Vectra"

Bitfields for HP Vectra V_HPHIL driver state:
Bit(s)	Description	(Table 03755)
 0	link configuration in progress
 1	reserved
 2	no devices attached
 3	general failure
 4,5	reserved
 6	HP-HIL driver open
 7	reserved
 8	link has been reconfigured
 9	error during output request
 10	reserved
 11	output request complete
 12	timeout
 13-15	reserved

Top
6F0206 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION
	AX = 0206h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BX = driver release date code
	    (BL = BCD years since 1960, BH = BCD week number within year)
	CX = length of version string
	ES:DI -> version string
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0204h"HP Vectra",AX=0208h

Top
6F0208 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR
	AX = 0208h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=020Ah,AX=020Ch

Top
6F020A - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES
	AX = 020Ah
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BX,CX = current attributes
	BP,DS destroyed
	---for V_LTOUCH, V_LPOINTER---
	    BX = logical width
	    CX = logical height
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Ch

Top
6F020C - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES
	AX = 020Ch
	BP = driver ID (see #03741)
	BX,CX = new attributes
	---for V_LTOUCH, V_LPOINTER---
	    BX = new logical width
	    CX = new logical height
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Ah

Top
6F020E - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS
	AX = 020Eh
	BP = driver ID (see #03741) for V_HPHIL, others
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	place device in open state, which allows output to the device
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=0210h

Top
6F0210 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER
	AX = 0210h
	BP = driver ID (see #03741) for V_HPHIL, others
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	place device in closed state, which disallows output to the device
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh

Top
6F0212 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT
	AX = 0212h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	report to driver that a previously-requested timeout interval has
	  expired
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0214h,AX=0216h

Top
6F0214 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED
	AX = 0214h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	report to driver that a previously-requested 60 Hz interval has
	  expired
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0212h,AX=0216h

Top
6F0216 - INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST
INT 6F - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST
	AX = 0216h
	BP = driver ID (see #03741)
Return: AH = status (see #03744)
	BP,DS destroyed
	---on failure---
	CX = length of reason string
	ES:DI -> string describing error
SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0212h,AX=0214h

Top
6F04--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS
INT 6F - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS
	AH = 04h
	BP = 0012h (driver ID for V_SYSTEM)
Return: AH = status (see #03744)
	ES = segment of HP_VECTOR_TABLE (see also AH=00h"HP Vectra")
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=06h"F_INS_XCHGFIX",AH=08h"F_INS_XCHGRSVD"

Top
6F04--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS
INT 6F - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS
	AH = 04h
	BP = 005Ah (driver ID for V_STRACK)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=06h"F_TRACK_ON",AH=08h"F_TRACK_OFF"
SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

Top
6F0400 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES
	AX = 0400h
	BP = driver ID (see #03741)
	DH,DL = major,minor address (optional)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	reserve specified sub-addresses on an already-allocated driver for
	  exclusive access
Note:	this function is documented as present but unsupported in the drivers
	  V_LTABLET, V_LPOINTER, and V_LTOUCH
SeeAlso: AX=0200h"HP Vectra",AX=0402h"SF_UNLOCK"

Top
6F0400BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT
	AX = 0400h
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0402h"SF_DISABLE_SVC",AX=0404h"SF_ENABLE_KBD"
SeeAlso: AX=0408h"SF_ENABLE_HPHIL"

Top
6F0400BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS
	AX = 0400h
	BP = 002Ah (driver ID for V_SINPUT)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	set the parent vectors in the physical device driver headers to their
	  system defaults
SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=002Ah,AX=0404h/BP=002Ah
SeeAlso: AH=06h"F_INQUIRE"

Top
6F0400BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK
	AX = 0400h
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BX = 4850h ('BP')
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0402h/BP=0054h,AX=0404h/BP=0054h,AX=0406h/BP=0054h
SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

Top
6F0400BP00CC - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER
	AX = 0400h
	BP = 00CCh (driver ID for V_LHPMOUSE)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=00CCh

Top
6F0402 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES
	AX = 0402h
	BP = driver ID (see #03741)
	DH,DL = major,minor address (optional)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	release specified sub-addresses from exclusive access
Note:	this function is documented as present but unsupported in the drivers
	  V_LTABLET, V_LPOINTER, and VLTOUCH
SeeAlso: AX=0200h"HP Vectra",AX=0400h"SF_LOCK"

Top
6F0402BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT
	AX = 0402h
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=001Eh,AX=0406h/BP=001Eh
SeeAlso: AX=040Ah/BP=001Eh

Top
6F0402BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS
	AX = 0402h
	BP = 002Ah (driver ID for V_SINPUT)
	ES:SI -> buffer for link table (see #03759)
Return: AH = status (see #03744)
	ES:SI buffer filled
	BP,DS destroyed
Desc:	get the parent and child vectors for the seven supported physical
	  device drivers
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_DEF_LINKS",AX=0404h"SF_SET_LINKS"
SeeAlso: AH=06h"F_INQUIRE"

Format of HP Vectra EX-BIOS driver link table:
Offset	Size	Description	(Table 03759)
 00h	BYTE	vector number of HP-HIL device #1's child
 01h	BYTE	vector number of HP-HIL device #1's parent
	...
 0Ch	BYTE	vector number of HP-HIL device #7's child
 0Dh	BYTE	vector number of HP-HIL device #7's parent

Top
6F0402BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO
	AX = 0402h
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0400h/BP=0054h,AX=0404h/BP=0054h,AX=0406h/BP=0054h
SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

Top
6F0402BP00CC - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT
	AX = 0402h
	BP = 00CCh (driver ID for V_LHPMOUSE)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	set up INT 33 even if no mouse is installed
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=00CCh

Top
6F0404 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON
	AX = 0404h
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	enables graphics cursor tracking of the logical device's movement
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_LOCK",AX=0406h"SF_TRACK_OFF"

Top
6F0404BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT
	AX = 0404h
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_ENABLE_SVC",AX=0406h"SF_DISABLE_KBD"
SeeAlso: AX=0408h"SF_ENABLE_HPHIL"

Top
6F0404BP002A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS
	AX = 0404h
	BP = 002Ah (driver ID for V_SINPUT)
	ES:SI -> buffer containing link table (see #03759)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	specify the parent and child vectors for the seven supported physical
	  device drivers
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_DEF_LINKS",AX=0402h"SF_GET_LINKS"
SeeAlso: AH=06h"F_INQUIRE"

Top
6F0404BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO
	AX = 0404h
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0406h/BP=0054h
SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

Top
6F0406 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF
	AX = 0406h
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	disables graphics cursor tracking of the logical device's movement
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_LOCK",AX=0404h"SF_TRACK_ON"
SeeAlso: AX=0408h"SF_CREATE_EVENT"

Top
6F0406BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT
	AX = 0406h
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0402h"SF_DISABLE_SVC",AX=0404h"SF_ENABLE_KBD"
SeeAlso: AX=040Ah"SF_DISABLE_HPHIL"

Top
6F0406BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG
	AX = 0406h
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h
SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

Top
6F0406BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK
	AX = 0406h
	BP = 0114h (driver ID for V_HPHIL)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=020Eh,AX=0408h"SF_CRV_WR_PROMPTS"
SeeAlso: AX=0410h"SF_CRV_SELF_TEST"

Top
6F0408 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER
	AX = 0408h
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
	ES:SI -> new event handler (see AH=00h"HP Vectra")
	DX = new handler's DS
Return: AH = status (see #03744)
	ES:SI -> old event handler
	DX = old handler's DS
	BP,DS destroyed
Desc:	specify routine to be called on logical device events
Note:	when events occur, the event handler is called with the same registers
	  as the "F_ISR" function on AH=00h"HP Vectra"
SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_LOCK",AX=0406h"SF_TRACK_OFF"
SeeAlso: AX=040Ah"SF_EVENT_ON",AX=040Ch"SF_EVENT_OFF",AH=06h"F_SAMPLE"

Top
6F0408BP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT
	AX = 0408h
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=001Eh,AX=0404h/BP=001Eh
SeeAlso: AX=040Ah/BP=001Eh

Top
6F0408BP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN
	AX = 0408h
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h
SeeAlso: AX=0406h/BP=0054h,AX=040Ah/BP=0054h

Top
6F0408BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT
	AX = 0408h
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = prompt number
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=020Eh,AX=0406h/BP=0114h,AX=040Ah/BP=0114h

Bitfields for HP Vectra V_HPHIL device address indicator:
Bit(s)	Description	(Table 03760)
 15-14	reserved
 13	address in DH is valid (must be set, clear is reserved)
 12	valid value in DL
 11-0	reserved

Top
6F040A - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER
	AX = 040Ah
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0408h"SF_CREATE_EVENT",AX=040Ch"SF_EVENT_OFF"
SeeAlso: AX=040Eh"SF_CLIPPING_ON"

Top
6F040ABP001E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT
	AX = 040Ah
	BP = 001Eh (driver ID for V_S8259)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=001Eh,AX=0406h/BP=001Eh
SeeAlso: AX=0408h/BP=001Eh

Top
6F040ABP0054 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE
	AX = 040Ah
	BP = 0054h (driver ID for V_SVIDEO)
	???
Return: AH = status (see #03744)
	BP,DS destroyed
	???
Note:	only partially documented
SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h
SeeAlso: AX=0406h/BP=0054h,AX=0408h/BP=0054h

Top
6F040ABP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY
	AX = 040Ah
	BP = 00AEh (driver ID for V_8041)
	BH = vector number of driver to be called regularly (vector addr / 6)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	add a driver to the list (max eight) of drivers which will be called
	  by the HP's 8041 at 60 Hz
Note:	the newly added entry will not be called until enabled with
	  AX=040Eh/BP=00AEh
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F040ABP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE
	AX = 040Ah
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = acknowledge number (specific if 01h-07h, generic otherwise)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0406h/BP=0114h,AX=040Ch/BP=0114h

Top
6F040C - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER
	AX = 040Ch
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0408h"SF_CREATE_EVENT",AX=040Ah"SF_EVENT_ON"

Top
6F040CBP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY
	AX = 040Ch
	BP = 00AEh (driver ID for V_8041)
	BH = vector number of driver to be removed (vector addr / 6)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	remove a driver to the list (max eight) of drivers which will be called
	  by the HP's 8041 at 60 Hz
SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=0410h/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F040CBP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE
	AX = 040Ch
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = repeat rate (00h = 30 Hz, 01h = 60 Hz)
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=0114h,AX=040Eh/BP=0114h

Top
6F040E - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING
	AX = 040Eh
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	causes the physical device's motion to be clipped to prevent overflow
	  or underflow of the logical position
SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=0410h"SF_CLIPPING_OFF"

Top
6F040EBP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE
	AX = 040Eh
	BP = 00AEh (driver ID for V_8041)
	BH = vector number of driver to be called regularly (vector addr / 6)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	enable 60 Hz calling of a driver previously added to the list of
	  drivers to be called by the HP's 8041
SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=0410h/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F040EBP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF
	AX = 040Eh
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=0114h,AX=0410h/BP=0114h
SeeAlso: AX=0416h/BP=0114h

Top
6F0410 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING
	AX = 0410h
	BP = driver ID (see #03741) for V_LPOINTER, V_LTOUCH, V_LTABLET
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	disables clipping of the physical device's motion, which may cause
	  overflow or underflow of the logical position
SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=040Eh"SF_CLIPPING_ON"

Top
6F0410BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE
	AX = 0410h
	BP = 00AEh (driver ID for V_8041)
	BH = vector number of driver (vector addr / 6)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	disable 60 Hz interval calls to the specified driver
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F0410BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST
	AX = 0410h
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	ES:SI -> buffer for result
Return: AH = status (see #03744)
	CX = number of bytes in buffer
	BP,DS destroyed
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=0114h,AX=0412h/BP=0114h

Top
6F0412BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041
	AX = 0412h
	BP = 00AEh (driver ID for V_8041)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	sets a flag in the 8041 indicating that a second 256K bank of RAM
	  on the motherboard is enabled
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0414h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F0412BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS
	AX = 0412h
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	ES:SI -> 15-byte buffer for status
Return: AH = status (see #03744)
	CX = number of bytes returned in buffer
	BP,DS destroyed
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=00h"HP Vectra",AX=0410h/BP=0114h,AX=0414h/BP=0114h

Top
6F0414BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH
	AX = 0414h
	BP = 00AEh (driver ID for V_8041)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	clears a flag in the 8041 indicating that a second 256K bank of RAM
	  on the motherboard is enabled, causing the second bank to be disabled
Note:	this function should normally never be called
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0418h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F0414BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME
	AX = 0414h
	BP = 0114h (driver ID for V_HPHIL)
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	ES:SI -> 15-byte buffer for name
Return: AH = status (see #03744)
	CX = number of bytes returned in buffer
	BP,DS destroyed
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=00h"HP Vectra",AX=0412h/BP=0114h

Top
6F0416BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE
	AX = 0416h
	BP = 00AEh (driver ID for V_8041)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	sets a flag in the 8041 indicating that the primary display is the
	  Multimode graphics adapter (default)
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0412h/BP=00AEh,AX=0418h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F0416BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC
	AX = 0416h
	BP = 0114h (driver ID for V_HPHIL)
	BH = what to set (00h typematic rate, 01h delay, 02h both)
	BL = flag (00h = non-CCP keypad, 01h = Cursor Control Pad only)
	DL = rate
	    bits 7-4: delay value
	    bits 3-0: typematic rate
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=040Eh/BP=0114h,AX=0418h/BP=0114h

Top
6F0418BP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME
	AX = 0418h
	BP = 00AEh (driver ID for V_8041)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	clears a flag in the 8041, indicating that the primary display is the
	  monochrome adapter
SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh
SeeAlso: AX=0414h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

Top
6F0418BP0114 - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS
	AX = 0418h
	BP = 0114h (driver ID for V_HPHIL)
	BL = new LED states
	    bit 0: scroll lock
	    bit 1: NumLock
	    bit 2: CapsLock
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=040Eh/BP=0114h,AX=0416h/BP=0114h

Top
6F041ABP00AE - INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041
INT 6F - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041
	AX = 041Ah
	BP = 00AEh (driver ID for V_8041)
	BL = byte to send to 8041
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=040Eh/BP=00AEh

Top
6F06 - INT 6F - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE
INT 6F - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE
	AH = 06h
	BP = driver ID (see #03741) for V_HPHIL, others
	AL = value to output
	---if driver is V_HPHIL---
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = HP-HIL device register (00h-7Fh)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	output a byte to a specific HP-HIL device register
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=04h"HP Vectra",AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BUFFER"

Top
6F06 - INT 6F - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION
INT 6F - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION
	AH = 06h
	BP = driver ID (see #03741) for V_LTOUCH, V_LPOINTER, V_LTABLET, etc.
Return: AH = status (see #03744)
	BX = current logical X position
	CX = current logical Y position
	DL = button transitions (bit N = button N state has changed)
	DH = current button states (bit N = current button N state)
	ES:0000h -> logical device's Describe Record (see #03749)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=040Eh"SF_CLIPPING_ON"

Top
6F06--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR
	AH = 06h
	BP = 0012h (driver ID for V_SYSTEM)
	BX = vector address
	DX = new value for DS
	ES:DI -> new CS:IP entry point
Return: AH = status (see #03744)
	DX = old value for DS
	ES:DI -> old CS:IP entry point
	BP,DS destroyed
Desc:	replace an existing EX-BIOS driver at a fixed HPVT location without
	  initialization
SeeAlso: AH=00h"HP Vectra",AH=04h"F_INS_BASEHPVT",AH=08h"F_INS_XCHGRSVD"
SeeAlso: AH=0Ah"F_INS_XCHGFREE",AH=0Ch"F_INS_FIXOWNDS"

Top
6F06--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD
INT 6F - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD
	AH = 06h
	BP = 002Ah (driver ID for V_SINPUT)
	AL = HP-HIL physical device number (01h-07h)
Return: AH = status (see #03744)
	ES:SI -> physical describe record for driver
	BP,DS destroyed
Note:	the returned physical describe record must not be modified
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=08h/BP=002Ah,AH=0Ah/BP=002Ah
SeeAlso: AH=0Ch/BP=002Ah

Top
6F06--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING
INT 6F - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING
	AH = 06h
	BP = 005Ah (driver ID for V_STRACK)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"
SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

Top
6F08 - INT 6F - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE
INT 6F - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE
	AH = 08h
	BP = driver ID (see #03741) for V_HPHIL (0114h), others
	---if device is V_HPHIL---
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = HP-HIL device register (00h-7Fh)
Return: AH = status (see #03744)
	AL = value read from device
	BP,DS destroyed
Desc:	generic read-byte function; for driver V_HPHIL, retrieves the value
	  of a specific HP-HIL device register
Note:	this function is only available if the driver is in the open state
	  (see AX=020Eh"SF_OPEN")
SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BUFFER"

Top
6F08--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR
	AH = 08h
	BP = 0012h (driver ID for V_SYSTEM)
	DX = new value for DS
	ES:DI -> new CS:IP entry point
Return: AH = status (00h,F6h) (see also #03744)
	    00h successful
		BX = vector address used
		DX = old value for DS
		ES:DI -> old CS:IP entry point
	BP,DS destroyed
Desc:	exchange the supplied entry point and DS with the values in the next
	  reserved entry in the HP_VECTOR_TABLE
Note:	returns AH=F6h if no more reserved vectors are available
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=0Ah/BP=0012h
SeeAlso: AH=0Ch/BP=0012h

Top
6F08--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE
INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE
	AH = 08h
	BP = 002Ah (driver ID for V_SINPUT)
	ES:SI -> buffer for device status table (see #03762)
Return: AH = status (see #03744)
	ES:SI buffer filled
	BP,DS destroyed
Note:	the returned physical describe record must not be modified
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=0Ah/BP=002Ah
SeeAlso: AH=0Ch/BP=002Ah

Format of HP Vectra HP-HIL physical device status table:
Offset	Size	Description	(Table 03762)
 00h	BYTE	status for HP-HIL device #1
		bit 0: device present
		bits 7-2 reserved
 01h	BYTE	device ID for HP-HIL device #1
	...
 0Ch	BYTE	status for HP-HIL device #7
 0Dh	BYTE	device ID for HP-HIL device #7

Top
6F08--BP005A - INT 6F - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING
INT 6F - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING
	AH = 08h
	BP = 005Ah (driver ID for V_STRACK)
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	also removes the graphics cursor sprite from the screen
SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=06h"F_TRACK_ON"
SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

Top
6F0A - INT 6F - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE
INT 6F - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE
	AH = 0Ah
	BP = driver ID (see #03741) for V_HPHIL (0114h), others
	CX = number of bytes to write
	ES:DI -> buffer containing data
	---if driver is V_HPHIL---
	BX = device address indicator (see #03760)
	DH = HP HIL device major address
	DL = HP-HIL device register (00h-7Fh)
Return: AH = status (see #03744)
	CX = number of unwritten bytes left in buffer
	BP,DS destroyed
SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BLOCK",AH=0Ch"F_GET_BUFFER"
SeeAlso: AH=0Eh"F_PUT_WORD"

Top
6F0A - INT 6F - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE
INT 6F - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE
	AH = 0Ah
	BP = driver ID (see #03741) for block device
	DH = device major number
	DL = device minor number
	ES:DI -> command block (see #03766)
Return: AH = status (see #03744)
	BX = operation status
	BP,DS destroyed
SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BUFFER"
SeeAlso: AH=0Eh"F_PUT_WORD"

Format of HP Vectra F_PUT_BLOCK/F_GET_BLOCK command block:
Offset	Size	Description	(Table 03766)
 00h	DWORD	data transfer address
 04h	WORD	number of blocks
 06h	DWORD	block address (some devices only use low word)

Top
6F0A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR
	AH = 0Ah
	BP = 0012h (driver ID for V_SYSTEM)
	DX = new value for DS
	ES:DI -> new CS:IP entry point
Return: AH = status (00h,F6h) (see also #03744)
	    00h successful
		BX = vector address used
		DX = old value for DS
		ES:DI -> old CS:IP entry point
	BP,DS destroyed
Desc:	exchange the supplied entry point and DS with the values in the next
	  free entry in the HP_VECTOR_TABLE
Note:	returns AH=F6h if no more reserved vectors are available
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=08h/BP=0012h
SeeAlso: AH=0Ch/BP=0012h

Top
6F0A--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR
	AH = 0Ah
	BP = 002Ah (driver ID for V_SINPUT)
Return: AH = status (see #03744)
	BX = vector address for first HP-HIL device
	BP,DS destroyed
Note:	all seven HP-HIL devices use consecutive vectors in the
	  HP_VECTOR_TABLE
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=08h/BP=002Ah
SeeAlso: AH=0Ch/BP=002Ah

Top
6F0A--BP005A - INT 6F - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS
INT 6F - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS
	AH = 0Ah
	BP = 005Ah (driver ID for V_STRACK)
	BH = width of save area in bytes
	BL = hot-spot X coordinate
	CH = height in scan lines
	CL = hot-spot Y coordinate
	ES:SI -> sprite mask (screen mask followed by XOR sprite mask)
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	the save area is one byte wider than the actual sprite mask; the total
	  size of the sprite is at most 144 bytes
SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"
SeeAlso: AH=0Ch"F_SET_LIMITS_X",AH=10h"F_PUT_SPRITE",AH=12h"F_REMOVE_SPRITE"

Top
6F0C - INT 6F - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE
INT 6F - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE
	AH = 0Ch
	BP = driver ID (see #03741) for V_HPHIL (0114h), others
	CX = number of bytes or blocks to read
	DS:SI -> buffer for received data
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
SeeAlso: AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BLOCK"
SeeAlso: AH=10h"F_GET_WORD"

Top
6F0C - INT 6F - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE
INT 6F - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE
	AH = 0Ch
	BP = driver ID (see #03741)
	DH = device major number
	DL = device minor number
	ES:DI -> command block (see #03766)
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BX = operation status
	BP,DS destroyed
SeeAlso: AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BLOCK",AH=0Ch"F_GET_BUFFER"
SeeAlso: AH=10h"F_GET_WORD"

Top
6F0C--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR
	AH = 0Ch
	BP = 0012h (driver ID for V_SYSTEM)
	BX = vector address used
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), which should return the routine's DS
	  in BX.  If the SF_INIT call returns with error code FEh, the power-on
	  self-test sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=08h/BP=0012h
SeeAlso: AH=0Eh/BP=0012h,AH=12h/BP=0012h

Top
6F0C--BP002A - INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT
INT 6F - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT
	AH = 0Ch
	BP = 002Ah (driver ID for V_SINPUT)
Return: AH = status (see #03744)
	ES:BX -> physical GID driver CS:IP
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=08h/BP=002Ah
SeeAlso: AH=0Ah/BP=002Ah

Top
6F0C--BP005A - INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS
INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS
	AH = 0Ch
	BP = 005Ah (driver ID for V_STRACK)
	CX = minimum X coordinate
	DX = maximum X coordinate
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=005Ah,AH=08h/BP=005Ah,AH=0Eh/BP=005Ah
SeeAlso: AH=10h/BP=005Ah,AH=12h/BP=005Ah,INT 33/AX=0007h

Top
6F0E - INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE
INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE
	AH = 0Eh
	BP = driver ID (see #03741)
	DX = data word
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=10h"F_GET_WORD"

Top
6F0E - INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA
INT 6F - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA
	AH = 0Eh
	BP = driver ID (see #03741)
	??? details not yet available
Return: ???
SeeAlso: AH=06h"HP Vectra",AH=0Ah"HP Vectra",AH=10h"HP Vectra"

Top
6F0E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR
	AH = 0Eh
	BP = 0012h (driver ID for V_SYSTEM)
	BX = vector address used
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), with the "last used DS" value in BX;
	  the routine should adjust BX and return the new value.  If the
	  SF_INIT call returns with error code FEh, the power-on self-test
	  sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=0Ch/BP=0012h
SeeAlso: AH=10h/BP=0012h,AH=14h/BP=0012h

Top
6F0E--BP005A - INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS
INT 6F - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS
	AH = 0Eh
	BP = 005Ah (driver ID for V_STRACK)
	CX = minimum Y coordinate
	DX = maximum Y coordinate
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=005Ah,AH=08h/BP=005Ah,AH=0Ch/BP=005Ah
SeeAlso: AH=10h/BP=005Ah,AH=12h/BP=005Ah,INT 33/AX=0008h

Top
6F10 - INT 6F - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE
INT 6F - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE
	AH = 10h
	BP = driver ID (see #03741)
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	DX = data word
	BP,DS destroyed
SeeAlso: AH=08h"F_GET_BYTE",AH=0Ch"F_GET_BUFFER",AH=0Eh"F_PUT_WORD"

Top
6F10--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR
	AH = 10h
	BP = 0012h (driver ID for V_SYSTEM)
	BX = vector address used
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), with BX set to the EX-BIOS global
	  data area. If the SF_INIT call returns with error code FEh, the
	  power-on self-test sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h
SeeAlso: AH=0Ch/BP=0012h,AH=0Eh/BP=0012h,AH=12h/BP=0012h,AH=16h/BP=0012h

Top
6F10--BP005A - INT 6F - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE
INT 6F - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE
	AH = 10h
	BP = 005Ah (driver ID for V_STRACK)
	BX = X coordinate
	CX = Y coordinate
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"
SeeAlso: AH=12h"F_REMOVE_SPRITE",INT 33/AX=0004h

Top
6F12--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR
	AH = 12h
	BP = 0012h (driver ID for V_SYSTEM)
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), which should return the routine's DS
	  in BX.  If the SF_INIT call returns with error code FEh, the power-on
	  self-test sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Ch/BP=0012h,AH=14h/BP=0012h
SeeAlso: AH=16h/BP=0012h,AH=18h/BP=0012h

Top
6F12--BP005A - INT 6F - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE
INT 6F - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE
	AH = 12h
	BP = 005Ah (driver ID for V_STRACK)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=06h"F_TRACK_ON",AH=10h"F_PUT_SPRITE"

Top
6F14--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR
	AH = 14h
	BP = 0012h (driver ID for V_SYSTEM)
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), with the "last used DS" value in BX;
	  the routine should adjust BX and return the new value.  If the
	  SF_INIT call returns with error code FEh, the power-on self-test
	  sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Eh/BP=0012h,AH=12h/BP=0012h
SeeAlso: AH=16h/BP=0012h

Top
6F16--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR
INT 6F - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR
	AH = 16h
	BP = 0012h (driver ID for V_SYSTEM)
	ES:DI -> new CS:IP entry point
Return: AH = status (00h) (see #03744 at INT 6F/AH=00h"HP Vectra")
	BP,DS destroyed
Note:	on installation, the given entry point will be invoked with an SF_INIT
	  call (see AX=0200h"SF_INIT"), with BX set to the EX-BIOS global
	  data area.  If the SF_INIT call returns with error code FEh, the
	  power-on self-test sequence will be called.
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=10h/BP=0012h,AH=12h/BP=0012h
SeeAlso: AH=14h/BP=0012h,AH=18h/BP=0012h

Top
6F18--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES
INT 6F - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES
	AH = 18h
	BP = 0012h (driver ID for V_SYSTEM)
	AL = sense of test (00h equal, 02h non-equal)
	BX = AND mask
	DX = pattern
	SI = first vector address to search
	DI = offset in HP header of field to test
Return: AH = status (00h,FEh) (see #03744 at INT 6F/AH=00h"HP Vectra")
	BP,DS destroyed
	---if AH=00h---
	SI = first matching vector address
Desc:	compare successive drivers' header fields starting at address SI
	  until the header field AND BX is either equal or non-equal to DX
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Ch/BP=0012h,AH=10h/BP=0012h
SeeAlso: AH=12h/BP=0012h,AH=16h/BP=0012h

Top
6F1E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA
INT 6F - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA
	AH = 1Eh
	BP = 0012h (driver ID for V_SYSTEM)
Return: AH = status (00h) (see #03744 at INT 6F/AH=00h"HP Vectra")
	BX = last-used DS
	DX = maximum DS
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=20h/BP=0012h,AH=22h/BP=0012h

Top
6F20--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY
INT 6F - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY
	AH = 20h
	BP = 0012h (driver ID for V_SYSTEM)
	BX = new value for "last-used DS"
	DX = new value for "maximum DS"
Return: AH = status (00h) (see #03744 at INT 6F/AH=00h"HP Vectra")
	BP,DS destroyed
Note:	the F_INS_FIXGETDS and F_INS_FREEGETDS functions
	  (see AH=0Eh/BP=0012h,AH=14h/BP=0012h) also modify the values returned
	  by this call, requiring care if both methods are used to allocate
	  memory
SeeAlso: AH=00h"HP Vectra",AH=0Eh/BP=0012h,AH=14h/BP=0012h,AH=1Eh/BP=0012h

Top
6F22--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY
INT 6F - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY
	AH = 22h
	BP = 0012h (driver ID of V_SYSTEM)
	BL = address of CMOS byte to read
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	AL = byte read
	BP,DS destroyed
Note:	supported by ES, QS, and RS series HP Vectras
SeeAlso: AH=00h"HP Vectra",AH=1Eh/BP=0012h,AH=24h/BP=0012h

Top
6F24--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY
INT 6F - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY
	AH = 24h
	BP = 0012h (driver ID of V_SYSTEM)
	BL = address of CMOS byte to write
	AL = new value
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	updates the CMOS checksum fields (both IBM-standard and HP checksums)
SeeAlso: AH=00h"HP Vectra",AH=22h/BP=0012h

Top
6F2A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS
INT 6F - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS
	AH = 2Ah
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744)
	BP,DS destroyed
Note:	this is a hook for multitasking systems
SeeAlso: AH=00h"HP Vectra",INT 15/AX=1000h,INT 2F/AX=1680h

Top
6F30--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS
INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS
	AH = 30h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
Desc:	enables keyclicks and flushes any pending keyclicks
SeeAlso: AH=32h/BP=0012h,AH=34h/BP=0012h,AH=36h/BP=0012h

Top
6F32--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS
INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS
	AH = 32h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	disables keyclicks and flushes any pending keyclicks
SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=38h/BP=0012h

Top
6F34--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK
INT 6F - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK
	AH = 34h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744)
	BP,DS destroyed
Desc:	generate a keyclick if fewer than four clicks are already pending
Note:	if keyclicks are already pending, the remaining click count is
	  incremented and the function returns immediately
SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=36h/BP=0012h,AH=3Ah/BP=0012h

Top
6F36--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS
INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS
	AH = 36h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=34h/BP=0012h,AH=38h/BP=0012h

Top
6F38--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS
INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS
	AH = 38h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=32h/BP=0012h,AH=36h/BP=0012h

Top
6F3A--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES
INT 6F - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES
	AH = 3Ah
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
Desc:	make a sound of the frequency and duration defined in the EX-BIOS
	  global data area (see #03748)
SeeAlso: AH=00h"HP Vectra",AH=34h/BP=0012h,AH=36h/BP=0012h,AH=38h/BP=0012h
SeeAlso: AH=3Ch/BP=0012h,AH=3Eh/BP=0012h

Top
6F3C--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION
INT 6F - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION
	AH = 3Ch
	BP = 0012h (driver ID of V_SYSTEM)
	BX = frequency in Hz (1-25000, 0 = off)
	DX = duration in 10-microsecond increments
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=3Ah/BP=0012h,AH=3Eh/BP=0012h,#03748

Top
6F3E--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION
INT 6F - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION
	AH = 3Eh
	BP = 0012h (driver ID of V_SYSTEM)
	BX = frequency in Hz (1-25000, 0 = off)
	DX = duration in 10-microsecond increments
Return: AH = status (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=3Ah/BP=0012h,AH=3Ch/BP=0012h,AH=40h/BP=0012h

Top
6F40--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX
INT 6F - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX
	AH = 40h
	BP = 0012h (driver ID of V_SYSTEM)
Return: AH = status (see #03744)
	BX = next free string index
	BP,DS destroyed
Desc:	get the next string index available to user programs
SeeAlso: AH=00h"HP Vectra",AH=42h/BP=0012h,AH=44h/BP=0012h,AH=46h/BP=0012h

Top
6F42--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST
INT 6F - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST
	AH = 42h
	BP = 0012h (driver ID of V_SYSTEM)
	ES:DI -> bucket header (see #03775)
Return: AH = status (00h,FEh) (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=40h/BP=0012h,AH=44h/BP=0012h

Format of HP Vectra EX-BIOS bucket header:
Offset	Size	Description	(Table 03775)
 00h	DWORD	pointer to next bucket header (FFFFh:FFFFh if last)
 04h	WORD	upper bound on string index
 06h	WORD	lower bound on string index
 08h	DWORD	pointer to array of string offset pointers
 0Ch	WORD	segment of strings
Note:	the strings pointed at by the offset pointers are byte-counted ASCIZ
	  strings

Top
6F44--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST
INT 6F - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST
	AH = 44h
	BP = 0012h (driver ID of V_SYSTEM)
	ES:DI -> bucket header (see #03775)
Return: AH = status (00h) (see #03744)
	BP,DS destroyed
SeeAlso: AH=00h"HP Vectra",AH=42h/BP=0012h,AH=46h/BP=0012h

Top
6F46--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST
INT 6F - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST
	AH = 46h
	BP = 0012h (driver ID of V_SYSTEM)
	BX = string index
Return: AH = status (00h,other) (see #03744)
	BP,DS destroyed
	---if successful---
	CX = length of string (excluding count byte and terminating NUL)
	DS:SI -> header for string
	ES:DI -> found string
SeeAlso: AH=00h"HP Vectra",AH=44h/BP=0012h,AH=48h/BP=0012h

Top
6F48--BP0012 - INT 6F - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING
INT 6F - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING
	AH = 48h
	BP = 0012h (driver ID of V_SYSTEM)
	ES:DI -> ASCIZ string
Return: AH = status (00h,other) (see #03744 at AH=00h"HP Vectra")
	BP,DS destroyed
	---if successful---
	BX = index for the given string
SeeAlso: AH=00h"HP Vectra",AH=40h/BP=0012h,AH=46h/BP=0012h

Top
80 - INT 80 U - AMI BIOS v1.00.12.AX1T - internal - BIOS SUBSYSTEM SELECTION
INT 80 U - AMI BIOS v1.00.12.AX1T - internal - BIOS SUBSYSTEM SELECTION
	AH = function
	    00h install and initialize BIOS subsystem
		AL = ??? (00h,01h,03h)
		CX:BX = subsystem ID (see #03971)
		ESI = address from which to load, or 00000000h for default for
			subsystem
		EDI = physical address at which to install, or 0 for default
		Note:	if CX=0000h on entry, this call is applied to all
			  subsystems whose ID has low word BX
	    01h get BIOS subsystem information
		CX:BX = subsystem ID (see #03971)
		Return: AL = ???
			AH = ???
			EDX = uncompressed size of subsystem in bytes
			SI = offset within subsystem of initialization
				routine, or FFFFh if none
			EDI = physical address of default location or 0
	    02h get matching subsystem identifier
		AL = index into subsystem list (return ALth occurrence
		      matching BX)
		BX = low word of subsystem identifier
			(0001h,0002h,0004h,0005h,000Bh,FFFFh)
		Return: CF clear if successful
			    CX = high word of ALth matching subsystem
			CF set on error
		Note:	the system is halted if AL=00h on entry
	    03h set up "big real" mode (4G segment limits)
	    04h turn off "big real" mode (restore 64K segment limits)
	    05h remove BIOS subsystem
		CX:BX = subsystem ID to leave out
		Note:	the system is halted if an invalid (not installed)
			  subsystem ID is specified
	    06h get installed subsystem info
		CX:BX = subsystem ID (see #03971)
		Return:	CF clear
			EDX = length of ???
			EDI = linear address of start of ???
		Note:	the system is halted if an invalid (not installed)
			  subsystem ID is specified
Return: CF clear if successful
	CF set on non-fatal error
Note:	this interrupt vector is cleared to 0000h:0000h near the end of the
	  BIOS startup sequence

(Table 03971)
Values for AMI BIOS subsystem ID:
 00010001h	ROM BIOS @F000-FFFF
 00010002h	setup??? (loaded @6000-68FF)
 00010005h	APM code
 0001000Bh	language-specific error message set (English)
 00020002h	PnP/PCI ACFG code (loaded @F000-F1FF)
 0001FFFFh
 0002FFFFh	recovery code
 00030004h
 0003FFFFh	BIOS decompression code
 0004000Bh
 00060004h
 0100FFFFh	ACFG data
 10000000h	ROM @C000 (64K)
 10000001h	HMA (48K)
 10000002h	RAM @7A00 (24K)
 10000003h	RAM @8000-BFFF
 10000004h
 10000005h	real-mode address space (0-1M)
 1000000Bh	installed language-specific message set???

Top
81 - INT 81 - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION
INT 81 - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION
Notes:	used by WinBIOS with core version of July 1994 or later
	QEMM 7.5 began using this interrupt internally after the QPAT3
	  maintenance release when searching for "ROM holes", causing a
	  lengthy delay during bootup.	Adding the QEMM parameter RH:N will
	  avoid the QEMM call to INT 81 and speed up the boot process

Top
DF - INT DF - Victor 9000/Sirius 1 - SuperBIOS
INT DF - Victor 9000/Sirius 1 - SuperBIOS
SeeAlso: INT 21/AH=EAh"NetWare"

Top
FF - INT FF - Z100 - WARM BOOT
INT FF - Z100 - WARM BOOT
SeeAlso: INT 40"Z100"

Top
Home Interrupt Index: by Category by ID TOC: by Order Top