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

📄 ai.txt

📁 比较详尽的VGA端口寄存器的文档
💻 TXT
📖 第 1 页 / 共 4 页
字号:
 Offset: Type:   Description:
   00h   WORD    Length of data following(0 or 8 (or 13 for XGA and
                 ImageAdapter/A versions))
       Following fields only present if length >=8
   02h   WORD    Left limit (low X)
   04h   WORD    Right limit (high X)
   06h   WORD    Bottom limit (high Y)
   08h   WORD    Top limit (low Y)
       Following fields only present if length =13 (XGA and ImageAdapter/A)
   0Ah   DWORD   Address of monochrome mask map. Only pixels with 1 in the
                 mask map can be updated.
   0Eh   BYTE    Reserved, must be 80h

function 15h HBBW(X) - BitBlt Write Image Data
 Defines the screen area to be written by the HBBCBN command(s) following
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(10 or 18)
   02h   WORD    Type of BitBlt:
                   0:  Writes a single plane. The source pattern is packed 8
                       bits to a byte.
                   1:  Writes all planes, the source data is packed.
                       Only supported in XGA versions of the AI.
                   8:  Writes all planes, source data has one pixel per byte
   04h   WORD    Width of block in pixels
   06h   WORD    Height of block in lines
   08h   WORD    Source X coordinate - left
   0Ah   WORD    Source Y coordinate - top

       The following fields are only present if the length is set to 18:
       If set the destination buffer is defined as a rectangle and the data
       is transferred to a rectangle within the buffer rectangle.

   0Ch   WORD    Offset of the destination rectangle from the left edge of
                 the larger data buffer rectangle.
   0Eh   WORD    Starting line in the data buffer
   10h   WORD    Width of the data buffer in bytes
   12h   WORD    Height of the data buffer in lines

function 16h HCBBW(X) - BitBlt Write Image Data at Current Position
 Defines the screen area to be written by the HBBCBN command(s) following
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(6 or 14)
   02h   WORD    Type of BitBlt:
                   0:  Writes a single plane. The source pattern is packed 8
                       bits to a byte.
                   1:  Writes all planes, the source data is packed.
                       Only supported in XGA versions of the AI.
                   8:  Writes all planes, source data has one pixel per byte
   04h   WORD    Width of block in pixels
   06h   WORD    Height of block in lines

       The following fields are only present if the length is set to 14:
       If set the destination buffer is defined as a rectangle and the data
       is transferred to a rectangle within the buffer rectangle.

   08h   WORD    Offset of the destination rectangle from the left edge of
                 the larger data buffer rectangle.
   0Ah   WORD    Starting line in the data buffer
   0Ch   WORD    Width of the data buffer in bytes
   0Eh   WORD    Height of the data buffer in lines

function 17h HBBR(X) - BitBlt Read image Data
 Defines the screen area to be read by the HBBCBN command(s) following
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(12 or 20)
   02h   WORD    Type of BitBlt:
                   0:  Reads a single plane. The plane is selected by byte 8
                       The resulting bits are packed 8 to a byte.
                   1:  Reads all planes, pack pixels as much as possible
                       Only supported in XGA versions of the AI.
                   8:  Reads all planes, one pixel per byte.
   04h   WORD    Width of block in pixels
   06h   WORD    Height of block in lines
   08h   BYTE    Selects the source plane for single plane reads
   09h   BYTE    Reserved
   0Ah   WORD    Source X coordinate - left
   0Ch   WORD    Source Y coordinate - top

       The following fields are only present if the length is set to 20:
       If set the destination buffer is defined as a rectangle and the data
       is transferred to a rectangle within the buffer rectangle.

   0Eh   WORD    Offset of the destination rectangle from the left edge of
                 the larger data buffer rectangle.
   10h   WORD    Starting line in the data buffer
   12h   WORD    Width of the data buffer in bytes
   14h   WORD    Height of the data buffer in lines

function 18h HBBCHN(X) - BitBlt Chained Data
 Defines the data buffer used by a preceding HBBR, HBBW or HCBBW command
 Parameter Block:
 Offset:  Type:  Description:
   00h    WORD   Length of data following(6)
   02h    DWORD  Address of data buffer
   06h    WORD   Number of bytes in buffer
