Update README.md

This commit is contained in:
snesrev 2023-08-16 16:11:38 +02:00 committed by GitHub
parent dfe1c4fecc
commit 747df5a2c7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 51 additions and 1 deletions

View File

@ -1,8 +1,19 @@
# smw
A reimplementation of Super Mario World.
Our discord server is: https://discord.gg/AJJbJAzNNJ
Early version. It has bugs and the code is messy.
## About
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](https://github.com/elzo-d/LakeSnes), but with lots of speed optimizations.
## Building
You must self-build for now. Easy method on 64-bit Windows (no terminal or big downloads):<br>
(1) Download [Python](https://www.python.org/ftp/python/3.11.4/python-3.11.4-amd64.exe) if you don't have it and install with "Add to PATH" checked<br>
@ -17,3 +28,42 @@ For other platforms and compilers, see: https://github.com/snesrev/smw/blob/main
When running, 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. Please submit these bug snapshots on discord so that they can be fixed.
## Usage and controls
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 |