Line 80: |
Line 80: |
| |- | | |- |
| | 0x1EF00C00 | | | 0x1EF00C00 |
− | | VRAM framebuffer physical address>>3 | + | | Input framebuffer physical address>>3 |
| |- | | |- |
| | 0x1EF00C04 | | | 0x1EF00C04 |
Line 89: |
Line 89: |
| |- | | |- |
| | 0x1EF00C0C | | | 0x1EF00C0C |
− | | VRAM framebuffer dimensions, used with cmd3 | + | | Input framebuffer dimensions, used with cmd3 |
| |- | | |- |
| | 0x1EF00C10 | | | 0x1EF00C10 |
− | | Unknown, used with cmd3 and cmd4 | + | | Flags, used with cmd3 and cmd4. |
| |- | | |- |
| | 0x1EF00C14 | | | 0x1EF00C14 |
− | | GSP module writes value 0 here prior to writing to 0x1EF00C18, for cmd3 | + | | GSP module writes value 0 here prior to writing to 0x1EF00C18, for cmd3. |
| |- | | |- |
| | 0x1EF00C18 | | | 0x1EF00C18 |
− | | Writing value 1 here triggers GPU processing for the specified buffers | + | | Writing value 1 here triggers GPU processing for the specified buffers. |
| |- | | |- |
| | 0x1EF00C20 | | | 0x1EF00C20 |
Line 110: |
Line 110: |
| |} | | |} |
| | | |
− | These registers are used by [[GSP_Shared_Memory|GX command]] 3 and 4. For cmd4, *0x1EF00C18 |= 1 is used instead of just writing value 1. The dimensions fields seem to use the same format as [[LCD]] register 0x1EF00X5C. The framebuffer width in the dimensions fields' low u16 is 480 for the main screen, and 240 for the sub screen. | + | These registers are used by [[GSP_Shared_Memory|GX command]] 3 and 4. For cmd4, *0x1EF00C18 |= 1 is used instead of just writing value 1. The dimensions fields seem to use the same format as [[LCD]] register 0x1EF00X5C. |
| + | |
| + | === 0x1EF00C10 === |
| + | {| class="wikitable" border="1" |
| + | ! Bit |
| + | ! Description |
| + | |- |
| + | | 11-0 |
| + | | ? |
| + | |- |
| + | | 12 |
| + | | Color format related? |
| + | |- |
| + | | 23-13 |
| + | | ? |
| + | |- |
| + | | 24 |
| + | | When this is set, the actual framebuffer width is input width>>1. |
| + | |- |
| + | | 31-25 |
| + | | ? |
| + | |} |