Note: Multiple buffers can be used to transfer a full image.

function 19h HBBC(X) - Bitblt Copy
 Copies the source area to the destination area. Overlapping areas are
 handled correctly.
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(16)
   02h   WORD    Type of Bitblt:
                   0: Across-the-plane copying (color expansion).
                      One plane (bit of each pixel - selected by Byte 8 of
                      this record) holds the monochrome map which is
                      expanded. Each 1 bit in the mono map causes the
                      corresponding pixel in the destination to be written
                      in the foreground color & mix, 0 bits causes writes
                      in the background color & mix.
                   8: Through-the-plane copying. The source is copied to
                      the destination with the foreground mix.
                 Note: one source claims 1 will also cause Through-the-plane
                       copying like 8.
   04h   WORD    Width of area
   06h   WORD    Height of area
   08h   BYTE    Source plane for bit expansion. For color expansions this
                 selects the plane which holds the monochrome map.
   09h   BYTE    Reserved
   0Ah   WORD    Source X coordinate - left edge
   0Ch   WORD    Source Y coordinate - top
   0Eh   WORD    Source X coordinate - left edge
   10h   WORD    Source Y coordinate - top

function 1Ah HSCOORD(X) - Set Coordinate Types
 Sets the coordinate formats used.
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(3)
   02h   BYTE    Absolute coordinate format
                 bit 0-3  Number of fractional bytes. Default = 0
                     4-7  Number of bytes per coordinate. Default = 2
   03h   BYTE    Relative coordinate format
                 bit 0-3  Number of fractional bytes. Default = 0
                     4-7  Number of bytes per coordinate. Default = 1
   04h   BYTE    Number of dimensions: 2, 3 or 4

function 1Bh HQCOORD(X) - Query Coordinate Types
 Informs whether specific coordinate formats are supported
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(4)
   02h   BYTE    Absolute coordinate format
                 bit 0-3  Number of fractional bytes. Default = 0
                     4-7  Number of bytes per coordinate. Default = 2
   03h   BYTE    Relative coordinate format
                 bit 0-3  Number of fractional bytes. Default = 0
                     4-7  Number of bytes per coordinate. Default = 1
   04h   BYTE    Number of dimensions. Only 2 supported
   05h   BYTE    Returned test results
                 bit 5  Set if specified dimension not supported
                     6  Set if specified dimension not supported
                     7  Set if specified dimension not supported

function 1Ch HSMODE(X) - Set Mode
 Sets a new mode
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(1, 2 for XGA or ImageAdapter/A)
   02h   BYTE    Adapter mode number
                   0:  1024x 768  with 12x20 char cell
                   1:   640x 480  with  8x14 char cell
                   2:  1024x 768  with  8x14 char cell
                   3:  1024x 768  with  7x15 char cell
                      Remaining in ATI versions only:
                   8:   800x 600  with  8x14 char cell
                  10:  1280x1024  with  7x15 char cell
       Remaining field only present if length = 2:
   03h   BYTE    Clear memory flag. 0: clear all memory, 80h don't clear

function 1Dh HQMODE(X) - Query Current Mode
 Returns the current mode and configuration
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(18, 20 for XGA or ImageAdapter/A)
   02h   BYTE    Mode number.
                  0: 1024x768, 12x20 char cell
                  1:  640x480,  8x14 char cell
                  2: 1024x768,  8x14 char cell
                  3: 1024x768,  7x15 char cell
   03h   WORD    Driver code level
                 Bit 0-4  Release number (starts from 0)
                       5  0: 4plane board, 1: 8plane board
                       6  (8514/A) Minimum CPU level
                            8086 or 80286 ?
                     6-7  (XGA/Image Adapter) Minimum CPU level
                            0: 80286, 1: 8086, 2: 80386
                    8-11  (XGA/Image Adapter) Specification level
                            0: level 1.0, 1: level 1.2, 2: level 2.0
                   12-15  (XGA/Image Adapter) Operation system
                            0: MS/PC-DOS

   05h   BYTE    Adapter Type.
                  3: 8514/A, 4: XGA, 5: Image Adapter/A
   06h   BYTE    Reserved
   07h   BYTE    Text cell width in pixels
   08h   BYTE    Text cell height in pixels
   09h   BYTE    Number of planes
   0Ah   WORD    Screen width in pixels
   0Ch   WORD    Screen height in lines
   0Eh   WORD    Pixels/inch - horizontally
   10h   WORD    Pixels/inch - vertically
                   59  for 640x480 on IBM 8514 monitor
                   79  for 640x480 on IBM 8512 or 8513 monitor
                   92  for 1024x768 on IBM 8514 monitor
   12h   BYTE    00h for monochrome, 0FFh for color display
   13h   BYTE    Intensity levels, I.e the number of bits the DAC can handle
                 for each of the 3 basic colors.
                   0: non-loadable palette
                   6: original 8514/A and XGA
                   8: XGA-NI

      Remaining fields only in XGA and Image Adapter/A version
   14h   BYTE    Software area fill plane required (set to 1)
   15h   BYTE    VGA mode support. 1 if a VGA compatible mode exists, 0 if not

