Vai al commento


TheEnt

La verità sul bug della lega nella rom di Smeraldo

Recommended Posts

Inviato (modificato)

Sono passati quasi 15 anni dall'incidente della rom di Smeraldo che cancellava il salvataggio dopo la lega e nessuno tranne 1-2 persone ha mai saputo cosa è effettivamente successo.

Ebbene, credo sia il momento di raccontarlo :looksi:

 

Inizia tutto 15 anni fa in questo giorno, 15 settembre 2005. Ero un ragazzino di 14 anni, primo anno di superiori, appassionato di Pokémon sin dalle medie, e come ogni quattordicenne non avevo granché budget da dedicare ai videogiochi. Era proprio per questo motivo che durante l'estate avevo deciso di mettere da parte un po' di solti (raccolti anche vendendo pokemon hackati con Pokemaker, ma shh) e fare finalmente il grande salto: avevo appena comprato online la mia prima flash card, una Flash2Advance di seconda mano.

 

Ora, dovete sapere che nel 2005 le micro SD erano quasi fantascienza. Giravano i primi articoli sulle nuovissime "Transflash" (vecchio nome delle micro SD), ma qualunque flash card usasse miniSD era costosa in maniera proibitiva per le mie giovani tasche.

 

Per questo avevo ripiegato sulla F2A: aveva 256 megabit di memoria interna, 32 MB, appena abbastanza per due giochi di terza generazione, ma rientrava nel budget.

Avendo soltanto una memoria interna (due in realtà, c'era anche una SRAM per i salvataggi mantenuta da una batteria tampone, ma su questo ci torneremo più avanti), l'unico modo per copiarci su le rom era utilizzare un cavetto USB chiamato Linker, da collegare al PC da una parte e nella porta Game Link del GBA dall'altra.

Questo Linker però permetteva anche di fare altre cose interessanti: permetteva anche di gestire i salvataggi sulle cassette originali, permettendone il backup ed il restore (cosa che semplificava parecchio il mercato dei pokemon hackati), ma soprattutto, con un po' di sperimentazione, permetteva di dumpare le cassette in rom! La mia giovane mente esplodeva pensando alle potenzialità.

 

Potenzialità che sarebbero state messe in pratica poco più di un mese dopo, il 18/19 ottobre, un paio di giorni prima dell'uscita di Smeraldo.

Nel tardo pomeriggio di quel giorno ricevo una chiamata dal mio più grande di amico d'infanzia, con cui ho condiviso la passione per i videogiochi e per Pokémon sin dall'inizio. Era successo l'impensabile, passava da un negozio di giocattoli e ha visto in mostra ciò che aspettava da mesi dopo aver saltato Rubino e Zaffiro: quel negozio aveva messo in vendita Smeraldo un paio di giorni prima del rilascio, e lui l'aveva comprato.

 

Non ci ho pensato due volte, volevo anche io quel gioco. Gli ho chiesto di venire a casa mia immediatamente, e saltando la cena siamo andati immediatamente nella mia stanza, alla stessa scrivania da cui sto scrivendo questo post e che non vedevo da mesi a causa del covid (oggi ho 29 anni, convivo con la mia ragazza a 1000 km da casa dei miei, ma soprattutto in questo periodo non fa male passare qualche giorno con loro).

 

Tornando a noi, lui aveva a malapena raggiunto Petalipoli quando è arrivato da me, ma immediatamente abbiamo collegato il suo GBA al Linker e dopo un paio di tentativi a smanettare con i parametri siamo riusciti ad avere un dump pulito e funzionante. L'abbiamo lanciata sull'emulatore, Visual Boy Advance ovviamente, e a parte un avviso sulla batteria scarica e problemi all'orologio  (VBA aveva ancora qualche problema con l'RTC) sembrava tutto ok.

 

La stessa cosa non si poteva dire però della mia F2A. Il gioco lì pareva andare, ma aveva un grosso problema: non si riusciva a salvare. A volte si freezava provandoci, a volte diceva di aver completato il salvataggio, ma dopo un reboot... niente, nuovo gioco.

 

Ed ecco che torniamo al discorso della SRAM. La mia F2A aveva solo una SRAM, mentre i titoli Pokémon usavano delle flash (e anche discretamente grandi, 64K in rubino e zaffiro e 128K negli altri titoli della serie per GBA). Tutt'oggi in VBA trovate l'opzione per scegliere quale usare. Mi sono immediatamente ricordato che nei tanti tool per l'hacking delle rom trovati su internet su siti più o meno sospetti ce n'era uno che permetteva di cambiare vari parametri della rom, valeva la pena provare, no?

 

