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 also used elsewhere for beginning rendering of object(s) as well.
|
0x000F0111
|
Value 0x1
|
This command is immediately before CmdID 0x000F0110, however CmdID 0x000F0110 doesn't always follow this command.
|
0x000F0040
|
u32, valid values are 0x1 and 0x2, values 0x0 and 0x3 have the same effect as value 0x2. Only bits 1-0 are used.
|
Disable/enable alpha testing. Parameter value 0x1 disables GL_ALPHA_TEST, while value 0x2 enables GL_ALPHA_TEST.
|
0x000F0041
|
float
|
This is used to initialize the projection matrix?
|
0x000F0042
|
float
|
This is used immediately after CmdID 0x000F0043, for the third parameter for CmdID 0x000F0041.
|
0x000F0043
|
float
|
This is used immediately after CmdID 0x000F0041, for the second parameter.
|
0x000F0044
|
float
|
This is used immediately after CmdID 0x000F0042, for the fourth parameter for CmdID 0x000F0041.
|
0x801F004D
|
First word in parameter structure
|
?
|
0x0002025E
|
u32, val<<8. Val3 = GL_TRIANGLES, val5 = GL_TRIANGLE_STRIP, val6 = GL_TRIANGLE_FAN. Val0 and val4 are unknown, these seem to have the same effect.
|
This sets the GL rendering mode.
|
0x000F0068
|
u32
|
This is used immediately after CmdID 0x000F0044.
|
0x000F006E
|
u32
|
This is used immediately after CmdID 0x000F011E, with the same input parameter value as CmdID 0x000F011E.
|
0x809F0081
|
|
This is used to set the current texture info used for rendering.
|
0x000F008E
|
u32
|
This texture-related command is used immediately after CmdID 0x809F0081.
|
0x00020100
|
u32, value is 0x00E40100
|
This command is used immediately before CmdID 0x000F0101.
|
0x000F0101
|
u32
|
Color related?
|
0x000F0116
|
u32
|
Unknown, this is used immediately after CmdID 0x000F011D.
|
0x000F0117
|
u32
|
Unknown, normally the input parameter is value 0x2.
|
0x000F011C
|
Physical address>>3
|
Normally this address is located in VRAM, this seems to be the GPU data storage end address. This command is used immediately after 0x000F0116.
|
0x000F011D
|
Physical address>>3
|
This initializes the framebuffer address used for rendering, this framebuffer is used for the input framebuffer with GX command 3 and 4. This is also the GPU data storage start address, this data storage likely contains vertex arrays, etc. This command is used immediately after CmdID 0x000F0117.
|
0x000F011E
|
u32
|
This sets the width and height for the framebuffer used for rendering. Therefore this is glViewport() with x=0 and y=0. This is used immediately after CmdID 0x000F011C.
|
0x8XXF0200
|
|
The first word in the parameter buffer structure seems to have a similar same effect as CmdID 0x000F0040, where param0 = val<<24.(Val 0x3 enables alpha testing, while other values disables it)
|
0x000F0227
|
u32, bit31 is unknown. Bits30-0 is the address, where address is relative to VRAM.
|
This specifies the address of an array containing vertex array indices, used for rendering primitives. Each index entry is an u16.
|
0x000F0228
|
u32 total elements in the array to use for rendering.
|
This command is used immediately after CmdID 0x000F0227.
|
0x000F02B0
|
u32, value is 0x7FFF0000 | val.
|
Texture related?
|
0x000F02C0
|
0x80000000 | Type
|
This is used immediately before CmdID 0xXXXF02C1. This type field controls the command parameter buffer type.
|
0xXXXF02C1
|
First word in the first entry
|
A list of entries follow this command.
|