A reimplementation of Super Mario World.
Our discord server is: https://discord.gg/AJJbJAzNNJ
This is a reverse engineered clone of Super Mario World.
It reimplements all parts of the original game and a bunch of mods added by Lunar Magic. The game is playable from start to end.
You need a copy of the ROM to extract game resources (levels, images). Then once that's done, the ROM is no longer needed.
It uses the PPU and DSP implementation from LakeSnes, but with lots of speed optimizations.
TCC SDL2 A rom that has this exact hash 6B47BB75D16514B6A476AA0C73A683A2A4C18765.
You can check the hash running python /assets/restool.py
tcc -run nobuild.c
The game will be on build folder, enjoy!
The game supports snapshots. The joypad input history is also saved in the snapshot. It's thus possible to replay a playthrough in turbo mode to verify that the game behaves correctly.
Button | Key |
---|---|
Up | Up arrow |
Down | Down arrow |
Left | Left arrow |
Right | Right arrow |
Start | Enter |
Select | Right shift |
A | X |
B | Z |
X | S |
Y | A |
L | C |
R | V |
The keys can be reconfigured in smw.ini
Additionally, the following commands are available:
Key | Action |
---|---|
Tab | Turbo mode |
P | Pause (with dim) |
Shift+P | Pause (without dim) |
Ctrl+Up | Increase window size |
Ctrl+Down | Decrease window size |
T | Toggle replay turbo mode |
K | Clear all input history from the joypad log |
L | Stop replaying a shapshot |
R | Toggle between fast and slow renderer |
F | Display renderer performance |
F1-F10 | Load snapshot |
Alt+Enter | Toggle Fullscreen |
Shift+F1-F10 | Save snapshot |
Ctrl+F1-F10 | Replay the snapshot |
It runs an emulated version in the background and compares the ram state every frame. If it detects a mismatch, it saves a snapshot in saves/ and displays a counter on screen counting down from 300.