15.03.2015 Views

INTERRUP_A.pdf - Firmware Encoding Index

INTERRUP_A.pdf - Firmware Encoding Index

INTERRUP_A.pdf - Firmware Encoding Index

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

Interrupt List Release 61 Last change 16jul00<br />

http://www.foxitsoftware.com For evaluation only.<br />

Copyright (c) 1989-1999,2000 Ralf Brown<br />

--------!---FILELIST-------------------------<br />

Please redistribute the following files unmodified as a group, in a quartet of<br />

archives named INTER61A through INTER61D (preferably the original authenticated<br />

PKZIP archives):<br />

<strong>INTERRUP</strong>.1ST the read-me file, containing credits, availability info<br />

<strong>INTERRUP</strong>.A INT 00 through INT 10/BE \<br />

<strong>INTERRUP</strong>.B INT 10/BF through INT 15/0F\<br />

<strong>INTERRUP</strong>.C INT 15/10 through INT 15/E7 \<br />

<strong>INTERRUP</strong>.D INT 15/E8 through INT 1A/B0 \<br />

<strong>INTERRUP</strong>.E INT 1A/B1 through INT 1F \ total 2520 pages at<br />

<strong>INTERRUP</strong>.F INT 20 through INT 21/43 \ 60 lines per page,<br />

<strong>INTERRUP</strong>.G INT 21/44 through INT 21/5E \ 2684 with INTPRINT -p<br />

<strong>INTERRUP</strong>.H INT 21/5F through INT 21/E2 >(8754 entries)<br />

<strong>INTERRUP</strong>.I INT 21/E3 through INT 21/F1 / (4135 tables)<br />

<strong>INTERRUP</strong>.J INT 21/F2 through INT 25 /<br />

<strong>INTERRUP</strong>.K INT 26 through INT 2F/15 /<br />

<strong>INTERRUP</strong>.L INT 2F/16 through INT 2F/79 /<br />

<strong>INTERRUP</strong>.M INT 2F/7A through INT 2F/D9 /<br />

<strong>INTERRUP</strong>.N INT 2F/DA through INT 50 /<br />

<strong>INTERRUP</strong>.O INT 51 through INT 61 /<br />

<strong>INTERRUP</strong>.P INT 62 through INT 6A /<br />

<strong>INTERRUP</strong>.Q INT 6B through INT 91 /<br />

<strong>INTERRUP</strong>.R INT 92 through INT FF /<br />

<strong>INTERRUP</strong>.PRI a brief introduction to interrupts<br />

INTPRINT.COM a simple formatter that also generates a list summary<br />

INTPRINT.DOC instructions for INTPRINT<br />

OVERVIEW.LST brief listing of major uses of each interrupt<br />

86BUGS.LST a listing of CPU bugs and undocumented features<br />

BIBLIO.LST bibliography of information sources for the list<br />

CMOS.LST a description of the CMOS RAM data bytes<br />

FARCALL.LST APIs available through FAR CALLs<br />

GLOSSARY.LST a glossary of terms, abbreviations, and acronyms<br />

MEMORY.LST format of the BIOS data area<br />

OPCODES.LST a listing of recent and undocumented CPU instructions<br />

PORTS.A a listing of I/O ports 0000h-013Fh<br />

PORTS.B a listing of I/O ports 0140h-0AD5h<br />

PORTS.C a listing of I/O ports 0AD6h-FFFFh<br />

CATEGORY.KEY descriptions of divider-line category letters<br />

COMBINE.COM combine the pieces of the list into a single file<br />

Saturday, January 08, 2011 11:31 AM<br />

-1-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

COMBINE.DOC documentation for COMBINE<br />

The following files should be distributed in an archive called INTER61E:<br />

86BUGSnn.ZIP programs to test for CPU bugs<br />

COMBINE.ASM source code for COMBINE.COM<br />

INT.* invoke interrupts from commandline<br />

INTHLP??.ZIP Interrupt Helper viewer for the interrupt list<br />

INTLIST.E Epsilon extension for handling list<br />

INTPRINT.C source code for INTPRINT<br />

INTSUM??.ZIP interrupt list browser (Interrupt Summary)<br />

IVIEW*.ZIP another interrupt list browser<br />

Finally, the following should be distributed in an archive called INTER61F:<br />

INT2RTF.ZIP Slava Gostrenko's Windows Help converter<br />

INT2WHLP.ZIP convert list into Windows Help database<br />

<strong>INTERRUP</strong>.ICO icon for interrupt list<br />

HINTSRCH.ZIP WinHelp DLL for full-text searches of interrupt list<br />

IL2ME???.ZIP convert list into Multi-Edit help database<br />

INT2GUID.* convert list into TurboPower GUIDE or POPHELP database<br />

INT2HLP.ZIP convert list into QuickHelp database<br />

INT2IPF.ZIP convert list into OS/2 .IPF database<br />

INT2QH.* program to convert list into QuickHelp database<br />

INT2TPH.ZIP convert to Turbo/Borland Pascal help file (.TPH)<br />

INTHELP.* convert list into TurboPower GUIDE database<br />

RB2NG???.ZIP convert list into Norton Guides database<br />

WH_ED*.ZIP WinHelp-file editor<br />

--------!---CONTACT_INFO---------------------<br />

If you notice any mistakes or omissions, please let me know! It is only with<br />

YOUR help that the list can continue to grow at the current rate. Please send<br />

all changes to me rather than distributing a modified version of the list.<br />

Saturday, January 08, 2011 11:31 AM<br />

Please read the file <strong>INTERRUP</strong>.1ST before asking me any questions. You may find<br />

that they have already been addressed.<br />

Ralf Brown<br />

Internet: ralf@pobox.com (currently forwards to ralf@telerama.lm.com)<br />

FIDO: Ralf Brown 1:129/26.1<br />

or post a message to me in the DR_DEBUG echo (I probably won't see it<br />

unless you address it to me)<br />

I reply to all e-mail submissions, but some of my replies bounce because of<br />

bad return paths. If you don't get a response from me within a reasonable<br />

-2-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

period of time, send it again with a better return path (many mailers are<br />

improperly configured and do not produce a valid From: address).<br />

--------!---Note-----------------------------<br />

See <strong>INTERRUP</strong>.1ST for the key to system abbreviations and a list of the<br />

trademarks mentioned here.<br />

--------!---DISCLAIMER-----------------------<br />

DISCLAIMER: THIS MATERIAL IS PROVIDED "AS IS". I verify the information<br />

contained in this list to the best of my ability, but I cannot be held<br />

responsible for any problems caused by use or misuse of the information,<br />

especially for those functions not officially documented. If it is marked<br />

"internal" or undocumented, you should check it carefully to make sure it<br />

works the same way in your version of the software (and please let me know<br />

whether or not it works the same way). Information marked with "???" is<br />

known to be incomplete or guesswork.<br />

--------!---FLAGS----------------------------<br />

The use of -> instead of = signifies that the indicated register or register<br />

pair contains a pointer to the specified item, rather than the item itself.<br />

Register pairs (such as AX:BX) indicate that the item is split across the<br />

registers, with the high-order half in the first register.<br />

Saturday, January 08, 2011 11:31 AM<br />

One or more letters may follow the interrupt number; they have the following<br />

meanings: U - undocumented function, u - partially documented function,<br />

P - available only in protected mode, R - available only in real or V86 mode,<br />

C - callout or callback (usually hooked rather than called),<br />

O - obsolete (no longer present in current versions)<br />

--------!---CATEGORIES-----------------------<br />

The ninth column of the divider line preceding an entry usually contains a<br />

classification code (the entry has not been classified if that character is<br />

a dash). The codes currently in use are:<br />

A - applications, a - access software (screen readers, etc),<br />

B - BIOS, b - vendor-specific BIOS extensions,<br />

C - CPU-generated, c - caches/spoolers,<br />

D - DOS kernel, d - disk I/O enhancements,<br />

E - DOS extenders, e - electronic mail, F - FAX,<br />

f - file manipulation, G - debuggers/debugging tools, g - games,<br />

H - hardware, h - vendor-specific hardware,<br />

I - IBM workstation/terminal emulators, i - system info/monitoring,<br />

J - Japanese, j - joke programs,<br />

K - keyboard enhancers, k - file/disk compression,<br />

l - shells/command interpreters,<br />

M - mouse/pointing device, m - memory management,<br />

-3-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

N - network, n - non-traditional input devices,<br />

O - other operating systems,<br />

P - printer enhancements, p - power management,<br />

Q - DESQview/TopView and Quarterdeck programs,<br />

R - remote control/file access, r - runtime support,<br />

S - serial I/O, s - sound/speech,<br />

T - DOS-based task switchers/multitaskers, t - TSR libraries<br />

U - resident utilities, u - emulators,<br />

V - video, v - virus/antivirus,<br />

W - MS Windows,<br />

X - expansion bus BIOSes, x - non-volatile config storage<br />

y - security, * - reserved (and not otherwise classified)<br />

--------C-00---------------------------------<br />

INT 00 C - CPU-generated - DIVIDE ERROR<br />

Desc: generated if the divisor of a DIV or IDIV instruction is zero or the<br />

quotient overflows the result register; DX and AX will be unchanged.<br />

Notes: on an 8086/8088, the return address points to the following instruction<br />

on an 80286+, the return address points to the divide instruction<br />

an 8086/8088 will generate this interrupt if the result of a division<br />

is 80h (byte) or 8000h (word)<br />

SeeAlso: INT 04,OPCODE "AAD"<br />

--------G-00---------------------------------<br />

INT 00 - Zenith - ROM DEBUGGER<br />

Desc: invokes the ROM Debugger when at the BIOS level; equivalent to<br />

pressing Ctrl-Alt-Ins on booting.<br />

Note: since DOS revectors INT 00, it is necessary to restore this vector to<br />

its original ROM BIOS value in order to invoke the debugger once DOS<br />

loads<br />

SeeAlso: INT 03"Columbia"<br />

--------C-01---------------------------------<br />

INT 01 C - CPU-generated - SINGLE STEP<br />

Desc: generated after each instruction if TF (trap flag) is set; TF is<br />

cleared on invoking the single-step interrupt handler<br />

Notes: interrupts are prioritized such that external interrupts are invoked<br />

after the INT 01 pushes CS:IP/FLAGS and clears TF, but before the<br />

first instruction of the handler executes<br />

used by debuggers for single-instruction execution tracing, such as<br />

MS-DOS DEBUG's T command<br />

SeeAlso: INT 03"CPU"<br />

--------C-01---------------------------------<br />

INT 01 C - CPU-generated (80386+) - DEBUGGING EXCEPTIONS<br />

Saturday, January 08, 2011 11:31 AM<br />

-4-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Desc: generated by the CPU on various occurrences which may be of interest<br />

to a debugger program<br />

Note: events which may trigger the interrupt:<br />

Instruction address breakpoint fault - will return to execute inst<br />

Data address breakpoint trap - will return to following instruction<br />

General detect fault, debug registers in use<br />

Task-switch breakpoint trap<br />

undocumented 386/486 opcode F1h - will return to following instruc<br />

SeeAlso: INT 03"CPU"<br />

--------H-02---------------------------------<br />

INT 02 C - external hardware - NON-MASKABLE <strong>INTERRUP</strong>T<br />

Desc: generated by the CPU when the input to the NMI pin is asserted<br />

Notes: return address points to start of interrupted instruction on 80286+<br />

on the 80286+, further NMIs are disabled until the next IRET<br />

instruction, but one additional NMI is remembered by the hardware<br />

and will be serviced after the IRET instruction reenables NMIs<br />

maskable interrupts may interrupt the NMI handler if interrupts are<br />

enabled<br />

although the Intel documentation states that this interrupt is<br />

typically used for power-failure procedures, it has many other uses<br />

on IBM-compatible machines:<br />

Memory parity error: all except Jr, CONV, and some machines<br />

without memory parity<br />

Breakout switch on hardware debuggers<br />

Coprocessor interrupt: all except Jr and CONV<br />

Keyboard interrupt: Jr, CONV<br />

I/O channel check: CONV, PS50+<br />

Disk-controller power-on request: CONV<br />

System suspend: CONV<br />

Real-time clock: CONV<br />

System watch-dog timer, time-out interrupt: PS50+<br />

DMA timer time-out interrupt: PS50+<br />

Low battery: HP 95LX<br />

Module pulled: HP 95LX<br />

--------m-02----SI0714-----------------------<br />

INT 02 U - STB RAPIDMAP.SYS - ???<br />

SI = 0714h<br />

ES:DI -> ???<br />

Return: ???<br />

SeeAlso: INT 67/AX=6100h"STB",PORT 00E1h"STB"<br />

--------C-03---------------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-5-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 03 C - CPU-generated - BREAKPOINT<br />

Desc: generated by the one-byte breakpoint instruction (opcode CCh)<br />

Notes: used by debuggers to implement breakpoints, such as MS-DOS DEBUG's G<br />

command<br />

also used by Turbo Pascal versions 1,2,3 when {$U+} specified<br />

return address points to byte following the breakpoint instruction<br />

called by Novell DOS 7 EMM386 after displaying an exception error<br />

message (GPF, illegal opcodes, etc.) and before waiting for user<br />

input<br />

called by QEMM-386 if the user presses 'I' (undocumented) when prompted<br />

after an exception error message<br />

SeeAlso: INT 01"CPU"<br />

--------G-03---------------------------------<br />

INT 03 - Columbia PCs (desktop,VP portables) - ROM DEBUGGER<br />

Desc: invokes the ROM Debugger if INT 03 has not been revectored; equivalent<br />

to pressing Esc on booting.<br />

SeeAlso: INT 00"Zenith",INT 03"Realia"<br />

--------G-03---------------------------------<br />

INT 03 - Realia COBOL - DEBUGGER SUPPORT<br />

Note: Realia COBOL checks for a signature eight bytes prior to the interrupt<br />

handler when it starts up<br />

BUG: if the offset of the INT 03 vector is less than 8, the compiler and<br />

all executables generated by it will crash the system<br />

SeeAlso: INT 03"Columbia"<br />

--------G-03---------------------------------<br />

INT 03 U - Watcom WVIDEO, Watcom WD - OUTPUT DEBUGGING MESSAGE<br />

STACK: DWORD selector<br />

DWORD offset of ASCIZ message to display<br />

Notes: the INT 03h instruction which invokes the debugger must be followed by<br />

a JMP SHORT and the signature string "WVIDEO"<br />

to check whether this interface is available, define a public byte<br />

variable named ___WD_Present, which the debugger will set to 01h<br />

before running the program<br />

SeeAlso: AX=0910h<br />

--------U-03---------------------------------<br />

INT 03 - DTown Utilities - POP UP<br />

Program: DTown Software Development's DTown Utilities contains various tools<br />

which are useful to programmers, such as a memory viewer and<br />

disassembler<br />

Note: DTU pops up on INT 03 (if not hooked by a debugger) to allow the<br />

user to inspect memory or code when the machine crashes; various<br />

Saturday, January 08, 2011 11:31 AM<br />

-6-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

memory managers will invoke INT 03 when displaying a CPU exception<br />

error message (either automatically or when the user presses a<br />

particular key)<br />

SeeAlso: INT 2D/AL=20h"DTown"<br />

--------G-030000-----------------------------<br />

INT 03 - Soft-ICE - BACK DOOR COMMANDS - GET Soft-ICE VERSION<br />

AX = 0000h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: SI = BCD version (0280h = v2.80)<br />

SeeAlso: INT 03/AX=0910h<br />

--------G-0301-------------------------------<br />

INT 03 - Soft-ICE - BACK DOOR COMMANDS - ???<br />

AH = 01h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=090Bh,INT 03/AH=10h<br />

--------G-030900-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 0900h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

DX = ???<br />

Return: ???<br />

SeeAlso: AX=0000h,AH=01h,AX=0902h,AX=0914h<br />

--------G-030902-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - POPUP & START A DEBUG SESSION<br />

AX = 0902h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> initial register values (see #00001)<br />

Return: registers as specified in initial register values table<br />

Note: This function is called by LDR.EXE in loading a program to<br />

be debugged. After executing the function, Soft-ICE pops up its<br />

debugging window and you may start debugging your program.<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=090Ah,AX=0910h,AX=0914h<br />

Saturday, January 08, 2011 11:31 AM<br />

-7-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Format of Soft-ICE initial register values:<br />

Offset Size Description (Table 00001)<br />

00h WORD initial value of SP<br />

02h WORD initial value of SS<br />

04h WORD initial value of IP<br />

06h WORD initial value of CS<br />

08h WORD initial value of DS and ES<br />

0Ah WORD ???<br />

0Ch WORD ???<br />

0Eh WORD ???<br />

10h WORD initial value of AX<br />

12h WORD ??? (defaults to 000AH ???)<br />

14h WORD ??? (defaults to 0001H ???)<br />

16h WORD ??? (defaults to 0100H ???)<br />

--------G-030903-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 0903h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

DX = ???<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=0902h,AX=0907h,AX=0914h<br />

--------G-030907-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 0907h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

DX = ???<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=0903h,AX=090Ah,AX=0914h<br />

--------G-03090A-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 090Ah<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-8-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

DX = ???<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=0907h,AX=090Bh,AX=0914h<br />

--------G-03090B-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 090Bh<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

DX = ???<br />

Return: ???<br />

SeeAlso: AX=0000h,AX=090Ah,AX=0910h,AX=0914h<br />

--------G-030910-----------------------------<br />

INT 03 - Soft-ICE - BACK DOOR COMMANDS - DISPLAY STRING IN Soft-ICE WINDOW<br />

AX = 0910h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:DX -> ASCIZ string to display (max 100 bytes, 0Dh OK)<br />

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.<br />

SeeAlso: INT 03"WVIDEO"<br />

--------G-030911-----------------------------<br />

INT 03 - Soft-ICE - BACK DOOR COMMANDS - EXECUTE Soft-ICE COMMAND<br />

AX = 0911h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:DX -> ASCIZ command string (max 100 bytes, 0Dh OK)<br />

Return: nothing<br />

SeeAlso: AX=0912h,AX=0913h<br />

--------G-030912-----------------------------<br />

INT 03 - Soft-ICE - BACK DOOR COMMANDS - GET BREAKPOINT INFORMATION<br />

AX = 0912h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: BH = entry number of last breakpoint set<br />

BL = type of last breakpoint set (see #00002)<br />

DH = entry number of last breakpoint to be triggered<br />

DL = type of last triggered breakpoint (see #00002)<br />

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.<br />

SeeAlso: AX=0911h,AX=0913h,AX=0914h<br />

Saturday, January 08, 2011 11:31 AM<br />

-9-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

(Table 00002)<br />

Values for Soft-ICE breakpoint type:<br />

00h BPM (breakpoint register types)<br />

01h I/O<br />

02h INTerrupt<br />

03h BPX (INT 03-style breakpoint)<br />

04h reserved<br />

05h range<br />

--------G-030913-----------------------------<br />

INT 03 - Soft-ICE v2.5x - BACK DOOR COMMANDS - SET Soft-ICE BREAKPOINT<br />

AX = 0913h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:DX -> breakpoint structure (see #00003)<br />

Return: AX = status<br />

00h successful<br />

BX = breakpoint number<br />

03h breakpoint table full<br />

06h memory limit error<br />

07h I/O limit error<br />

09h range limit error<br />

16h duplicate breakpoint<br />

SeeAlso: AX=0911h,AX=0912h,AX=0914h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of Soft-ICE breakpoint structure:<br />

Offset Size Description (Table 00003)<br />

00h BYTE breakpoint type (see #00004)<br />

01h DWORD breakpoint address 1<br />

(lower range limit for memory BPs,<br />

interrupt number for interrupt BPs,<br />

address of BP for execution BPs,<br />

I/O address (only word) for I/O BPs)<br />

05h DWORD breakpoint address 2<br />

(upper range limit for memory BPs,<br />

optional value to check for for interrupt BPs,<br />

overlay number (0 = root) for execution BPs)<br />

09h DWORD breakpoint address 3<br />

0Dh BYTE breakpoint mode 1 (see #00005)<br />

(for interrupt BPs = register to check<br />

00h no value checking<br />

01h check AL<br />

-10-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

02h check AH<br />

03h check AX)<br />

0Eh BYTE breakpoint mode 2 (see #00005)<br />

0Fh BYTE breakpoint size (00h byte, 01h word, 03h dword)<br />

10h BYTE breakpoint pass count before program stop<br />

11h BYTE breakpoint state<br />

Note: all unused fields should contain zeros<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00004)<br />

Values for Soft-ICE breakpoint type:<br />

00h memory location<br />

01h memory range<br />

03h I/O<br />

04h interrupt<br />

05h execution break<br />

(Table 00005)<br />

Values for Soft-ICE breakpoint mode:<br />

01h read<br />

02h write<br />

04h execution<br />

--------G-030914-----------------------------<br />

INT 03 - Soft-ICE v2.5x - BACK DOOR COMMANDS - REMOVE Soft-ICE BREAKPOINT<br />

AX = 0914h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

BX = breakpoint number (returned by AX=0913h)<br />

Return: BX = ???<br />

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.<br />

SeeAlso: AX=0912h,AX=0913h<br />

--------G-030918-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 0918h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

DS:BX -> ???<br />

CX = ???<br />

DX = ???<br />

Return: ???<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AX=0914h,INT 03/AH=10h<br />

--------G-0310-------------------------------<br />

-11-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AH = 10h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: ???<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AH=01h,INT 03/AH=11h<br />

--------G-0311-------------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AH = 11h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: none???<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AH=10h,INT 03/AX=130Ch<br />

--------G-03130C-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 130Ch<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

BX = ???<br />

CX = ???<br />

DX = ???<br />

Return: AX = ??? (1300h)<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AH=11h,INT 03/AX=130Eh<br />

--------G-03130E-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 130Eh<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

BX = ???<br />

CX = ???<br />

DX = ???<br />

Return: AX = ??? (1300h)<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AX=130Ch,INT 03/AX=1313h<br />

--------G-031313-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 1313h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

BX = ???<br />

CX = ???<br />

DX = ???<br />

Saturday, January 08, 2011 11:31 AM<br />

-12-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: AX = ??? (1300h)<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AX=130Eh<br />

--------G-030900-----------------------------<br />

INT 03 - Soft-ICE v2.80 - BACK DOOR COMMANDS - ???<br />

AX = 0900h<br />

SI = magic value 4647h ('FG')<br />

DI = magic value 4A4Dh ('JM')<br />

Return: none???<br />

SeeAlso: INT 03/AX=0000h,INT 03/AX=0910h,INT 03/AH=10h,INT 03/AH=12h<br />

--------C-04---------------------------------<br />

INT 04 C - CPU-generated - INTO DETECTED OVERFLOW<br />

Desc: the INTO instruction will generate this interrupt if OF (Overflow Flag)<br />

is set; otherwise, INTO is effectively a NOP<br />

Note: may be used for convenient overflow testing (to prevent errors from<br />

propagating) instead of JO or a JNO/JMP combination<br />

SeeAlso: INT 00"CPU",OPCODE "AAD",OPCODE "AAM"<br />

--------B-05---------------------------------<br />

INT 05 - PRINT SCREEN<br />

Desc: dump the current text screen to the first printer<br />

Notes: normally invoked by the INT 09 handler when PrtSc key is pressed, but<br />

may be invoked directly by applications<br />

byte at 0050h:0000h contains status used by default handler<br />

00h not active<br />

01h PrtSc in progress<br />

FFh last PrtSc encountered error<br />

default handler is at F000h:FF54h in IBM PC and 100%-compatible BIOSes<br />

since the BOUND instruction also calls INT 05h, but returns control<br />

to the BOUND instruction, a failed BOUND check will cause an infinite<br />

loop of PrtScreens unless the INT 05 handler is aware of the problem<br />

and checks whether the interrupt was invoked by a BOUND instruction<br />

BUG: some old BIOSes/applications appear to destroy BP on return<br />

SeeAlso: INT 10/AH=12h/BL=20h,INT 4A"Tandy 2000",INT 5E"TI Professional"<br />

SeeAlso: INT 80"Phar Lap"<br />

--------C-05---------------------------------<br />

INT 05 C - CPU-generated (80186+) - BOUND RANGE EXCEEDED<br />

Desc: generated by BOUND instruction when the value to be tested is less than<br />

the indicated lower bound or greater than the indicated upper bound.<br />

Note: returning from this interrupt re-executes the failing BOUND instruction<br />

--------P-05454A-----------------------------<br />

INT 05 U - PSPS v2.01 - EJECT PAGE<br />

AX = 454Ah ('EJ')<br />

Saturday, January 08, 2011 11:31 AM<br />

-13-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Program: PSPS is shareware PostScript PrintScreen utility by A.N.D.<br />

Technologies<br />

Note: sends a ^D to the current printer<br />

SeeAlso: AX=4E57h,AX=5053h,AX=554Eh<br />

--------P-054E57-----------------------------<br />

INT 05 U - PSPS v2.01 - SET PARAMETERS<br />

AX = 4E57h ('NW')<br />

ES:SI -> 11-byte buffer containing new settings<br />

Return: buffer filled<br />

SeeAlso: AX=454Ah,AX=5053h,INT 17/AH=63h<br />

--------P-055053-----------------------------<br />

INT 05 U - PSPS v2.01 - GET PARAMETERS<br />

AX = 5053h ('PS')<br />

ES:SI -> 11-byte buffer for settings<br />

Return: buffer filled<br />

SeeAlso: AX=4E57h,AX=554Eh,INT 17/AH=64h<br />

--------P-05554E-----------------------------<br />

INT 05 U - PSPS v2.01 - UNINSTALL<br />

AX = 554Eh ('UN')<br />

Program: PSPS is shareware PostScript PrintScreen utility by A.N.D.<br />

Technologies<br />

SeeAlso: AX=454Ah,AX=4E57h,INT 17/AH=62h<br />

--------C-06---------------------------------<br />

INT 06 C - CPU-generated (80186+) - INVALID OPCODE<br />

Desc: this interrupt is generated when the CPU attempts to execute an<br />

invalid opcode (most protected-mode instructions are considered<br />

invalid in real mode) or a BOUND, LDS, LES, or LIDT instruction<br />

which specifies a register rather than a memory address<br />

Notes: return address points to beginning of invalid instruction<br />

with proper programming, this interrupt may be used to emulate<br />

instructions which do not exist; many 386 BIOSes emulate the 80286<br />

undocumented LOADALL instruction which was removed from the 80386+<br />

generated by the 80386+ when the LOCK prefix is used with instructions<br />

other than BTS, BTR, BTC, XCHG, XADD (486), CMPXCHG (486), INC, DEC,<br />

NOT, NEG, ADD, ADC, SUB, SBB, AND, OR, or XOR, or any instruction<br />

not accessing memory.<br />

SeeAlso: INT 0C"CPU",INT 0D"CPU"<br />

--------b-06---------------------------------<br />

INT 06 C - HP 95LX - SLEEP/WAKEUP<br />

Desc: this interrupt is called just before going into light or deep<br />

(shutdown) sleep and just after returning from light or deep sleep<br />

Saturday, January 08, 2011 11:31 AM<br />

-14-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: INT 0B"HP 95LX",INT 15/AX=4DD4h,INT 15/AH=4Eh<br />

--------V-06---------------------------------<br />

INT 06 U - no-name clone - GRAPHICS CHARACTER TABLE (NOT A VECTOR!)<br />

Desc: points at graphics data for characters 00h-7Fh of the current font<br />

SeeAlso: INT 43"EGA",INT 44"VIDEO"<br />

--------C-07---------------------------------<br />

INT 07 C - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE<br />

Desc: this interrupt is automatically called if a coprocessor instruction is<br />

encountered when no coprocessor is installed<br />

Note: can be used to emulate a numeric coprocessor in software<br />

SeeAlso: INT 09"CPU"<br />

--------H-08---------------------------------<br />

INT 08 C - IRQ0 - SYSTEM TIMER<br />

Desc: generated 18.2 times per second by channel 0 of the 8254 system timer,<br />

this interrupt is used to keep the time-of-day clock updated<br />

Notes: programs which need to be invoked regularly should use INT 1C unless<br />

they need to reprogram the timer while still keeping the time-of-day<br />

clock running at the proper rate<br />

default handler is at F000h:FEA5h in IBM PC and 100%-compatible BIOSes<br />

may be masked by setting bit 0 on I/O port 21h<br />

SeeAlso: INT 1C,INT 4A"SYSTEM",INT 50"DESQview",INT 58"DoubleDOS",INT 70"IRQ8"<br />

SeeAlso: INT 78"GO32",INT D8"Screen Thief",MEM 0040h:0040h,MEM 0040h:006Ch<br />

--------C-08---------------------------------<br />

INT 08 C - CPU-generated (80286+) - DOUBLE EXCEPTION DETECTED<br />

Desc: called when multiple exceptions occur on one instruction, or an<br />

exception occurs in an exception handler<br />

Notes: called in protected mode if an interrupt above the defined limit of<br />

the interrupt vector table occurs<br />

return address points at beginning of instruction with errors or the<br />

beginning of the instruction which was about to execute when the<br />

external interrupt caused the exception<br />

if an exception occurs in the double fault handler, the CPU goes into<br />

SHUTDOWN mode (which circuitry in the PC/AT converts to a reset);<br />

this "triple fault" is a faster way of returning to real mode on<br />

many 80286 machines than the standard keyboard controller reset<br />

--------H-09---------------------------------<br />

INT 09 C - IRQ1 - KEYBOARD DATA READY<br />

Desc: this interrupt is generated when data is received from the keyboard.<br />

This is normally a scan code (from either a keypress *or* a key<br />

release), but may also be an ACK or NAK of a command on AT-class<br />

keyboards.<br />

Saturday, January 08, 2011 11:31 AM<br />

-15-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Notes: this IRQ may be masked by setting bit 1 on I/O port 21h<br />

if the BIOS supports an enhanced (101/102-key) keyboard, it calls<br />

INT 15/AH=4Fh after reading the scan code (see #00006) from the<br />

keyboard and before further processing; all further processing uses<br />

the scan code returned from INT 15/AH=4Fh<br />

the default interrupt handler is at F000h:E987h in 100%-compatible<br />

BIOSes<br />

the interrupt handler performs the following actions for certain<br />

special keystrokes:<br />

Ctrl-Break clear keyboard buffer, place word 0000h in buffer,<br />

invoke INT 1B, and set flag at 0040h:0071h<br />

SysReq invoke INT 15/AH=85h (SysReq is often labeled SysRq)<br />

Ctrl-Numlock place system in a tight wait loop until next INT 09<br />

Ctrl-Alt-Del jump to BIOS startup code (either F000h:FFF0h or the<br />

destination of the jump at that address)<br />

Shift-PrtSc invoke INT 05<br />

Ctrl-Alt-Plus (HP Vectra) enable keyclick<br />

Ctrl-Alt-Plus (many clones) set clock speed to high<br />

Ctrl-Alt-Minus (HP Vectra) reduce keyclick volume<br />

Ctrl-Alt-Minus (many clones) set clock speed to low<br />

Ctrl-Alt-SysReq (HP Vectra) generate hard reset<br />

Ctrl-Alt-S (many clones) run BIOS setup program<br />

Ctrl-Alt-Esc (many clones) run BIOS setup program<br />

Ctrl-Alt-Ins (many clones) run BIOS setup program<br />

Ctrl-Alt-LeftShift-GrayMinus (some clones) turn off system cache<br />

Ctrl-Alt-LeftShift-GrayPlus (some clones) turn on system cache<br />

DR DOS hooks this interrupt to control the cursor shape (underscore/<br />

half block) for overwrite/insert mode<br />

DR Multiuser DOS hooks this interrupt for cursor shape control and to<br />

control whether Ctrl-Alt-Del reboots the current session or the<br />

entire system<br />

SeeAlso: INT 05"PRINT SCREEN",INT 0B"HP 95LX",INT 15/AH=4Fh,INT 15/AH=85h<br />

SeeAlso: INT 16/AH=00h,INT 16/AH=10h,INT 1B,INT 2F/AX=A901h,INT 4A/AH=00h"TI"<br />

SeeAlso: INT 51"DESQview",INT 59"DoubleDOS",INT 79"GO32"<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00006)<br />

Values for keyboard make/break (scan) code:<br />

01h Esc 31h N<br />

02h 1 ! 32h M<br />

03h 2 @ 33h , < 63h F16<br />

04h 3 # 34h . > 64h F17<br />

-16-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

05h 4 $ 35h / ? 65h F18<br />

06h 5 % 36h Right Shift 66h F19<br />

07h 6 ^ 37h Grey* 67h F20<br />

08h 7 & 38h Alt 68h F21 (Fn) [*]<br />

09h 8 * 39h SpaceBar 69h F22<br />

0Ah 9 ( 3Ah CapsLock 6Ah F23<br />

0Bh 0 ) 3Bh F1 6Bh F24<br />

0Ch - _ 3Ch F2 6Ch --<br />

0Dh = + 3Dh F3 6Dh EraseEOF<br />

0Eh Backspace 3Eh F4<br />

0Fh Tab 3Fh F5 6Fh Copy/Play<br />

10h Q 40h F6<br />

11h W 41h F7<br />

12h E 42h F8 72h CrSel<br />

13h R 43h F9 73h [*]<br />

14h T 44h F10 74h ExSel<br />

15h Y 45h NumLock 75h --<br />

16h U 46h ScrollLock 76h Clear<br />

17h I 47h Home 77h [Note2] Joyst But1<br />

18h O 48h UpArrow 78h [Note2] Joyst But2<br />

19h P 49h PgUp 79h [Note2] Joyst Right<br />

1Ah [ { 4Ah Grey- 7Ah [Note2] Joyst Left<br />

1Bh ] } 4Bh LeftArrow 7Bh [Note2] Joyst Up<br />

1Ch Enter 4Ch Keypad 5 7Ch [Note2] Joyst Down<br />

1Dh Ctrl 4Dh RightArrow 7Dh [Note2] right mouse<br />

1Eh A 4Eh Grey+ 7Eh [Note2] left mouse<br />

1Fh S 4Fh End<br />

20h D 50h DownArrow<br />

21h F 51h PgDn<br />

22h G 52h Ins<br />

23h H 53h Del<br />

24h J 54h SysReq ---non-key codes---<br />

25h K 55h [Note1] F11 00h kbd buffer full<br />

26h L 56h left \| (102-key)<br />

27h ; : 57h F11 AAh self-test complete<br />

28h ' " 58h F12 E0h prefix code<br />

29h ` ~ 59h [Note1] F15 E1h prefix code<br />

2Ah Left Shift 5Ah PA1 EEh ECHO<br />

2Bh \ | 5Bh F13 (LWin) F0h prefix code (key break)<br />

2Ch Z 5Ch F14 (RWin) FAh ACK<br />

2Dh X 5Dh F15 (Menu) FCh diag failure (MF-kbd)<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-17-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

2Eh C FDh diag failure (AT-kbd)<br />

2Fh V FEh RESEND<br />

30h B FFh kbd error/buffer full<br />

Notes:<br />

scan codes 56h-E1h are only available on the extended (101/102-key)<br />

keyboard and Host Connected (122-key) keyboard; scan codes 5Bh-5Dh<br />

are only available on the 122-key keyboard and the Microsoft Natural<br />

Keyboard; scan codes 5Eh-76h are only available on the 122-key<br />

keyboard<br />

in the default configuration, break codes are the make scan codes with<br />

the high bit set; make codes 60h,61h,70h, etc. are not available<br />

because the corresponding break codes conflict with prefix codes<br />

(code 2Ah is available because the self-test result code AAh is only<br />

sent on keyboard initialization). An alternate keyboard<br />

configuration can be enabled on AT and later systems with enhanced<br />

keyboards, in which break codes are the same as make codes, but<br />

prefixed with an F0h scan code<br />

prefix code E0h indicates that the following make/break code is for a<br />

"gray" duplicate to a key which existed on the original PC keyboard;<br />

prefix code E1h indicates that the following make code has no<br />

corresponding break code (currently only the Pause key generates no<br />

break code)<br />

the Microsoft Natural Keyboard sends make codes 5Bh, 5Ch, and 5Dh<br />

(all with an E0h prefix) for the Left Windows, Right Windows, and<br />

Menu keys on the bottom row<br />

the European "Cherry G81-3000 SAx/04" keyboard contains contacts for<br />

four additional keys, which can be made available by a user<br />

modification; the three new keys located directly below the cursor<br />

pad's Delete, End, and PgDn keys send make codes 66h-68h (F19-F21);<br />

the fourth new key, named , sends make code 73h<br />

the SysReq key is often labeled SysRq<br />

the "Accord" ergonomic keyboard with optional touchpad (no other<br />

identification visible on keyboard or in owner's booklet) has an<br />

additional key above the Grey- key marked with a left-pointing<br />

triangle and labeled "Fn" in the owner's booklet which returns<br />

scan codes E0h 68h on make and E0h E8h on break<br />

the "Preh Commander AT" keyboard with additional F11-F22 keys treats<br />

F11-F20 as Shift-F1..Shift-F10 and F21/F22 as Ctrl-F1/Ctrl-F2; the<br />

Eagle PC-2 keyboard with F11-F24 keys treated those additional keys<br />

in the same way<br />

[Note1] the "Cherry G80-0777" keyboard has additional F11-F15 keys<br />

which generate make codes 55h-59h; some other extended keyboards<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-18-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

generate codes 55h and 56h for F11 and F12, which cannot be managed<br />

by standard DOS keyboard drivers<br />

[Note2] the Schneider/Amstrad PC1512 PC keyboards contain extra keys,<br />

a mouse, and a digital joystick, which are handled like extra keys.<br />

The joystick's motion scancodes are converted into standard arrow<br />

keys by the BIOS, and the joystick and mouse button scan codes are<br />

converted to FFFFh codes in the BIOS keyboard buffer<br />

(see CMOS 15h"AMSTRAD").<br />

In addition to the keys listed in the table above, there are<br />

Del-> (delete forward) 70h<br />

Enter 74h<br />

SeeAlso: #00602 at INT 16/AX=6F07h,#03214 at INT 4A/AH=05h<br />

--------C-09---------------------------------<br />

INT 09 C - CPU-generated (80286,80386) - PROCESSOR EXTENSION PROTECTION ERROR<br />

Desc: called if the coprocessor attempts to access memory outside a segment<br />

boundary; it may occur at an arbitrary time after the coprocessor<br />

instruction was issued<br />

Notes: until the condition is cleared or the coprocessor is reset, the only<br />

coprocessor instruction which may be used is FNINIT; WAIT or other<br />

coprocessor instructions will cause a deadlock because the<br />

coprocessor is still busy waiting for data<br />

for the 486+, a coprocessor protection error generates an INT 0D<br />

SeeAlso: INT 07"CPU"<br />

--------*-09---------------------------------<br />

INT 09 P - internal hardware - RESERVED BY Intel (80486)<br />

Note: this exception has been moved to INT 0D<br />

SeeAlso: INT 09"CPU",INT 0D<br />

--------H-0A---------------------------------<br />

INT 0A C - IRQ2 - LPT2 (PC), VERTICAL RETRACE <strong>INTERRUP</strong>T (EGA,VGA)<br />

Notes: the TOPS and PCnet adapters use this interrupt request line by default<br />

DOS 3.2 revectors IRQ2 to a stack-switching routine; DOS 3.3+ does so<br />

unless STACKS=0 has been set in CONFIG.SYS. MS/PC-DOS 3.3+ use the<br />

IBM Interrupt Sharing Protocol (see #02568) when hooking this IRQ<br />

on ATs and above, the physical data line for IRQ2 is labeled IRQ9 and<br />

connects to the slave 8259. The BIOS redirects the interrupt for<br />

IRQ9 back here.<br />

under DESQview, only the INT 15h vector and BASIC segment address (the<br />

word at 0000h:0510h) may be assumed to be valid for the handler's<br />

process<br />

many VGA boards do not implement the vertical retrace interrupt,<br />

including the IBM VGA Adapter where the traces are either cut or<br />

Saturday, January 08, 2011 11:31 AM<br />

-19-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

removed<br />

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"<br />

--------H-0A---------------------------------<br />

INT 0A C - IRQ2 - Tandy 1000-series HARD DISK<br />

Notes: this interrupt may be masked by setting bit 2 on I/O port 21h<br />

the Tandy 1000, 1000A, and 1000HD use IRQ2 for the hard disk; the<br />

1000EX, HX, RLX, RLX-HD, RLX-B, RLX-HD-B use IRQ5 instead; the<br />

1000RL, RL-HD, SL, SL/2, TL, TL/2, and TL/3 are jumper-selectable<br />

for either IRQ2 or IRQ5 (default IRQ5); the 1000SX and TX are<br />

DIP-switch selectable for IRQ2 or IRQ5 (default IRQ2); the RSX and<br />

RSX-HD use IRQ14. Tandy systems which use IRQ2 for the hard disk<br />

interrupt use IRQ5 for vertical retrace.<br />

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71<br />

--------H-0A---------------------------------<br />

INT 0A - IRQ2 - ROLAND MPU MIDI INTERFACE<br />

Note: newer Roland cards and MIDI interfaces by other manufacturers use<br />

a jumper-selectable IRQ, but software and hardware generally defaults<br />

to IRQ2<br />

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"<br />

--------C-0A---------------------------------<br />

INT 0A CP - CPU-generated (80286+) - INVALID TASK STATE SEGMENT<br />

Desc: automatically called during a task switch if the new TSS specified by<br />

the task gate is invalid for any of the following reasons:<br />

TSS limit is less than 43 (80286) or 103 (80386/80486)<br />

LDT selector invalid or segment not present<br />

null SS selector, or SS selector outside LDT/GDT limit<br />

stack segment is read-only<br />

stack segment DPL differs from new CPL, or RPL CPL<br />

CS selector is outside LDT/GDT limit or not code<br />

non-conforming code segment's DPL differs from CPL<br />

conforming code segment's DPL > CPL<br />

DS/ES selectors outside LDT/GDT limit or not readable segments<br />

Note: the handler must use a task gate in order to have a valid TSS under<br />

which to execute; it must also reset the busy bit in the new TSS<br />

SeeAlso: INT 0B"CPU"<br />

--------H-0B---------------------------------<br />

INT 0B C - IRQ3 - SERIAL COMMUNICATIONS (COM2)<br />

Desc: automatically asserted by the UART when COM2 needs attention, if the<br />

UART has been programmed to generate interrupts<br />

Notes: the TOPS and PCnet adapters use this interrupt request line as an<br />

alternate<br />

Saturday, January 08, 2011 11:31 AM<br />

-20-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

on PS/2s, COM2 through COM8 share this interrupt; on many PC's, COM4<br />

shares this interrupt<br />

may be masked by setting bit 3 on I/O port 21h<br />

DOS 3.3+ revectors IRQ3 to a stack-switching routine unless STACKS=0<br />

has been set in CONFIG.SYS. MS/PC-DOS use the IBM Interrupt Sharing<br />

Protocol (see #02568) when hooking this IRQ<br />

SeeAlso: INT 0C"COM1",INT 53"DESQview",INT 5B"DoubleDOS",INT 7B"GO32"<br />

--------C-0B---------------------------------<br />

INT 0B CP - CPU-generated (80286+) - SEGMENT NOT PRESENT<br />

Desc: generated when loading a segment register if the segment descriptor<br />

indicates that the segment is not currently in memory, unless the<br />

segment is an LDT (see INT 0A"CPU") or stack segment (see<br />

INT 0C"CPU") needed by a task switch<br />

Note: may be used to implement virtual memory by loading in segments as they<br />

are accessed, clearing the "not present" bit after loading<br />

SeeAlso: INT 0A"CPU",INT 0E"CPU"<br />

--------h-0B---------------------------------<br />

INT 0B - HP 95LX - LOW-LEVEL KEYBOARD HANDLER<br />

Desc: this is the lowest-level keyboard handler on an HP 95LX palmtop<br />

Note: debounces key, places the keycode in I/O register 60h, and calls INT 09<br />

SeeAlso: INT 09,INT 0D"HP 95LX",INT 15/AX=4DD4h<br />

--------H-0C---------------------------------<br />

INT 0C C - IRQ4 - SERIAL COMMUNICATIONS (COM1)<br />

Desc: automatically asserted by the UART when COM1 needs attention, if the<br />

UART has been programmed to generate interrupts<br />

BUG: this vector is modified but not restored by Direct Access v4.0, and<br />

may be left dangling by other programs written with the same version<br />

of compiled BASIC<br />

Notes: on many PC's, COM3 shares this interrupt<br />

may be masked by setting bit 4 on I/O port 21h<br />

DOS 3.3+ revectors IRQ4 to a stack-switching routine unless STACKS=0<br />

has been set in CONFIG.SYS. MS/PC-DOS use the IBM Interrupt Sharing<br />

Protocol (see #02568) when hooking this IRQ<br />

SeeAlso: INT 0B"COM2",INT 54"DESQview",INT 5C"DoubleDOS",INT 7C"GO32"<br />

--------C-0C---------------------------------<br />

INT 0C C - CPU-generated (80286+) - STACK FAULT<br />

Desc: this interrupt is generated in protected mode on a stack overflow or<br />

underflow, or if an inter-level transition or task switch references<br />

a stack segment marked "not present"; it is generated in real mode<br />

on accessing a word operand at SS:FFFFh<br />

Note: the 80286 will shut down in real mode if SP=1 before a push. On the<br />

Saturday, January 08, 2011 11:31 AM<br />

-21-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

PC AT and compatibles, external circuitry generates a reset on<br />

shutdown.<br />

SeeAlso: INT 0B"CPU",INT 0D"CPU"<br />

--------I-0C---------------------------------<br />

INT 0C - IBM SYSTEM 36/38 WORKSTATION EMULATION - API POINTER<br />

Desc: the IBM System 36/38 emulator may be invoked through a private API,<br />

whose entry point address (see #00007) is offset 100h in the segment<br />

pointed at by this vector<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00007)<br />

Call the System 36/38 emulator API entry point with:<br />

AH = function<br />

03h update screen<br />

05h select next session<br />

AL = session number (00h-03h)<br />

Return: AL = session type code<br />

00h not active<br />

01h display session<br />

02h printer session<br />

FEh invalid session number<br />

DS = requested session's data segment (0 if not active)<br />

(see #00008)<br />

Return: ???<br />

Format of System 36/38 emulator's data area:<br />

Offset Size Description (Table 00008)<br />

13Eh BYTE bit flags for status line indicators turned on since this byte<br />

last zerod<br />

13Fh BYTE bit flags for status line indicators turned off since this<br />

byte last set to FFh<br />

140h WORD offset of EBCDIC to ASCII translation<br />

146h WORD offset of EBCDIC screen buffer<br />

148h WORD offset of EC (engineering change) level signature<br />

150h BYTE "KEYI"<br />

151h BYTE 5250 key scan code to be sent to remote<br />

15Bh BYTE "SYSAV"<br />

15Dh BYTE 5250 cursor column<br />

15Eh BYTE 5250 cursor row<br />

167h BYTE "DVCTAD"<br />

178h BYTE "FLAGS"<br />

184h BYTE "SESSNOAD"<br />

-22-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

193h BYTE "STNAD"<br />

198h BYTE "NSDS"<br />

Note: offsets are from the interrupt handler's segment<br />

--------H-0D---------------------------------<br />

INT 0D C - IRQ5 - FIXED DISK (PC,XT), LPT2 (AT), reserved (PS/2)<br />

Notes: under DESQview, only the INT 15h vector and BASIC segment address (the<br />

word at 0000h:0510h) may be assumed to be valid for the handler's<br />

process<br />

DOS 3.3+ revectors IRQ5 to a stack-switching routine unless STACKS=0<br />

has been set in CONFIG.SYS. MS/PC-DOS use the IBM Interrupt Sharing<br />

Protocol (see #02568) when hooking this IRQ<br />

the Tandy 1000, 1000A, and 1000HD use IRQ2 for the hard disk; the<br />

1000EX, HX, RLX, RLX-HD, RLX-B, RLX-HD-B use IRQ5 instead; the<br />

1000RL, RL-HD, SL, SL/2, TL, TL/2, and TL/3 are jumper-selectable<br />

for either IRQ2 or IRQ5 (default IRQ5); the 1000SX and TX are<br />

DIP-switch selectable for IRQ2 or IRQ5 (default IRQ2); the RSX and<br />

RSX-HD use IRQ14. Tandy systems which use IRQ2 for the hard disk<br />

interrupt use IRQ5 for vertical retrace.<br />

may be masked by setting bit 5 on I/O port 21h<br />

SeeAlso: INT 0E"IRQ6",INT 0F"IRQ7",INT 55"DESQview",INT 5D"DoubleDOS"<br />

SeeAlso: INT 7D"GO32"<br />

--------H-0D---------------------------------<br />

INT 0D C - IRQ5 - Tandy 1000 60 Hz RAM REFRESH<br />

Desc: used to ensure that the dynamic RAM retains its contents in earlier<br />

1000-series models; later models use normal DMA for RAM refresh<br />

(some early models have no DMA unless it is added via an expansion<br />

card)<br />

SeeAlso: INT 55<br />

--------h-0D---------------------------------<br />

INT 0D - HP 95LX - INFRARED <strong>INTERRUP</strong>T<br />

Desc: this interrupt is used to perform communications over the infrared<br />

data link<br />

SeeAlso: INT 0B"HP 95LX",INT 0E"HP 95LX",INT 15/AX=4DD4h<br />

--------C-0D---------------------------------<br />

INT 0D C - CPU-generated (80286+) - GENERAL PROTECTION VIOLATION<br />

Desc: the CPU generates this interrupt when it detects a protection violation<br />

which does not fit under any other category having a separate<br />

interrupt<br />

Notes: called in real mode when<br />

an instruction accesses a memory operand extending beyond offset<br />

FFFFh (i.e. WORD at FFFFh or DWORD at FFFDh or higher) in segment<br />

Saturday, January 08, 2011 11:31 AM<br />

-23-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

CS, DS, ES, FG, or GS<br />

a PUSH MEM or POP MEM instruction contains an invalid bit encoding<br />

in the second byte<br />

an instruction exceeds the maximum length allowed (10 bytes for<br />

80286, 15 bytes for 80386/80486)<br />

an instruction wraps from offset FFFFh to offset 0000h<br />

called in protected mode on protection violations not covered by INT 06<br />

through INT 0C, including<br />

segment limit violations<br />

write to read-only segments<br />

accesses using null DS or ES selectors<br />

accesses to segments with privilege greater than CPL<br />

wrong descriptor type<br />

called on 80486 protected-mode floating-point protection fault<br />

SeeAlso: INT 09"80486",INT 0C"STACK"<br />

--------H-0E---------------------------------<br />

INT 0E C - IRQ6 - DISKETTE CONTROLLER<br />

Desc: this interrupt is generated by the floppy disk controller on<br />

completion of an operation<br />

Notes: default handler is at F000h:EF57h in IBM PC and 100%-compatible BIOSes<br />

may be masked by setting bit 6 on I/O port 21h<br />

DOS 3.3+ revectors IRQ6 to a stack-switching routine unless STACKS=0<br />

has been set in CONFIG.SYS. MS/PC-DOS use the IBM Interrupt Sharing<br />

Protocol (see #02568) when hooking this IRQ<br />

SeeAlso: INT 0D"IRQ5",INT 56"DESQview",INT 5E"DoubleDOS",INT 7E"GO32"<br />

--------C-0E---------------------------------<br />

INT 0E C - CPU-generated (80386+ native mode) - PAGE FAULT<br />

Desc: this interrupt is generated in protected and virtual-86 modes on<br />

attempting to access a 4K memory page whose page table entry has<br />

the "present" bit cleared<br />

Notes: used to implement virtual memory--when the page fault occurs, the<br />

operating system can load the appropriate page from disk<br />

a protected-mode program written in the Flat memory model will often<br />

generate this interrupt (typically reported as an Exception #14 or<br />

Exception 0E with a register dump) when dereferencing an<br />

uninitialized or corrupted pointer<br />

SeeAlso: INT 0B"CPU"<br />

--------h-0E---------------------------------<br />

INT 0E C - HP 95LX - EXTERNAL CARD <strong>INTERRUP</strong>T<br />

SeeAlso: INT 0D"HP 95LX",INT 0F"HP 95LX",INT 15/AX=4DD4h<br />

--------H-0F---------------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-24-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 0F C - IRQ7 - PARALLEL PRINTER<br />

Desc: this interrupt is generated by the LPT1 printer adapter when the<br />

printer becomes ready<br />

Notes: most printer adapters do not reliably generate this interrupt<br />

the 8259 interrupt controller generates an interrupt corresponding to<br />

IRQ7 when an error condition occurs<br />

SeeAlso: INT 0D"IRQ5",INT 57"DESQview",INT 5F"DoubleDOS",INT 7F"GO32"<br />

SeeAlso: MEM 0040h:006Bh<br />

--------h-0F---------------------------------<br />

INT 0F C - HP 95LX - REAL-TIME CLOCK<br />

SeeAlso: INT 0E"HP 95LX",INT 15/AX=4DD4h,INT 70"IRQ8"<br />

--------C-10---------------------------------<br />

INT 10 C - CPU-generated (80286+) - COPROCESSOR ERROR<br />

Desc: this interrupt is generated by the CPU when the -ERROR pin is asserted<br />

by the coprocessor<br />

Note: AT's and clones usually wire the coprocessor to use IRQ13, but not all<br />

get it right<br />

SeeAlso: INT 09"hardware",INT 75<br />

--------V-10---------------------------------<br />

INT 10h - LIRVGA19 - CHAR HEIGHT HOOK<br />

Desc: LIRVGA19.COM fixes display problems on some notebooks by hooking<br />

INT 10h and resetting the BIOS character height (MEM 0040h:0085h)<br />

to 10h on return, if it happens to be greater than 10h.<br />

Program: LIRVGA19.COM is part of the Lithuanian LIR codepage support package<br />

developed by LABAS u.a.b.<br />

SeeAlso: INT 10/AX=5555h/BX=BBBBh,MEM 0040h:0085h<br />

--------V-1000-------------------------------<br />

INT 10 - VIDEO - SET VIDEO MODE<br />

AH = 00h<br />

AL = desired video mode (see #00010)<br />

Return: AL = video mode flag (Phoenix, AMI BIOS)<br />

20h mode > 7<br />

30h modes 0-5 and 7<br />

3Fh mode 6<br />

AL = CRT controller mode byte (Phoenix 386 BIOS v1.10)<br />

Desc: specify the display mode for the currently active display adapter<br />

InstallCheck: for Ahead adapters, the signature "AHEAD" at C000h:0025h<br />

for Paradise adapters, the signature "VGA=" at C000h:007Dh<br />

for Oak Tech OTI-037/057/067/077 chipsets, the signature "OAK VGA" at<br />

C000h:0008h<br />

for ATI adapters, the signature "761295520" at C000h:0031h; the byte<br />

Saturday, January 08, 2011 11:31 AM<br />

-25-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

at C000h:0043h indicates the chipset revision:<br />

31h for 18800<br />

32h for 18800-1<br />

33h for 18800-2<br />

34h for 18800-4<br />

35h for 18800-5<br />

62h for 68800AX (Mach32) (see also #00732)<br />

the two bytes at C000h:0040h indicate the adapter type<br />

"22" EGA Wonder<br />

"31" VGA Wonder<br />

"32" EGA Wonder800+<br />

the byte at C000h:0042h contains feature flags<br />

bit 1: mouse port present<br />

bit 4: programmable video clock<br />

the byte at C000h:0044h contains additional feature flags if chipset<br />

byte > 30h (see #00009)<br />

for Genoa video adapters, the signature 77h XXh 99h 66h at C000h:NNNNh,<br />

where NNNNh is stored at C000h:0037h and XXh is<br />

00h for Genoa 6200/6300<br />

11h for Genoa 6400/6600<br />

22h for Genoa 6100<br />

33h for Genoa 5100/5200<br />

55h for Genoa 5300/5400<br />

for SuperEGA BIOS v2.41+, C000h:0057h contains the product level<br />

for Genoa SuperEGA BIOS v3.0+, C000h:0070h contains the signature<br />

"EXTMODE", indicating support for extended modes<br />

Notes: IBM standard modes do not clear the screen if the high bit of AL is set<br />

(EGA or higher only)<br />

the Tseng ET4000 chipset is used by the Orchid Prodesigner II, Diamond<br />

SpeedSTAR VGA, Groundhog Graphics Shadow VGA, Boca Super X VGA,<br />

Everex EV-673, etc.<br />

intercepted by GRAFTABL from Novell DOS 7 and Caldera OpenDOS 7.01.<br />

SeeAlso: AX=0070h,AX=007Eh,AX=10E0h,AX=10F0h,AH=40h,AX=6F05h,AH=FFh"GO32"<br />

SeeAlso: INT 33/AX=0028h,INT 5F/AH=00h,INT 62/AX=0001h,MEM 0040h:0049h<br />

<strong>Index</strong>: installation check;Tseng ET4000|installation check;Ahead video cards<br />

<strong>Index</strong>: installation check;Oak Technologies|installation check;ATI video cards<br />

<strong>Index</strong>: installation check;Paradise video|installation check;Genoa video cards<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for ATI additional feature flags:<br />

Bit(s) Description (Table 00009)<br />

0 70 Hz non-interlaced display<br />

-26-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

1 Korean (double-byte) characters<br />

2 45 MHz memory clock rather than 40 MHz<br />

3 zero wait states<br />

4 paged ROMs<br />

6 no 8514/A monitor support<br />

7 HiColor DAC<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00010)<br />

Values for video mode:<br />

text/ text pixel pixel colors disply scrn system<br />

grph resol box resolution pages addr<br />

00h = T 40x25 8x8 320x200 16gray 8 B800 CGA,PCjr,Tandy<br />

= T 40x25 8x14 320x350 16gray 8 B800 EGA<br />

= T 40x25 8x16 320x400 16 8 B800 MCGA<br />

= T 40x25 9x16 360x400 16 8 B800 VGA<br />

01h = T 40x25 8x8 320x200 16 8 B800 CGA,PCjr,Tandy<br />

= T 40x25 8x14 320x350 16 8 B800 EGA<br />

= T 40x25 8x16 320x400 16 8 B800 MCGA<br />

= T 40x25 9x16 360x400 16 8 B800 VGA<br />

02h = T 80x25 8x8 640x200 16gray 4 B800 CGA,PCjr,Tandy<br />

= T 80x25 8x14 640x350 16gray 8 B800 EGA<br />

= T 80x25 8x16 640x400 16 8 B800 MCGA<br />

= T 80x25 9x16 720x400 16 8 B800 VGA<br />

03h = T 80x25 8x8 640x200 16 4 B800 CGA,PCjr,Tandy<br />

= T 80x25 8x14 640x350 16/64 8 B800 EGA<br />

= T 80x25 8x16 640x400 16 8 B800 MCGA<br />

= T 80x25 9x16 720x400 16 8 B800 VGA<br />

= T 80x43 8x8 640x350 16 4 B800 EGA,VGA [17]<br />

= T 80x50 8x8 640x400 16 4 B800 VGA [17]<br />

04h = G 40x25 8x8 320x200 4 . B800 CGA,PCjr,EGA,MCGA,VGA<br />

05h = G 40x25 8x8 320x200 4gray . B800 CGA,PCjr,EGA<br />

= G 40x25 8x8 320x200 4 . B800 MCGA,VGA<br />

06h = G 80x25 8x8 640x200 2 . B800 CGA,PCjr,EGA,MCGA,VGA<br />

= G 80x25 . . mono . B000 HERCULES.COM on HGC [14]<br />

07h = T 80x25 9x14 720x350 mono var B000 MDA,Hercules,EGA<br />

= T 80x25 9x16 720x400 mono . B000 VGA<br />

08h = T 132x25 8x8 1056x200 16 . B800 ATI EGA/VGA Wonder [2]<br />

= T 132x25 8x8 1056x200 mono . B000 ATI EGA/VGA Wonder [2]<br />

= G 20x25 8x8 160x200 16 . . PCjr, Tandy 1000<br />

= G 80x25 8x16 640x400 color . . Tandy 2000<br />

= G 90x43 8x8 720x348 mono . B000 Hercules + MSHERC.COM<br />

-27-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 90x45 8x8 720x360 mono .<br />

http://www.foxitsoftware.com For evaluation only.<br />

B000 Hercules + HERKULES [11]<br />

= G 90x29 8x12 720x348 mono . . Hercules + HERCBIOS [15]<br />

09h = G 40x25 8x8 320x200 16 . . PCjr, Tandy 1000<br />

= G 80x25 8x16 640x400 mono . . Tandy 2000<br />

= G 90x43 8x8 720x348 mono . . Hercules + HERCBIOS [15]<br />

0Ah = G 80x25 8x8 640x200 4 . . PCjr, Tandy 1000<br />

0Bh = reserved (EGA BIOS internal use)<br />

= G 80x25 8x8 640x200 16 . . Tandy 1000 SL/TL [13]<br />

0Ch = reserved (EGA BIOS internal use)<br />

0Dh = G 40x25 8x8 320x200 16 8 A000 EGA,VGA<br />

0Eh = G 80x25 8x8 640x200 16 4 A000 EGA,VGA<br />

0Fh = G 80x25 8x14 640x350 mono 2 A000 EGA,VGA<br />

10h = G 80x25 8x14 640x350 4 2 A000 64k EGA<br />

= G . . 640x350 16 . A000 256k EGA,VGA<br />

11h = G 80x30 8x16 640x480 mono . A000 VGA,MCGA,ATI EGA,ATI VIP<br />

12h = G 80x30 8x16 640x480 16/256K . A000 VGA,ATI VIP<br />

= G 80x30 8x16 640x480 16/64 . A000 ATI EGA Wonder<br />

= G . . 640x480 16 . . UltraVision+256K EGA<br />

13h = G 40x25 8x8 320x200 256/256K . A000 VGA,MCGA,ATI VIP<br />

14h = T 132x25 Nx16 . 16 . B800 XGA, IBM Enhanced VGA [3]<br />

= T 132x25 8x16 1056x400 16/256K . . Cirrus CL-GD5420/5422/5426<br />

= G 80x25 8x8 640x200 . . . Lava Chrome II EGA<br />

= G . . 640x400 16 . . Tecmar VGA/AD<br />

15h = G 80x25 8x14 640x350 . . . Lava Chrome II EGA<br />

16h = G 80x25 8x14 640x350 . . . Lava Chrome II EGA<br />

= G . . 800x600 16 . . Tecmar VGA/AD<br />

17h = T 132x25 . . . . . Tecmar VGA/AD<br />

= T 80x43 8x8 640x348 16 4 B800 Tseng ET4000 BIOS [10]<br />

= G 80x34 8x14 640x480 . . . Lava Chrome II EGA<br />

18h = T 80x30 9x16 720x480 16 1 A000 Realtek RTVGA [12]<br />

= T 132x25 . . mono . B000 Cirrus 5320 chipset<br />

= T 132x44 8x8 1056x352 mono . B000 Tseng Labs EVA<br />

= T 132x44 9x8 1188x352 4gray 2 B000 Tseng ET3000 chipset<br />

= T 132x44 8x8 1056x352 16/256 2 B000 Tseng ET4000 chipset<br />

= G 80x34 8x14 640x480 . . . Lava Chrome II EGA<br />

= G 1024x768 16 . . Tecmar VGA/AD<br />

19h = T 80x43 9x11 720x473 16 1 A000 Realtek RTVGA [12]<br />

= T 132x25 8x14 1056x350 mono . B000 Tseng Labs EVA<br />

= T 132x25 9x14 1188x350 4gray 4 B000 Tseng ET3000 chipset<br />

= T 132x25 8x14 1056x350 16/256 4 B000 Tseng ET4000 chipset<br />

= T 132x34 . . mono . B000 Cirrus 5320 chipset<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-28-


Generated by Foxit PDF Creator © Foxit Software<br />

1Ah = T 80x60 9x8 720x480 16 1<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Realtek RTVGA [12]<br />

= T 132x28 8x13 1056x364 mono . B000 Tseng Labs EVA<br />

= T 132x28 9x13 1188x364 4gray 4 B000 Tseng ET3000 chipset<br />

= T 132x28 8x13 1056x364 16/256 4 B000 Tseng ET4000 chipset<br />

= T 132x44 . . mono . B000 Cirrus 5320 chipset<br />

= G . . 640x350 256 . . Tecmar VGA/AD<br />

1Bh = T 132x25 9x14 1188x350 16 1 A000 Realtek RTVGA [12]<br />

= G . . 640x400 256 . . Tecmar VGA/AD<br />

1Ch = T 132x25 . . . . . Cirrus 5320 chipset<br />

= T 132x30 9x16 1188x480 16 1 A000 Realtek RTVGA [12]<br />

= G . . 640x480 256 . . Tecmar VGA/AD<br />

1Dh = T 132x43 . . . . . Cirrus 5320 chipset<br />

= T 132x43 9x11 1188x473 16 1 A000 Realtek RTVGA [12]<br />

= G . . 800x600 256 . . Tecmar VGA/AD<br />

1Eh = T 132x44 . . . . . Cirrus 5320 chipset<br />

= T 132x60 9x8 1188x480 16 1 A000 Realtek RTVGA [12]<br />

1Fh = G 100x75 8x8 800x600 16 1 A000 Realtek RTVGA<br />

20h = T 132x25 . . 16 . . Avance Logic AL2101<br />

= G 40x16 . 240x128 mono . B000 HP 95LX/100LX/200LX<br />

= G 80x30 8x16 640x480 16 . . C&T 64310/65530 BIOS<br />

= G 120x45 8x16 960x720 16 1 A000 Realtek RTVGA<br />

21h = T 80x25 . . mono . B000 HP 200LX<br />

= T 132x30 . . 16 . . Avance Logic AL2101<br />

= T 132x44 9x9 1188x396 16/256K . B800 WD90C<br />

= T 132x44 9x9 1188x396 16 . B800 Diamond Speedstar 24X<br />

= T 132x60 . . 16 2 B800 Tseng ET4000 chipset [10]<br />

= G 80x43 8x8 720x348 mono . B000 DESQview 2.x+Hercules [4]<br />

= G 128x48 8x16 1024x768 16 1 A000 Realtek RTVGA [12]<br />

22h = T 132x43 . . . . . Allstar Peacock (VGA)<br />

= T 132x43 . . 16 . . Avance Logic AL2101<br />

= T 132x44 8x8 1056x352 . . B800 Tseng Labs EVA<br />

= T 132x44 9x8 1188x352 16/256K 2 B800 Tseng ET3000 chipset<br />

= T 132x44 8x8 1056x352 16/256K 2 B800 Tseng ET4000 chipset<br />

= T 132x44 8x8 1056x352 . . . Ahead Systems EGA2001<br />

= T 132x44 8x8 1056x352 16 2 B800 Ahead B<br />

= T 132x44 8x9 1056x398 16 . . STB Lightspeed ET4000/W32P<br />

= T 132x44 . . 16 . . Orchid Prodesigner VGA<br />

= G 80x43 8x8 720x348 mono . B800 DESQview 2.x+Hercules [4]<br />

= G 96x64 8x16 768x1024 16 1 A000 Realtek RTVGA<br />

= G 100x37 8x16 800x600 16 . . C&T 64310/65530 BIOS<br />

23h = T 132x25 6x14 792x350 . . B800 Tseng Labs EVA<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-29-


Generated by Foxit PDF Creator © Foxit Software<br />

= T 132x25 9x14 1188x350 16/256K 4<br />

http://www.foxitsoftware.com For evaluation only.<br />

B800 Tseng ET3000 chipset<br />

= T 132x25 8x14 1056x350 16/256 4 B800 Tseng ET4000 chipset<br />

= T 132x25 8x14 1056x350 . . . Ahead Systems EGA2001<br />

= T 132x25 8x14 1056x350 16 4 B800 Ahead B<br />

= T 132x25 8x8 1056x200 16 . B800 ATI EGA Wonder,ATI VIP<br />

= T 132x25 . . . . . Cirrus 5320 chipset<br />

= T 132x28 . . . . . Allstar Peacock (VGA)<br />

= T 132x28 . . 16 . . Orchid Prodesigner VGA<br />

= T 132x60 . . 16 . . Avance Logic AL2101<br />

= G 128x48 8x16 1024x768 4 1 A000 Realtek RTVGA<br />

24h = T 80x30 . . 16 . . Avance Logic AL2101<br />

= T 132x25 . . . . . Allstar Peacock (VGA)<br />

= T 132x25 . . 16 . . Orchid Prodesigner VGA<br />

= T 132x28 6x13 792x364 . . B800 Tseng Labs EVA<br />

= T 132x28 9x13 1188x364 16/256K 4 B800 Tseng ET3000 chipset<br />

= T 132x28 8x12 1056x336 16 1 B800 Ahead B<br />

= T 132x28 8x13 1056x364 16/256K 4 B800 Tseng ET4000 chipset<br />

= T 132x28 8x14 1056x392 16 . . STB Lightspeed ET4000/W32P<br />

= T 132x28 . . . . . Cirrus 5320 chipset<br />

= G 64x32 8x16 512x512 256 1 A000 Realtek RTVGA<br />

= G 128x48 8x16 1024x768 16 . . C&T 64310/65530 BIOS<br />

25h = T 80x43 . . 16 . . Avance Logic AL2101<br />

= G 80x60 8x8 640x480 . . A000 Tseng Labs EVA<br />

= G 80x60 8x8 640x480 16/256K 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 640x480 16 . . VEGA VGA<br />

= G 80x60 8x8 640x480 16 . A000 Orchid Prodesigner VGA<br />

= G 80x60 8x8 640x480 16 1 A000 Ahead B (same as 26h)<br />

= G . . 640x480 16 . . NEC GB-1<br />

= G . . 640x480 16 . . Cirrus 5320 chipset<br />

= G . . 640x400 256 . . Realtek RTVGA<br />

26h = T 80x60 8x8 640x480 . . . Tseng Labs EVA<br />

= T 80x60 8x8 640x480 16/256K 3 B800 Tseng ET3000/4000 chipset<br />

= T 80x60 . . . . . Allstar Peacock (VGA)<br />

= T 80x60 . . 16 . . Orchid ProDesigner VGA<br />

= T 80x60 . . 16 . . Avance Logic AL2101<br />

= G 80x60 8x8 640x480 . . . Ahead Systems EGA2001<br />

= G 80x60 8x8 640x480 16 1 A000 Ahead B (same as 25h)<br />

= G . . 640x480 256 . . Realtek RTVGA<br />

27h = T 132x25 8x8 1056x200 mono . B000 ATI EGA Wonder,ATI VIP<br />

= G . . 720x512 16 . . VEGA VGA<br />

= G . . 720x512 16 . . Genoa<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-30-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 100x75 8x8 800x600 256 1<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Realtek RTVGA [12]<br />

= G . . 960x720 16 . . Avance Logic AL2101<br />

28h = T ???x??? . . . . . VEGA VGA<br />

= G . . 512x512 256 . . Avance Logic AL2101<br />

= G . . 1024x768 256 . . Realtek RTVGA (1meg)<br />

= G 160x64 8x16 1280x1024 16 . . Chips&Technologies 64310 [1]<br />

29h = G . . 640x400 256 . . Avance Logic AL2101<br />

= G . . 800x600 16 . . VEGA VGA<br />

= G 100x37 8x16 800x600 16 . A000 Orchid<br />

= G . . 800x600 16 . A000 STB,Genoa,Sigma<br />

= G . . 800x600 16 . . Allstar Peacock (VGA)<br />

= G 100x37 8x16 800x600 16/256K 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 800x600 ??? . . EIZO MDB10<br />

= G . . 800x600 16 . . Cirrus 5320 chipset<br />

= G NA . 800x600 16 . . Compaq QVision 1024/1280<br />

= G . . 1024x1024 256 . . Realtek RTVGA BIOS v3.C10<br />

2Ah = T 100x40 . . . . . Allstar Peacock (VGA)<br />

= T 100x40 8x16 800x640 16 . . Orchid Prodesigner VGA<br />

= T 100x40 8x15 800x600 16/256K 4 B800 Tseng ET3000/4000 chipset<br />

= T 100x40 8x15 800x600 16 . . STB Lightspeed ET4000/W32P<br />

= G . . 640x480 256 . . Avance Logic AL2101<br />

= G . . 1280x1024 16 . . Realtek RTVGA<br />

2Bh = G . . 800x600 16 . . Avance Logic AL2101<br />

2Ch = G . . 800x600 256 . . Avance Logic AL2101<br />

2Dh = G . . 640x350 256 . . VEGA VGA<br />

= G . . 640x350 256/256K . A000 Orchid, Genoa, STB<br />

= G 80x25 8x14 640x350 256/256K 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 640x350 256 . . Cirrus 5320 chipset<br />

= G 80x25 8x14 640x350 256 . . STB Lightspeed ET4000/W32P<br />

= G . . 768x1024 16 . . Avance Logic AL2101<br />

2Eh = G . . 640x480 256 . . VEGA VGA<br />

= G 80x30 8x16 640x480 256/256K . A000 Orchid<br />

= G . . 640x480 256/256K . A000 STB,Genoa,Sigma<br />

= G 80x30 8x16 640x480 256/256K 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 640x480 256/256K . . Compaq QVision 1024/1280<br />

= G . . 768x1024 256 . . Avance Logic AL2101<br />

2Fh = T 160x50 8x8 1280x400 16 4 B800 Ahead B (Wizard/3270)<br />

= G . . 720x512 256 . . VEGA VGA<br />

= G . . 720x512 256 . . Genoa<br />

= G 80x25 8x16 640x400 256/256K 1 A000 Tseng ET4000 chipset<br />

= G . . 1024x768 4 . . Avance Logic AL2101<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-31-


Generated by Foxit PDF Creator © Foxit Software<br />

30h = G 80x30 8x16 640x480<br />

http://www.foxitsoftware.com For evaluation only.<br />

256 . . C&T 64310/65530 BIOS<br />

= G . . . . . B800 AT&T 6300<br />

= G . . 720x350 2 . . 3270 PC<br />

= G . . 800x600 256 . . VEGA VGA<br />

= G 100x37 8x16 800x600 256/256K . A000 Orchid<br />

= G . . 800x600 256/256K . A000 STB,Genoa,Sigma<br />

= G . . 800x600 256 . . Cardinal<br />

= G 100x37 8x16 800x600 256/256K 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 1024x768 16 . . Avance Logic AL2101<br />

31h = G . . 1024x768 256 . . Avance Logic AL2101<br />

32h = T 80x34 8x10 . 16 4 B800 Ahead B (Wizard/3270)<br />

= G . . 640x480 256 . . Compaq QVision 1024/1280<br />

= G 100x37 8x16 800x600 256 . . C&T 64310/65530 BIOS<br />

33h = T 132x44 8x8 . 16 . B800 ATI EGA Wonder,ATI VIP<br />

= T 80x34 8x8 . 16 4 B800 Ahead B (Wizard/3270)<br />

34h = T 80x66 8x8 . 16 4 B800 Ahead B (Wizard/3270)<br />

= G . . 800x600 256 . . Compaq QVision 1024/1280<br />

= G 128x48 8x16 1024x768 256 . . Chips&Technologies 64310<br />

36h = G . . 960x720 16 . . VEGA VGA, STB<br />

= G . . 960x720 16 . A000 Tseng ET3000 only<br />

= G . . 1280x1024 16 . . Avance Logic AL2101<br />

37h = T 132x44 8x8 . mono . B800 ATI EGA Wonder,ATI VIP<br />

= G . . 1024x768 16 . . VEGA VGA<br />

= G 128x48 8x16 1024x768 16 . A000 Orchid<br />

= G . . 1024x768 16 . A000 STB,Genoa,Sigma<br />

= G . . 1024x768 16 . . Definicon<br />

= G 128x48 8x16 1024x768 16 1 A000 Tseng ET3000/4000 chipset<br />

= G . . 1024x768 16 . . Compaq QVision 1024/1280<br />

= G . . 1280x1024 256 . . Avance Logic AL2101<br />

38h = G . . 1024x768 256 . . STB VGA/EM-16 Plus (1MB)<br />

= G 128x48 8x16 1024x768 256/256K 1 A000 Tseng ET4000 chipset<br />

= G . . 1024x768 256 . . Orchid ProDesigner II<br />

= G . . 1024x768 256 . . Compaq QVision 1024/1280<br />

= G 160x64 8x16 1280x1024 256 . . Chips&Technologies 64310 [1]<br />

39h = G . . 1280x1024 16 . . Compaq QVision 1280<br />

3Ah = G . . 1280x1024 256 . . Compaq QVision 1280<br />

3Bh = G . . 512x480 256 . . Compaq QVision 1024/1280<br />

3Ch = G . . 640x400 64K . . Compaq QVision 1024/1280<br />

3Dh = G . . 1280x1024 16 . . Definicon<br />

= G 128x64 8x16 1280x1024 16 1 A000 Tseng ET4000 v3.00 [1,7]<br />

3Eh = G . . 1280x961 16 . . Definicon<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-32-


Generated by Foxit PDF Creator © Foxit Software<br />

= G . . 640x480 64K<br />

http://www.foxitsoftware.com For evaluation only.<br />

. . Compaq QVision 1024/1280<br />

3Fh = G . . 1280x1024 256 . . Hercules ??? (ET4000W32)<br />

= G . . 800x600 64K . . Compaq QVision 1024/1280<br />

40h = T 80x43 . . . . . VEGA VGA, Tecmar VGA/AD<br />

= T 80x43 . . . . . Video7 V-RAM VGA<br />

= T 80x43 . . . . . Tatung VGA<br />

= T 100x30 . . 16 . . MORSE VGA<br />

= T 100x30 . . . . . Cirrus 510/520 chipset<br />

= T 80x25 . 720x350 mono . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 320x200 64K . . Avance Logic AL2101<br />

= G 80x25 8x16 640x400 2 1 B800 AT&T 6300, AT&T VDC600<br />

= G 80x25 8x16 640x400 2 1 B800 Olivetti Quaderno<br />

= G 80x25 8x16 640x400 2 1 B800 Compaq Portable<br />

= G 80x30 8x16 640x480 32K . . Chips&Technologies 64310<br />

= G . . 1024x768 64K . . Compaq QVision 1280<br />

41h = T 132x25 . . . . . VEGA VGA<br />

= T 132x25 . . . . . Tatung VGA<br />

= T 132x25 . . . . . Video7 V-RAM VGA<br />

= T 100x50 . . 16 . . MORSE VGA<br />

= T 100x50 . . . . . Cirrus 510/520 chipset<br />

= T 80x34 9x14 720x476 16/256K . B800 WD90C<br />

= T 80x34 9x14 . 16 . B800 Diamond Speedstar 24X<br />

= G . . 512x512 64K . . Avance Logic AL2101<br />

= G . . 640x200 16 1 . AT&T 6300<br />

= G 80x30 8x16 640x480 64K . . Chips&Technologies 64310<br />

= G 80x25 . 720x348 mono . B000 Genoa SuperEGA BIOS 3.0+<br />

42h = T 132x43 . . . . . VEGA VGA<br />

= T 132x43 . . . . . Tatung VGA<br />

= T 132x43 . . . . . Video7 V-RAM VGA<br />

= T 80x34 9x10 . 4 4 B800 Ahead B (Wizard/3270)<br />

= T 100x60 . . 16 . . MORSE VGA<br />

= T 100x60 . . . . . Cirrus 510/520 chipset<br />

= G 80x25 8x16 640x400 16 . . AT&T 6300, AT&T VDC600<br />

= G . . 640x400 64K . . Avance Logic AL2101<br />

= G 80x25 . 720x348 mono . B800 Genoa SuperEGA BIOS 3.0+<br />

= G 100x37 8x16 800x600 32K . . Chips&Technologies 64310<br />

43h = T 80x60 . . . . . VEGA VGA<br />

= T 80x60 . . . . . Tatung VGA<br />

= T 80x60 . . . . . Video7 V-RAM VGA<br />

= T 80x45 9x8 . 4 4 B800 Ahead B (Wizard/3270)<br />

= T 100x75 . . 16 . . MORSE VGA<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-33-


Generated by Foxit PDF Creator © Foxit Software<br />

= T 80x29 . 720x348 mono<br />

http://www.foxitsoftware.com For evaluation only.<br />

. . Genoa SuperEGA BIOS 3.0+<br />

= G . . 640x200 of 640x400 viewport AT&T 6300 (unsupported)<br />

= G . . 640x480 64K . . Avance Logic AL2101<br />

= G 100x37 8x16 800x600 64K . . Chips&Technologies 64310<br />

44h = disable VDC and DEB output . AT&T 6300<br />

= T 100x60 . . . . . VEGA VGA<br />

= T 100x60 . . . . . Tatung VGA<br />

= T 100x60 . . . . . Video7 V-RAM VGA<br />

= T 80x32 . 720x352 mono . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 800x600 64K . . Avance Logic AL2101<br />

45h = T 132x28 . . . . . Tatung VGA<br />

= T 132x28 . . . . . Video7 V-RAM VGA<br />

= T 80x44 . 720x352 mono . . Genoa SuperEGA BIOS 3.0+<br />

46h = T 132x25 8x14 . mono . . Genoa 6400<br />

= T 132x25 9x14 . mono . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x40 8x15 800x600 2 . . AT&T VDC600<br />

47h = T 132x29 8x12 . mono . . Genoa 6400<br />

= T 132x29 9x12 . mono . . Genoa SuperEGA BIOS 3.0+<br />

= T 132x28 9x16 1188x448 16/256K . B800 WD90C<br />

= T 132x28 9x16 . 16 . B800 Diamond Speedstar 24X<br />

= G 100x37 8x16 800x600 16 . . AT&T VDC600<br />

48h = T 132x32 8x12 . mono . . Genoa 6400<br />

= T 132x32 9x11 . mono . . Genoa SuperEGA BIOS 3.0+<br />

= G 80x50 8x8 640x400 2 . B800 AT&T 6300, AT&T VDC600<br />

= G 80x50 8x8 640x400 2 . B800 Olivetti Quaderno<br />

49h = T 132x44 8x8 . mono . . Genoa 6400<br />

= T 132x44 9x8 . mono . . Genoa SuperEGA BIOS 3.0+<br />

= G 80x30 8x16 640x480 . . . Lava Chrome II EGA<br />

= G 80x30 8x16 640x480 . . A000 Diamond Stealth64 Video 2xx1<br />

4Bh = G 100x37 8x16 800x600 . . A000 Diamond Stealth64 Video 2xx1<br />

4Dh = T 120x25 . . . . . VEGA VGA<br />

= G . . 512x480 16M . . Compaq QVision 1024/1280<br />

= G 128x48 8x16 1024x768 . . A000 Diamond Stealth64 Video 2xx1<br />

4Eh = T 120x43 . . . . . VEGA VGA<br />

= T 80x60 8x8 . 16/256K . B800 Oak OTI-067/OTI-077 [8]<br />

= G . . 640x400 16M . . Compaq QVision 1024/1280<br />

= G 144x54 8x16 1152x864 . . A000 Diamond Stealth64 Video 2xx1<br />

4Fh = T 132x25 . . . . . VEGA VGA<br />

= T 132x60 . . . . . some Oak Tech VGA [8]<br />

= G . . 640x480 16M . . Compaq QVision 1280<br />

50h = T 80x30 8x16 . 16/256K . B800 Trident TVGA 8800/8900<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-34-


Generated by Foxit PDF Creator © Foxit Software<br />

= T 80x34 . . . . . Lava Chrome II EGA<br />

http://www.foxitsoftware.com For evaluation only.<br />

= T 80x43 . . mono . . VEGA VGA<br />

= T 132x25 9x14 . mono . . Ahead Systems EGA2001<br />

= T 132x25 9x14 . 4 4 B800 Ahead B<br />

= T 132x25 8x14 . 16 8 B800 OAK Technologies VGA-16<br />

= T 132x25 8x14 . 16/256K . B800 Oak OTI-037/067/077 [8]<br />

= T 132x25 8x14 1056x350 16 8 B800 UM587 chipset<br />

= T 132x30 . . 16 . . MORSE VGA<br />

= T 132x30 . . . . . Cirrus 510/520 chipset<br />

= G 80x30 8x16 640x480 16 . . Paradise EGA-480<br />

= G 80x30 8x16 640x480 16 . . NEL Electronics BIOS<br />

= G 80x30 8x16 640x480 16M . . Chips&Technologies 64310<br />

= G . . 640x480 mono??? . . Taxan 565 EGA<br />

= G 40x25 8x8 320x200 . . . Genoa SuperEGA BIOS 3.0+<br />

51h = T 80x30 8x16 . . . . Paradise EGA-480<br />

= T 80x30 9x16 . . . . NEL Electronics BIOS<br />

= T 80x30 . . . . . Lava Chrome II EGA<br />

= T 80x43 8x11 . 16/256K . B800 Trident TVGA 8800/8900<br />

= T 132x25 . . mono . . VEGA VGA<br />

= T 132x28 9x12 . 4 4 B800 Ahead B<br />

= T 132x43 8x8 . 16 5 B800 OAK Technologies VGA-16<br />

= T 132x43 8x8 . 16/256K . B800 Oak OTI-037/067/077<br />

= T 132x43 8x8 1056x344 16 5 B800 UM587 chipset<br />

= T 132x50 . . 16 . . MORSE VGA<br />

= T 132x50 . . . . . Cirrus 510/520 chipset<br />

= G 80x34 8x14 640x480 16 . . ATI EGA Wonder<br />

= G 80x25 8x8 640x200 . . . Genoa SuperEGA BIOS 3.0+<br />

52h = T 80x60 . . . . . Lava Chrome II EGA<br />

= T 80x60 8x8 . 16/256K . B800 Trident TVGA 8800/8900<br />

= T 132x43 . . mono . . VEGA VGA<br />

= T 132x44 9x8 . mono . . Ahead Systems EGA2001<br />

= T 132x44 9x8 . 4 2 B800 Ahead B<br />

= T 132x60 . . 16 . . MORSE VGA<br />

= T 132x60 . . . . . Cirrus 510/520 chipset<br />

= G 80x25 8x19 640x480 16 1 A000 AX VGA (Kanji&superimpose)<br />

= G 94x29 8x14 752x410 16 . . ATI EGA Wonder<br />

= G 100x75 8x8 800x600 16 1 A000 OAK Technologies VGA-16<br />

= G 100x75 8x8 800x600 16 . A000 Oak OTI-037 chipset [8]<br />

= G 100x37 8x16 800x600 16 . A000 Oak OTI-067/077 chips [8]<br />

= G 100x75 8x8 800x600 16 . A000 UM587 chipset<br />

= G 128x30 8x16 1024x480 16 . . NEL Electronics BIOS<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-35-


Generated by Foxit PDF Creator © Foxit Software<br />

53h = T 80x25 8x16 . . . . NEL Electronics BIOS<br />

http://www.foxitsoftware.com For evaluation only.<br />

= T 80x60 . . 16 . . MORSE VGA<br />

= T 80x60 . . . . . Cirrus 510/520 chipset<br />

= T 132x25 8x14 . 16/256K . B800 Trident TVGA 8800/8900<br />

= T 132x43 . . . . . Lava Chrome II EGA<br />

= G 80x25 8x19 640x480 16 1 A000 AX VGA (Kanji, no superimp.)<br />

= G . . 640x480 256 . . Oak VGA<br />

= G 80x30 8x16 640x480 256 . A000 Oak OTI-067/OTI-077 [8]<br />

= G 100x40 8x14 800x560 16 . . ATI EGA Wonder,ATI VIP<br />

= G . . . . . . AX PC<br />

54h = T 132x25 . . . . . Lava Chrome II EGA<br />

= T 132x30 8x16 . 16/256K . B800 Trident TVGA 8800/8900<br />

= T 132x43 8x8 . . . . Paradise EGA-480<br />

= T 132x43 8x8 . . . . NEL Electronics BIOS<br />

= T 132x43 7x9 . 16/256K . B800 Paradise VGA<br />

= T 132x43 8x9 . 16/256K . B800 Paradise VGA on multisync<br />

= T 132x43 . . . . . Taxan 565 EGA<br />

= T 132x43 . . . . . AST VGA Plus<br />

= T 132x43 . . . . . Hewlett-Packard D1180A<br />

= T 132x43 7x9 . 16 . . AT&T VDC600<br />

= T 132x43 9x9 1188x387 16/256K . B800 WD90C<br />

= T 132x43 9x9 1188x387 16/256K . B800 Diamond Speedstar 24X<br />

= T 132x43 9x9 1188x387 16/256K . B800 Diamond Stealth 24<br />

= T 132x43 8x8 . . . B800 Diamond Stealth64 Video 2xx1<br />

= T 132x43 8x8 1056x350 16/256K . . Cirrus CL-GD5420/5422/5426<br />

= T 132x50 8x8 . 16 . A000 NCR 77C22 [9]<br />

= G 100x42 8x14 800x600 16 . A000 ATI EGA Wonder, VGA Wonder<br />

= G 100x42 8x14 800x600 16 . A000 ATI Ultra 8514A, ATI XL<br />

= G . . 800x600 256 . A000 Oak VGA<br />

= G 100x37 8x16 800x600 256 . A000 Oak OTI-067/077 chips [8]<br />

55h = T 80x66 8x8 . 16/256K . A000 ATI VIP<br />

= T 132x25 8x14 . . . . Paradise EGA-480<br />

= T 132x25 8x14 . . . . NEL Electronics BIOS<br />

= T 132x25 7x16 . 16/256K . B800 Paradise VGA<br />

= T 132x25 8x16 . 16/256K . B800 Paradise VGA on multisync<br />

= T 132x25 . . . . . Taxan 565 EGA<br />

= T 132x25 . . . . . AST VGA Plus<br />

= T 132x25 . . . . . Hewlett-Packard D1180A<br />

= T 132x25 7x16 . 16 . . AT&T VDC600<br />

= T 132x25 8x16 . 16 . A000 NCR 77C22 [9]<br />

= T 132x25 9x16 1188x400 16/256K . B800 WD90C<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-36-


Generated by Foxit PDF Creator © Foxit Software<br />

= T 132x25 9x16 1188x400 16/256K .<br />

http://www.foxitsoftware.com For evaluation only.<br />

B800 Diamond Speedstar 24X<br />

= T 132x25 9x16 1188x400 16/256K . B800 Diamond Stealth 24<br />

= T 132x25 8x16 . . . B800 Diamond Stealth64 Video 2xx1<br />

= T 132x25 8x14 1056x350 16/256K . . Cirrus CL-GD5420/5422/5426<br />

= T 132x43 8x11 . 16/256K . B800 Trident TVGA 8800/8900<br />

= G 94x29 8x14 752x410 . . . Lava Chrome II EGA<br />

= G 128x48 8x16 1024x768 16/256K . A000 ATI VGA Wonder v4+ [5]<br />

= G . . 1024x768 16/256K . . ATI VGA Wonder Plus<br />

= G . . 1024x768 16/256K . . ATI Ultra 8514A,ATI XL<br />

= G 128x48 8x16 1024x768 4 . A000 Oak OTI-067/077 chips [8]<br />

56h = T 132x43 8x8 . 3??? 2 B000 NSI Smart EGA+<br />

= T 132x43 7x9 . 4 . B000 Paradise VGA<br />

= T 132x43 8x9 . 4 . B000 Paradise VGA on multisync<br />

= T 132x43 . . mono . . Taxan 565 EGA<br />

= T 132x43 7x9 . 2 . . AT&T VDC600<br />

= T 132x43 9x8 . . . . NEL Electronics BIOS<br />

= T 132x50 8x8 . 4 . A000 NCR 77C22 [9]<br />

= T 132x60 8x8 . 16/256K . B800 Trident TVGA 8800/8900<br />

= G . . 1024x768 16 . A000 Oak VGA<br />

= G 128x48 8x16 1024x768 16 . A000 Oak OTI-067/077 chips [8]<br />

57h = T 132x25 8x14 . 3??? 4 B000 NSI Smart EGA+<br />

= T 132x25 7x16 . 4 . B000 Paradise VGA<br />

= T 132x25 8x16 . 4 . B000 Paradise VGA on multisync<br />

= T 132x25 9x14 . . . . NEL Electronics BIOS<br />

= T 132x25 . . mono . . Taxan 565 EGA<br />

= T 132x25 7x16 . 2 . . AT&T VDC600<br />

= T 132x25 9x14 . 16/256K . B800 Trident TVGA 8800/8900<br />

= T 132x25 8x16 . 4 . A000 NCR 77C22 [9]<br />

= G 96x48 8x16 768x1024 16 . A000 Oak OTI-067/077 chips [8]<br />

58h = T 80x33 8x14 . 16 . B800 ATI EGA Wonder,ATI VIP<br />

= T 80x32 9x16 . 16 . . Genoa 6400<br />

= T 80x43 8x8 . . . . NEL Electronics BIOS<br />

= T 132x30 9x16 . 16/256K . B800 Trident TVGA 8800/8900<br />

= G 100x75 8x8 800x600 16/256K . A000 Paradise VGA<br />

= G 100x75 8x8 800x600 16 . . AT&T VDC600<br />

= G 100x75 8x8 800x600 16 . A000 NCR 77C22 [9]<br />

= G 100x75 8x8 800x600 16 . A000 Diamond Speedstar 24X<br />

= G 100x75 8x8 800x600 16/256K . A000 Paradise VGA, WD90C<br />

= G . . 800x600 16 . . AST VGA Plus, Compaq VGA<br />

= G . . 800x600 16 . . Dell VGA<br />

= G . . 800x600 16 . . Hewlett-Packard D1180A<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-37-


Generated by Foxit PDF Creator © Foxit Software<br />

= G . . 800x600 ??? . . ELT VGA PLUS 16<br />

http://www.foxitsoftware.com For evaluation only.<br />

= G 100x37 8x16 800x600 16/256K . A000 Cirrus CL-GD5420/5422/5426<br />

= G 160x64 8x16 1280x1024 16 . A000 Oak OTI-077 chipset [8]<br />

59h = T 80x43 9x8 . . . . NEL Electronics BIOS<br />

= T 80x66 8x8 . 16/256K . A000 ATI VIP<br />

= T 132x43 9x11 . 16/256K . B800 Trident TVGA 8800/8900<br />

= G 100x75 8x8 800x600 2 . A000 Paradise VGA<br />

= G 100x75 8x8 800x600 2 . . AT&T VDC600<br />

= G . . 800x600 2 . . AST VGA Plus, Compaq VGA<br />

= G . . 800x600 2 . . Dell VGA<br />

= G . . 800x600 2 . . Hewlett-Packard D1180A<br />

= G 100x75 8x8 800x600 2 . A000 NCR 77C22 [9]<br />

= G 128x48 8x16 1024x768 256 . A000 Oak OTI-077 chipset [8]<br />

5Ah = T 80x60 8x8 . . . . NEL Electronics BIOS<br />

= T 132x60 9x8 . 16/256K . B800 Trident TVGA 8800/8900<br />

= G 128x48 8x16 1024x768 2 . A000 NCR 77C22 [9]<br />

5Bh = T 80x30 8x16 . . . B800 ATI VGA Wonder (undoc)<br />

= G . . 640x350 256 . . Genoa 6400<br />

= G 80x25 8x16 640x400 32K . A000 Oak OTI-067/077 chips [8]<br />

= G . . 800x600 16 . . Maxxon, SEFCO TVGA, Imtec<br />

= G 100x75 8x8 800x600 16/256K . A000 Trident TVGA 8800, 8900<br />

= G . . 800x600 ??? . . Vobis MVGA<br />

= G 100x37 8x16 800x600 . . . NEL Electronics BIOS<br />

= G 128x48 8x16 1024x768 16 . A000 NCR 77C22 [1,9]<br />

5Ch = T 100x37 8x16 . . . . NEL Electronics BIOS<br />

= G . . 640x400 256 . . Logix, ATI Prism Elite<br />

= G . . 640x400 256 . . Maxxon, SEFCO TVGA, Imtec<br />

= G 80x25 8x16 640x400 256/256K . A000 Zymos Poach, Hi Res 512<br />

= G 80x25 8x16 640x400 256/256K . A000 Trident TVGA 8800/8900<br />

= G 80x30 8x16 640x480 256 . . Genoa 6400<br />

= G 80x30 8x16 640x480 32K . A000 Oak OTI-077 chipset [8]<br />

= G 100x75 8x8 800x600 256 . A000 NCR 77C22 [9]<br />

= G 100x75 8x8 800x600 256/256K . A000 WD90C<br />

= G 100x75 8x8 800x600 256/256K . A000 Diamond Speedstar 24X<br />

= G 100x37 8x16 800x600 256/256K . A000 Cirrus CL-GD5420/5422/5426<br />

5Dh = T 100x75 8x8 . . . . NEL Electronics BIOS<br />

= G 80x25 8x14 640x350 64K . . STB Lightspeed ET4000/W32P<br />

= G . . 640x480 256 . . Logix, ATI Prism Elite<br />

= G . . 640x480 256 . . Maxxon, SEFCO TVGA, Imtec<br />

= G 80x30 8x16 640x480 256/256K . A000 Zymos Poach, Hi Res 512<br />

= G 80x30 8x16 640x480 256/256K . A000 Trident TVGA 8800 (512K)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-38-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 128x48 8x16 1024x768 16 . A000 NCR 77C22 [9]<br />

http://www.foxitsoftware.com For evaluation only.<br />

= G 128x48 8x16 1024x768 16/256K . A000 WD90C<br />

= G 128x48 8x16 1024x768 16 . A000 Diamond Speedstar 24X<br />

= G 128x48 8x16 1024x768 16/256K . A000 Cirrus CL-GD5420/5422/5426<br />

5Eh = G . . 640x400 256 . . Paradise VGA,VEGA VGA<br />

= G . . 640x400 256 . . AST VGA Plus, NCR 77C22<br />

= G . . 640x400 256 . . Compaq VGA, Dell VGA<br />

= G 80x25 8x16 640x400 256 . . AT&T VDC600<br />

= G 80x25 8x16 640x400 256 . A000 NCR 77C22 [9]<br />

= G 80x25 8x16 640x400 256/256K . A000 WD90C<br />

= G 80x25 8x16 640x400 256/256K . A000 Diamond Speedstar 24X<br />

= G . . 800x600 16 . . Logix, ATI Prism Elite<br />

= G 100x37 8x16 800x600 16 . . NEL Electronics BIOS<br />

= G 100x75 8x8 800x600 256 . . Genoa 6400<br />

= G 100x75 8x8 800x600 256/256K . A000 Zymos Poach, Trident 8900<br />

= G 100x75 8x8 800x600 256/256K . A000 Hi Res 512<br />

5Fh = G 80x25 8x16 640x400 64K . . STB Lightspeed ET4000/W32P<br />

= G . . 640x480 256 . . Paradise VGA<br />

= G . . 640x480 256 . . AST VGA Plus, NCR 77C22<br />

= G . . 640x480 256 . . Compaq VGA, Dell VGA<br />

= G . . 640x480 256 . . Hewlett-Packard D1180A<br />

= G 80x30 8x16 640x480 256 . . AT&T VDC600 (512K)<br />

= G 80x30 8x16 640x480 256 . A000 NCR 77C22 [9]<br />

= G 80x30 8x16 640x480 256/256K . A000 WD90C<br />

= G 80x30 8x16 640x480 256/256K . A000 Diamond Speedstar 24X<br />

= G 80x30 8x16 640x480 256/256K . A000 Cirrus CL-GD5420/5422/5426<br />

= G . . 1024x768 16 . . Logix, ATI Prism Elite<br />

= G . . 1024x768 16 . . Maxxon, Imtec<br />

= G 128x48 8x16 1024x768 16 . . Genoa 6400<br />

= G 128x48 8x16 1024x768 16/256K . A000 Zymos Poach, Hi Res 512<br />

= G 128x48 8x16 1024x768 16/256K . A000 Trident TVGA 88/8900 512K<br />

60h = T 132x25 8x14 . 16/64 8 B800 Quadram Ultra VGA<br />

= T 132x25 8x14 . 16 . . Genoa 6400<br />

= T 132x25 8x14 . 16 . . Genoa SuperEGA BIOS 3.0+<br />

= T 132x25 . . . . . Cirrus 5320 chipset<br />

= T 132x25 8x16 1056x400 16 . B800 Chips&Technologies chipset<br />

= G 80x??? . ???x400 . . . Corona/Cordata BIOS 4.10+<br />

= G 80x25 8x16 640x400 256 1 A000 Ahead A, Ahead B<br />

= G . . 752x410 . . . VEGA VGA<br />

= G . . 752x410 16 . . Tatung VGA<br />

= G . . 752x410 16 . . Video7 V-RAM VGA<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-39-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 128x48 8x16 1024x768 4/256K .<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Trident TVGA 8900<br />

= G 128x48 8x16 1024x768 256/256K . A000 WD90C<br />

= G 128x48 8x16 1024x768 256/256K . A000 Diamond Speedstar 24X<br />

= G 128x48 8x16 1024x768 256/256K . A000 Cirrus CL-GD5420/5422/5426<br />

= G 144x54 8x16 1152x864 . . A000 Diamond Stealth64 Video 2xx1<br />

61h = T 132x29 8x12 . 16/64 8 B800 Quadram Ultra VGA<br />

= T 132x29 8x8 . 16 . . Genoa 6400<br />

= T 132x29 8x8 . 16 . . Genoa SuperEGA BIOS 3.0+<br />

= T 132x50 . . . . . Cirrus 5320 chipset<br />

= T 132x50 8x8 1056x400 16 . B800 Chips&Technologies chipset<br />

= T 132x50 8x16 1056x800 16 . B800 Chips&Technologies 64310<br />

= G . . ???x400 . . . Corona/Cordata BIOS 4.10+<br />

= G 80x25 8x16 640x400 256 . A000 ATI VGA Wonder,VGA Wonder+<br />

= G 80x25 8x16 640x400 256 . A000 ATI Ultra 8514A,ATI XL<br />

= G 80x25 8x16 640x400 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 80x30 8x16 640x480 256 1 A000 Ahead A, Ahead B (512K)<br />

= G . . 720x540 . . . VEGA VGA<br />

= G . . 720x540 16 . . Tatung VGA<br />

= G . . 720x540 16 . . Video7 V-RAM VGA<br />

= G 96x64 8x16 768x1024 16/256K . A000 Trident TVGA 88/8900 512K<br />

= G 128x48 8x16 1024x768 256 . A000 NCR 77C22 [1,9]<br />

= G 144x54 8x16 1152x864 . . A000 Diamond Stealth64 Video 2xx1<br />

62h = T 132x32 8x11 . 16/64 6 B800 Quadram Ultra VGA<br />

= T 132x32 8x12 . 16 . . Genoa 6400<br />

= T 132x32 8x11 . 16 . . Genoa SuperEGA BIOS 3.0+<br />

= T 132x43 8x8 1056x344 16 . B800 C&T 82C450 BIOS<br />

= G . . 640x450 16 . . Cirrus 510/520 chipset<br />

= G 80x30 8x16 640x480 256 . A000 ATI VGA Wonder,VGA Wonder+<br />

= G 80x30 8x16 640x480 256 . A000 ATI Ultra 8514A,ATI XL<br />

= G 80x30 8x16 640x480 32K . A000 WD90C<br />

= G 80x30 8x16 640x480 32K . A000 Diamond Speedstar 24X<br />

= G . . 800x600 . . . VEGA VGA<br />

= G . . 800x600 16 . . Tatung VGA<br />

= G . . 800x600 16 . . Video7 V-RAM VGA<br />

= G 100x75 8x8 800x600 256 1 A000 Ahead A, Ahead B (512K)<br />

= G 128x48 8x16 1024x768 256/256K . A000 Trident TVGA 8900, Zymos<br />

= G 128x48 8x16 1024x768 256 . A000 NCR 77C22 [9]<br />

63h = T 132x44 8x8 . 16/64 5 B800 Quadram Ultra VGA<br />

= T 132x44 8x8 . 16 . . Genoa 6400<br />

= T 132x44 8x8 . 16 . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 720x540 16 . . MORSE VGA<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-40-


Generated by Foxit PDF Creator © Foxit Software<br />

= G . . 720x540<br />

http://www.foxitsoftware.com For evaluation only.<br />

16 . . Cirrus 510/520 chipset<br />

= G 100x42 8x14 800x600 256 . A000 ATI VGA Wonder,VGA Wonder+<br />

= G 100x42 8x14 800x600 256 . A000 ATI Ultra 8514A,ATI XL<br />

= G . . 800x600 32K . A000 WD90C<br />

= G . . 800x600 32K . A000 Diamond Speedstar 24X<br />

= G 128x48 7x16 1024x768 256 1 A000 Ahead B (1MB)<br />

= G . . 1024x768 2 . . Video7 V-RAM VGA<br />

64h = T 132x60 8x8 . 16 . . Genoa 6400<br />

= T 80x43 8x8 528x344 16 . B800 C&T 82C450 BIOS<br />

= G . . 640x480 64K . A000 Cirrus CL-GD 5422/5426<br />

= G . . 800x600 16 . . MORSE VGA<br />

= G . . 800x600 16 . . Cirrus 510/520 chipset<br />

= G . . 800x600 ??? . . SAMPO-Mira VGA<br />

= G . . 1024x768 4 . . Video7 V-RAM VGA<br />

= G 128x48 8x16 1024x768 256 . A000 ATI VGA Wonder Plus,ATI XL<br />

= G 160x64 8x16 1280x1024 16/256K . A000 WD90C [1]<br />

= G 160x64 8x16 1280x1024 16/256K . A000 Diamond Speedstar 24X [1]<br />

65h = T 80x50 8x8 528x400 16 . B800 C&T 82C450 BIOS<br />

= G . . 800x600 64K . A000 Cirrus CL-GD 5422/5426<br />

= G . . 1024x768 16 . . Video7 V-RAM VGA<br />

= G 128x48 8x16 1024x768 16 . A000 ATI VGA Wonder<br />

66h = T 80x50 8x8 640x400 16/256K . B800 WD90C<br />

= T 80x50 8x8 . 16 . B800 Diamond Speedstar 24X<br />

= G . . 640x400 256 . . Tatung VGA<br />

= G . . 640x400 256 . . Video7 V-RAM VGA<br />

= G . . 640x480 32K . A000 Cirrus CL-GD 5422/5426<br />

67h = T 80x43 8x8 640x344 16/256K . B800 WD90C<br />

= T 80x43 8x8 . 16 . B800 Diamond Speedstar 24X<br />

= G . . 640x480 256 . . Video7 V-RAM VGA<br />

= G . . 800x600 32K . A000 Cirrus CL-GD 5422/5426<br />

= G 128x48 8x16 1024x768 4 . A000 ATI VGA Wonder<br />

= G 160x64 8x16 1280x1024 16 . A000 NCR 77C22 [1,9]<br />

68h = G 80x25 8x16 640x400 . . A000 Diamond Stealth64 Video 2xx1<br />

69h = T 132x50 8x8 1056x400 16/256K . B800 WD90C<br />

= T 132x50 8x8 . 16 . B800 Diamond Speedstar 24X<br />

= G 80x30 8x16 640x480 . . A000 Diamond Stealth64 Video 2xx1<br />

= G . . 720x540 256 . A000 Video7 V-RAM VGA<br />

6Ah = G . . 800x600 16 . A000 VESA standard interface<br />

= G 100x75 8x8 800x600 16 . A000 Genoa 6400<br />

= G 100x75 8x8 800x600 16 . A000 Diamond Speedstar 24X<br />

= G . . 800x600 16 . A000 Ahead A<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-41-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 100x75 8x8 800x600 16 1<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Ahead B (VESA) [see 71h]<br />

= G . . 800x600 16 . . Zymos Poach, Hi Res 512<br />

= G . . 800x600 16 . . Epson LT-386SX in CRT Mode<br />

= G . . 800x600 16 . . Compuadd 316SL in CRT Mode<br />

= G 100x37 8x16 800x600 16/256K . A000 Cirrus CL-GD5420/5422/5426<br />

= G 100x37 8x16 800x600 16 . A000 Diamond Stealth64 Video 2xx1<br />

= G 100x42 8x14 800x600 . . A000 ATI VGA Wonder (undoc)<br />

= G . . 800x600 16 . A000 Chips&Technologies chipset<br />

= G 160x64 8x16 1280x1024 256 . A000 NCR 77C22 [1,9]<br />

6Bh = T 100x37 8x16 . 16 . . Genoa 6400<br />

= T 100x37 8x16 . . . . NEL Electronics BIOS<br />

= G 100x37 8x16 800x600 . . A000 Diamond Stealth64 Video 2xx1<br />

6Ch = G 80x30 8x16 640x480 16M . A000 Trident 8900CL/BIOS C04<br />

= G 100x75 8x8 800x600 256 . . Genoa 6400<br />

= G 128x48 8x16 1024x768 2 . A000 Diamond Stealth64 Video 2xx1<br />

= G 160x60 8x16 1280x960 16/256K . A000 WD90C [1]<br />

= G 160x60 8x16 1280x960 16/256K . A000 Diamond Speedstar 24X [1]<br />

= G 160x64 8x16 1280x1024 16/256K . A000 Cirrus CL-GD 5422/5426 [1]<br />

6Dh = G 80x25 8x14 640x350 64K . A000 STB Lightspeed ET4000/W32P<br />

= G 128x48 8x16 1024x768 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 160x64 8x16 1280x1024 256/256K . A000 Cirrus CL-GD 5422/5426 [1]<br />

6Eh = G 40x25 8x8 320x200 64K . A000 Cirrus CL-GD 5422/5426<br />

= G 160x64 8x16 1280x1024 2 . A000 Diamond Stealth64 Video 2xx1<br />

6Fh = G 40x25 8x8 320x200 16M . A000 Cirrus CL-GD 5422/5426<br />

= G 160x64 8x16 1280x1024 . . A000 Diamond Stealth64 Video 2xx1<br />

70h = extended mode set (see AX=0070h) . Everex Micro Enhancer EGA<br />

= T 40x25 8x8 . 16 8 B800 Quadram (CGA double scan)<br />

= T 40x25 8x8 (CGA dblscan) . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 360x480 256 . . Cirrus 510/520/5320 chips<br />

= G 90x28 8x14 720x392 16 1 A000 Ahead B<br />

= G 80x30 8x16 640x480 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 100x38 8x16 800x600 16 . A000 C&T chipset, Cardinal<br />

= G . . 1024x480 256 . A000 Trident 8900C BIOS C3.0<br />

71h = T 80x25 8x8 . 16 8 B800 Quadram (CGA double scan)<br />

= T 80x25 8x8 (CGA dblscan) . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 528x400 256 . . Cirrus 510/520 chipset<br />

= G 80x30 8x16 640x480 16M . A000 Cirrus CL-GD 5422/5426<br />

= G 80x30 8x16 640x480 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 100x35 8x16 800x600 16/64 . A000 NSI Smart EGA+<br />

= G 100x75 8x8 800x600 16 1 A000 Ahead B (same as 6Ah)<br />

= G . . 960x720 16 . . C&T chipset, Cardinal<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-42-


Generated by Foxit PDF Creator © Foxit Software<br />

= G . . 1024x480 256 .<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Trident 8900C BIOS C3.0<br />

72h = T 80x60 8x8 . 16 . B800 Quadram Ultra VGA<br />

= T 80x60 8x8 . 16 . B800 Genoa 6400<br />

= T 80x60 8x8 . 16 . B800 Genoa SuperEGA BIOS 3.0+<br />

= G . . 528x480 256 . . Cirrus 510/520 chipset<br />

= G 80x25 8x19 640x480 16 1 A000 DOS/V w/ any VGA<br />

= G 80x30 8x16 640x480 . . A000 Diamond Stealth64 Video 2xx1<br />

= G . . 640x480 32K . A000 ATI<br />

= G . . 640x480 16M . A000 WD90C<br />

= G . . 640x480 16M . A000 Diamond Speedstar 24X<br />

= G . . 1024x768 16 . . C&T chipset, Cardinal<br />

= G 128x48 8x16 1024x768i 16 . A000 C&T 82C450 BIOS<br />

= G 128x48 8x16 1024x768 16 . A000 C&T 65530 BIOS (multisync)<br />

73h = G 80x60 8x8 640x480 16 . A000 Quadram Ultra VGA<br />

= G 80x60 8x8 640x480 16 . . Genoa 6400<br />

= G 80x60 8x8 640x480 16 . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x37 8x16 800x600 . . A000 Diamond Stealth64 Video 2xx1<br />

= T 80x25 8x19 640x475 16 1 none DOS/V, emulated in VGA graph<br />

74h = T 80x66 8x8 . 16 . B800 Quadram Ultra VGA<br />

= T 80x66 8x8 . 16 . B800 Genoa 6400<br />

= T 80x66 8x8 . 16 . B800 Genoa SuperEGA BIOS 3.0+<br />

= G . . 640x400 2 . B800 Toshiba 3100 AT&T mode<br />

= G 80x30 8x16 640x480 32K . A000 Trident 8900C/BIOS C03<br />

= G 100x37 8x16 800x600 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 128x48 8x16 1024x768 16 1 A000 Ahead A, Ahead B (512K)<br />

= G . . 1024x768 64K . A000 Cirrus CL-GD 5422/5426 [1]<br />

75h = G 80x30 8x16 640x480 64K . A000 Trident 8900C/BIOS C03<br />

= G 80x66 . 640x528 16??? . A000 Quadram Ultra VGA<br />

= G 80x66 . 640x528 16 . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x37 8x16 800x600 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 128x48 8x16 1024x768 4 1 A000 Ahead B<br />

= G 128x48 8x16 1024x768 16 . A000 Chips&Technologies 64310<br />

76h = T 94x29 8x14 . 16 . B800 Quadram Ultra VGA<br />

= T 94x29 8x14 . . . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x75 8x8 800x600 32K . A000 Trident 8900C/BIOS C03<br />

= G 128x48 8x16 1024x768 2 1 A000 Ahead B<br />

= G 128x48 8x16 1024x768 . . A000 Diamond Stealth64 Video 2xx1<br />

= G 160x64 8x16 1280x1024 16 . A000 Chips&Technologies 64310 [1]<br />

77h = G 94x29 . 752x410 16??? . A000 Quadram Ultra VGA<br />

= G 94x29 . 752x410 16 . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x75 8x8 800x600 64K . A000 Trident 8900C/BIOS C03<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-43-


Generated by Foxit PDF Creator © Foxit Software<br />

= G 128x48 8x16 1024x768 . .<br />

http://www.foxitsoftware.com For evaluation only.<br />

A000 Diamond Stealth64 Video 2xx1<br />

78h = T 100x37 8x16 . 16 . . Genoa 6400<br />

= T 100x75 8x8 . 16 . B800 Quadram Ultra VGA<br />

= T 100x75 8x8 . . . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 640x400 256 . . STB VGA/EM-16 Plus<br />

= G 80x25 8x16 640x400 256 . . Cardinal, C&T chipset<br />

= G . . 640x400 256 . . Cirrus 5320 chipset<br />

= G 80x25 8x16 640x400 256 . A000 Chips&Technologies 64310<br />

79h = G 80x30 8x16 640x480 256 . . Cardinal, C&T chipset<br />

= G 80x30 8x16 640x480 256 . A000 Chips&Technologies 64310<br />

= G 100x75 . 800x600 16??? . A000 Quadram Ultra VGA<br />

= G 100x75 8x8 800x600 16 . . Genoa SuperEGA BIOS 3.0+<br />

= G 100x75 8x8 800x600 16 . . Genoa 6400<br />

7Ah = T 114x60 8x8 . 16 . B800 Quadram Ultra VGA<br />

= T 114x60 8x8 . . . . Genoa SuperEGA BIOS 3.0+<br />

= G . . 720x540 256 . . C&T chipset, Cardinal<br />

7Bh = G . . 800x600 256 . . C&T chipset, Cardinal<br />

= G 114x60 . 912x480 16??? . A000 Quadram Ultra VGA<br />

= G . . 912x480 16 . . Genoa SuperEGA BIOS 3.0+<br />

7Ch = G . . 512x512 16 . . Genoa<br />

= G 100x37 8x16 800x600 256 . . C&T 82C453/F65530 chipsets<br />

= G 100x37 8x16 800x600 256 . A000 Chips&Technologies 64310<br />

= G 200x75 8x16 1600x1200 . [16] . A000 Diamond Stealth64 Video 2xx1<br />

7Dh = G 64x32 8x16 512x512 256 . . Genoa<br />

7Eh = special mode set (see AX=007Eh) . Paradise VGA, AT&T VDC600<br />

= G 80x25 8x16 640x400 256 . . Genoa 6400<br />

= G . . 1024x768 256 . . C&T 82C453 chipset<br />

= G 128x48 8x16 1024x768 256 . A000 Chips&Technologies 64310<br />

= G 90x43 . . mono . B000 HERCULES.COM on HGC [14]<br />

7Fh = special function set (see AX=007Fh/BH=00h) Paradise VGA, AT&T VDC600<br />

= G 128x48 8x16 1024x768 4 . . Genoa 6400<br />

= G 90x29 . . mono . B000 HERCULES.COM on HGC [14]<br />

82h = T 80x25 . . B&W . . AT&T VDC overlay mode [6]<br />

83h = T 80x25 . . . . . AT&T VDC overlay mode [6]<br />

86h = G . . 640x200 B&W . . AT&T VDC overlay mode [6]<br />

88h = G 90x43 8x8 720x348 mono . B000 Hercules + MSHERC.COM<br />

C0h = G . . 640x400 2/prog palette . AT&T VDC overlay mode [6]<br />

= G . . 640x400 2/prog palette . Olivetti Quaderno overlay<br />

C4h = disable output . . . . AT&T VDC overlay mode [6]<br />

C8h = G 80x50 8x8 640x400 2 . B800 Olivetti Quaderno overlay<br />

D0h = G . . 640x400 2 . B800 DEC VAXmate AT&T mode<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-44-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Notes:<br />

[1] interlaced only<br />

[2] for ATI EGA Wonder, mode 08h is only valid if SMS.COM is loaded resident.<br />

SMS maps mode 08h to mode 27h if the byte at location 0040:0063 is 0B4h,<br />

otherwise to mode 23h, thus selecting the appropriate (monochrome or<br />

color) 132x25 character mode.<br />

for ATI VGA Wonder, mode 08h is the same, and only valid if VCONFIG loaded<br />

resident<br />

[3] early XGA boards support 132-column text but do not have this BIOS mode<br />

[4] DESQview intercepts calls to change into these two modes (21h is page 0,<br />

22h is page 1) even if there is no Hercules graphics board installed<br />

[5] ATI BIOS v4-1.00 has a text-scrolling bug in this mode<br />

[6] for AT&T VDC overlay modes, BL contains the DEB mode, which may be 06h,<br />

40h, or 44h<br />

[7] BIOS text support is broken in this undocumented mode; scrolling moves<br />

only about 1/3 of the screen (and does even that portion incorrectly),<br />

while screen clears only clear about 3/4.<br />

[8] The Oak OTI-037/067/077 modes are present in the Oak VGA BIOS, which OEMs<br />

may choose to use only partially or not at all; thus, not all Oak boards<br />

support all "Oak" modes listed here<br />

[9] this card uses the full 128K A000h-BFFFh range for the video buffer,<br />

precluding the use of a monochrome adapter in the same system<br />

[10] mode 17h supported by Tseng ET4000 BIOS 8.01X dated 1990/09/14, but not<br />

v8.01X dated 1992/02/28; mode 21h supported by 1992/02/28 version but not<br />

1990/09/14 version<br />

[11] HERKULES simulates a 90x45 text mode in Hercules graphics mode; the<br />

installation check for HERKULES.COM is the signature "Herkules" two<br />

bytes beyond the INT 10 handler<br />

[12] The Realtek RTVGA BIOS v3.C10 crashes when attempting to switch into<br />

modes 21h or 27h; this version of the BIOS also sets the BIOS data area<br />

incorrectly for extended text modes, resulting in scrolling after only<br />

24 lines (the VMODE.EXE utility does set the data area correctly)<br />

[13] The Tandy 1000SL/TL BIOS does not actually support this mode<br />

[14] HERCULES.COM is a graphics-mode BIOS extension for Hercules-compatible<br />

graphics cards by Soft Warehouse, Inc. Its installation check is to<br />

test whether the word preceding the INT 10 handler is 4137h.<br />

[15] The Hercules-graphics video modes for HERCBIOS (shareware by Dave<br />

Tutelman) may be changed by a command-line switch; the 90x43<br />

character-cell mode's number is always one higher than the 90x29 mode<br />

(whose default is mode 08h)<br />

[16] Stealth64 Video 2001-series BIOS v1.03 reports 76 lines for mode 7Ch,<br />

Saturday, January 08, 2011 11:31 AM<br />

-45-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

resulting in incorrect scrolling for TTY output (scrolling occurs only<br />

after the end of the 76th line, which is not displayed)<br />

[17] For 43-line text on EGA or 43/50-line text on VGA, you must load an 8x8<br />

font using AX=1102h after switching to mode 3; VGA may also require<br />

using INT 10/AH=12h/BL=30h<br />

SeeAlso: #00011,#00083,#00191<br />

<strong>Index</strong>: video modes<br />

<strong>Index</strong>: installation check;HERKULES|installation check;HERCULES.COM<br />

--------V-100070-----------------------------<br />

INT 10 - VIDEO - Everex Micro Enhancer EGA/Viewpoint VGA - EXTENDED MODE SET<br />

AX = 0070h<br />

BL = mode (see #00011)<br />

Desc: specify a proprietary display mode on the Everex Micro Enhancer or<br />

Viewpoint video adapters<br />

SeeAlso: AH=00h,AX=6F05h,AX=7000h/BX=0004h,AH=FFh"GO32"<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00011)<br />

Values for Everex video mode:<br />

text/ text pixel pixel colors disply scrn monitor adapter<br />

grph resol box resolution pages addr<br />

00h = G . . 640x480 16 . . multisync EGA,VGA<br />

01h = G . . 752x410 16 . . multisync EGA,VGA<br />

02h = G . . 800x600 16 . . multisync EGA,VGA<br />

03h = T 80x34 . . . . . multisync EGA,VGA<br />

04h = T 80x60 . . . . . multisync EGA,VGA<br />

05h = T 94x29 . . . . . multisync EGA only<br />

06h = T 94x51 . . . . . multisync EGA only<br />

07h = T 100x43 8x14 . 16 . . . VGA only<br />

08h = T 100x75 8x8 . 16 . . . VGA only<br />

09h = T 80x44 . . . . . EGA EGA only<br />

0Ah = T 132x25 . . . . . EGA EGA,VGA<br />

0Bh = T 132x44 . . . . . EGA EGA,VGA<br />

0Ch = T 132x25 . . . . . CGA EGA only<br />

0Dh = T 80x44 . . . . . mono EGA only<br />

0Eh = T 132x25 . . . . . mono<br />

0Fh = T 132x44 . . . . . mono<br />

10h = reserved<br />

11h = G . . 1280x350 4 . . . EGA only<br />

12h = G . . 1280x600 4 . . . EGA only<br />

13h = G . . 640x350 256 . . . EGA,EV673<br />

14h = G . . 640x400 256 . . .<br />

-46-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

15h = G . . 512x480 256 . . .<br />

http://www.foxitsoftware.com For evaluation only.<br />

16h = T 80x30 8x16 . 256 . . . VGA only<br />

18h = T 100x27 8x16 . 16 . . . VGA only<br />

20h = G . . 1024x768 16 . . . Everex 629,678<br />

. . . . . . . Everex EV-673<br />

21h = T 160x64 8x16 1280x1024 16 . . . 1MB VGA only<br />

30h = G . . 640x480 256 . . . Everex 629,678<br />

. . . . . . . Everex EV-673<br />

31h = G . . 800x600 256 . . . Everex 629,678<br />

. . . . . . . Everex EV-673<br />

32h = G 128x48 8x16 1024x768 256 . . . 1MB VGA only<br />

40h = T 132x30 8x16 . 16 . . . VGA only<br />

50h = T 132x32 8x16 . mono . . . VGA only<br />

62h = G 40x25 8x8 320x200 32K . . . Vwpt TC (EV629)<br />

70h = G 64x30 8x16 512x480 32K . . . Viewpoint TC<br />

71h = G 80x30 8x16 640x480 32K . . . Viewpoint TC<br />

76h = G 64x30 8x16 512x480 16M . . . Viewpoint TC<br />

77h = G 80x30 8x16 640x480 16M . . . Viewpoint TC<br />

SeeAlso: #00010,#00191<br />

<strong>Index</strong>: video modes;Everex<br />

--------V-10007E-----------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE<br />

AX = 007Eh<br />

BX = horizontal dimension of the mode desired<br />

CX = vertical dimension of the mode desired<br />

(both BX/CX in pixels for graphics modes, rows for alpha modes)<br />

DX = number of colors of the mode desired (0000h for monochrome modes)<br />

Return: BH = 7Eh if successful (Paradise VGA)<br />

AL = 7Eh if successful (AT&T VDC600)<br />

Desc: specify a display mode by resolution rather than mode number<br />

SeeAlso: AH=00h,AX=0070h,AX=007Fh/BH=00h,AX=6F05h,AH=FFh"GO32"<br />

<strong>Index</strong>: video modes;Paradise|video modes;AT&T<br />

--------V-10007FBH00-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION<br />

AX = 007Fh<br />

BH = 00h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

SeeAlso: AX=007Fh/BH=01h,AX=007Fh/BH=02h<br />

Saturday, January 08, 2011 11:31 AM<br />

-47-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-10007FBH01-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET NON-VGA OPERATION<br />

AX = 007Fh<br />

BH = 01h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

Note: color modes (0,1,2,3,4,5,6) will set non-VGA CGA operation, monochrome<br />

mode 7 will set non-VGA MDA/Hercules operation<br />

SeeAlso: AX=007Fh/BH=00h,AX=007Fh/BH=02h<br />

--------V-10007FBH02-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - QUERY MODE STATUS<br />

AX = 007Fh<br />

BH = 02h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

---if successful---<br />

BL = 00h if operating in VGA mode, 01h if non-VGA mode<br />

CH = total video RAM size in 64k byte units<br />

CL = video RAM used by the current mode<br />

Note: under Novell DOS 7 TaskMgr Multitasker, this call always returns 0K<br />

video memory in CX<br />

SeeAlso: AX=007Fh/BH=00h,AX=007Fh/BH=01h<br />

--------V-10007FBH03-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - LOCK CURRENT MODE<br />

AX = 007Fh<br />

BH = 03h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

Desc: allows current mode (VGA or non-VGA) to survive re-boot<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=04h,AX=007Fh/BH=06h,AH=FFh"Oak"<br />

--------V-10007FBH04-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - ENTER MDA EMULATION MODE<br />

AX = 007Fh<br />

BH = 04h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

Saturday, January 08, 2011 11:31 AM<br />

-48-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=03h,AX=007Fh/BH=05h,AH=FFh"Oak"<br />

--------V-10007FBH05-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - ENTER CGA EMULATION MODE<br />

AX = 007Fh<br />

BH = 05h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=03h,AX=007Fh/BH=04h,AH=FFh"Oak"<br />

--------V-10007FBH06-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - ENTER MONOCHROME VGA MODE<br />

AX = 007Fh<br />

BH = 06h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

Note: this function also switches to video mode 7<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=03h,AX=007Fh/BH=07h,AH=FFh"Oak"<br />

--------V-10007FBH07-------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - ENTER COLOR VGA MODE<br />

AX = 007Fh<br />

BH = 07h<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

Note: this function also switches to video mode 3<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=03h,AX=007Fh/BH=06h,AH=FFh"Oak"<br />

--------V-10007F-----------------------------<br />

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - EXTENDED DATA REGISTER ACCESS<br />

AX = 007Fh<br />

BH = function<br />

0Ah,0Bh,0Ch,0Dh,0Eh,0Fh WRITE PARADISE REGISTERS 0,1,2,3,4,5<br />

(port 03CEh indices 0Ah,0Bh,0Ch,0Dh,0Eh,0Fh)<br />

BL = value to set in the paradise register<br />

1Ah,1Bh,1Ch,1Dh,1Eh,1Fh READ PARADISE REGISTERS 0,1,2,3,4,5<br />

Saturday, January 08, 2011 11:31 AM<br />

-49-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

(port 03CEh indices 0Ah,0Bh,0Ch,0Dh,0Eh,0Fh)<br />

Return: BL = value of the paradise register<br />

BH = 7Fh if successful<br />

29h-2Fh ??? (Paradise VGA for Dell, 1991/07/24)<br />

Return: AL = 7Fh if successful (AT&T VDC600)<br />

BH = status (Paradise/Dell)<br />

00h invalid function<br />

7Fh successful<br />

SeeAlso: AX=007Eh,AX=007Fh/BH=03h,AX=007Fh/BH=05h,AH=FFh"Oak"<br />

--------V-10007FBH60-------------------------<br />

INT 10 - Paradise VGA - ???<br />

AX = 007Fh<br />

BH = 60h<br />

BL = ??? (00h-13h)<br />

???<br />

Return: BH = status (00h failed or not supported, 7Fh successful)<br />

???<br />

Note: this function is supported by the 1993/5/14 ROM for the Dell 486D<br />

SeeAlso: AX=007Fh/BH=61h<br />

--------V-10007FBH61-------------------------<br />

INT 10 - Paradise VGA - ???<br />

AX = 007Fh<br />

BH = 61h<br />

ES:DI -> buffer for list of ??? (see #00012)<br />

Return: BH = status (00h failed or not supported, 7Fh successful)<br />

???<br />

Note: this function is supported by the 1993/5/14 ROM for the Dell 486D<br />

SeeAlso: AX=007Fh/BH=60h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of Paradise VGA list entry:<br />

Offset Size Description (Table 00012)<br />

00h BYTE ??? or 00h if end of list<br />

01h BYTE ???<br />

02h WORD ???<br />

04h WORD ???<br />

06h WORD ???<br />

--------V-10007FBXA500-----------------------<br />

INT 10 - Paradise VGA - ???<br />

AX = 007Fh<br />

BX = A500h<br />

???<br />

-50-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: BH = status (00h failed or not supported, 7Fh successful)<br />

???<br />

Note: this function is supported by the 1993/5/14 ROM for the Dell 486D<br />

SeeAlso: AX=007Fh/BH=A6h<br />

--------V-10007FBHA5-------------------------<br />

INT 10 - Paradise VGA - ???<br />

AX = 007Fh<br />

BH = A5h<br />

BL = ???<br />

bits 3-0: ??? (0-4)<br />

bits 5,4: ???<br />

???<br />

Return: BH = status (00h failed or not supported, 7Fh successful)<br />

???<br />

Note: this function is supported by the 1993/5/14 ROM for the Dell 486D<br />

--------V-10007FBHA6-------------------------<br />

INT 10 - Paradise VGA - ???<br />

AX = 007Fh<br />

BH = A6h<br />

???<br />

Return: BH = status (00h failed or not supported, 7Fh successful)<br />

???<br />

Note: this function is supported by the 1993/5/14 ROM for the Dell 486D<br />

SeeAlso: AX=007Fh/BH=A5h<br />

--------V-1001-------------------------------<br />

INT 10 - VIDEO - SET TEXT-MODE CURSOR SHAPE<br />

AH = 01h<br />

CH = cursor start and options (see #00013)<br />

CL = bottom scan line containing cursor (bits 0-4)<br />

Return: nothing<br />

Desc: specify the starting and ending scan lines to be occupied by the<br />

hardware cursor in text modes<br />

Notes: buggy on EGA systems--BIOS remaps cursor shape in 43 line modes, but<br />

returns unmapped cursor shape<br />

UltraVision scales size to the current font height by assuming 14-line<br />

monochrome and 8-line color fonts; this call is not valid if cursor<br />

emulation has been disabled<br />

applications which wish to change the cursor by programming the<br />

hardware directly on EGA or above should call INT 10/AX=1130h or<br />

read 0040h:0085h first to determine the current font height<br />

on some adapters, setting the end line greater than the number of lines<br />

Saturday, January 08, 2011 11:31 AM<br />

-51-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

in the font will result in the cursor extending to the top of the<br />

next character cell on the right<br />

BUG: AMI 386 BIOS and AST Premier 386 BIOS will lock up the system if AL<br />

is not equal to the current video mode<br />

SeeAlso: AH=03h,AX=CD05h,AH=12h/BL=34h,#03885<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for cursor start and options:<br />

Bit(s) Description (Table 00013)<br />

7 should be zero<br />

6,5 cursor blink<br />

(00=normal, 01=invisible, 10=erratic, 11=slow)<br />

(00=normal, other=invisible on EGA/VGA)<br />

4-0 topmost scan line containing cursor<br />

--------V-1002-------------------------------<br />

INT 10 - VIDEO - SET CURSOR POSITION<br />

AH = 02h<br />

BH = page number<br />

0-3 in modes 2&3<br />

0-7 in modes 0&1<br />

0 in graphics modes<br />

DH = row (00h is top)<br />

DL = column (00h is left)<br />

Return: nothing<br />

SeeAlso: AH=03h,AH=05h,INT 60/DI=030Bh,MEM 0040h:0050h<br />

--------V-1003-------------------------------<br />

INT 10 - VIDEO - GET CURSOR POSITION AND SIZE<br />

AH = 03h<br />

BH = page number<br />

0-3 in modes 2&3<br />

0-7 in modes 0&1<br />

0 in graphics modes<br />

Return: AX = 0000h (Phoenix BIOS)<br />

CH = start scan line<br />

CL = end scan line<br />

DH = row (00h is top)<br />

DL = column (00h is left)<br />

Notes: a separate cursor is maintained for each of up to 8 display pages<br />

many ROM BIOSes incorrectly return the default size for a color display<br />

(start 06h, end 07h) when a monochrome display is attached<br />

With PhysTechSoft's PTS ROM-DOS the BH value is ignored on entry.<br />

SeeAlso: AH=01h,AH=02h,AH=12h/BL=34h,MEM 0040h:0050h,MEM 0040h:0060h<br />

-52-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-1004-------------------------------<br />

INT 10 - VIDEO - READ LIGHT PEN POSITION (except VGA)<br />

AH = 04h<br />

Return: AH = light pen trigger flag<br />

00h not down/triggered<br />

01h down/triggered<br />

DH,DL = row,column of character light pen is on<br />

CH = pixel row (graphics modes 04h-06h)<br />

CX = pixel row (graphics modes with >200 rows)<br />

BX = pixel column<br />

Desc: determine the current position and status of the light pen (if<br />

present)<br />

Notes: on a CGA, returned column numbers are always multiples of 2 (320-<br />

column modes) or 4 (640-column modes)<br />

returned row numbers are only accurate to two lines<br />

--------V-1004------------------------------------<br />

INT 10 - HUNTER 16 - GET CURSOR ADDRESS<br />

AH = 04h<br />

BH = page<br />

Return: DH = row (0..24)<br />

DL = column (0..79)<br />

CH = cursor pixel Y-address (0..199)<br />

CL = cursor pixel X-address (0..639)<br />

Notes: the Husky Hunter 16 is an 8088-based ruggedized laptop. Other family<br />

members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.<br />

pixel coordinates are for the lower left corner of the character cell<br />

containing the cursor<br />

SeeAlso: AH=60h"HUNTER"<br />

--------V-1005-------------------------------<br />

INT 10 - VIDEO - SELECT ACTIVE DISPLAY PAGE<br />

AH = 05h<br />

AL = new page number (00h to number of pages - 1) (see #00010)<br />

Return: nothing<br />

Desc: specify which of possibly multiple display pages will be visible<br />

Note: to determine whether the requested page actually exists, use AH=0Fh<br />

to query the current page after making this call<br />

SeeAlso: AH=0Fh,AH=43h,AH=45h,MEM 0040h:0062h,MEM 0040h:004Eh<br />

--------V-100500-----------------------------<br />

INT 10 - VIDEO - Corona/Cordata BIOS v4.10+ - SET GRAPHICS BITMAP BUFFER<br />

AX = 0500h<br />

BX = segment of buffer<br />

Saturday, January 08, 2011 11:31 AM<br />

-53-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: nothing<br />

Desc: set the address of graphics bitmap buffer for video modes 60h and 61h<br />

SeeAlso: AX=050Fh"Corona"<br />

--------V-10050F-----------------------------<br />

INT 10 - VIDEO - Corona/Cordata BIOS v4.10+ - GET GRAPHICS BITMAP BUFFER<br />

AX = 050Fh<br />

Return: DX = segment of graphics bitmap buffer<br />

Desc: get the address of graphics bitmap buffer for video modes 60h and 61h<br />

SeeAlso: AX=0500h"Corona"<br />

--------V-100580-----------------------------<br />

INT 10 - VIDEO - PCjr, Tandy 1000 - GET CRT/CPU PAGE REGISTERS<br />

AX = 0580h<br />

Return: BH = CRT page register<br />

BL = CPU page register<br />

Notes: the CPU page determines which 16K block of the first 128K of physical<br />

memory will be mapped at B800h by the hardware<br />

the CRT page determines the start address of the memory used by the<br />

video controller<br />

SeeAlso: AH=05h"SET CRT/CPU"<br />

--------V-1005-------------------------------<br />

INT 10 - VIDEO - PCjr, Tandy 1000 - SET CRT/CPU PAGE REGISTERS<br />

AH = 05h<br />

AL = subfunction<br />

81h set CPU page register<br />

BL = CPU page<br />

82h set CRT page register<br />

BH = CRT page<br />

83h set both CPU and CRT page registers<br />

BL = CPU page<br />

BH = CRT page<br />

Return: nothing<br />

Notes: the CPU page determines which 16K block of the first 128K of physical<br />

memory will be mapped at B800h by the hardware<br />

the CRT page determines the start address of the memory used by the<br />

video controller<br />

SeeAlso: AX=0580h<br />

--------V-1006-------------------------------<br />

INT 10 - VIDEO - SCROLL UP WINDOW<br />

AH = 06h<br />

AL = number of lines by which to scroll up (00h = clear entire window)<br />

BH = attribute used to write blank lines at bottom of window<br />

Saturday, January 08, 2011 11:31 AM<br />

-54-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

CH,CL = row,column of window's upper left corner<br />

DH,DL = row,column of window's lower right corner<br />

Return: nothing<br />

Note: affects only the currently active page (see AH=05h)<br />

BUGS: some implementations (including the original IBM PC) have a bug which<br />

destroys BP<br />

the Trident TVGA8900CL (BIOS dated 1992/9/8) clears DS to 0000h when<br />

scrolling in an SVGA mode (800x600 or higher)<br />

SeeAlso: AH=07h,AH=12h"Tandy 2000",AH=72h,AH=73h,AX=7F07h,INT 50/AX=0014h<br />

--------V-1007-------------------------------<br />

INT 10 - VIDEO - SCROLL DOWN WINDOW<br />

AH = 07h<br />

AL = number of lines by which to scroll down (00h=clear entire window)<br />

BH = attribute used to write blank lines at top of window<br />

CH,CL = row,column of window's upper left corner<br />

DH,DL = row,column of window's lower right corner<br />

Return: nothing<br />

Note: affects only the currently active page (see AH=05h)<br />

BUGS: some implementations (including the original IBM PC) have a bug which<br />

destroys BP<br />

the Trident TVGA8900CL (BIOS dated 1992/9/8) clears DS to 0000h when<br />

scrolling in an SVGA mode (800x600 or higher)<br />

SeeAlso: AH=06h,AH=12h"Tandy 2000",AH=72h,AH=73h,INT 50/AX=0014h<br />

--------V-1008-------------------------------<br />

INT 10 - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION<br />

AH = 08h<br />

BH = page number (00h to number of pages - 1) (see #00010)<br />

Return: AH = character's attribute (text mode only) (see #00014)<br />

AH = character's color (Tandy 2000 graphics mode only)<br />

AL = character<br />

Notes: for monochrome displays, a foreground of 1 with background 0 is<br />

underlined<br />

the blink bit may be reprogrammed to enable intense background colors<br />

using AX=1003h or by programming the CRT controller<br />

the foreground intensity bit (3) can be programmed to switch between<br />

character sets A and B on EGA and VGA cards, thus enabling 512<br />

simultaneous characters on screen. In this case the bit's usual<br />

function (intensity) is regularly turned off.<br />

in graphics modes, only characters drawn with white foreground pixels<br />

are matched by the pattern-comparison routine<br />

on the Tandy 2000, BH=FFh specifies that the current page should be<br />

Saturday, January 08, 2011 11:31 AM<br />

-55-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

used<br />

because of the IBM BIOS specifications, there may exist some clone<br />

BIOSes which do not preserve SI or DI; the Novell DOS kernel<br />

preserves SI, DI, and BP before many INT 10h calls to avoid problems<br />

due to those registers not being preserved by the BIOS.<br />

BUG: some IBM PC ROM BIOSes destroy BP when in graphics modes<br />

SeeAlso: AH=09h,AX=1003h,AX=1103h,AH=12h/BL=37h,AX=5001h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for character's display attribute:<br />

Bit(s) Description (Table 00014)<br />

7 foreground blink or (alternate) background bright (see also AX=1003h)<br />

6-4 background color (see #00015)<br />

3 foreground bright or (alternate) alternate character set (see AX=1103h)<br />

2-0 foreground color (see #00015)<br />

SeeAlso: #00026<br />

(Table 00015)<br />

Values for character color:<br />

Normal Bright<br />

000b black dark gray<br />

001b blue light blue<br />

010b green light green<br />

011b cyan light cyan<br />

100b red light red<br />

101b magenta light magenta<br />

110b brown yellow<br />

111b light gray white<br />

--------V-1009-------------------------------<br />

INT 10 - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION<br />

AH = 09h<br />

AL = character to display<br />

BH = page number (00h to number of pages - 1) (see #00010)<br />

background color in 256-color graphics modes (ET4000)<br />

BL = attribute (text mode) or color (graphics mode)<br />

if bit 7 set in


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

current row<br />

With PhysTechSoft's PTS ROM-DOS the BH, BL, and CX values are ignored<br />

on entry.<br />

SeeAlso: AH=08h,AH=0Ah,AH=4Bh"GRAFIX",INT 17/AH=60h,INT 1F"SYSTEM DATA"<br />

SeeAlso: INT 43"VIDEO DATA",INT 44"VIDEO DATA"<br />

--------V-100A-------------------------------<br />

INT 10 - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION<br />

AH = 0Ah<br />

AL = character to display<br />

BH = page number (00h to number of pages - 1) (see #00010)<br />

background color in 256-color graphics modes (ET4000)<br />

BL = attribute (PCjr, Tandy 1000 only) or color (graphics mode)<br />

if bit 7 set in


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AH=0Bh/BH=00h,MEM 0040h:0066h<br />

--------V-100B--BH02-------------------------<br />

INT 10 - Tandy 2000 - VIDEO - SET PALETTE ENTRY<br />

AH = 0Bh<br />

BH = 02h<br />

BL = palette entry number<br />

AL = new color value for palette entry<br />

Return: nothing<br />

Note: this interrupt is identical to INT 52 for Tandy 2000<br />

SeeAlso: INT 10/AH=00h,INT 10/AH=0Bh/BH=01h,INT 52"Tandy 2000"<br />

--------V-100C-------------------------------<br />

INT 10 - VIDEO - WRITE GRAPHICS PIXEL<br />

AH = 0Ch<br />

BH = page number<br />

AL = pixel color<br />

if bit 7 set, value is XOR'ed onto screen except in 256-color modes<br />

CX = column<br />

DX = row<br />

Return: nothing<br />

Desc: set a single pixel on the display in graphics modes<br />

Notes: valid only in graphics modes<br />

BH is ignored if the current video mode supports only one page<br />

SeeAlso: AH=0Dh,AH=46h<br />

--------V-100D-------------------------------<br />

INT 10 - VIDEO - READ GRAPHICS PIXEL<br />

AH = 0Dh<br />

BH = page number<br />

CX = column<br />

DX = row<br />

Return: AL = pixel color<br />

Desc: determine the current color of the specified pixel in grahics modes<br />

Notes: valid only in graphics modes<br />

BH is ignored if the current video mode supports only one page<br />

SeeAlso: AH=0Ch,AH=47h<br />

--------V-100E-------------------------------<br />

INT 10 - VIDEO - TELETYPE OUTPUT<br />

AH = 0Eh<br />

AL = character to write<br />

BH = page number<br />

BL = foreground color (graphics modes only)<br />

Return: nothing<br />

Saturday, January 08, 2011 11:31 AM<br />

-58-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Desc: display a character on the screen, advancing the cursor and scrolling<br />

the screen as necessary<br />

Notes: characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted<br />

and do the expected things<br />

IBM PC ROMs dated 1981/4/24 and 1981/10/19 require that BH be the same<br />

as the current active page<br />

BUG: if the write causes the screen to scroll, BP is destroyed by BIOSes<br />

for which AH=06h destroys BP<br />

SeeAlso: AH=02h,AH=06h,AH=0Ah<br />

--------b-100E--CXABCD-----------------------<br />

INT 10 - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE<br />

AH = 0Eh<br />

CX = ABCDh<br />

BP = ABCDh<br />

AL = character to write<br />

BH = page number<br />

BL = foreground color (text modes as well as graphics modes)<br />

Return: nothing<br />

Program: V20-XT-BIOS is a ROM BIOS replacement with extensions by Peter<br />

Koehlmann / c't magazine<br />

Desc: display a character on the screen, advancing the cursor and scrolling<br />

the screen as necessary<br />

Notes: characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted<br />

and do the expected things<br />

SeeAlso: INT 15/AH=84h"V20-XT-BIOS"<br />

--------V-100F-------------------------------<br />

INT 10 - VIDEO - GET CURRENT VIDEO MODE<br />

AH = 0Fh<br />

Return: AH = number of character columns<br />

AL = display mode (see #00010 at AH=00h)<br />

BH = active page (see AH=05h)<br />

Notes: if mode was set with bit 7 set ("no blanking"), the returned mode will<br />

also have bit 7 set<br />

EGA, VGA, and UltraVision return either AL=03h (color) or AL=07h<br />

(monochrome) in all extended-row text modes<br />

HP 200LX returns AL=07h (monochrome) if mode was set to AL=21h<br />

and always 80 resp. 40 columns in all text modes regardless of<br />

current zoom setting (see AH=D0h)<br />

when using a Hercules Graphics Card, additional checks are necessary:<br />

mode 05h: if WORD 0040h:0063h is 03B4h, may be in graphics page 1<br />

(as set by DOSSHELL and other Microsoft software)<br />

Saturday, January 08, 2011 11:31 AM<br />

-59-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

mode 06h: if WORD 0040h:0063h is 03B4h, may be in graphics page 0<br />

(as set by DOSSHELL and other Microsoft software)<br />

mode 07h: if BYTE 0040h:0065h bit 1 is set, Hercules card is in<br />

graphics mode, with bit 7 indicating the page (mode set by<br />

Hercules driver for Borland Turbo C)<br />

the Tandy 2000 BIOS is only documented as returning AL, not AH or BH<br />

SeeAlso: AH=00h,AH=05h,AX=10F2h,AX=1130h,AX=CD04h,MEM 0040h:004Ah<br />

--------V-100F56BX4756-----------------------<br />

INT 10 - VUIMAGE DISPLAY DRIVER (v2.20 and below)<br />

AX = 0F56h<br />

BX = 4756h<br />

CX = 4944h<br />

DL = function<br />

01h installation check<br />

Return: AX = 5649h<br />

BX = 4443h<br />

CX = 5647h<br />

DH = 01h<br />

02h get first video mode's parameters<br />

Return: AX = BIOS mode number<br />

BX = width in pixels<br />

CX = height in pixels<br />

DX = number of colors<br />

03h get next video mode's parameters<br />

Return: as for DL=02h<br />

04h display line???<br />

ES:DI -> record (see #00016)<br />

???<br />

Return: ???<br />

Program: VUIMAGE is a shareware GIF/TIFF image viewer by Offe Enterprises<br />

Note: the use of TSR display drivers was discontinued after v2.20<br />

<strong>Index</strong>: installation check;VUIMAGE display driver<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of record for VUIMAGE Function 04h:<br />

Offset Size Description (Table 00016)<br />

00h WORD row number<br />

02h WORD starting column???<br />

04h WORD ending column???<br />

???<br />

--------V-100F--SIF123-----------------------<br />

INT 10 - FRIEZE v7.41+ - INSTALLATION CHECK<br />

-60-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

AH = 0Fh<br />

SI = F123h<br />

DI = 321Fh<br />

Return: AH = number of character columns<br />

AL = display mode (see #00010 at AH=00h)<br />

BH = active page (see AH=05h)<br />

SI = DI = F345h if installed<br />

Notes:<br />

if mode was set with bit 7 set ("no blanking"), the returned mode will<br />

also have bit 7 set<br />

EGA, VGA, and UltraVision return either AL=03h (color) or AL=07h<br />

(monochrome) in all extended-row text modes<br />

SeeAlso: AH=0Fh"VIDEO",AH=4Bh"FRIEZE"<br />

--------V-1010-------------------------------<br />

INT 10 - BIOS Window Extension v1.1 - SET WINDOW COORDINATES<br />

AH = 10h<br />

CH,CL = row,column of upper left corner of window<br />

DH,DL = row,column of lower right corner of window<br />

Return: AL = status<br />

00h successful<br />

01h failed<br />

AH destroyed<br />

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal<br />

Note: when a window has been set, all output via AH=0Eh is restricted to<br />

the specified window<br />

SeeAlso: AH=11h"Window",AH=12h"Window"<br />

--------V-1010-------------------------------<br />

INT 10 - VIDEO - Eagle PC2 BIOS Rev. C - SET SCROLL SPEED<br />

AH = 10h<br />

AL = speed<br />

00h fast<br />

01h slow (scrolling only moves characters during vertical retrace)<br />

Return: AH = previous speed<br />

--------V-1010-------------------------------<br />

INT 10 - Tandy 2000 - VIDEO - GET/SET CHARACTER FONTS<br />

AH = 10h<br />

AL = control value<br />

bit 0: set character set instead of reading it<br />

bit 1: high 128 characters instead of low 128 characters<br />

ES:BX -> new character set if AL bit 0 set<br />

Return: ES:BX -> current character set if AL bit 0 clear on entry<br />

Notes: this interrupt is identical to INT 52 on Tandy 2000<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-61-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

the character set consists of 16 bytes for each of the 128 characters,<br />

where each of the 16 bytes describes the pixels in one scan line,<br />

most significant bit leftmost<br />

SeeAlso: AH=00h,AH=0Bh/BH=02h,AH=11h"Tandy 2000",AH=12h"Tandy 2000"<br />

SeeAlso: INT 52"Tandy 2000"<br />

--------V-101000-----------------------------<br />

INT 10 - VIDEO - SET SINGLE PALETTE REGISTER (PCjr,Tandy,EGA,MCGA,VGA)<br />

AX = 1000h<br />

BL = palette register number (00h-0Fh)<br />

= attribute register number (undocumented) (see #00017)<br />

BH = color or attribute register value<br />

Return: nothing<br />

Notes: on MCGA, only BX = 0712h is supported<br />

under UltraVision, the palette locking status (see AX=CD01h)<br />

determines the outcome<br />

SeeAlso: AX=1002h,AX=1007h,AX=CD01h<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00017)<br />

Values for attribute register number:<br />

10h attribute mode control register (should let BIOS control this)<br />

11h overscan color register (see also AX=1001h)<br />

12h color plane enable register (bits 3-0 enable corresponding<br />

text attribute bit)<br />

13h horizontal PEL panning register<br />

14h color select register<br />

--------V-101001-----------------------------<br />

INT 10 - VIDEO - SET BORDER (OVERSCAN) COLOR (PCjr,Tandy,EGA,VGA)<br />

AX = 1001h<br />

BH = border color (00h-3Fh)<br />

Return: nothing<br />

BUG: the original IBM VGA BIOS incorrectly updates the parameter save area<br />

and places the border color at offset 11h of the palette table<br />

rather than offset 10h<br />

Note: under UltraVision, the palette locking status (see AX=CD01h)<br />

determines the outcome<br />

SeeAlso: AX=1002h,AX=1008h,AX=CD01h<br />

--------V-101002-----------------------------<br />

INT 10 - VIDEO - SET ALL PALETTE REGISTERS (PCjr,Tandy,EGA,VGA)<br />

AX = 1002h<br />

ES:DX -> palette register list (see #00018)<br />

BH = 00h to avoid problems on some adapters<br />

-62-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: nothing<br />

Note: under UltraVision, the palette locking status (see AX=CD01h)<br />

determines the outcome<br />

SeeAlso: AX=1000h,AX=1001h,AX=1009h,AX=CD01h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of palette register list:<br />

Offset Size Description (Table 00018)<br />

00h 16 BYTEs colors for palette registers 00h through 0Fh<br />

10h BYTE border color<br />

SeeAlso: #00461<br />

--------V-101003-----------------------------<br />

INT 10 - VIDEO - TOGGLE INTENSITY/BLINKING BIT (Jr, PS, TANDY 1000, EGA, VGA)<br />

AX = 1003h<br />

BL = new state<br />

00h background intensity enabled<br />

01h blink enabled<br />

BH = 00h to avoid problems on some adapters<br />

Return: nothing<br />

Notes: although there is no function to get the current status on adapters<br />

prior to the VGA, bit 5 of 0040h:0065h indicates the state; on the<br />

VGA, use AH=1Bh and check offset 2Dh of the returned data (see #00040)<br />

when configured for a monochrome display, the Boca Research Multi-EGA<br />

with ROM v M1.1 Type D has its screen disrupted if BH is not clear<br />

this call is reported to be "Get Cursor Position" on the Tandy<br />

1000SL/TL<br />

SeeAlso: AH=08h,AH=1Bh<br />

--------V-101007-----------------------------<br />

INT 10 - VIDEO - GET INDIVIDUAL PALETTE REGISTER (VGA,UltraVision v2+)<br />

AX = 1007h<br />

BL = palette or attribute (undoc) register number (see #00017)<br />

Return: BH = palette or attribute register value<br />

Note: UltraVision v2+ supports this function even on color EGA systems in<br />

video modes 00h-03h, 10h, and 12h; direct programming of the palette<br />

registers will cause incorrect results because the EGA registers are<br />

write-only. To guard against older versions or unsupported video<br />

modes, programs which expect to use this function on EGA systems<br />

should set BH to FFh on entry.<br />

SeeAlso: AX=1000h,AX=1009h<br />

--------V-101008-----------------------------<br />

INT 10 - VIDEO - READ OVERSCAN (BORDER COLOR) REGISTER (VGA,UltraVision v2+)<br />

AX = 1008h<br />

-63-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: BH = border color (00h-3Fh)<br />

Note: (see AX=1007h)<br />

SeeAlso: AX=1001h<br />

--------V-101009-----------------------------<br />

INT 10 - VIDEO - READ ALL PALETTE REGISTERS AND OVERSCAN REGISTER (VGA)<br />

AX = 1009h<br />

ES:DX -> 17-byte buffer for palette register list (see #00018)<br />

Return: nothing<br />

Note: UltraVision v2+ supports this function even on color EGA systems in<br />

video modes 00h-03h, 10h, and 12h; direct programming of the palette<br />

registers will cause incorrect results because the EGA registers are<br />

write-only. To guard against older versions or unsupported video<br />

modes, programs which expect to use this function on EGA systems<br />

should set the ES:DX buffer to FFh before calling.<br />

SeeAlso: AX=1002h,AX=1007h,AX=CD02h<br />

--------V-101010-----------------------------<br />

INT 10 - VIDEO - SET INDIVIDUAL DAC REGISTER (VGA/MCGA)<br />

AX = 1010h<br />

BX = register number<br />

CH = new value for green (0-63)<br />

CL = new value for blue (0-63)<br />

DH = new value for red (0-63)<br />

Return: nothing<br />

SeeAlso: AX=1012h,AX=1015h<br />

--------V-101012-----------------------------<br />

INT 10 - VIDEO - SET BLOCK OF DAC REGISTERS (VGA/MCGA)<br />

AX = 1012h<br />

BX = starting color register<br />

CX = number of registers to set<br />

ES:DX -> table of 3*CX bytes where each 3 byte group represents one<br />

byte each of red, green and blue (0-63)<br />

Return: nothing<br />

SeeAlso: AX=1010h,AX=1017h,INT 62/AX=00A5h<br />

--------V-101013-----------------------------<br />

INT 10 - VIDEO - SELECT VIDEO DAC COLOR PAGE (VGA)<br />

AX = 1013h<br />

BL = subfunction<br />

00h select paging mode<br />

BH = 00h select 4 blocks of 64<br />

BH = 01h select 16 blocks of 16<br />

01h select page<br />

Saturday, January 08, 2011 11:31 AM<br />

-64-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BH = page number (00h to 03h) or (00h to 0Fh)<br />

Return: nothing<br />

Note: this function is not valid in mode 13h<br />

SeeAlso: AX=101Ah<br />

--------V-101015-----------------------------<br />

INT 10 - VIDEO - READ INDIVIDUAL DAC REGISTER (VGA/MCGA)<br />

AX = 1015h<br />

BL = palette register number<br />

Return: DH = red value<br />

CH = green value<br />

CL = blue value<br />

AX destroyed by some BIOSes<br />

(e.g. Tseng ET4000 BIOS v8.00n always returns AX=00C9h)<br />

SeeAlso: AX=1010h,AX=1017h<br />

--------V-101017-----------------------------<br />

INT 10 - VIDEO - READ BLOCK OF DAC REGISTERS (VGA/MCGA)<br />

AX = 1017h<br />

BX = starting palette register<br />

CX = number of palette registers to read<br />

ES:DX -> buffer (3 * CX bytes in size) (see also AX=1012h)<br />

Return: buffer filled with CX red, green and blue triples<br />

SeeAlso: AX=1012h,AX=1015h,INT 62/AX=00A4h<br />

--------V-101018-----------------------------<br />

INT 10 U - VIDEO - SET PEL MASK (VGA/MCGA)<br />

AX = 1018h<br />

BL = new PEL value<br />

Return: nothing<br />

SeeAlso: AX=1019h<br />

--------V-101019-----------------------------<br />

INT 10 U - VIDEO - READ PEL MASK (VGA/MCGA)<br />

AX = 1019h<br />

Return: BL = value read<br />

SeeAlso: AX=1018h<br />

--------V-10101A-----------------------------<br />

INT 10 - VIDEO - GET VIDEO DAC COLOR-PAGE STATE (VGA)<br />

AX = 101Ah<br />

Return: BL = paging mode<br />

00h four pages of 64<br />

01h sixteen pages of 16<br />

BH = current page<br />

SeeAlso: AX=1013h<br />

Saturday, January 08, 2011 11:31 AM<br />

-65-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-10101B-----------------------------<br />

INT 10 - VIDEO - PERFORM GRAY-SCALE SUMMING (VGA/MCGA)<br />

AX = 101Bh<br />

BX = starting palette register<br />

CX = number of registers to convert<br />

Return: nothing<br />

Desc: convert the RGB values of one or more palette registers such that the<br />

resulting values are grays with the same intensities as the original<br />

colors<br />

SeeAlso: AH=12h/BL=33h<br />

--------V-1010E0-----------------------------<br />

INT 10 - VIDEO - Diamond Speedstar 24 - SET 24-BIT GRAPHICS MODE<br />

AX = 10E0h<br />

BL = video mode (see also #00010 at AH=00h)<br />

2Eh = 640x480<br />

Return: ???<br />

SeeAlso: AH=00h,AX=10F0h<br />

--------V-1010F0-----------------------------<br />

INT 10 - VIDEO - Tseng ET-4000 BIOS - SET HiColor GRAPHICS MODE<br />

AX = 10F0h<br />

BL = video mode (see also #00010 at AH=00h)<br />

13h = 320x200x32K<br />

2Dh = 640x350x32K<br />

2Eh = 640x480x32K<br />

2Fh = 640x400x32K<br />

30h = 800x600x32K<br />

3Eh = 640x480x16M (Genoa 7900)<br />

FFh Tseng 24-bit color mode<br />

BH = mode<br />

2Dh = 640x480<br />

2Eh = 640x480x16M<br />

2Fh = 640x400<br />

30h = 800x600<br />

38h = 1024x768??? (Tseng ET4000/W32i)<br />

Return: AL = 10h if supported<br />

AH = status<br />

00h if successful<br />

other on error<br />

Desc: switch the display into a graphics mode with 15 or more bits per pixel<br />

Note: the Tseng HiColor BIOS extensions are supported by:<br />

Diamond Computer Systems SpeedStar HiColor VGA<br />

Saturday, January 08, 2011 11:31 AM<br />

-66-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

Everex Systems HC VGA<br />

http://www.foxitsoftware.com For evaluation only.<br />

Focus Information Systems 2theMax 4000<br />

Cardinal Technologies VGA732<br />

Orchid ProDesigner IIs Genoa 7900<br />

SeeAlso: AH=00h,AX=10E0h,AX=10F1h,AX=10F2h<br />

<strong>Index</strong>: video modes;Tseng Hi-Color<br />

--------V-1010F1-----------------------------<br />

INT 10 - VIDEO - Tseng ET-4000 BIOS - GET DAC TYPE<br />

AX = 10F1h<br />

Return: AL = 10h if supported<br />

BL = type of digital/analog converter (see #00019)<br />

Desc: determine which type of digital-to-analog converter is installed on the<br />

display board<br />

SeeAlso: AX=10F0h,AX=10F2h<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00019)<br />

Values for type of DAC:<br />

00h normal VGA DAC<br />

01h Sierra SC1148x HiColor DAC<br />

---Diamond SpeedStar 24---<br />

02h new Sierra SS24 DAC (24-bit)<br />

---generic Tseng BIOS v8+ ---<br />

02h Sierra Mark2 (15-bit) or Mark3 (15/16-bit) DAC<br />

03h ATT20c490/1/2 (15/16/24-bit)<br />

04h AcuMos ADAC1 (15/16/24-bit)<br />

05h unknown 15/16/24-bit DAC<br />

06h Cirrus Internal 15/16/24-bit (CL-GD54xx series adapters)<br />

07h Diamond SS2410 (15/24-bit)<br />

08h unknown 15/16/24-bit DAC<br />

09h unknown 15/16/24-bit DAC<br />

else other HiColor DAC<br />

--------V-1010F2-----------------------------<br />

INT 10 u - VIDEO - Tseng ET-4000 BIOS - CHECK IF HiColor MODE/SET HiColor MODE<br />

AX = 10F2h<br />

BL = function<br />

00h get current HiColor mode<br />

01h set 15-bit HiColor mode<br />

02h set 16-bit HiColor mode<br />

Return: AX = 0010h if supported<br />

BL = video mode type<br />

00h not in HiColor mode<br />

-67-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

01h 15-bit RGB mode<br />

02h 16-bit RGB mode<br />

03h 24-bit RGB mode<br />

Desc: determine whether the display is in a graphics mode with 15 or more<br />

bits per pixel color resolution<br />

Note: set (BL=01h/02h) only works if already in a HiColor mode<br />

SeeAlso: AH=0Fh,AX=10F0h,AX=10F1h<br />

--------V-1011-------------------------------<br />

INT 10 - BIOS Window Extension v1.1 - GET WINDOW COORDINATES<br />

AH = 11h<br />

Return: CH,CL = row,column of upper left corner<br />

DH,DL = row,column of lower right corner<br />

Desc: determine the portion of the display to which output is restricted<br />

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal<br />

SeeAlso: AH=10h"Window",AH=12h"Window"<br />

--------V-1011-------------------------------<br />

INT 10 - Tandy 2000 - VIDEO - WRITE ATTRIBUTE ONLY<br />

AH = 11h<br />

BL = new character attribute (text modes) or color (graphics)<br />

CX = number of times to write attribute<br />

Return: nothing<br />

Note: this interrupt is identical to INT 52 on Tandy 2000<br />

SeeAlso: AH=0Ah,AH=0Bh/BH=02h,AH=11h"Tandy 2000",AH=12h"Tandy 2000"<br />

SeeAlso: INT 52"Tandy 2000"<br />

--------V-101100-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD USER-SPECIFIED PATTERNS (PS,EGA,VGA)<br />

AX = 1100h<br />

ES:BP -> user table<br />

CX = count of patterns to store<br />

DX = character offset into map 2 block<br />

BL = block to load in map 2<br />

BH = number of bytes per character pattern<br />

Return: nothing<br />

Notes: This function will cause a mode set, completely resetting<br />

the video environment, but without clearing the video buffer<br />

the current block specifiers may be determined with INT 10/AH=1Bh,<br />

looking at offsets 2Bh and 2Ch of the returned data (VGA only)<br />

(see AH=1Bh,#00040)<br />

SeeAlso: AX=1101h,AX=1102h,AX=1103h,AX=1104h,AX=1110h,AH=1Bh,AX=CD10h<br />

SeeAlso: MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

Saturday, January 08, 2011 11:31 AM<br />

-68-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-101101-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM MONOCHROME PATTERNS (PS,EGA,VGA)<br />

AX = 1101h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see also AX=1100h)<br />

This function will cause a mode set, completely resetting<br />

the video environment, but without clearing the video buffer<br />

the "monochrome" patters are 8x14 pixels in size<br />

SeeAlso: AX=1100h,AX=1102h,AX=1103h,AX=1104h,AX=1111h,AH=1Bh,AX=CD10h<br />

SeeAlso: MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

--------V-101102-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM 8x8 DBL-DOT PATTERNS (PS,EGA,VGA)<br />

AX = 1102h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see AX=1100h)<br />

SeeAlso: AX=1100h,AX=1101h,AX=1103h,AX=1104h,AX=1112h,AH=1Bh,AX=CD10h<br />

SeeAlso: MEM 0040h:0084h<br />

--------V-101103-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - SET BLOCK SPECIFIER (PS,EGA,VGA)<br />

AX = 1103h<br />

BL = block specifier (see #00020)<br />

Return: nothing<br />

Notes: (see also AX=1110h)<br />

This function allows dual character sets to appear on screen<br />

simultaneously<br />

SeeAlso: AX=1100h,AX=1101h,AX=1102h,AX=1104h,AH=1Bh,AX=CD10h<br />

SeeAlso: MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for block specifier:<br />

Bit(s) Description (Table 00020)<br />

---EGA/MCGA---<br />

0,1 block selected by characters with attribute bit 3 clear<br />

2,3 block selected by characters with attribute bit 3 set<br />

---VGA---<br />

0,1,4 block selected by characters with attribute bit 3 clear<br />

2,3,5 block selected by characters with attribute bit 3 set<br />

--------V-101104-----------------------------<br />

-69-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM 8x16 CHARACTER SET (VGA)<br />

AX = 1104h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see AX=1100h)<br />

SeeAlso: AX=1100h,AX=1101h,AX=1102h,AX=1103h,AX=1114h,AH=1Bh,AX=CD10h<br />

SeeAlso: MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

--------V-1011-------------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - TEXT-MODE CHARACTER GENERATOR FUNCTIONS<br />

AH = 11h<br />

AL = 07h load user-specified patterns and recalculate mode parms<br />

parameters are the same as for AX=1110h<br />

AL = 08h load monochrome patterns (8x14) and recalculate mode parms<br />

parameters are the same as for AX=1111h<br />

AL = 09h load ROM 8 by 8 double-dot patterns and recalculate mode parms<br />

parameters are the same as for AX=1112h<br />

AL = 0Bh load ROM 8x16 character set (VGA) and recalculate mode parms<br />

parameters are the same as for AX=1114h<br />

Note: these functions should only be called under the same conditions as<br />

AL=1xh (see AX=1110h"EGA")<br />

SeeAlso: AX=1100h,AX=1110h"CHARGEN",AX=1110h"Realtek",MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

--------V-10110F-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - SET USER 8x8 GRAPHICS CHARACTERS<br />

AX = 110Fh<br />

ES:BP -> user table for INT 1F<br />

Return: nothing<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

SeeAlso: AX=1110h"Realtek",AX=1111h"Realtek",AX=1112h"Realtek",AX=1120h<br />

--------V-101110-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD USER-SPECIFIED PATTERNS (PS,EGA,VGA)<br />

AX = 1110h<br />

ES:BP -> user table<br />

CX = count of patterns to store<br />

DX = character offset into map 2 block<br />

BL = block to load in map 2<br />

BH = number of bytes per character pattern<br />

Return: nothing<br />

Notes: This function will cause a mode set, completely resetting<br />

Saturday, January 08, 2011 11:31 AM<br />

-70-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

the video environment, but without clearing the video buffer<br />

This function is designed to be called immediately after a mode set,<br />

it is equivalent to AX=110xh except that:<br />

Page 0 must be active.<br />

Bytes/character is recalculated.<br />

Max character rows is recalculated.<br />

CRT buffer length is recalculated.<br />

CRTC registers are reprogrammed as follows:<br />

R09 = bytes/char-1 ; max scan line (mode 7 only)<br />

R0A = bytes/char-2 ; cursor start<br />

R0B = 0 ; cursor end<br />

R12 = ((rows+1)*(bytes/char))-1 ; vertical display end<br />

R14 = bytes/char ; underline loc<br />

(*** BUG: should be 1 less ***)<br />

the current block specifiers may be determined with INT 10/AH=1Bh,<br />

looking at offsets 2Bh and 2Ch of the returned data (VGA only)<br />

(see AH=1Bh,#00040)<br />

SeeAlso: AX=1100h,AX=1111h,AX=1112h,AX=1114h,AH=1Bh,AX=CD10h,MEM 0040h:0084h<br />

<strong>Index</strong>: text mode;font|text mode;screen rows<br />

--------V-101110-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - SET USER GRAPHICS CHARACTERS<br />

AX = 1110h<br />

ES:BP -> user table<br />

CX = bytes per character<br />

BL = row specifier<br />

00h user set<br />

DL = number of rows<br />

01h 14 rows<br />

02h 25 rows<br />

03h 43 rows<br />

Return: nothing<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

SeeAlso: AX=110Fh"Realtek",AX=1112h"Realtek",AX=1121h<br />

--------V-101111-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM MONOCHROME PATTERNS (PS,EGA,VGA)<br />

AX = 1111h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see AX=1110h)<br />

the "monochrome" patters are 8x14 pixels in size<br />

Saturday, January 08, 2011 11:31 AM<br />

-71-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AX=1101h,AX=1110h,AX=1112h,AX=1114h,AH=1Bh,AX=CD10h<br />

--------V-101111-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - SET ROM 8x14 GRAPHICS CHARACTERS<br />

AX = 1111h<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

SeeAlso: AX=110Fh"Realtek",AX=1110h"Realtek",AX=1122h<br />

--------V-101112-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM 8x8 DBL-DOT PATTERNS (PS,EGA,VGA)<br />

AX = 1112h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see AX=1110h)<br />

SeeAlso: AX=1103h,AX=1110h,AX=1111h,AX=1114h,AH=1Bh,AX=CD10h<br />

--------V-101112-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - SET ROM 8x8 DOUBLE-DOT CHARACTERS<br />

AX = 1112h<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

SeeAlso: AX=110Fh"Realtek",AX=1110h"Realtek",AX=1111h"Realtek",AX=1123h<br />

--------V-101114-----------------------------<br />

INT 10 - VIDEO - TEXT-MODE CHARGEN - LOAD ROM 8x16 CHARACTER SET (VGA)<br />

AX = 1114h<br />

BL = block to load<br />

Return: nothing<br />

Notes: (see AX=1110h)<br />

SeeAlso: AX=1104h,AX=1110h,AX=1111h,AX=1112h,AH=1Bh,AX=CD10h<br />

--------V-101118-----------------------------<br />

INT 10 - IBM SurePath BIOS - Officially "Private" Function<br />

AX = 1118h<br />

--------V-101120-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - SET USER 8x8 GRAPHICS CHARS (PS,EGA,VGA)<br />

AX = 1120h<br />

ES:BP -> user table for INT 1F<br />

Return: nothing<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

Saturday, January 08, 2011 11:31 AM<br />

-72-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AX=1121h,AX=1122h,AX=1123h,AX=1124h,AX=1129h,INT 1F"SYSTEM DATA"<br />

SeeAlso: INT 43"VIDEO DATA"<br />

--------V-101121-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - SET USER GRAPHICS CHARACTERS (PS,EGA,VGA)<br />

AX = 1121h<br />

ES:BP -> user table<br />

CX = bytes per character<br />

BL = row specifier<br />

00h user set<br />

DL = number of rows<br />

01h 14 rows<br />

02h 25 rows<br />

03h 43 rows<br />

Return: AL = new number of rows (Diamond Stealth64 Video)<br />

Note: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

SeeAlso: AX=1120h,AX=1122h,AX=1123h,AX=1124h,AX=1129h"Compaq"<br />

SeeAlso: AX=1129h"Diamond",INT 1F"SYSTEM DATA",INT 43"VIDEO DATA"<br />

--------V-101122-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x14 GRAPHICS CHARS (PS,EGA,VGA)<br />

AX = 1122h<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Notes: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

UltraVision v2+ sets INT 43 to the appropriate font on this call<br />

SeeAlso: AX=1111h,AX=1120h,AX=1121h,AX=1123h,AX=1124h,AX=1129h<br />

SeeAlso: INT 1F"SYSTEM DATA",INT 43"VIDEO DATA"<br />

--------V-101123-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x8 DOUBLE-DOT CHARS (PS,EGA,VGA)<br />

AX = 1123h<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Notes: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

UltraVision v2+ sets INT 43 to the appropriate font on this call<br />

SeeAlso: AX=1112h,AX=1120h,AX=1121h,AX=1122h,AX=1124h,AX=1129h<br />

SeeAlso: INT 1F"SYSTEM DATA",INT 43"VIDEO DATA"<br />

--------V-101124-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPHICS CHARS (VGA,MCGA)<br />

AX = 1124h<br />

Saturday, January 08, 2011 11:31 AM<br />

-73-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Notes: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

UltraVision v2+ sets INT 43 to the appropriate font on this call<br />

SeeAlso: AX=1120h,AX=1121h,AX=1122h,AX=1123h,AX=1129h<br />

SeeAlso: INT 1F"SYSTEM DATA",INT 43"VIDEO DATA"<br />

--------V-101129-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPH CHARS (Compaq Systempro)<br />

AX = 1129h<br />

BL = row specifier (see AX=1121h)<br />

Return: nothing<br />

Notes: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

UltraVision v2+ sets INT 43 to the appropriate font on this call<br />

SeeAlso: AX=1120h,AX=1121h,AX=1122h,AX=1123h,AX=1124h,INT 1F"SYSTEM DATA"<br />

SeeAlso: INT 43"VIDEO DATA"<br />

--------V-101129-----------------------------<br />

INT 10 - VIDEO - GRAPH-MODE CHARGEN - SET USER GRAPHICS CHARACTERS (Diamond)<br />

AX = 1129h<br />

DI:BP -> user table<br />

CX = bytes per character<br />

BL = row specifier<br />

00h user set<br />

DL = number of rows<br />

01h 14 rows<br />

02h 25 rows<br />

03h 43 rows<br />

Return: AL = new number of rows<br />

Notes: this function is meant to be called immediately after a mode set;<br />

results are unpredictable at other times<br />

supported by Diamond Stealth64 Video<br />

SeeAlso: AX=1120h,AX=1122h,AX=1123h,AX=1124h,INT 1F"SYSTEM",INT 43"VIDEO"<br />

--------V-101130-----------------------------<br />

INT 10 - VIDEO - GET FONT INFORMATION (EGA, MCGA, VGA)<br />

AX = 1130h<br />

BH = pointer specifier<br />

00h INT 1Fh pointer<br />

01h INT 43h pointer<br />

02h ROM 8x14 character font pointer<br />

03h ROM 8x8 double dot font pointer<br />

Saturday, January 08, 2011 11:31 AM<br />

-74-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

04h ROM 8x8 double dot font (high 128 characters)<br />

05h ROM alpha alternate (9 by 14) pointer (EGA,VGA)<br />

06h ROM 8x16 font (MCGA, VGA)<br />

07h ROM alternate 9x16 font (VGA only) (see #00021)<br />

11h (UltraVision v2+) 8x20 font (VGA) or 8x19 font (autosync EGA)<br />

12h (UltraVision v2+) 8x10 font (VGA) or 8x11 font (autosync EGA)<br />

Return: ES:BP = specified pointer<br />

CX = bytes/character of on-screen font (not the requested font!)<br />

DL = highest character row on screen<br />

Note: for UltraVision v2+, the 9xN alternate fonts follow the corresponding<br />

8xN font at ES:BP+256N<br />

BUG: the IBM EGA and some other EGA cards return in DL the number of rows on<br />

screen rather than the highest row number (which is one less).<br />

SeeAlso: AX=1100h,AX=1103h,AX=1120h,INT 1F"SYSTEM DATA",INT 43"VIDEO DATA"<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of alternate font table [array]:<br />

Offset Size Description (Table 00021)<br />

00h BYTE character to be replaced (00h = end of table)<br />

01h N BYTEs graphics data for character, one byte per scan line<br />

--------V-101130BX4D4F-----------------------<br />

INT 10 - M10_SCR.COM v3.5+ - INSTALLATION CHECK<br />

AX = 1130h<br />

BX = 4D4Fh<br />

Return: CX = 4F4Dh if installed<br />

ES:BP -> M10_SCR INT 10 handler<br />

Program: M10_SCR is a shareware extended text mode and font driver by<br />

I.V. Morozov<br />

SeeAlso: INT 16/AX=4D4Fh<br />

--------V-1012-------------------------------<br />

INT 10 - BIOS Window Extension v1.1 - GET BLANKING ATTRIBUTE<br />

AH = 12h<br />

Return: BH = attribute to use on blanked lines when scrolling<br />

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal<br />

SeeAlso: AH=11h"Window",AH=12h"Window"<br />

--------V-1012-------------------------------<br />

INT 10 - Tandy 2000 - VIDEO - SCROLL WINDOW<br />

AH = 12h<br />

AL = number of rows or columns to scroll<br />

BH = buffer flag<br />

00h data in user buffer<br />

ES:SI -> buffer containing character/attribute pairs<br />

-75-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

01h no buffer, fill emptied rows/columns with blanks<br />

BL = direction in which to scroll<br />

00h up<br />

01h down<br />

02h left<br />

03h right<br />

CH,CL = row,column of upper left corner of scroll area<br />

DH,DL = row,column of lower right corner<br />

Return: nothing<br />

Notes: this interrupt is identical to INT 52 on Tandy 2000<br />

the user buffer, if supplied, must be organized by row; regardless of<br />

the scroll direction, all character/attribute pairs for the first<br />

row are first, then the pairs for the second row, etc.<br />

SeeAlso: AH=00h,AH=0Bh/BH=02h,AH=11h"Tandy 2000",AH=12h"Tandy 2000"<br />

SeeAlso: INT 52"Tandy"<br />

--------V-1012--BL10-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (PS, EGA, VGA, MCGA) - GET EGA INFO<br />

AH = 12h<br />

BL = 10h<br />

Return: BH = video state<br />

00h color mode in effect (I/O port 3Dxh)<br />

01h mono mode in effect (I/O port 3Bxh)<br />

BL = installed memory (00h = 64K, 01h = 128K, 02h = 192K, 03h = 256K)<br />

CH = feature connector bits (see #00022)<br />

CL = switch settings (see #00023,#00024)<br />

AH destroyed (at least by Tseng ET4000 BIOS v8.00n)<br />

Note: one possible check for the presence of an EGA or later display card<br />

is to call this function with BH=FFh; if not present, BH will be<br />

unchanged on return<br />

another installation check is used by Athena Digital's HGCIBM, which<br />

sets CX to FFFFh on calling and checks whether it has been changed<br />

on return<br />

<strong>Index</strong>: installation check;EGA<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for feature connector bits:<br />

Bit(s) Description (Table 00022)<br />

0 FEAT 1 line, state 2<br />

1 FEAT 0 line, state 2<br />

2 FEAT 1 line, state 1<br />

3 FEAT 0 line, state 1<br />

4-7 unused (0)<br />

-76-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Bitfields for switch settings:<br />

Bit(s) Description (Table 00023)<br />

0 switch 1 OFF<br />

1 switch 2 OFF<br />

2 switch 3 OFF<br />

3 switch 4 OFF<br />

4-7 unused<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00024)<br />

Values for switch settings on original EGA/VGA:<br />

00h primary MDA/HGC, secondary EGA+ 40x25<br />

01h-03h primary MDA/HGC, secondary EGA+ 80x25<br />

04h primary CGA 40x25, secondary EGA+ 80x25 mono<br />

05h primary CGA 80x25, secondary EGA+ 80x25 mono<br />

06h primary EGA+ 40x25, secondary MDA/HGC (optional)<br />

07h-09h primary EGA+ 80x25, secondary MDA/HGC (optional)<br />

0Ah primary EGA+ 80x25 mono,secondary CGA 40x25 (optional)<br />

0Bh primary EGA+ 80x25 mono,secondary CGA 80x25 (optional)<br />

--------V-1012--BL11-------------------------<br />

INT 10 - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET BIOS INFO<br />

AH = 12h<br />

BL = 11h<br />

Return: AL = 12h if function supported<br />

BL = ??? (10h)<br />

ES:BP -> BIOS info structure (see #00025)<br />

SeeAlso: AH=12h/BL=12h"TRIDENT"<br />

Format of Trident BIOS Info structure:<br />

Offset Size Description (Table 00025)<br />

00h BYTE ??? (0000h)<br />

01h BYTE OEM Code (00h for original Trident)<br />

02h WORD ID??? (1073h for 8800BR, 1074 for 8800CS)<br />

04h 8 BYTEs BIOS date ('mm/dd/yy')<br />

0Ch WORD ???<br />

0Eh 8 BYTEs BIOS Version (' C3-128 ', ' C3-129 ')<br />

--------V-1012--BL12-------------------------<br />

INT 10 - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET VIDEO RAM SIZE<br />

AH = 12h<br />

BL = 12h<br />

Return: AL = 12h if function supported<br />

-77-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = number of 256K banks of RAM installed<br />

(read from CRTC register 1Fh)<br />

SeeAlso: AH=12h/BL=11h"TRIDENT"<br />

--------V-1012--BL20-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (PS,EGA,VGA,MCGA) - ALTERNATE PRTSC<br />

AH = 12h<br />

BL = 20h select alternate print screen routine<br />

Return: nothing<br />

Desc: installs a PrtSc routine from the video card's BIOS to replace the<br />

default PrtSc handler from the ROM BIOS, which usually does not<br />

understand screen heights other than 25 lines<br />

Note: some adapters disable print-screen instead of enhancing it<br />

SeeAlso: INT 05"PRINT SCREEN"<br />

--------V-1012--BL2E-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = 2Eh<br />

Return: nothing<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BL30-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - SELECT VERTICAL RESOLUTION<br />

AH = 12h<br />

BL = 30h<br />

AL = vertical resolution<br />

00h 200 scan lines<br />

01h 350 scan lines<br />

02h 400 scan lines<br />

Return: AL = 12h if function supported<br />

Desc: specify the number of scan lines used to display text modes<br />

Note: the specified resolution will take effect on the next mode set<br />

SeeAlso: AH=00h<br />

--------V-1012--BL31-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - PALETTE LOADING<br />

AH = 12h<br />

BL = 31h<br />

AL = new state<br />

00h enable default palette loading<br />

01h disable default palette loading<br />

Return: AL = 12h if function supported<br />

Desc: specify whether a default palette should be loaded when the display<br />

Saturday, January 08, 2011 11:31 AM<br />

-78-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

mode is set<br />

SeeAlso: AH=00h<br />

--------V-1012--BL32-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - VIDEO ADDRESSING<br />

AH = 12h<br />

BL = 32h<br />

AL = new state<br />

00h enable video addressing<br />

01h disable video addressing<br />

Return: AL = 12h if function supported<br />

Desc: specify whether the CPU should have access to video memory and the<br />

display adapters I/O registers<br />

--------V-1012--BL33-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - GRAY-SCALE SUMMING<br />

AH = 12h<br />

BL = 33h<br />

AL = new state<br />

00h enable gray scale summing<br />

01h disable gray scale summing<br />

Return: AL = 12h if function supported<br />

Desc: specify whether or not colors should be converted to gray scale when<br />

palette or color registers are loaded<br />

SeeAlso: AX=101Bh,AX=BF06h,AX=BF08h<br />

--------V-1012--BL34-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - CURSOR EMULATION<br />

AH = 12h<br />

BL = 34h<br />

AL = new state<br />

00h enable alphanumeric cursor emulation<br />

01h disable alphanumeric cursor emulation<br />

Return: AL = 12h if function supported<br />

Desc: specify whether the BIOS should automatically remap cursor start/end<br />

according to the current character height in text modes<br />

SeeAlso: AH=01h,AH=03h<br />

--------V-1012--BL35-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (PS) - DISPLAY-SWITCH INTERFACE<br />

AH = 12h<br />

BL = 35h<br />

AL = subfunction<br />

00h initial adapter video off<br />

01h initial planar video on<br />

Saturday, January 08, 2011 11:31 AM<br />

-79-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

02h switch active video off<br />

03h switch inactive video on<br />

80h *UNDOCUMENTED* set system board video active flag<br />

ES:DX -> buffer for 128 byte save area (if AL = 00h-03h)<br />

Return: AL = 12h if function supported<br />

Desc: switch between two video adapters which may otherwise have address<br />

conflicts<br />

SeeAlso: AX=BF00h,AX=BF01h,INT 6D"VGA"<br />

--------V-1012--BL36-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNCTION SELECT (PS, VGA) - VIDEO REFRESH CONTROL<br />

AH = 12h<br />

BL = 36h<br />

AL = new state<br />

00h enable refresh<br />

01h disable refresh<br />

Return: AL = 12h if function supported<br />

Desc: specify whether the contents of video memory should be displayed on<br />

the screen; disabling refresh effectively blanks the screen<br />

Note: when display refresh is disabled, the entire screen displays the color<br />

specified by the DAC color register 00h; thus to actually blank the<br />

screen, the application must first ensure that that register has been<br />

set to black<br />

BUG: GEM/VIEWMAX ET3000 and ET4000 drivers dated 1988/6/23 do not correctly<br />

reenable refresh after the screen has been blanked due to inactivity,<br />

resulting in a total loss of video synchronization<br />

SeeAlso: AX=BF05h<br />

--------V-1012--BL37-------------------------<br />

INT 10 - VIDEO - XGA - MAINFRAME INTERACTIVE SUPPORT<br />

AH = 12h<br />

BL = 37h<br />

AL = text attribute type (00h normal VGA, 01h mainframe type)<br />

Return: AL = 12h if supported<br />

SeeAlso: #00026,AH=08h,#00042<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for XGA mainframe type character attributes:<br />

Bit(s) Description (Table 00026)<br />

7 blink double rate (75% ON time) or use color 8 as background<br />

(see AX=1003h)<br />

6 reverse video<br />

5 underlined<br />

4 left-most and right-most dots of underline area inverted<br />

-80-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

3 foreground intensity/character font select<br />

2-0 foreground color<br />

SeeAlso: #00014,#00036<br />

--------V-1012--BL38-------------------------<br />

INT 10 - IBM SurePath BIOS - Officially "Private" Function<br />

AH = 12h<br />

BL = 38h<br />

SeeAlso: AX=1118h,AH=12h/BL=39h<br />

--------V-1012--BL39-------------------------<br />

INT 10 - IBM SurePath BIOS - Officially "Private" Function<br />

AH = 12h<br />

BL = 39h<br />

SeeAlso: AX=1118h,AH=12h/BL=38h,AH=12h/BL=3Ah<br />

--------V-1012--BL3A-------------------------<br />

INT 10 - IBM SurePath BIOS - Officially "Private" Function<br />

AH = 12h<br />

BL = 3Ah<br />

SeeAlso: AX=1118h,AH=12h/BL=39h<br />

--------V-1012--BL53-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v8.00 (1991/06/07) - BUG<br />

AH = 12h<br />

BL = 53h<br />

Note: due to an omitted end-of-list marker, this version of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BL57-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v8.00 (1991/06/07) - BUG<br />

AH = 12h<br />

BL = 57h<br />

Note: due to an omitted end-of-list marker, this version of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BH55-------------------------<br />

INT 10 - VIDEO - ALTERNATE FUNC SELECT (ATI,Tatung,Taxan) - ENHANCED FEATURES<br />

AH = 12h<br />

BH = 55h<br />

BL = subfunction<br />

00h disable enhanced features<br />

01h enable enhanced features<br />

02h get status<br />

Return: AL = status flags (see #00027)<br />

03h disable register trapping (CGA emulation)<br />

04h enable register trapping<br />

Saturday, January 08, 2011 11:31 AM<br />

-81-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

05h program video mode<br />

ES:BP -> video mode table (see #00028)<br />

06h get mode table<br />

AL = video mode<br />

Return: ES:BP -> table suitable for mode AL<br />

(and subfunc BL=05h) (see #00028)<br />

BP = FFFFh on error<br />

SI = 0000h (ATI Mach32)<br />

Note: the ATI Mouse driver (MOUSE.COM/MOUSE.SYS) uses subfunction 06h to get<br />

the mode table for mode 03h, and then looks for a signature string<br />

beginning within 32 bytes of the offset specified by the word at<br />

ES:000Ch<br />

SeeAlso: AH=FFh"Oak"<br />

<strong>Index</strong>: installation check;ATI video adapters<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for status flags:<br />

Bit(s) Description (Table 00027)<br />

3 set if enhanced features enabled<br />

7-5 monitor type<br />

000 PS/2 mono<br />

001 PS/2 color<br />

010 multi-sync<br />

011 Taxan 650 25kHz<br />

100 RGB<br />

101 mono<br />

110 EGA<br />

111 Compaq internal<br />

Format of ATI VGA Wonder video mode table:<br />

Offset Size Description (Table 00028)<br />

00h BYTE number of columns<br />

01h BYTE maximum row (number of rows - 1)<br />

02h BYTE scan lines per row<br />

03h WORD video buffer size in bytes<br />

05h 4 BYTEs values for Sequencer registers 1-4<br />

09h BYTE value for Miscellaneous Output register<br />

0Ah 25 BYTEs values for CRTC registers 00h-18h<br />

00h horizontal total size (chars)<br />

01h horizontal displayed (chars)<br />

02h horizontal sync position (chars)<br />

03h horizontal sync width (chars)<br />

-82-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

04h vertical total size (char rows)<br />

05h vertical total adjust (scan lines)<br />

06h vertical displayed (char rows)<br />

07h vertical sync position (char rows)<br />

08h interlace mode<br />

09h max scan line in row<br />

0Ah cursor start scan line<br />

0Bh cursor end scan line<br />

0Ch screen memory start (high)<br />

0Dh screen memory start (low)<br />

0Eh cursor address (high)<br />

0Fh cursor address (low)<br />

10h light pen (high)<br />

11h light pen (low)<br />

23h 20 BYTEs default palette (values for Attribute Controller regs 00h-13h)<br />

37h 9 BYTEs values for Graphics Controller registers 00h-08h<br />

--------V-1012--BL74-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = 74h<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BL80-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = 80h<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BL80-------------------------<br />

INT 10 - Cirrus Logic BIOS - INQUIRE VGA TYPE<br />

AH = 12h<br />

BL = 80h<br />

Return: AX = controller type in bits 13-0 (see #00029)<br />

bit 14: ???<br />

bit 15: ???<br />

BL = silicon revision number (bit 7 set if not available)<br />

BH = ???<br />

bit 2 set if using CL-GD 6340 LCD interface<br />

SeeAlso: AH=12h/BL=81h,AH=12h/BL=82h,AH=12h/BL=85h,AH=12h/BL=9Ah,AH=12h/BL=A1h<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00029)<br />

-83-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Values for Cirrus Logic video controller type:<br />

0000h no extended alternate select support<br />

0001h reserved<br />

0002h CL-GD510/520<br />

0003h CL-GD610/620<br />

0004h CL-GD5320<br />

0005h CL-GD6410<br />

0006h CL-GD5410<br />

0007h CL-GD6420<br />

0008h CL-GD6412<br />

0010h CL-GD5401<br />

0011h CL-GD5402<br />

0012h CL-GD5420<br />

0013h CL-GD5422<br />

0014h CL-GD5424<br />

0015h CL-GD5426<br />

0016h CL-GD5420r1<br />

0017h CL-GD5402r1<br />

0018h CL-GD5428<br />

0019h CL-GD5429<br />

0020h CL-GD6205/15/25<br />

0021h CL-GD6215<br />

0022h CL-GD6225<br />

0023h CL-GD6235<br />

0024h CL-GD6245<br />

0030h CL-GD5432<br />

0031h CL-GD5434<br />

0032h CL-GD5430<br />

0033h CL-GD5434 rev. E and F<br />

0035h CL-GD5440<br />

0036h CL-GD5436<br />

0039h CL-GD5446<br />

0040h CL-GD6440<br />

0041h CL-GD7542 (Nordic)<br />

0042h CL-GD7543 (Viking)<br />

0043h CL-GD7541 (Nordic Lite)<br />

0050h CL-GD5452 (Northstar)<br />

0052h CL-GD5452 (Northstar) ???<br />

SeeAlso: #00732,#00743<br />

--------V-1012--BL81-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET BIOS VERSION NUMBER<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-84-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = 12h<br />

BL = 81h<br />

Return: AH = BIOS major version<br />

AL = BIOS minor version<br />

SeeAlso: AH=12h/BL=80h,AH=12h/BL=82h<br />

--------V-1012--BL82-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET DESIGN REVISION CODE<br />

AH = 12h<br />

BL = 82h<br />

Return: AL = chip revision<br />

AH = ??? (AFh for v1.01)<br />

SeeAlso: AH=12h/BL=80h,AH=12h/BL=81h,#00732 at INT 1A/AX=B102h<br />

--------V-1012--BL84-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - INQUIRE OPTIONS<br />

AH = 12h<br />

BL = 84h<br />

Return: AX = user options word (see #00030)<br />

SeeAlso: AH=12h/BL=89h,AH=12h/BL=8Ah,AH=12h/BL=8Bh,AH=12h/BL=8Ch,AH=12h/BL=8Fh<br />

SeeAlso: AH=12h/BL=90h,AH=12h/BL=9Ah<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Cirrus Logic user options word:<br />

Bit(s) Description (Table 00030)<br />

1,0 centering<br />

00 vertical centered, 01 from bottom, 10 from top, 11 reserved<br />

3,2 720-dot fix-up options<br />

00 OR every 8th and 9th pixel<br />

01 display MGA mode from left<br />

10 display MGA mode from right<br />

11 skip every 9th pixel<br />

4 ???<br />

7-5 video mode (001 CGA, 010 MGA, 011 EGA, 100 VGA)<br />

8 external monitor enabled instead of LCD panel<br />

9 vertical expand mode enabled<br />

10 8-bit mode instead of 16-bit mode<br />

11 normal video rather than reverse video (for LCD)<br />

12 attribute automap rather than attribute emulation<br />

13 bold mode disabled (default)<br />

14 fast bandwidth<br />

15 ???<br />

--------V-1012--BL85-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET INSTALLED MEMORY<br />

-85-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = 12h<br />

BL = 85h<br />

Return: AL = number of 64K banks of video memory<br />

SeeAlso: AH=12h/BL=80h,AH=12h/BL=93h<br />

--------V-1012--BL89-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - EN/DISABLE REVERSE VIDEO MODE<br />

AH = 12h<br />

BL = 89h<br />

AL = new state (00h enabled, 01h disabled)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Ah,AH=12h/BL=8Bh<br />

--------V-1012--BL8A-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - SET FRAME COLOR<br />

AH = 12h<br />

BL = 8Ah<br />

AL = new gray-scale color (00h = black to 0Fh = white)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Fh<br />

--------V-1012--BL8B-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE BOLD MODE<br />

AH = 12h<br />

BL = 8Bh<br />

AL = new state (00h enabled, 01h disabled)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Ch,AH=12h/BL=8Fh<br />

--------V-1012--BL8C-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - SET AUTOMAP/EMULATE ATTRIBUTES<br />

AH = 12h<br />

BL = 8Ch<br />

AL = new state<br />

00h enable automap<br />

01h disable automap and emulate attributes<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Bh<br />

--------V-1012--BL8F-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE EXPAND MODE<br />

AH = 12h<br />

BL = 8Fh<br />

AL = new state (00h enabled, 01h disabled)<br />

Return: nothing<br />

Note: when expand mode is enabled, the vertical dimension is enlarged to<br />

Saturday, January 08, 2011 11:31 AM<br />

-86-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

full screen<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Bh,AH=12h/BL=90h<br />

--------V-1012--BL90-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - SET CENTERING MODE<br />

AH = 12h<br />

BL = 90h<br />

AL = new position<br />

00h centered<br />

01h from top<br />

02h from bottom<br />

03h from top<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Fh<br />

--------V-1012--BL91-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - SET 720-DOT FIXUP MODE<br />

AH = 12h<br />

BL = 91h<br />

AL = new mode<br />

00h display MGA mode from left of screen (default)<br />

01h display MGA from right<br />

02h skip every ninth pixel<br />

03h OR every 8th and 9th pixel<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Ah,AH=12h/BL=90h<br />

--------V-1012--BL92-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - LCD panel - SWITCH DISPLAY<br />

AH = 12h<br />

BL = 92h<br />

AL = new display (00h LCD, 01h external monitor)<br />

Return: nothing<br />

Note: the deselected display is disabled<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=90h,AH=12h/BL=94h<br />

--------V-1012--BL93-------------------------<br />

INT 10 - Cirrus Logic BIOS - FORCE 8-BIT OR 16-BIT OPERATION<br />

AH = 12h<br />

BL = 93h<br />

AL = new I/O width (00h = 16 bits, 01h = 8 bits)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=9Ah<br />

--------V-1012--BL94-------------------------<br />

INT 10 - Cirrus Logic BIOS v3.02 - POWER CONSERVATION<br />

Saturday, January 08, 2011 11:31 AM<br />

-87-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = 12h<br />

BL = 94h<br />

AL = new state (00h wake up monitor, 01h shut down display)<br />

Return: nothing<br />

Note: AL=01h is reported not to work properly on the LCD panel<br />

SeeAlso: AH=12h/BL=84h,AH=12h/BL=92h<br />

--------V-1012--BL9A-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET USER OPTIONS<br />

AH = 12h<br />

BL = 9Ah<br />

Return: AX = options word 1 (see #00031)<br />

CX = options word 2 (see #00032)<br />

BX,DX reserved<br />

SeeAlso: AH=12h/BL=80h,AH=12h/BL=84h,AH=12h/BL=93h,AH=12h/BL=A0h<br />

SeeAlso: AH=12h/BL=A3h,AH=12h/BL=A4h,#00732 at INT 1A/AX=B102h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Cirrus Logic options word 1:<br />

Bit(s) Description (Table 00031)<br />

0,1 reserved<br />

2-4 monitor type<br />

5-6 maximum vertical resolution<br />

7-9 reserved<br />

10 force 8-bit operation<br />

11-13 reserved<br />

14 vertical refresh frequency at 640x480<br />

=0 60 Hz<br />

=1 high refresh<br />

15 reserved<br />

SeeAlso: AH=12h/BL=AEh<br />

Bitfields for Cirrus Logic options word 2:<br />

Bit(s) Description (Table 00032)<br />

15-13 vertical refresh frequency at 1024x768<br />

12-11 vertical refresh frequency at 800x600<br />

10-6 reserved<br />

5-4 vertical refresh frequency at 1280x1024<br />

3-0 reserved<br />

SeeAlso: #00033<br />

Bitfields for Cirrus Logic Options word 2 (alternate???):<br />

Bit(s) Description (Table 00033)<br />

-88-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

15-12 vertical refresh frequency at 1024x768<br />

0000 43i Hz<br />

0001 60 Hz<br />

0010 70 Hz<br />

0011 72 Hz<br />

0100 76 Hz<br />

other reserved<br />

11-8 vertical refresh frequency at 800x600<br />

0000 56 Hz<br />

0001 60 Hz<br />

0010 72 Hz<br />

0011 75 Hz<br />

other reserved<br />

7-4 maximum vertical resolution<br />

0000 480 scanlines<br />

0001 600 scanlines<br />

0010 768 scanlines<br />

0011 1024 scanlines<br />

other reserved<br />

3-1 vertical refresh frequency at 1280x1024<br />

000 43i Hz<br />

001 60 Hz<br />

010 71.2 Hz (CL-GD5434 rev. E and F)<br />

011 74 Hz (CL-GD5434 rev. E and F)<br />

other reserved<br />

0 reserved<br />

SeeAlso: #00032<br />

--------V-1012--BLA0-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET VIDEO MODE AVAILABILITY<br />

AH = 12h<br />

BL = A0h<br />

AL = video mode number (00h-7Fh)<br />

Return: AH bit 0: video mode supported<br />

BX = offset of BIOS subroutine to fixup standard video parameters<br />

(call subroutine with DS:SI and ES:DI as returned by this call)<br />

DS:SI -> standard video parameters or FFFFh:FFFFh<br />

ES:DI -> supplemental video parameters or FFFFh:FFFFh<br />

SeeAlso: AH=00h,AH=12h/BL=9Ah,AH=12h/BL=A1h<br />

--------V-1012--BLA1-------------------------<br />

INT 10 - Cirrus Logic BIOS - READ MONITOR TYPE AND ID FROM 15-PIN CONNECTOR<br />

AH = 12h<br />

Saturday, January 08, 2011 11:31 AM<br />

-89-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

BL = A1h<br />

Return: BH = monitor ID (see #00034)<br />

BL = monitor type (00h color, 01h grayscale, 02h no display)<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A2h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00034)<br />

Values for Cirrus Logic monitor ID:<br />

00h-08h reserved<br />

09h IBM 8604/8507 or equivalent<br />

0Ah IBM 8514 or equivalent<br />

0Bh IBM 8515 or equivalent<br />

0Dh IBM 8503 or equivalent<br />

0Eh IBM 8512/8513 or equivalent<br />

0Fh no monitor<br />

--------V-1012--BLA2-------------------------<br />

INT 10 - Cirrus Logic BIOS - SET MONITOR HORIZONTAL RETRACE FREQUENCY<br />

AH = 12h<br />

BL = A2h<br />

AL = retrace rate<br />

00h standard VGA (31.5 kHz)<br />

01h 8514-compatible (31.5 kHz and 35.5 kHz interlaced)<br />

02h SuperVGA (31.5-35.1 kHz)<br />

03h extended SuperVGA (31.5-35.5 kHz)<br />

04h multi-frequency (31.5-37.8 kHz)<br />

05h extended multi-frequency (31.5-48.0 kHz)<br />

06h super multi-frequency (31.5-56.0 kHz)<br />

07h extended super multi-frequency (31.5-64.0 kHz)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A0h,AH=12h/BL=A4h<br />

--------V-1012--BLA3-------------------------<br />

INT 10 - Cirrus Logic BIOS - SET VGA REFRESH<br />

AH = 12h<br />

BL = A3h<br />

AL = refresh rate for 640x480 (00h normal, 01h high)<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A4h<br />

--------V-1012--BLA4-------------------------<br />

INT 10 - Cirrus Logic BIOS - SET MONITOR TYPE<br />

AH = 12h<br />

BL = A4h<br />

AL = options 1<br />

-90-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

bits 7-4 = vertical refresh at 640x480<br />

(0 = 60Hz, 1 = 72Hz, other reserved)<br />

bits 3-0 = maximum vertical resolution<br />

(0 = 480 scanlines, 1 = 600, 2 = 768, 3 = 1024, other reserved)<br />

BH = options 2<br />

bits 7-4 = vertical refresh at 1024x768<br />

(0=87Hz-int, 1=60Hz, 2=70Hz, 3=72Hz, 4=76Hz, other reserved)<br />

bits 3-0 = vertical refresh at 800x600<br />

(0 = 56Hz, 1 = 60Hz, 2 = 72Hz, other reserved)<br />

CH = options 3<br />

bits 7-4 = vertical refresh at 1280x1024<br />

(0=87Hz-int, 1=60Hz, 2=70Hz, other reserved)<br />

bits 3-0: reserved<br />

CL,DX reserved<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A3h<br />

--------V-1012--BLAE-------------------------<br />

INT 10 - Cirrus Logic BIOS - GET HIGH REFRESH<br />

AH = 12h<br />

BL = AEh<br />

Return: AL = result<br />

bits 7-1: reserved<br />

bit 0: 640x480 high refresh rate<br />

=0 72 Hz<br />

=1 75 Hz<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A3h,AH=12h/BL=A4h,AH=12h/BL=AFh<br />

--------V-1012--BLAF-------------------------<br />

INT 10 - Cirrus Logic BIOS - SET HIGH REFRESH<br />

AH = 12h<br />

BL = AFh<br />

AL = option<br />

bits 7-1: reserved<br />

bit 0: 640x480 high refresh rate<br />

=0 72 Hz<br />

=1 75 Hz<br />

Return: nothing<br />

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A3h,AH=12h/BL=A4h,AH=12h/BL=AEh<br />

--------V-1012--BLBE-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = BEh<br />

Saturday, January 08, 2011 11:31 AM<br />

-91-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BLC6-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = C6h<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BLF0-------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 12h<br />

BL = F0h<br />

Note: due to an omitted end-of-list marker, these versions of the BIOS will<br />

crash the system on this function<br />

--------V-1012--BLF1--------------------------<br />

INT 10 - Tseng ET-4000 BIOS - GET/SET SCREEN REFRESH RATE<br />

AH = 12h<br />

BL = F1h<br />

AL = subfunction<br />

00h set refresh rate<br />

01h get refresh rate<br />

BH = video mode<br />

00h 640x480<br />

01h 800x600<br />

02h 1024x768<br />

03h 1280x1024<br />

CX = new refresh rate (see #00035) if AL = 00h<br />

Return: AL = 12h if supported<br />

CX = current rate (for AL=00h, a changed CX indicates failure)<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00035)<br />

Values for Tseng ET4000 refresh rate:<br />

CX 640x480 800x600 1024x768/1280x1024<br />

00h 60 Hz 56 Hz interlaced<br />

01h 72 Hz 60 Hz 60 Hz<br />

02h 75 Hz 72 Hz 70 Hz<br />

03h 90 Hz 75 Hz 75 Hz<br />

04h -- 90 Hz --<br />

--------V-1013-------------------------------<br />

INT 10 - VIDEO - WRITE STRING (AT and later,EGA)<br />

AH = 13h<br />

-92-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AL = write mode<br />

bit 0: update cursor after writing<br />

bit 1: string contains alternating characters and attributes<br />

bits 2-7: reserved (0)<br />

BH = page number<br />

BL = attribute if string contains only characters<br />

CX = number of characters in string<br />

DH,DL = row,column at which to start writing<br />

ES:BP -> string to write<br />

Return: nothing<br />

Notes: recognizes CR, LF, BS, and bell; for the ET4000 BIOS, scrolling,<br />

backspace, and CR only take place in the active page<br />

also available PC or XT with EGA or higher<br />

HP 95LX only supports write mode 00h<br />

IBM documents AL=10h,11h,20h,21h as "private" rather than "reserved"<br />

with PhysTechSoft's PTS ROM-DOS the AL,BH,BL,DH, and DL values are<br />

ignored on entry.<br />

BUG: on the IBM VGA Adapter, any scrolling which may occur is performed on<br />

the active page rather than the requested page<br />

SeeAlso: AH=09h,AH=0Ah,AH=13h"DOS/V"<br />

--------J-1013-------------------------------<br />

INT 10 - DOS/V - READ/WRITE DOUBLE-BYTE CHARACTER SET CHARACTERS/ATTRIBUTES<br />

AH = 13h<br />

AL = function<br />

10h read characters and standard attributes<br />

11h read characters and extended attributes<br />

12h write characters and standard attributes<br />

13h write characters and extended attributes<br />

BH = 00h<br />

CX = number of characters to transfer<br />

DH,DL = row,column at which to start transfer<br />

ES:BP -> buffer for/containing characters and attributes (see #00036)<br />

Return: ES:BP buffer filled if reading<br />

Program: DOS/V is a Japanese-language version of MS-DOS which can run on<br />

standard (non-Japanese) ATs and compatible equipped with a VGA or<br />

newer video adapter<br />

Notes: subfunctions 11h and 13h are only valid when DOS/V is using video<br />

mode 73h<br />

the cursor position is not changed by these functions<br />

extended attributes consist of three bytes; the first is the standard<br />

character attribute byte, the second is as described below, and the<br />

Saturday, January 08, 2011 11:31 AM<br />

-93-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

third is always zero in current versions<br />

SeeAlso: AH=00h,AH=13h"VIDEO"<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for DOS/V second extended attribute byte:<br />

Bit(s) Description (Table 00036)<br />

7 underline using foreground color<br />

6 reverse foreground/background specified in standard attribute byte<br />

5-4 unused<br />

3 vertical white grid line in cell<br />

2 horizontal white grid line in cell<br />

1-0 unused<br />

SeeAlso: #00014,#00026<br />

--------V-101400-----------------------------<br />

INT 10 - VIDEO - LOAD USER-SPECIFIED LCD CHARACTER FONT (CONV,Compaq Port 386)<br />

AX = 1400h<br />

ES:DI -> character font<br />

BH = number of bytes per character<br />

08h or 10h (Compaq)<br />

BL = 00h load main font (block 0)<br />

01h load alternate font (block 1)<br />

CX = number of characters to store<br />

DX = character offset into RAM font area<br />

Return: nothing<br />

SeeAlso: AX=1100h,AX=1110h,AX=1401h<br />

--------V-101401-----------------------------<br />

INT 10 - VIDEO - LOAD SYSTEM ROM DEFAULT LCD CHARACTER FONT (CONV,CP386)<br />

AX = 1401h<br />

BL = font to load<br />

00h main font (block 0)<br />

01h alternate font (block 1)<br />

Return: nothing<br />

SeeAlso: AX=1100h,AX=1102h,AX=1400h<br />

--------V-101402-----------------------------<br />

INT 10 - VIDEO - SET MAPPING OF LCD HIGH INTENSITY ATTRIBUTES (CONV,CP386)<br />

AX = 1402h<br />

BL = subfunction<br />

00h ignore high intensity attribute<br />

01h map high intensity to reverse video<br />

02h map high intensity to underscore<br />

03h map high intensity to selected alternate font<br />

B0h half intensity (Compaq)<br />

-94-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

B1h toggle active intensity bit interpretation (CP386)<br />

Return: nothing<br />

--------V-1015-------------------------------<br />

INT 10 - VIDEO - GET PHYSICAL DISPLAY PARAMETERS (CONVERTIBLE)<br />

AH = 15h<br />

Return: AX = alternate display adapter type (see #00037)<br />

ES:DI -> parameter table (see #00038)<br />

SeeAlso: AH=1Bh<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00037)<br />

Values for PC Convertible alternate display adapter type:<br />

0000h none<br />

5140h LCD<br />

5153h CGA<br />

5151h mono<br />

Format of PC Convertible display parameter table:<br />

Offset Size Description (Table 00038)<br />

00h WORD monitor model number<br />

02h WORD vertical pixels per meter<br />

04h WORD horizontal pixels per meter<br />

06h WORD total vertical pixels<br />

08h WORD total horizontal pixels<br />

0Ah WORD horizontal pixel separation in micrometers<br />

(width, center-to-center)<br />

0Ch WORD vertical pixel separation in micrometers<br />

(height, center-to-center)<br />

--------V-1015-------------------------------<br />

INT 10 - VIDEO - SET SUPERIMPOSE MODE (Sperry PC)<br />

AH = 15h<br />

AL = superimpose mode<br />

00h show graphics screen<br />

01h show text screen<br />

02h show text screen superimposed on graphics screen<br />

Return: nothing<br />

--------J-1018-------------------------------<br />

INT 10 - VIDEO - DOS/V - GET/SET FONT PATTERN<br />

AH = 18h<br />

AL = subfunction<br />

00h get font pattern<br />

01h set font pattern<br />

-95-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BX = 0000h<br />

CL = character size in bytes (01h,02h)<br />

CH = 00h<br />

DH = character width in pixels<br />

DL = character height in pixels<br />

ES:DI -> buffer for/containing font image<br />

Return: AL = status (00h successful, else error)<br />

ES:DI buffer filled for function 00h if successful<br />

Note: the supported font sizes are 8x16 single-byte, 8x19 single-byte,<br />

16x16 double-byte, and 24x24 double-byte<br />

SeeAlso: AH=19h,INT 16/AH=14h<br />

--------V-1019-------------------------------<br />

INT 10 - Japanese VIDEO - DOUBLE-BYTE CHARACTER SET SHIFT INFORMATION<br />

AH = 19h<br />

???<br />

Return: ???<br />

SeeAlso: AH=18h,INT 16/AH=14h<br />

--------V-101A00-----------------------------<br />

INT 10 - VIDEO - GET DISPLAY COMBINATION CODE (PS,VGA/MCGA)<br />

AX = 1A00h<br />

Return: AL = 1Ah if function was supported<br />

BL = active display code (see #00039)<br />

BH = alternate display code (see #00039)<br />

Notes: this function is commonly used to check for the presence of a VGA<br />

this function is supported on the ATI EGA Wonder with certain<br />

undocumented configuration switch settings, even though the EGA<br />

Wonder does not support VGA graphics; to distinguish this case,<br />

call AX=1C00h with CX nonzero, which the EGA Wonder does not support<br />

SeeAlso: AH=12h/BL=35h,AX=1A01h,AH=1Bh,AH=1Ch,MEM 0040h:008Ah<br />

<strong>Index</strong>: installation check;VGA<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00039)<br />

Values for display combination code:<br />

00h no display<br />

01h monochrome adapter w/ monochrome display<br />

02h CGA w/ color display<br />

03h reserved<br />

04h EGA w/ color display<br />

05h EGA w/ monochrome display<br />

06h PGA w/ color display<br />

07h VGA w/ monochrome analog display<br />

-96-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

08h VGA w/ color analog display<br />

09h reserved<br />

0Ah MCGA w/ digital color display<br />

0Bh MCGA w/ monochrome analog display<br />

0Ch MCGA w/ color analog display<br />

FFh unknown display type<br />

--------V-101A01-----------------------------<br />

INT 10 - VIDEO - SET DISPLAY COMBINATION CODE (PS,VGA/MCGA)<br />

AX = 1A01h<br />

BL = active display code (see #00039)<br />

BH = alternate display code<br />

Return: AL = 1Ah if function was supported<br />

SeeAlso: AH=12h/BL=35h,AX=1A00h<br />

--------V-101B-------------------------------<br />

INT 10 - VIDEO - FUNCTIONALITY/STATE INFORMATION (PS,VGA/MCGA)<br />

AH = 1Bh<br />

BX = implementation type<br />

0000h return funtionality/state information<br />

ES:DI -> 64-byte buffer for state information (see #00040)<br />

Return: AL = 1Bh if function supported<br />

ES:DI buffer filled with state information<br />

BUG: Trident 8900 (BIOS D3.0 1991/11/12) and Trident 9000 (C3.0 1991/10/25)<br />

do not correctly set the fields at offsets 27h and 29h of the<br />

state information<br />

SeeAlso: AH=15h,AX=1A00h,AX=1F01h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of MCGA+ state information:<br />

Offset Size Description (Table 00040)<br />

00h DWORD address of static funtionality table (see #00045)<br />

04h BYTE video mode in effect<br />

05h WORD number of columns<br />

07h WORD length of regen buffer in bytes<br />

09h WORD starting address of regen buffer<br />

0Bh WORD cursor position for page 0<br />

0Dh WORD cursor position for page 1<br />

0Fh WORD cursor position for page 2<br />

11h WORD cursor position for page 3<br />

13h WORD cursor position for page 4<br />

15h WORD cursor position for page 5<br />

17h WORD cursor position for page 6<br />

19h WORD cursor position for page 7<br />

-97-


Generated by Foxit PDF Creator © Foxit Software<br />

1Bh WORD cursor "type" (start/stop scan lines)<br />

http://www.foxitsoftware.com For evaluation only.<br />

1Dh BYTE active display page<br />

1Eh WORD CRTC port address<br />

20h BYTE current setting of PORT 03x8h<br />

21h BYTE current setting of PORT 03x9h<br />

22h BYTE number of rows - 1<br />

23h WORD bytes/character<br />

25h BYTE display combination code of active display<br />

26h BYTE DCC of alternate display<br />

27h WORD number of colors supported in current mode (0000h = mono)<br />

29h BYTE number of pages supported in current mode<br />

2Ah BYTE number of scan lines active<br />

(0,1,2,3) = (200,350,400,480)<br />

Tseng ET3000: (4,5,6 = 512,600,768)<br />

2Bh BYTE primary character block<br />

2Ch BYTE secondary character block<br />

2Dh BYTE miscellaneous flags (see #00041)<br />

2Eh BYTE non-VGA mode support (see #00042)<br />

2Fh 2 BYTEs reserved (00h)<br />

31h BYTE video memory available<br />

00h = 64K, 01h = 128K, 02h = 192K, 03h = 256K<br />

32h BYTE save pointer state flags (see #00043)<br />

33h BYTE display information and status (see #00044)<br />

34h 12 BYTEs reserved (00h)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for miscellaneous flags:<br />

Bit(s) Description (Table 00041)<br />

0 all modes on all displays on<br />

1 gray summing on<br />

2 monochrome display attached<br />

3 default palette loading disabled<br />

4 cursor emulation enabled<br />

5 0 = intensity; 1 = blinking<br />

6 flat-panel display is active<br />

7 unused (0)<br />

SeeAlso: #00040<br />

Bitfields for non-VGA mode support:<br />

Bit(s) Description (Table 00042)<br />

7-5 reserved<br />

4 132-column mode supported<br />

-98-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

3 =1 MFI attributes enabled (see AH=12h/BL=37h)<br />

=0 VGA attributes<br />

2 16-bit VGA graphics present<br />

1 adapter interface driver required<br />

0 BIOS supports information return for adapter interface<br />

SeeAlso: #00040<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for save pointer state flags:<br />

Bit(s) Description (Table 00043)<br />

0 512 character set active<br />

1 dynamic save area present<br />

2 alpha font override active<br />

3 graphics font override active<br />

4 palette override active<br />

5 DCC override active<br />

6-7 unused (0)<br />

SeeAlso: #00040<br />

Bitfields for display information and status:<br />

Bit(s) Description (Table 00044)<br />

7 640x480 flat-panel can be used simultaneously with CRT controller<br />

6-3 reserved<br />

2 color display<br />

1 flat-panel display active<br />

0 flat-panel display attached<br />

SeeAlso: #00040<br />

Format of Static Functionality Table:<br />

Offset Size Description (Table 00045)<br />

00h BYTE modes supported 1<br />

bit 0 to bit 7 = 1 modes 0,1,2,3,4,5,6,7 supported<br />

01h BYTE modes supported 2<br />

bit 0 to bit 7 = 1 modes 8,9,0Ah,0Bh,0Ch,0Dh,0Eh,0Fh supported<br />

02h BYTE modes supported 3<br />

bit 0 to bit 3 = 1 modes 10h,11h,12h,13h supported<br />

bit 4 to bit 7 unused (0)<br />

03h BYTE (IBM) reserved<br />

(Tseng ET3000/4000) modes supported 4<br />

bit 0 to bit 7 = modes 18h-1Fh supported<br />

04h BYTE (IBM) reserved<br />

(Tseng ET3000/4000) modes supported 5<br />

-99-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

bit 0 to bit 7 = modes 20h-27h supported<br />

http://www.foxitsoftware.com For evaluation only.<br />

05h BYTE (IBM) reserved<br />

(Tseng ET3000/4000) modes supported 6<br />

bit 0 to bit 7 = modes 28h-2Fh supported<br />

06h BYTE (IBM) reserved<br />

(Tseng ET3000/4000) modes supported 7<br />

bit 0 to bit 7 = modes 30h-37h supported<br />

07h BYTE scan lines supported<br />

bit 0 to bit 2 = 1 if scan lines 200,350,400 supported<br />

bits 3-7 = unused (0)<br />

08h BYTE total number of character blocks available in text modes<br />

09h BYTE maximum number of active character blocks in text modes<br />

0Ah WORD miscellaneous function support flags (see #00046)<br />

0Ch WORD reserved<br />

0Eh BYTE save pointer function flags (see #00047)<br />

0Fh BYTE reserved<br />

SeeAlso: #00040<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for miscellaneous function support flags:<br />

Bit(s) Description (Table 00046)<br />

0 all modes on all displays function supported<br />

1 gray summing function supported<br />

2 character font loading function supported<br />

3 default palette loading enable/disable supported<br />

4 cursor emulation function supported<br />

5 EGA palette present<br />

6 color palette present<br />

7 color-register paging function supported<br />

8 light pen supported (see AH=04h)<br />

9 save/restore state function 1Ch supported<br />

10 intensity/blinking function supported (see AX=1003h)<br />

11 Display Combination Code supported (see #00039)<br />

12-15 unused (0)<br />

SeeAlso: #00040<br />

Bitfields for save pointer function flags:<br />

Bit(s) Description (Table 00047)<br />

0 512 character set supported<br />

1 dynamic save area supported<br />

2 alpha font override supported<br />

3 graphics font override supported<br />

-100-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

4 palette override supported<br />

5 DCC extension supported<br />

6-7 unused (0)<br />

SeeAlso: #00040<br />

--------V-101C-------------------------------<br />

INT 10 - VIDEO - SAVE/RESTORE VIDEO STATE (PS50+,VGA)<br />

AH = 1Ch<br />

AL = function<br />

00h return state buffer size<br />

Return: BX = number of 64-byte blocks needed<br />

01h save video state<br />

ES:BX -> buffer<br />

02h restore video state<br />

ES:BX -> buffer containing previously saved state<br />

CX = requested states (see #00048)<br />

Return: AL = 1Ch if function supported<br />

Notes:<br />

many BIOSes corrupt the video registers when saving the state, so a<br />

program should restore the state immediately after saving it (the<br />

saved data is uncorrupted)<br />

the BIOS data area consists of the 96 bytes from 0040h:0049h-00A8h<br />

this function is not supported when DOS/V is running<br />

this function may be a better VGA installation check than the usual<br />

INT 10/AX=1A00h, since some late-model EGA cards (such as the ATI<br />

EGA Wonder) supported that call<br />

SeeAlso: AX=1A00h,AX=5F90h,AX=5FA0h,MEM 0040h:00A8h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for requested states:<br />

Bit(s) Description (Table 00048)<br />

0 video hardware (see #00049)<br />

1 BIOS data areas<br />

2 color registers and DAC state (see #00050)<br />

3-15 unused (0)<br />

SeeAlso: #00186<br />

Format of VGA video hardware state:<br />

Offset Size Description (Table 00049)<br />

00h BYTE sequencer index register<br />

01h BYTE CRTC index register<br />

02h BYTE graphics controller index register<br />

03h BYTE attribute controller index register<br />

04h BYTE feature controller register<br />

-101-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

05h 4 BYTEs sequencer registers<br />

09h BYTE sequencer register 0<br />

0Ah 25 BYTEs CRTC registers 0-8<br />

23h 16 BYTEs palette registers 00h-0Fh<br />

33h 4 BYTEs attribute registers 10h-13h<br />

37h 9 BYTEs graphics controller registers 0-8<br />

40h BYTE CRTC base address (low)<br />

41h BYTE CRTC base address (high)<br />

42h BYTE plane 0 latch<br />

43h BYTE plane 1 latch<br />

44h BYTE plane 2 latch<br />

45h BYTE plane 3 latch<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of VGA DAC state:<br />

Offset Size Description (Table 00050)<br />

00h BYTE read/write mode DAC<br />

01h BYTE pixel address<br />

02h BYTE pixel mask<br />

03h 768 BYTEs color data (256 triples)<br />

303h BYTE color select register<br />

--------J-101D-------------------------------<br />

INT 10 - VIDEO - DOS/V - SHIFT STATUS LINE CONTROL<br />

AH = 1Dh<br />

AL = function<br />

00h enable shift status line(s)<br />

BX = number of lines to reserve at bottom of screen (usu. 1)<br />

01h disable shift status line<br />

BX = number of lines reserved at bottom of screen (usually 1)<br />

02h get number of status lines<br />

Return: BX = number of lines reserved for shift status<br />

SeeAlso: AH=19h<br />

--------V-101D-------------------------------<br />

INT 10 - SpeedSTAR Plus BIOS v4.23+ - SET SYNC PARAMETERS<br />

AH = 1Dh<br />

AL = video mode<br />

ES = caller's segment<br />

Return: nothing<br />

Note: the caller's segment contains at offset 5Ch (FCB field in PSP)<br />

or 100h a table with sync parameters (see #00051) (BIOS looks at both<br />

offsets)<br />

-102-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Format of SpeedSTAR Plus sync table:<br />

Offset Size Description (Table 00051)<br />

00h 9 BYTEs ID contains string 'ey5CENTER'<br />

09h 5 BYTEs sync parameters for 640x480 modes 11h,12h,25h,26h,2Eh<br />

0Bh 5 BYTEs sync parameters for 800x600 modes 29h,30h,2Ah<br />

13h 5 BYTEs sync parameters for 1024x768 modes 37h,38h<br />

--------V-101D-------------------------------<br />

INT 10 - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG<br />

AH = 1Dh<br />

Note: these versions of the BIOS jump to a random location on this function<br />

due to a fencepost error<br />

--------V-101DAABXFDEC-----------------------<br />

INT 10 U - Diamond Stealth64 Video - INSTALLATION CHECK<br />

AX = 1DAAh<br />

BX = FDECh<br />

Return: BX = CDEFh if Diamond Stealth64 Video 2001-series video card installed<br />

AL = number of megabytes of video memory<br />

AH = card type??? (4Bh for VL-Bus/5Bh for PCI)<br />

CX = ??? (0000h)<br />

SI:DI -> signature/copyright string<br />

--------V-101E00-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - READ INFORMATION<br />

AX = 1E00h<br />

Return: AL = 1Eh if function supported<br />

BL = flat-panel status (see #00052)<br />

ES:DI -> information table (see #00053)<br />

Note: IBM classifies this function as optional<br />

SeeAlso: AX=1E01h,AX=1E02h,AX=1E03h,AX=1E04h,AX=1E05h,AX=1EFEh<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for flat-panel status:<br />

Bit(s) Description (Table 00052)<br />

7-3 reserved<br />

2 color display<br />

1 flat panel is active<br />

0 flat panel is attached<br />

SeeAlso: #00053<br />

Format of flat-panel information table:<br />

Offset Size Description (Table 00053)<br />

00h BYTE number of WORDs in the remainder of the table<br />

01h WORD number of vertical pixels per meter<br />

-103-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

03h WORD number of horizontal pixels per meter<br />

http://www.foxitsoftware.com For evaluation only.<br />

05h WORD total number of vertical pixels<br />

07h WORD total number of horizontal pixels<br />

09h WORD vertical pixel separation in micrometers (center-to-center)<br />

0Bh WORD horizontal pixel separation in micrometers<br />

0Dh WORD range of gray levels available, less 1<br />

0Fh WORD number of red levels available, less 1 (0000h if nonochrome)<br />

11h WORD number of green levels available, less 1 (0000h if nonochrome)<br />

13h WORD number of blue levels available, less 1 (0000h if nonochrome)<br />

SeeAlso: #00052<br />

--------V-101E01-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - LCD/CRT DISPLAY CONTROL<br />

AX = 1E01h<br />

BH = function<br />

bit 7: =1 set display control, =0 query control<br />

bits 6-0: reserved (0)<br />

---if BH bit 7 set---<br />

BL = new display combination (see #00054)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-3: reserved (0)<br />

bit 2: simultaneous display is supported by hardware<br />

bit 1: LCD/CRT display control supported by hardware<br />

bit 0: set operation was successful (always clear on get)<br />

BL = active display combination (see #00054)<br />

SeeAlso: AX=1E00h,AX=1E02h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Flat-Panel display combination:<br />

Bit(s) Description (Table 00054)<br />

7-2 reserved (0)<br />

1-0 combination<br />

00 reserved<br />

01 LCD active<br />

10 CRT active<br />

11 both LCD and CRT active (simultaneous display)<br />

SeeAlso: #00055<br />

--------V-101E02-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - DISPLAY POSITION<br />

AX = 1E02h<br />

BH = function<br />

-104-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

bit 7: =1 set display position, =0 query position<br />

bits 6-0: reserved (0)<br />

---if BH bit 7 set---<br />

BL = new position setting (see #00055)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-4: reserved (0)<br />

bit 3: positioning to top is supported by hardware<br />

bit 2: positioning to center is supported by hardware<br />

bit 1: positioning to bottom is supported by hardware<br />

bit 0: set operation was successful (always clear on get)<br />

BL = active position setting (see #00055)<br />

SeeAlso: AX=1E00h,AX=1E01h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Flat-Panel position setting:<br />

Bit(s) Description (Table 00055)<br />

7-2 reserved (0)<br />

1-0 position<br />

00 center<br />

01 top<br />

10 bottom<br />

11 reserved<br />

SeeAlso: #00054,#00056<br />

--------V-101E03-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - VERTICAL EXPANSION FOR TEXT/GRAPHICS MODES<br />

AX = 1E03h<br />

BH = function<br />

bit 7: =1 set vertical expansion, =0 query expansion<br />

bits 6-0: reserved (0)<br />

---if BH bit 7 set---<br />

BL = new vertical expansion setting (see #00056)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-4: reserved (0)<br />

bit 3: vertical expansion of text is supported by hardware<br />

bit 2: vertical expansion of graphics is supported by hardware<br />

bit 1: hardware supports independent control of expansion in<br />

text and graphics modes<br />

bit 0: set operation was successful (always clear on get)<br />

-105-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

BL = active vertical expansion setting (see #00056)<br />

SeeAlso: AX=1E00h,AX=1E02h.AX=1E04h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Flat-Panel vertical expansion setting:<br />

Bit(s) Description (Table 00056)<br />

7-2 reserved (0)<br />

1 vertical expansion turned on for text modes<br />

0 vertical expansion turned on for graphics modes<br />

SeeAlso: #00054,#00055,#00057<br />

--------V-101E04-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - NORMAL/REVERSE VIDEO FOR TEXT/GRAPHICS MODES<br />

AX = 1E04h<br />

BH = function<br />

bit 7: =1 set normal/reverse video, =0 query normal/reverse<br />

bits 6-0: reserved (0)<br />

---if BH bit 7 set---<br />

BL = new normal/reverse video setting (see #00057)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-4: reserved (0)<br />

bit 3: hardware supports reverse video for text modes<br />

bit 2: hardware supports reverse video for graphics modes<br />

bit 1: hardware supports independent control of reverse video<br />

in text and graphics modes<br />

bit 0: set operation was successful (always clear on get)<br />

BL = active normal/reverse video setting (see #00057)<br />

SeeAlso: AX=1E00h,AX=1E03h,AX=1E05h<br />

Bitfields for Flat-Panel normal/reverse video setting:<br />

Bit(s) Description (Table 00057)<br />

7-2 reserved (0)<br />

1 reverse video for text<br />

0 reverse video for graphics<br />

SeeAlso: #00054,#00056,#00058,#00059<br />

--------V-101E05-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - BRIGHTNESS CONTROL<br />

AX = 1E05h<br />

BH = function<br />

bit 7: =1 set brightness, =0 query brightness<br />

bits 6-0: reserved (0)<br />

-106-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

---if BH bit 7 set---<br />

BL = new brightness setting (see #00058)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-2: reserved (0)<br />

bit 1: software brightness control is supported<br />

bit 0: set operation was successful (always clear on get)<br />

BL = active brightness setting (see #00058)<br />

Note: this function operates independently of AX=1E07h<br />

SeeAlso: AX=1E00h,AX=1E04h,AX=1E06h,AX=1E07h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Flat-Panel brightness control:<br />

Bit(s) Description (Table 00058)<br />

7-1 reserved (0)<br />

0 high brightness<br />

SeeAlso: #00057,#00059<br />

--------V-101E06-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - CONTRAST CONTROL FOR TEXT/GRAPHICS<br />

AX = 1E06h<br />

BH = function<br />

bit 7: =1 set contrast control, =0 query contrast<br />

bits 6-0: reserved (0)<br />

---if BH bit 7 set---<br />

BL = new normal/reverse video setting (see #00059)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bits 6-4: reserved (0)<br />

bit 3: software contrast control supported for text<br />

bit 2: software contrast control supported for graphics<br />

bit 1: hardware supports independent control of contrast<br />

in text and graphics modes<br />

bit 0: set operation was successful (always clear on get)<br />

BL = active contrast setting (see #00059)<br />

Note: this function operates independently of AX=1E08h<br />

SeeAlso: AX=1E00h,AX=1E04h,AX=1E05h,AX=1E07h,AX=1E08h<br />

Bitfields for Flat-Panel contrast control:<br />

Bit(s) Description (Table 00059)<br />

7-2 reserved (0)<br />

-107-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

1 high contrast for text<br />

0 high contrast for graphics<br />

SeeAlso: #00057,#00058<br />

--------V-101E07-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - BRIGHTNESS SETTING<br />

AX = 1E07h<br />

BH = function<br />

bit 7: =1 set brightness control, =0 query brightness<br />

bit 6: use standard brightness<br />

bits 5-0: reserved (0)<br />

---if BH bits 7,6=10---<br />

BL = brightness (00h = minimum, FFh = maximum)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bit 6: standard/custom (copied from input)<br />

bits 5-2: reserved (0)<br />

bit 1: software brightness control is supported<br />

bit 0: set operation was succesful (always clear on get)<br />

BL = brightness (00h = minimum, FFh = maximum)<br />

Note: this function operates independently of AX=1E05h<br />

SeeAlso: AX=1E00h,AX=1E05h,AX=1E08h<br />

--------V-101E08-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - CONTRAST SETTING<br />

AX = 1E08h<br />

BH = function<br />

bit 7: =1 set contrast control, =0 query contrast<br />

bit 6: use standard contrast<br />

bits 5-0: reserved (0)<br />

---if BH bits 7,6=10---<br />

BL = contrast (00h = minimum, FFh = maximum)<br />

Return: AL = 1Eh if function supported<br />

BH = results<br />

bit 7: query/set (copied from input)<br />

bit 6: standard/custom (copied from input)<br />

bits 5-2: reserved (0)<br />

bit 1: software contrast control is supported<br />

bit 0: set operation was succesful (always clear on get)<br />

BL = contrast (00h = minimum, FFh = maximum)<br />

Note: this function operates independently of AX=1E06h<br />

SeeAlso: AX=1E00h,AX=1E06h,AX=1E07h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-108-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

--------V-101EFE-----------------------------<br />

INT 10 - VIDEO - FLAT-PANEL - FUNCTION SUPPORT FLAG<br />

AX = 1EFEh<br />

ES:DI -> DWORD buffer for bitmap of supported functions<br />

(set to all zeros before calling)<br />

Return: ES:DI buffer updated with mask of supported functions<br />

<strong>Index</strong>: installation check;flat-panel display support<br />

SeeAlso: AX=1E00h,AX=1E06h<br />

--------V-101F00-----------------------------<br />

INT 10 - VIDEO - XGA - GET DMQS (Display Mode Query and Set) DATA LENGTH<br />

AX = 1F00h<br />

Return: AL = 1Fh if supported<br />

BX = number of bytes of DMQS data<br />

Note: not supported on the original IBM XGA, only on XGA-NI (non-interlaced)<br />

and later models.<br />

SeeAlso: AX=1F01h<br />

--------V-101F01-----------------------------<br />

INT 10 - VIDEO - XGA - READ DMQS DATA<br />

AX = 1F01h<br />

ES:DI -> user buffer for return data (call AX=1F00h for size)<br />

Return: AL = 1Fh if function supported<br />

user buffer filled with DMQS data (see #00060)<br />

Note: not supported on the original IBM XGA, only on XGA-NI (non-interlaced)<br />

and later models.<br />

SeeAlso: AH=1Bh,AX=1F00h,AX=3000h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of XGA DMQS buffer:<br />

Offset Size Description (Table 00060)<br />

00h WORD offset (in bytes) to DMQS data for next XGA instance<br />

02h BYTE slot number<br />

03h BYTE XGA implementation function level identifier<br />

04h BYTE XGA implementation resolution level identifier<br />

05h WORD vendor identifier - identifies card vendor<br />

07h WORD vendor defined field<br />

09h WORD XGA adapter I/O register base address<br />

0Bh WORD XGA coprocessor register base address<br />

(paragraph--multiply by 10h to get physical address)<br />

0Dh WORD 1 Megabyte system video memory aperture<br />

0000h if not allocated<br />

(Multiply by 100000h to get physical address)<br />

0Fh WORD 4 Megabyte system video memory aperture<br />

-109-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

0000h if not allocated<br />

(multiply by 100000h to get physical address)<br />

11h WORD video memory base address<br />

(multiply by 100000h to get physical address)<br />

13h WORD composite ID of the attached display<br />

15h BYTE amount of video memory available, in multiples of 256K bytes<br />

16h DWORD alternate XGA coprocessor register base address. 0 = none.<br />

1Ah var DMQS Data for further XGA Instances (as above)<br />

Note: "Instances" refers to the capability of having up to 8 XGA<br />

adapters in one computer.<br />

SeeAlso: #00061<br />

--------V-101F02-----------------------------<br />

INT 10 - VIDEO - XGA - GET SVGA DMQS DATA LENGTH<br />

AX = 1F02h<br />

Return: AL = 1Fh if function supported<br />

BX = length of SVGA DMQS data in bytes<br />

SeeAlso: AX=1F00h,AX=1F03h<br />

--------V-101F03-----------------------------<br />

INT 10 - VIDEO - XGA - GET SVGA DMQS DATA<br />

AX = 1F03h<br />

ES:DI -> buffer for SVGA DMQS data (see #00061)<br />

Return: AL = 1Fh if function supported<br />

ES:DI buffer filled<br />

SeeAlso: AX=1F00h,AX=1F02h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of SVGA DMQS data:<br />

Offset Size Description (Table 00061)<br />

00h WORD offset to DMQS data for next SVGA instance or 0000h<br />

02h BYTE reserved<br />

03h BYTE SVGA implementation functional level<br />

04h BYTE SVGA implementation resolution level<br />

05h WORD vendor ID<br />

07h WORD vendor-specific<br />

09h 7 BYTEs reserved<br />

10h BYTE SVGA linear address window size<br />

00h 64K<br />

01h 1M<br />

02h 2M<br />

03h 4M<br />

11h WORD SVGA linear address window location or 0000h if not allocated<br />

(multiply by 10000h [shift left 16 bits] to get physical addr)<br />

-110-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

13h WORD attached monitor's composite monitor ID<br />

15h BYTE available video RAM in multiples of 256K<br />

16h 11 BYTEs reserved<br />

SeeAlso: #00060<br />

--------V-103000CX0000-----------------------<br />

INT 10 - VIDEO - LOCATE 3270PC CONFIGURATION TABLE (INSTALLATION CHECK)<br />

AX = 3000h<br />

CX = 0000h<br />

DX = 0000h<br />

Return: CX:DX -> 3270PC configuration table (see #00062)<br />

CX:DX = 0000h:0000h if 3270PC Control Program not active<br />

SeeAlso: AX=1F01h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of 3270 PC configuration table:<br />

Offset Size Description (Table 00062)<br />

00h BYTE aspect ratio X<br />

01h BYTE aspect ratio Y<br />

02h BYTE monitor type (see #00063)<br />

03h BYTE reserved<br />

04h BYTE adapter ID<br />

00h = 5151/5272 adapter<br />

04h = 5151/5272 with XGA adapter<br />

30h = 3295 or 3270PC G/GX adapter<br />

05h BYTE reserved<br />

06h BYTE function flags 1 (see #00064)<br />

07h BYTE function flags 2<br />

bit 6: GPI graphics supported<br />

08h WORD segment address of Control Program Level table (see #00065)<br />

0Ah 10 BYTEs reserved<br />

(Table 00063)<br />

Values for 3270 PC monitor type:<br />

00h 5151 (mono) or 5272 (color)<br />

01h 3295<br />

02h 5151 or 5272 with XGA (???) graphics adapter<br />

03h 5279 with 3270PC G adapter<br />

04h 5379 model C01 with 3270PC GX adapter<br />

05h 5379 model M01 with 3270PC GX adapter<br />

07h non-3270PC with 3270 Workstation Program<br />

FFh 3270PC Control Program not loaded<br />

-111-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Bitfields for 3270 PC function flags 1:<br />

Bit(s) Description (Table 00064)<br />

7 mono text, 1 page<br />

6 color text, 1 page<br />

5 color text, 4 pages<br />

4 CGA color graphics<br />

3 720x350 two-color graphics<br />

2 360x350 four-color graphics<br />

1 720x350 eight-color graphics<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of Control Program Level table:<br />

Offset Size Description (Table 00065)<br />

00h WORD program version<br />

02xxh = 3270PC Control Program v2.xx<br />

03xxh = 3270PC Control Program v3.xx<br />

04xxh = 3270 Workstation Program v1.xx<br />

02h BYTE Control Program ID (00h)<br />

03h 27 BYTEs Control Program Descriptor ("IBM 3270 PC CONTROL PROGRAM")<br />

--------a-103800-----------------------------<br />

INT 10 - Tinytalk Personal v1.09f+ - GET CONFIGURATION INFO<br />

AX = 3800h<br />

Return: ES:DI -> configuration info (see #00066)<br />

Program: Tinytalk is a shareware screen reader by OMS Development/Eric Bohlman<br />

Notes: this call is also used as the installation check by verifying that the<br />

returned ES:DI points at valid configuration info<br />

Tinytalk v1.09f ignores AL and always returns the configuration info;<br />

v1.10 adds several subfunctions selected with AL<br />

SeeAlso: AX=3801h,AX=3803h,AX=3806h,AH=39h,INT 14/AX=F0F1h<br />

SeeAlso: INT 2F/AX=FB00h"AutoBraille"<br />

<strong>Index</strong>: installation check;Tinytalk Personal<br />

Format of Tinytalk Personal configuration info:<br />

Offset Size Description (Table 00066)<br />

00h 8 BYTEs signature "TTCONFIG"<br />

08h WORD size of configuration data, not counting signature, this WORD,<br />

or the following byte<br />

0Ah BYTE ???<br />

0Bh ??? configuration data<br />

--------a-103801-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - ???<br />

AX = 3801h<br />

-112-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

DL = ???<br />

Return: ???<br />

SeeAlso: AX=3800h,AX=3802h<br />

--------a-103802-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - ???<br />

AX = 3802h<br />

DL = ???<br />

Return: ???<br />

SeeAlso: AX=3800h,AX=3801h<br />

--------a-103803-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - GET ???<br />

AX = 3803h<br />

Return: AL = ???<br />

SeeAlso: AX=3800h,AX=3804h,AX=3805h<br />

--------a-103804-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - GET ???<br />

AX = 3804h<br />

Return: AX = ???<br />

SeeAlso: AX=3800h,AX=3803h,AX=3805h<br />

--------a-103805-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - GET ???<br />

AX = 3805h<br />

Return: AL = ???<br />

SeeAlso: AX=3800h,AX=3803h,AX=3804h<br />

--------a-103806-----------------------------<br />

INT 10 - Tinytalk Personal v1.10 - ???<br />

AX = 3806h<br />

ES:DX -> ASCIZ ???<br />

Return: ???<br />

SeeAlso: AX=3800h<br />

--------a-1039-------------------------------<br />

INT 10 - Tinytalk Personal v1.10 - ???<br />

AH = 39h<br />

Program: Tinytalk is a shareware screen reader by OMS Development/Eric Bohlman<br />

Note: this function was a NOP in TTDEMO.EXE, but may be implemented in other<br />

variants of Tinytalk<br />

--------V-1040-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "GMODE" - SET GRAPHICS MODE<br />

AH = 40h<br />

Return: nothing<br />

Program: Hercules GRAFIX (or GRAPH X, as it is called in some documentation)<br />

Saturday, January 08, 2011 11:31 AM<br />

-113-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

provides text output in graphics mode and some graphics primitives<br />

on the Hercules Graphics Card<br />

Desc: switch the Hercules Graphics Card into graphics mode (720x348) without<br />

clearing the screen; make Page 0 the default for both writing and<br />

display, and set LEVEL (see AH=44h) to 01h<br />

SeeAlso: AH=00h,AH=41h,AH=42h<br />

<strong>Index</strong>: video modes;Hercules<br />

--------V-1041-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "TMODE" - SET TEXT MODE<br />

AH = 41h<br />

Return: nothing<br />

Desc: switch the Hercules Graphics Card into text mode<br />

SeeAlso: AH=00h,AH=40h<br />

<strong>Index</strong>: video modes;Hercules<br />

--------V-1042-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "CLRSCR" - CLEAR CURRENT PAGE<br />

AH = 42h<br />

Return: nothing<br />

SeeAlso: AH=45h<br />

--------V-1043-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "GPAGE" - SELECT DRAWING PAGE<br />

AH = 43h<br />

AL = page number (0,1)<br />

Return: nothing<br />

Desc: specify which of the two pages of video memory is to be used for<br />

output<br />

SeeAlso: AH=05h,AH=44h,AH=45h<br />

--------V-1044-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "LEVEL" - SELECT DRAWING FUNCTION<br />

AH = 44h<br />

AL = drawing function<br />

00h clear pixels<br />

01h set pixels<br />

02h invert pixels<br />

Return: nothing<br />

Desc: specify how graphics output will change the display<br />

SeeAlso: AH=40h,AH=45h,AH=46h,AH=4Bh,AH=4Ch,AH=4Dh<br />

--------V-1045-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "DISP" - SELECT PAGE TO DISPLAY<br />

AH = 45h<br />

AL = page number (0,1)<br />

Saturday, January 08, 2011 11:31 AM<br />

-114-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: nothing<br />

Desc: specify which of the two pages of video memory is visible on screen<br />

SeeAlso: AH=05h,AH=42h,AH=43h<br />

--------V-1046-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "PLOT" - DRAW ONE PIXEL<br />

AH = 46h<br />

DI = x (0-719)<br />

BP = y (0-347)<br />

Return: nothing<br />

Notes: function 44h determines operation and function 43h which page to use<br />

if the indicated coordinate is invalid, this function does nothing<br />

SeeAlso: AH=0Ch,AH=47h,AH=49h,AH=4Ch,AH=4Dh<br />

--------V-1047-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "GETPT" - FIND PIXEL VALUE<br />

AH = 47h<br />

DI = x (0-719)<br />

BP = y (0-347)<br />

Return: AL = 00h pixel clear<br />

AL = 01h pixel set<br />

Note: function 43h specifies which page is used<br />

SeeAlso: AH=0Dh,AH=46h<br />

--------V-1048-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "MOVE" - MOVE TO POINT<br />

AH = 48h<br />

DI = x (0-719)<br />

BP = y (0-347)<br />

Return: nothing<br />

Desc: specify the location from which to start the next graphics output<br />

SeeAlso: AH=49h<br />

--------V-1049-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "DLINE" - DRAW TO POINT<br />

AH = 49h<br />

DI = x (0-719)<br />

BP = y (0-347)<br />

Return: nothing<br />

Note: function 48h or 49h specify first point, 44h operation and 43h page to<br />

use<br />

SeeAlso: AH=43h,AH=44h,AH=48h,AH=4Ch,AH=4Dh<br />

--------V-104A-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "BLKFIL" - BLOCK FILL<br />

AH = 4Ah<br />

Saturday, January 08, 2011 11:31 AM<br />

-115-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

DI = x coordinate of lower left corner<br />

BP = y coordinate of lower left corner<br />

BX = height in pixels<br />

CX = width in pixels<br />

Return: nothing<br />

Desc: draw a solid rectangle of the specified size at the given location<br />

SeeAlso: AH=4Eh<br />

--------V-104B-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "TEXT" - DISPLAY CHARACTER<br />

AH = 4Bh<br />

AL = character to display<br />

DI = x (0-719)<br />

BP = y (0-347)<br />

Return: nothing<br />

Notes: unlike the other BIOS character functions character position is<br />

specified in pixels rather than rows and columns<br />

the character is writting using the drawing function last specified by<br />

AH=44h<br />

SeeAlso: AH=09h,AH=0Ah,AH=44h<br />

--------P-104B-------------------------------<br />

INT 10 - FRIEZE - API<br />

AH = 4Bh<br />

CL = function<br />

00h (v6.x-) print window<br />

AL = mode<br />

00h character<br />

01h normal<br />

02h sideways<br />

01h load window<br />

ES:BX -> ASCIZ filename from which to read<br />

02h save window<br />

ES:BX -> ASCIZ filename to which to write<br />

03h set print width<br />

AL = width in 1/4 inches<br />

04h set print height<br />

AL = height in 1/4 inches<br />

05h reserved<br />

06h set left margin<br />

AL = printout margin in 1/4 inches<br />

07h set window size<br />

ES:BX -> four-WORD structure with Xmin, Ymin, Xmax, Ymax<br />

Saturday, January 08, 2011 11:31 AM<br />

-116-


Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

08h reserved<br />

09h set patterns<br />

ES:BX -> 16-BYTE vector of screen->printer color correspondnces<br />

0Ah get patterns<br />

ES:BX -> 16-BYTE buffer for color correspondences<br />

0Bh set mode<br />

AL = mode<br />

0Ch (v7.41) ???<br />

AL = ???<br />

00h ??? (calls original INT 05)<br />

else ???<br />

0Dh (v7.41) ???<br />

AL = ???<br />

00h ??? (calls original INT 05)<br />

else ???<br />

0Eh (v7.41) ???<br />

???<br />

0Fh get window<br />

ES:BX -> four-WORD buffer for Xmin, Ymin, Xmax, Ymax<br />

10h set print options<br />

ES:BX -> printer options in same format as FRIEZE cmdline<br />

11h initialize<br />

ES:BX -> three-WORD array from CARDS.DAT for HRes, VRes, code<br />

12h (v7.41) ???<br />

???<br />

13h (v7.41) ???<br />

???<br />

14h get version<br />

Return: AH = major version (00h if FRIEZE version before 7)<br />

AL = minor version<br />

15h set parameters<br />

ES:BX -> parameter table (see #00068)<br />

16h get parameters<br />

ES:BX -> buffer for parameter table (see #00068)<br />

17h get printer resolution<br />

ES:BX -> 12-WORD table for six horizontal/vertical resol pairs<br />

18h (v8.0 only) reserved<br />

50h (v7.41) get ???<br />

Return: AX = ???<br />

51h (v7.41) get ???<br />

Return: ES = ??? (seen 2348h)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-117-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

AX = ??? (seen 8432h)<br />

Return: AX = status (see #00067)<br />

SeeAlso: AH=0Fh/SI=F123h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00067)<br />

Values for FRIEZE function status:<br />

00h successful<br />

01h user aborted printout with ESC<br />

02h reserved<br />

03h file read error<br />

04h file write error or printer error<br />

05h file not found<br />

06h invalid header (not an image or wrong screen mode) or can't create file<br />

07h file close error<br />

08h disk error<br />

09h (v7.0+) printer error<br />

0Ah invalid function<br />

0Bh (v7.0+) can't create file<br />

0Ch (v7.0+) wrong video mode<br />

Format of FRIEZE parameter table:<br />

Offset Size Description (Table 00068)<br />

00h WORD top margin (1/100 inch)<br />

02h WORD left margin (1/100 inch)<br />

04h WORD horizontal size (1/100 inch)<br />

06h WORD vertical size (1/100 inch)<br />

08h WORD quality/draft mode<br />

00h draft mode<br />

01h quality mode<br />

02h use horizontal/vertical resolution for output resolution<br />

0Ah WORD printer horizontal resolution (dots per inch)<br />

0Ch WORD printer vertical resolution (dots per inch)<br />

0Eh WORD reserved (FFFFh)<br />

Note: any field which should remain unchanged may be filled with FFFFh<br />

--------V-104C-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "ARC" - DRAW ARC<br />

AH = 4Ch<br />

AL = quadrant (1 = upper right, 2 = upper left, etc)<br />

DI = x coordinate of center<br />

BP = y coordinate of center<br />

BX = radius<br />

-118-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: nothing<br />

SeeAlso: AH=49h,AH=4Dh<br />

--------V-104D-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "CIRC" - DRAW CIRCLE<br />

AH = 4Dh<br />

DI = x of center<br />

BP = y of center<br />

BX = radius<br />

Return: nothing<br />

SeeAlso: AH=49h,AH=4Ch<br />

--------V-104E-------------------------------<br />

INT 10 - VIDEO - Hercules GRAFIX - "FILL" - FILL AREA<br />

AH = 4Eh<br />

DI = x coordinate of an interior point<br />

BP = y coordinate of an interior point<br />

Return: nothing<br />

Desc: fill a convex polygonal area bounded by a contiguous line of the<br />

opposite color with the border color<br />

Note: the first fill makes the figure solid, the second erases it<br />

SeeAlso: AH=4Ah<br />

--------V-104E00-----------------------------<br />

INT 10 - VESA XGA BIOS Extensions - GET XGA ENVIRONMENT INFORMATION<br />

AX = 4E00h<br />

ES:DI -> 256-byte buffer for XGA information (see #00069)<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h successful<br />

else error code<br />

Desc: determine whether VESA XGA extensions are present and the capabilities<br />

supported by the display adapter<br />

SeeAlso: AX=4E01h,AX=4E02h,AX=4F00h<br />

<strong>Index</strong>: installation check;VESA XGA<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of XGA information buffer:<br />

Offset Size Description (Table 00069)<br />

00h 4 BYTEs signature ("VESA")<br />

04h WORD VESA version number<br />

06h DWORD pointer to ASCIZ OEM string<br />

0Ah DWORD environment flags (see #00070)<br />

0Eh WORD number of XGA adapters installed (other VESA XGA functions<br />

require a handle indicating which adapter to use)<br />

-119-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

10h 240 BYTEs<br />

reserved<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for XGA environment flags:<br />

Bit(s) Description (Table 00070)<br />

0-1 system bus (00 = MCA, 01 = ISA, 10 = EISA)<br />

2 bus mastering available<br />

3-31 reserved<br />

--------V-104E01----------------------------<br />

INT 10 - VESA XGA BIOS Extensions - RETURN XGA SUBSYSTEM INFORMATION<br />

AX = 4E01h<br />

DX = XGA handle (0 to number of XGAs-1)<br />

ES:DI -> 256-byte buffer for subsystem information (see #00071)<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

else error code<br />

SeeAlso: AX=4E00h,AX=4E02h<br />

Format of XGA subsystem information:<br />

Offset Size Description (Table 00071)<br />

00h DWORD pointer to null-terminated board OEM string<br />

04h DWORD capabilities (see #00072)<br />

08h DWORD pointer to 8KB XGA ROM (or NULL)<br />

0Ch DWORD pointer to the XGA memory mapped registers<br />

10h WORD base address of XGA I/O registers (21x0h)<br />

12h DWORD pointer to start of physical video memory<br />

(A000h:0000h or B000h:0000h)<br />

16h DWORD physical address of 4MB aperture (or NULL if none)<br />

1Ah DWORD physical address of 1MB aperture (or NULL if none)<br />

1Eh DWORD physical address of 64KB aperture (or NULL if not enabled)<br />

22h DWORD physical address of OEM aperture (or NULL if none)<br />

26h WORD size of OEM aperture in 64KByte units<br />

28h DWORD pointer to list of video modes<br />

The list is a series of WORDs terminated by FFFFh<br />

2Ch WORD number of 64KB blocks on the board<br />

2Eh DWORD XGA manufacturer ID<br />

byte 0 POS data index 1<br />

byte 1 is index 2<br />

byte 2 is 21xAh index 75h<br />

32h 206 BYTEs reserved<br />

-120-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Bitfields for XGA capabilities:<br />

Bit(s) Description (Table 00072)<br />

0-1 board bus architecture: 0=MCA, 1=ISA, 3=EISA<br />

2-3 reserved<br />

4-6 DMA Channel assigned for acquiring bus mastership (only for ISA bus)<br />

7 DMA Channel Status (ISA only). enabled if set<br />

8-31 reserved<br />

--------V-104E02-----------------------------------<br />

INT 10 - VESA XGA BIOS Extensions - RETURN XGA MODE INFORMATION<br />

AX = 4E02h<br />

CX = Video mode<br />

DX = XGA handle<br />

ES:DI -> 256 byte buffer for mode information (see #00073)<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

else error code<br />

SeeAlso: AX=4E00h,AX=4E01h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of XGA mode information:<br />

Offset Size Description (Table 00073)<br />

00h WORD attributes of the mode (see #00074)<br />

02h WORD bytes per logical scanline<br />

04h WORD horizontal resolution in pixels<br />

06h WORD vertical resolution in scanlines<br />

08h BYTE character Width in pixels<br />

09h BYTE character Height in pixels<br />

0Ah BYTE number of planes<br />

0Bh BYTE bits per pixels<br />

0Ch BYTE memory model (see #00075)<br />

0Dh BYTE number of Image Pages<br />

0Eh BYTE number of Red bits<br />

0Fh BYTE bit position of Red bit field<br />

10h BYTE number of Green bits<br />

11h BYTE bit position of Green bit field<br />

12h BYTE number of Blue bits<br />

13h BYTE bit position of Blue bit field<br />

14h BYTE number of Reserved bits<br />

15h BYTE bit position of Reserved bit field<br />

16h 235 BYTEs reserved<br />

-121-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Bitfields for XGA mode attributes:<br />

Bit(s) Description (Table 00074)<br />

0 set if mode is supported<br />

1 reserved<br />

2 output is supported by the BIOS<br />

3 reserved<br />

4 if set this is a graphics mode (VGA registers inactive, XGA active),<br />

if clear this is a text mode (VGA registers active, XGA inactive)<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00075)<br />

Values for XGA video memory model:<br />

00h Text Mode<br />

01h CGA graphics<br />

02h Hercules graphics<br />

03h 4-planar graphics<br />

04h Packed Pixel<br />

05h Non-chain 4, 256 color<br />

06h Direct Color<br />

07h YUV-24<br />

--------V-104E03-----------------------------------<br />

INT 10 - VESA XGA BIOS Extensions - SET XGA VIDEO MODE<br />

AX = 4E03h<br />

BX = video mode<br />

CX = other command flags<br />

bit 0 If clear the feature connector is set to the default state<br />

DX = XGA handle<br />

ES:DI -> 256 byte buffer<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

else error code<br />

SeeAlso: AH=00h,AX=4E04h,AX=4F02h<br />

--------V-104E04-----------------------------------<br />

INT 10 - VESA XGA BIOS Extensions - RETURN CURRENT VIDEO MODE<br />

AX = 4E04h<br />

DX = XGA handle<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

BX??? = current mode<br />

else error code<br />

-122-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AH=0Fh,AX=4E03h,AX=4F03h<br />

--------V-104E05-----------------------------------<br />

INT 10 - VESA XGA BIOS Extensions - SET FEATURE CONNECTOR STATE<br />

AX = 4E05h<br />

BX = Feature Connector State (see #00076)<br />

DX = XGA handle<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

else error code<br />

SeeAlso: AX=4E00h,AX=4E06h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for XGA Feature Connector State:<br />

Bit(s) Description (Table 00076)<br />

0 Feature Connector is enabled<br />

1 Feature Connector is in Output Mode rather than Input Mode<br />

2-15 reserved (0)<br />

--------V-104E06-----------------------------------<br />

INT 10 - VESA XGA BIOS Extensions - RETURN FEATURE CONNECTOR STATE<br />

AX = 4E06h<br />

DX = XGA handle<br />

Return: AL = 4Eh if function supported<br />

AH = status<br />

00h function successful<br />

else error code<br />

BX = Feature Connector State (see #00076)<br />

SeeAlso: AX=4E00h,AX=4E05h<br />

--------V-104F00-----------------------------<br />

INT 10 - VESA SuperVGA BIOS (VBE) - GET SuperVGA INFORMATION<br />

AX = 4F00h<br />

ES:DI -> buffer for SuperVGA information (see #00077)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ES:DI buffer filled<br />

01h failed<br />

---VBE v2.0---<br />

02h function not supported by current hardware configuration<br />

03h function invalid in current video mode<br />

Desc: determine whether VESA BIOS extensions are present and the capabilities<br />

supported by the display adapter<br />

-123-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

SeeAlso: AX=4E00h,AX=4F01h,AX=7F00h"SOLLEX",AX=A00Ch<br />

<strong>Index</strong>: installation check;VESA SuperVGA<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of SuperVGA information:<br />

Offset Size Description (Table 00077)<br />

00h 4 BYTEs (ret) signature ("VESA")<br />

(call) VESA 2.0 request signature ("VBE2"), required to receive<br />

version 2.0 info<br />

04h WORD VESA version number (one-digit minor version -- 0102h = v1.2)<br />

06h DWORD pointer to OEM name<br />

"761295520" for ATI<br />

0Ah DWORD capabilities flags (see #00078)<br />

0Eh DWORD pointer to list of supported VESA and OEM video modes<br />

(list of words terminated with FFFFh)<br />

12h WORD total amount of video memory in 64K blocks<br />

---VBE v1.x ---<br />

14h 236 BYTEs reserved<br />

---VBE v2.0 ---<br />

14h WORD OEM software version (BCD, high byte = major, low byte = minor)<br />

16h DWORD pointer to vendor name<br />

1Ah DWORD pointer to product name<br />

1Eh DWORD pointer to product revision string<br />

22h WORD (if capabilities bit 3 set) VBE/AF version (BCD)<br />

0100h for v1.0P<br />

24h DWORD (if capabilities bit 3 set) pointer to list of supported<br />

accelerated video modes (list of words terminated with FFFFh)<br />

28h 216 BYTEs reserved for VBE implementation<br />

100h 256 BYTEs OEM scratchpad (for OEM strings, etc.)<br />

Notes: the list of supported video modes is stored in the reserved portion of<br />

the SuperVGA information record by some implementations, and it may<br />

thus be necessary to either copy the mode list or use a different<br />

buffer for all subsequent VESA calls<br />

not all of the video modes in the list of mode numbers may be<br />

supported, e.g. if they require more memory than currently installed<br />

or are not supported by the attached monitor. Check any mode you<br />

intend to use through AX=4F01h first.<br />

the 1.1 VESA document specifies 242 reserved bytes at the end, so the<br />

buffer should be 262 bytes to ensure that it is not overrun; for<br />

v2.0, the buffer should be 512 bytes<br />

the S3 specific video modes will most likely follow the FFFFh<br />

terminator at the end of the standard modes. A search must then<br />

-124-


Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

be made to find them, FFFFh will also terminate this second list<br />

in some cases, only a "stub" VBE may be present, supporting only<br />

AX=4F00h; this case may be assumed if the list of supported video<br />

modes is empty (consisting of a single word of FFFFh)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for VESA capabilities:<br />

Bit(s) Description (Table 00078)<br />

0 DAC can be switched into 8-bit mode<br />

1 non-VGA controller<br />

2 programmed DAC with blank bit (i.e. only during blanking interval)<br />

3 (VBE v3.0) controller supports hardware stereoscopic signalling<br />

3 controller supports VBE/AF v1.0P extensions<br />

4 (VBE v3.0) if bit 3 set:<br />

=0 stereo signalling via external VESA stereo connector<br />

=1 stereo signalling via VESA EVC connector<br />

4 (VBE/AF v1.0P) must call EnableDirectAccess to access framebuffer<br />

5 (VBE/AF v1.0P) controller supports hardware mouse cursor<br />

6 (VBE/AF v1.0P) controller supports hardware clipping<br />

7 (VBE/AF v1.0P) controller supports transparent BitBLT<br />

8-31 reserved (0)<br />

SeeAlso: #00077,AX=4F09h<br />

--------V-104F01-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - GET SuperVGA MODE INFORMATION<br />

AX = 4F01h<br />

CX = SuperVGA video mode (see #04082 for bitfields)<br />

ES:DI -> 256-byte buffer for mode information (see #00079)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ES:DI buffer filled<br />

01h failed<br />

Desc: determine the attributes of the specified video mode<br />

SeeAlso: AX=4F00h,AX=4F02h<br />

Bitfields for VESA/VBE video mode number:<br />

Bit(s) Description (Table 04082)<br />

15 preserve display memory on mode change<br />

14 (VBE v2.0+) use linear (flat) frame buffer<br />

13 (VBE/AF 1.0P) VBE/AF initializes accelerator hardware<br />

12 reserved for VBE/AF<br />

11 (VBE v3.0) user user-specified CRTC refresh rate values<br />

-125-


Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

10-9 reserved for future expansion<br />

8-0 video mode number (0xxh are non-VESA modes, 1xxh are VESA-defined)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of VESA SuperVGA mode information:<br />

Offset Size Description (Table 00079)<br />

00h WORD mode attributes (see #00080)<br />

02h BYTE window attributes, window A (see #00081)<br />

03h BYTE window attributes, window B (see #00081)<br />

04h WORD window granularity in KB<br />

06h WORD window size in KB<br />

08h WORD start segment of window A (0000h if not supported)<br />

0Ah WORD start segment of window B (0000h if not supported)<br />

0Ch DWORD -> FAR window positioning function (equivalent to AX=4F05h)<br />

10h WORD bytes per scan line<br />

---remainder is optional for VESA modes in v1.0/1.1, needed for OEM modes---<br />

12h WORD width in pixels (graphics) or characters (text)<br />

14h WORD height in pixels (graphics) or characters (text)<br />

16h BYTE width of character cell in pixels<br />

17h BYTE height of character cell in pixels<br />

18h BYTE number of memory planes<br />

19h BYTE number of bits per pixel<br />

1Ah BYTE number of banks<br />

1Bh BYTE memory model type (see #00082)<br />

1Ch BYTE size of bank in KB<br />

1Dh BYTE number of image pages (less one) that will fit in video RAM<br />

1Eh BYTE reserved (00h for VBE 1.0-2.0, 01h for VBE 3.0)<br />

---VBE v1.2+ ---<br />

1Fh BYTE red mask size<br />

20h BYTE red field position<br />

21h BYTE green mask size<br />

22h BYTE green field size<br />

23h BYTE blue mask size<br />

24h BYTE blue field size<br />

25h BYTE reserved mask size<br />

26h BYTE reserved mask position<br />

27h BYTE direct color mode info<br />

bit 0: color ramp is programmable<br />

bit 1: bytes in reserved field may be used by application<br />

---VBE v2.0+ ---<br />

28h DWORD physical address of linear video buffer<br />

2Ch DWORD pointer to start of offscreen memory<br />

-126-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

30h WORD KB of offscreen memory<br />

http://www.foxitsoftware.com For evaluation only.<br />

---VBE v3.0 ---<br />

32h WORD bytes per scan line in linear modes<br />

34h BYTE number of images (less one) for banked video modes<br />

35h BYTE number of images (less one) for linear video modes<br />

36h BYTE linear modes: size of direct color red mask (in bits)<br />

37h BYTE linear modes: bit position of red mask LSB (e.g. shift count)<br />

38h BYTE linear modes: size of direct color green mask (in bits)<br />

39h BYTE linear modes: bit position of green mask LSB (e.g. shift count)<br />

3Ah BYTE linear modes: size of direct color blue mask (in bits)<br />

3Bh BYTE linear modes: bit position of blue mask LSB (e.g. shift count)<br />

3Ch BYTE linear modes: size of direct color reserved mask (in bits)<br />

3Dh BYTE linear modes: bit position of reserved mask LSB<br />

3Eh DWORD maximum pixel clock for graphics video mode, in Hz<br />

42h 190 BYTEs reserved (0)<br />

Note: while VBE 1.1 and higher will zero out all unused bytes of the buffer,<br />

v1.0 did not, so applications that want to be backward compatible<br />

should clear the buffer before calling<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for VESA SuperVGA mode attributes:<br />

Bit(s) Description (Table 00080)<br />

0 mode supported by present hardware configuration<br />

1 optional information available (must be =1 for VBE v1.2+)<br />

2 BIOS output supported<br />

3 set if color, clear if monochrome<br />

4 set if graphics mode, clear if text mode<br />

---VBE v2.0+ ---<br />

5 mode is not VGA-compatible<br />

6 bank-switched mode not supported<br />

7 linear framebuffer mode supported<br />

8 double-scan mode available (e.g. 320x200 and 320x240)<br />

---VBE v3.0 ---<br />

9 interlaced mode available<br />

10 hardware supports triple buffering<br />

11 hardware supports stereoscopic display<br />

12 dual display start address support<br />

13-15 reserved<br />

---VBE/AF v1.0P---<br />

9 application must call EnableDirectAccess before calling bank-switching<br />

functions<br />

SeeAlso: #00079<br />

-127-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Bitfields for VESA SuperVGA window attributes:<br />

Bit(s) Description (Table 00081)<br />

0 exists<br />

1 readable<br />

2 writable<br />

3-7 reserved<br />

SeeAlso: #00079<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00082)<br />

Values for VESA SuperVGA memory model type:<br />

00h text<br />

01h CGA graphics<br />

02h HGC graphics<br />

03h 16-color (EGA) graphics<br />

04h packed pixel graphics<br />

05h "sequ 256" (non-chain 4) graphics<br />

06h direct color (HiColor, 24-bit color)<br />

07h YUV (luminance-chrominance, also called YIQ)<br />

08h-0Fh reserved for VESA<br />

10h-FFh OEM memory models<br />

SeeAlso: #00079<br />

--------V-104F02-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - SET SuperVGA VIDEO MODE<br />

AX = 4F02h<br />

BX = new video mode (see #04082,#00083,#00084)<br />

ES:DI -> (VBE 3.0+) CRTC information block, bit mode bit 11 set<br />

(see #04083)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Notes: bit 13 may only be set if the video mode is present in the list of<br />

accelerated video modes returned by AX=4F00h<br />

if the DAC supports both 8 bits per primary color and 6 bits, it will<br />

be reset to 6 bits after a mode set; use AX=4F08h to restore 8 bits<br />

SeeAlso: AX=4E03h,AX=4F00h,AX=4F01h,AX=4F03h,AX=4F08h<br />

(Table 00083)<br />

Values for VESA video mode:<br />

00h-FFh OEM video modes (see #00010 at AH=00h)<br />

-128-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

100h 640x400x256<br />

101h 640x480x256<br />

102h 800x600x16<br />

103h 800x600x256<br />

104h 1024x768x16<br />

105h 1024x768x256<br />

106h 1280x1024x16<br />

107h 1280x1024x256<br />

108h 80x60 text<br />

109h 132x25 text<br />

10Ah 132x43 text<br />

10Bh 132x50 text<br />

10Ch 132x60 text<br />

---VBE v1.2+ ---<br />

10Dh 320x200x32K<br />

10Eh 320x200x64K<br />

10Fh 320x200x16M<br />

110h 640x480x32K<br />

111h 640x480x64K<br />

112h 640x480x16M<br />

113h 800x600x32K<br />

114h 800x600x64K<br />

115h 800x600x16M<br />

116h 1024x768x32K<br />

117h 1024x768x64K<br />

118h 1024x768x16M<br />

119h 1280x1024x32K (1:5:5:5)<br />

11Ah 1280x1024x64K (5:6:5)<br />

11Bh 1280x1024x16M<br />

---VBE 2.0+ ---<br />

120h 1600x1200x256<br />

121h 1600x1200x32K<br />

122h 1600x1200x64K<br />

81FFh special full-memory access mode<br />

Notes:<br />

the special mode 81FFh preserves the contents of the video memory and<br />

gives access to all of the memory; VESA recommends that the special<br />

mode be a packed-pixel mode. For VBE 2.0+, it is required that the<br />

VBE implement the mode, but not place it in the list of available<br />

modes (mode information for this mode can be queried directly,<br />

however).<br />

as of VBE 2.0, VESA will no longer define video mode numbers<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-129-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

SeeAlso: #00010,#00011,#00084,#00191<br />

<strong>Index</strong>: video modes;VESA<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00084)<br />

Values for S3 OEM video mode:<br />

201h 640x480x256<br />

202h 800x600x16<br />

203h 800x600x256<br />

204h 1024x768x16<br />

205h 1024x768x256<br />

206h 1280x960x16<br />

207h 1152x864x256 (Diamond Stealth 64)<br />

208h 1280x1024x16<br />

209h 1152x864x32K<br />

20Ah 1152x864x64K (Diamond Stealth 64)<br />

20Bh 1152x864x4G<br />

211h 640x480x64K (Diamond Stealth 24)<br />

211h 640x400x4G (Diamond Stealth64 Video / Stealth64 Graphics)<br />

212h 640x480x16M (Diamond Stealth 24)<br />

301h 640x480x32K<br />

Note: these modes are only available on video cards using S3's VESA driver<br />

SeeAlso: #00083,#00191,#00732 at INT 1A/AX=B102h<br />

<strong>Index</strong>: video modes;S3<br />

Format of VESA VBE CRTC Information Block:<br />

Offset Size Description (Table 04083)<br />

00h WORD total number of pixels horizontally<br />

02h WORD horizontal sync start (in pixels)<br />

04h WORD horizontal sync end (in pixels)<br />

06h WORD total number of scan lines<br />

08h WORD vertical sync start (in scan lines)<br />

0Ah WORD vertical sync end (in scan lines)<br />

0Ch BYTE flags (see #04084)<br />

0Dh DWORD pixel clock, in Hz<br />

11h WORD refresh rate, in 0.01 Hz units<br />

this field MUST be set to pixel_clock / (HTotal * VTotal),<br />

even though it may not actually be used by the VBE<br />

implementation<br />

13h 40 BYTEs reserved<br />

Bitfields for VESA VBE CRTC Information Block flags:<br />

-130-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Bit(s) Description (Table 04084)<br />

0 enable double scanning<br />

1 enable interlacing<br />

2 horizontal sync polarity (0 positive, 1 negative)<br />

3 vertical sync polarity (0 positive, 1 negative)<br />

SeeAlso: #04083<br />

--------V-104F03-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - GET CURRENT VIDEO MODE<br />

AX = 4F03h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

BX = video mode (see #00083,#00084)<br />

bit 13: VBE/AF v1.0P accelerated video mode<br />

bit 14: linear frame buffer enabled (VBE v2.0+)<br />

bit 15: don't clear video memory<br />

01h failed<br />

SeeAlso: AH=0Fh,AX=4E04h,AX=4F02h<br />

--------V-104F04-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - SAVE/RESTORE SuperVGA VIDEO STATE<br />

AX = 4F04h<br />

DL = subfunction<br />

00h get state buffer size<br />

Return: BX = number of 64-byte blocks needed<br />

01h save video states<br />

ES:BX -> buffer<br />

02h restore video states<br />

ES:BX -> buffer<br />

CX = states to save/restore (see #00085)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AH=1Ch,AX=5F90h,AX=5FA0h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for VESA SuperVGA states to save/restore:<br />

Bit(s) Description (Table 00085)<br />

0 video hardware state<br />

1 video BIOS data state<br />

2 video DAC state<br />

3 SuperVGA register state<br />

-131-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: #00048,#00186<br />

--------V-104F05-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - CPU VIDEO MEMORY CONTROL<br />

AX = 4F05h<br />

BH = subfunction<br />

00h select video memory window<br />

DX = window address in video memory (in granularity units)<br />

01h get video memory window<br />

Return: DX = window address in video memory (in gran. units)<br />

BL = window number<br />

00h window A<br />

01h window B<br />

ES = selector for memory-mapped registers (VBE 2.0+, when called from<br />

32-bit protected mode)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Note: when using an accelerated video mode under VBE/AF v1.0P, the<br />

application must call EnableDirectAccess before switching banks if<br />

bit 9 of the video mode attributes flag is set (see #00080)<br />

BUG: Phoenix S3 Trio64V+ v1.02-02 reportedly returns garbage in DX for<br />

subfunction 01h<br />

SeeAlso: AX=4F01h,AX=4F06h,AX=4F07h,AX=7000h/BX=0004h<br />

--------V-104F06-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v1.1+ - GET/SET LOGICAL SCAN LINE LENGTH (PIXELS)<br />

AX = 4F06h<br />

BL = subfunction<br />

00h set scan line length<br />

CX = desired width in pixels<br />

01h get scan line length<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

BX = bytes per scan line<br />

CX = number of pixels per scan line<br />

DX = maximum number of scan lines<br />

Notes: if the desired width is not achievable, the next larger width will be<br />

set<br />

the scan line may be wider than the visible area of the screen<br />

Saturday, January 08, 2011 11:31 AM<br />

-132-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

this function is valid in text modes, provided that pixel values are<br />

multiplied by the character cell width/height<br />

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h/BL=02h,AX=4F06h/BL=03h,AX=4F07h<br />

--------V-104F06BL02-------------------------<br />

INT 10 - VESA SuperVGA BIOS v2.0+ - SET LOGICAL SCAN LINE LENGTH (BYTES)<br />

AX = 4F06h<br />

BL = 02h<br />

CX = desired scanline width in bytes<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

BX = bytes per scan line<br />

CX = number of pixels per scan line<br />

DX = maximum number of scan lines<br />

Notes: if the desired width is not achievable, the next larger width will be<br />

set<br />

the scan line may be wider than the visible area of the screen<br />

this function is valid in text modes, provided that pixel values are<br />

multiplied by the character cell width/height<br />

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h,AX=4F06h/BL=03h,AX=4F07h<br />

--------V-104F06BL03-------------------------<br />

INT 10 - VESA SuperVGA BIOS v2.0+ - GET MAXIMUM SCAN LINE LENGTH<br />

AX = 4F06h<br />

BL = 03h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

BX = maximum bytes per scan line<br />

CX = maximum number of pixels per scan line<br />

Notes: this function is valid in text modes, provided that pixel values are<br />

multiplied by the character cell width/height<br />

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h,AX=4F06h/BL=02h,AX=4F07h<br />

--------V-104F07-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v1.1+ - GET/SET DISPLAY START<br />

AX = 4F07h<br />

BL = subfunction<br />

00h,80h set display start<br />

CX = leftmost displayed pixel in scan line<br />

DX = first displayed scan line<br />

Saturday, January 08, 2011 11:31 AM<br />

-133-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

01h get display start<br />

Return: BH = 00h<br />

CX = leftmost displayed pixel in scan line<br />

DX = first displayed scan line<br />

BH = 00h (reserved)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Notes:<br />

this function is valid in text modes, provided that values are<br />

multiplied by the character cell width/height<br />

subfunction 80h waits until vertical retrace before changing the<br />

display start address (VBE v2.0+)<br />

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h<br />

--------V-104F07-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v3.0+ - SCHEDULED DISPLAY START<br />

AX = 4F07h<br />

BL = subfunction<br />

02h,82h (VBE v3.0) schedule display start at next vertical retrace<br />

ECX = display start address in bytes<br />

03h,83h schedule stereoscopic display start<br />

ECX = left image start address (in bytes)<br />

EDX = right image start address (in bytes)<br />

04h get scheduled display start status<br />

Return: CX = start status<br />

(00h no display flip, else display has flipped)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=4F07h"DISPLAY START",AX=4F07h"STEREOSCOPIC"<br />

--------V-104F07-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v3.0+ - ENABLE/DISABLE STEREOSCOPIC MODE<br />

AX = 4F07h<br />

BL = subfunction<br />

05h enable stereoscopic mode<br />

06h disable stereoscopic mode<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-134-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: when stereoscopic mode is enabled, the display start address will<br />

automatically alternate between the left and right images on every<br />

vertical retrace<br />

SeeAlso: AX=4F07h"DISPLAY START",AX=4F07h"SCHEDULED"<br />

--------V-104F08-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v1.2+ - GET/SET DAC PALETTE CONTROL<br />

AX = 4F08h<br />

BL = subfunction<br />

00h set DAC palette width<br />

BH = desired number of bits per primary color<br />

01h get DAC palette width<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

BH = current number of bits per primary (06h = standard VGA)<br />

01h failed<br />

--------V-104F09-----------------------------<br />

INT 10 - VESA SuperVGA BIOS v2.0+ - GET/SET PALETTE ENTRIES<br />

AX = 4F09h<br />

BL = subfunction<br />

00h set (primary) palette<br />

01h get (primary) palette<br />

02h set secondary palette data<br />

03h get secondary palette data<br />

80h set palette during vertical retrace<br />

CX = number of entries to change<br />

DX = starting palette index<br />

ES:DI -> palette buffer, array of DAC entries (see #00086)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=4F0Ah,AX=D000h"S3VBE"<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of VESA VBE palette entry:<br />

Offset Size Description (Table 00086)<br />

00h BYTE red<br />

01h BYTE green<br />

02h BYTE blue<br />

03h BYTE alpha or alignment byte<br />

--------V-104F0ABL00-------------------------<br />

-135-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - VESA SuperVGA BIOS v2.0+ - GET PROTECTED-MODE INTERFACE<br />

AX = 4F0Ah<br />

BL = 00h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ES:DI -> protected-mode table (see #00087)<br />

CX = length of table in bytes, included protected-mode code<br />

01h failed<br />

SeeAlso: AX=4F00h,AX=4F05h,AX=4F07h,AX=4F09h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of VESA VBE 2.0 protected-mode table:<br />

Offset Size Description (Table 00087)<br />

00h WORD offset (within table) of protected-mode code for Function 5<br />

(Set Window)<br />

02h WORD offset of protected-mode code for Function 7 (Set Disp Start)<br />

04h WORD offset of protected-mode code for Function 9 (Set Primary<br />

Palette)<br />

06h WORD offset (within table) of list of I/O ports and memory locations<br />

for which I/O privilege may be required in protected mode<br />

(0000h if no list) (see #04085)<br />

08h var code and optional port/memory list<br />

Format of VESA VBE 2.0+ protected-mode port/memory list:<br />

Offset Size Description (Table 04085)<br />

00h WORD I/O port number<br />

...<br />

WORD FFFFh marking end of I/O port list<br />

DWORD memory region base address<br />

WORD memory region limit (one less than length)<br />

WORD FFFFh marking end of memory region list<br />

Note: the memory region is optional; if not present, there will be a word<br />

of FFFFh immediately following the FFFFh marking the end of the I/O<br />

port list<br />

SeeAlso: #00087<br />

--------V-104F0A-----------------------------<br />

INT 10 O - VESA SuperVGA BIOS v2.0 beta - GET PROTECTED-MODE CODE<br />

AX = 4F0Ah<br />

BX = function to be copied (see #00088)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

-136-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

00h successful<br />

CX = number of bytes to copy<br />

ES:DI -> code for requested function<br />

01h failed<br />

SeeAlso: AX=4F09h,AX=D000h"S3VBE"<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00088)<br />

Values for VESA VBE protected-mode function identifiers:<br />

0001h set bank (see AX=4F05h)<br />

0002h set display start (see AX=4F07h)<br />

0003h set palette (see AX=4F09h)<br />

--------V-104F0BBL00-------------------------<br />

INT 10 - VESA SuperVGA BIOS v3.0 - GET NEAREST PIXEL CLOCK<br />

AX = 4F0Bh<br />

BL = 00h get closest pixel clock<br />

ECX = requested clock frequency in Hz<br />

DX = video mode number<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ECX = nearest clock rate<br />

01h failed<br />

--------V-104F0B-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - GET VBE/AF v1.0P DEVICE CONTEXT BUFFER<br />

AX = 4F0Bh<br />

BL = subfunction<br />

00h get length of device context buffer<br />

01h initialize device context buffer<br />

ES:DI -> real-mode address of buffer (see #00089)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

CX = number of bytes required for buffer (if BL=00h on entry)<br />

ES:DI buffer initialized (if BL=01h on entry)<br />

01h failed<br />

Note: this interface description is derived from the draft VBE/AF proposal<br />

(version 1.0P, document revsion 0.12P, dated 13jan95)<br />

SeeAlso: AX=4F00h,AX=4F01h,AX=4F17h<br />

Format of VBE/AF v1.0P Device Context buffer:<br />

Offset Size Description (Table 00089)<br />

-137-


Generated by Foxit PDF Creator © Foxit Software<br />

00h WORD<br />

http://www.foxitsoftware.com For evaluation only.<br />

maximum X coordinate in frame buffer (0 = left edge)<br />

Note: application must never pass X coordinate greater than<br />

this value to the SetClipRect function (values are<br />

NOT range-checked!)<br />

02h WORD maximum Y coordinate in frame buffer (0 = top edge)<br />

Note: application must never pass Y coordinate greater than<br />

this value to the SetClipRect function<br />

04h DWORD -> "SetForeColor" to set foreground color/mix (see #00091)<br />

08h DWORD -> "SetBackColor" to set background color/mix (see #00092)<br />

0Ch DWORD -> "SetClipRect" set hardware clipping rectangle (see #00093)<br />

10h DWORD -> function "DrawScan" to draw a single scan line<br />

14h DWORD -> function "DrawScanList" to draw a list of scan lines<br />

18h DWORD -> function "DrawRect" to draw a solid rectangle<br />

1Ch DWORD -> function "DrawLine" to draw a solid line<br />

20h DWORD -> function "DrawPattScan" to draw a patterned scan line<br />

24h DWORD -> function "BitBlt" to perform screen-to-screen BitBLT<br />

28h DWORD -> "TransBitBlt" to perform transparent screen-to-screen BitBLT<br />

2Ch DWORD -> "MonoBitBlt" to monochrome expansion screen-to-screen BitBLT<br />

30h DWORD -> function "SetCursor" to download hardware cursor image<br />

34h DWORD -> function "SetCursorPos" to set hardware cursor position<br />

38h DWORD -> function "SetCursorColor" to set hardware cursor color<br />

3Ch DWORD -> function "ShowCursor" to show/hide hardware cursor<br />

40h DWORD -> function "WaitTillIdle" to wait until graphics engine idle<br />

44h DWORD -> "EnableDirectAccess" to enable direct framebuffer access<br />

48h DWORD -> "DisableDirectAccess" to disable direct framebuffer access<br />

4Ch DWORD -> "BankSwitchCB" bank-switching callback function<br />

(set by application, may simply point at 32-bit VBE 2.0 bank<br />

switching entry point)<br />

50h WORD "VidMemSel" selector for video memory (must be set by app)<br />

52h WORD "IOPortsOff" offset of I/O ports table in context buffer<br />

54h WORD "IOMemoryOff" offset of I/O memory table in context buffer<br />

56h WORD "IOMemSel1" selector for first I/O memory area specified by<br />

I/O memory table (must be set by application)<br />

58h WORD "IOMemSel2" selector for second I/O memory area<br />

5Ah WORD "IOMemSel3" selector for third I/O memory area<br />

5Ch WORD "IOMemSel4" selector for fourth I/O memory area<br />

5Eh N BYTEs device-specific state buffer<br />

N WORDs I/O port access table (list of ports, last entry is FFFFh)<br />

N DWORDs I/O memory access table (list of physical-address/length pairs,<br />

last entry is FFFFFFFFh)<br />

N BYTEs 32-bit code for VBE/AF v1.0P function<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-138-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Notes: all function pointers are offsets into the 32-bit code within the<br />

context buffer, and should be updated to point at the actual<br />

functions after the application has copied the buffer from the<br />

real-mode memory used for the interrupt call into its own flat-model<br />

memory space<br />

any functions which are not supported by the hardware have function<br />

pointers which are set to 00000000h initially<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00090)<br />

Values for VBE/AF v1.0P color mixing mode:<br />

00h replace<br />

01h XOR with existing pixel<br />

02h OR with existing pixel<br />

03h AND with existing pixel<br />

SeeAlso: #00091,#00090<br />

(Table 00091)<br />

Call VBE/AF v1.0P function "SetForeColor" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = new foreground color (format varies by video mode)<br />

BL = new foreground mixing mode (see #00090)<br />

SeeAlso: #00089,#00092,#00107<br />

(Table 00092)<br />

Call VBE/AF v1.0P function "SetbackColor" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = new background color (format varies by video mode)<br />

BL = new background mixing mode (see #00090)<br />

SeeAlso: #00089,#00091,#00093<br />

(Table 00093)<br />

Call VBE/AF v1.0P function "SetClipRect" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = left clipping coordinate<br />

EBX = top clipping coordinate<br />

ECX = right clipping coordinate<br />

EDX = bottom clipping coordinate<br />

SeeAlso: #00089,#00092,#00094,#00107<br />

(Table 00094)<br />

Call VBE/AF v1.0P function "DrawScan" with:<br />

-139-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = X1 coordinate<br />

EBX = Y coordinate<br />

ECX = X2 coordinate<br />

Desc: draw a solid horizontal line from (X1,Y) to (X2,Y) in the currentlyactive<br />

foreground color and mix, omitting the pixel at the largest<br />

X coordinate<br />

SeeAlso: #00089,#00093,#00095,#00098,#00107<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00095)<br />

Call VBE/AF v1.0P function "DrawScanList" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = Y coordinate of first line<br />

EBX = length of scan list<br />

DS:ESI -> scanline list X coordinates (2N WORDs)<br />

Desc: draw multiple solid horizontal lines at successive Y coordinates,<br />

using the currently-active foreground color and mix, omitting the<br />

pixel at the largest X coordinate for each line<br />

Note: the scanline list consists of pairs of X coordinates; because the<br />

last pixel is omitted, a scanline will be skipped if X1==X2<br />

SeeAlso: #00089,#00094,#00096,#00107<br />

(Table 00096)<br />

Call VBE/AF v1.0P function "DrawRect" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = left coordinate<br />

EBX = top coordinate<br />

ECX = right coordinate<br />

EDX = bottom coordinate<br />

Desc: draw a solid rectangle in the currently-active foreground color and<br />

mix, omitting the rightmost X coordinate and bottom-most scan line<br />

Note: results are undefined if EAX>ECX or EBX>EDX; nothing will be drawn if<br />

EAX=ECX or EBX=EDX<br />

SeeAlso: #00089,#00094,#00095,#00097<br />

(Table 00097)<br />

Call VBE/AF v1.0P function "DrawLine" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = ??? (specified this way in the draft documentation!)<br />

EBX = ???<br />

ECX = ???<br />

-140-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

EDX = ???<br />

ESI = ???<br />

Desc: draw a solid line in the currently-active foreground color and mix,<br />

given the Bresenham parameters<br />

SeeAlso: #00089,#00094,#00096,#00098<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00098)<br />

Call VBE/AF v1.0P function "DrawPattScan" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = X1 coordinate<br />

EBX = Y coordinate<br />

ECX = X2 coordinate<br />

DL = 8-bit stipple pattern<br />

Desc: draw a patterned horizontal line from (X1,Y) to (X2,Y) in the<br />

currently-active foreground color and mix, omitting the pixel at<br />

the largest X coordinate<br />

Note: for each pixel in the line, if DL bit (X mod 8) is set, the pixel is<br />

drawn, and left untouched if the bit is clear<br />

SeeAlso: #00089,#00096,#00097,#00094,#00099,#00107<br />

(Table 00099)<br />

Call VBE/AF v1.0P function "BitBlt" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

DS:ESI -> BitBlt parameter block (see #00100)<br />

BL = mix operation<br />

00h replace<br />

01h XOR<br />

02h OR<br />

03h AND<br />

SeeAlso: #00089,#00094,#00098,#00101,#00107<br />

Format of VBE/AF BitBlt parameter block:<br />

Offset Size Description (Table 00100)<br />

00h WORD left coordinate of source rectangle<br />

02h WORD top coordinate of source rectangle<br />

04h WORD right coordinate of source rectangle<br />

06h WORD bottom coordinate of source rectangle<br />

08h WORD left coordinate of destination rectangle<br />

0Ah WORD top coordinate of destination rectangle<br />

0Ch BYTE horizontal direction: 00h = decrement X, 01h = increment X<br />

0Dh BYTE vertical direction: 00h = decrement Y, 01h = increment Y<br />

-141-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Notes: the rightmost pixel(s) and bottom-most scan line are not copied<br />

the horizontal/vertical direction flags are used to ensure correct<br />

copies when the source and destination rectangles overlap<br />

SeeAlso: #00099<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00101)<br />

Call VBE/AF v1.0P function "TransBitBlt" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

DS:ESI -> BitBlt parameter block (see #00100)<br />

BL = mix operation<br />

00h replace<br />

01h XOR<br />

02h OR<br />

03h AND<br />

ECX = transparent color<br />

Desc: copy a rectangular area from one location to another, treating pixels<br />

with the specified color as transparent (leaving the destination<br />

unchanged)<br />

SeeAlso: #00089,#00099,#00102,#00107<br />

(Table 00102)<br />

Call VBE/AF v1.0P function "MonoBitBlt" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

DS:ESI -> BitBlt parameter block (see #00100)<br />

BL = mix operation<br />

00h replace<br />

01h XOR<br />

02h OR<br />

03h AND<br />

BH = bit-plane from which to read<br />

Desc: copy a rectangular area from one location to another, expanding a<br />

single bit of each source pixel<br />

SeeAlso: #00089,#00099,#00101<br />

(Table 00103)<br />

Call VBE/AF v1.0P function "SetCursor" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

DS -> application's data segment<br />

ESI -> 32x32 cursor data, in Windows 3.1 cursor-file format<br />

(32 DWORDs of XOR mask followed by 32 DWORDs of AND mask)<br />

SeeAlso: #00089,#00094,#00104,#00105<br />

-142-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

(Table 00104)<br />

Call VBE/AF v1.0P function "SetCursorPos" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

EAX = cursor X coordinate<br />

EBX = cursor Y coordinate<br />

CL = cursor's X hotspot<br />

CH = cursor's Y hotspot<br />

SeeAlso: #00089,#00103,#00105<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00105)<br />

Call VBE/AF v1.0P function "SetCursorColor" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

AL = 8-bit color index, or color's Red value<br />

AH = color's Green value (16-bpp, 24-bpp, 32-bpp modes)<br />

BL = color's Blue value (16-bpp, 24-bpp, 32-bpp modes)<br />

SeeAlso: #00089,#00103,#00104,#00106<br />

(Table 00106)<br />

Call VBE/AF v1.0P function "ShowCursor" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

AL = new visibility (00h hide cursor, 01h show cursor)<br />

SeeAlso: #00089,#00103,#00104,#00105<br />

(Table 00107)<br />

Call VBE/AF v1.0P function "WaitTillIdle" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

Desc: pause until the hardware accelerator has completed all pending<br />

operations<br />

SeeAlso: #00089,#00108,#00109<br />

(Table 00108)<br />

Call VBE/AF v1.0P function "EnableDirectAccess" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

SeeAlso: #00089,#00109,#00107,AX=4F05h,#00078,#00080<br />

(Table 00109)<br />

Call VBE/AF v1.0P function "DisableDirectAccess" with:<br />

ES:EDI -> device context buffer (see #00089)<br />

SeeAlso: #00089,#00108<br />

--------V-104F0C-----------------------------<br />

-143-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - VESA SuperVGA BIOS - RESERVED FOR FUTURE SVGA FUNCTIONS<br />

AX = 4F0Ch-4F0Fh<br />

SeeAlso: AX=4F00h<br />

--------V-104F0B-----------------------------<br />

INT 10 - Diamond Viper V330 - ???<br />

AX = 4F0Bh<br />

ECX = ???<br />

???<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ECX = ???<br />

???<br />

01h failed<br />

Note: in BIOS v1.62, ECX is in multiples of 10000 (decimal) for both input<br />

and output, and this function never fails<br />

--------p-104F10BL00-------------------------<br />

INT 10 - VESA VBE/PM (Power Management) v1.0+ - GET CAPABILITIES<br />

AX = 4F10h<br />

BL = 00h<br />

ES:DI = 0000h:0000h (reserved for future use as pointer to info block)<br />

Return: AL = 4Fh if function supported (installed)<br />

AH = call status<br />

00h successful<br />

else failed<br />

---if successful---<br />

BL = VBE/PM version (bits 7-4: major, bits 3-0: minor)<br />

BH = supported states (see #00110)<br />

ES:DI unchanged<br />

<strong>Index</strong>: installation check;VESA VBE/Power Management|VESA DPMS<br />

SeeAlso: AX=4F10h/BL=01h,AX=4F10h/BL=02h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for VESA VBE/PM supported power states:<br />

Bit(s) Description (Table 00110)<br />

0 standby<br />

1 suspend<br />

2 off<br />

3 reduced on<br />

--------p-104F10BL01-------------------------<br />

INT 10 - VESA VBE/PM (Power Management) v1.0+ - SET DISPLAY POWER STATE<br />

AX = 4F10h<br />

-144-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

BL = 01h<br />

BH = new state (see #00111)<br />

Return: AL = 4Fh if function supported<br />

AH = call status<br />

00h successful<br />

else failed<br />

SeeAlso: AX=4F10h/BL=00h,AX=4F10h/BL=02h,AX=A00Ch<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00111)<br />

Values for VESA VBE/PM power state:<br />

00h On<br />

01h standby<br />

02h suspend<br />

04h Off<br />

08h reduced On (for flat screens)<br />

--------p-104F10BL02-------------------------<br />

INT 10 - VESA VBE/PM (Power Management) v1.0+ - GET DISPLAY POWER STATE<br />

AX = 4F10h<br />

BL = 02h<br />

Return: AL = 4Fh if function supported<br />

AH = call status<br />

00h successful<br />

BH = current power state (see #00111)<br />

else failed<br />

SeeAlso: AX=4F10h/BL=00h,AX=4F10h/BL=01h,AX=A00Dh<br />

--------V-104F11-----------------------------<br />

INT 10 - VESA VBE/FP (Flat Panel Interface) - API<br />

AX = 4F11h<br />

BL = function<br />

00h installation check / get capabilities<br />

other registers vary by function<br />

Return: varies by function<br />

--------V-104F12-----------------------------<br />

INT 10 - VESA VBE/CI (Cursor Interface) - API<br />

AX = 4F12h<br />

BL = function<br />

other registers vary by function<br />

Return: varies by function<br />

SeeAlso: AX=4F4Dh<br />

--------s-104F13BX0000-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - INSTALLATION CHECK<br />

-145-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AX = 4F13h<br />

BX = 0000h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

BX = version (0010h for 1.00 -- note nonstandard value!)<br />

01h failed<br />

SeeAlso: AX=4F13h/BX=0001h,AX=4F13h/BX=0005h<br />

--------s-104F13BX0001-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - LOCATE DEVICE<br />

AX = 4F13h<br />

BX = 0001h<br />

CX = 0000h ???<br />

DX = type of device<br />

0001h Wave device<br />

0002h MIDI device<br />

0003h Volume device<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

CX = handle [returned 1 for DX=1 and 3, and 2 for DX=2]<br />

01h failed<br />

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0002h<br />

--------s-104F13BX0002-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - QUERY DEVICE<br />

AX = 4F13h<br />

BX = 0002h<br />

CX = handle<br />

DX = query<br />

0001h return length of GeneralDeviceClass<br />

0002h return copy of GeneralDeviceClass (see #00112)<br />

0003h return length of Volume Info Structure<br />

0004h return copy of Volume Info Structure (see #00122)<br />

0005h return length of Volume Services Structure<br />

0006h return copy of Volume Services Structure (see #00124)<br />

0007h-000Fh reserved<br />

0010h-FFFFh device-specific<br />

SI:DI -> buffer (functions 0002h,0004h,0006h)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

Saturday, January 08, 2011 11:31 AM<br />

-146-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SI:DI = length (functions 1,3,5)<br />

SI:DI buffer filled (functions 2,4,6)<br />

01h failed<br />

Note: functions 0003h to 0006h are only supported for the Volume device<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of GeneralDeviceClass structure:<br />

Offset Size Description (Table 00112)<br />

00h 4 BYTEs name of the structure ("GENI")<br />

04h DWORD structure length<br />

08h WORD type of device (1=Wave, 2=MIDI)<br />

0Ah WORD version of VESA driver support (0100h for 1.00)<br />

10h var for CX=handle for Wave device:<br />

Wave Info structure (see #00113)<br />

some bytes ???<br />

for CX=handle for MIDI device:<br />

MIDI Info Structure (see #00118)<br />

first 8 bytes of MIDI Service Structure ???<br />

SeeAlso: #00122,#00124<br />

Format of WAVE Info Structure:<br />

Offset Size Description (Table 00113)<br />

00h 4 BYTEs name of the structure ("WAVI")<br />

04h DWORD structure length [0000007Eh]<br />

08h DWORD driver software version [00000003h]<br />

0Ch 32 BYTEs vendor name, etc. (ASCIZ string)<br />

2Ch 32 BYTEs vendor product name<br />

4Ch 32 BYTEs vendor chip/hardware description<br />

6Ch BYTE installed board number<br />

6Dh 3 BYTEs unused data<br />

70h DWORD feature bits (see #00114)<br />

74h WORD user determined preference field<br />

76h WORD memory required for driver use [0200h]<br />

78h WORD number of timer tick callbacks per second [0000h]<br />

7Ah WORD channels: 1 = mono, 2 = stereo<br />

stereo is assumed to be interleaved data<br />

7Ch WORD bitfield of max sample sizes (see #00115)<br />

SeeAlso: #00118<br />

Bitfields for Wave feature bits:<br />

Bit(s) Description (Table 00114)<br />

0 8000hz Mono Playback<br />

-147-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

1 8000hz Mono Record<br />

2 8000hz Stereo Record<br />

3 8000hz Stereo Playback<br />

4 8000hz Full Duplex Play/Record<br />

5 11025hz Mono Playback<br />

6 11025hz Mono Record<br />

7 11025hz Stereo Record<br />

8 11025hz Stereo Playback<br />

9 11025hz Full Duplex Play/Record<br />

10 22050hz Mono Playback<br />

11 22050hz Mono Record<br />

12 22050hz Stereo Record<br />

13 22050hz Stereo Playback<br />

14 22050hz Full Duplex Play/Record<br />

15 44100hz Mono Playback<br />

16 44100hz Mono Record<br />

17 44100hz Stereo Record<br />

18 44100hz Stereo Playback<br />

19 44100hz Full Duplex Play/Record<br />

20-26 reserved (0)<br />

27 driver must pre-handle the data<br />

28 Variable Sample mono playback<br />

29 Variable Sample stereo playback<br />

30 Variable Sample mono record<br />

31 Variable Sample stereo record<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00115)<br />

Values for Sample data size:<br />

01h 8bit play<br />

02h 16bit play<br />

10h 8bit record<br />

20h 16bit record<br />

Format of WAVE Audio Services structure:<br />

Offset Size Description (Table 00116)<br />

00h 4 BYTEs name of the structure<br />

04h DWORD structure length<br />

08h 16 BYTEs for future expansion<br />

---entry points (details???)---<br />

18h DWORD DeviceCheck<br />

11h compression (see also #00117)<br />

-148-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

12h driver state<br />

13h get current pos<br />

14h sample rate<br />

15h set preference<br />

16h get DMA,IRQ<br />

17h get IO address<br />

18h get mem address<br />

19h get mem free<br />

1Ah full duplex<br />

1Bh get block size<br />

1Ch get PCM format<br />

1Dh enable PCM format<br />

80h-.. vendors can add DevChks above 0x80<br />

1Ch DWORD PCMInfo<br />

20h DWORD PlayBlock<br />

24h DWORD PlayCont<br />

28h DWORD RecordBlock<br />

2Ch DWORD RecordCont<br />

30h DWORD PauseIO<br />

34h DWORD ResumeIO<br />

38h DWORD StopIO<br />

3Ch DWORD WavePrepare<br />

40h DWORD WaveRegister<br />

44h DWORD GetLastError<br />

01h unsupported feature/function<br />

02h bad sample rate<br />

03h bad block length<br />

04h bad block address<br />

05h app. missed an IRQ<br />

06h don't understand the PCM size/format<br />

80h-.. vendors specific errors<br />

48h DWORD TimerTick<br />

4Ch DWORD ApplPSyncCB: CallBack: play filled in by the app<br />

50h DWORD ApplRSyncCB: CallBack: rec filled in by the app<br />

SeeAlso: #00120,#00124<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00117)<br />

Values for type of compression:<br />

01h IMA play<br />

02h ALAW play<br />

03h ULAW play<br />

-149-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

11h IMA record<br />

12h ALAW record<br />

13h ULAW record<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of MIDI Info Structure:<br />

Offset Size Description (Table 00118)<br />

00h 4 BYTEs name of the structure ("MIDI")<br />

04h DWORD structure length<br />

08h DWORD driver software version [00000003h]<br />

0Ch 32 BYTEs vendor name, etc. (ASCIZ string)<br />

2Ch 32 BYTEs vendor product name<br />

4Ch 32 BYTEs vendor chip/hardware description<br />

6Ch BYTE installed board number<br />

6Dh 3 BYTEs unused data<br />

70h 14 BYTEs the patch library file name [OPL2.BNK 00..]<br />

7Eh DWORD feature bits (see #00119)<br />

80h WORD user determined preference field<br />

82h WORD memory required for driver use<br />

84h WORD # of timer tick callbacks per second<br />

86h WORD max # of tones (voices, partials)<br />

SeeAlso: #00112,#00120,#00122<br />

Bitfields for MIDI feature bits:<br />

Bit(s) Description (Table 00119)<br />

0-3 reserved for GM extensions<br />

4 Transmitter/Receiver only<br />

5 Patches preloaded<br />

6 MIDI receive has time stamp<br />

8 MIDI interrupt driven input supported<br />

9 MIDI polled input supported<br />

10 MIDI remote patches supported<br />

Format of MIDI Service structure:<br />

Offset Size Description (Table 00120)<br />

00h 4 BYTEs name of the structure ("MIDS")<br />

04h DWORD structure length<br />

08h 16 WORDs patches loaded table bit field<br />

28h 16 BYTEs for future expansion<br />

---entry points (details???)---<br />

38h DWORD device check<br />

11h return available tones<br />

-150-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

12h return TRUE/FALSE if patch is understood<br />

13h set preference<br />

14h allow/disallow voice stealing<br />

15h get FIFO sizes<br />

16h get DMA,IRQ<br />

17h get IO address<br />

18h get mem address<br />

19h get mem free<br />

80h-.. vendors can add DevChks above 0x80<br />

3Ch DWORD global reset<br />

40h DWORD MIDI msg<br />

44h DWORD poll MIDI<br />

48h DWORD preload patch<br />

4Ch DWORD unload patch<br />

50h DWORD timer tick<br />

54h DWORD get last error<br />

01h unsupported feature/function<br />

02h unknown patch type (see #00121)<br />

03h all tones are used<br />

04h messages are out of sync<br />

05h an incoming patch was incomplete<br />

06h an incoming patch couldn't be stored<br />

07h had to drop an incoming byte<br />

08h driver is failing a patch download<br />

80h-.. vendors specific errors<br />

58h DWORD Patch Block free callback<br />

5Ch DWORD MIDI byte avail. callback<br />

SeeAlso: #00116,#00124<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00121)<br />

Values for MIDI Registered Patch Types:<br />

10h OPL2<br />

11h OPL3<br />

Format of Volume Info Structure:<br />

Offset Size Description (Table 00122)<br />

00h 4 BYTEs name of the structure ("VOLI")<br />

04h DWORD structure length (00000092h)<br />

08h DWORD driver software version [00000001h]<br />

0Ch 32 BYTEs vendor name, etc. (ASCIZ string)<br />

2Ch 32 BYTEs vendor product name<br />

-151-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

4Ch 32 BYTEs vendor chip/hardware description<br />

6Ch BYTE installed board number (0 for 1st/only board)<br />

6Dh 3 BYTEs unused data (0)<br />

70h 24 BYTEs text name of the mixer channel<br />

88h DWORD features bits (see #00123)<br />

8Ch WORD minimum volume setting<br />

8Eh WORD maximum volume setting<br />

90h WORD attenuation/gain crossover<br />

SeeAlso: #00112,#00124<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Volume feature bits:<br />

Bit(s) Description (Table 00123)<br />

0 Stereo Volume control available<br />

2 Low Pass Filter is available<br />

3 High Pass Filter is available<br />

4 Parametric Tone Control is available<br />

5 selectable output paths<br />

8 Azimuth Field positioning supported<br />

9 Phi Field positioning supported<br />

10-30 unused???<br />

31 Master Volume device<br />

Format of Volume Services Structure:<br />

Offset Size Description (Table 00124)<br />

00h 4 BYTEs name of the structure ("VOLS")<br />

04h DWORD structure length (00000038h)<br />

08h 16 BYTEs 16 bytes for future expansion (0)<br />

---entry points (details???)---<br />

18h DWORD device check<br />

0011h filter range<br />

0012h filter setting<br />

0013h filter current<br />

0014h tone range<br />

0015h tone setting<br />

0016h tone current<br />

0017h path<br />

0018h get IO address<br />

0080h-.. vendors can add DevChks above 0x80<br />

1Ch DWORD set vol to an absolute setting<br />

01h User master volume setting<br />

02h application master volume setting<br />

-152-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

20h DWORD set 3D volume<br />

24h DWORD tone control<br />

28h DWORD filter control<br />

2Ch DWORD output path<br />

30h DWORD reset channel<br />

34h DWORD get last error<br />

01h unsupported feature/function<br />

02h out of range parameter value<br />

80h+ vendor-specific errors<br />

SeeAlso: #00116,#00120<br />

--------s-104F13BX0003-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - OPEN DEVICE<br />

AX = 4F13h<br />

BX = 0003h<br />

CX = handle<br />

DX = API set (16/32-bit)<br />

SI = segment ???<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

SI:CX -> memory ???<br />

01h failed<br />

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0002h,AX=4F13h/BX=0004h<br />

--------s-104F13BX0004-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - CLOSE DEVICE<br />

AX = 4F13h<br />

BX = 0004h<br />

CX = handle<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0003h,AX=4F13h/BX=0005h<br />

--------s-104F13BX0005-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - UNINSTALL DRIVER<br />

AX = 4F13h<br />

BX = 0005h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-153-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0006h<br />

--------s-104F13BX0006-----------------------<br />

INT 10 - VESA VBE/AI (Audio Interface) - DRIVER CHAIN/UNCHAIN<br />

AX = 4F13h<br />

BX = 0006h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0005h<br />

----------104F14-----------------------------<br />

INT 10 - VESA OEM Extensions - API<br />

AX = 4F14h<br />

BL = function<br />

00h installation check / get capabilities<br />

other registers vary by function<br />

Return: varies by function<br />

Note: this function is provided for OEMs to implement system-specific<br />

functionality in a VESA-compatible manner<br />

----------104F14-----------------------------<br />

INT 10 - VESA OEM Extensions - Matrox Millenium (BIOS v2.1)<br />

AX = 4F14h<br />

BL = function<br />

00h installation check / get capabilities<br />

ES:DI -> 256-byte buffer for Matrox-specific information<br />

(see #00125)<br />

Return: ES:DI buffer filled<br />

01h read/write MGA indexed data register<br />

BH = direction (00h = write, else read)<br />

CL = register number (80h for most-recently used register)<br />

CH = new value, if writing<br />

Return: CH = current value, if reading<br />

02h read/write register in MGA control space<br />

BH = direction and size<br />

bit 4: read register instead of writing<br />

bits 1-0: data size (00 = BYTE, 01 = WORD, 10 = DWORD)<br />

SI = register address<br />

CL/CX/ECX = new value if writing<br />

Return: CL/CX/ECX = current value if reading<br />

03h read PINS byte<br />

SI = offset of byte within PINS data (see #00126)<br />

Saturday, January 08, 2011 11:31 AM<br />

-154-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: CL = value of specified PINS byte<br />

04h ??? (related to PLL programming)<br />

DX = ???<br />

Return: CL,EDX destroyed<br />

05h read BIOS byte<br />

SI = offset of byte relative to start of BIOS image<br />

Return: CL = specified byte<br />

else<br />

Return: AX = FFFFh<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Note: most of this info is from http:\\grafi.ii.pw.edu.pl\gbm\matrox<br />

SeeAlso: MEM C000h:7FFCh"Matrox"<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of Matrox-specific VESA extensions information:<br />

Offset Size Description (Table 00125)<br />

00h 7 BYTEs signature "VBE/MGA"<br />

07h 10 BYTEs ??? (01h 01h 00h 00h 00h 00h 00h 00h 00h 07h)<br />

11h WORD BIOS version (high byte = major, low byte = one-digit minor)<br />

13h DWORD -> manufacturer name (ASCIZ "Matrox")<br />

17h DWORD -> ASCIZ card name<br />

1Bh DWORD -> ??? ASCIZ string (empty string on card examined)<br />

1Fh DWORD -> ASCIZ vendor name<br />

23h DWORD -> ASCIZ BIOS file base name<br />

27h DWORD -> PINS<br />

2Bh WORD video memory size in 64K units<br />

2Dh DWORD linear address of linear frame buffer<br />

31h DWORD linear address of MGA control aperture<br />

35h WORD PCI bus/device for card???<br />

37h 201 BYTEs unused??? (cleared to 00h)<br />

Format of Matrox PINS data (version 3.0):<br />

Offset Size Description (Table 00126)<br />

00h 2 BYTEs signature ".A" (2Eh 41h)<br />

02h BYTE structure length (40h for v3.0)<br />

03h BYTE ???<br />

04h WORD PINS version (high byte = major, low byte = minor)<br />

06h WORD date last programmed<br />

08h WORD number of times programmed<br />

-155-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0Ah WORD flags<br />

0Ch 8 BYTEs ASCII serial number, three letters + five digits<br />

14h 8 BYTEs ???<br />

1Ch 4 BYTEs ASCII card version<br />

20h DWORD PCB revision<br />

24h BYTE maximum RAMDAC frequency in MHz (less 100)<br />

25h BYTE maximum RAMDAC frequency???<br />

26h BYTE maximum RAMDAc frequency???<br />

27h BYTE ???<br />

28h BYTE ??? timing data?<br />

29h BYTE ???<br />

2Ah BYTE ???<br />

2Bh BYTE ???<br />

2Ch BYTE ???<br />

2Dh BYTE ???<br />

2Eh BYTE ???<br />

2Fh BYTE ???<br />

30h 4 BYTEs ???<br />

34h BYTE ???<br />

35h BYTE ???<br />

36h BYTE ???<br />

37h BYTE memory size in 64K units<br />

38h BYTE ???<br />

39h BYTE ???<br />

3Ah BYTE ???<br />

3Bh BYTE ???<br />

3Ch BYTE ???<br />

3Dh BYTE ???<br />

3Eh BYTE ???<br />

3Fh BYTE checksum (to make sum of all bytes MOD 256 == 00h)<br />

--------V-104F15BL00-------------------------<br />

INT 10 - VESA VBE/DC (Display Data Channel) - INSTALLATION CHECK / CAPABILITIES<br />

AX = 4F15h<br />

BL = 00h<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

BX = ???<br />

01h failed<br />

???<br />

SeeAlso: AX=4F15h/BL=01h,AX=4F15h/BL=02h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-156-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

--------V-104F15BL01-------------------------<br />

INT 10 - VESA VBE/DC (Display Data Channel) - READ EDID<br />

AX = 4F15h<br />

BL = 01h<br />

CX = 0000h<br />

DX = 0000h<br />

ES:DI -> 128-byte buffer for EDID record (see #00127)<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

ES:DI buffer filled<br />

01h failed (e.g. non-DDC monitor)<br />

SeeAlso: AX=4F15h/BL=00h,AX=4F15h/BL=02h,I2C A0h"DDC"<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of VESA EDID record:<br />

Offset Size Description (Table 00127)<br />

00h 8 BYTEs padding (all FFh, or 00h FFh..FFh 00h)<br />

08h WORD big-endian manufacturer ID (see #00136)<br />

bits 14-10: first letter (01h='A', 02h='B', etc.)<br />

bits 9-5: second letter<br />

bits 4-0: third letter<br />

0Ah WORD EDID ID code -- identifies monitor model<br />

0Ch DWORD serial number or FFFFFFFFh<br />

for "MAG", subtract 7000000 to get actual serial number<br />

for "OQI", subtract 456150000<br />

for "PHL", subtract ???<br />

for "VSC", subtract 640000000<br />

10h BYTE week number of manufacture<br />

11h BYTE manufacture year - 1990<br />

12h BYTE EDID version<br />

13h BYTE EDID revision<br />

14h BYTE video input type (see #00129)<br />

15h BYTE maximum horizontal size in cm<br />

16h BYTE maximum vertical size in cm<br />

17h BYTE gamma factor (gamma = 1.0 + factor/100, so max = 3.55)<br />

18h BYTE DPMS flags (see #00128)<br />

19h BYTE chroma information: green X'/Y' and red X'/Y'<br />

1Ah BYTE chroma information: white X'/Y' and blue X'/Y'<br />

1Bh BYTE chroma information: red Y<br />

1Ch BYTE chroma information: red X<br />

1Dh BYTE chroma information: green Y<br />

-157-


Generated by Foxit PDF Creator © Foxit Software<br />

1Eh BYTE chroma information: green X<br />

http://www.foxitsoftware.com For evaluation only.<br />

1Fh BYTE chroma information: blue Y<br />

20h BYTE chroma information: blue X<br />

21h BYTE chroma information: white Y<br />

22h BYTE chroma information: white X<br />

23h BYTE established timings 1 (see #00130)<br />

24h BYTE established timings 2 (see #00131)<br />

25h BYTE manufacturer's reserved timing or 00h for none<br />

bit 7: 1152x870 @ 75 Hz (Mac II, Apple)<br />

26h 8 WORDs standard timing identification<br />

resolution (low byte) and vertical frequency (high byte) for<br />

each of eight modes (see #00132)<br />

X resolution = (lowbyte + 31) * 8<br />

36h 18 BYTEs detailed timing description #1 (see #00133)<br />

(v1.1) alternately, text identification (see #00135)<br />

48h 18 BYTEs detailed timing description #2<br />

(v1.1) alternately, text identification (see #00135)<br />

5Ah 18 BYTEs detailed timing description #3<br />

(v1.1) alternately, text identification (see #00135)<br />

6Ch 18 BYTEs detailed timing description #4<br />

(v1.1) alternately, text identification (see #00135)<br />

7Eh BYTE unused???<br />

7Fh BYTE checksum<br />

(radix-complement: 256-low byte of 16-bit sum of 00h-7Eh)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for DPMS EDID flags:<br />

Bit(s) Description (Table 00128)<br />

2-0 unused???<br />

3 display type<br />

=0 non-RGB multicolor<br />

=1 RGB color<br />

4 unused???<br />

5 Active Off supported<br />

6 Suspend supported<br />

7 Standby supported<br />

SeeAlso: #00127<br />

Bitfields for DPMS input signal type:<br />

Bit(s) Description (Table 00129)<br />

0 separate sync<br />

1 composite sync<br />

-158-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

2 sync on green<br />

4-3 unused???<br />

6-5 voltage level<br />

00 0.700V/0.300V (1.00 Vp-p)<br />

01 0.714V/0.286V<br />

10 0.100V/0.400V<br />

11 reserved<br />

7 =1 digital signal, =0 analog<br />

SeeAlso: #00127<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for DPMS established timings 1:<br />

Bit(s) Description (Table 00130)<br />

0 720x400 @ 70 Hz (VGA 640x400, IBM)<br />

1 720x400 @ 88 Hz (XGA2)<br />

2 640x480 @ 60 Hz (VGA)<br />

3 640x480 @ 67 Hz (Mac II, Apple)<br />

4 640x480 @ 72 Hz (VESA)<br />

5 640x480 @ 75 Hz (VESA)<br />

6 800x600 @ 56 Hz (VESA)<br />

7 800x600 @ 60 Hz (VESA)<br />

SeeAlso: #00127,#00131<br />

Bitfields for DPMS established timings 2:<br />

Bit(s) Description (Table 00131)<br />

0 800x600 @ 72 Hz (VESA)<br />

1 800x600 @ 75 Hz (VESA)<br />

2 832x624 @ 75 Hz (Mac II)<br />

3 1024x768 @ 87 Hz interlaced (8514A)<br />

4 1024x768 @ 60 Hz (VESA)<br />

5 1024x768 @ 70 Hz (VESA)<br />

6 1024x768 @ 75 Hz (VESA)<br />

7 1280x1024 @ 75 Hz (VESA)<br />

SeeAlso: #00127,#00130<br />

Bitfields for DPMS standard timing information:<br />

Bit(s) Description (Table 00132)<br />

5-0 vertical refresh frequency - 60 (Hz)<br />

7-6 aspect ratio (Y resolution = X resolution * aspect ratio)<br />

00 ???<br />

01 0.75<br />

10 0.8<br />

-159-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

11 0.5625<br />

Note: if both bytes of the timing are 00h or 01h, then the Standard Timing<br />

is "None"<br />

SeeAlso: #00127<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of Detailed Timing Description:<br />

Offset Size Description (Table 00133)<br />

00h BYTE horizontal frequency in kHz (if 00h, may be text)(see #00135)<br />

01h BYTE vertical frequency in Hz<br />

02h BYTE horizontal active time (pixels) and X resolution<br />

03h BYTE horizontal blanking time (pixels)<br />

04h BYTE horizontal active time 2 / horizontal blanking time 2<br />

05h BYTE vertical active time (lines) and Y resolution<br />

06h BYTE vertical blanking time (lines)<br />

07h BYTE vertical active time 2 / vertical blanking time 2<br />

08h BYTE horizontal sync offset (pixels)<br />

09h BYTE horizontal sync pulsewidth (pixels)<br />

0Ah BYTE vertical sync offset / vertical sync pulsewidth<br />

0Bh BYTE vertical/horizontal sync offset 2 / vert/hor. sync pulsewidth 2<br />

0Ch BYTE horizontal image size (mm)<br />

0Dh BYTE vertical image size (mm)<br />

0Eh BYTE horizontal image size 2 / vertical image size 2<br />

0Fh BYTE horizontal border (pixels)<br />

10h BYTE vertical border (lines)<br />

11h BYTE type of display (see #00134)<br />

SeeAlso: #00127,#00135<br />

Bitfields for EDID detailed display type:<br />

Bit(s) Description (Table 00134)<br />

7 interlaced<br />

6-5 stereo mode<br />

00 normal display (no stereo)<br />

01 stereo, right stereo sync high<br />

10 stereo, left stereo sync high<br />

11 undefined<br />

4-3 sync type<br />

00 sync analog composite<br />

01 sync bipolar analog composite<br />

10 sync digital composite<br />

11 sync digital separate<br />

---sync digital separate---<br />

-160-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

2 vertical sync polarity (0 = negative, 1 = positive)<br />

1 horizontal sync polarity (0 = negative, 1 = positive)<br />

---other sync types---<br />

2 serrate<br />

1 sync location (0 = on green, 1 = on RGB)<br />

------<br />

0 not used???<br />

SeeAlso: #00133<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of EDID Text Identification Strings:<br />

Offset Size Description (Table 00135)<br />

00h 3 BYTEs 00h 00h 00h (to distinguish from detailed timing description)<br />

03h BYTE text identifier<br />

FFh serial number<br />

FEh vendor name<br />

FDh vertical/horizontal frequency range<br />

FCh model name<br />

---frequency range---<br />

04h BYTE 00h ???<br />

05h BYTE minimum vertical refresh frequency in Hz<br />

06h BYTE maximum vertical refresh<br />

07h BYTE minimum horizontal frequency in kHz<br />

08h BYTE maximum horizontal frequency<br />

09h BYTE FFh ???<br />

---other---<br />

04h 14 BYTEs text, may be terminated with either a NUL (00h) or LF (0Ah)<br />

SeeAlso: #00132<br />

(Table 00136)<br />

Values for manufacturer ID:<br />

"ACT" Targa<br />

"ADI" ADI Corporation http://www.adi.com.tw<br />

"AOC" AOC International (USA) Ltd. (see #00137)<br />

"API" Acer America Corp. (see #00138)<br />

"APP" Apple Computer, Inc. (see #00139)<br />

"ART" ArtMedia<br />

"AST" AST Research (see #00140)<br />

"CPL" Compal Electronics, Inc. / ALFA (see #00141)<br />

"CPQ" COMPAQ Computer Corp. (see #00142)<br />

"CTX" CTX - Chuntex Electronic Co. (see #00143)<br />

"DEC" Digital Equipment Corporation (see #00144)<br />

-161-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

"DEL" Dell Computer Corp. (see #00145)<br />

"DPC" Delta Electronics, Inc. (see #00146)<br />

"DWE" Daewoo Telecom Ltd (see #00147)<br />

"ECS" ELITEGROUP Computer Systems (see #00148)<br />

"EIZ" EIZO (see #00149)<br />

"FCM" Funai Electric Company of Taiwan<br />

"GSM" LG Electronics Inc. (GoldStar Technology, Inc.) (see #00158)<br />

"GWY" Gateway 2000<br />

"HEI" Hyundai Electronics Industries Co., Ltd. (see #00150)<br />

"HIT" Hitachi (see #00151)<br />

"HSL" Hansol Electronics (see #00152)<br />

"HTC" Hitachi Ltd. / Nissei Sangyo America Ltd. (see #00153)<br />

"HWP" Hewlett Packard (see #00154)<br />

"IBM" IBM PC Company (see #00155)<br />

"ICL" Fujitsu ICL (see #00156)<br />

"IVM" Idek Iiyama North America, Inc. (see #00157)<br />

"KFC" KFC Computek<br />

"LKM" ADLAS / AZALEA<br />

"LNK" LINK Technologies, Inc.<br />

"LTN" Lite-On<br />

"MAG" MAG InnoVision (see #00159)<br />

"MAX" Maxdata Computer GmbH<br />

"MEI" Panasonic Comm. & Systems Co. (see #00168)<br />

"MEL" Mitsubishi Electronics (see #00160)<br />

"MIR" miro Computer Products AG (see #00161)<br />

"MTC" MITAC<br />

"NAN" NANAO (see #00162)<br />

"NEC" NEC Technologies, Inc. (see #00163)<br />

"NOK" Nokia (see #00164)<br />

"OQI" OPTIQUEST (see #00165)<br />

"PBN" Packard Bell<br />

"PGS" Princeton Graphic Systems (see #00166)<br />

"PHL" Philips Consumer Electronics Co. (see #00167)<br />

"REL" Relisys<br />

"SAM" Samsung (see #00169)<br />

"SDI" Samtron (see #00170)<br />

"SMI" Smile<br />

"SNI" Siemens Nixdorf<br />

"SNY" Sony Corporation<br />

"SPT" Sceptre<br />

"SRC" Shamrock Technology<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-162-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

"STP" Sceptre<br />

"TAT" Tatung Co. of America, Inc. (see #00171)<br />

"TRL" Royal Information Company (see #00172)<br />

"TSB" Toshiba, Inc.<br />

"UNM" Unisys Corporation<br />

"VSC" ViewSonic Corporation (see #00173)<br />

"WTC" Wen Technology<br />

"ZCM" Zenith Data Systems<br />

"___" Targa<br />

SeeAlso: #00127<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00137)<br />

Values for AOC monitor EDID:<br />

A566h AOC SPECTRUM 5Nlr<br />

A782h AOC SPECTRUM 7Nlr<br />

D350h AOC SPECTRUM 4V, 4VA, 4Vlr, 4VlrA<br />

D566h AOC SPECTRUM 5Vlr, 5VlrA<br />

E570h AOC SPECTRUM 5Glr<br />

E750h AOC SPECTRUM 7DlrA<br />

SeeAlso: #00136,#00138<br />

(Table 00138)<br />

Values for Acer monitor EDID:<br />

0037h AcerView 55<br />

424Ch AcerView 76ie<br />

440Bh AcerView 11D<br />

4421h AcerView 33D<br />

4522h AcerView 7134e<br />

4536h AcerView 7154e<br />

4538h AcerView 7156e<br />

454Ch AcerView 7176ie<br />

454Eh AcerView 7178ie<br />

4938h AcerView 7156i<br />

494Ch AcerView 76i<br />

494Eh AcerView 78i<br />

4962h AcerView 98i<br />

4C21h AcerView 33DL<br />

4C22h AcerView 34TL<br />

4C37h AcerView 55L<br />

4C38h AcerView 56L<br />

4E4Ch AcerView 76N<br />

-163-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

5321h AcerView 7133s<br />

5322h AcerView 7134s<br />

5336h AcerView 7154s<br />

5338h AcerView 7156s, 7156is<br />

534Ch AcerView 7176is<br />

5422h AcerView 34T<br />

SeeAlso: #00136,#00137,#00140<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00139)<br />

Values for Apple Computer monitor EDID:<br />

0352h AppleVision 850<br />

SeeAlso: #00136<br />

(Table 00140)<br />

Values for AST monitor EDID:<br />

8001h ASTVision 4V<br />

8002h ASTVision 4I<br />

8003h ASTVision 4N<br />

8004h ASTVision 4L<br />

8005h ASTVision 5L<br />

8006h ASTVision 7L<br />

8007h ASTVision 7H<br />

8008h ASTVision 20H<br />

8009h AST Sabre<br />

800Ah ASTVision 5V<br />

SeeAlso: #00136,#00127,#00138,#00141<br />

(Table 00141)<br />

Values for ALFA monitor EDID:<br />

096Bh ALFA TH-450<br />

SeeAlso: #00136,#00140,#00142<br />

(Table 00142)<br />

Values for Compaq monitor EDID:<br />

0011h COMPAQ 1024<br />

0012h COMPAQ 1024<br />

0013h COMPAQ 1024<br />

0014h COMPAQ 1024<br />

0015h COMPAQ 1024<br />

0016h COMPAQ 1024<br />

0017h COMPAQ PRB<br />

-164-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0018h COMPAQ PRB<br />

0019h COMPAQ PRB<br />

001Ah COMPAQ PRB<br />

0020h COMPAQ PRB<br />

0021h COMPAQ PRB<br />

0022h COMPAQ 151FS<br />

0023h COMPAQ 151FS<br />

0024h COMPAQ 151FS<br />

0025h COMPAQ 151FS<br />

0026h COMPAQ 151FS<br />

0027h COMPAQ 151FS<br />

0028h COMPAQ 151FS<br />

0029h COMPAQ PRB<br />

002Ah COMPAQ PRB<br />

002Bh COMPAQ PRB<br />

002Ch COMPAQ PRB<br />

002Dh COMPAQ 171FS<br />

002Eh COMPAQ 171FS<br />

002Fh COMPAQ 171FS<br />

0030h COMPAQ 171FS<br />

0031h COMPAQ 171FS<br />

0032h COMPAQ 171FS<br />

0033h COMPAQ 171FS<br />

0040h COMPAQ QVision 200<br />

0041h COMPAQ QVision 200<br />

0042h COMPAQ QVision 200<br />

0043h COMPAQ QVision 200<br />

0044h COMPAQ QVision 200<br />

0045h COMPAQ QVision 200<br />

0046h COMPAQ QVision 200<br />

0047h COMPAQ QVision 200<br />

0048h COMPAQ QVision 200<br />

0049h COMPAQ QVision 200<br />

0100h COMPAQ 1024<br />

0146h COMPAQ 1024<br />

0147h COMPAQ 1024<br />

0346h COMPAQ 151FS<br />

0347h COMPAQ 151FS<br />

0348h COMPAQ 151FS<br />

0349h COMPAQ 151FS<br />

034Ah COMPAQ 151FS<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-165-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

034Bh COMPAQ 151FS<br />

0546h COMPAQ 171FS<br />

0547h COMPAQ 171FS<br />

0548h COMPAQ 171FS<br />

0549h COMPAQ 171FS<br />

0746h COMPAQ PRB<br />

0747h COMPAQ PRB<br />

0846h COMPAQ PRA<br />

0847h COMPAQ PRA<br />

0848h COMPAQ PRA<br />

0849h COMPAQ PRA<br />

084Ah COMPAQ PRA<br />

084Bh COMPAQ PRA<br />

084Ch COMPAQ PRA<br />

084Dh COMPAQ PRA<br />

0946h COMPAQ PRB<br />

0947h COMPAQ PRB<br />

0948h COMPAQ PRB<br />

0949h COMPAQ PRB<br />

0A46h COMPAQ PRA<br />

0A47h COMPAQ PRA<br />

0A48h COMPAQ PRA<br />

0A49h COMPAQ PRA<br />

0A4Ah COMPAQ PRA<br />

0A4Bh COMPAQ PRA<br />

0A4Ch COMPAQ PRA<br />

0A4Dh COMPAQ PRA<br />

0D46h COMPAQ 140<br />

0D47h COMPAQ 140<br />

0D48h COMPAQ 140<br />

0D49h COMPAQ 140<br />

0D4Ah COMPAQ 140<br />

0D4Bh COMPAQ 140<br />

0D4Ch COMPAQ 140<br />

0D4Dh COMPAQ 140<br />

0F46h COMPAQ 150<br />

0F47h COMPAQ 150<br />

0F48h COMPAQ 150<br />

0F49h COMPAQ 150<br />

0F4Ah COMPAQ 150<br />

0F4Bh COMPAQ 150<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-166-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0F4Ch COMPAQ 150<br />

0F4Dh COMPAQ 150<br />

SeeAlso: #00136,#00141,#00143<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00143)<br />

Values for "CTX" monitor EDID:<br />

1451h CTX 1451<br />

1551h CTX 1551<br />

1562h CTX 1562<br />

1565h CTX 1565<br />

1569h CTX 1569S 15-inch<br />

1765h CTX 1765<br />

1785h CTX 1785 XE<br />

2085h CTX 2085<br />

2185h CTX 2185<br />

SeeAlso: #00136,#00142,#00144<br />

(Table 00144)<br />

Values for Digital Equipment Corporation monitor EDID:<br />

06FAh Digital 21" Color (FR-PCXAV-WZ)<br />

073Ah Digital 17" Color (FR-PCXAV-YZ)<br />

BA08h Digital 15" Color Monitor (FR-PCXBV-E*)<br />

DA08h Digital 17" Color Monitor (FR-PCXBV-F*)<br />

SeeAlso: #00136,#00143,#00145<br />

(Table 00145)<br />

Values for Dell monitor EDID:<br />

139Ah Dell Ultrascan 14XE<br />

139Bh Dell Ultrascan 14XE<br />

139Ch Dell Ultrascan 14XE<br />

139Dh Dell Ultrascan 14XE<br />

2210h Dell Ultrascan V17X<br />

2211h Dell Ultrascan V17X<br />

2212h Dell Ultrascan V17X<br />

2213h Dell Ultrascan V17X<br />

2214h Dell Ultrascan 21TE<br />

2215h Dell Ultrascan 21TE<br />

2216h Dell Ultrascan 21TE<br />

2217h Dell Ultrascan 21TE<br />

3024h Dell VS17X<br />

3025h Dell VS17X<br />

-167-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

3026h Dell VS17X<br />

3027h Dell VS17X<br />

4273h Dell VS15X<br />

SeeAlso: #00136,#00144,#00146<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00146)<br />

Values for Delta Electronics monitor EDID:<br />

0456h Delta DA-456<br />

1565h Delta DA-1565<br />

1765h Delta DA-1765<br />

SeeAlso: #00136,#00145,#00147<br />

(Table 00147)<br />

Values for Daewoo monitor EDID:<br />

1423h Daewoo CMC-1423B1<br />

1427h Daewoo CMC-1427X1<br />

1502h Daewoo CMC-1502B1<br />

1505h Daewoo CMC-1505X<br />

1507h Daewoo CMC-1507X1<br />

1703h Daewoo CMC-1703B<br />

5133h Daewoo CMC-1511B<br />

7044h Daewoo CMC-1704C<br />

SeeAlso: #00136,#00146,#00148<br />

(Table 00148)<br />

Values for ELITEGROUP Computer Systems monitor EDID:<br />

0001h ECS VERTOS 1401<br />

0002h ECS VERTOS 1501<br />

0003h ECS VERTOS 1502<br />

0004h ECS VERTOS 1503<br />

0005h ECS VERTOS 1700<br />

0006h ECS VERTOS 1701<br />

0007h ECS VERTOS 1700<br />

0008h ECS VERTOS 2101<br />

0009h ECS VERTOS 2102<br />

SeeAlso: #00136,#00147,#00149<br />

(Table 00149)<br />

Values for EIZO monitor EDID:<br />

0200h EIZO FlexScan F351<br />

0201h EIZO FlexScan F553<br />

-168-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0202h EIZO FlexScan F563<br />

0203h EIZO FlexScan F764<br />

0204h EIZO FlexScan F784<br />

0206h EIZO FlexScan 6600<br />

0300h EIZO FlexScan 6500<br />

0302h EIZO 9060S<br />

0303h EIZO 9065S<br />

0305h EIZO FlexScan T563<br />

0306h EIZO 9070S<br />

0307h EIZO 9080i<br />

0308h EIZO 9400i<br />

0309h EIZO 9500<br />

030Ah EIZO FlexScan F340iW<br />

030Ch EIZO FlexScan F552<br />

030Dh EIZO FlexScan F560iW<br />

030Fh EIZO FlexScan F760iW<br />

0310h EIZO FlexScan F780iW<br />

0311h EIZO FlexScan T560i<br />

0312h EIZO FlexScan T660i<br />

0313h EIZO FlexScan T562<br />

0314h EIZO FlexScan T662<br />

038Ch EIZO FlexScan F550iW<br />

SeeAlso: #00136,#00148,#00150<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00150)<br />

Values for Hyundai monitor EDID:<br />

0B42h Hyundai Deluxscan 21<br />

12F0h Hyundai Deluxscan 14S<br />

16D8h Hyundai Deluxscan 15B<br />

16E8h Hyundai Deluxscan 15G<br />

16EEh Hyundai Delucscan 15G+<br />

1E02h Hyundai Deluxscan 17 Pro<br />

1EB8h Hyundai Deluxscan 17B<br />

1EBEh Hyundai Deluxscan 17B+<br />

5864h Hyundai DeluxScan 15 Pro<br />

B81Eh Hyundai DeluxScan 17<br />

SeeAlso: #00136,#00149,#00151<br />

(Table 00151)<br />

Values for Hitachi monitor EDID:<br />

1717h Hitachi Accuvue GX17L<br />

-169-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

1727h Hitachi HM1764<br />

1827h Hitachi HM1782<br />

2147h Hitachi HM4721<br />

2149h Hitachi HM4921<br />

4020h Hitachi HM4020<br />

4021h Hitachi HM4021<br />

4711h Hitachi Accuvue UX4721<br />

4810h Hitachi Accuvue GX20<br />

4811h Hitachi Accuvue GX21<br />

4820h Hitachi HM4820<br />

4821h Hitachi HM4821<br />

4830h Hitachi Accuvue GX20H<br />

4911h Hitachi Accuvue UX4921<br />

6421h Hitachi HM6421<br />

6811h Hitachi Accuvue UX6821<br />

6821h Hitachi HM6821<br />

SeeAlso: #00136,#00150,#00152<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00152)<br />

Values for Hansol Electronics monitor EDID:<br />

0579 Hansol Electronics Mazellan14px<br />

057A Hansol Electronics Mazellan400A<br />

05DD Hansol Electronics Mazellan15ax<br />

A605 Hansol Electronics Mazellan17px<br />

SeeAlso: #00136,#00151,#00153<br />

(Table 00153)<br />

Values for Hitachi, Ltd. monitor EDID:<br />

AB6Fh CM-1711M<br />

ABC2h CM-2112M<br />

ABC7h CM-2111M<br />

ABCCh CM-2110M<br />

ABE0h Hitachi, Ltd CM802<br />

ABE2h Hitachi, Ltd CM801<br />

ABE3h Hitachi, Ltd CM800<br />

ABEAh Hitachi, Ltd CM803<br />

ABF4h Hitachi, Ltd CM701<br />

AFC8h Hitachi, Ltd CM500<br />

AFD2h Hitachi, Ltd CM600<br />

AFD7h Hitachi, Ltd CM611<br />

SeeAlso: #00136,#00152,#00154<br />

-170-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

(Table 00154)<br />

Values for Hewlett-Packard monitor EDID:<br />

0AF0h HP D2800A Ultra VGA 1600 21"<br />

0AF6h HP D2806A Ergo Ultra VGA 15"<br />

0AF8h HP D2808 1024 Low Emission<br />

0AFFh HP D2815A 1024 Low Emission 14"<br />

0F11h HP D3857A Multi Media 15"<br />

0F12h HP D3858A Multi Media 14"<br />

SeeAlso: #00136,#00151,#00155<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00155)<br />

Values for IBM monitor EDID:<br />

198Eh IBM G41<br />

198Fh IBM G50<br />

1990h IBM G70<br />

1991h IBM G200<br />

1999h IBM P50<br />

199Ah IBM P70<br />

199Bh IBM P200<br />

1BB7h IBM 7095<br />

1BB9h IBM 7097<br />

2112h IBM 2112<br />

2113h IBM 2113<br />

2114h IBM 2114<br />

2115h IBM 2115<br />

2117h IBM 2117<br />

2215h IBM 2215<br />

2238h IBM 2238<br />

2248h IBM 2248<br />

2264h IBM 2264<br />

2535h IBM 9525-0X1<br />

26ACh IBM Aptiva 9900<br />

27ADh IBM Aptiva 9901<br />

6312h IBM 6312<br />

6314h IBM 6314<br />

6315h IBM 6315<br />

6317h IBM 6317<br />

6319h IBM 6319<br />

6321h IBM 6321<br />

6322h IBM 6322<br />

-171-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

6324h IBM 6324<br />

6325h IBM 6325<br />

6327h IBM 6327<br />

8504h IBM 8504<br />

8511h IBM 8511<br />

8512h IBM 8512<br />

8513h IBM 8513<br />

8514h IBM 8514<br />

8515h IBM 8515<br />

8517h IBM 8517<br />

8518h IBM 8518<br />

9504h IBM 9504<br />

9515h IBM 9515<br />

9517h IBM 9517<br />

9518h IBM 9518<br />

9521h IBM 9521<br />

9524h IBM 9524<br />

9525h IBM 9525<br />

9527h IBM 9527<br />

SeeAlso: #00136,#00154,#00156<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00156)<br />

Values for Fujitsu ICL monitor EDID:<br />

0100h Fujitsu ICL ErgoPro 211v<br />

0200h Fujitsu ICL ErgoPro 171p<br />

0400h Fujitsu ICL ErgoPro 171v<br />

0700h Fujitsu ICL ErgoPro 151p<br />

0800h Fujitsu ICL ErgoPro 151p AutoBrite<br />

0A00h Fujitsu ICL ErgoPro 151v<br />

0B00h Fujitsu ICL ErgoPro 141v<br />

0D00h Fujitsu ICL ErgoPro 141p<br />

0F00h Fujitsu ICL ErgoPro 152v<br />

1400h Fujitsu ICL ErgoPro 142v<br />

1600h Fujitsu ICL ErgoPro e153<br />

1900h Fujitsu ICL ErgoPro x173<br />

1A00h Fujitsu ICL ErgoPro x173a<br />

1C00h Fujitsu ICL ErgoPro x152<br />

1D00h Fujitsu ICL ErgoPro e173<br />

2200h FUJITSU ErgoPro e154<br />

2400h FUJITSU ErgoPro x174<br />

SeeAlso: #00136,#00155,#00157<br />

-172-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

(Table 00157)<br />

Values for Idek Iiyama North America monitor EDID:<br />

1700h Iiyama Vision Master MF-8617<br />

SeeAlso: #00136,#00156,#00158<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00158)<br />

Values for LG Electronics monitor EDID:<br />

36B4h LG StudioWorks 44m<br />

36B9h LG StudioWorks 44i<br />

3AA0h LG 1505s<br />

3AA2h LG StudioWorks 56m<br />

3AAFh LG StudioWorks 56T 15-inch<br />

3AB0h LG StudioWorks 5D<br />

3AB6h LG StudioWorks 5D<br />

426Ch LG StudioWorks 78i<br />

426Dh LG StudioWorks 78T<br />

426Eh LG StudioWorks 76i<br />

4273h LG StudioWorks 76m<br />

4274h LG StudioWorks 78m<br />

4277h LG StudioWorks 74m<br />

4278h LG StudioWorks 74i<br />

427Eh LG StudioWorks 7D<br />

427Fh LG StudioWorks 78D<br />

4280h LG StudioWorks 78DT<br />

4281h LG StudioWorks 7DT<br />

4284h LG StudioWorks 76T<br />

42CFh LG 1725s<br />

4E21h LG StudioWorks 20i<br />

SeeAlso: #00136,#00157,#00159<br />

(Table 00159)<br />

Values for MAG monitor EDID:<br />

5620h DX1595<br />

5624h DX15T<br />

5626h DX1795<br />

SeeAlso: #00136,#00158,#00160<br />

(Table 00160)<br />

Values for Mitsubishi monitor EDID:<br />

0040h Mitsubishi Diamond Pro 21TX (THN-9105)<br />

-173-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

2040h Mitsubishi Diamond Scan 20H (FR-8905)<br />

2040h Mitsubishi Diamond Pro 20X (FR-8905B)<br />

6140h Mitsubishi Diamond Scan 17HX (FFF8705)<br />

8040h Mitsubishi Diamond Pro 15H (SD-57xxC)<br />

4040h Mitsubishi Diamond Pro 17TX (TFG-8705)<br />

408Fh Mitsubishi Diamond Scan 15VX (SD58xx)<br />

40C0h Mitsubishi Diamond Pro 87TXM (TFM8705)<br />

SeeAlso: #00136,#00159,#00161<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00161)<br />

Values for Miro monitor EDID:<br />

0721h PROOFSCREEN miroC21107<br />

6815h miroD1568<br />

6817h PROOFSCREEN miroC1768<br />

6917h miroD1769<br />

8217h PROOFSCREEN miroC1782<br />

8520h PROOFSCREEN miroC2085 E<br />

8521h PROOFSCREEN miroC2185<br />

9321h PROOFSCREEN miroC2193<br />

SeeAlso: #00136,#00160,#00162<br />

(Table 00162)<br />

Values for Nanao monitor EDID:<br />

0000h NANAO USA FlexScan T2-20<br />

0400h NANAO USA F2-15<br />

0401h NANAO USA F2-17<br />

0402h NANAO USA F2-17EX<br />

0403h NANAO USA F2-21<br />

0404h NANAO USA FX2-21<br />

0405h NANAO USA FlexScan T2-17TS<br />

0406h NANAO FlexScan 6600<br />

0502h NANAO 9060S<br />

0503h NANAO 9065S<br />

0506h NANAO 9070U<br />

0507h NANAO 9080i<br />

0508h NANAO 9400i<br />

0509h NANAO 9500<br />

050Ah NANAO FlexScan F340iW<br />

050Bh NANAO FlexScan F550i<br />

050Ch NANAO FlexScan F550iW<br />

050Dh NANAO FlexScan F560iW<br />

-174-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

050Eh NANAO FlexScan F750i<br />

050Fh NANAO FlexScan F760iW<br />

0510h NANAO FlexScan F780iW<br />

0511h NANAO FlexScan T560i<br />

0512h NANAO FlexScan T660i<br />

0513h NANAO USA FlexScan T2-17<br />

0514h NANAO USA FlexScan T2-20<br />

0580h NANAO USA FlexScan 6300<br />

0800h NANAO FlexScan 33F<br />

0802h NANAO FlexScan 88F<br />

0805h NANAO FlexScan 54T<br />

0882h NANAO FlexScan 52F<br />

0900h NANAO FlexScan 6500<br />

0902h NANAO 9060S<br />

0906h NANAO 9070U<br />

0907h NANAO 9080i<br />

090Ah NANAO FlexScan F347<br />

090Bh NANAO FlexScan F550i<br />

090Ch NANAO FlexScan F557<br />

090Fh NANAO FlexScan 77F<br />

0910h NANAO FlexScan F780iJ<br />

0911h NANAO FlexScan T560iJ<br />

0912h NANAO FlexScan T660iJ<br />

0913h NANAO FlexScan 56T<br />

0914h NANAO FlexScan 68T<br />

098Ah NANAO FlexScan F347II<br />

098Ch NANAO FlexScan 55F<br />

098Fh NANAO FlexScan 76F<br />

0991h NANAO FlexScan T567<br />

0993h NANAO FlexScan 53T<br />

SeeAlso: #00136,#00161,#00163<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00163)<br />

Values for NEC monitor EDID:<br />

37FAh NEC MultiSync XV14<br />

37FBh NEC MultiSync XV14<br />

3A66h NEC MultiSync C400<br />

3C00h NEC MultiSync XE15<br />

3C0Ah NEC MultiSync XP15<br />

3C14h NEC MultiSync XV15<br />

3C1Eh NEC MultiSync XE15<br />

-175-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

3D5Eh NEC MultiSync XV15+<br />

3D68h NEC MultiSync M500<br />

3E4Eh NEC MultiSync C500<br />

43A8h NEC MultiSync XE17<br />

43B2h NEC MultiSync XE17<br />

43BCh NEC MultiSync XV17<br />

4416h NEC MultiSync XP17<br />

533Eh NEC MultiSync XE21<br />

53B6h NEC MultiSync XP21<br />

SeeAlso: #00136,#00162,#00164<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00164)<br />

Values for Nokia monitor EDID:<br />

008Dh NOKIA 449M<br />

0098h NOKIA 449X<br />

00A3h NOKIA 447KC<br />

00A9h NOKIA 447XI<br />

00ABh NOKIA 447KA<br />

00ADh NOKIA 447M<br />

00B7h NOKIA 447W<br />

00B8h NOKIA 447X<br />

00BBh NOKIA 447XAV<br />

00BCh NOKIA 447K<br />

00D2h NOKIA 445R<br />

SeeAlso: #00136,#00163,#00165<br />

(Table 00165)<br />

Values for OptiQuest monitor EDID:<br />

3138h OPTIQUEST VA656<br />

3141h OPTIQUEST 14ES<br />

3232h OPTIQUEST 1562A-2<br />

3233h OPTIQUEST 1769DC<br />

3234h OPTIQUEST 1000S-2<br />

3332h OPTIQUEST V655<br />

3333h OPTIQUEST V775<br />

3432h OPTIQUEST V650<br />

3832h OPTIQUEST V665<br />

4637h OPTIQUEST 1769DC<br />

SeeAlso: #00136,#00164,#00166<br />

(Table 00166)<br />

-176-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Values for Princeton Graphics monitor EDID:<br />

003Bh Princeton EO15<br />

003Dh Princeton EO17<br />

SeeAlso: #00136,#00165,#00167<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00167)<br />

Values for Philips monitor EDID:<br />

0200h Philips CM0200 (15C)<br />

0500h Philips CM0500 (20C)<br />

0700h Philips CM0700 (20T)<br />

0800h Philips CM0800 (15B)<br />

1200h Philips CM1200 (15A)<br />

1800h Philips CM1800 (15A)<br />

2000h Philips CM0200 (14B)<br />

2600h Philips 17TCM26<br />

2800h Philips 17BCM28<br />

3800h Philips 17ACM38<br />

5600h Philips CM5600 (20B)<br />

700Bh Philips CM0700 (21B)<br />

8000h Philips CM0800 (14A)<br />

SeeAlso: #00136,#00166,#00168<br />

(Table 00168)<br />

Values for Panasonic monitor EDID:<br />

1604h Panasonic TX-D2151W-ES<br />

1610h Panasonic TX-D2151NM<br />

SeeAlso: #00136,#00167,#00169<br />

(Table 00169)<br />

Values for Samsung monitor EDID:<br />

0000h Samsung SyncMaster 3Ne<br />

0100h Samsung SyncMaster 4S<br />

1530h Samsung 15GLsi<br />

4610h Samsung SyncMaster 21GLs<br />

4690h Samsung SyncMaster 20GLsi<br />

4D50h Samsung SyncMaster 15GLe<br />

4D51h Samsung SyncMaster 15GLi<br />

4D52h Samsung SyncMaster 15M<br />

4D70h Samsung SyncMaster 17GLi<br />

4D71h Samsung SyncMaster 17GLsi<br />

4D72h Samsung SyncMaster 6Ne<br />

-177-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

4D73h Samsung 17GLi<br />

4D74h Samsung 17GLsi<br />

5450h Samsung SyncMaster 15Me<br />

6D20h Samsung SyncMaster 15GLe<br />

SeeAlso: #00136,#00168,#00170<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00170)<br />

Values for Samtron monitor EDID:<br />

1428h Samtron 428PT/PTL<br />

1528h Samtron SC-528TXL<br />

1529h Samtron SC-528UXL<br />

1530h Samtron SC-528MXLJ<br />

4690h Samtron SC-208DXL+<br />

4D70h Samtron SC-728FXL<br />

4D71h Samtron SC-726GXL<br />

5451h Samtron SC-528MDL<br />

SeeAlso: #00136,#00169,#00171<br />

(Table 00171)<br />

Values for Tatung monitor EDID:<br />

1F65h Intelliscan TM651x series 15"<br />

1F67h Intelliscan TM671x series 17"<br />

2F44h Intelliscan TM442x series 14"<br />

2F45h Intelliscan TM452x series 15"<br />

434Dh Tatung CM-17MC<br />

4855h Tatung CM-14UH<br />

SeeAlso: #00136,#00170,#00172<br />

(Table 00172)<br />

Values for Royal Information Company monitor EDID:<br />

061Ch TRL/RIC DL-1564<br />

0622h TRL/RIC DH-1570<br />

SeeAlso: #00136,#00171,#00173<br />

(Table 00173)<br />

Values for ViewSonic monitor EDID:<br />

0C00h ViewSonic 17GS<br />

0C0Fh ViewSonic 17PS<br />

0C1Fh ViewSonic 17GA<br />

1600h ViewSonic 21PS-2<br />

2601h ViewSonic 15GS<br />

-178-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

2600h ViewSonic 15GS-2<br />

3141h ViewSonic 14ES<br />

3142h ViewSonic 14ES<br />

3143h ViewSonic 14ES<br />

3145h ViewSonic 15GS-3<br />

3252h ViewSonic 21PS-2<br />

3253h ViewSonic 21PS-2<br />

334Bh ViewSonic 17GS-2<br />

334Ch ViewSonic 17GS-2<br />

3351h ViewSonic PT810<br />

344Bh ViewSonic 17PS-2<br />

344Ch ViewSonic 17PS-2<br />

3451h ViewSonic PT810-2<br />

354Dh ViewSonic GT800<br />

354Eh ViewSonic GT800<br />

3550h ViewSonic GT800<br />

3644h ViewSonic 15GA<br />

3646h ViewSonic 15GA<br />

3648h ViewSonic 15GA<br />

364Ah ViewSonic PT770<br />

364Bh ViewSonic PT770<br />

364Ch ViewSonic PT770<br />

3744h ViewSonic 15G-2<br />

3746h ViewSonic 15G-2<br />

3748h ViewSonic 15G-2<br />

374Bh ViewSonic 17GA<br />

374Ch ViewSonic 17GA<br />

3844h ViewSonic 15ES-2<br />

3846h ViewSonic 15ES-2<br />

3848h ViewSonic 15ES-2<br />

384Ah ViewSonic 17EA<br />

384Bh ViewSonic 17EA<br />

384Ch ViewSonic 17EA<br />

3944h ViewSonic 15GS-2<br />

3946h ViewSonic 15GS-2<br />

3948h ViewSonic 15GS-2<br />

394Ah ViewSonic 17GS-2<br />

394Bh ViewSonic 17GS-2<br />

394Ch ViewSonic 17GS-2<br />

424Ah ViewSonic GT770<br />

424Bh ViewSonic GT770<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-179-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

424Ch ViewSonic GT770<br />

434Ah ViewSonic 17PS-2<br />

434Bh ViewSonic 17PS-2<br />

434Ch ViewSonic 17PS-2<br />

4439h ViewSonic 15GS-2<br />

444Ah ViewSonic 17GA-2<br />

4637h ViewSonic 1769DC<br />

4745h ViewSonic G653 (VCDTS21444-2E)<br />

SeeAlso: #00136,#00172<br />

--------V-104F15BL02-------------------------<br />

INT 10 - VESA VBE/DC (Display Data Channel) - READ VDIF<br />

AX = 4F15h<br />

BL = 02h<br />

???<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

???<br />

01h failed<br />

SeeAlso: AX=4F15h/BL=00h,AX=4F15h/BL=01h<br />

--------V-104F16-----------------------------<br />

INT 10 - VESA VBE/GC (Graphics System Configuration) - API<br />

AX = 4F16h<br />

BL = function<br />

00h installation check / get capabilities<br />

other registers vary by function<br />

Return: varies by function<br />

--------V-104F17-----------------------------<br />

INT 10 - VESA VBE/AF (Accelerator Functions) - API<br />

AX = 4F17h<br />

BL = function<br />

00h installation check / get capabilities<br />

other registers vary by function<br />

Return: AL = 4Fh if function supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

02h hardware does not support function<br />

03h function not available in current video mode<br />

else reserved for future error codes<br />

other vary by function<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-180-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Notes: the accelerator function code should be given a 32-bit protected<br />

mode stack which has at least 1024 bytes available for use by the<br />

VBE/AF code<br />

when called, the I/O permission bitmap must allow access to any<br />

ports which VBE/AF may require for operation<br />

SeeAlso: AX=4F0Bh<br />

--------V-104F4D-----------------------------<br />

INT 10 - VESA - VIDEO CURSOR INTERFACE REQUEST<br />

AX = 4F4Dh<br />

BX = number of bytes available for VCI use<br />

DS:0000h -> buffer for VCI<br />

ES:DI -> VCI driver callback function<br />

Return: AL = 4Fh if supported<br />

AH = status<br />

00h successful<br />

BX = number of bytes used by VCI<br />

ES:DI -> VCI request handler<br />

01h failed<br />

Desc: allow the VESA BIOS Extensions to cooperate with a pointing-device<br />

(typically mouse) driver<br />

SeeAlso: AX=4F12h<br />

--------V-104F70-----------------------------<br />

INT 10 - Avance Logic - GET ADAPTER INFORMATION<br />

AX = 4F70h<br />

Return: AX = 004Fh if successful<br />

BL = board information (see #00174)<br />

BH = board type???<br />

00h on ALG2101<br />

FFh otherwise<br />

SeeAlso: AX=4F00h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Avance Logic board information:<br />

Bit(s) Description (Table 00174)<br />

0-1 video RAM size<br />

00 256K<br />

01 512K<br />

10 1M<br />

11 2M<br />

2 ???<br />

3 slot size???<br />

=0 8-bit slot<br />

-181-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

=1 16-bit slot<br />

4 unused<br />

5 set on ALG2228/AL2301<br />

6-7 unused<br />

--------V-104FDD-----------------------------<br />

INT 10 - ATI M64VBE.COM - GET RESIDENT SEGMENT<br />

AX = 4FDDh<br />

Return: AX = CS of resident code<br />

Program: M64VBE is a VESA VBE 2.0 driver TSR for ATI's Mach64 video chip<br />

SeeAlso: AX=4FFFh/BX=364Dh"M64VBE",INT 60"M64VBE"<br />

--------V-104FFF-----------------------------<br />

INT 10 - VESA SuperVGA BIOS - Everex - TURN VESA ON/OFF<br />

AX = 4FFFh<br />

DL = new state (00h off, 01h on)<br />

Return: AX = 0000h if successful<br />

--------V-104FFF-----------------------------<br />

INT 10 - Diamond Stealth 24 - SET/RESET DUAL DISPLAY MODE<br />

AX = 4FFFh<br />

BX = dual display mode<br />

00h reset<br />

01h set dual display, 32KB VGA test<br />

02h set dual display, 64KB VGA test<br />

Return: AX = 4F00h if successful<br />

BX = number of scanlines off screen for test mode<br />

--------V-104FFFBX364D-----------------------<br />

INT 10 - ATI M64VBE.COM - UNINSTALL<br />

AX = 4FFFh<br />

BX = 364Dh ('6M')<br />

CX = 5634h ('V4')<br />

Return: AX,DX,DS,ES destroyed<br />

Program: M64VBE is a VESA VBE 2.0 driver TSR for ATI's Mach64 video chip<br />

SeeAlso: AX=4FDDh"M64VBE",INT 60"M64VBE"<br />

--------U-1050-------------------------------<br />

INT 10 - SCROLOCK.COM - INSTALLATION CHECK<br />

AH = 50h<br />

Return: BX = 1954h if installed<br />

AL = 00h if inactive, nonzero if active<br />

Program: SCROLOCK is a utility supplied with System Enhancement Associates'<br />

ARC archiver<br />

SeeAlso: AH=51h<br />

--------J-105000-----------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-182-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - VIDEO - AX PC - SET SCREEN COUNTRY CODE<br />

AX = 5000h<br />

BX = country code<br />

0001h USA (English), 0051h Japan<br />

Return: AL = status<br />

00h successful<br />

01h bad country code<br />

02h other error<br />

Note: This function is called with BX=0051h by Japanese versions of<br />

MS-DOS/PC DOS/DR DOS IO.SYS/IBMBIO.COM at initialization time.<br />

SeeAlso: AX=5001h,INT 16/AX=5000h<br />

--------J-105001-----------------------------<br />

INT 10 - VIDEO - AX PC - GET SCREEN COUNTRY CODE<br />

AX = 5001h<br />

Return: AL = status<br />

00h successful<br />

BX = country code<br />

02h error<br />

SeeAlso: AH=00h,AX=5000h,INT 16/AX=5001h,INT 21/AH=38h<br />

--------V-105049-----------------------------<br />

INT 10 - VIDEO - SCREENR v1.55+ - API<br />

AX = 5049h ('PI')<br />

BX = function<br />

0000h installation check<br />

0001h lock mode<br />

0002h unlock mode<br />

0003h lock palette<br />

0004h unlock palette<br />

Return: AX = 0000h if installed<br />

BX = TSR version (BH=major,BL=minor)<br />

CL = mode locking status<br />

00h mode not locked<br />

01h mode locked: INT 10/AH=00h disabled<br />

CH = palette locking status<br />

00h palette not locked<br />

01h palette locked, the following functions are disabled:<br />

AX=1000h, AX=1001h, AX=1002h, AX=1010h, AX=1012h<br />

Program: SCREENR is a TSR supplied with Patrick Ibbetson's SCREEN display<br />

utility.<br />

<strong>Index</strong>: installation check;SCREENR<br />

--------U-1051-------------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-183-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - SCROLOCK.COM - ENABLE/DISABLE<br />

AH = 51h<br />

AL = state<br />

00h disable<br />

nonzero enable<br />

Return: nothing<br />

Program: SCROLOCK is a utility supplied with System Enhancement Associates'<br />

ARC file archiver<br />

SeeAlso: AH=50h"SCROLOCK"<br />

--------J-105100-----------------------------<br />

INT 10 - VIDEO - AX PC - REGISTER EXTERNAL CHARACTER<br />

AX = 5100h<br />

BH = character width in bits (10h)<br />

BL = character height (10h)<br />

DX = character code (DH = F0h-F3h, DL=40h-7Eh,80h-FCh)<br />

ES:BP -> character bitmap<br />

Return: AL = status (00h successful, 01h failed)<br />

SeeAlso: AX=5101h,INT 1F"SYSTEM DATA"<br />

--------J-105101-----------------------------<br />

INT 10 - VIDEO - AX PC - READ CHARACTER<br />

AX = 5101h<br />

BH = character width in bits<br />

BL = character height<br />

DX = character code (DH = 00h if 8-bit character)<br />

ES:BP -> buffer for character bitmap<br />

Return: AL = status (00h successful, 01h failed)<br />

SeeAlso: AH=09h,AX=5100h<br />

--------J-105200-----------------------------<br />

INT 10 - VIDEO - AX PC - SET VIRTUAL TEXT RAM BUFFER<br />

AX = 5200h<br />

BX = segment of buffer<br />

Return: nothing<br />

SeeAlso: AX=5201h<br />

--------J-105201-----------------------------<br />

INT 10 - VIDEO - AX PC - GET VIRTUAL TEXT RAM BUFFER<br />

AX = 5201h<br />

Return: BX = segment of buffer or 0000h if failed<br />

SeeAlso: AX=8300h,AH=FEh<br />

----------1053-------------------------------<br />

INT 10 - Show Partner F/X v3.6 - START PRESENTATION<br />

AH = 53h<br />

Saturday, January 08, 2011 11:31 AM<br />

-184-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

DS:DX -> ASCIZ name of presentation file (no path, extension forced to<br />

.PR2)<br />

Return: ???<br />

SeeAlso: AH=55h<br />

----------1055-------------------------------<br />

INT 10 - Show Partner F/X v3.6 - UNINSTALL<br />

AH = 55h<br />

Return: FXSHOW.EXE removed from memory<br />

SeeAlso: AH=53h<br />

--------V-105555-----------------------------<br />

INT 10 - VIDEO - ATI EGA/VGA Wonder Super Switch - INSTALLATION CHECK<br />

AX = 5555h<br />

Return: AX = AAAAh if installed<br />

BX:CX -> ??? routine in SMS.COM resident portion<br />

-> data area (see #00175) in VCONFIG<br />

Program: Super Switch (SMS.COM) is a video mode switch program supplied with<br />

ATI EGA Wonder. It also maps video mode 08h to 27h or 23h.<br />

SeeAlso: INT 10/AH=00h,INT 14/AX=AA01h,INT 2F/AX=6400h<br />

<strong>Index</strong>: screen saver;ATI Wonder SMS.COM<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of ATI Super Switch data area:<br />

Offset Size Description (Table 00175)<br />

00h DWORD original INT 09 vector<br />

04h DWORD original INT 10 vector<br />

08h DWORD original INT 1C vector<br />

0Ch WORD screen saver state, 0=off, 1=on<br />

0Eh WORD blanking interval in clock ticks<br />

----------105555BXAAAA-----------------------<br />

INT 10 - LIR - SET CONFIGURATION<br />

AX = 5555h<br />

BX = AAAAh<br />

CL = new configuration flags (see #04118)<br />

CH > 0 new video adapter configuration (see #04121)<br />

= 0 do not update video adapter configuration<br />

DL = new keyboard layout flags (see #04119)<br />

DH = new alphabet flags (see #04120)<br />

Return: AX = A55Ah if installed<br />

Program: LIR is a DOS/Windows 3.xx codepage support package develoved by<br />

LABAS u.a.b. It supports several screen and printer codepages as<br />

well as various keyboard layouts used in Lithuania.<br />

Download at: ftp://ftp.labas.com/pub/drivers/language/lir422.zip<br />

-185-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

SeeAlso: AX=5555h/BX=BBBBh,INT 17/AX=5555h/BX=AAAAh<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for LIR configuration flags:<br />

Bit(s) Description (Table 04118)<br />

7 program is active<br />

6 ???<br />

5-3 code page<br />

2 Lithuanian???<br />

1 Russian???<br />

0 enable beeps<br />

SeeAlso: #04119<br />

Bitfields for LIR keyboard layout flags:<br />

Bit(s) Description (Table 04119)<br />

7-5 keyboard layout<br />

100 QWERTY<br />

010 Lithuanian AZERTY<br />

001 Lithuanian ergonomic FZVPUJ<br />

4-3 reserved (0)<br />

2 Lithuanian keyboard???<br />

1 Russian keyboard???<br />

0 ???<br />

SeeAlso: #04118,#04120<br />

Bitfields for LIR Alphabet flags:<br />

Bit(s) Description (Table 04120)<br />

7-3 reserved (0)<br />

2 Lithuanian alphabetic symbol table???<br />

1 Russian alphabetic symbol table???<br />

0 reserved (0)<br />

SeeAlso: #04118,#04119,#04121<br />

Bitfields for LIR video adapter configuration:<br />

Bit(s) Description (Table 04121)<br />

7 Hercules Graphics Card (HGC)<br />

6-5 reserved (0)<br />

4 VGA<br />

3 MCGA<br />

2 EGA<br />

1 CGA<br />

0 reserved (0)<br />

-186-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: multiple bits may be set if more than one video adapter is installed<br />

SeeAlso: #04118<br />

----------105555BXBBBB-----------------------<br />

INT 10 - LIR - GET CONFIGURATION<br />

AX = 5555h<br />

BX = BBBBh<br />

Return: AX = magic signature A55Ah<br />

BX = version number (BH = major version, BL = minor version),<br />

e.g. BX = 0410h for LIR v4.10, or BX = 0422h for LIR v4.22)<br />

CL = configuration flags (see #04118)<br />

CH = video adapter configuration (see #04121)<br />

DL = keyboard layout flags(see #04119)<br />

DH = alphabet flags (see #04120)<br />

SeeAlso: AX=5555h/BX=AAAAh,INT 17/AX=5555h/BX=BBBBh<br />

--------V-105F00-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - RETURN CHIP INFORMATION<br />

AX = 5F00h<br />

Return: AL = 5Fh function supported<br />

BL = chip type (see #00176)<br />

BH = video memory size (see #00177)<br />

CX = miscellaneous information (see #00178)<br />

SeeAlso: AX=5F01h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Chips&Technologies chip type:<br />

Bit(s) Description (Table 00176)<br />

7-4 chip type<br />

0000: 82c451<br />

0001: 82c452 / 82c452A<br />

0010: 82c455<br />

0011: 82c453<br />

0100: 82c450<br />

0101: 82c456<br />

0110: 82c457<br />

0111: F65520<br />

1000: F65530 / F65525<br />

1001: F66510<br />

1010: ???<br />

1011: F64300 "Wingine DGX"<br />

1100: F65535/F65545 ???<br />

1101: F65540<br />

1110: ???<br />

-187-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

1111: ???<br />

3-0 revision number<br />

SeeAlso: #00177<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00177)<br />

Values for Chips&Technologies video memory size:<br />

00h 256KB<br />

01h 512KB<br />

02h 1MB<br />

03h 2MB<br />

SeeAlso: #00176<br />

Bitfields for Chips&Technologies miscellaneous information:<br />

Bit(s) Description (Table 00178)<br />

0 DAC size (0=6-bit, 1=8-bit)<br />

1 system type (0=PC/AT, 1=PS/2)<br />

2 extended text modes supported by BIOS<br />

3 reserved<br />

4 extended graphics modes supported by BIOS<br />

5 reserved<br />

6 BIOS supports graphics cursor<br />

7 BIOS supports anti-aliased font<br />

8 BIOS supports pre-programmed emulation<br />

9 BIOS supports auto emulation<br />

10 BIOS supports variable mode set at cold boot<br />

11 BIOS supports variable mode set on warm boot<br />

12 BIOS supports emulation mode set at cold boot<br />

13 BIOS supports emulation mode set on warm boot<br />

14-15 reserved<br />

--------V-105F00-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - RETURN CHIP VERSION<br />

AX = 5F00h<br />

Return: AH = 00h, if successful<br />

AL = chip version (the same value that VTEST.EXE reads)<br />

00h RTG3103???<br />

01h RTG31030/RTG3105<br />

02h RTG3106???<br />

3Fh non-Realtek chip<br />

BUG: in v3.C10, AX=5F00h on return due to improper stack restoration code<br />

SeeAlso: AX=5F01h"RTVGA"<br />

--------V-105F01-----------------------------<br />

-188-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - Chips & Technologies Extended BIOS - SET PREPROGRAMMED EMULATION<br />

AX = 5F01h<br />

BL = emulation type (see #00179)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F00h,AX=5F02h,AH=FFh"Oak"<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00179)<br />

Values for Chips&Technologies emulation type:<br />

00h,01h reserved<br />

02h CGA<br />

03h MDA<br />

04h Hercules<br />

05h EGA<br />

06h VGA (disable emulation)<br />

--------V-105F01-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - WRITE RTVGA BIOS STRING TO DESTINATION<br />

AX = 5F01h<br />

ES:DI -> zero-filled buffer for BIOS ID string<br />

Return: AH = 00h if successful<br />

ES:DI -> ASCII signature "REALTEK VGA BIOS Version 3C.10"<br />

BUG: in v3.C10, AX=5F01h on return due to improper stack restoration code<br />

SeeAlso: AX=5F00h"RTVGA",AX=5F02h"RTVGA"<br />

--------V-105F02-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - AUTO EMULATION CONTROL<br />

AX = 5F02h<br />

BL = new state of autmatic emulation (00h enabled, 01h disabled)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F01h,AX=5F03h<br />

--------V-105F02-----------------------------<br />

INT 10 - Chips & Technologies '64300' BIOS - SET CLOCK<br />

AX = 5F02h<br />

BH = what to set<br />

02h dot clock<br />

BL = speed in MHz (12-99)<br />

03h memory clock<br />

-189-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BL = speed in MHz (12-99)<br />

FFh default dot and memory clocks<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F00h"Chips",AX=5F03h"64300",AX=5F02h"65530"<br />

--------V-105F02-----------------------------<br />

INT 10 - Chips & Technologies '65530' BIOS - SET CLOCK<br />

AX = 5F02h<br />

BH = what to set<br />

02h dot clock<br />

BL = new clock speed (see #00180)<br />

03h memory clock<br />

BL = new clock speed (see #00180)<br />

04h set power-down register<br />

BL = new value for power-down register (bits 3-0 only)<br />

06h (404 clock chip) set control register<br />

BL = new vlaue for control register (bits 5-0 only)<br />

06h (404A/B/B-ES clock chips) set control register PWRDN1<br />

BL = new value for control register<br />

07h (404A/B/B-ES clock chips) set control register PWRDN1<br />

BL = new value for control register<br />

FFh default dot and memory clocks<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F01h,AX=5F02h"64300",AX=5FA0h,#00184<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00180)<br />

Values for C&T '65530' BIOS clock speed:<br />

00h 12 MHz<br />

01h 14 MHz<br />

02h 16 MHz<br />

03h 18 MHz<br />

04h 20 MHz<br />

05h 25 MHz<br />

06h 28 MHz<br />

07h 32 MHz<br />

08h 36 MHz<br />

-190-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

09h 40 MHz<br />

0Ah 45 MHz<br />

0Bh 50 MHz<br />

0Ch 56 MHz<br />

0Dh 60 MHz<br />

0Eh 65 MHz<br />

0Fh 66 MHz<br />

15h 34 MHz<br />

--------V-105F02-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - RETURN RTVGA ON-BOARD MEMORY SIZE<br />

AX = 5F02h<br />

Return: AH = 00h, if successful<br />

AL = on-board memory size<br />

(00h = 256K, 01h = 512K, 02h = 768K, 03h = 1024K)<br />

BUG: in v3.C10, AX=5F02h on return due to improper stack restoration code<br />

SeeAlso: AX=5F01h"RTVGA",AX=5F03h"RTVGA"<br />

--------V-105F03-----------------------------<br />

INT 10 - VIDEO - Realtek RTVGA - SET ???<br />

AX = 5F03h<br />

BL = 0-3 (???)<br />

Return: AH = 00h if successful<br />

BUG: in v3.C10, AX=5F03h on return due to improper stack restoration code<br />

SeeAlso: AX=5F02h"RTVGA"<br />

--------V-105F03BL00-------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SET POWER-ON DISPLAY MODE<br />

AX = 5F03h<br />

BL = 00h<br />

CL = display mode<br />

CH = mode (see #00181)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F02h,AX=5F03h/BL=01h"Chips",AX=5F90h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Chips&Technologies display mode:<br />

Bit(s) Description (Table 00181)<br />

1-0 scanlines (00 = 200, 01 = 350, 10 = 400)<br />

7 persistence (0 reset on next boot, 1 until changed)<br />

--------V-105F03BH00-------------------------<br />

INT 10 - Chips & Technologies '64300' BIOS - GET CLOCK SPEED<br />

-191-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AX = 5F03h<br />

BH = 00h (get default memory clock)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BL = clock speed in MHz<br />

SeeAlso: AX=5F02h"64300",AX=5F04h"64300"<br />

--------V-105F03BL01-------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SET POWER-ON EMULATION MODE<br />

AX = 5F03h<br />

BL = 01h<br />

CL = emulation mode (see #00181)<br />

CH = permanence<br />

bit 7 persistence (0 reset on next boot, 1 until changed)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F02h,AX=5F03h/BL=00h"Chips",AX=5F90h<br />

--------V-105F04-----------------------------<br />

INT 10 - Chips & Technologies '64300' BIOS - GET REFRESH RATE<br />

AX = 5F04h<br />

BL = video mode number<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BH = available refresh rates (see #00182)<br />

BL = currently-set refresh rate (see #00182)<br />

SeeAlso: AX=5F03h"64300",AX=5F05h"64300"<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for C&T 64300 refresh rates:<br />

Bit(s) Description (Table 00182)<br />

5 75 Hz<br />

4 72 Hz<br />

3 70 Hz<br />

2 60 Hz<br />

1 56 Hz<br />

0 interlaced<br />

--------V-105F05-----------------------------<br />

-192-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

INT 10 - Chips & Technologies '64300' BIOS - SET REFRESH RATE<br />

AX = 5F05h<br />

BL = video mode number<br />

BH = refresh rate to set (see #00182)<br />

bit 7: =0 program new clock and CRT parametes<br />

=1 keep current parameters<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F04h"64300"<br />

--------V-105F06-----------------------------<br />

INT 10 - Chips & Technologies '64300' BIOS - GET XRAM INFORMATION<br />

AX = 5F06h<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BL = XRAM presence (00h no XRAM, 01h present)<br />

SeeAlso: AX=5F05h,AX=5F08h<br />

--------V-105F08-----------------------------<br />

INT 10 - Chips & Technologies '64300' BIOS - SET LINEAR MEMORY START ADDRESS<br />

AX = 5F08h<br />

BX = desired start address in megabytes<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F06h<br />

--------V-105F10-----------------------------<br />

INT 10 - Chips & Technologies '64300'/'65530' BIOS - GET LINEAR MEMORY INFO<br />

AX = 5F10h<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BX:CX = linear memory base address<br />

DX = virtual screen width offset (bytes)<br />

SI;DI = linear memory size<br />

SeeAlso: AX=5F08h,AX=5FA0h<br />

--------V-105F50-----------------------------<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-193-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - Chips & Technologies Extended BIOS - GET LAPTOP DISPLAY STATUS<br />

AX = 5F50h<br />

Return: DL = display status (see #00183)<br />

Note: this call can be used on Toshiba laptops since ~1995 instead of<br />

INT 42/AX=7503h which is no longer supported with the F655xx chips<br />

SeeAlso: INT 42/AX=7503h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for display status:<br />

Bit(s) Description (Table 00183)<br />

7-4 always 0 ???<br />

3 1: both displays active (bit 1 also set)<br />

2 1: normal (monochrome display only), 0: inverse or color<br />

1 1: internal display active, 0: external only<br />

0 always set ???<br />

--------V-105F50-----------------------------<br />

INT 10 - Chips & Technologies '65530' BIOS - GET 655xx INFORMATION<br />

AX = 5F50h<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BX = width of flat panel in pixels<br />

CX = height of flat panel in pixels<br />

DX = F65520/525/530 status (see #00184)<br />

SeeAlso: AX=5F51h,INT 15/AX=5F31h<br />

Bitfields for C&T F65520/525/530 status:<br />

Bit(s) Description (Table 00184)<br />

15-0 reserved<br />

6-5 type of clock chip<br />

00 = 404<br />

01 = 404A<br />

10 = 404B ES<br />

11 = 404B<br />

4 accelerator enabled<br />

3 both displays active<br />

2 video polarity (1 = inverted)<br />

1 output device<br />

0 CRT<br />

1 flat panel (LCD)<br />

0 reserved<br />

-194-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-105F51-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SWITCH DISPLAY DEVICE<br />

AX = 5F51h<br />

BL = new active display<br />

00h CRT<br />

01h flat panel (LCD)<br />

02h both simultaneously<br />

BH = 01h to allow reprogramming the DAC<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5F53h<br />

--------V-105F53-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - EN/DISABLE ACCELERATOR SUPPORT<br />

AX = 5F53h<br />

BL = new support state<br />

00h disable buffer/accelerator<br />

01h enable buffer/acelerator<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5F51h,AX=5F54h<br />

--------V-105F54-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - TURN FLAT PANEL ON/OFF<br />

AX = 5F54h<br />

BL = new state<br />

00h on<br />

01h off<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5F51h,AX=5F53h,AX=5F5Ah<br />

--------V-105F5A-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SET FLAT-PANEL VIDEO POLARITY<br />

AX = 5F5Ah<br />

BL = new video polarity<br />

00h normal<br />

01h inverted<br />

Saturday, January 08, 2011 11:31 AM<br />

-195-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5F54h<br />

--------V-105F5C-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SET VERTICAL COMPENSATION<br />

AX = 5F5Ch<br />

BL = type of vertical compensation to use<br />

00h no compensation<br />

01h automatic centering<br />

02h set centering register<br />

DX = centering value (bits 9-0 only)<br />

03h non-automatic centering<br />

04h set vertical line insertion register<br />

DL = vertical line insertion (bits 3-0 only)<br />

05h set alternate maximum scanline register<br />

DL = alternate maximum scanline (bits 4-0 only)<br />

06h enable text stretching, type 0<br />

07h enable text stretching, type 1<br />

08h enable text stretching, type 2<br />

09h enable text stretching, type 3<br />

0Ah disable text stretching<br />

0Bh set vertical line replication register<br />

DL = vertical line replication (bits 3-0 only)<br />

0Ch enable graphics stretching, type 0<br />

0Dh enable graphics stretching, type 1<br />

0Eh disable vertical graphics stretching<br />

0Fh disable all horizontal and vertical compensation<br />

10h enable optimal compensation<br />

11h disable optimal compensation<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5F5Eh,AX=5F5Fh<br />

--------V-105F5E-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - EN/DISABLE TALL FONT LOADING<br />

AX = 5F5Eh<br />

BL = new state of tall-font loading<br />

00h enable loading of 8x19/30/32 fonts<br />

Saturday, January 08, 2011 11:31 AM<br />

-196-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

01h disable loading of 8x19/30/32 fonts<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

Note: when tall fonts are enabled, the fonts are stretched by duplicating<br />

scan lines as appropriate to convert an 8x16 font to the proper<br />

height (scan lines 1/9/12 [8x19] or 2-15 [8x30] or all [8x32])<br />

SeeAlso: AX=5F5Ch,AX=5F5Fh<br />

--------V-105F5F-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - HORIZONTAL COMPENSATION<br />

AX = 5F5Fh<br />

BL = horizontal compensation type<br />

00h none<br />

01h automatic centering<br />

02h set centering register<br />

DL = centering value<br />

03h non-automatic centering<br />

04h enable text compression (force 8xN fonts)<br />

05h disable text compression (allow 9xN fonts)<br />

06h enable auto doubling<br />

07h disable auto doubling<br />

0Fh disable all horizontal and vertical compensation<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AX=5F50h,AX=5FA0h<br />

--------V-105F90-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - GET SUPERVGA STATE BUFFER SIZE<br />

AX = 5F90h<br />

CX = state mask (see #00185)<br />

Return: AL = 5Fh if function supported<br />

BX = number of 64-byte blocks required<br />

SeeAlso: AH=1Ch,AX=5F03h,AX=5F91h,AX=5F92h,AX=5FA0h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Chips&Technologies state mask:<br />

Bit(s) Description (Table 00185)<br />

0 video hardware<br />

1 BIOS data state<br />

2 DAC state<br />

-197-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

15 type (0 all state info, 1 SuperVGA state only)<br />

--------V-105F91-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - SAVE SUPERVGA STATE<br />

AX = 5F91h<br />

CX = state mask (see #00185)<br />

ES:BX -> save buffer<br />

Return: AL = 5Fh if function supported<br />

buffer at ES:BX filled<br />

SeeAlso: AH=1Ch,AX=5F03h,AX=5F90h,AX=5F92h,AX=5FA1h<br />

--------V-105F92-----------------------------<br />

INT 10 - Chips & Technologies Extended BIOS - RESTORE SUPERVGA STATE<br />

AX = 5F92h<br />

CX = state mask (see #00185)<br />

ES:BX -> previously-filled save buffer<br />

Return: AL = 5Fh if function supported<br />

SeeAlso: AH=1Ch,AX=5F03h,AX=5F90h,AX=5F92h,AX=5FA2h<br />

--------V-105FA0-----------------------------<br />

INT 10 - Chips & Technologies Wingine DGX - GET EXTENDED BIOS SAVE BUFFER SIZE<br />

AX = 5FA0h<br />

CX = state(s) to be saved (see #00186)<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

BX = number of 64-byte blocks required for state<br />

SeeAlso: AH=1Ch,AX=5FA1h,AX=5FA2h,AX=5F90h,AX=4F04h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for C&T BIOS save/restore state type:<br />

Bit(s) Description (Table 00186)<br />

0 video hardware<br />

1 BIOS data<br />

2 DAC and color registers<br />

14 (65530 BIOS with AL=A1h only) clear emulation state<br />

15 extended registers<br />

SeeAlso: #00048,#00085<br />

--------V-105FA1-----------------------------<br />

INT 10 - Chips & Technologies Wingine DGX - SAVE VIDEO STATE<br />

AX = 5FA1h<br />

CX = state(s) to be saved (see #00186)<br />

ES:BX -> buffer for state information<br />

Return: AL = 5Fh if function supported<br />

-198-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

ES:BX buffer filled<br />

SeeAlso: AH=1Ch,AX=5FA0h,AX=5FA2h,AX=5F91h<br />

--------V-105FA2-----------------------------<br />

INT 10 - Chips & Technologies Wingine DGX - RESTORE VIDEO STATE<br />

AX = 5FA2h<br />

CX = state(s) to be restored (see #00186)<br />

ES:BX -> buffer containing previously-saved state information<br />

Return: AL = 5Fh if function supported<br />

AH = status<br />

00h unsuccessful<br />

01h successful<br />

SeeAlso: AH=1Ch,AX=5FA0h,AX=5FA1h,AX=5F92h<br />

--------V-1060------------------------------------<br />

INT 10 - HUNTER 16 - SET GRAPHICS FONT<br />

AH = 60h<br />

AL = new font<br />

bit 7 output characters in reverse video<br />

bits 0-6 font number (see #00200 at AH=77h)<br />

Return: BH = cell width<br />

BL = cell height<br />

Desc: select the font to use for output in mode 6; this can be used to mix<br />

fonts on the screen<br />

Note: the Husky Hunter 16 is an 8088-based ruggedized laptop. Other family<br />

members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.<br />

SeeAlso: AH=04h"HUNTER",AH=73h"HUNTER",AH=77h"HUNTER"<br />

--------V-1061------------------------------------<br />

INT 10 - HUNTER 16 - MOVE CURSOR TO GRAPHICS CO-ORDINATES<br />

AH = 61h<br />

CX = column<br />

DX = row<br />

Return: nothing<br />

Note: this function is only valid in graphics modes<br />

SeeAlso: AH=62h<br />

--------V-1062------------------------------------<br />

INT 10 - HUNTER 16 - GET CURSOR POSITION IN GRAPHICS CO-ORDINATES<br />

AH = 62h<br />

Return: CX = column<br />

DX = row<br />

Saturday, January 08, 2011 11:31 AM<br />

-199-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: this function is only valid in graphics modes<br />

SeeAlso: AH=61h<br />

--------V-1063------------------------------------<br />

INT 10 - HUNTER 16 - SET CONTRAST<br />

AH = 63h<br />

AL = contrast (0..127)<br />

Return: nothing<br />

Desc: set the LCD screen contrast to improve visibility<br />

SeeAlso: AH=64h,AH=75h<br />

--------V-1064------------------------------------<br />

INT 10 - HUNTER 16 - SET BACKLIGHT LEVEL<br />

AH = 64h<br />

AL = level (0..15)<br />

Return: nothing<br />

Desc: set the LCD backlight level to improve visibility in bad lighting<br />

SeeAlso: AH=63h,AH=65h,AH=74h,AH=78h"HUNTER",INT 15/AH=74h<br />

--------V-106500----------------------------------<br />

INT 10 - HUNTER 16 - GET BACKLIGHT TIMEOUT<br />

AX = 6500h<br />

Return: BX = timeout in seconds (0-300)<br />

Desc: returns the time after which the backlight will turn off<br />

SeeAlso: AH=63h,AH=64h,AX=6501h,INT 15/AH=74h<br />

--------V-106501----------------------------------<br />

INT 10 - HUNTER 16 - SET BACKLIGHT TIMEOUT<br />

AX = 6501h<br />

BX = timeout in seconds (0-300)<br />

Return: nothing<br />

Desc: set the idle time after which the backlight will turn off<br />

SeeAlso: AH=64h,AX=6500h<br />

--------V-1066------------------------------------<br />

INT 10 - HUNTER 16 - SPLIT DISPLAY<br />

AH = 66h<br />

AL = control bits (see #00187)<br />

BH = top row of lower section of LCD (0..7)<br />

BL = top row of lower section of the virtual screen (0..24)<br />

Return: nothing<br />

Desc: split the LCD screen horizontally into two parts; each part may be<br />

individually scrollable or fixed.<br />

Note: the Hunter 16 has a 240x64 LCD display which serves as a window into<br />

a 640x200 virtual screen<br />

Saturday, January 08, 2011 11:31 AM<br />

-200-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Bitfields for HUNTER 16 control bits:<br />

Bit(s) Description (Table 00187)<br />

0-1 01: no split, 10: allow split<br />

2 allow scrolling the upper part<br />

3 allow scrolling the lower part<br />

--------V-106A00BX0000-----------------------<br />

INT 10 - Direct Graphics Interface Standard (DGIS) - INQUIRE AVAILABLE DEVICES<br />

AX = 6A00h<br />

BX = 0000h<br />

CX = 0000h<br />

DX = buffer length (may be 0)<br />

ES:DI -> buffer<br />

Return: BX = number of bytes stored in buffer<br />

CX = bytes required for all descriptions (0 if no DGIS)<br />

Note: buffer contains descriptions and addresses of DGIS-compatible<br />

display(s) and printer(s)<br />

SeeAlso: AX=6A02h<br />

--------V-106A01CX0000-----------------------<br />

INT 10 - Direct Graphics Interface Standard (DGIS) - REDIRECT CHARACTER OUTPUT<br />

AX = 6A01h<br />

CX = 0000h<br />

ES:DI = address of device to send INT 10 output to<br />

Return: CX = 0000h output could not be redirected<br />

else INT 10h output now routed to requested display<br />

SeeAlso: AX=6A02h<br />

--------V-106A02-----------------------------<br />

INT 10 - DGIS - INQUIRE INT 10 OUTPUT DEVICE<br />

AX = 6A02h<br />

ES:DI = 0000h:0000h<br />

Return: ES:DI = 0000h:0000h if current display is non-DGIS<br />

else address of the current DGIS INT 10 display<br />

SeeAlso: AX=6A00h,AX=6A01h<br />

--------V-106D74-----------------------------<br />

INT 10 - MTRFONTS - INSTALLATION CHECK<br />

AX = 6D74h ('mt')<br />

DS:0104h = signature "MtRfOnTs"<br />

Return: AX = 4D54h ('MT') if installed<br />

ES = PSP segment of resident code<br />

Program: MTRFONTS is a shareware TSR (part of the MTR package) by Mechon Mamre<br />

which provides Hebrew screen fonts<br />

SeeAlso: INT 16/AX=6D74h"MTRTSR"<br />

Saturday, January 08, 2011 11:31 AM<br />

-201-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-106E00-----------------------------<br />

INT 10 - Paradise VGA internal - GET ???<br />

AX = 6E00h<br />

Return: BX = 5744h ('WD') if supported<br />

DH:AH:AL = last three ASCII digits of ROM serial number<br />

CL = ???<br />

CH = ???<br />

SeeAlso: AX=6E04h,AX=6E05h<br />

--------V-106E04-----------------------------<br />

INT 10 - Paradise VGA internal - GET SCREEN SIZE AND ???<br />

AX = 6E04h<br />

Return: BX = screen width (columns)<br />

CX = screen height (lines)<br />

AH = ??? (05h or FFh)<br />

AL = ??? (04h or video mode)<br />

SeeAlso: AX=6E00h,AX=6E05h<br />

--------V-106E05-----------------------------<br />

INT 10 - Paradise VGA internal - SET MODE<br />

AX = 6E05h<br />

BL = mode<br />

Return: nothing<br />

Note: like AH=00h, AL=BL.<br />

SeeAlso: AH=00h,AX=6E00h,AX=6E04h,AX=6F05h<br />

--------V-106F00-----------------------------<br />

INT 10 - HP Vectra EX-BIOS - INSTALLATION CHECK<br />

AX = 6F00h<br />

BX 4850h (usually set to 0000h for simplicity)<br />

Return: BX = 4850h ('HP') indicates HP Extended BIOS video functions present<br />

AX destroyed<br />

SeeAlso: AX=6F00h"Video7",AX=6F01h,AX=6F02h,AX=6F03h,AX=6F04h,AX=6F05h<br />

SeeAlso: INT 14/AX=6F00h,INT 16/AX=6F00h,INT 17/AX=6F00h,INT 33/AX=6F00h<br />

--------V-106F00BX0000-----------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA VGA - INSTALLATION CHECK<br />

AX = 6F00h<br />

BX = 0000h<br />

Return: BX = 5637h ('V7') indicates Video7 VGA/VEGA VGA extensions are present<br />

SeeAlso: AX=6F01h,AX=6F02h,AX=6F03h,AX=6F04h,AX=6F05h<br />

--------V-106F01-----------------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA VGA,HP EX-BIOS - GET MONITOR INFO<br />

AX = 6F01h<br />

Return: AL = monitor type code (HP,VEGA VGA only) (see #00188)<br />

Saturday, January 08, 2011 11:31 AM<br />

-202-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = status register information (see #00189)<br />

CL = current value of Extended Control register (HP Ext BIOS, and only<br />

if AL=41h) (see #00190)<br />

Notes: bits 0-3 are the same as the EGA/VGA status register bits 0-3<br />

supported by original HP Vectra AT and by ES/QS/RS series Vectras<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00188)<br />

Values for monitor type code (HP Extended BIOS):<br />

00h non-HP card with ROM and possibly its own INT 10h driver<br />

41h MultiMode video display adapter<br />

42h-44h reserved<br />

45h industry standard monochrome display adapter<br />

46h industry standard color display adapter<br />

51h reserved<br />

Bitfields for status register information:<br />

Bit(s) Description (Table 00189)<br />

0 display enable<br />

0 = display enabled<br />

1 = vertical or horizontal retrace in progress<br />

1 light pen flip flop set<br />

2 light pen switch activated<br />

3 vertical sync<br />

4 monitor resolution<br />

0 = high resolution (>200 lines)<br />

1 = low resolution (


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0 screen resolution (0 = 200 lines, 1 = 400 lines)<br />

1 underline enable (if set, 'blue' of fg color = underline)<br />

2 font (0 = Standard-8, 1 = HP-Roman-8)<br />

3 memory disabled for CPU access<br />

4 allow access to full 32K memory instead of wrapping at 16K<br />

5 select second 16K page instead of first<br />

6,7 unused<br />

--------V-106F03-----------------------------<br />

INT 10 - HP Vectra EX-BIOS - MODIFY MONITOR INFO<br />

AX = 6F03h<br />

BH = exclude mask (set bits are not modified)<br />

BL = new values for bits indicated by BH (see #00190)<br />

Return: AX destroyed<br />

Notes:<br />

this function is only valid when an HP MultiMode Video Display Adapter<br />

is installed<br />

supported by original HP Vectra AT and by ES/QS/RS series Vectras<br />

SeeAlso: AX=6F01h,AX=6F02h<br />

--------V-106F04-----------------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA VGA,HP Vectra - GET MODE AND SCREEN RESOLUTION<br />

AX = 6F04h<br />

Return: AL = current video mode (see #00191)<br />

BX = horizontal columns (text) or pixels (graphics)<br />

CX = vertical columns (text) or pixels (graphics)<br />

SeeAlso: AX=6F05h<br />

--------V-106F05-----------------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA EXTENDED EGA/VGA,HP Vectra - SET VIDEO MODE<br />

AX = 6F05h<br />

BL = mode (see #00191)<br />

Return: AX,BL destroyed<br />

Notes: also supported by the HP Vectra Extended BIOS on the original<br />

HP Vectra AT and by ES/QS/RS series Vectras<br />

on the HP Vectra, this function rather than AH=00h must be used to<br />

return to an IBM-standard mode after setting an HP-specified mode<br />

from 08h to 0Fh.<br />

SeeAlso: AH=00h,AX=0070h,AX=007Eh,AX=6F04h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00191)<br />

Values for Video7/VEGA video mode:<br />

text/ text pixel pixel colors disply scrn system<br />

grph resol box resolution pages addr<br />

00h-13h = standard IBM modes (see #00010 at AH=00h)<br />

-204-


Generated by Foxit PDF Creator © Foxit Software<br />

08h = T 80x27 . . mono . . HP MultiMode Video<br />

http://www.foxitsoftware.com For evaluation only.<br />

09h = T 80x27 . . . . . HP MultiMode Video<br />

0Ah = T 40x27 . . mono . . HP MultiMode Video<br />

0Bh = T 40x27 . . . . . HP MultiMode Video<br />

0Ch = reserved HP MultiMode Video<br />

0Dh = G . . 640x400 . . . HP MultiMode Video<br />

0Eh = G . . 320x400 . . . HP MultiMode Video<br />

0Fh = G . . 320x400 . . . HP MultiMode Video<br />

40h = T 80x43 8x8 . . . . Video7/VEGA VGA<br />

41h = T 132x25 8x14 . . . . Video7/VEGA VGA<br />

42h = T 132x43 8x8 . . . . Video7/VEGA VGA<br />

43h = T 80x60 8x8 . . . . Video7/VEGA VGA<br />

44h = T 100x60 8x8 . . . . Video7/VEGA VGA<br />

45h = T 132x28 8x8 . . . . Video7/VEGA VGA<br />

60h = G . . 752x410 16 . . Video7 VGA, VEGA VGA<br />

61h = G . . 720x540 16 . . Video7 VGA, VEGA VGA<br />

= G . . 720x540 16 . . Northgate, Headland 1024i<br />

62h = G . . 800x600 16 . . Video7 VGA, VEGA Ext EGA<br />

= G . . 800x600 16 . . Headland 1024i<br />

63h = G . . 1024x768 2 . . Video7 VGA<br />

64h = G . . 1024x768 4 . . Video7 VGA<br />

65h = G . . 1024x768 16 . . Video7 VGA, VEGA Ext EGA<br />

= G . . 1024x768 16 . . Headland 1024i<br />

66h = G . . 640x400 256 . . Video7 VGA, VEGA Ext VGA<br />

= G . . 640x400 256 . . Northgate, Headland 1024i<br />

67h = G . . 640x480 256 . . Video7 VGA, VEGA Ext VGA<br />

= G . . 640x480 256 . . Headland 1024i<br />

68h = G . . 720x540 256 . . Video7 VGA, VEGA Ext VGA<br />

= G . . 720x540 256 . . Headland 1024i<br />

69h = G . . 800x600 256 . . Video7 VGA, VEGA Ext VGA<br />

= G . . 800x600 256 . . Headland 1024i<br />

70h = G . . 752x410 16gray . . Video7 VGA, VEGA VGA<br />

71h = G . . 720x540 16gray . . Video7 VGA, VEGA VGA<br />

72h = G . . 800x600 16gray . . Video7 VGA<br />

73h = G . . 1024x768 2gray . . Video7 VGA<br />

74h = G . . 1024x768 4gray . . Video7 VGA<br />

75h = G . . 1024x768 16gray . . Video7 VGA<br />

76h = G . . 640x400 256gray . . Video7 VGA<br />

77h = G . . 640x480 256gray . . Video7 VGA<br />

78h = G . . 720x540 256gray . . Video7 VGA<br />

79h = G . . 800x600 256gray . . (future)<br />

D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Saturday, January 08, 2011 11:31 AM<br />

-205-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AH=00h,#00010,AX=0070h,#00011,AX=007Eh,AX=6F04h,#00083<br />

<strong>Index</strong>: video modes;Video 7|video modes;VEGA|video modes;Headland<br />

--------V-106F06-----------------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA VGA - SELECT AUTOSWITCH MODE<br />

AX = 6F06h<br />

BL = Autoswitch mode select<br />

00h select EGA/VGA-only modes<br />

01h select Autoswitched VGA/EGA/CGA/MGA modes<br />

02h select 'bootup' CGA/MGA modes<br />

BH = enable/disable (00h enable, 01h = disable selection)<br />

Return: nothing<br />

--------V-106F07-----------------------------<br />

INT 10 - VIDEO - Video7 VGA,VEGA VGA - GET VIDEO MEMORY CONFIGURATION<br />

AX = 6F07h<br />

Return: AL = 6Fh<br />

AH = memory configuration<br />

bits 0-6 = number of 256K blocks of video memory<br />

bit 7 = DRAM/VRAM (0: DRAM, 1: VRAM)<br />

BH = chip revision (SR8F) (S/C Chip in VEGA VGA)<br />

BL = chip revision (SR8E) (G/A Chip in VEGA VGA)<br />

CX = 0000h<br />

SeeAlso: AH=12h/BL=10h<br />

--------V-1070-------------------------------<br />

INT 10 - VIDEO - TANDY 2000 only - GET ADDRESS OF VIDEO RAM<br />

AH = 70h<br />

Return: AX:BX -> WORD containing green plane's offset<br />

AX:CX -> WORD containing green plane's segment<br />

AX:DX -> WORD containing segment of red (offset 0) and blue (offset<br />

4000) planes<br />

SeeAlso: AH=71h<br />

--------V-1070------------------------------------<br />

INT 10 - HUNTER 16 - DRAW ELLIPSE/CIRCLE<br />

AH = 70h<br />

DS:BX -> control block (see #00192)<br />

Return: nothing<br />

Desc: Draws a circle or ellipse. Only valid in graphics modes.<br />

Note: the Husky Hunter 16 is an 8088-based ruggedized laptop. Other family<br />

members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.<br />

SeeAlso: AH=71h"HUNTER"<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of HUNTER 16 control block:<br />

-206-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Offset Size Description (Table 00192)<br />

00h WORD center X co-ordinate<br />

02h BYTE center Y co-ordinate<br />

03h WORD radius in pixels<br />

05h BYTE color (00h white, 01h black, FFh invert)<br />

06h BYTE aspect ratio x:x (1-127)<br />

07h BYTE aspect ratio y:y (1-127)<br />

--------V-107000BX0000-----------------------<br />

INT 10 - Everex Extended Video BIOS - RETURN EMULATION STATUS<br />

AX = 7000h<br />

BX = 0000h<br />

Return: AL = 70h if Trident-based Everex card<br />

CL = monitor type (see #00193)<br />

CH = feature bits (see #00194)<br />

DX = video board info<br />

bits 4-15: board ID model (see #00195)<br />

bits 0-3: board ID revision<br />

DI = BCD BIOS version number<br />

SeeAlso: AX=5F01h,AH=FFh"Oak"<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00193)<br />

Values for Everex monitor type:<br />

00h mono<br />

01h CGA<br />

02h EGA<br />

03h digital multifrequency<br />

04h IBM PS/2<br />

05h IBM 8514<br />

06h SuperVGA<br />

07h analog multifrequency<br />

08h super multifrequency<br />

Bitfields for Everex feature bits:<br />

Bit(s) Description (Table 00194)<br />

7-6 memory size<br />

00 = 256K<br />

01 = 512K<br />

10 = 1024K<br />

11 = 2048K<br />

5 special oscillator present<br />

4 VGA protect enabled<br />

-207-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

0 6845 emulation<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00195)<br />

Values for board model for Trident-based Everex cards:<br />

0236h Ultragraphics II<br />

0620h Vision VGA<br />

0673h EVGA<br />

0678h Viewpoint<br />

--------V-107000BX0004-----------------------<br />

INT 10 - Everex Extended Video BIOS - GET PAGING FUNCTION POINTER FOR CURR MODE<br />

AX = 7000h<br />

BX = 0004h<br />

Return: ES:DI -> FAR paging function (call with DL = page to set)<br />

Note: the word preceding ES:DI is the length of the function in bytes, and<br />

the last byte of the function is a FAR return instruction.<br />

SeeAlso: AX=4F05h,AX=7000h/BX=0000h,AX=7000h/BX=0005h<br />

--------V-107000BX0005-----------------------<br />

INT 10 - Everex Extended Video BIOS - GET SUPPORTED MODE INFO<br />

AX = 7000h<br />

BX = 0005h<br />

CL = maximum number of modes to get info for<br />

CH = mode type to get info for (see #00196)<br />

DL = monitor type to get info for<br />

ES:DI -> buffer for mode info (see #00197)<br />

Return: CL = total number of modes fitting criteria<br />

CH = size of each info record<br />

SeeAlso: AX=7000h/BX=0000h,AX=7000h/BX=0004h<br />

(Table 00196)<br />

Values for Everex mode type:<br />

00h all modes<br />

01h monochrome text modes<br />

02h color text modes<br />

03h four-color CGA graphics modes<br />

04h two-color CGA graphics modes<br />

05h 16-color graphics modes<br />

06h 256-color graphics modes<br />

Format of Everex mode information record:<br />

Offset Size Description (Table 00197)<br />

00h BYTE mode number (bit 7 set if extended mode)<br />

-208-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

01h BYTE mode type (see #00196)<br />

02h BYTE info bits (see #00198)<br />

03h BYTE font height<br />

04h BYTE text columns on screen<br />

05h BYTE text rows on screen<br />

06h WORD number of scan lines<br />

08h BYTE color information<br />

bits 7-4 reserved<br />

3-0 bits per pixel<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for Everex info bits:<br />

Bit(s) Description (Table 00198)<br />

7,6 reserved<br />

5 monochrome mode<br />

4 interlaced display<br />

3 requires special oscillator<br />

2,1 memory required (00 = 256K, 01 = 512K, 10 = 1024K, 11 = 2048K)<br />

0 reserved<br />

--------V-1071-------------------------------<br />

INT 10 - VIDEO - TANDY 2000 only - GET ADDRESS OF INCRAM<br />

AH = 71h<br />

Return: AX:BX -> WORD containing segment address of INCRAM<br />

AX:CX -> WORD containing offset of INCRAM<br />

SeeAlso: AH=70h"TANDY"<br />

--------V-1071------------------------------------<br />

INT 10 - HUNTER 16 - DRAW LINE/BOX<br />

AH = 71h<br />

DS:BX -> control block (see #00199)<br />

Return: nothing<br />

Desc: Draws a line or box. Only valid in graphics modes.<br />

SeeAlso: AH=70h"HUNTER"<br />

Format of HUNTER 16 control block:<br />

Offset Size Description (Table 00199)<br />

00h WORD left edge X co-ordinate<br />

02h BYTE lower edge Y co-ordinate<br />

03h WORD right edge X co-ordinate<br />

05h BYTE upper edge Y co-ordinate<br />

06h BYTE color (00h white, 01h black, FFh invert)<br />

07h BYTE type (00h line, 01h box)<br />

08h BYTE if non-zero (and type is BOX) fill with color<br />

-209-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-1072-------------------------------<br />

INT 10 - VIDEO - TANDY 2000 only - SCROLL RIGHT PART OR ALL OF SCREEN<br />

AH = 72h<br />

AL = number of columns to shift scroll area, 00h to clear entire area<br />

BH = new attributes for blanked columns at left<br />

CH,CL = row, column of upper left corner of scroll area<br />

DH,DL = row, column of lower right corner of scroll area<br />

Return: nothing<br />

SeeAlso: AH=06h,AH=07h,AH=73h"TANDY",INT 15/AH=12h/BH=05h<br />

--------V-1072------------------------------------<br />

INT 10 - HUNTER 16 - SELECT TEXT-MODE INVERSE VIDEO MECHANISM<br />

AH = 72h<br />

AL = mechanism to use<br />

00h do not use inverse video<br />

01h emulate MDA. Display attribute 07h is normal video and 70h is<br />

inverse video.<br />

02h use inverse video if background is non-black.<br />

03h use inverse video for high intensity text.<br />

04h use inverse video for text with background intensity greater<br />

than foreground intensity.<br />

05h use inverse video for text with background color other than<br />

black or high intensity foreground.<br />

Return: nothing<br />

SeeAlso: AH=70h"HUNTER",AH=71h"HUNTER"<br />

--------V-1073-------------------------------<br />

INT 10 - VIDEO - TANDY 2000 only - SCROLL LEFT PART OR ALL OF SCREEN<br />

AH = 73h<br />

AL = number of columns to shift scroll area, 00h to clear entire area<br />

BH = new attributes for blanked columns at right<br />

CH,CL = row, column of upper left corner of scroll area<br />

DH,DL = row, column of lower right corner of scroll area<br />

Return: nothing<br />

SeeAlso: AH=06h,AH=07h,AH=72h"TANDY",INT 15/AH=12h/BH=05h<br />

--------V-1073------------------------------------<br />

INT 10 - HUNTER 16 - SELECT TEXT FONT<br />

AH = 73h<br />

AL = new font<br />

00h 7x7 in a 8x8 cell<br />

01h 5x7 in a 6x8 cell<br />

06h 3x5 in a 4x6 cell<br />

Return: BH = cell width<br />

Saturday, January 08, 2011 11:31 AM<br />

-210-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

BL = cell height<br />

SeeAlso: AH=60h"HUNTER",AH=77h"HUNTER"<br />

--------V-1074------------------------------------<br />

INT 10 - HUNTER 16 - SET LCD WINDOWS POSITION<br />

AH = 74h<br />

DH = row (0..24)<br />

DL = column (0..79)<br />

Return: nothing<br />

Desc: set the position in the virtual screen being displayed in the LCD<br />

screen. If Split Screen (INT 10/AH=66h) is used, this call sets the<br />

position for the window which has the cursor.<br />

SeeAlso: AH=66h"HUNTER",AH=75h,AH=76h<br />

--------V-1075------------------------------------<br />

INT 10 - HUNTER 16 - SET ZOOM<br />

AH = 75h<br />

AL = new Zoom state (00h off, nonzero on)<br />

Return: nothing<br />

SeeAlso: AH=74h,AH=76h<br />

--------V-1076------------------------------------<br />

INT 10 - HUNTER 16 - LOOKING KEYS<br />

AH = 76h<br />

AL = action<br />

00h home the window<br />

01h move up one line<br />

02h move down one line<br />

03h move left one character<br />

04h move right one character<br />

05h flip window to other side of virtual screen<br />

Return: nothing<br />

Desc: moves the displayed screen around the virtual screen<br />

SeeAlso: AH=74h,AH=75h<br />

--------V-1077------------------------------------<br />

INT 10 - HUNTER 16 - GET GRAPHICS FONT<br />

AH = 77h<br />

Return: AL = font number (see #00200)<br />

SeeAlso: AH=60h"HUNTER",AH=73h"HUNTER"<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00200)<br />

Values for HUNTER 16 graphics font number:<br />

00h 7x7 in a 8x8 cell<br />

01h 5x7 in a 6x8 cell<br />

-211-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

02h 7x9 in a 8x10 cell<br />

03h 14x9 in a 16x10 cell<br />

04h 7x18 in a 8x20 cell<br />

05h 14x18 in a 16x20 cell<br />

06h 3x5 in a 4x6 cell<br />

Note: size is X * Y<br />

--------V-1078------------------------------------<br />

INT 10 - HUNTER 16 - TURN BACKLIGHT ON/OFF<br />

AH = 78h<br />

AL = new state of backlight (00h on, 01h off)<br />

Return: nothing<br />

SeeAlso: AH=64h,INT 15/AH=74h<br />

--------V-107F-------------------------------<br />

INT 10 - Paradise SVGA - WD90C24 INSTALLATION CHECK<br />

AH = 7Fh<br />

Return: AX = 1234h if WD90C24 chip installed<br />

--------V-107F00-----------------------------<br />

INT 10 - SOLLEX SuperVGA - GET EXTENSIONS INFO<br />

AX = 7F00h<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

ES:DI -> info structure (see #00201)<br />

01h failed<br />

Program: the SOLLEX (Smos videO controLLer EXtensions) SuperVGA functions are<br />

an extension to the VESA SuperVGA BIOS Extensions (see AX=4F00h) by<br />

Seiko Epson Corporation intended to provided a standardized interface<br />

to SuperVGA functionality not addressed by the VESA standard<br />

SeeAlso: AX=4F00h<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of SOLLEX SuperVGA info structure:<br />

Offset Size Description (Table 00201)<br />

00h DWORD pointer to VESA function dispatch table<br />

04h DWORD pointer to SOLLEX function dispatch table<br />

08h DWORD pointer to VESA SuperVGA info (see #00077 at AX=4F00h)<br />

0Ch DWORD pointer to mode info structure table, consisting of<br />

alternating ResInfo (see #00202) and VESA mode information<br />

(see #00079 at AX=4F01h) blocks, terminated with an FFFFh word<br />

10h DWORD pointer to font info structure table (see #00203)<br />

14h WORD high resolution crystal frequency in Hz (0000h = not present)<br />

-212-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

16h DWORD pointer to ASCIZ ID string<br />

http://www.foxitsoftware.com For evaluation only.<br />

1Ah DWORD pointer to timeout reset table<br />

array of bytes, each a multiple of the minimum time increment<br />

1Eh WORD minimum time increment in timer ticks<br />

20h BYTE inverse options supported<br />

bit 0: inverse supported<br />

bits 1-7: reserved<br />

21h BYTE normal color value<br />

22h BYTE inverse color value<br />

23h WORD port to be accessed for normal/inverse settings<br />

25h WORD type of interface chip (currently undefined)<br />

27h WORD program operational mode<br />

bits 1-0: 00 no preference<br />

01 terse (minimum detail in program messages)<br />

10 verbose<br />

11 use menus if supported, verbose mode otherwise<br />

bits 7-2: reserved<br />

29h WORD SOLLEX specification version<br />

2Bh WORD version of VESA/SOLLEX implementation<br />

2Dh DWORD offset to relocatable portion of SOLLEX extensions (for CONFIG)<br />

2Eh DWORD offset to unused section of the extensions ROM<br />

31h 16 BYTEs reserved<br />

Note: all DWORD pointers initially require segment fixups; if the segment<br />

is 0000h, it should be changed to the returned ES, otherwise it<br />

may be assumed to be correct<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of SOLLEX SuperVGA ResInfo:<br />

Offset Size Description (Table 00202)<br />

00h WORD 16-bit mode number<br />

02h WORD adapter type (00h VGA, 01h EGA, 02h CGA, 03h MDA)<br />

04h WORD display info (see #00206)<br />

06h DWORD pointer to video parameter table<br />

0Ah BYTE replacement entry in master Video Parameter<br />

0Bh BYTE mode requested for mode set by BIOS<br />

0Ch DWORD pointer to LoadReg table<br />

10h BYTE index into table of clock values (see #00204)<br />

SeeAlso: #00201<br />

Format of SOLLEX SuperVGA font info table [array] entry:<br />

Offset Size Description (Table 00203)<br />

00h BYTE required font height<br />

-213-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

01h BYTE parameter to load text mode font<br />

02h BYTE parameter to load graphics mode font<br />

SeeAlso: #00201<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00204)<br />

Values for SOLLEX SuperVGA clock value index:<br />

00h 25 MHz<br />

01h 28 MHz<br />

02h PCLK<br />

03h 31.5 MHz (VESA 640x480)<br />

04h reserved<br />

05h 16 MHz (EGA)<br />

06h PCLK<br />

07h 24 MHz (EGA)<br />

08h 25 MHz<br />

09h 28 MHz<br />

0Ah 36 MHz<br />

0Bh 45 MHz (for 1024x768)<br />

0Ch 80 MHz<br />

0Dh 40 MHz<br />

0Eh 65 MHz<br />

0Fh 1 MHz (for powerdown)<br />

SeeAlso: #00201<br />

--------V-107F00BX4000-----------------------<br />

INT 10 - Diamond Stealth 24 - GET S3 INFORMATION BLOCK<br />

AX = 7F00h<br />

BX = 4000h<br />

Return: AX = 007Fh if supported<br />

DX:BX -> DAC set mode routine<br />

SeeAlso: AX=7F00h/BX=4001h,AX=7F00h/BX=4002h,#00732 at INT 1A/AX=B102h<br />

--------V-107F00BX4001-----------------------<br />

INT 10 - Diamond Stealth 24 - GET LINEAR ADDRESS<br />

AX = 7F00h<br />

BX = 4001h<br />

Return: AX = 007Fh if supported<br />

CX = current linear address base (high word)<br />

SeeAlso: AX=7F00h/BX=4000h,AX=7F00h/BX=4002h<br />

--------V-107F00BX4002-----------------------<br />

INT 10 - Diamond Stealth 24 - SET LINEAR ADDRESS<br />

AX = 7F00h<br />

BX = 4002h<br />

-214-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

CX = new linear address base (high word)<br />

Return: AX = 007Fh if supported<br />

SeeAlso: AX=7F00h/BX=4000h,AX=7F00h/BX=4001h<br />

--------V-107F01BL00-------------------------<br />

INT 10 - SOLLEX SuperVGA - ADAPTER CONTROL - SET ADAPTER<br />

AX = 7F01h<br />

BL = 00h<br />

CX = adapter request (see #00205)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Note: initializes video hardware to a particular standard<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F01h/BL=01h,AX=7F01h/BL=02h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for SOLLEX SuperVGA adapter request:<br />

Bit(s) Description (Table 00205)<br />

1-0 adapter type (00 VGA, 01 EGA, 10 CGA, 11 MDA)<br />

2 reserved<br />

4-3 change displays (00 none, 01 analog 10 digital 11 panel)<br />

6-5 desired monitor sense (01 color, 10 mono, 11=8514)<br />

7 lock override<br />

8 alternate adapter mode<br />

15-9 reserved<br />

--------V-107F01BL01-------------------------<br />

INT 10 - SOLLEX SuperVGA - ADAPTER CONTROL - GET ADAPTER<br />

AX = 7F01h<br />

BL = 01h<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

BX = adapter type (see #00205)<br />

DX = display type (see #00206)<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F01h/BL=00h,AX=7F01h/BL=02h<br />

Bitfields for SOLLEX SuperVGA display type:<br />

Bit(s) Description (Table 00206)<br />

15-9 reserved<br />

-215-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

8 alternate display active<br />

7 Enhanced Color Display monitor active<br />

6 multi-frequency digital monitor active<br />

5 PS/2-type monitor active<br />

4 plasma/electroluminescent panel active<br />

3 LCD panel active<br />

2 multi-frequency analog monitor active<br />

1-0 monitor sense (00 none, 01 color, 10 mono, 11=8514)<br />

--------V-107F01BL02-------------------------<br />

INT 10 - SOLLEX SuperVGA - ADAPTER CONTROL - DETERMINE ADAPTER SUPPORT<br />

AX = 7F01h<br />

BL = 02h<br />

CX = adapter request (see #00205)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h requested setting can successfully be made<br />

01h requested setting not available in this configuration<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F01h/BL=00h<br />

--------V-107F02BL00-------------------------<br />

INT 10 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - SET DISPLAY OUTPUT<br />

AX = 7F02h<br />

BL = 00h<br />

CX = display output setting (see #00207)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F02h/BL=00h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for SOLLEX SuperVGA display output setting:<br />

Bit(s) Description (Table 00207)<br />

0 CRTC control in 2,1 valid<br />

1 enable digital output<br />

2 enable analog output<br />

3 panel control in 5,4 valid<br />

4 enable LCD output<br />

5 enable plasma/EL output<br />

6 inverse control in 7 valid<br />

7 0=normal, 1=inverse<br />

-216-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

15-8 reserved<br />

--------V-107F02BL01-------------------------<br />

INT 10 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - GET DISPLAY OUTPUT<br />

AX = 7F02h<br />

BL = 01h<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

BX = display output setting (see #00207)<br />

CX = displays attached (see #00208)<br />

01h failed<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F02h/BL=00h<br />

Saturday, January 08, 2011 11:31 AM<br />

Bitfields for SOLLEX SuperVGA displays attached:<br />

Bit(s) Description (Table 00208)<br />

0 PS/2 display on analog output<br />

1 multi-frequency monitor on analog output<br />

2 LCD panel attached<br />

3 plasma/electroluminescent panel attached<br />

4 multi-frequency monitor on digital output<br />

5 Enhanced Color Display attached to digital outpt<br />

6 alternate display<br />

15-7 reserved<br />

--------V-107F03BL00-------------------------<br />

INT 10 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GET SUPPORT INFO<br />

AX = 7F03h<br />

BL = 00h<br />

CX = support type<br />

0000h VGA, 0001h EGA, 0002h CGA, 0003h MDA, 0004h extensions,<br />

0005h-0012h reserved for SOLLEX, 0013h Hercules,<br />

0014h-001Fh reserved for SOLLEX, 0020h-00FFh reserved for OEM<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

CX = size of video support code<br />

DX = segment of physical video support (0000h if no ROM)<br />

ES = segment of active video support<br />

ES:DI -> information block (DI = 0000h if none available)<br />

01h failed<br />

-217-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AX=7F03h/BL=01h<br />

--------V-107F03BL01-------------------------<br />

INT 10 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - INITIALIZE VIDEO SUPPORT<br />

AX = 7F03h<br />

BL = 01h<br />

CX = support request<br />

ES = segment of support code<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Note: initializes the indicated video support by calling ES:0003h; this<br />

function may be used to switch the active video support back to<br />

ROM after AX=7F03h/BL=02h<br />

SeeAlso: AX=7F03h/BL=00h<br />

--------V-107F03BL02-------------------------<br />

INT 10 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GO RAM RESIDENT<br />

AX = 7F03h<br />

BL = 02h<br />

CX = support request<br />

ES = destination segment<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F03h/BL=01h<br />

--------V-107F04BL00-------------------------<br />

INT 10 - SOLLEX SuperVGA - POWER CONTROL - SET POWER STATE<br />

AX = 7F04h<br />

BL = 00h<br />

CX = new power state<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

Note: higher values progressively reduce the operations available on the<br />

video adapter while yielding increasing power savings<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F04h/BL=01h<br />

Saturday, January 08, 2011 11:31 AM<br />

-218-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

--------V-107F04BL01-------------------------<br />

INT 10 - SOLLEX SuperVGA - POWER CONTROL - GET POWER STATE<br />

AX = 7F04h<br />

BL = 01h<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

CX = current power state<br />

DX = maximum state<br />

01h failed<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F04h/BL=00h<br />

--------V-107F04BL02-------------------------<br />

INT 10 - SOLLEX SuperVGA - POWER CONTROL - SET TIMEOUT RESET<br />

AX = 7F04h<br />

BL = 02h<br />

CX = timeout reset<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F04h/BL=03h<br />

--------V-107F04BL03-------------------------<br />

INT 10 - SOLLEX SuperVGA - POWER CONTROL - GET TIMEOUT RESET<br />

AX = 7F04h<br />

BL = 03h<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

BX = time increment<br />

CX = current timeout reset<br />

DX = maximum timeout reset<br />

ES:DI -> timeout reset table (array of bytes)<br />

01h failed<br />

Note: the timeout period is computed as (BYTE ES:[DI+CX]) * BX timer ticks<br />

SeeAlso: AX=7F00h"SOLLEX",AX=7F04h/BL=02h<br />

--------V-107F05-----------------------------<br />

INT 10 - SOLLEX SuperVGA - LOAD REGISTER<br />

AX = 7F05h<br />

Saturday, January 08, 2011 11:31 AM<br />

-219-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

ES:DI -> register value table (see #00209)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AH=F1h,AH=F3h,AH=F5h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

Format of SOLLEX SuperVGA register value table:<br />

Offset Size Description (Table 00209)<br />

00h WORD base I/O register (FFFFh = end of list)<br />

02h 2N BYTEs pairs of values to be written to the base I/O register as an<br />

index value and the following register as a data byte<br />

2N+2 WORD FFFFh (end of data list)<br />

... (repeats until FFFFh base address)<br />

--------V-107F06-----------------------------<br />

INT 10 - SOLLEX SuperVGA - MULTIPLE FONT CONTROL<br />

AX = 7F06h<br />

BL = subfunction<br />

00h set multiple font state<br />

CX = new state (00h off, 01h on)<br />

01h get multiple font state<br />

Return: BL = current state (00h off, 01h on)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

SeeAlso: AX=1100h,AX=1103h<br />

--------V-107F07-----------------------------<br />

INT 10 - SOLLEX SuperVGA - FILL VIDEO RAM<br />

AX = 7F07h<br />

BL = how much to fill<br />

00h regen size<br />

01h all video memory<br />

CX = pattern to write (normally 0720h for text modes and 0000h for gr)<br />

Return: AL 7Fh if not supported<br />

AL = 7Fh if supported<br />

AH = status<br />

00h successful<br />

01h failed<br />

-220-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AH=06h<br />

--------A-1080-------------------------------<br />

INT 10 - CU Writer v1.4 - GET OPTION<br />

AH = 80h<br />

AL = desired option<br />

Return: ???<br />

Program: CU Writer is a public-domain Thai-English word processor from<br />

Chulalongkorn University, Bangkok<br />

SeeAlso: AH=81h"CU Writer"<br />

--------Q-1080--DX4456-----------------------<br />

INT 10 U - VIDEO - DESQview 2.0x only - internal - SET ??? HANDLER<br />

AH = 80h<br />

DX = 4456h ('DV')<br />

ES:DI -> FAR subroutine to be called on ???<br />

Return: DS = segment of DESQview data structure for video buffer<br />

Note: this function is probably meant for internal use only, due to the magic<br />

value required in DX<br />

the subroutine seems to be called when the DESQview menu is accessed;<br />

on entry, AL = 03h or 04h<br />

--------A-1081-------------------------------<br />

INT 10 - CU Writer v1.4 - SET OPTION<br />

AH = 81h<br />

???<br />

Return: ???<br />

SeeAlso: AH=80h"CU Writer"<br />

--------Q-1081--DX4456-----------------------<br />

INT 10 U - VIDEO - DESQview 2.0x only - internal - GET ???<br />

AH = 81h<br />

DX = 4456h ('DV')<br />

Return: ES = segment of DESQview data structure for video buffer<br />

BYTE ES:[0] = current window number in DV 2.0x<br />

Note: this function is probably meant for internal use only, due to the magic<br />

value required in DX<br />

SeeAlso: AH=82h"DESQview"<br />

--------Q-1082--DX4456-----------------------<br />

INT 10 U - VIDEO - DESQview 2.0x only - internal - GET CURRENT WINDOW INFO<br />

AH = 82h<br />

DX = 4456h ('DV')<br />

Return: DS = segment in DESQview for data structure<br />

in DV 2.00,<br />

BYTE DS:[0] = window number<br />

Saturday, January 08, 2011 11:31 AM<br />

-221-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

WORD DS:[1] = segment of other data structure<br />

WORD DS:[3] = segment of window's object handle<br />

ES = segment of DESQview data structure for video buffer<br />

AL = current window number<br />

AH = ???<br />

BL = direct screen writes<br />

00h program does not do direct writes<br />

01h program does direct writes, so shadow buffer not usable<br />

BH = ???<br />

CL = current video mode<br />

CH = ???<br />

Note: this function is probably meant for internal use only, due to the magic<br />

value required in DX<br />

SeeAlso: AH=81h"DESQview"<br />

--------J-108200-----------------------------<br />

INT 10 - VIDEO - AX PC - GET/SET SCROLL MODE<br />

AX = 8200h<br />

BL = new scroll mode or FFh to get current mode<br />

00h dynamic, 01h software<br />

Return: AL = scroll mode (current mode if BL=FFh, previous mode otherwise)<br />

SeeAlso: AH=06h,AH=07h<br />

--------J-108300-----------------------------<br />

INT 10 - VIDEO - AX PC - GET VIDEO RAM ADDRESS<br />

AX = 8300h<br />

Return: AX = offset of video RAM<br />

ES:BX -> virtual text RAM buffer<br />

SeeAlso: AX=5201h<br />

----------1086-------------------------------<br />

INT 10 - ???<br />

AH = 86h<br />

Note: called by Diamond Stealth64 Video STLTH64.VXD<br />

SeeAlso: INT 2F/AX=4021h<br />

--------N-108B-------------------------------<br />

INT 10 - Alloy MW386 - FORCE WORKSTATION SCREEN UPDATE<br />

AH = 8Bh<br />

Return: nothing<br />

SeeAlso: AH=92h,AH=93h<br />

--------N-1090-------------------------------<br />

INT 10 - Alloy MW386 - GET PHYSICAL WORKSTATION DISPLAY MODE<br />

AH = 90h<br />

Return: AL = current video mode (see #00010 at AH=00h)<br />

Saturday, January 08, 2011 11:31 AM<br />

-222-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

SeeAlso: AH=91h<br />

--------N-1091-------------------------------<br />

INT 10 - Alloy MW386 - GET PHYSICAL WORKSTATION ADAPTER TYPE<br />

AH = 91h<br />

Return: AL = video adapter type (see #00210)<br />

Note: types less than 80h do not imply that the current user is on the host<br />

SeeAlso: AH=90h<br />

Saturday, January 08, 2011 11:31 AM<br />

(Table 00210)<br />

Values for Alloy MW386 video adapter type:<br />

00h monochrome<br />

01h Hercules monochrome graphics<br />

02h CGA<br />

03h EGA<br />

04h VGA<br />

80h monochrome text terminal<br />

81h Hercules graphics terminal<br />

82h color graphics terminal<br />

--------N-1092-------------------------------<br />

INT 10 - Alloy MW386 - INHIBIT WORKSTATION SCREEN UPDATES<br />

AH = 92h<br />

Return: nothing<br />

Note: the terminal will be updated even when screen updates are inhibited if<br />

TTY output is used<br />

SeeAlso: AH=8Bh<br />

--------N-1093-------------------------------<br />

INT 10 - Alloy MW386 - REDRAW SCREEN<br />

AH = 93h<br />

Return: nothing<br />

SeeAlso: AH=8Bh,AH=FFh<br />

--------V-109508-----------------------------<br />

INT 10 - VHRBIOS.SYS - ???<br />

AX = 9508h<br />

Return: ???<br />

Program: VHRBIOS.SYS is a driver for the Micro Display Systems "TheGenius"<br />

black&white A4/portrait monitor<br />

SeeAlso: AH=96h"VHRBIOS.SYS",AH=F0h"VHRBIOS.SYS"<br />

--------V-1096-------------------------------<br />

INT 10 - VHRBIOS.SYS - GET OTHER DISPLAY INFO<br />

AH = 96h<br />

Return: AL = display type (see AH=1Ah)<br />

-223-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

AH = ??? (possibly related to Micro Channel support)<br />

Program: VHRBIOS.SYS is a driver for the Micro Display Systems "TheGenius"<br />

black&white A4/portrait monitor<br />

Desc: returns info on any non-Genius video adapter in the system<br />

SeeAlso: AX=9508h"VHRBIOS.SYS",AH=F0h"VHRBIOS.SYS"<br />

--------A-10A0-------------------------------<br />

INT 10 - CU Writer v1.4 - SET PIXEL WRITE MODE<br />

AH = A0h<br />

???<br />

Return: ???<br />

Program: CU Writer is a public-domain Thai-English word processor from<br />

Chulalongkorn University, Bangkok<br />

SeeAlso: AH=80h"CU Writer",AH=B0h<br />

--------p-10A000-----------------------------<br />

INT 10 - ATI BIOS Extensions - ???<br />

AX = A000h<br />

CL = ??? (bits 2-0 may not be 000)<br />

CH = ??? (81h or ???)<br />

DX = segment of ??? (if CH=81h)<br />

???<br />

Return: AX = ???<br />

Program: the ATI BIOS extensions are supported by ATI graphics cards containing<br />

the Mach64 or newer graphics chips (Rage Pro, Rage 128, etc.)<br />

SeeAlso: AX=4F10h/BL=00h,AX=A001h<br />

----------10A001-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A001h<br />

CL = ??? flags<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A002-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A002h<br />

CL = ??? (bits 2-0 may not be 000)<br />

CH = ??? (81h or ???)<br />

DX = segment of ??? (if CH=81h)<br />

???<br />

Saturday, January 08, 2011 11:31 AM<br />

-224-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

Note: executes AX=A000h, then AX=A001h if A000h was successful<br />

SeeAlso: AX=A000h,AX=A001h<br />

----------10A003-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A003h<br />

BX = ???<br />

???<br />

Return: AH = status (00h successful)<br />

???<br />

SeeAlso: AX=A000h,AX=A002h<br />

--------V-10A004-----------------------------<br />

INT 10 - PhoenixVIEW/LC - VIDEO DISPLAY TYPE<br />

AX = A004h<br />

???<br />

Return: ???<br />

Desc: configure display parameters<br />

SeeAlso: AX=A01Bh"PhoenixVIEW/LC"<br />

----------10A004-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A004h<br />

BX = video mode??? (0000-00FFh)<br />

DX = ??? (sent to some port [66ECh???] one bit at a time, high to low)<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A005-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A005h<br />

CL = ??? flags (bits 0,2, others?)<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

Saturday, January 08, 2011 11:31 AM<br />

-225-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A006-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A006h<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A007-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A007h<br />

Return: AH = 00h (successful)<br />

AL = ??? (00h)<br />

BX = ??? (15A0h in examined BIOS)<br />

DX = segment of BIOS<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A008-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ??? SIZE<br />

AX = A008h<br />

CL = ??? flags<br />

???<br />

Return: AH = 00h (successful)<br />

BX = size of ??? (0046h if CL bit 0 clear on entry)<br />

SeeAlso: AX=A000h,AX=A009h<br />

----------10A009-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A009h<br />

DX:BX -> buffer for ???<br />

CL = ??? flags<br />

???<br />

Return: AH = status<br />

00h successful<br />

DX:BX buffer filled<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A008h<br />

----------10A00A-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A00Ah<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-226-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Return: AH = 00h (successful)<br />

AL = ??? (01h)<br />

BX = ??? (5938h)<br />

CX = ??? (595Eh)<br />

DX = segment of BIOS<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A00B-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A00Bh<br />

BX = ???<br />

CL = ??? flags<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A002h<br />

--------p-10A00C-----------------------------<br />

INT 10 - ATI Mach64 BIOS - SET SLEEP MODE<br />

AX = A00Ch<br />

CL = new state<br />

00h normal operation<br />

01h standby<br />

02h suspend<br />

03h off<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

Note: CL bit 2 affects values written to video card's ports<br />

SeeAlso: AX=A000h,AX=A00Dh,AX=4F00h,AX=4F10h/BL=01h<br />

----------10A00D-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET SLEEP MODE<br />

AX = A00Dh<br />

Return: AH = 00h (successful)<br />

CL = current power mode<br />

00h normal operation<br />

01h standby<br />

02h suspend<br />

03h off<br />

SeeAlso: AX=A00Ch,AX=4F10h/BL=02h<br />

SeeAlso: AX=A00Ch,AX=A00Dh"Rage128"AX=4F10h/BL=02h<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-227-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

--------V-10A00D-----------------------------<br />

INT 10 - ATI Rage128 BIOS - GET ???<br />

AX = A00Dh<br />

BL = subfunction<br />

00h ???<br />

01h ???<br />

02h ???<br />

03h ???<br />

DX:DI -> buffer for results<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A00Dh"Mach64",AX=A015h<br />

----------10A00E-----------------------------<br />

INT 10 - ATI Mach64 BIOS - SET ???<br />

AX = A00Eh<br />

CL = ??? (00h-03h)<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

Notes: CL zero/nonzero are treated differently<br />

NOP in All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A00Fh<br />

----------10A00F-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A00Fh<br />

Return: AH = 00h (successful)<br />

CL = ??? (00h-03h, read from PORT 42ECh)<br />

Note: NOP in All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A00Eh<br />

----------10A010-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A010h<br />

CL = ??? (80h/other)<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Saturday, January 08, 2011 11:31 AM<br />

-228-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: NOP in All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A002h<br />

----------10A011-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A011h<br />

Return: AH = 00h (successful)<br />

BL = ??? (1Fh)<br />

BH = ??? (0Fh)<br />

CL = ??? (00h)<br />

CH = ??? (0Fh)<br />

DX = ??? (00FFh)<br />

Note: NOP in All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A010h<br />

--------V-10A012-----------------------------<br />

INT 10 - ATI Mach64 BIOS - GET ???<br />

AX = A012h<br />

Return: AH = 00h (successful)<br />

AL = ??? (00h)<br />

BX = ??? (0000h)<br />

CX = ??? (0000h)<br />

DX = ??? (02ECh)<br />

Note: NOP in All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A002h<br />

--------V-10A013-----------------------------<br />

INT 10 - ATI Mach64 BIOS - ???<br />

AX = A013h<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

Note: not implemented in examined Mach64 BIOS, always returns AH=01h; NOP in<br />

examined All-in-Wonder 128 BIOS<br />

SeeAlso: AX=A000h,AX=A002h<br />

--------V-10A014-----------------------------<br />

INT 10 - ATI Rage128 BIOS - ???<br />

AX = A014h<br />

CH = ??? (bits 0,1,4)<br />

???<br />

Return: AH = status<br />

00h successful<br />

Saturday, January 08, 2011 11:31 AM<br />

-229-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

01h failed<br />

???<br />

SeeAlso: AX=A000h,AX=A015h<br />

--------V-10A015-----------------------------<br />

INT 10 - ATI Rage128 BIOS - GET/SET ???<br />

AX = A015h<br />

CH = subfunction<br />

00h get ???<br />

01h set ???<br />

CL = ??? (only bits 0,1 used on All-in-Wonder 128)<br />

other NOP<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A014h,AX=A017h<br />

--------V-10A016-----------------------------<br />

INT 10 - ATI Rage128 BIOS - NOP<br />

AX = A016h<br />

Return: nothing<br />

SeeAlso: AX=A000h,AX=A017h<br />

--------V-10A017-----------------------------<br />

INT 10 - ATI Rage128 BIOS - ???<br />

AX = A017h<br />

???<br />

Return: AH = status<br />

00h successful<br />

01h failed<br />

???<br />

SeeAlso: AX=A014h,AX=A015h<br />

--------V-10A01B-----------------------------<br />

INT 10 - PhoenixVIEW/LC - CRT MONITOR DETECTION<br />

AX = A01Bh<br />

???<br />

Return: ???<br />

Desc: determine whether an external display is currently attached<br />

SeeAlso: AX=A004h"PhoenixVIEW/LC"<br />

--------U-10AA-------------------------------<br />

INT 10 OU - Player's Tool 3.0 - UNINSTALL<br />

AH = AAh<br />

Return: ???<br />

Saturday, January 08, 2011 11:31 AM<br />

-230-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

Note: this call has been removed in PT 3.996b<br />

Program: Player's Tool is a game cheater by Dmitry Yakunin & Andy Robinson<br />

SeeAlso: AH=ABh,INT 2F/AH=AAh<br />

--------U-10AB-------------------------------<br />

INT 10 OU - Player's Tool 3.0 - INSTALLATION CHECK<br />

AH = ABh<br />

Return: BH = FFh<br />

???<br />

Note: this call has been removed in PT 3.996b<br />

SeeAlso: AH=AAh,INT 2F/AH=ABh<br />

--------A-10B0-------------------------------<br />

INT 10 - CU Writer v1.4 - PUT PIXEL<br />

AH = B0h<br />

???<br />

Return: ???<br />

SeeAlso: AH=A0h"CU Writer",AH=B1h,AH=B2h,AH=B3h,AH=B4h,AH=B5h,AH=D0h<br />

--------A-10B1-------------------------------<br />

INT 10 - CU Writer v1.4 - MOVE TO<br />

AH = B1h<br />

???<br />

Return: ???<br />

SeeAlso: AH=B0h,AH=B2h,AH=C0h"CU Writer"<br />

--------A-10B2-------------------------------<br />

INT 10 - CU Writer v1.4 - DRAW LINE TO<br />

AH = B2h<br />

???<br />

Return: ???<br />

SeeAlso: AH=B0h,AH=B1h,AH=B3h,AH=B4h,AH=B5h<br />

--------A-10B3-------------------------------<br />

INT 10 - CU Writer v1.4 - FLOOD FILL<br />

AH = B3h<br />

???<br />

Return: ???<br />

SeeAlso: AH=B2h,AH=B5h<br />

--------A-10B4-------------------------------<br />

INT 10 - CU Writer v1.4 - DRAW RECTANGLE<br />

AH = B4h<br />

???<br />

Return: ???<br />

SeeAlso: AH=B0h,AH=B2h,AH=B3h,AH=B5h<br />

--------A-10B5-------------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-231-


D:\D\inter61a\<strong>INTERRUP</strong>.A<br />

Generated by Foxit PDF Creator © Foxit Software<br />

http://www.foxitsoftware.com For evaluation only.<br />

INT 10 - CU Writer v1.4 - DRAW FILLED RECTANGLE<br />

AH = B5h<br />

???<br />

Return: ???<br />

SeeAlso: AH=B0h,AH=B2h,AH=B3h,AH=B4h<br />

--------V-10BB-------------------------------<br />

INT 10 U - Doorway - SET BIOS/DIRECT REDIRECTION<br />

AH = BBh<br />

AL = new redirection mode<br />

00h BIOS (hook and redirect INT 10h,etc.)<br />

01h DIRECT (scan video memory for changes)<br />

Return: ???<br />

SeeAlso: INT 16/AH=67h"Doorway"<br />

--------V-10BD44-----------------------------<br />

INT 10 U - Compaq QVision - ???<br />

AX = BD44h<br />

???<br />

Return: ???<br />

Note: called by Compaq's MTX132.COM, which places the QVision in 132-column<br />

mode<br />

--------!---Section--------------------------<br />

Saturday, January 08, 2011 11:31 AM<br />

-232-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!