HuC6273 (Aurora) FIFO commands

Table of Contents

Command overview
No Operation
Triangle Strips
Triangle List
Poly Lines
Poly Line Lists
Put Image
Read Pixel
Write TextureEngine Register
Write PixelEngine Register
Misc. commands
Read TextureEngine Register
Read PixelEngine Register
Write LUT
Read LUT

Command overview

The general construction of a FIFO command is oooo cccc ssss ssss

o is the opcode, which is the general section of commands, and occasionally is all that is needed.

c is the subcommand, which is the operation to be performed selected from the opcode.

s is how many hwords will be pushed to the FIFO in total for this command, including this one.

No Operation

OpcodeSubcodeDescription
0000 N/A Performs no operation

Triangle Strips

OpcodeSubcodeDescription
0001 0000 Triangle strip, vertex colored, no normal
[0000 cccc cccc cccc] Vtx1 Color
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[0000 cccc cccc cccc] Vtx2 Color
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] VtxN Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 0001 Triangle strip, vertex colored, vertex normals
[0000 cccc cccc cccc] Vtx1 Color
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z normal (1.0.15)
[0000 cccc cccc cccc] Vtx2 Color
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] VtxN Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] VtxN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 0010 Triangle strip, facet color, facet normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[0000 cccc cccc cccc] Tri1 Color
[xxxx xxxx xxxx xxxx] Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Z normal (1.0.15)
[0000 cccc cccc cccc] Tri2 Color
[xxxx xxxx xxxx xxxx] Vtx4 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx4 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx4 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri2 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] TriM Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriM X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriM Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriM Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 0100 Triangle strip, texture map, no normal
[0000 0000 uuuu uuuu] Vtx1 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx1 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[0000 0000 uuuu uuuu] Vtx2 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx2 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] VtxN U (0.8.0)
[0000 0000 vvvv vvvv] VtxN V (0.8.0)
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 0101 Triangle strip, texture map, vertex normal
[0000 0000 uuuu uuuu] Vtx1 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx1 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z normal (1.0.15)
[0000 0000 uuuu uuuu] Vtx2 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx2 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z normal (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] VtxN U (0.8.0)
[0000 0000 vvvv vvvv] VtxN V (0.8.0)
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] VtxN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 0110 Triangle strip, texture map, facet normal
[0000 0000 uuuu uuuu] Vtx1 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx1 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[0000 0000 uuuu uuuu] Vtx2 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx2 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[0000 0000 uuuu uuuu] Vtx3 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx3 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Z normal (1.0.15)
[0000 0000 uuuu uuuu] Vtx4 U (0.8.0)
[0000 0000 vvvv vvvv] Vtx4 V (0.8.0)
[xxxx xxxx xxxx xxxx] Vtx4 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx4 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx4 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri2 Z normal (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] VtxN U (0.8.0)
[0000 0000 vvvv vvvv] VtxN V (0.8.0)
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriM X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriM Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriM Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 1000 Triangle strip, default colored, no normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 1001 Triangle strip, default colored, vertex normals
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z normal (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] VtxN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0001 1010 Triangle strip, default color, facet normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Z normal (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx4 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx4 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx4 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri2 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriM X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriM Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriM Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)

Triangle Lists

