ARAM 0.4: salvataggi e backup per i giochi dei vecchi cellulari
ARAM 0.4 migliora la conservazione dei salvataggi su Android e nel browser, insieme alla compatibilità di alcuni giochi per cellulari coreani. La versione 0.4.0, pubblicata il 22 settembre 2026, scrive i dati persistenti quando l’app passa in background e rende più comoda l’esportazione dei backup. Il giorno seguente è arrivata la 0.4.1, dedicata all’ottimizzazione della parte Android: chi scarica il programma oggi trova già questa revisione.
L’emulatore recupera il software dei telefoni con tastiera numerica degli anni Duemila: giochi e applicazioni costruiti per WIPI, SKVM e la famiglia Raptor, con differenze legate anche all’operatore. È disponibile per Windows, Linux, macOS su Apple silicon e Android, oltre che direttamente nel browser. I file da eseguire devono essere forniti dall’utente, che deve possederli o essere autorizzato a usarli.

Perché il passaggio in background conta per i salvataggi
Su un computer la chiusura normale del programma offre un’occasione per scrivere i dati ancora in memoria. Su Android l’app può invece finire in background e il suo processo può essere terminato successivamente, senza passare dalla stessa sequenza di uscita. Affidarsi soltanto alla chiusura lascia quindi scoperto un caso comune nell’uso del telefono.
ARAM 0.4 interviene nel passaggio in pausa dell’app: il collegamento Android richiede al motore di riversare su disco i dati persistenti del titolo. Il salvataggio viene associato all’impronta SHA-256 del file caricato, così programmi differenti mantengono archivi separati. La conseguenza pratica è una maggiore possibilità di ritrovare i progressi dopo il ritorno all’app, anche quando Android ha eliminato il processo nel frattempo.
Il contenuto scritto è quello che il gioco ha prodotto nella propria memoria persistente. Non comprende automaticamente ogni istante della partita: se il titolo non ha ancora creato dati di salvataggio, oppure il relativo runtime non espone questa funzione, non c’è nulla da esportare. Gli stati dell’emulatore, che fotografano l’esecuzione, sono un meccanismo distinto. Continuare a usare i punti di salvataggio previsti dal gioco rimane dunque importante.
ARAM 0.4 nel browser: memoria locale, non un account cloud
La versione web conserva i progressi attraverso localStorage, uno spazio del browser dedicato al sito. Anche qui l’identità deriva dall’hash del programma: il codice costruisce una chiave separata per ciascun input e vi registra i dati. Il gioco viene eseguito localmente, senza caricare il file selezionato su un server.
Questo rende il browser una strada pratica per provare il progetto, ma la persistenza dipende dall’ambiente usato. Cancellare i dati del sito può eliminare i salvataggi; inoltre, impostazioni che negano l’accesso alla memoria locale possono permettere comunque l’avvio del gioco senza conservarne i progressi. Una prima schermata funzionante, da sola, non dimostra che la partita verrà ritrovata alla visita successiva. Prima di affidargli una sessione lunga, conviene salvare normalmente, riaprire lo stesso file e controllare il risultato.
“Esecuzione locale” non equivale all’assenza di qualsiasi comunicazione di rete. Le note della precedente 0.3.0 documentano statistiche d’uso anonime attive per impostazione predefinita, disattivabili in Impostazioni → Funzioni sperimentali → Statistiche d’uso. Fra i dati dichiarati figurano versione, piattaforma, identificatore anonimo, hash del gioco, profilo e fase raggiunta; non i nomi o i percorsi dei file. Sono informazioni utili da conoscere prima di usare il programma.
Come conservare un backup che si possa davvero ripristinare
Su Android, backup dei salvataggi e archivi ZIP diagnostici possono essere esportati scegliendo la destinazione nel selettore documenti del sistema. Il file del gioco importato viene invece copiato nell’area privata dell’app: ARAM lavora sulla copia e non modifica l’originale selezionato.
Il backup usa un contenitore riconoscibile dalla firma ARAMSAVE. Al suo interno il progetto registra identità del gioco, dimensione dei dati e controllo CRC32. Durante l’importazione verifica sia l’integrità sia la corrispondenza con il titolo caricato: un archivio danneggiato o appartenente a un input con hash diverso viene rifiutato. Due file chiamati nello stesso modo possono pertanto non essere intercambiabili.
- Conservare il file originale autorizzato con cui si è iniziata la partita, oltre al backup esportato. Il solo nome del gioco non ne garantisce l’identità.
- Creare un salvataggio nel gioco, quindi esportare i dati in una posizione che resti disponibile anche fuori dall’app. Un titolo che non abbia ancora scritto progressi può non produrre alcun backup.
- Prima di cambiare installazione o canale, controllare che il file esportato sia presente e conservare la copia precedente. Per ripristinarlo, caricare lo stesso input e usare l’importazione dei dati.
- Se ARAM segnala corruzione o un titolo diverso, fermarsi e ricontrollare file e copia di sicurezza, senza modificare a mano hash o contenitore per forzarne l’accettazione.
La cautela riguarda soprattutto il passaggio fra APK GitHub e distribuzione Google Play: certificati differenti possono impedire di installare una versione sopra l’altra. Le note spiegano questa possibilità e raccomandano l’esportazione prima del cambio. La presenza di un pacchetto AAB fra gli artefatti del progetto, da sola, non certifica che una determinata versione sia già disponibile nello Store.
Cambia anche la distribuzione: le build GitHub e sideload non includono l’SDK pubblicitario AdMob, mentre quella destinata a Google Play prevede banner con gestione del consenso. La distribuzione Play riceve gli aggiornamenti dallo Store; quella GitHub dispone dell’aggiornamento interno.
Compatibilità: cosa cambia e cosa resta da verificare
La 0.4.0 collega visualizzazione e tasti numerici per alcuni giochi SKT GVM. Migliora inoltre esecuzione, transizioni multimediali e input di alcuni titoli LGT WIPI/Java; per LGT Raptor interviene su coordinate dello schermo, musica, array Java e stabilità. Sono modifiche a componenti concreti del runtime, dal quale il gioco si aspetta servizi come video, audio, input, memoria e temporizzazione.
Il progetto distingue sei traguardi: riconoscimento, caricamento, esecuzione, primo fotogramma, giocabilità e completamento. Arrivare al menu non significa poter finire un gioco. La documentazione di compatibilità va quindi letta per versione, profilo e identità del file; in particolare, il supporto BREW o GVM non promette l’esecuzione completa di ogni titolo. Anche l’avvio sperimentale di firmware telefonici resta separato da questi miglioramenti alle applicazioni.
Il pacchetto Android documentato richiede almeno Android 6 e include le architetture ARM64 e x86-64: non va dato per compatibile con un dispositivo soltanto perché usa Android. Per il primo tentativo si può scegliere la versione stabile dalla pagina ufficiale delle release, tenendo distinta la Nightly in sviluppo. Non abbiamo eseguito un test indipendente dei giochi né misurato le prestazioni su dispositivi reali.
La 0.4.1 ottimizza Android, senza cambiare i formati dei giochi
L’ultima patch applica R8 al codice DEX e rimuove risorse Android inutilizzate. Queste operazioni interessano la parte Java/Kotlin dell’app e gli SDK inclusi; le note escludono cambiamenti al core nativo Go e ai formati dei dati di gioco. Non ne deriva automaticamente un aumento dei fotogrammi al secondo, né la release fornisce un benchmark con cui quantificarlo.
Il sorgente è pubblicato con licenza PolyForm Noncommercial 1.0.0: il progetto indica uso personale, ricerca ed educazione come utilizzi gratuiti, mentre per l’impiego commerciale richiede una licenza separata. La disponibilità del codice non va confusa con una licenza permissiva senza restrizioni.
Fonti
- Novità di ARAM 0.4.0 e patch 0.4.1.
- Presentazione e limiti del progetto; documentazione Android.
- Codice della versione 0.4.1: salvataggi nel browser e verifica dei backup.
- Note 0.3.0 su statistiche d’uso e licenza.

ARAM 0.4: salvataggi e backup per i giochi dei vecchi cellulari
0 risposte a questo topic