Repository navigation
SuperModel NX 1.1.0
Audio and performance update for SuperModel NX, the Sega Model 3 arcade emulator for Nintendo Switch.
What's new
- Sound effects and speech no longer crackle. SDL's audio thread was starting at the lowest priority on the same core as the renderer, so long frames starved it. It now runs on its own core above the emulator threads, with larger audio buffers.
- No more stutter during loading and attract mode. 3D textures now upload in one call per texture area instead of one call per row, and the 2D layers rotate between three textures so uploads never wait on the GPU. In Scud Race, drops to 20–30 FPS and hitches of 100–440 ms are gone.
- Faster PowerPC recompiler. Reads of the PowerPC decrementer register are now compiled instead of interpreted. Scud Race does up to 150,000 of these per frame.
- 3D state from one buffer. Each mesh's settings now come from a single buffer per pass instead of about 25 shader uniforms per mesh (
New3DBatchedDraws, on by default). A self-test at startup picks a method the GPU driver handles correctly. - New
RenderScaleoption (25–100, default 100). Renders at a percentage of the resolution and upscales. - Better logs. The log reports audio timing and a breakdown of 3D render time. It also keeps the logs of the three previous runs (
Supermodel.1.logto.3.log).
Installation
- Copy
supermodel.nroto/switch/supermodel/on your SD card, replacing the old one. - Put your MAME-style ROM zips in
/switch/supermodel/ROMs/. - Optional: put your NVRAM files in
/switch/supermodel/NVRAM/(e.g.daytona2.nv), or set each game up once in its test menu. - Requires Atmosphère. Launch in title mode (hold R while opening a game) for full memory.
When you update from 1.0, your existing Config/Supermodel.ini is kept. The new settings use their defaults until you add them under [ Global ].
Tips
- In 3D-heavy races (e.g. Scud Race), the GPU is the limit. With sys-clk, raise the GPU clock rather than the CPU's.
RenderScale = 75holds 60 FPS in Scud Race races (52–57 FPS at 100), but the image is softer.- If a game shows no 3D, set
New3DBatchedDraws = 0to go back to the original rendering path, and please report it with yourLog/Supermodel.log. Do not useNew3DBatchedDraws = 2on the Switch: it hangs the GPU.
No ROMs or NVRAM data are included. Not affiliated with or endorsed by Sega or Nintendo.
By ToniiSound and Thorhax. Based on Supermodel (The Supermodel Team) and Libretro-Supermodel. Licensed under GPL v3.
❤️ Enjoying the port?
If this project helped you out, consider buying me a coffee on Ko-fi or supporting on Patreon to support future updates!