OpcodeSubcodeDescription
0010 0000 Triangle list, vertex colored, no normal
[0000 cccc cccc cccc] Tri1 Vtx1 Color
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[0000 cccc cccc cccc] Tri1 Vtx2 Color
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] TriN Vtx3 Color
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 0001 Triangle list, vertex colored, vertex normal
[0000 cccc cccc cccc] Tri1 Vtx1 Color
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z normal (1.0.15)
[0000 cccc cccc cccc] Tri1 Vtx2 Color
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] TriN Vtx3 Color
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN Vtx3 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 0010 Triangle list, facet colored, facet normal
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] TriN Color
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 0100 Triangle list, texture map, no normal
[0000 0000 uuuu uuuu] Tri1 Vtx1 U
[0000 0000 vvvv vvvv] Tri1 Vtx1 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[0000 0000 uuuu uuuu] Tri1 Vtx2 U
[0000 0000 vvvv vvvv] Tri1 Vtx2 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] TriN Vtx3 U
[0000 0000 vvvv vvvv] TriN Vtx3 V
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 0101 Triangle list, texture map, vertex normal
[0000 0000 uuuu uuuu] Tri1 Vtx1 U
[0000 0000 vvvv vvvv] Tri1 Vtx1 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z normal (1.0.15)
[0000 0000 uuuu uuuu] Tri1 Vtx2 U
[0000 0000 vvvv vvvv] Tri1 Vtx2 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z normal (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] TriN Vtx3 U
[0000 0000 vvvv vvvv] TriN Vtx3 V
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN Vtx3 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 0110 Triangle list, texture map, facet normal
[0000 0000 uuuu uuuu] Tri1 Vtx1 U
[0000 0000 vvvv vvvv] Tri1 Vtx1 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[0000 0000 uuuu uuuu] Tri1 Vtx2 U
[0000 0000 vvvv vvvv] Tri1 Vtx2 V
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 0000 uuuu uuuu] TriN Vtx3 U
[0000 0000 vvvv vvvv] TriN Vtx3 V
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 1000 Triangle list, default color, no normal
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 1001 Triangle list, default color, vertex normal
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z normal (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN Vtx3 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0010 1010 Triangle list, default color, facet normal
[xxxx xxxx xxxx xxxx] Tri1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Tri1 Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Tri1 Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Tri1 Vtx2 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] TriN Vtx3 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] TriN Vtx3 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] TriN Vtx3 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] TriN Vtx3 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)

Poly Lines

OpcodeSubcodeDescription
0011 0000 Poly line, vertex colored, no normal
[0000 cccc cccc cccc] Vtx1 Color
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[0000 cccc cccc cccc] Vtx2 Color
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] VtxN Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0011 0001 Poly line, vertex colored, vertex normal
[0000 cccc cccc cccc] Vtx1 Color
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z normal (1.0.15)
[0000 cccc cccc cccc] Vtx2 Color
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] VtxN Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] VtxN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0011 0010 Poly line, facet colored, facet normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[0000 cccc cccc cccc] Seg1 Color
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Seg1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Seg1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Seg1 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] SegM Color
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] SegM X normal (1.0.15)
[yyyy yyyy yyyy yyyy] SegM Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] SegM Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0011 1000 Poly line, default color, no normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0011 1001 Poly line, default color, vertex normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z normal (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] VtxN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0011 1010 Poly line, default colored, facet normal
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Seg1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Seg1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Seg1 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] SegM X normal (1.0.15)
[yyyy yyyy yyyy yyyy] SegM Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] SegM Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)

Poly Line Lists

OpcodeSubcodeDescription
0100 0000 Poly line list, vertex colored, no normal
[0000 cccc cccc cccc] Line1 Vtx1 Color
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] LineN Vtx2 Color
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0100 0001 Poly line list, vertex colored, vertex normal
[0000 cccc cccc cccc] Line1 Vtx1 Color
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z normal (1.0.15)
[...................] ...
[0000 cccc cccc cccc] LineN Vtx2 Color
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] LineN Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0100 0010 Poly line list, facet colored, facet normal
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[...................] ...
[0000 cccc cccc cccc] LineN Color
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] LineN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0100 1000 Poly line list, default colored, no normal
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0100 1001 Poly line list, default colored, vertex normal
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z normal (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] LineN Vtx2 X normal (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
0100 1010 Poly line list, default colored, facet normal
[xxxx xxxx xxxx xxxx] Line1 Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Line1 Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Line1 Vtx1 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] LineN Vtx2 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Vtx2 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Vtx2 Z coordinate (1.0.15)
[xxxx xxxx xxxx xxxx] LineN X normal (1.0.15)
[yyyy yyyy yyyy yyyy] LineN Y normal (1.0.15)
[zzzz zzzz zzzz zzzz] LineN Z normal (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)

Put Image

D/Z buffer refers to either Display or Z buffer. When WBEN has Z buffer set, the Z buffer is accessed. When it has the display buffer set, it accesses the display buffer.

Subopcode 0010 applies to both D and Z buffer images, depending on the WBEN mode.

