Differences

This shows you the differences between two versions of the page.

Link to this comparison view

x68000:crtc_registers [2017/08/14 09:16]
neko68k
x68000:crtc_registers [2019/08/27 20:45]
Line 1: Line 1:
-=== Overview === 
  
-== Horizontal timing control == 
-^Address^Size^R/W^Name^Description^ 
-|$E80000|1.w|W|R00|Horizontal total| 
-|$E80002|1.w|W|R01|HSYNC end position| 
-|$E80004|1.w|W|R02|HDISP start position| 
-|$E80006|1.w|W|R03|HDISP end position| 
- 
-== Vertical timing control == 
-^Address^Size^R/W^Name^Description^ 
-|$E80008|1.w|W|R04|Vertical total| 
-|$E8000A|1.w|W|R05|VSYNC end position| 
-|$E8000C|1.w|W|R06|VDISP start position| 
-|$E8000E|1.w|W|R07|VDISP end position| 
- 
-== Misc 1 == 
-^Address^Size^R/W^Name^Description^ 
-|$E80010|1.w|W|R08|External sync horiz adjustment : Horiz position fine adjust| 
-|$E80012|1.w|W|R09|Raster number : For raster interrupt| 
- 
-== Text layer scroll == 
-^Address^Size^R/W^Name^Description^ 
-|$E80014|1.w|W|R10|X scroll| 
-|$E80016|1.w|W|R11|Y scroll| 
- 
-== Graphic layer scroll == 
-^Address^Size^R/W^Name^Description^ 
-|$E80018|1.w|W|R12|X0| 
-|$E8001A|1.w|W|R13|Y0| 
-|$E8001C|1.w|W|R14|X1| 
-|$E8001E|1.w|W|R15|Y1| 
-|$E80020|1.w|W|R16|X2| 
-|$E80022|1.w|W|R17|Y2| 
-|$E80024|1.w|W|R18|X3| 
-|$E80026|1.w|W|R19|Y3| 
- 
-== Misc 2 == 
-^Address^Size^R/W^Name^Description^ 
-|$E80028|1.w|R/W|R20|Memory mode/display mode control| 
-|$E8002A|1.w|R/W|R21|TVRAM simultaneous access/raster copy/fast clear plane selection| 
-|$E8002C|1.w|W|R22|For raster copy operation: raster number| 
-|$E8002E|1.w|W|R23|TVRAM access mask pattern| 
-|$E80481|1.b|R/W| |Image capture/fast clear/raster copy control| 
- 
-=== Details === 
- 
-CRTC R00($e80000): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │HTOTAL         | 
-   └───────────────┴───────────────┘ 
-       HSYNC period × horiz width 
- R00 = ────────────────────────── -1 
-           Display period × 8 
- ※LSB must be 1 
- 
-CRTC R01($e80002): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │HSYNC end      | 
-   └───────────────┴───────────────┘ 
- HSYNC pulse width × horiz width 
- R01 = ───────────────────────────────── -1 
-      Display period × 8 
- 
-CRTC R02($e80004): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │HDISP start    | 
-   └───────────────┴───────────────┘ 
-       (HSYNC pulse width + horiz back porch) × horiz width 
- R02 = ───────────────────────────────────────────────────── -5 
-                      Display period × 8 
- 
-CRTC R03($e80006): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │HDISP end      | 
-   └───────────────┴───────────────┘ 
-       (HSYNC pulse width - horiz front porch) × horiz width 
- R03 = ────────────────────────────────────────────────────── -5 
-                            Display period × 8 
- 
-CRTC R04($e80008): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │VTOTAL         | 
-   └───────────────┴───────────────┘ 
-       VSYNC period 
- R04 = ──────────── -1 
-       HSYNC period 
- 
-CRTC R05($e8000a): 
- bit 15 8   7 0 
-   ┌───────────────┬───────────────┐ 
-   │               │VSYNC end      | 
-   └───────────────┴───────────────┘ 
-       VSYNC pulse width 
- R05 = ───────────────── -1 
-          HSYNC period 
- 
-CRTC R06($e8000c): 
- bit 15    10   9 0 
-   ┌───────────┬───────────────────┐ 
-   │           │ VDISP start       │ 
-   └───────────┴───────────────────┘ 
-       VSYNC pulse width + Vertical back porch 
- R06 = ──────────────────────────────────────── -1 
-                    HSYNC period 
- 
-CRTC R07($e8000e): 
- bit 15     10   9 0 
-   ┌───────────┬───────────────────┐ 
-   │           │ VDISP end         │ 
-   └───────────┴───────────────────┘ 
-       VSYNC pulse width - vertical front porch 
- R07 = ───────────────────────────────────────── -1 
-                    HSYNC period 
- 
-CRTC R08($e80010): 
- bit 15 8   7          0 
-   ┌───────────────┬───────────────────────┐ 
-   │               │ EXT sync horiz adjust │ 
-   └───────────────┴───────────────────────┘ 
- 
-CRTC R09($e80012): 
- bit 15    10   9 0 
-   ┌───────────┬───────────────────┐ 
-   │           │ Raster number     │ 
-   └───────────┴───────────────────┘ 
- VSYNC pulse width + vertical back porch 
- R09 = ────────────────────────────────────────── + raster number 
-              HSYNC period 
-     = R06 +1 + raster number 
- 
-CRTC R10($e80014): 
- bit 15    10   9 0 
-   ┌───────────┬───────────────────┐ 
-   │           │ X Scroll          │ 
-   └───────────┴───────────────────┘ 
- 
-CRTC R11($e80016): 
- bit 15    10   9 0 
-   ┌───────────┬───────────────────┐ 
-   │           │ Y Scroll          │ 
-   └───────────┴───────────────────┘ 
- 
-CRTC R12($e80018): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         X0   │ 
-   └───────────┴───────────────────┘ 
- ※In 512x512 mode bits 0~8 are effective. 
- 
-CRTC R13($e8001a): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         Y0   │ 
-   └───────────┴───────────────────┘ 
- ※In 512x512 mode bits 0~8 are effective. 
- 
-CRTC R14($e8001c): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         X1   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R15($e8001e): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         Y1   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R16($e80020): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         X2   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R17($e80022): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         Y2   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R18($e80024): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         X3   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R19($e80026): 
- bit 15     10     8          0 
-   ┌───────────┬───────────────────┐ 
-   │           │    │         Y3   │ 
-   └───────────┴───────────────────┘ 
- ※Unused in 1024x1024 mode. 
- 
-CRTC R20($e80028): 
- bit 15  13 12 11 10  9     7 6 5 4  3 2 1 0 
-   ┌───────┬──┬──┬──┬────────┬─────┬──┬───┬───┐ 
-   │       │  │  │  │  COL   │     │HF│VD │HD │ 
-   └───────┴──┴──┴──┴────────┴─────┴──┴───┴───┘ 
-            │ │  └ SIZE 
-    │  G-MEM 
-    └ 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 Real screen size 
- %0  :  512× 512 pixel 
- %1  : 1024×1024 pixel 
- bit 9~8 COL 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   7          0 
-   ┌───────────────┬───────────────┐ 
-   │Source raster  │Dest raster    │ 
-   └───────────────┴───────────────┘ 
-   (Transfer source) (Transfer dest) 
- 
-CRTC R23($e8002e): 
- bit 15       0 
-   ┌────────────────────────────────────┐ 
-   │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 
-   ┌───────┬──┬─┬──┬──┐ 
-   │       │RC│0│FC│VI│ 
-   └───────┴──┴─┴──┴──┘ 
- 
- 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 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Driven by DokuWiki