mirror of
https://github.com/RetroPortingToolKit/psxrecomp
synced 2026-10-26 18:25:35 -04:00
80a27545dc
The strict translator rejected opcode 0x12 (COP2) as "not implemented", causing all GTE functions to be skipped during emission. The code generator already handled COP2 — only the strict translator was missing. Added to strict_translator.cpp: - MFC2/CFC2: move from GTE data/control registers - MTC2/CTC2: move to GTE data/control registers - GTE commands (bit 25 set): route through gte_execute() - LWC2 (opcode 0x32): load word to GTE data register - SWC2 (opcode 0x3A): store word from GTE data register Added gte_execute extern declaration to full_function_emitter.cpp for both dispatch and full file headers. Result: 0 dispatch misses (was 5 COP2/GTE + cascading CARD driver). Emitted functions: 1085 (was 1056). Unsupported instructions: 4 (was 34). Only 2 skipped functions remain (COP1/FPU + SUB opcode). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>