Non sapevo cosa facesse effettivamente quel tool (e non lo so tuttora, anche se adesso avrei le skill per capirlo non ho idea di dove sia finito), ma fatto sta che funzionava: il gioco salvava e caricava correttamente. Mi sono tenuto la copia originale pulita e dumpata dalla cassetta però, just in case. Una cosa che notai quasi subito però era che i salvataggi della rom patchata non andavano sulla rom pulita e viceversa. Ma ero giovane e inesperto, non avevo idea del perché.

 

Quella sera il mio amico restò a cena da me, e parlammo di quanto fossimo stati fortunati: lui a trovare il gioco e io ad avere un amico come lui che non si è posto il minimo problema a farmi fare una copia del suo gioco nuovo di pacca, e di come fossimo potenzialmente i primi ad avere per le mani una rom di Smeraldo in italiano.

 

Già, i primi.

 

Pensa quanto ci saremmo potuti bullare sui forum come Pokemon Millennium, o su IRC (si, sono vecchio).

Oppure potevamo ricambiare un po' quello che abbiamo avuto dai forum. D'altra parte, i veterano se lo ricorderanno, proprio Pokémon Millennium era il sito dove sapevamo di poter trovare una selezione curata di rom (eh si, prima qui si hostavano anche le rom), di tool e di informazioni.

 

Forse era il momento di restituire qualcosa alla community? In fondo si.

Ma eravamo comunque ragazzini, e bullarci era importante. Decidiamo quindi di vandalizzare la rom con un messaggio che chiunque avrebbe visto, esattamente com'era nella prima rom in assoluto che avessimo mai trovato su internet, una rom di Ruby in inglese. Il messaggio di errore della batteria. Immediatamente scrivo un messaggio a Quiksilver, l'admin di Pokémon Millennium (se mi leggi: ciao!), mentre tiro fuori più velocemente possibile il tool per l'editing delle stringhe dal pack di Elitemap e mi metto al lavoro per trovare l'offset giusto e per aggiungere il messaggio. Non potevamo usare i nostri nomi ovviamente, quindi abbiamo usato le prime cose che ci venissero in mente. Io avevo letto da poco l'intera trilogia del Signore degli Anelli, ed ero rimasto colpito dagli Ent. Lui era un appassionato dell'antico Egitto. Scegliemmo The Ent e Anubis.

 

Nel frattempo Quik mi aveva risposto, ci sentiamo al volo su MSN e con tutta la velocità permessa del mio fantastico modem 56k gli invio la rom.

Ho fatto il mio dovere, ho restituito alla community, il post va immediatamente sul sito e come premio ricevo uno sprecatissimo ruolo da autore di news sul sito.

 

O almeno così credevo.

 

Dopo qualche giorno arrivano le lamentele, del problema che molti ormai conoscono: una volta raggiunta la lega, il salvataggio si cancella. Le stesse segnalazioni arrivano anche dai miei amici con cui avevo condiviso privatamente la rom. Panico. Io stesso ero arrivato al secondo campione.

 

Ho sbagliato parametri nel Linker per il dump? No, non è possibile, tutte le altre volte in cui ho sbagliato parametri il gioco non partiva proprio.

Dump corrotto per qualche motivo? Avevo ripetuto il dump 3 volte una volta beccati i parametri, giusto per essere sicuro, e tutte e tre le volte avevo avuto lo stesso hash MD5.

O magari si è corrotta con l'invio? Non mi sono mai fidato granché dell'invio di file con MSN.

 

Volo sul sito, cerco la news e scarico la mia stessa rom. 30 minuti per scaricare uno zip da appena 5 MB. Pare strano pensarci oggi.

Una volta estratto lo zip lo confronto immediatamente con il file pulito che avevo dumpato, gli hash non corrispondono. Il panico aumenta.

Penso, un momento, ma è normale che non corrisponda, ho modificato il testo prima di inviarla! Questa è la rom pulita, per forza non corrisponde!

Ripeto la mod, di nuovo hash diverso. Carico entrambe in un hex editor, c'erano solo pochi byte diversi all'inizio della rom, lontano dall'area del testo, non avevo idea di cosa stesse succedendo.

 

A quel punto ho un attimo di gelo. Ripeto il controllo dell'hash, ma stavolta invece di confrontare la rom scaricata con Smeraldo_ITA.agb, la confronto con Smeraldo_ITA_SRAM.agb...

 

Match. Erano lo stesso file.

 

