Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Super FX 2 and other SNES Enhancement Chip Support #25

Open
sampwnz opened this issue Jan 13, 2025 · 0 comments
Open

Super FX 2 and other SNES Enhancement Chip Support #25

sampwnz opened this issue Jan 13, 2025 · 0 comments

Comments

@sampwnz
Copy link

sampwnz commented Jan 13, 2025

I’ve been using Sodium64 with an Everdrive64 X7 on my N64 and noticed that while many SNES games run great, others do not run at all due to current limitations. Yoshi’s Island for example utilizes the SNES cartridge Super FX chip (GSU-2), making it more difficult to emulate. I understand that emulating enhancement chips like the Super FX is especially challenging due to the increased CPU demands and I was curious if support for this is in the development pipeline.

I’m wondering about the limits of the N64’s MIPS CPU (R4300i) for handling both SNES and Super FX chip emulation at the same time. Dynamic recompilation for Super FX instructions (to N64 MIPS code) might be a feasible optimization path, but perhaps the hardware limitations would get in the way of this optimization. I know that PC-based SNES emulators achieve good performance with a mix of dynamic recompilation and accurate timing models, and maybe a similar technique adapted to the N64’s architecture could be viable. This could be done by implementing a simplified dynamic recompiler for the Super FX chip’s RISC instruction set, converting its commands into MIPS instructions.

Or could the N64’s Reality Co-Processor (RCP) act as the Super FX for graphical operations like sprite scaling and rotation? The Super FX handles sprite transformations and 3D effects. Could the RDP potentially be used?

I realize that adding full support for Super FX may be an ambitious project with diminishing returns, but even partial support would be an exciting development.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant