Testing module for ATI graphics stuff
Marcel Sondaar
Educational Purposes
test_ati.bas | Testing module for ATI graphics stuff |
VREGS | Registers common to all Verite-based boards |
Constants | |
VERITE_MEMENDIAN | This register controls the byteswapping performed when writing to the linear framebuffer. |
VERITE_GPUCTL | This register controls the state of the RISC processor It holds several bitflags: 01h - reset chip 02h - hold risc 04h - single step 08h - divide by 2 disable 10h - VGA reset 20h - assert XReset output to ext devices |
VERITE_MODE | This register allows one to select between CRTC modes. |
VERITE_CRTCCTL | CRTC Control register. |
VERITE_CRTCH | Horizontal timing register |
VERITE_CRTCV | Vertical timing register |
Functions | |
TestVerite | runs the test suite for the Verite graphics card |
Registers common to all Verite-based boards
Constants | |
VERITE_MEMENDIAN | This register controls the byteswapping performed when writing to the linear framebuffer. |
VERITE_GPUCTL | This register controls the state of the RISC processor It holds several bitflags: 01h - reset chip 02h - hold risc 04h - single step 08h - divide by 2 disable 10h - VGA reset 20h - assert XReset output to ext devices |
VERITE_MODE | This register allows one to select between CRTC modes. |
VERITE_CRTCCTL | CRTC Control register. |
VERITE_CRTCH | Horizontal timing register |
VERITE_CRTCV | Vertical timing register |
Functions | |
TestVerite | runs the test suite for the Verite graphics card |
This register controls the byteswapping performed when writing to the linear framebuffer.
0 | no byteswapping |
1 | 32-bit byteswapping |
2 | 16-bit byteswapping |
3 | swap halfwords |
This register controls the state of the RISC processor It holds several bitflags: 01h - reset chip 02h - hold risc 04h - single step 08h - divide by 2 disable 10h - VGA reset 20h - assert XReset output to ext devices
This register allows one to select between CRTC modes. One can choose between VGA, VESA and Native mode by encoding the proper bits
01h | Decode 0xA0000. |
02h | Operate in VGA Mode. This will enable A0000-BFFFF indepent of bit 1 |
04h | 32-bit VGA |
CRTC Control register. 32-bits in size, contains several flags and pixel formats
0000000F | color format |
00000010 | CRTCCTL_VIDEOFIFOSIZE128 |
00000020 | CRTCCTL_ENABLEDDC |
00000040 | CRTCCTL_DDCOUTPUT |
00000080 | CRTCCTL_DDCDATA |
00000100 | CRTCCTL_VSYNCHI |
00000200 | CRTCCTL_HSYNCHI |
00000400 | CRTCCTL_VSYNCENABLE |
00000800 | CRTCCTL_HSYNCENABLE |
00001000 | CRTCCTL_VIDEOENABLE |
00002000 | CRTCCTL_STEREOSCOPIC |
00004000 | CRTCCTL_FRAMEDISPLAYED |
00008000 | CRTCCTL_FRAMEBUFFERBGR |
00010000 | CRTCCTL_EVENFRAME |
00020000 | CRTCCTL_LINEDOUBLE |
00040000 | CRTCCTL_FRAMESWITCHED |
4 | 16 bpp (R5-G6-B5) |
5 | 16 bpp (R4-G4-B4-X4) |
12 | 32 bpp (R8-G8-B8-X8) |
Sub TestVerite( board_model As Long, board_version As Long, lfb As Long, portbase As Long )
runs the test suite for the Verite graphics card
board_model | the board type. 1 for a V1k, 2 for a V2k |
board_version | the board rating. 1 for a V2100, 2 for a V2200, 0 if unknown |
lfb | address of the framebuffer in memory |
portbase | the base I/O port for the Verite registers |
runs the test suite for the Verite graphics card
Sub TestVerite( board_model As Long, board_version As Long, lfb As Long, portbase As Long )