Dopo una sana dose di testate, mi decido di riscrivere a Quik. Gli mando la rom senza la patch della SRAM, ma con un messaggio iniziale diverso in modo che la versione "fixata" sia riconoscibile da quella originale. Sparisco un po' dalla scena, dopo un paio di mesi il mio ruolo da autore viene (giustamente) revocato per inattività, ma continuo ogni tanto a sentirmi coi ragazzi del team su MSN, finché non prendiamo strade diverse (e abbandoniamo tutti MSN, prima che lui abbandoni tutti noi).

 

Ed ecco la storia del bug della lega, ovvero di come la fretta di essere il primo a pubblicare una rom abbia portato un ragazzino a cliccare sul file sbagliato.

 

Per tutti quelli che hanno perso ore di gioco per colpa di questo: vi pongo le mie più sincere scuse.

 

Per tutti, spero abbiate apprezzato questo piccolo resoconto di cosa effettivamente successe quella sera :D

 

Per quanto riguarda me, ho smesso di giocare poco dopo, con l'arrivo della quarta generazione. Non ha mai preso su di me, e anche i titoli successivi non hanno avuto secondo me la magia delle prime tre generazioni, fino ad arrivare all'insulto che sono Scudo e Spada. È stato bello finché è durato però!

Modificato da TheEnt

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme


Inviato (modificato)

Bella storia.:smile3: Io nel 2005 andavo alle superiori e non sapevo nemmeno cosa fossero le micro sd e le rom dei giochi. Si certo, conoscevo i giochi piratati ma per computer e playstation. Come memorie di archiviazione conoscevo principalmente cd e floppy. Mi ricordo anche il modem 56k dove bisognava collegarsi ad internet componendo un numero di telefono. Io lo avevo nei primi anni 2000 da ragazzino. E non conoscevo msn o simili, con gli amici ci sentivamo per telefono o sms. Le email erano scarse. Non sapevo che su Millennium c'erano le rom dei giochi Pokemon.

Modificato da norve

 Vu2veRl.png2CryY9Y.pngTapu Lele by @Freedom 

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
6 ore fa, M0viz ha scritto:

quindi... ora lo sappiamo!

grazie un sacco di averlo scritto!

 

Mi sono anche appena accorto che non ho spiegato cosa effettivamente succedeva, che spiega anche l'incompatibilità dei salvataggi!

Il salvataggio su SRAM era più piccolo del dovuto, e battere la lega lo faceva andare oltre il limite. Era per questo che il salvataggio veniva cancellato, all'avvio il gioco fa un controllo di integrità sul savegame, e se lo trova corrotto (o troncato, come in questo caso) lo ignora e ti fa scrivere sopra.

 

Non ho mai provato la teoria dato che non ho più quella rom (anzi, se qualcuno dovesse averla mi scriva in PM), ma credo che non fosse la rom in se a cambiare.

All'inizio della rom c'è un'area chiamata header che contiene alcune informazioni come il title code, la regione, l'autore e metadati sui tipi di memorie e mapper contenuti nella cassetta. Al gioco queste informazioni non servono, vengono usate da altro, ad esempio il GameBoy Color e Advance usano il title code per riconoscere certi giochi per Gameboy classico e applicano palette particolari per avere un po' di colore, oppure per capire se un gioco ha degli enhancemente per il Super Gameboy ecc.

E vengono usati anche dagli emulatori per capire che hardware emulare effettivamente dato che le cassette non sono delle "semplici" memory card!

La mia teoria è che quel tool semplicemente cambiasse il tipo di memoria indicato nell'header, spingendo VBA a emulare una SRAM invece che una flash da 128K. Credo ci fosse un problema simile con Rosso Fuoco, VBA sceglieva automaticamente la flash da 64K mentre il gioco funzionava solo con 128K.

 

Molto probabilmente cambiando il tipo di memoria dal menu dell'emulatore ad ogni avvio avrebbe risolto il problema, ma ovviamente è scomodissimo :D 

 

3 ore fa, Kabe ha scritto:

Ti ho odiato, sappilo :asduj1:

 

In ogni caso bella storia, a leggerla mi è venuta un sacco di nostalgia (modem 56k, MSN... ah la vecchiaia :cuore:)

 

GG WP!

 

Pensa che ci sono incappato anche io, perché furbamente per provare ho battuto la lega senza fare un backup prima dato che almeno io potevo :cry:

La nostalgia è stata ciò che mi ha portato a scrivere il post: mentre rimettevo in ordine le mie vecchie cose ho ritrovato la mia vecchia cassetta di Oro, di cui ovviamente ho perso il salvataggio dato che la batteria interna è morta, e mentre ordinavo la batteria sostitutiva per ripararla (sperando che quella vecchia non abbia sparso roba in giro per il PCB nel frattempo) ho ripensato a quella storia e mi sono detto che forse era il caso vuotare il sacco "per i posteri" :tf:

 

