La rete è piena di guide, tutorial e accessori hardware per eseguire il backup dei giochi per Game Boy, Game Boy Color e Game Boy Advance. Tuttavia, il modder e youtuber noto come «TheZZAZZGlitch» ha deciso di esplorare una strada alternativa più caotica: bloccare un gioco per Game Boy Advance e ricostruirlo a partire dal suono generato dagli errori. Il processo richiede ore intere di registrazioni e la correzione di molti bug, ma c'è molto da imparare.

Come ricostruire un gioco per Game Boy Advance dai suoni dei suoi errori
Game Boy Advance

La famiglia Game Boy ha molti punti a favore, e uno di questi è la relativa robustezza delle sue cartucce, anche se sono lontane dall'essere immortali. Le batterie esaurite, l'attrito nei connettori, l'umidità, gli urti e la «flex» del PCB sono alcune delle cause che possono mettere fuori combattimento una cartuccia, generando ogni tipo di errore. Ma cosa succede se provochiamo noi stessi questi errori?

Lo youtuber «TheZZAZZGlitch» si dedica a esplorare glitch e hack nelle prime generazioni dei giochi Pokémon. In altre parole, bloccare i giochi Pokémon è la sua specialità. In uno dei suoi ultimi video, «TheZZAZZGlitch» ha spiegato il suono del crash o blocco su Game Boy Advance e lì suggerisce che l'intero contenuto della cartuccia può essere ricostruito usando solo quell'audio...

La Game Boy Advance che canta la sua memoria

Per farla breve, il suono della Game Boy Advance viene trasmesso tramite un piccolo buffer in RAM usando DMA. Quando si arriva alla fine del buffer, viene attivata un'interruzione per aggiornare i dati e riportare il puntatore DMA all'inizio. Tuttavia, durante un evento di blocco, l'interruzione viene persa e il puntatore DMA non riceve mai il reset, quindi continua a inviare l'intero contenuto della memoria all'altoparlante come se fosse suono.

Dopo aver aspettato quasi due ore, «TheZZAZZGlitch» ha ottenuto un suono a 8 bit a 13.1 kHz. Con l'aiuto di uno script in Python (e lo sforzo di passare due giorni a correggere bug), è riuscito a ottenere una ricostruzione al 99,76 per cento... anche se non era sufficiente. Combinando tre registrazioni applicando un algoritmo di «voto di maggioranza», la precisione è salita al 99,979 per cento. La ROM si è avviata nell'emulatore, ma aveva ancora troppi errori. La chiave? Più registrazioni: con sette dump diversi, la precisione ha raggiunto il 100 per cento, ripristinando completamente la ROM

La seconda metà del video si concentra sul ripetere il processo utilizzando hardware reale, e come extra, una cartuccia falsa di Pokémon Emerald. In questo caso ha avuto bisogno di 45 registrazioni, e anche così non ha raggiunto il 100 per cento (99,9837%), ma il gioco si è avviato correttamente. Per finire, la cartuccia nascondeva una sorpresa: non avendo né batteria né chip dedicato, i salvataggi sono memorizzati nella stessa memoria Flash in cui è stato inserito il gioco. Qualcuno ha fatto un ottimo lavoro hackerando quella cartuccia falsa, ed è probabile che «TheZZAZZGlitch» la esplori più da vicino in futuro.

Accedi al canale: Clicca qui