Bubble Bobble e i suoi segreti hardware


Bubble Bobble e i suoi bootleg

Bubble Bobble è uno dei videogiochi di maggior successo della Taito e qualsiasi persona al mondo ne conosce la storia. Qualcuno lo chiama il gioco delle bolle, altri lo chiamano il gioco dei draghetti; fatto sta che la sua giocabilità, i suoi cheat e la possibilità di giocare in cooperazione lo hanno reso un successo mondiale.
Avevamo già affrontato il tema del cabinato dedicato a Bubble Bobble in questo articolo, quindi sapete già che il mobile originale dedicato non esiste, ma quello che più si avvicina è simile a quello in foto.

Riproduzione di mobile convertito Taito di Bubble Bobble

In questa riproduzione le cose inesatte sono la plancia, il bezel e il marquee, infatti si tratta di customizzazioni appartenenti al nuovo millennio. Quelle originali erano completamente diverse e il bezel non esisteva.
Oggi però vogliamo parlare dell’hardware del gioco, il cuore pulsante che genera i colori, le musiche e il gioco stesso.

Bubble Bobble PCB Board


Sopra potete osservare la scheda gioco originale di Bubble Bobble. La prima cosa che si nota è che non si tratta di una scheda con presa jamma, cosa abbastanza insolita nel 1986 visto che lo standard jamma era pressoché ovunque. Ma dovrebbe attirare il vostro sguardo il chip con il disegno del draghetto.

È da questo chip che parte il nostro racconto e una serie di problematiche che riguardano le schede bootleg (non originali).
Nell’episodio 10 del podcast di Arcade Story, gestito da Mike, abbiamo parlato del gioco di Bubble Bobble con Franco in arte SK dei Mame Retro Avengers dove ci racconta come aveva analizzato il gioco e come era riuscito a scoprire dei cheat molto consequenziali. Infatti, spegnendo il gioco e riaccendendolo, era possibile prevedere, con esatta procedura tecnica, in quale momento fosse possibile ricevere la scarpetta o la caramella, oppure la lettera E, T, N, per formare la parola EXTEND, tutto grazie al conteggio di quante bolle si effettuavano con il nostro draghetto.
Oggi abbiamo capito che tutto questo è possibile solo giocando al gioco originale e non al bootleg e lo sappiamo grazie alla decodificazione del suo chip custom riportato nella foto sopra. Se vi fosse capitato di giocare con la scheda non originale avrebbe potuto succedere che, ad un certo punto, i nemici impazzissero saltando da una parte all’altra dello schermo. Altrimenti avrebbe potuto succedere che non fossero uscite lettere EXTEND per vari livelli e all’improvviso, dopo 3 o 4 schermi, una sfilza di lettere mai viste prima. Questi sono alcuni degli errori che il gioco faceva perché non aveva un programma che ne comandasse la giusta sequenza. Chi progettò i bootleg non era in grado di decriptare il codice sorgente del microprocessore sopra descritto perché ottimamente protetto e quindi lo tolsero completamente dalla progettazione della scheda. Lo stesso problema era presente nel MAME, visto che il processo di emulazione parte proprio dalla decrittazione di questi microprocessori custom di tutti i giochi originali.
Bisogna concordare nell’ottima preparazione di alcuni ingegneri, capaci di ricostruire a tentativi ciò che il microprocessore originale poteva fare nel gioco e furono in grado di emulare il chip custom della Taito.
Solo nel 2006, grazie al lavoro estenuante di Trinity, si è riusciti ad avere la ROM del microprocessore originale. Ma perché un lavoro estenuante? Ve lo spiego subito.
Quello che vi sto per raccontare ha dell’incredibile, anche io sono rimasto a bocca aperta quando l’ho letto per la prima volta!
Trinity ha provato una tecnica manuale per la decrittazione, e cioè quella di fondere la plastica di protezione del chip con acido nitrico e risciacquo con acetone. Questo processo deve essere fatto molte volte prima che il chip sia esposto e noi possiamo vederlo. A questo punto bisogna avere dei microscopi molto potenti in grado di ingrandire il chip di almeno x100 così da poter leggere il contenuto. Ecco che arriva la prima sorpresa. Tutti erano convinti che il chip fosse un 68701, invece si scoprì essere un 6801U4.

Bubble Bobble
Scritta microscopica all’interno del chip custom Taito

Adesso arriva il difficile. Trinity andò ad ingrandire il codice scritto in bit e bytes e a leggerlo manualmente. Questa scrittura si chiama MASKROM e sarebbe un’immagine modellata di 1 e di 0 inserita all’interno dei chip. Oggi il codice sorgente è ben nascosto e questa tecnica non servirebbe a nulla, ma con microprocessori datati e molte ore di lavoro è possibile leggere manualmente il codice sorgente.

Bubble Bobble
Un esempio di immagine MASKROM

Trinity si è letto bit dopo bytes e ha impiegato 16 ore per poter avere il risultato finale. Per farvi capire in maniera approssimativa il lavoro fatto ho trovato un video che fa vedere i vari passaggi:

Di seguito una foto per farvi capire come leggere gli 1 e gli 0 dal fotogramma ingrandito:

Bubble Bobble


Oggi, grazie a Trinity, possiamo giocare sul MAME alla versione di Bubble Bobble emulata al 100%. Vi lascio il post che Nicola Salmoria (lo sviluppatore originale di MAME) ha fatto nel suo blog quando è stata annunciata la decrittazione del chip.
Ultimamente, un gruppo chiamato REDUX, ha modificato le PCB bootleg senza la logica del chip custom modificandole con una serie di elementi che ne migliorano la giocabilità e portando il gioco il più vicino possibile all’originale.

Scheda gioco Bubble Bobble modificata da REDUX


Lascia un commento

Credits: freakandverynice