3 ore fa, norve ha scritto:

Bella storia.:smile3: Io nel 2005 andavo alle superiori e non sapevo nemmeno cosa fossero le micro sd e le rom dei giochi. Si certo, conoscevo i giochi piratati ma per computer e playstation. Come memorie di archiviazione conoscevo principalmente cd e floppy. Mi ricordo anche il modem 56k dove bisognava collegarsi ad internet componendo un numero di telefono. Io lo avevo nei primi anni 2000 da ragazzino. E non conoscevo msn o simili, con gli amici ci sentivamo per telefono o sms. Le email erano scarse. Non sapevo che su Millennium c'erano le rom dei giochi Pokemon.

 

Io avevo scoperto le rom un paio di anni prima, quando un mio amico mi ha fatto vedere Giallo girare in un emulatore di cui non ricordo il nome, che era addirittura per DOS (parliamo del 2001 probabilmente, molta gente usava ancora Windows 98 e pochi XP). Da lì è partito tutto, girando su internet piano piano ho scoperto vari emulatori più o meno compatibili e siti con un po' di informazioni e rom, fino ad arrivare qui su Millennium che tra le altre cose aveva pure un buon feed di notizie. La sezione download con rom e tool inizialmente era pubblica, poi se non sbaglio è stata riservata agli utenti registrati fino a poi evidentemente sparire del tutto.

La svolta è stata l'uscita delle rom di Ruby e Sapphire in inglese, appena ci ho potuto mettere le mani (e per fortuna per all'epoca avevo appena cambiato PC con uno abbastanza potente da reggere l'emulazione del GBA) me lo sono giocato tutto d'un fiato, cercando man mano sul dizionario le parole che non conoscevo :D

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
3 ore fa, Kabe ha scritto:

Ti ho odiato, sappilo :asduj1:

 

In ogni caso bella storia, a leggerla mi è venuta un sacco di nostalgia (modem 56k, MSN... ah la vecchiaia :cuore:)

 

GG WP!

io sono giovine e non so cosa vuol dire, ma so che erano bei tempi

7 minuti fa, TheEnt ha scritto:

 

Mi sono anche appena accorto che non ho spiegato cosa effettivamente succedeva, che spiega anche l'incompatibilità dei salvataggi!

Il salvataggio su SRAM era più piccolo del dovuto, e battere la lega lo faceva andare oltre il limite. Era per questo che il salvataggio veniva cancellato, all'avvio il gioco fa un controllo di integrità sul savegame, e se lo trova corrotto (o troncato, come in questo caso) lo ignora e ti fa scrivere sopra.

 

Non ho mai provato la teoria dato che non ho più quella rom (anzi, se qualcuno dovesse averla mi scriva in PM), ma credo che non fosse la rom in se a cambiare.

All'inizio della rom c'è un'area chiamata header che contiene alcune informazioni come il title code, la regione, l'autore e metadati sui tipi di memorie e mapper contenuti nella cassetta. Al gioco queste informazioni non servono, vengono usate da altro, ad esempio il GameBoy Color e Advance usano il title code per riconoscere certi giochi per Gameboy classico e applicano palette particolari per avere un po' di colore, oppure per capire se un gioco ha degli enhancemente per il Super Gameboy ecc.

E vengono usati anche dagli emulatori per capire che hardware emulare effettivamente dato che le cassette non sono delle "semplici" memory card!

La mia teoria è che quel tool semplicemente cambiasse il tipo di memoria indicato nell'header, spingendo VBA a emulare una SRAM invece che una flash da 128K. Credo ci fosse un problema simile con Rosso Fuoco, VBA sceglieva automaticamente la flash da 64K mentre il gioco funzionava solo con 128K.

 

Molto probabilmente cambiando il tipo di memoria dal menu dell'emulatore ad ogni avvio avrebbe risolto il problema, ma ovviamente è scomodissimo :D 

 

 

Pensa che ci sono incappato anche io, perché furbamente per provare ho battuto la lega senza fare un backup prima dato che almeno io potevo :cry:

La nostalgia è stata ciò che mi ha portato a scrivere il post: mentre rimettevo in ordine le mie vecchie cose ho ritrovato la mia vecchia cassetta di Oro, di cui ovviamente ho perso il salvataggio dato che la batteria interna è morta, e mentre ordinavo la batteria sostitutiva per ripararla (sperando che quella vecchia non abbia sparso roba in giro per il PCB nel frattempo) ho ripensato a quella storia e mi sono detto che forse era il caso vuotare il sacco "per i posteri" :tf:

 

 

