More shader instruction definitions

This commit is contained in:
wheremyfoodat 2023-07-01 01:17:04 +03:00
parent 726897231c
commit 005db316cf
2 changed files with 9 additions and 0 deletions

View file

@ -17,6 +17,10 @@ namespace ShaderOpcodes {
DP3 = 0x01,
DP4 = 0x02,
DPH = 0x03,
DST = 0x04,
EX2 = 0x05,
LG2 = 0x06,
LIT = 0x07,
MUL = 0x08,
SLT = 0x0A,
FLR = 0x0B,

View file

@ -150,8 +150,13 @@ void ShaderEmitter::compileInstruction(const PICAShader& shaderUnit) {
case ShaderOpcodes::RCP: recRCP(shaderUnit, instruction); break;
case ShaderOpcodes::RSQ: recRSQ(shaderUnit, instruction); break;
// Unimplemented opcodes that don't seem to actually be used but exist in the binary
// EMIT/SETEMIT are used in geometry shaders, however are sometimes found in vertex shaders?
case ShaderOpcodes::EX2:
case ShaderOpcodes::LG2:
case ShaderOpcodes::EMIT:
case ShaderOpcodes::SETEMIT:
log("[ShaderJIT] Unknown PICA opcode: %02X\n", opcode);
emitPrintLog(shaderUnit);
break;