Dodajem knjige
This commit is contained in:
@@ -0,0 +1,555 @@
|
||||
Compaq Super VGA chips.
|
||||
|
||||
There are 3 "Families" of Compaq VGA chips:
|
||||
|
||||
Integrated Video Graphics System (IVGS aka Starlight):
|
||||
Supports 640x480x16c. BitBLT functions
|
||||
|
||||
Advanced VGA System (AVGA aka Stardust):
|
||||
Supports 800x600x16c and 640x480x256c. BitBLT functions.
|
||||
|
||||
QVision:
|
||||
Supports 1024x768x256c. Newer versions support 1280x1024 and/or TrueColor.
|
||||
Hardware Cursor, BitBLT.
|
||||
|
||||
QVision (128084) Max 1MB (Victory)
|
||||
QVision 1024 Max 2MB (V32 ?)
|
||||
QVision 1280 (139148) Max 2MB (V32)
|
||||
|
||||
The QVision 2000 is actually a Matrox MGA-II (Ultima) clone.
|
||||
|
||||
|
||||
3C2h (W): Miscellaneous
|
||||
bit 2-4 (QVision) Clock select. In AVGA mode the two lower bits selects
|
||||
one of 4 clocks, in QVision mode (3CEh index 0Fh <> A5h) these
|
||||
3 bits selects 1 of 8 other clocks, thus there are 12 clocks
|
||||
available on the QVision.
|
||||
Note: This is a standard VGA register, all other bits follow VGA standard.
|
||||
This register can be read at 3CCh.
|
||||
|
||||
3CEh index 0Bh (R/W):
|
||||
bit 0 ??
|
||||
1 If set the ROM is 16bit wide, 8 if clear
|
||||
2 If set video memory is 16bit wide, 8 if clear
|
||||
3 Blanks screen if set ??
|
||||
4 ??
|
||||
|
||||
3CEh index 0Ch (R): Controller Version
|
||||
bit 3-7 Version.
|
||||
03h: IVGS
|
||||
05h: AVGA
|
||||
06h: Original QVision
|
||||
0Eh: QVision 1024 or 1280
|
||||
10h: Advanced VGA Port (What is this?)
|
||||
|
||||
3CEh index 0Dh (R/W): Extended Controller Version
|
||||
|
||||
3CEh index 0Eh (R/W): Extended Controller Capabilities
|
||||
|
||||
3CEh index 0Fh (R/W): Environment Register
|
||||
bit 0-3 writing 5 to this register unlocks the extended registers.
|
||||
4-7 (QVision) 0Ah if in AVGA mode, 0 if in QVision mode
|
||||
Note: The QVision has a specific mode for AVGA support (Mode 29h and 2Eh),
|
||||
where the AVGA accelerator function and registers are used.
|
||||
|
||||
3CEh index 10h (R/W): BLTConf
|
||||
bit 0-1 ??
|
||||
2 (QVision) If set the 2xxxh-3xxxh register block is mapped at 4xxxh
|
||||
-5xxxh
|
||||
3-4 (chip ?) Video interrupt. 0= Active Low, 1,3=Active High, 2=Disabled.
|
||||
3 (QVision) If set enables access to some of the extended registers ?
|
||||
5 Tri-state if set
|
||||
6 ??
|
||||
7 (AVGA) If set the screen goes all white or black ?
|
||||
|
||||
3CEh index 11h (R/W):
|
||||
bit 0 ??
|
||||
|
||||
3CEh index 40h (R/W): Control Register 0
|
||||
bit 0 If set accesses to the upper bank (0A8000h-0AFFFFh) are calculated
|
||||
from 0A8000h (I.e.. to create a 64K unified window index 46h should
|
||||
be programmed with a value 8 larger than index 45h). If clear
|
||||
accesses are relative to 0A0000h (I.e.. use same value in index 45h
|
||||
and 46h).
|
||||
1 If set the memory layout is different ?
|
||||
2-7 ??
|
||||
|
||||
3CEh index 41h (R/W):
|
||||
bit 0-2 ??
|
||||
|
||||
3CEh index 42h (R/W): CRTC Overflow
|
||||
bit 0-1 Bit 8-9 of the Display Offset. Bits 0-7 are in 3d4h index 13h.
|
||||
2-4 Display start Address bits 16-18. Bits 0-15 are in 3d4h index
|
||||
0Ch,0Dh
|
||||
5 ??
|
||||
6 If set moves the display ~50 lines ??
|
||||
7 ??
|
||||
|
||||
3CEh index 43h (R/W):
|
||||
bit 0-7 ??
|
||||
|
||||
3CEh index 44h (R/W):
|
||||
bit 0-7 ??
|
||||
|
||||
3CEh index 45h (R/W): Page Register 0
|
||||
bit 0-7 Bank number in 4KB blocks for accesses to A000h-A7FFh.
|
||||
(AVGA) In 16c planar modes the bank is in units of 1Kb
|
||||
(QVision 1280) If 23C7h bit 4 is set the bank is in units of 16Kb
|
||||
|
||||
3CEh index 46h (R/W): Page Register 1
|
||||
bit 0-7 Bank number in 4KB units for accesses to A800h-AFFFh
|
||||
If index 40h bit 0 is set this value must be 8 larger than the value
|
||||
in index 45h (8*4k = 32k) to provide a 64k unified window. If index
|
||||
40h bit 0 is clear this value should be the same as in index 45h.
|
||||
|
||||
3CEh index 48h (R/W):
|
||||
bit 0-3 High Area Memory (0=disabled, 1-0Eh = the 1MB boundary the HMA
|
||||
starts at). The HMA is a 1MB continuos mapping of the video buffer.
|
||||
0-7 (QVision) Lower 8 bits of the HMA start address
|
||||
|
||||
3CEh index 49h (R/W):
|
||||
bit 0-7 (QVision) Upper 8 bits of the HMA start address
|
||||
|
||||
3CEh index 50h (R/W): (QVision)
|
||||
bit 0-2 ??
|
||||
3-6 Monitor (0,2,6??)
|
||||
00h Compaq Internal Monitor
|
||||
02h Compaq 16" Advanced Graphics Color Monitor
|
||||
03h Compaq 1024 Color Monitor
|
||||
04h QVision 200 (20") Color Monitor
|
||||
05h Compaq SVGA Color Monitor
|
||||
06h QVision 150 (15") Color Monitor or
|
||||
Compaq 151 FS Color Monitor
|
||||
0Eh Compaq 14" VGA Monitor (31.5 kHz)
|
||||
7 ??
|
||||
|
||||
3CEh index 51h (R/W): (QVision)
|
||||
bit 0 Divides clock by ~3.5 if set ???
|
||||
1-2 ??
|
||||
3 If clear blanks the left half of the display ??
|
||||
4 Clock ??
|
||||
5 Horizontal Retrace End bit 5. Bits 0-4 are in 3d4h index 5 bits 0-4.
|
||||
6 Vertical Total bit 10. Bits 0-7 are in 3d4h index 6, bits 8&9 are
|
||||
in 3d4h index 7.
|
||||
7 Vertical Retrace Start bit 10. Bits 0-7 are in 3d4h index 10h.
|
||||
|
||||
3CEh index 52h (R/W):
|
||||
bit 0
|
||||
|
||||
3CEh index 54h (R/W): Available Memory (QVision)
|
||||
bit 0-7 Video Memory. 2: 512k, 4: 1024k, 8: 2048k
|
||||
Note: For the QVision 1024, 0 apparently means 1024KB.
|
||||
|
||||
3CEh index 55h (R/W): PLL Clock
|
||||
bit 0-7 ??
|
||||
|
||||
3CEh index 56h (R/W): Controller Capabilities (QVision)
|
||||
bit 0-1 ??
|
||||
2 Set for QVision 1280, clear for QVision 1024
|
||||
3-7 ??
|
||||
|
||||
3CEh index 57h (R/W): Controller Capabilities II (QVision)
|
||||
bit 0-7 ??
|
||||
|
||||
3CEh index 5Ah (R/W): (QVision)
|
||||
bit 0-5 1 for copy, 2 for fill
|
||||
6-7 Set to 3 or 0 ??
|
||||
|
||||
3CEh index 80h (R/W): (?)
|
||||
bit 2-3 2=Plasma system.
|
||||
4-6 Palette option: 1=Standard palette, 2=Option B, 5=option A,
|
||||
6=option C.
|
||||
|
||||
3CEh index 81h (R/W): (?)
|
||||
bit 2 Set for Palette option A-C and Standard palette, clear for option D.
|
||||
|
||||
13C6h - 13C9h are implemented as DAC regs REG0A,REG0B,REG08 and REG09 for the
|
||||
QVision (DAC has RS2 = 0 and RS3 = 1).
|
||||
|
||||
23C0h W(R/W): Source Address (IVGS, AVGA only)
|
||||
bit 0-15 Address of source in DWORDs (256colors) or bytes (16colors).
|
||||
(AVGA) Bit 16-17 are in 23C4h.
|
||||
The exact address and size of the BitBLT can be adjusted by
|
||||
33C0h,33C1h,33C8h and 33C9h
|
||||
|
||||
23C2h (R/W): Width of area (IVGS, AVGA only)
|
||||
bit 0-7 Width in DWORDs of the Blit area.
|
||||
|
||||
23C2h W(R/W): Width of BitBLT operation (QVision only)
|
||||
bit 0-9 Width of the BitBLT area in pixels
|
||||
|
||||
23C4h W(R/W): Height of the BitBLT area
|
||||
bit 0-9 Number of lines in Blit area.
|
||||
10-11 (AVGA) Bit 8-9 of the Scanline Width. Bit 0-15 are in
|
||||
12-13 (AVGA) Bit 16-17 of the distance. Bit 0-15 are in 23CCh.
|
||||
14-15 (AVGA) Bit 16-17 of Source address. Bit 0-15 are in 23C0h.
|
||||
|
||||
23C6h (R/W):
|
||||
|
||||
23C7h (R/W):
|
||||
bit 2 Set to enable Linear Frame Buffer.
|
||||
4 Set to use 16K banks, clear to use original 4K banks
|
||||
|
||||
23CAh W(R/W): Scanline width. (IVGS, AVGA only)
|
||||
bit 0-15 Width of destination in DWORDs (256color) or bytes (16color).
|
||||
Negative if moving backwards.
|
||||
|
||||
23CCh W(R/W): Destination Address (IVGS, AVGA only)
|
||||
bit 0-15 Distance between the Destination and the Source Address in DWORDs
|
||||
(256colors) or bytes (16colors).
|
||||
(AVGA) Bit 16-17 are in 23C4h bit 12-13.
|
||||
|
||||
23CCh W(R/W): Scanline Width (QVision)
|
||||
bit 0- Bytes per scanline in the destination in units of 4 (DWORDs).
|
||||
|
||||
23CEh W(R/W): Scanline width. (IVGS, AVGA only)
|
||||
bit 0-15 Width of destination in DWORDs. Negative if moving backwards.
|
||||
Note: one must be source and the other destination width
|
||||
|
||||
33C0h (R/W): (IVGS, AVGA only)
|
||||
bit 0-7 Start pixel of BitBLT source
|
||||
|
||||
33C1h (R/W): (IVGS, AVGA only)
|
||||
bit 0-7 Ending pixel of BitBLT destination
|
||||
|
||||
33C7h (R/W): (IVGS, AVGA only)
|
||||
|
||||
|
||||
33C8h (R/W): (IVGS, AVGA only)
|
||||
bit 0-1
|
||||
Note: this is the same register as 3CEh index 3 ??
|
||||
|
||||
33C9h (R/W): (IVGS, AVGA only)
|
||||
|
||||
33CAh W(R/W): Fore/Back ground color ?
|
||||
|
||||
33CCh W(R/W): Fore/Background color
|
||||
Note: Apparently the Fore/Background color registers must be written twice to
|
||||
work properly.
|
||||
|
||||
33CEh (R/W): COP Status/Command
|
||||
bit 0 (R) If set the CoProcessor is busy.
|
||||
0-5 (W) 11h = Copy. 9 = Fill.
|
||||
6 (W) Copy/Fill backwards if set
|
||||
|
||||
33CFh (R/W):
|
||||
|
||||
63C0h W(R/W): Source Bitmap X-address (QVision only)
|
||||
bit 0-9 The X co-ordinate of the start of the Source Data.
|
||||
|
||||
63C2h W(R/W): Source Bitmap Y-address (QVision only)
|
||||
bit 0-9 The Y co-ordinate of the start of the Source Data.
|
||||
|
||||
63C4h (R/W):
|
||||
|
||||
63C5h (R/W):
|
||||
|
||||
63CAh (R/W):
|
||||
bit 0-2 1=4bit packed, 3=8bit packed, 5= 15bit, 7=24 bit (packed as RGBa)
|
||||
6 After loading the BitMap Address and Size registers, wait for this
|
||||
bit to be 0 before setting final registers and starting the
|
||||
command.
|
||||
7 Wait for this bit to be 0, before loading the Source/Destination
|
||||
address and BitMap size registers.
|
||||
|
||||
63CBh (R/W):
|
||||
bit 0 Set for 2Mb?
|
||||
2-3 Scanline Width. 0: 512 pixels/line, 1: 1024 pixels/line, 2: 2048
|
||||
pixels/line
|
||||
4-6 Set to 7 ?
|
||||
|
||||
63CCh W(R/W): Destination Bitmap X-address (QVision only)
|
||||
bit 0-9 The X co-ordinate of the start of the Destination Data
|
||||
|
||||
63CEh W(R/W): Destination Bitmap Y-address (QVision only)
|
||||
bit 0-9 The Y co-ordinate of the start of the Destination Data
|
||||
|
||||
83C4h (): Virtual Controller Select (QVision only)
|
||||
|
||||
83C6h-83C9h Extra DAC registers (RS2 = 1) on the AVGA and QVision boards
|
||||
|
||||
93C6h-93C9h Extra DAC registers (RS2 = 1, RS3 = 1) on QVision boards
|
||||
|
||||
93C6h W(R/W): Hardware Cursor Y-position
|
||||
bit 0-9 The X-position of the right pixel of the hardware cursor.
|
||||
|
||||
93C8h W(R/W): Hardware Cursor X-position
|
||||
bit 0-9 The Y-position of the lower scanline of the hardware cursor.
|
||||
|
||||
Note: Registers 3C6h-3C9h, 13C6h-13C9h, 83C6h-83C9h and 93C6h-93C9h are
|
||||
physically in the Brooktree DAC.
|
||||
|
||||
|
||||
The AVGA connects A15 to RS2 on the DAC so 4 extra DAC registers are
|
||||
accessible at 83C6h-83C9h (if supported by the DAC), and the QVision
|
||||
connects A15 to RS2 and A12 to RS3 so 12 extra DAC registers are available
|
||||
at 83C6h-83C9h, 13C6h-13C9h and 93C6h-93C9h (if supported by the DAC).
|
||||
|
||||
ID Compaq super VGA:
|
||||
|
||||
old:=rdinx($3CE,$F);
|
||||
wrinx($3CE,$F,0);
|
||||
if not testinx($3CE,$45) then
|
||||
begin
|
||||
wrinx($3CE,$F,5);
|
||||
if testinx($3CE,$45) then
|
||||
begin
|
||||
SubVers:=rdinx($3CE,$C) shr 3;
|
||||
case SubVers of
|
||||
3:name:='Compaq IVGS';
|
||||
5:name:='Compaq AVGA';
|
||||
6:name:='Compaq QVision 1024';
|
||||
$E:if (rdinx(GRC,$56) and 4)>0 then name:='Compaq QVision 1280'
|
||||
else name:='Compaq QVision 1024';
|
||||
$10:name:='Compaq AVPort';
|
||||
else UNK(Compaq)
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
wrinx($3CE,$F,old);
|
||||
|
||||
|
||||
|
||||
Video Modes:
|
||||
18h T 132 43 (AVGA) Mono
|
||||
19h T 132 25 (AVGA) Mono
|
||||
1Ah T 132 28 (AVGA) Mono
|
||||
1Bh T 132 50 (AVGA) Mono
|
||||
1Ch T 132 60 (AVGA) Mono
|
||||
22h T 132 43
|
||||
23h T 132 25
|
||||
24h T 132 28
|
||||
27h T 132 50
|
||||
28h T 132 60
|
||||
29h G 800 600 16c PL4
|
||||
2Eh G 640 480 256c P8. Each scan line is 1024 bytes wide.
|
||||
Remaining modes only supported by QVision boards:
|
||||
32h G 640 480 256c P8 Each scan line is 1024 bytes wide
|
||||
33h G 640 400 256c P8 Each scan line is 1024 bytes wide
|
||||
34h G 800 600 256c P8 Each scan line is 1024 bytes wide
|
||||
37h G 1024 768 16c PK4
|
||||
38h G 1024 768 256c P8
|
||||
39h G 1280 1024 16c PK4
|
||||
3Ah G 1280 1024 256c P8 Each scan line is 2048 bytes wide
|
||||
3Eh G 640 480 32k P15
|
||||
40h G 640 400 2 Compaq Portable only
|
||||
4Dh G 512 480 16m P32 Four bytes per pixel
|
||||
4Eh G 640 400 16m P32 Four bytes per pixel
|
||||
|
||||
|
||||
BitBLTs:
|
||||
|
||||
There appear to be two different systems: mode 2Eh uses a system based on the
|
||||
memory address of the bitmaps involved, and with some fields packed.
|
||||
Is this to keep compatibility with something ??
|
||||
Mode 32h, 37h and 38h use a system based on the pixel addresses of the bitmaps
|
||||
Also some of the registers appear to be mapped to more than one address ??
|
||||
I.e.. drivers some times adds a value to the register address.
|
||||
|
||||
|
||||
Compaq BIOS extensions:
|
||||
|
||||
----------10BF00-----------------------------
|
||||
INT 10 - VIDEO - Compaq Portable Extensions - SELECT EXTERNAL MONITOR
|
||||
AX = BF00h
|
||||
Note: all registers preserved and the internal monitor is blanked
|
||||
the external monitor becomes the active monitor
|
||||
----------10BF01-----------------------------
|
||||
INT 10 - VIDEO - Compaq Portable Extensions - SELECT INTERNAL MONITOR
|
||||
AX = BF01h
|
||||
Note: all registers preserved and the external monitor is blanked
|
||||
the internal monitor becomes the active monitor
|
||||
----------10BF02-----------------------------
|
||||
INT 10 - VIDEO - Compaq Portable Extensions - SET MASTER MODE OF CURRENT CTRLR
|
||||
AX = BF02h
|
||||
BH = master mode
|
||||
04h CGA
|
||||
05h EGA
|
||||
07h MDA
|
||||
----------10BF03BX0000-----------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Get Environment
|
||||
AX = BF03h
|
||||
BX = 0000h
|
||||
Return: BH = active monitor
|
||||
00h = external
|
||||
01h = internal
|
||||
03h = both
|
||||
04h = neither
|
||||
BL = master mode
|
||||
00h = switchable VDU not present
|
||||
04h = CGA
|
||||
05h = EGA
|
||||
07h = MDA
|
||||
08h = switchable LCD controller present
|
||||
09h = plasma VGA
|
||||
0Ah = TFT (active matrix) VGA
|
||||
CH = 00h (reserved)
|
||||
(QVision) Bits 3-7: Chip ID (from 3CEh index 0Ch):
|
||||
06h QVision 1024
|
||||
0Eh QVision 1024 or 1280
|
||||
CL = switchable VDU mode supported
|
||||
bit 0 = CGA supported
|
||||
bits 1,2 = reserved (1)
|
||||
bit 3 = MDA supported
|
||||
bits 4-7 = reserved (1)
|
||||
(QVision)
|
||||
Bit 0 Set if extended modes are enabled
|
||||
4 BitBLT engine available if set
|
||||
5 132-coloumn support available if set
|
||||
6 640x480x256 mode available if set
|
||||
7 8-bit DAC mode (256c of 16m) available if set
|
||||
DH = internal monitor type (see below)
|
||||
DL = external monitor type
|
||||
00h = none
|
||||
01h = dual-mode monitor
|
||||
02h = 5153 RGB monitor (RGBI 16-color)
|
||||
03h = Compaq Color monitor
|
||||
04h = 640x400 flat panel (Plasma CGA)
|
||||
05h = VGC monochrome
|
||||
06h = VGC color
|
||||
07h = 8-level mono LCD VGA (internal)
|
||||
1024x768 mono VGA (external)
|
||||
08h = 16-level mono plasma VGA (internal)
|
||||
1024x768 color VGA (external)
|
||||
09h = 4-level mono LCD CGA
|
||||
0Ah = 16-level mono LCD VGA
|
||||
0Bh = active-matrix color VGA
|
||||
0Ch = active-matrix mono VGA
|
||||
0Dh = STN color VGA
|
||||
----------10BF04-----------------------------
|
||||
INT 10 - VIDEO - Compaq Portable Extensions - Set Mode Switch Delay
|
||||
AX = BF04h
|
||||
BH = new state of delay
|
||||
00h enabled
|
||||
01h disabled
|
||||
----------10BF05-----------------------------
|
||||
INT 10 - VIDEO - Compaq Systempro Extensions - Enable/Disable Display
|
||||
AX = BF05h
|
||||
BH = new state of video
|
||||
00h off
|
||||
01h on
|
||||
----------10BF06-----------------------------
|
||||
INT 10 - VIDEO - Compaq SLT/286 - Read Gray Scale Table
|
||||
AX = BF06h
|
||||
CL = address to be read from grey scale table
|
||||
Return: AL = bit 3-0 - Value read from grey scale table
|
||||
CL = address to be read from grey scale table
|
||||
----------10BF07-----------------------------
|
||||
INT 10 - VIDEO - Compaq SLT/286 - Write Gray Scale Table
|
||||
AX = BF07h
|
||||
CH = value to write to grey scale table
|
||||
CL = address to be written to grey scale table
|
||||
----------10BF08-----------------------------
|
||||
INT 10 - VIDEO - Compaq SLT/286 - Write Color Mix Registers
|
||||
AX = BF08h
|
||||
CH = bits 7-4 - Green weight
|
||||
bits 3-0 - Blue weight
|
||||
CL = bits 7-4 - unused
|
||||
bits 3-0 - Red weight
|
||||
----------10BF09-----------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Turn On Reverse Video
|
||||
AX = BF09h
|
||||
Return: CF clear
|
||||
Note: sets bit 6 of port 03CEh index 81h; in some cases also sets index 84h
|
||||
to 6Fh and index 83h to 04h
|
||||
Note: supported by at least the QVision board and the LTE Lite ROM BIOS
|
||||
----------10BF0A-----------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Turn Off Reverse Video
|
||||
AX = BF0Ah
|
||||
Return: CF clear
|
||||
Note: clears bit 6 of port 03CEh index 81h; in some cases also sets index 84h
|
||||
to 80h and index 83h to FBh
|
||||
Note: supported by at least the QVision board and the LTE Lite ROM BIOS
|
||||
--------b-10BF0B-----------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Check Whether Video Reversed
|
||||
AX = BF0Bh
|
||||
Return: CF clear
|
||||
AX = state (0000h normal video, 0001h reversed video)
|
||||
Note: supported by at least the QVision board and the LTE Lite ROM BIOS
|
||||
----------10BF0C------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Set 6bit DAC Mode
|
||||
AX = BF0Ch
|
||||
Return: CF clear
|
||||
Desc: specify that video DAC registers use only six bits of color info
|
||||
Note: supported by AVGA, QVision boards and the SystemPro XL ROM BIOS
|
||||
----------10BF0D------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Set 8bit DAC Mode
|
||||
AX = BF0Dh
|
||||
Return: CF clear
|
||||
Desc: specify that video DAC registers use all eight bits of color info
|
||||
Note: supported by AVGA, QVision boards and the SystemPro XL ROM BIOS
|
||||
----------10BF0E------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Get DAC Resolution
|
||||
AX = BF0Eh
|
||||
Return: AL = 00h if DAC in 6bit mode
|
||||
01h if DAC in 8bit mode
|
||||
CF clear
|
||||
Note: supported by AVGA, QVision boards and the SystemPro XL ROM BIOS
|
||||
----------10BF0F------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Set Linear Video Buffer Address
|
||||
AX = BF0Fh
|
||||
BX = Linear Video Buffer Address in megabytes, or
|
||||
0FFFFh to let ROM configure Linear Video Buffer Address
|
||||
Return: AX = previous Linear Video Buffer Address
|
||||
CF clear
|
||||
Note: supported by AVGA, QVisions board and the SystemPro XL & LTE Lite ROM
|
||||
BIOSes
|
||||
----------10BF10------------------------------------
|
||||
INT 10 - VIDEO - Compaq QVision - Get Linear Video Buffer Address
|
||||
AX = BF10h
|
||||
Return: AX = Linear Video Buffer Address in megabytes
|
||||
CF clear
|
||||
Note: supported by AVGA, QVision boards and the SystemPro XL & LTE Lite ROM
|
||||
BIOSes
|
||||
----------10BF11------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - Get Extended Environment
|
||||
AX = BF11h
|
||||
Return: AL = BFh
|
||||
CF clear
|
||||
ES:SI -> Advanced Functionality Table (4 bytes):
|
||||
Bit 1 132-column modes supported if set
|
||||
2 Set for QVision 1280's
|
||||
4 Standard VGA modes supported if set
|
||||
5 Accelerated VGA modes supported if set
|
||||
6 Advanced VGA modes supported if set
|
||||
7 QVision modes supported if set
|
||||
8 Set for QVision 1280 and 1024's, clear for original
|
||||
QVision
|
||||
12-15 Video memory in 256K units, 0=256K, 1=512K...
|
||||
Typical values are:
|
||||
000030F2h Original QVision w/1MB??
|
||||
000010F2h Original QVision w/512K??
|
||||
000031F2h QVision 1024 w/1MB
|
||||
000031F6h QVision 1280 w/1MB
|
||||
000071F2h QVision 1024 w/2MB
|
||||
000071F6h QVision 1280 w/2MB
|
||||
ES:DI -> COMPAQ text and date
|
||||
Note: supported by at least the QVision board and the LTE Lite and ProSignia
|
||||
ROM BIOSes
|
||||
Note: Some sources have the table at ES:DI and the text&date at ES:BX
|
||||
----------10BF12------------------------------------
|
||||
INT 10 - VIDEO - Compaq Extensions - New Active Monitor
|
||||
AX = BF12h
|
||||
BH reserved
|
||||
BL = function mask
|
||||
bit 0 External monitor
|
||||
1 Internal monitor
|
||||
7 If set bits 0 and 1 activate the monitor when set,
|
||||
if clear they toggle the state when set
|
||||
Return: CF clear
|
||||
Note: this function is a NOP if the VGA subsystem is inactive or the current
|
||||
Display Combination Code is 10h or higher
|
||||
Supported by at least the QVision board and the LTE Lite and ProSignia
|
||||
ROM BIOSes
|
||||
----------10BF13------------------------------------
|
||||
INT 10 - VIDEO - Compaq QVision - Gamma Correction
|
||||
AX = BF13h
|
||||
BH = 00h
|
||||
BL = 00h Loads Gamma Correction table for true color mode
|
||||
DS = BIOS data segment
|
||||
01h Select Palette RAM bypass (direct DAC Mode)
|
||||
Note: Only effective for Hi/TrueColor modes. Must be called after the mode has
|
||||
been set and only have effect until the next mode switch
|
||||
----------10BFE0------------------------------------
|
||||
INT 10 - VIDEO - Compaq QVision (later models ??)
|
||||
AX = BFE0h
|
||||
Reference in New Issue
Block a user