OpcodeSubcodeDescription
0110 0000 Put image to D/Z buffer
[zzzz zzzz zzzz zzzz] default Z
[0000 000x xxxx xxxx] X left
[0000 0000 yyyy yyyy] Y top
[0000 000x xxxx xxxx] X right
[0000 0000 yyyy yyyy] Y bottom
[dddd dddd dddd dddd] Data
[...................] ...
[dddd dddd dddd dddd] Data
[1011 1110 1110 1111] Terminator (0xBEEF)
0110 0001 Put image to texture buffer
[0000 000x xxxx xxxx] X left
[0000 0000 yyyy yyyy] Y top
[0000 000x xxxx xxxx] X right
[0000 0000 yyyy yyyy] Y bottom
[dddd dddd dddd dddd] Texture data
[...................] ...
[dddd dddd dddd dddd] Texture data
[1011 1110 1110 1111] Terminator (0xBEEF)
0110 0010 Put image to D and Z buffer
[0000 000x xxxx xxxx] X left
[0000 0000 yyyy yyyy] Y top
[0000 000x xxxx xxxx] X right
[0000 0000 yyyy yyyy] Y bottom
[dddd dddd dddd dddd] Texture data
[zzzz zzzz zzzz zzzz] Z coordinate
[...................] ...
[dddd dddd dddd dddd] Texture data
[zzzz zzzz zzzz zzzz] Z coordinate
[1011 1110 1110 1111] Terminator (0xBEEF)

Read Pixel

The result of these is stored into the readback register

D/Z buffer refers to either Display or Z buffer. When WBEN has Z buffer set, the Z buffer is accessed. When it has the display buffer set, it accesses the display buffer.

OpcodeSubcodeDescription
0111 0000 Read pixel from D/Z buffer
[0000 000x xxxx xxxx] X address
[0000 0000 yyyy yyyy] Y address
[1011 1110 1110 1111] Terminator (0xBEEF)
0111 0001 Read pixel from texture buffer
[0000 000x xxxx xxxx] X address
[0000 0000 yyyy yyyy] Y address
[1011 1110 1110 1111] Terminator (0xBEEF)

Write TextureEngine Register

