Il team Snesrev ha eseguito il reverse engineering di Super Metroid, lo sparatutto e platform 2D pubblicato da Nintendo nel corso del 1994 per console Super Nintendo.
Come per Zelda3 (il porting e reverse engineering di Zelda 3 – A Link to the Past) ora anche Super Metroid potrebbe arrivare su altre piattaforme, come PlayStation Vita, Xbox One/Series o Nintendo Switch.
Super Metroid now has a native PC porthttps://t.co/0VYMMVfHor
— sentient 6 (@sentientsixp) March 7, 2023
Questa è comunque una primissima versione non priva di bug che deve essere compilata assieme alla ROM del gioco (file sm.smc
con valore hash SHA1 da957f0d63d14cb441d215462904c4fa8519c613).
Durante l’esecuzione, verranno eseguite entrambe le versioni confrontandoli fotogramma per fotogramma. Se rileverà una mancata corrispondenza, salverà un’istantanea in saves/
e visualizzerà un contatore sullo schermo con un conto alla rovescia da 300.
Il server discord del team Snesrev si trova su: https://discord.gg/AJJbJAzNNJ
Guida alla compilazione
Requisiti
- Una ROM di Super Metroid (assicuratevi di rinominarla in
sm.smc
). - libsdl2-dev.
Per Linux/MacOS è necessario installarli per il sistema operativo desiderato:
- Ubuntu/Debian:
sudo apt install libsdl2-dev
- FedoraLinux:
sudo dnf in sdl2-devel
- ArcoLinux:
sudo pacman -S sdl2
- Mac OS:
brew install sdl2
Windows
Compilazione con MSYS2
Dipendenze e requisiti (assicuratevi di utilizzare MINGW64, altrimenti non funzionerà):
- La libreria
libsdl2-dev
- MSYS2
- Installare MSYS2 sulla propria macchina.
- Clonare la repository SM. Digitare dunque
git clone https://github.com/snesrev/sm
- Caricare la copia della ROM legittima nella directory principale.
- Installare la libreria
libsdl2-dev
con il comandosdl2-config --cflags
- Dopo che emetterà
-IC:/msys64/mingw64/include/SDL2 -Dmain=SDL_main
, digitare il comandosdl2-config --libs
, dovrebbe emettere-LC:/msys64/mingw64/lib -lmingw32 -mwindows -lSDL2main -lSDL2
- Installare infine Make e GCC, digitando il comando
pacman -S make && pacman -S mingw-w64-x86_64-gcc
[stextbox id=’info’]Nota: Assicuratevi di essere nella directory sm
.[/stextbox]
Dopo aver terminato di installare il tutto, digitate cd nella cartella sm
. Digitare infine make
, o per velocizzare la compilazione digitare make -y16
.
Compilare con Visual Studio
Dipendenze e requisiti:
- La libreria
libsdl2-dev
, che viene installata automaticamente con NuGet. - Comunità di Visual Studio 2022
Scaricare il programma di installazione VS. Nel prompt del programma di installazione, assicuratevi di essere su “Workloads” e controllare Desktop Development with C++
, questo installerà i deps necessari per la compilazione.
- Aprire la soluzione
sm.sln
. - Cambiare la destinazione della build da
Debug
aRelease
. - Costruire infine la soluzione.
Compilare con Tiny C Compiler
Dipendenze e requisiti:
- Decomprimere sia TCC che SDL e inserirli nella cartella
third_party
. - Fare doppio clic su
run_with_tcc.bat
. - Aspetta che venga compilato e il gioco si avvierà automaticamente.
Linux/Mac OS
Cd nella tua cartella principale SM, aprire il terminale e digitare il comando: make
Per un uso più avanzato:
make -j$(nproc) # eseguito su tutti i core
make clean all # cancella gen+obj e ricostruisci
CC=clang make # specifica il compilatore
Download: Source code sm (Super Metroid)
Fonte: twitter.com