Come funziona
Qui girano giochi homebrew per Game Boy Advance scritti da me: codice Rust compilato per il processore ARM7TDMI della console, grafica disegnata a mano e impacchettata in una ROM da 512 KiB.
Dentro il browser
La pagina monta EmulatorJS, un frontend web per i core libretro, e il core mGBA compilato in WebAssembly: la console è emulata dentro la scheda, frame per frame, con la grafica disegnata via WebGL. Le partite non passano da nessun server se non per scaricare la ROM.
La ROM non è copiata dentro il sito: viene servita all'istante dalla release più recente del repository del gioco, quindi quando pubblico una versione nuova arriva subito anche qui.
Crediti e licenze
- I giochi — grafica, codice, musica quando ci sarà — sono miei, tutti i diritti riservati.
- EmulatorJS, il frontend dell'emulatore, è distribuito con licenza GPL-3.0:
i file sono serviti non modificati da
/emulatorjs/; sorgente, licenza. - Il core mGBA derivato da mgba-emu/mgba è distribuito con licenza MPL-2.0; il pacchetto del core è EmulatorJS/mgba.
Il portale
Il sito è statico (HTML, CSS, un paio di funzioni Cloudflare) e vive su Cloudflare Pages. I repository dei giochi, il manifesto e lo script di pubblicazione stanno su https://git.marric.quest.