Changes

Jump to navigation Jump to search
1,559 bytes removed ,  06:29, 6 February 2013
Moved GPU commands info to a seperate page.
Line 54: Line 54:  
|}
 
|}
   −
These 3 registers are used by [[GX_Commands|GX command]] 1. This is used for OpenGL commands.
+
These 3 registers are used by [[GX_Commands|GX command]] 1. This is used for [[GPU_Commands|GPU commands]].
    
== 0x1EF00010 ==
 
== 0x1EF00010 ==
Line 113: Line 113:     
These registers are used by [[GX_Commands|GX command]] 3 and 4. For cmd4, *0x1EF00C18 |= 1 is used instead of just writing value 1.
 
These registers are used by [[GX_Commands|GX command]] 3 and 4. For cmd4, *0x1EF00C18 |= 1 is used instead of just writing value 1.
  −
== GPU Commands ==
  −
The buffer for [[GX_Commands|GX command]] 1 with the registers at 0x1EF018E0 is used for GPU commands including OpenGL commands, each 8-byte entry in the buffer is a command. Cmd+0 is the command parameter, and cmd+4 is the cmdID.
  −
  −
=== Commands ===
  −
{| class="wikitable" border="1"
  −
!  CommandID
  −
!  Parameter
  −
!  Description
  −
|-
  −
| 0x000F0010
  −
| Value is 0x12345678
  −
| This command is always the last command in the buffer.
  −
|-
  −
| 0x000F0110
  −
| Value 0x1
  −
| This command is immediately before CmdID 0x000F0010, this is used elsewhere in the buffer as well.
  −
|-
  −
| 0x000F0111
  −
| Value 0x1
  −
| This command is immediately before CmdID 0x000F0110, however CmdID 0x000F0110 doesn't always follow this command.
  −
|-
  −
| 0x000F0042
  −
| float y vector
  −
| This sets Y scaling for the current matrix.
  −
|-
  −
| 0x000F0044
  −
| float x vector
  −
| This sets X scaling for the current matrix.
  −
|-
  −
| 0x000F02C0
  −
| <nowiki>0x80000000 | ID?</nowiki> When bit31 is clear, the specified vertices are not rendered via CmdID 0xXXXF02C1.
  −
| This is used immediately before CmdID 0xXXXF02C1.
  −
|-
  −
| 0xXXXF02C1
  −
| float X coordinate for the first vertex
  −
| CmdID is <nowiki>0x000F02C1 | ((totalvertices<<22) - 0x100000).</nowiki> The vertex entries is the data following the command. The first word in the first vertex entry is the Y coordinate.
  −
|}
  −
  −
=== Vertex Entry ===
  −
{| class="wikitable" border="1"
  −
!  Index Word
  −
!  Description
  −
|-
  −
| 0
  −
| X coordinate, for the first vertex this is stored in the command parameter instead.
  −
|-
  −
| 1
  −
| Y coordinate
  −
|-
  −
| 2
  −
| Z coordinate
  −
|-
  −
| 3
  −
| Padding for the last vertex entry
  −
|}
 

Navigation menu