GPU/External Registers: Difference between revisions
Line 140: | Line 140: | ||
! Name | ! Name | ||
! Comments | ! Comments | ||
|- | |||
| 0x00 | |||
| 4 | |||
| Pixel timer (not pixel clock) | |||
| Higher values are slower, min. 0x1C1, bitmask 0xFFF | |||
|- | |||
| 0x04 | |||
| 4 | |||
| VScanStart(?) | |||
| Values 0xD1-0x1C1 inclusive are valid (except 2DS bottom screen) | |||
min. 0xD1, bitmask 0xFFF | |||
|- | |||
| 0x08 | |||
| 4 | |||
| ? | |||
| | |||
|- | |||
| 0x0C | |||
| 4 | |||
| ? | |||
| | |||
|- | |||
| 0x10 | |||
| 4 | |||
| VAdjustGranule | |||
or | |||
HAdjust(2DS bottom screen) | |||
| Finetune vertical pixel offset, 0x1C2 max = half pixel | |||
or | |||
offset the bottom screen (0 to kill 2DS top screen, 0x1C2 max on bottom screen) | |||
|- | |||
| 0x14 | |||
| 4 | |||
| HEndOffset(?) (poor 2DS emulation) | |||
| Moves the frame left/right(after some conditions are met) | |||
default value is 0xCF | |||
|- | |||
| 0x18 | |||
| 4 | |||
| ??? | |||
| | |||
|- | |||
| 0x20 | |||
| 4 | |||
| ? | |||
| ??? the screen gets vertically offset with wrap-around | |||
horizontal timing gets messed up | |||
|- | |||
| 0x24 | |||
| 4 | |||
| HSync timer? | |||
| | |||
|- | |||
| 0x28 | |||
| 4 | |||
| VStart(?) | |||
| | |||
|- | |||
| 0x30 | |||
| 4 | |||
| VTotal | |||
| Total amount of vertical scanlines | |||
|- | |||
| 0x34 | |||
| 4 | |||
| VDisp | |||
| Total amonut of vertical scanlines displayed | |||
|- | |||
| 0x44 | |||
| 4 | |||
| ??? | |||
| similar functionality to 0x10 | |||
|- | |||
| 0x4C | |||
| 4 | |||
| Overscan filler color | |||
| | |||
|- | |||
| 0x50 | |||
| 4 | |||
| Vertical scanline counter | |||
| read-only | |||
|- | |||
| 0x54 | |||
| 4 | |||
| Horizontal scanline counter | |||
| read-only | |||
|- | |- | ||
| 0x5C | | 0x5C | ||
| 4 | | 4 | ||
| | | ??? | ||
| | | low u16: framebuffer width | ||
high u16: framebuffer height??? (seems to be unused) | |||
|- | |||
| 0x60 | |||
| 4 | |||
| ??? | |||
| low u16: timing data(?) | |||
high u16: framebuffer total width (amount of pixels blitted regardless of framebuffer width) | |||
|- | |||
| 0x64 | |||
| 4 | |||
| ??? | |||
| low u16: unknown | |||
high u16: framebuffer total height (amount of scanlines blitted regardless of framebuffer height) | |||
|- | |- | ||
| 0x68 | | 0x68 |