Io avevo scoperto le rom un paio di anni prima, quando un mio amico mi ha fatto vedere Giallo girare in un emulatore di cui non ricordo il nome, che era addirittura per DOS (parliamo del 2001 probabilmente, molta gente usava ancora Windows 98 e pochi XP). Da lì è partito tutto, girando su internet piano piano ho scoperto vari emulatori più o meno compatibili e siti con un po' di informazioni e rom, fino ad arrivare qui su Millennium che tra le altre cose aveva pure un buon feed di notizie. La sezione download con rom e tool inizialmente era pubblica, poi se non sbaglio è stata riservata agli utenti registrati fino a poi evidentemente sparire del tutto.

La svolta è stata l'uscita delle rom di Ruby e Sapphire in inglese, appena ci ho potuto mettere le mani (e per fortuna per all'epoca avevo appena cambiato PC con uno abbastanza potente da reggere l'emulazione del GBA) me lo sono giocato tutto d'un fiato, cercando man mano sul dizionario le parole che non conoscevo :D

un post che aiuterà anche i prossimi che faranno una rom di smeraldo direi


 

50QGX6G.png Top Targhetta by @Harlie

 

 

 

image.jpeg.a4c18221220d5c22137b548e6d8913bf.jpeg Immagine dei Pokédex H0lders che n0n fa mai male

 

 C0v0 del team 0  Team 0 Forever

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
Inviato (modificato)
1 ora fa, M0viz ha scritto:

io sono giovine e non so cosa vuol dire, ma so che erano bei tempi

un post che aiuterà anche i prossimi che faranno una rom di smeraldo direi

 

Pensa solo questo: 30 minuti per 5 MB, e se suonava il telefono si disconnetteva e dovevi ricominciare daccapo :cry:

 

Nel frattempo ci sono state almeno altre 3 release di quella rom, la prima era la mia "v2" che aveva solo la patch per il messaggio all'inizio, un'altra da un altro tizio che aveva un messaggio simile e una terza, che è quella che immagino abbiano tutti, che è 1:1 come arriva dalla cassetta.

Diciamo che se avessi tenuto le manine a posto e avessi pubblicato direttamente quella che avevo tirato fuori senza toccare nulla si sarebbe evitato tutto questo :stupid:

Modificato da TheEnt

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
1 minuto fa, TheEnt ha scritto:

 

Pensa solo questo: 30 minuti per 5 MB, e se suonava il telefono si disconnetteva e dovevi ricominciare daccao :cry:

 

Nel frattempo ci sono state almeno altre 3 release di quella rom, la prima era la mia "v2" che aveva solo la patch per il messaggio all'inizio, un'altra da un altro tizio che aveva un messaggio simile e una terza, che è quella che immagino abbiano tutti, che è 1:1 come arriva dalla cassetta.

Diciamo che se avessi tenuto le manine a posto e avessi pubblicato direttamente quella che avevo tirato fuori senza toccare nulla si sarebbe evitato tutto questo :stupid:

grazie anche di questa informazione 


 

50QGX6G.png Top Targhetta by @Harlie

 

 

 

image.jpeg.a4c18221220d5c22137b548e6d8913bf.jpeg Immagine dei Pokédex H0lders che n0n fa mai male

 

 C0v0 del team 0  Team 0 Forever

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
10 ore fa, TheEnt ha scritto:

Sono passati quasi 15 anni dall'incidente della rom di Smeraldo che cancellava il salvataggio dopo la lega e nessuno tranne 1-2 persone ha mai saputo cosa è effettivamente successo.

Ebbene, credo sia il momento di raccontarlo :looksi:

 

Inizia tutto 15 anni fa in questo giorno, 15 settembre 2005. Ero un ragazzino di 14 anni, primo anno di superiori, appassionato di Pokémon sin dalle medie, e come ogni quattordicenne non avevo granché budget da dedicare ai videogiochi. Era proprio per questo motivo che durante l'estate avevo deciso di mettere da parte un po' di solti (raccolti anche vendendo pokemon hackati con Pokemaker, ma shh) e fare finalmente il grande salto: avevo appena comprato online la mia prima flash card, una Flash2Advance di seconda mano.

 

Ora, dovete sapere che nel 2005 le micro SD erano quasi fantascienza. Giravano i primi articoli sulle nuovissime "Transflash" (vecchio nome delle micro SD), ma qualunque flash card usasse miniSD era costosa in maniera proibitiva per le mie giovani tasche.

 

