x68000:crtc_registers
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionLast revisionBoth sides next revision | ||
x68000:crtc_registers [2017/08/14 08:29] – created neko68k | x68000:crtc_registers [2019/01/20 04:17] – some clarification for GVRAM sizes re: display masks. neko68k | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | === Overview === | ||
+ | |||
== Horizontal timing control == | == Horizontal timing control == | ||
^Address^Size^R/ | ^Address^Size^R/ | ||
Line 41: | Line 43: | ||
|$E8002E|1.w|W|R23|TVRAM access mask pattern| | |$E8002E|1.w|W|R23|TVRAM access mask pattern| | ||
|$E80481|1.b|R/ | |$E80481|1.b|R/ | ||
+ | |||
+ | === Details === | ||
+ | |||
+ | CRTC R00($e80000): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | HSYNC period × horiz width | ||
+ | R00 = ────────────────────────── -1 | ||
+ | Display period × 8 | ||
+ | ※LSB must be 1 | ||
+ | |||
+ | CRTC R01($e80002): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | HSYNC pulse width × horiz width | ||
+ | R01 = ───────────────────────────────── -1 | ||
+ | | ||
+ | |||
+ | CRTC R02($e80004): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | (HSYNC pulse width + horiz back porch) × horiz width | ||
+ | R02 = ───────────────────────────────────────────────────── -5 | ||
+ | | ||
+ | |||
+ | CRTC R03($e80006): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | (HSYNC pulse width - horiz front porch) × horiz width | ||
+ | R03 = ────────────────────────────────────────────────────── -5 | ||
+ | Display period × 8 | ||
+ | |||
+ | CRTC R04($e80008): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | VSYNC period | ||
+ | R04 = ──────────── -1 | ||
+ | HSYNC period | ||
+ | |||
+ | CRTC R05($e8000a): | ||
+ | bit 15 8 7 0 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │ | ||
+ | └───────────────┴───────────────┘ | ||
+ | VSYNC pulse width | ||
+ | R05 = ───────────────── -1 | ||
+ | HSYNC period | ||
+ | |||
+ | CRTC R06($e8000c): | ||
+ | bit 15 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ │ VDISP start │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | VSYNC pulse width + Vertical back porch | ||
+ | R06 = ──────────────────────────────────────── -1 | ||
+ | HSYNC period | ||
+ | |||
+ | CRTC R07($e8000e): | ||
+ | bit 15 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ │ VDISP end │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | VSYNC pulse width - vertical front porch | ||
+ | R07 = ───────────────────────────────────────── -1 | ||
+ | HSYNC period | ||
+ | |||
+ | CRTC R08($e80010): | ||
+ | bit 15 8 | ||
+ | ┌───────────────┬───────────────────────┐ | ||
+ | │ │ EXT sync horiz adjust │ | ||
+ | └───────────────┴───────────────────────┘ | ||
+ | |||
+ | CRTC R09($e80012): | ||
+ | bit 15 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ │ Raster number | ||
+ | └───────────┴───────────────────┘ | ||
+ | VSYNC pulse width + vertical back porch | ||
+ | R09 = ────────────────────────────────────────── + raster number | ||
+ | HSYNC period | ||
+ | = R06 +1 + raster number | ||
+ | |||
+ | CRTC R10($e80014): | ||
+ | bit 15 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ │ X Scroll | ||
+ | └───────────┴───────────────────┘ | ||
+ | |||
+ | CRTC R11($e80016): | ||
+ | bit 15 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ │ Y Scroll | ||
+ | └───────────┴───────────────────┘ | ||
+ | |||
+ | CRTC R12($e80018): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※In 512x512 mode bits 0~8 are effective. | ||
+ | |||
+ | CRTC R13($e8001a): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※In 512x512 mode bits 0~8 are effective. | ||
+ | |||
+ | CRTC R14($e8001c): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R15($e8001e): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R16($e80020): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R17($e80022): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R18($e80024): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R19($e80026): | ||
+ | bit 15 10 | ||
+ | ┌───────────┬───────────────────┐ | ||
+ | │ | ||
+ | └───────────┴───────────────────┘ | ||
+ | ※Unused in 1024x1024 mode. | ||
+ | |||
+ | CRTC R20($e80028): | ||
+ | bit 15 13 12 11 10 9 | ||
+ | ┌───────┬──┬──┬──┬────────┬─────┬──┬───┬───┐ | ||
+ | │ | ||
+ | └───────┴──┴──┴──┴────────┴─────┴──┴───┴───┘ | ||
+ | | ||
+ | | ||
+ | └ T-MEM | ||
+ | |||
+ | |||
+ | bit 12 T-MEM T-VRAM Usage mode | ||
+ | %0 : Display | ||
+ | %1 : Buffer | ||
+ | bit 11 G-MEM G-VRAM Usage mode | ||
+ | %0 : Display | ||
+ | %1 : Buffer(bit 10~8 are invalid) | ||
+ | (G-VRAM in buffer mode has the same structure as 65535 color mode) | ||
+ | bit 10 SIZE GVRAM size | ||
+ | %0 : 512× 512 pixel | ||
+ | %1 : 1024×1024 pixel | ||
+ | bit 9~8 COL GVRAM Color mode | ||
+ | %00 : 16 colors | ||
+ | %01 : 256 colors | ||
+ | %10 : Undefined | ||
+ | %11 : 65536 colors | ||
+ | bit 4 HF Horizontal deflection frequency | ||
+ | %0 : 15.98kHz | ||
+ | %1 : 31.50kHz | ||
+ | bit 3~2 VD Vertical size | ||
+ | %00 : 256 pixels | ||
+ | %01 : 512 pixels | ||
+ | %10 : 1024 pixels - Interlace (Only when HF = %1) | ||
+ | %11 : 〃 | ||
+ | bit 1~0 HD Horizontal size | ||
+ | %00 : 256 pixels | ||
+ | %01 : 512 pixels | ||
+ | %10 : 768 pixels | ||
+ | %11 : 50MHz CRTC clock (Compact XVI and later only without modification) | ||
+ | |||
+ | CRTC R21($e8002a): | ||
+ | bit 15 10 9 8 7 6 5 4 3 2 1 0 | ||
+ | ┌───────────┬─┬─┬───────┬───────┐ | ||
+ | │ │ │ │ │ │ │ │ │ │ │ │ | ||
+ | └───────────┴─┴─┴───────┴───────┘ | ||
+ | │ │AP3~AP0 CP3~CP0 | ||
+ | MEN SA | ||
+ | |||
+ | bit 9 MEN Text screen access mask | ||
+ | %0 : Disabled | ||
+ | %1 : Enabled | ||
+ | bit 8 SA Text screen simultaneous access | ||
+ | %0 : Disabled | ||
+ | %1 : Enabled | ||
+ | bit 7~4 AP3~AP0 Text screen simultaneous access plane selection | ||
+ | %0 : Selected | ||
+ | %1 : Unselected | ||
+ | bit 3~0 CP3~CP0 | ||
+ | ┌ Text layer raster copy target plane | ||
+ | └ G-VRAM high speed clear target page | ||
+ | %0 : Selected | ||
+ | %1 : Unselected | ||
+ | |||
+ | CRTC R22($e8002c): | ||
+ | bit 15 8 | ||
+ | ┌───────────────┬───────────────┐ | ||
+ | │Source raster | ||
+ | └───────────────┴───────────────┘ | ||
+ | (Transfer source) (Transfer dest) | ||
+ | |||
+ | CRTC R23($e8002e): | ||
+ | bit 15 | ||
+ | ┌────────────────────────────────────┐ | ||
+ | │Text layer simultaneous mask pattern│ | ||
+ | └────────────────────────────────────┘ | ||
+ | %0 : Data is written | ||
+ | %1 : Data is not written | ||
+ | |||
+ | CRTC Control port($e80481): | ||
+ | bit 7 4 3 2 1 0 | ||
+ | ┌───────┬──┬─┬──┬──┐ | ||
+ | │ | ||
+ | └───────┴──┴─┴──┴──┘ | ||
+ | |||
+ | bit 3 RC Text layer raster copy start | ||
+ | %0 : Stop | ||
+ | %1 : Start | ||
+ | bit 1 FC Graphic layer fast clear start | ||
+ | %0 : Stop | ||
+ | %1 : Start | ||
+ | ※Automatically becomes 0 after operation completes | ||
+ | bit 0 VI Image capture start | ||
+ | %0 : Stop | ||
+ | %1 : Start |
x68000/crtc_registers.txt · Last modified: 2019/08/27 20:45 by 127.0.0.1