OpcodeSubcodeDescription
1000 0000 Object Matrix[4][4]
[nnnn nnnn nnnn nnnn] Object Matrix[0][0] (1.8.7)
[nnnn nnnn nnnn nnnn] Object Matrix[0][1] (1.8.7)
[nnnn nnnn nnnn nnnn] Object Matrix[0][2] (1.8.7)
[nnnn nnnn nnnn nnnn] Object Matrix[0][3] (1.8.7)
[nnnn nnnn nnnn nnnn] Object Matrix[1][0] (1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Object Matrix[3][3] (1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 0001 Normal Matrix[3][3]
[nnnn nnnn nnnn nnnn] Normal Matrix[0][0] (1.0.15)
[nnnn nnnn nnnn nnnn] Normal Matrix[0][1] (1.0.15)
[nnnn nnnn nnnn nnnn] Normal Matrix[0][2] (1.0.15)
[nnnn nnnn nnnn nnnn] Normal Matrix[1][0] (1.0.15)
[...................] ...
[nnnn nnnn nnnn nnnn] Normal Matrix[2][2] (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 0010 Light 1 Vector[3]
[xxxx xxxx xxxx xxxx] X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 0011 Light 2 Vector[3]
[xxxx xxxx xxxx xxxx] X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 0100 Light Coefficients[5]
[0aaa aaaa aaaa aaaa] Ambient coefficient (0.0.15)
[0ddd dddd dddd dddd] Diffuse coefficient 1 (0.0.15)
[0ddd dddd dddd dddd] Diffuse coefficient 2 (0.0.15)
[0sss ssss ssss ssss] Specular coefficient 1 (0.0.15)
[0sss ssss ssss ssss] Specular coefficient 2 (0.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 0110 TextureEngine control register
[cccc cccc cccc cccc] TE control register
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0Color mode
0 = Index Mode
1 = Intensity-Color Mode
1Negative normal
Z coordinate is flipped
2Backface culling
3Skip overflow check
4Specular lighting enable
5Light enable
6TE Test
8Mesh disable
9Reject mode
1000 0111 Window clipping
[0000 000x xxxx xxxx] X left
[0000 0000 yyyy yyyy] Y top
[0000 000x xxxx xxxx] X right
[0000 0000 yyyy yyyy] Y bottom
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1000 Window scaling
[xxxx xxxx xxxx xxxx] X scale (1.15.0)
[xxxx xxxx xxxx xxxx] X translate (1.15.0)
[yyyy yyyy yyyy yyyy] Y scale (1.15.0)
[yyyy yyyy yyyy yyyy] Y translate (1.15.0)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1001 Mesh pattern
[pppp pppp pppp pppp] Mesh pattern
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1010 Source Matrix[4][4]
[nnnn nnnn nnnn nnnn] Source Matrix[0][0] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Source Matrix[0][1] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Source Matrix[0][2] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Source Matrix[0][3] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Source Matrix[1][0] (1.0.15 or 1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Source Matrix[3][3] (1.0.15 or 1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1011 Source Matrix[6]
[xxxx xxxx xxxx xxxx] X maximum (1.8.7)
[xxxx xxxx xxxx xxxx] X minimum (1.8.7)
[yyyy yyyy yyyy yyyy] Y maximum (1.8.7)
[yyyy yyyy yyyy yyyy] Y minimum (1.8.7)
[zzzz zzzz zzzz zzzz] Z maximum (1.8.7)
[zzzz zzzz zzzz zzzz] Z minimum (1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1100 UV offset
[0000 0000 uuuu uuuu] U offset
[0000 0000 vvvv vvvv] V offset
[1011 1110 1110 1111] Terminator (0xBEEF)
1000 1101 Default color
[0000 cccc cccc cccc] Default color
[1011 1110 1110 1111] Terminator (0xBEEF)

Write PixelEngine Register

OpcodeSubcodeDescription
1001 0000 Texture buffer bank
[0000 0000 000b bbbb] Texture buffer bank
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 0001 Target
[iiii iiii iiii iiii] Target register
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0Readback select
0 = Display buffer
1 = Z buffer
1 ~ 2Writeback Enable
bit0 = display buffer
bit1 = Z buffer
1001 0010 Mask
[mmmm mmmm mmmm mmmm] Mask
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 0011 PixelEngine control
[cccc cccc cccc cccc] PixelEngine control register
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0?Flash color
1?Flash intensity
2?R-FOG
3?Fog mode
4?Texture light mode
5?Texture light enable
6?Dither disable
7?PixelEngine Sync
8?Overlay enable
9?Z compare always true
10?12bit mode
11?Wide display
12?Shadow mode
13?Reverse shadow
14?Fog without Z
1001 0100 Clear Z value
[zzzz zzzz zzzz zzzz] Clear Z value
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 0101 Frame control
[cccc cccc cccc cccc] Frame control
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0?Swap
1 ~ 2?Buffer select
3?Swap on Vblank
1001 0110 Clear color value
[cccc cccc cccc cccc] Clear color value
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 0111 Intensity-Color mask
[mmmm mmmm mmmm mmmm] Intensity-color mask
[1011 1110 1110 1111] Terminator (0xBEEF)

Sets the intensity and color depths. Intensity is the top, and color is the bottom.
1001 1000 Flash Intensity-Color value
[0000 vvvv vvvv vvvv] Flash Intensity-Color value
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 1001 Clear texture select
[cccc cccc cccc cccc] Clear texture select
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 1010 Clear mask
[mmmm mmmm mmmm mmmm] Clear mask
[1011 1110 1110 1111] Terminator (0xBEEF)
1001 1011 CWT X offset
[xxxx xxxx xxxx xxxx] CWT X offset
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0 ~ 8X offset
13 ~ 14X bank size
00 = 4 bank
01 = 1 bank
10 = 2 bank
15X wrap enable
1001 1100 CWT Y offset
[yyyy yyyy yyyy yyyy] CWT Y offset
[1011 1110 1110 1111] Terminator (0xBEEF)
BitsDescription
0 ~ 7Y offset
13Y bank size
0 = 2 bank
1 = 1 bank
15Y wrap enable

Misc. Commands

OpcodeSubcodeDescription
1010 0000 Fill buffer
[0000 000x xxxx xxxx] X left
[0000 0000 yyyy yyyy] Y top
[0000 000x xxxx xxxx] X right
[0000 0000 yyyy yyyy] Y bottom
[dddd dddd dddd dddd] Pixel Data
[zzzz zzzz zzzz zzzz] default Z
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 0001 Vertex test
[xxxx xxxx xxxx xxxx] Vtx1 X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] Vtx1 Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] Vtx1 Z coordinate (1.0.15)
[...................] ...
[xxxx xxxx xxxx xxxx] VtxN X coordinate (1.0.15)
[yyyy yyyy yyyy yyyy] VtxN Y coordinate (1.0.15)
[zzzz zzzz zzzz zzzz] VtxN Z coordinate (1.0.15)
[1011 1110 1110 1111] Terminator (0xBEEF)
Tests if the coordinates fit within the source matrix limits.
1010 0010 TE sync
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 0011 Matrix multiply, 3*1
[nnnn nnnn nnnn nnnn] Mtx[0]
[nnnn nnnn nnnn nnnn] Mtx[1]
[nnnn nnnn nnnn nnnn] Mtx[2]
[1011 1110 1110 1111] Terminator (0xBEEF)
Mdst[0~2] = Msrc[0~2][0~2] * Mtx[0~2]
1010 0100 Matrix multiply, 4*4
[nnnn nnnn nnnn nnnn] Mtx[0][0] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][1] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][2] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][3] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[1][0] (1.0.15 or 1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Mtx[3][3] (1.0.15 or 1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
Mdst[0~3][0~3] = Msrc[0~3][0~3] * Mtx[0~3][0~3]
1010 0101 Matrix multiply, 3*3
[nnnn nnnn nnnn nnnn] Mtx[0][0] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][1] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][2] (1.0.15 or 1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[1][0] (1.0.15 or 1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Mtx[2][2] (1.0.15 or 1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
Mdst[0~2][0~2] = Msrc[0~2][0~2] * Mtx[0~2][0~2]
1010 0110 Matrix multiply, 4*4
[nnnn nnnn nnnn nnnn] Mtx[0][0] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][1] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][2] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][3] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[1][0] (1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Mtx[3][3] (1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
Mdst[0~3][0~3] = Msrc[0~3][0~3] * Mtx[0~3][0~3]
1010 0111 Matrix multiply, 3*3
[nnnn nnnn nnnn nnnn] Mtx[0][0] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][1] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[0][2] (1.8.7)
[nnnn nnnn nnnn nnnn] Mtx[1][0] (1.8.7)
[...................] ...
[nnnn nnnn nnnn nnnn] Mtx[2][2] (1.8.7)
[1011 1110 1110 1111] Terminator (0xBEEF)
Mdst[0~2][0~2] = Msrc[0~2][0~2] * Mtx[0~2][0~2]
1010 1000 Matrix copy (dst -> src)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1001 Matrix copy (dst -> obj)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1010 Matrix copy (dst -> normal)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1011 Matrix copy (dst -> result)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1100 Matrix copy (src -> result)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1101 Matrix copy (result -> src)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1110 Matrix copy (dst -> light 1 vector)
[1011 1110 1110 1111] Terminator (0xBEEF)
1010 1111 Matrix copy (dst -> light 2 vector)
[1011 1110 1110 1111] Terminator (0xBEEF)

Read TextureEngine Register

Result is in the readback register.

OpcodeSubcodeDescription
1100 0000 Read TextureEngine register
[rrrr rrrr rrrr rrrr] TextureEngine register number
[1011 1110 1110 1111] Terminator (0xBEEF)
ValueDescription
0x02 Object Matrix[0][0]
Read for 1000 0000
0x04 Object Matrix[0][1]
Read for 1000 0000
0x0C Object Matrix[0][2]
Read for 1000 0000
0x0E Object Matrix[0][3]
Read for 1000 0000
0x10 Object Matrix[1][0]
Read for 1000 0000
0x14 Object Matrix[1][1]
Read for 1000 0000
0x16 Object Matrix[1][2]
Read for 1000 0000
0x1E Object Matrix[1][3]
Read for 1000 0000
0x20 Object Matrix[2][0]
Read for 1000 0000
0x22 Object Matrix[2][1]
Read for 1000 0000
0x26 Object Matrix[2][2]
Read for 1000 0000
0x28 Object Matrix[2][3]
Read for 1000 0000
0x30 Object Matrix[3][0]
Read for 1000 0000
0x32 Object Matrix[3][1]
Read for 1000 0000
0x34 Object Matrix[3][2]
Read for 1000 0000
0x36 Object Matrix[3][3]
Read for 1000 0000
0x37 Ambient Coefficient
Read for 1000 0100
0x38 Normal Matrix[0][0]
Read for 1000 0001
0x39 Diffuse Coefficient 1
Read for 1000 0100
0x3A Normal Matrix[0][1]
Read for 1000 0001
0x3B Diffuse Coefficient 2
Read for 1000 0100
0x3C Normal Matrix[0][2]
Read for 1000 0001
0x3D Specular Coefficient 1
Read for 1000 0100
0x3E Normal Matrix[1][0]
Read for 1000 0001
0x3F Specular Coefficient 2
Read for 1000 0100
0x40 Normal Matrix[1][1]
Read for 1000 0001
0x41 Clipping: X left
Read for 1000 0111
0x42 Normal Matrix[1][2]
Read for 1000 0001
0x43 Clipping: Y top
Read for 1000 0111
0x44 Normal Matrix[2][0]
Read for 1000 0001
0x45 Clipping: X right
Read for 1000 0111
0x46 Normal Matrix[2][1]
Read for 1000 0001
0x47 Clipping: Y bottom
Read for 1000 0111
0x48 Normal Matrix[2][2]
Read for 1000 0001
0x49 Mesh pattern
Read for 1000 1001
0x4A Light 1 Vector[0]
Read for 1000 0010
0x4B Scaling: X scale
Read for 1000 1000
0x4C Light 1 Vector[1]
Read for 1000 0010
0x4D Scaling: X translate
Read for 1000 1000
0x4E Light 1 Vector[2]
Read for 1000 0010
0x4F Scaling: Y scale
Read for 1000 1000
0x50 Light 2 Vector[0]
Read for 1000 0011
0x51 Scaling: Y translate
Read for 1000 1000
0x52 Light 2 Vector[1]
Read for 1000 0011
0x54 Light 2 Vector[2]
Read for 1000 0011
0x56 U offset
Read for 1000 1100
0x58 V offset
Read for 1000 1100
0x5A Default color
Read for 1000 1101
0x61 Source Matrix[0][0]
Read for 1000 1010
0x63 Source Matrix[0][1]
Read for 1000 1010
0x65 Source Matrix[0][2]
Read for 1000 1010
0x67 Source Matrix[0][3]
Read for 1000 1010
0x69 Source Matrix[1][0]
Read for 1000 1010
0x6B Source Matrix[1][1]
Read for 1000 1010
0x6D Source Matrix[1][2]
Read for 1000 1010
0x6F Source Matrix[1][3]
Read for 1000 1010
0x71 Source Matrix[2][0]
Read for 1000 1010
0x73 Source Matrix[2][1]
Read for 1000 1010
0x75 Source Matrix[2][2]
Read for 1000 1010
0x77 Source Matrix[2][3]
Read for 1000 1010
0x79 Source Matrix[3][0]
Read for 1000 1010
0x7B Source Matrix[3][1]
Read for 1000 1010
0x7D Source Matrix[3][2]
Read for 1000 1010
0x7F Source Matrix[3][3]
Read for 1000 1010
0xFF TextureEngine control
Read for 1000 0110

Read PixelEngine Register

Result is in the readback register.

OpcodeSubcodeDescription
1101 0000 Texture buffer bank
Read for 1001 0000
1101 0001 Target
Read for 1001 0001
1101 0010 Mask
Read for 1001 0010
1101 0011 PixelEngine control
Read for 1001 0011
1101 0100 Clear Z value
Read for 1001 0100
1101 0101 Frame control
Read for 1001 0101
1101 0110 Clear color value
Read for 1001 0110
1101 0111 Intensity-Color mask
Read for 1001 0111
1101 1000 Flash Intensity-Color value
Read for 1001 1000
1101 1001 Clear texture select
Read for 1001 1001
1101 1010 Clear mask
Read for 1001 1010
1101 1011 CWT X offset
Read for 1001 1011
1101 1100 CWT Y offset
Read for 1001 1100

Write LUT

Specifies the colors used for overlays. LUT 0 is always transparent.

OpcodeSubcodeDescription
1110 0001 Write LUT 1
[0000 cccc cccc cccc] LUT entry data
[1011 1110 1110 1111] Terminator (0xBEEF)
1110 0010 Write LUT 2
[0000 cccc cccc cccc] LUT entry data
[1011 1110 1110 1111] Terminator (0xBEEF)
1110 0011 Write LUT 3
[0000 cccc cccc cccc] LUT entry data
[1011 1110 1110 1111] Terminator (0xBEEF)

Read LUT

Read the colors used for overlays. LUT 0 is always transparent.

Data is in the readback register.

OpcodeSubcodeDescription
1111 0001 Read LUT 1
[1011 1110 1110 1111] Terminator (0xBEEF)
1111 0010 Read LUT 2
[1011 1110 1110 1111] Terminator (0xBEEF)
1111 0011 Read LUT 3
[1011 1110 1110 1111] Terminator (0xBEEF)

[TOP]