Per questo avevo ripiegato sulla F2A: aveva 256 megabit di memoria interna, 32 MB, appena abbastanza per due giochi di terza generazione, ma rientrava nel budget.

Avendo soltanto una memoria interna (due in realtà, c'era anche una SRAM per i salvataggi mantenuta da una batteria tampone, ma su questo ci torneremo più avanti), l'unico modo per copiarci su le rom era utilizzare un cavetto USB chiamato Linker, da collegare al PC da una parte e nella porta Game Link del GBA dall'altra.

Questo Linker però permetteva anche di fare altre cose interessanti: permetteva anche di gestire i salvataggi sulle cassette originali, permettendone il backup ed il restore (cosa che semplificava parecchio il mercato dei pokemon hackati), ma soprattutto, con un po' di sperimentazione, permetteva di dumpare le cassette in rom! La mia giovane mente esplodeva pensando alle potenzialità.

 

Potenzialità che sarebbero state messe in pratica poco più di un mese dopo, il 18/19 ottobre, un paio di giorni prima dell'uscita di Smeraldo.

Nel tardo pomeriggio di quel giorno ricevo una chiamata dal mio più grande di amico d'infanzia, con cui ho condiviso la passione per i videogiochi e per Pokémon sin dall'inizio. Era successo l'impensabile, passava da un negozio di giocattoli e ha visto in mostra ciò che aspettava da mesi dopo aver saltato Rubino e Zaffiro: quel negozio aveva messo in vendita Smeraldo un paio di giorni prima del rilascio, e lui l'aveva comprato.

 

Non ci ho pensato due volte, volevo anche io quel gioco. Gli ho chiesto di venire a casa mia immediatamente, e saltando la cena siamo andati immediatamente nella mia stanza, alla stessa scrivania da cui sto scrivendo questo post e che non vedevo da mesi a causa del covid (oggi ho 29 anni, convivo con la mia ragazza a 1000 km da casa dei miei, ma soprattutto in questo periodo non fa male passare qualche giorno con loro).

 

Tornando a noi, lui aveva a malapena raggiunto Petalipoli quando è arrivato da me, ma immediatamente abbiamo collegato il suo GBA al Linker e dopo un paio di tentativi a smanettare con i parametri siamo riusciti ad avere un dump pulito e funzionante. L'abbiamo lanciata sull'emulatore, Visual Boy Advance ovviamente, e a parte un avviso sulla batteria scarica e problemi all'orologio  (VBA aveva ancora qualche problema con l'RTC) sembrava tutto ok.

 

La stessa cosa non si poteva dire però della mia F2A. Il gioco lì pareva andare, ma aveva un grosso problema: non si riusciva a salvare. A volte si freezava provandoci, a volte diceva di aver completato il salvataggio, ma dopo un reboot... niente, nuovo gioco.

 

Ed ecco che torniamo al discorso della SRAM. La mia F2A aveva solo una SRAM, mentre i titoli Pokémon usavano delle flash (e anche discretamente grandi, 64K in rubino e zaffiro e 128K negli altri titoli della serie per GBA). Tutt'oggi in VBA trovate l'opzione per scegliere quale usare. Mi sono immediatamente ricordato che nei tanti tool per l'hacking delle rom trovati su internet su siti più o meno sospetti ce n'era uno che permetteva di cambiare vari parametri della rom, valeva la pena provare, no?

 

Non sapevo cosa facesse effettivamente quel tool (e non lo so tuttora, anche se adesso avrei le skill per capirlo non ho idea di dove sia finito), ma fatto sta che funzionava: il gioco salvava e caricava correttamente. Mi sono tenuto la copia originale pulita e dumpata dalla cassetta però, just in case. Una cosa che notai quasi subito però era che i salvataggi della rom patchata non andavano sulla rom pulita e viceversa. Ma ero giovane e inesperto, non avevo idea del perché.

 

Quella sera il mio amico restò a cena da me, e parlammo di quanto fossimo stati fortunati: lui a trovare il gioco e io ad avere un amico come lui che non si è posto il minimo problema a farmi fare una copia del suo gioco nuovo di pacca, e di come fossimo potenzialmente i primi ad avere per le mani una rom di Smeraldo in italiano.

 

Già, i primi.

 

Pensa quanto ci saremmo potuti bullare sui forum come Pokemon Millennium, o su IRC (si, sono vecchio).

Oppure potevamo ricambiare un po' quello che abbiamo avuto dai forum. D'altra parte, i veterano se lo ricorderanno, proprio Pokémon Millennium era il sito dove sapevamo di poter trovare una selezione curata di rom (eh si, prima qui si hostavano anche le rom), di tool e di informazioni.

 

