GPU/Shader Instruction Set: Difference between revisions
nihstro is more advanced than aemstro in a number of areas, hence it makes sense to mention it here. |
→Instructions: geometry shader opcodes ! |
||
Line 137: | Line 137: | ||
| 1 | | 1 | ||
| MOV | | MOV | ||
| Moves value from one register to another; DST = SRC1 | | Moves value from one register to another; DST = SRC1. | ||
|- | |||
| 0x21 | |||
| 1 | |||
| END2 | |||
| ? | |||
|- | |||
| 0x22 | |||
| 1 | |||
| END1 | |||
| ? | |||
|- | |- | ||
| 0x24 | | 0x24 | ||
Line 157: | Line 167: | ||
| 2 | | 2 | ||
| IF? | | IF? | ||
| If condition (don't know how condition flags work yet) is true, then executes instructions until DST, then jumps to DST+NUM; else, jumps to DST | | If condition (don't know how condition flags work yet) is true, then executes instructions until DST, then jumps to DST+NUM; else, jumps to DST | ||
|- | |- | ||
| | | 0x2A | ||
| | | 0 (no param) | ||
| | | ENDEMIT | ||
| | | (geometry shader only) Signifies that we are done emitting a vertex. | ||
|- | |- | ||
| | | 0x2B | ||
| ? | | ? | ||
| STARTEMIT | |||
| (geometry shader only) Signifies that we are about to emit a vertex. Parameter meaning unknown but is located at bit 22 and is 4 bit long. | |||
|- | |- | ||
| 0x2E | | 0x2E |