This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| 
                    f3dex [2018/07/23 00:45] trenavix G_RDPHALF opcodes mislabelled for 0xE4 and 0xE5  | 
                
                    f3dex [2024/02/27 04:57] (current) BanjoFreak64 [F2: G_SETTILESIZE]  | 
            ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Fast3DEX Display List Commands ====== | ====== Fast3DEX Display List Commands ====== | ||
| - | The Fast3DEX display list commands are microcode that are passed to the RSP for rendering. The are all 8 bytes long. | + | The Fast3DEX display list commands are microcode that are passed to the RSP for rendering. They are all 8 bytes long. | 
| ===== Fast3DEX Commands ===== | ===== Fast3DEX Commands ===== | ||
| ==== 00: G_SPNOOP ==== | ==== 00: G_SPNOOP ==== | ||
| - | No operation. This should only be used for debugging purposes. | + | Stalls the signal processor (the RSP), and as a consequence, the RDP too. This should only be used for debugging purposes. | 
| ''00 00 00 00 00 00 00 00'' | ''00 00 00 00 00 00 00 00'' | ||
| Line 343: | Line 343: | ||
| Loads a new 32-bit value data to the location specified by index and offset. | Loads a new 32-bit value data to the location specified by index and offset. | ||
| - | ''BC <color #00a2e8>ii</color> <color #22b14c>oo oo</color> <color #A946F2>dd dd dd dd</color>'' | + | ''BC <color #22b14c>oo oo</color> <color #00a2e8>ii</color> <color #A946F2>dd dd dd dd</color>'' | 
| - | | <color #00a2e8>i</color> | Index into DMEM pointer table(?) | | + | | <color #22b14c>o</color> | Offset from the indexed base address | | 
| - | | <color #22b14c>o</color> | Offset from the indexed base address(?) | | + | | <color #00a2e8>i</color> | Index into DMEM pointer table | | 
| | <color #A946F2>d</color> | New 32-bit value | | | <color #A946F2>d</color> | New 32-bit value | | ||
| Line 399: | Line 399: | ||
| ==== C0: G_NOOP ==== | ==== C0: G_NOOP ==== | ||
| - | Does nothing. Seemingly different from 00; this opcode may stall the RDP instead of the RSP, or the other way around, though nothing has been really confirmed. (Judging by gbi.h from F3DEX) | + | Does nothing. Seemingly different from 00; judging by the names and position of this opcode and 00, this opcode stalls the RDP, whereas the other stalls the RSP. | 
| ''C0 00 00 00 00 00 00 00'' | ''C0 00 00 00 00 00 00 00'' | ||
| Line 525: | Line 525: | ||
| Sets the scissoring rectangle. | Sets the scissoring rectangle. | ||
| - | ''ED [<color #00a2e8>xx x</color>][<color #22b14c>y yy</color>] [<color #ff7f27>m</color>]0 [<color #ed1c24>vv v</color>][<color #B755FF>w ww</color>]'' | + | ''ED [<color #00a2e8>xx x</color>][<color #22b14c>y yy</color>] 0[<color #ff7f27>m</color>] [<color #ed1c24>vv v</color>][<color #B755FF>w ww</color>]'' | 
| | <color #00a2e8>x</color> | Upper-left X coordinate of rectangle | | | <color #00a2e8>x</color> | Upper-left X coordinate of rectangle | | ||
| Line 581: | Line 581: | ||
| Sets the texture coordinates and size | Sets the texture coordinates and size | ||
| - | ''F2 00 00 00 00 [<color darkred>WW W</color>][<color darkgreen>H HH</color>]'' | + | ''F2 [<color darkred>SS S</color>][<color darkgreen>T TT</color>] 0[<color #00a2e8>I</color>] [<color purple>WW W</color>][<color darkcyan>H HH</color>]'' | 
| + | |||
| + | | <color darkred>SSS</color> | Upper-left corner of texture to load, S-axis | | ||
| + | | <color darkgreen>TTT</color> | Upper-left corner of texture to load, T-axis | | ||
| + | | <color #00a2e8>I</color> | Tile descriptor to load into | | ||
| + | | <color purple>W</color> | (width - 1) << 2 | | ||
| + | | <color darkcyan>H</color> | (height - 1) << 2 | | ||
| - | | <color darkred>W</color> | (width - 1) << 2 | | ||
| - | | <color darkgreen>H</color> | (height - 1) << 2 | | ||
| Examples: | Examples: | ||