Forse era il momento di restituire qualcosa alla community? In fondo si.

Ma eravamo comunque ragazzini, e bullarci era importante. Decidiamo quindi di vandalizzare la rom con un messaggio che chiunque avrebbe visto, esattamente com'era nella prima rom in assoluto che avessimo mai trovato su internet, una rom di Ruby in inglese. Il messaggio di errore della batteria. Immediatamente scrivo un messaggio a Quiksilver, l'admin di Pokémon Millennium (se mi leggi: ciao!), mentre tiro fuori più velocemente possibile il tool per l'editing delle stringhe dal pack di Elitemap e mi metto al lavoro per trovare l'offset giusto e per aggiungere il messaggio. Non potevamo usare i nostri nomi ovviamente, quindi abbiamo usato le prime cose che ci venissero in mente. Io avevo letto da poco l'intera trilogia del Signore degli Anelli, ed ero rimasto colpito dagli Ent. Lui era un appassionato dell'antico Egitto. Scegliemmo The Ent e Anubis.

 

Nel frattempo Quik mi aveva risposto, ci sentiamo al volo su MSN e con tutta la velocità permessa del mio fantastico modem 56k gli invio la rom.

Ho fatto il mio dovere, ho restituito alla community, il post va immediatamente sul sito e come premio ricevo uno sprecatissimo ruolo da autore di news sul sito.

 

O almeno così credevo.

 

Dopo qualche giorno arrivano le lamentele, del problema che molti ormai conoscono: una volta raggiunta la lega, il salvataggio si cancella. Le stesse segnalazioni arrivano anche dai miei amici con cui avevo condiviso privatamente la rom. Panico. Io stesso ero arrivato al secondo campione.

 

Ho sbagliato parametri nel Linker per il dump? No, non è possibile, tutte le altre volte in cui ho sbagliato parametri il gioco non partiva proprio.

Dump corrotto per qualche motivo? Avevo ripetuto il dump 3 volte una volta beccati i parametri, giusto per essere sicuro, e tutte e tre le volte avevo avuto lo stesso hash MD5.

O magari si è corrotta con l'invio? Non mi sono mai fidato granché dell'invio di file con MSN.

 

Volo sul sito, cerco la news e scarico la mia stessa rom. 30 minuti per scaricare uno zip da appena 5 MB. Pare strano pensarci oggi.

Una volta estratto lo zip lo confronto immediatamente con il file pulito che avevo dumpato, gli hash non corrispondono. Il panico aumenta.

Penso, un momento, ma è normale che non corrisponda, ho modificato il testo prima di inviarla! Questa è la rom pulita, per forza non corrisponde!

Ripeto la mod, di nuovo hash diverso. Carico entrambe in un hex editor, c'erano solo pochi byte diversi all'inizio della rom, lontano dall'area del testo, non avevo idea di cosa stesse succedendo.

 

A quel punto ho un attimo di gelo. Ripeto il controllo dell'hash, ma stavolta invece di confrontare la rom scaricata con Smeraldo_ITA.agb, la confronto con Smeraldo_ITA_SRAM.agb...

 

Match. Erano lo stesso file.

 

Dopo una sana dose di testate, mi decido di riscrivere a Quik. Gli mando la rom senza la patch della SRAM, ma con un messaggio iniziale diverso in modo che la versione "fixata" sia riconoscibile da quella originale. Sparisco un po' dalla scena, dopo un paio di mesi il mio ruolo da autore viene (giustamente) revocato per inattività, ma continuo ogni tanto a sentirmi coi ragazzi del team su MSN, finché non prendiamo strade diverse (e abbandoniamo tutti MSN, prima che lui abbandoni tutti noi).

 

Ed ecco la storia del bug della lega, ovvero di come la fretta di essere il primo a pubblicare una rom abbia portato un ragazzino a cliccare sul file sbagliato.

 

Per tutti quelli che hanno perso ore di gioco per colpa di questo: vi pongo le mie più sincere scuse.

 

Per tutti, spero abbiate apprezzato questo piccolo resoconto di cosa effettivamente successe quella sera :D

 

Per quanto riguarda me, ho smesso di giocare poco dopo, con l'arrivo della quarta generazione. Non ha mai preso su di me, e anche i titoli successivi non hanno avuto secondo me la magia delle prime tre generazioni, fino ad arrivare all'insulto che sono Scudo e Spada. È stato bello finché è durato però!

Grazie di tutte le informazioni,questo aiuterà sicuro chi farà di smeraldo in futuro