function 1Eh HQMODES(X) - Query Adapter Modes
 Returns a list of the supported modes, considering video memory and monitor
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(33)
   02h   BYTE    Adapter type
   03h 32BYTEs   Mode list. Terminated by 0FFh.

function 1Fh HQDPS(X) - Query Drawing Process State Size
 Returns the size of various structures
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(6, 14 for XGA version)
   02h   WORD    Task buffer size in bytes
   04h   WORD    Stack usage in bytes
   06h   WORD    Palette save buffer in bytes

      Remaining fields only in the XGA version
   08h   DWORD   Amount of VRAM in bytes
   0Ch   DWORD   Amount of VRAM (in bytes) required for area fill plane

function 20h HRECT(X) - Fill Rectangle
 Fills a rectangle with the current area pattern
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(8, 8*Number_of_rects for the
                                         XGA and ImageAdapter/A versions)
   02h   WORD    X-coordinate of top-left corner (top row)
   04h   WORD    Y-coordinate of top-left corner (left edge)
   06h   WORD    Width of the rectangle in pixels
   08h   WORD    Height of the rectangle in lines
Note: For the XGA and ImageAdapter/A versions the rectangle data (byte 2-9) is
      repeated as many times as required by the length field.

function 21h HSBP(X) - Set Bit Plane Controls
 Enables or disables specific planes. Each set bit enables the plane, each
 clear bit disables it. Only the number of loworder bits from each field
 relevant to the current mode are used, I.e 4 in 16color modes and 8 in
 256color modes
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(12, 26 for XGA and ImageAdapter/A)
   02h   DWORD   Plane enable for graphics. Controls all writes to video
                 memory for drawing and regular text operations
   06h   DWORD   Plane enable for alphanumerics. Controls all writes to video
                 memory for alphanumeric operations.
   0Ah   DWORD   Plane enable for display. Controls which planes are displayed
       Remaining fields only available in XGA and ImageAdapter/A versions
   0Eh   BYTE    Flags, must be 0
   0Fh   BYTE    Reserved(0)
   10h   DWORD   Green bits mask
   14h   DWORD   Red bits mask
   18h   DWORD   Blue bits mask

function 22h HCLOSE(X) - Close Adapter
 Closes down the AI and switches to VGA
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(1)
   02h   BYTE    Reserved, must be 0
Note: one source claims the length is 0 rather than 1.

function 23h HESC(X) - Escape, Terminate Processing
 Terminates any current drawing operation
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(0)
Note: this has no effect in the XGA version

function 24h HXLATE(X) - Assign Multi-Plane Text Color Index Table
 Sets the color translation table for multiplane fonts.
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(32)
   02h  8 DWORDs Color translation table for multiplane fonts, which can have
                  8 colors which are found by combining 1 bit from of 3 planes

function 25h HSCS(X) - Set Character Set
 Sets the current character set
 Parameter Block:
 Offset: Type:   Description:
   00h   WORD    Length of data following(4)
   02h   DWORD   Ptr to font definition.
                 This area should not be changed until HSCS is called again

function 26h HCHST(X) - Text Character String at Given Position
 Writes a text string at the given (X,Y) position in the current font.
 Parameter Block:

⌨️ 快捷键说明

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