L’applicazione C64 per iPhone è stata aggiornata per riuscire a superare i controlli di Apple e poter rimanere nell’Apple Store. Oltre ad eliminare la possibilità di usare il Basic (manca la ROM relativa), è stato aggiunto un controllo che impedisce (apparentemente) di usare altri giochi se non quelli presenti nel bundle iniziale.
In realtà ho scoperto che il controllo viene eseguito solo sull’effettiva presenza delle ROM originali, ma il programma successivamente utilizza il file plist presente nella cartella del singolo gioco per farlo partire. In pratica l’unica grossa differenza è che possiamo solo SOSTITUIRE i giochi esistenti con quelli che vogliamo, ma non possiamo aggiungerne altri. Veniamo quindi alla guida riveduta e corretta che vi permetterà di giocare agli altri giochi del Commodore 64 sul vostro iPhone, utilizzando proprio l’applicazione ufficiale.
Requisiti
- iPhone/iPod Touch Jailbroken
Guida
1. Prima di tutto scarichiamo l’applicazione AppLinks da Cydia (Repository iSpazio) e clicchiamo sulla rotellina in basso a sinistra.
2. A questo punto, colleghiamoci in SSH all’iPhone ed entriamo nella directory “/var/mobile/AppLinks/C64.app”. All’interno di quest’ultima troveremo l’agognata cartella “Games”, che a sua volta contiene una cartella per ogni singolo gioco installato. Analizziamone una, come ad esempio quella relativa al gioco Dragon’s Den:
- Nome Cartella: DragonsDen (questo deve essere lasciato invariato altrimenti non comparirà sullo scaffale)
- Contenuto:
- Dragon’s Den Cover.png (si tratta di un file immagine contenente la copertina del gioco, deve essere circa 110×140 pixel. Possiamo sostituire questo file con la copertina che vogliamo).
- Dragons_den.state (si tratta di uno snaphot del contenuto della memoria del C64, che viene utilizzato per far partire il gioco esattamente da un punto prestabilito, ad esempio per saltare le scomode intro pirata di alcuni giochi scaricati da internet. Vedremo più avanti come creare un file di questo tipo).
- DRAGONSD.D64 (questo è il file contenente il gioco vero e proprio. Può avere estensione .T64 (tape) o .D64 (disk). Dobbiamo lasciare intatto questo file, poiché il programma controlla la sua presenza nella relativa directory ad ogni avvio).
- gameInfo.plist (questo file contiene le impostazioni e le informazioni relative al singolo gioco, come publisher, anno di pubblicazione, autore, ma anche il “frame skip”, l’inversione delle porte joystick, e altro. Vedremo in seguito come creare questi file per ogni nostro gioco).
- Nocontrols_bg.png (questo file contiene un’immagine che viene utilizzata quando il gioco non ha bisogno di “tastiere personalizzate”).
3. Copiamo sul nostro computer il file “gameInfo.plist” per poterlo modificare comodamente. Cancelliamo il file “Dragons_den.state” in quanto, se necessario, provvederemo a ricrearlo per il nostro nuovo gioco. Possiamo invece scegliere se sostituire o lasciare invariato il file della copertina del gioco “Dragon’s Den Cover.png”. Lasciamo invariati gli altri files nella cartella DragonsDen.
4. Ora apriamo il file “gameInfo.plist” con un qualsiasi editor di testi (wordpad su windows andrà benissimo) e modifichiamo alcune parti di questo file. Non includo l’intero file, ma solo le parti che vanno modificate, per brevità, indicando in grassetto ciò che ho modificato. Prendiamo come esempio il gioco “Fort Apocalypse”:
<string>Fort Apocalypse</string>
Questo è il nome reale del gioco. Quello che apparirà sullo “scaffale” dell’emulatore, al posto di Dragon’s Den.
<key>game-images</key> <array> <string>FORTAPOC.D64</string> </array>
Questo è il nome del file contenente il gioco, come descritto sopra.
<key>coverArtPath</key> <string>FortApocalypse.png</string>
Questo è il nome del file contenente l’immagine della copertina del gioco che apparirà nello “scaffale”. In questo caso abbiamo sostituito il file nella cartella DragonsDen con una nuova copertina, e qui ne indichiamo il nome. Su internet sono disponibili le copertine di tutti i giochi C64, basta cercare un po’ su Google immagini. Troviamo la copertina di Fort Apocalypse, la carichiamo in qualsiasi editor di immagini (il paint di windows andrà benissimo), la ridimensioniamo a 110×140 pixel e la salviamo in formato png con il nome indicato.
<key>initialState</key> <string>fort_apocalypse.state</string>
Questo è il nome del file contenente lo “snapshot” della memoria del C64 da cui si vuole partire al caricamento del gioco. Ad esempio, Fort Apocalypse contiene una intro pirata piuttosto irritante, contenente anche un trainer per “le vite infinite”. Non preoccupatevi se non avete il file da inserire nella cartella adesso. Lo creeremo alla fine della guida.
<key>gameid</key> <string>fort_apocalypse</string>
Questo è semplicemente un ID che il programma usa per creare il file .state di cui abbiamo parlato poco fa.
<key>info1Title</key> <string>Published</string> <key>info1</key> <string>1982</string> <key>info2Title</key> <string>Distributor</string> <key>info2</key> <string>Synapse Software</string> <key>info3Title</key> <string>Written by</string> <key>info3</key> <string>Steve Hales</string>
Queste sono le info che appaiono sullo “scaffale”: Publisher, anno e autore.
<key>SkipFrames</key> <integer>1</integer> <key>BordersOn</key> <false/> <key>JoystickSwap</key> <true/> <key>Emul1541Proc</key> <false/>
Queste sono le impostazioni del gioco. Skipframes indica quanti fotogrammi devono essere “skippati”, da usare se l’emulazione risulta lenta. BordersOn sinceramente non so a cosa serva, non ho ancora provato ;-). JoystickSwap serve per invertire le porte joystick, poiché alcuni giochi come Fort Apocalypse utilizzano la porta 2 invece della 1. Emul1541Proc serve per avere una emulazione “line by line” del drive dischetti 1541, più lenta ma in alcuni casi necessaria per far partire alcuni giochi.
Per ripristinare la tastiera completa occorre trovare la riga:
<key>keyboard</key>
E rinominarla in:
<key>no_keyboard</key>
Il resto del file .plist può rimanere invariato, a meno che non si voglia sperimentare con i layout di tastiera personalizzati di cui ho parlato all’inizio di questa guida.
5. Procediamo a sostituire il file gameInfo.plist con quello appena modificato, nella cartella DragonsDen. Copiamo anche il file FortApocalypse.png e ovviamente la ROM vera e propria FORTAPOC.D64. Vediamo quindi il contenuto finale della cartella DragonsDen sul nostro iPhone:
- Nome cartella: DragonsDen
- Contenuto:
- FORTAPOC.D64
- DRAGONSD.D64 – NON cancellate questo file, serve per passare il controllo di originalità dell’applicazione.
- FortApocalypse.png
- Nocontrols_bg.png
- gameInfo.plist
Bene. Manca solo il file fort_apocalypse.state. Provate a far partire il gioco dallo “scaffale” dell’applicazione C64.
6. Al primo avvio del gioco, basta arrivare sino alla schermata da cui vogliamo iniziare a giocare, e chiudere tempestivamente l’emulatore premendo il tasto home. Poi sempre usando iPhone Browser o qualsiasi applicazione per l’accesso SSH, torniamo nella cartella principale dell’emulatore C64, e invece di entrare nella cartella C64.app, entriamo stavolta nella cartella “Documents”: all’interno troveremo il file fort_apocalypse.state. Basta copiarlo e incollarlo nella cartella del gioco, ed otterremo il risultato voluto. Il file “.state” presente nella cartella Documents altro non è che lo snaphot che l’emulatore crea ogni volta che smettiamo di giocare ad un gioco, per permetterci di continuare dove abbiamo smesso. All’avvio di ogni gioco, ci viene chiesto infatti se vogliamo continuare l’ultima partita oppure ripartire dall’inizio.
Buon divertimento a tutti.
Roberto Tomassetti
Alias Krakolis
Leggi o Aggiungi Commenti