We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
Super FX Opcode Matrices: Difference between revisions
From SnesLab
(→ALT1 = 0, ALT2 = 1: added GETBL) |
(→ALT1 = 1, ALT2 = 1: added GETBS) |
||
Line 212: | Line 212: | ||
| Dx || || || || || || || || || || || || || || || || [[GETC]] | | Dx || || || || || || || || || || || || || || || || [[GETC]] | ||
|- | |- | ||
| Ex || || || || || || || || || || || || || || || || | | Ex || || || || || || || || || || || || || || || || [[GETBS]] | ||
|- | |- | ||
| Fx || || || || || || || || || || || || || || || || | | Fx || || || || || || || || || || || || || || || || |
Revision as of 04:01, 25 May 2023
The Super FX has two prefix flags called ALT1 and ALT2 that alter the way the GSU interprets opcodes. These four opcode matrices will show which instruction actually runs depending on how those prefix flags are set.
ALT1 = 0, ALT2 = 0
x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x | STOP | NOP | CACHE | LSR | ROL | BRA | BGE | BLT | BNE | BEQ | BPL | BMI | BCC | BCS | BVC | BVS |
1x | ||||||||||||||||
2x | ||||||||||||||||
3x | LOOP | ALT1 | ALT2 | ALT3 | ||||||||||||
4x | PLOT | SWAP | COLOR | NOT | ||||||||||||
5x | ||||||||||||||||
6x | ||||||||||||||||
7x | MERGE | |||||||||||||||
8x | ||||||||||||||||
9x | SBK | LINK #1 | LINK #2 | LINK #3 | LINK #4 | SEX | ASR | ROR | LOB | FMULT | ||||||
Ax | ||||||||||||||||
Bx | ||||||||||||||||
Cx | HIB | |||||||||||||||
Dx | GETC | |||||||||||||||
Ex | GETB | |||||||||||||||
Fx |
ALT1 = 0, ALT2 = 1
x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x | STOP | NOP | CACHE | LSR | ROL | BRA | BGE | BLT | BNE | BEQ | BPL | BMI | BCC | BCS | BVC | BVS |
1x | ||||||||||||||||
2x | ||||||||||||||||
3x | LOOP | ALT1 | ALT2 | ALT3 | ||||||||||||
4x | PLOT | SWAP | COLOR | NOT | ||||||||||||
5x | ||||||||||||||||
6x | ||||||||||||||||
7x | MERGE | |||||||||||||||
8x | ||||||||||||||||
9x | SBK | LINK #1 | LINK #2 | LINK #3 | LINK #4 | SEX | ASR | ROR | LOB | FMULT | ||||||
Ax | ||||||||||||||||
Bx | ||||||||||||||||
Cx | HIB | |||||||||||||||
Dx | GETC | |||||||||||||||
Ex | GETBL | |||||||||||||||
Fx |
ALT1 = 1, ALT2 = 0
x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x | STOP | NOP | CACHE | LSR | ROL | BRA | BGE | BLT | BNE | BEQ | BPL | BMI | BCC | BCS | BVC | BVS |
1x | ||||||||||||||||
2x | ||||||||||||||||
3x | LOOP | ALT1 | ALT2 | ALT3 | ||||||||||||
4x | PLOT | SWAP | CMODE | NOT | ||||||||||||
5x | ||||||||||||||||
6x | ||||||||||||||||
7x | MERGE | |||||||||||||||
8x | ||||||||||||||||
9x | SBK | LINK #1 | LINK #2 | LINK #3 | LINK #4 | SEX | DIV2 | ROR | LOB | FMULT | ||||||
Ax | ||||||||||||||||
Bx | ||||||||||||||||
Cx | HIB | |||||||||||||||
Dx | GETC | |||||||||||||||
Ex | GETBH | |||||||||||||||
Fx |
ALT1 = 1, ALT2 = 1
x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x | STOP | NOP | CACHE | LSR | ROL | BRA | BGE | BLT | BNE | BEQ | BPL | BMI | BCC | BCS | BVC | BVS |
1x | ||||||||||||||||
2x | ||||||||||||||||
3x | LOOP | ALT1 | ALT2 | ALT3 | ||||||||||||
4x | PLOT | SWAP | COLOR ? | NOT | ||||||||||||
5x | ||||||||||||||||
6x | ||||||||||||||||
7x | MERGE | BIC #1 | BIC #2 | BIC #3 | BIC #4 | BIC #5 | BIC #6 | BIC #7 | BIC #8 | BIC #9 | BIC #10 | BIC #11 | BIC #12 | BIC #13 | BIC #14 | BIC #15 |
8x | ||||||||||||||||
9x | SBK | LINK #1 | LINK #2 | LINK #3 | LINK #4 | SEX | DIV2 ? | ROR | LOB | FMULT | ||||||
Ax | ||||||||||||||||
Bx | ||||||||||||||||
Cx | HIB | |||||||||||||||
Dx | GETC | |||||||||||||||
Ex | GETBS | |||||||||||||||
Fx |