Addr | Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 | ||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$9F20 | ADDRx_L (x=ADDRSEL) | VRAM Address (7:0) | |||||||||||
$9F21 | ADDRx_M (x=ADDRSEL) | VRAM Address (15:8) | |||||||||||
$9F22 | ADDRx_H (x=ADDRSEL) | Address Increment | DECR | Nibble Increment | Nibble Address | VRAM Address (16) | |||||||
$9F23 | DATA0 | VRAM Data port 0 | |||||||||||
$9F24 | DATA1 | VRAM Data port 1 | |||||||||||
$9F25 | CTRL | Reset | DCSEL | ADDRSEL | |||||||||
$9F26 | IEN | IRQ line (8) | Scan line (8) | - | AFLOW | SPRCOL | LINE | VSYNC | |||||
$9F27 | ISR | Sprite collisions | AFLOW | SPRCOL | LINE | VSYNC | |||||||
$9F28 | IRQLINE_L (Write only) | IRQ line (7:0) | |||||||||||
$9F28 | SCANLINE_L (Read only) | Scan line (7:0) | |||||||||||
DCSEL=0 | |||||||||||||
$9F29 | DC_VIDEO (DCSEL=0) | Current Field | Sprites Enable | Layer1 Enable | Layer0 Enable | NTSC/RGB: 240P | NTSC: Chroma Disable / RGB: HV Sync | Output Mode | |||||
$9F2A | DC_HSCALE (DCSEL=0) |
Active Display H-Scale | |||||||||||
$9F2B | DC_VSCALE (DCSEL=0) |
Active Display V-Scale | |||||||||||
$9F2C | DC_BORDER (DCSEL=0) |
Border Color | |||||||||||
DCSEL=1 | |||||||||||||
$9F29 | DC_HSTART (DCSEL=1) |
Active Display H-Start (9:2) | |||||||||||
$9F2A | DC_HSTOP (DCSEL=1) |
Active Display H-Stop (9:2) | |||||||||||
$9F2B | DC_VSTART (DCSEL=1) |
Active Display V-Start (8:1) | |||||||||||
$9F2C | DC_VSTOP (DCSEL=1) |
Active Display V-Stop (8:1) | |||||||||||
DCSEL=2 | |||||||||||||
$9F29 | FX_CTRL (DCSEL=2) |
Transp. Writes | Cache Write Enable | Cache Fill Enable | One-byte Cache Cycling | 16-bit Hop | 4-bit Mode | Addr1 Mode | |||||
$9F2A | FX_TILEBASE (DCSEL=2) (Write only) |
FX Tile Base Address (16:11) | Affine Clip Enable | 2-bit Polygon | |||||||||
$9F2B | FX_MAPBASE (DCSEL=2) (Write only) |
FX Map Base Address (16:11) | Map Size | ||||||||||
$9F2C | FX_MULT (DCSEL=2) (Write only) |
Reset Accum. | Accumulate | Subtract Enable | Multiplier Enable | Cache Byte Index | Cache Nibble Index | Two-byte Cache Incr. Mode | |||||
DCSEL=3 | |||||||||||||
$9F29 | FX_X_INCR_L (DCSEL=3) (Write only) |
X Increment (-2:-9) (signed) | |||||||||||
$9F2A | FX_X_INCR_H (DCSEL=3) (Write only) |
X Incr. 32x | X Increment (5:-1) (signed) | ||||||||||
$9F2B | FX_Y_INCR_L (DCSEL=3) (Write only) |
Y/X2 Increment (-2:-9) (signed) | |||||||||||
$9F2C | FX_Y_INCR_H (DCSEL=3) (Write only) |
Y/X2 Incr. 32x | Y/X2 Increment (5:-1) (signed) | ||||||||||
DCSEL=4 | |||||||||||||
$9F29 | FX_X_POS_L (DCSEL=4) (Write only) |
X Position (7:0) | |||||||||||
$9F2A | FX_X_POS_H (DCSEL=4) (Write only) |
X Pos. (-9) | - | X Position (10:8) | |||||||||
$9F2B | FX_Y_POS_L (DCSEL=4) (Write only) |
Y/X2 Position (7:0) | |||||||||||
$9F2C | FX_Y_POS_H (DCSEL=4) (Write only) |
Y/X2 Pos. (-9) | - | Y/X2 Position (10:8) | |||||||||
DCSEL=5 | |||||||||||||
$9F29 | FX_X_POS_S (DCSEL=5) (Write only) |
X Postion (-1:-8) | |||||||||||
$9F2A | FX_Y_POS_S (DCSEL=5) (Write only) |
Y/X2 Postion (-1:-8) | |||||||||||
$9F2B | FX_POLY_FILL_L (DCSEL=5, 4-bit Mode=0) (Read only) |
Fill Len >= 16 | X Position (1:0) | Fill Len (3:0) | 0 | ||||||||
$9F2B | FX_POLY_FILL_L (DCSEL=5, 4-bit Mode=1, 2-bit Polygon=0) (Read only) |
Fill Len >= 8 | X Position (1:0) | X Pos. (2) | Fill Len (2:0) | 0 | |||||||
$9F2B | FX_POLY_FILL_L (DCSEL=5, 4-bit Mode=1, 2-bit Polygon=1) (Read only) |
X2 Pos. (-1) | X Position (1:0) | X Pos. (2) | Fill Len (2:0) | X Pos. (-1) | |||||||
$9F2C | FX_POLY_FILL_H (DCSEL=5) (Read only) |
Fill Len (9:3) | 0 | ||||||||||
DCSEL=6 | |||||||||||||
$9F29 | FX_CACHE_L (DCSEL=6) (Write only) |
Cache (7:0) | Multiplicand (7:0) (signed) | |||||||||||
$9F29 | FX_ACCUM_RESET (DCSEL=6) (Read only) |
Reset Accumulator | |||||||||||
$9F2A | FX_CACHE_M (DCSEL=6) (Write only) |
Cache (15:8) | Multiplicand (15:8) (signed) | |||||||||||
$9F2A | FX_ACCUM (DCSEL=6) (Read only) |
Accumulate | |||||||||||
$9F2B | FX_CACHE_H (DCSEL=6) (Write only) |
Cache (23:16) | Multiplier (7:0) (signed) | |||||||||||
$9F2C | FX_CACHE_U (DCSEL=6) (Write only) |
Cache (31:24) | Multiplier (15:8) (signed) | |||||||||||
DCSEL=63 | |||||||||||||
$9F29 | DC_VER0 (DCSEL=63) (Read only) |
The ASCII character "V" | |||||||||||
$9F2A | DC_VER1 (DCSEL=63) (Read only) |
Major release | |||||||||||
$9F2B | DC_VER2 (DCSEL=63) (Read only) |
Minor release | |||||||||||
$9F2C | DC_VER3 (DCSEL=63) (Read only) |
Minor build number | |||||||||||
$9F2D | L0_CONFIG | Map Height | Map Width | T256C | Bitmap Mode | Color Depth | |||||||
$9F2E | L0_MAPBASE | Map Base Address (16:9) | |||||||||||
$9F2F | L0_TILEBASE | Tile Base Address (16:11) | Tile Height | Tile Width | |||||||||
$9F30 | L0_HSCROLL_L | H-Scroll (7:0) | |||||||||||
$9F31 | L0_HSCROLL_H | - | H-Scroll (11:8) | ||||||||||
$9F32 | L0_VSCROLL_L | V-Scroll (7:0) | |||||||||||
$9F33 | L0_VSCROLL_H | - | V-Scroll (11:8) | ||||||||||
$9F34 | L1_CONFIG | Map Height | Map Width | T256C | Bitmap Mode | Color Depth | |||||||
$9F35 | L1_MAPBASE | Map Base Address (16:9) | |||||||||||
$9F36 | L1_TILEBASE | Tile Base Address (16:11) | Tile Height | Tile Width | |||||||||
$9F37 | L1_HSCROLL_L | H-Scroll (7:0) | |||||||||||
$9F38 | L1_HSCROLL_H | - | H-Scroll (11:8) | ||||||||||
$9F39 | L1_VSCROLL_L | V-Scroll (7:0) | |||||||||||
$9F3A | L1_VSCROLL_H | - | V-Scroll (11:8) | ||||||||||
$9F3B | AUDIO_CTRL | FIFO Full / FIFO Reset | FIFO Empty (read-only) |
16-Bit | Stereo | PCM Volume | |||||||
FIFO Loop (write-only) | |||||||||||||
$9F3C | AUDIO_RATE | PCM Sample Rate | |||||||||||
$9F3D | AUDIO_DATA | Audio FIFO data (write-only) | |||||||||||
$9F3E | SPI_DATA | Data | |||||||||||
$9F3F | SPI_CTRL | Busy | - | Slow clock | Select |