Io ne capisco davvero pochissimo di ste cose e non so la metà dei termini che hai usato ma sicuro il post è  molto utile,complimenti 


https://imgur.com/a/0KzUG4i

https://imgur.com/a/NW8yGw8

Membro gildamax per i raid galariani ,targhette by @Nawain (sono stra bellissime ma con sta conn da schifo riesco a metterle solo così per ora,poi le metterò per bene)

K4r49pG.png

il gdr del detective pikachu è stato divertentissimo e super misterioso,mi sono divertita un sacco

2147011157_espidausare.jpg.aa9fa94d33760295b901762664b56d30.jpg

just a simple espi conduttrice di tg...ora anche con firma espiosaxd

(prima firma espiosa by @Lugialeon seconda by @Macasylveron la seconda mi si è cancellata per errore...mi si è cancellata per sbaglio e non per volontàXD)

adoro ban e elaine....ma molto più banXD senza offesa per elaine u.u 

(grafiche su ban e elaine by @Lugialeon)

nuove aggiunte in firma sempre by @Lugialeon

 

193318965_dausareinfirma1.jpg.bdb5dba479d049928f826862c4042777.jpg meliodas a torso nudo che non fa mai maleXD nah ban e meliodas insieme...li adoro troppo questi due e sono l'emblema dei buoni amici

1228603635_fioccoamicodausare.jpg.b28cb8405b99a1ce17a5b0e4c5892972.jpgfiocco amicizia con scritta ...mi piace troppo questo fiocco,mi è stato dato da @Lugialeon e in firma un fiocco ce lo volevo troppo mettere

 

 

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
1 minuto fa, evilespeon ha scritto:

Grazie di tutte le informazioni,questo aiuterà sicuro chi farà di smeraldo in futuro

Io ne capisco davvero pochissimo di ste cose e non so la metà dei termini che hai usato ma sicuro il post è  molto utile,complimenti 

ahah alcune cose sono molto specifiche infatti, il post non è molto for fun


 

50QGX6G.png Top Targhetta by @Harlie

 

 

 

image.jpeg.a4c18221220d5c22137b548e6d8913bf.jpeg Immagine dei Pokédex H0lders che n0n fa mai male

 

 C0v0 del team 0  Team 0 Forever

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
1 minuto fa, M0viz ha scritto:

ahah alcune cose sono molto specifiche infatti, il post non è molto for fun

Diciamo che il post è  per gente che se ne capisce quindi siamo noi nel posto sbagliato mi sa XD 


https://imgur.com/a/0KzUG4i

https://imgur.com/a/NW8yGw8

Membro gildamax per i raid galariani ,targhette by @Nawain (sono stra bellissime ma con sta conn da schifo riesco a metterle solo così per ora,poi le metterò per bene)

K4r49pG.png

il gdr del detective pikachu è stato divertentissimo e super misterioso,mi sono divertita un sacco

2147011157_espidausare.jpg.aa9fa94d33760295b901762664b56d30.jpg

just a simple espi conduttrice di tg...ora anche con firma espiosaxd

(prima firma espiosa by @Lugialeon seconda by @Macasylveron la seconda mi si è cancellata per errore...mi si è cancellata per sbaglio e non per volontàXD)

adoro ban e elaine....ma molto più banXD senza offesa per elaine u.u 

(grafiche su ban e elaine by @Lugialeon)

nuove aggiunte in firma sempre by @Lugialeon

 

193318965_dausareinfirma1.jpg.bdb5dba479d049928f826862c4042777.jpg meliodas a torso nudo che non fa mai maleXD nah ban e meliodas insieme...li adoro troppo questi due e sono l'emblema dei buoni amici

1228603635_fioccoamicodausare.jpg.b28cb8405b99a1ce17a5b0e4c5892972.jpgfiocco amicizia con scritta ...mi piace troppo questo fiocco,mi è stato dato da @Lugialeon e in firma un fiocco ce lo volevo troppo mettere

 

 

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme
Adesso, evilespeon ha scritto:

Diciamo che il post è  per gente che se ne capisce quindi siamo noi nel posto sbagliato mi sa XD 

io un po'ne capisco, so creare le hack rom e qualcosa cpiaco di rom, se vuoi un giorno di questi ti spiego in mp


 

50QGX6G.png Top Targhetta by @Harlie

 

 

 

image.jpeg.a4c18221220d5c22137b548e6d8913bf.jpeg Immagine dei Pokédex H0lders che n0n fa mai male

 

 C0v0 del team 0  Team 0 Forever

Condividi questo messaggio


Link al messaggio
Condividi su altre piattaforme