⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 compaq.txt

📁 比较详尽的VGA端口寄存器的文档
💻 TXT
📖 第 1 页 / 共 2 页
字号:
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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -