Terzo aggiornamento sperimentale per SalsaDS, l’emulatore che punta a portare i giochi della console portatile Nintendo DS su PlayStation 3.

La nuova versione introduce importanti miglioramenti alla gestione dei salvataggi, al caricamento delle ROM di grandi dimensioni e al rendering 3D, con l’obiettivo di rendere l’emulazione più stabile e migliorare le prestazioni sulla console Sony.
⭐️SalsaDS 0.03 experimental preview by @ricowp81
A Nintendo DS emulator for the PlayStation 3 (homebrew, HEN/CFW), designed around the Cell processor and built on salsa64 infrastructure.⚠️Not full speed yet and still has graphics and audio glitches.
📥https://t.co/vFYAQ2M9rH https://t.co/hMKD4NZ8zx
— aldostools🔸ᐱᒪᑐ〇 VᐱᒋᏀᐱS (@aldostools) October 24, 2026
Una delle novità più importanti riguarda i salvataggi: SalsaDS ora riconosce automaticamente il tipo di memoria utilizzato da ciascun gioco, selezionando tra EEPROM, FRAM e Flash in base alle caratteristiche della ROM.
Questa modifica risolve alcuni problemi che impedivano a diversi titoli Pokémon di salvare correttamente i progressi.
Migliorata anche la gestione delle ROM più grandi di 64 MB, che vengono lette direttamente dal disco in blocchi anziché essere caricate interamente in memoria. La nuova implementazione è stata verificata anche con immagini di gioco fino a 512 MB su hardware reale.
Sul fronte grafico, l’aggiornamento introduce una cache delle texture 3D organizzata in celle da 4×4 e ottimizza la distribuzione del lavoro tra i due SPE.
Sono stati inoltre velocizzati l’elaborazione dei comandi geometrici e il trasferimento dei dati tramite DMA. In Mario Kart DS, durante le gare, queste modifiche riducono di circa un millisecondo il tempo necessario per elaborare ogni fotogramma.
SalsaDS rimane comunque in una fase sperimentale. Alcuni giochi presentano ancora problemi grafici o cali di fluidità e i salvataggi nei titoli Pokémon richiedono circa 15 secondi.
Nota: La versione 0.0.3 è stata testata su una PS3 reale con HEN, mentre il funzionamento su Custom Firmware non è stato ancora verificato.
Stato delle fasi di sviluppo
| Fase | Attività | Stato |
|---|---|---|
| 0 | Test di fattibilità su una PS3 reale (accesso alla memoria con byte invertiti, flag, rasterizzatore 3D SPE, 2D SPE, output a due schermi, compilazione JIT da ARM a PowerPC). | Completata, risultati in docs/fase0.md. |
| 1 | Core con interpreti: ARM9 (ARMv5TE) e ARM7 (ARMv4T), mappatura della memoria, IRQ, timer, DMA, IPC, cartuccia, SPI con firmware generato, BIOS HLE e avvio diretto. | Completata. |
| 2 | Motori 2D A e B e audio sugli SPE (16 canali), compositore con registro delle modifiche ai registri per ogni linea. | Completata; funziona su PS3. |
| 3 | 3D: motore geometrico e rasterizzatore SPE. | Funzionante, con imprecisioni note; ancora in fase di perfezionamento. |
| 4 | Ricompilatore da ARM/Thumb a PPC64 (JIT) per ARM9 e ARM7. | Funzionante nel pacchetto principale; ottimizzazione delle prestazioni in corso. |
| 5 | Risoluzione interna HD, filtri, stati di salvataggio e profilazione. | Non ancora iniziata. |
Il registro delle attività quotidiane, con i risultati delle misurazioni e le attività ancora da completare, è disponibile in docs/estado.md (in spagnolo). La guida del progetto si trova in docs/proyecto.md.
Utilizzo di base
- Installare il file
.pkgsu una PS3 con HEN (oppure CFW, non testato). Il pacchetto si chiama «SalsaDS». - Copiare sulla PS3 le immagini dei giochi posseduti, create dai propri backup e non scaricate, nella cartella
/dev_hdd0/salsads/, utilizzando qualsiasi nome di file che termini con.nds. La cifratura delle cartucce non viene emulata, quindi ogni file deve essere un’immagine.ndsdecriptata. - Avviare il programma. Verrà mostrato un elenco dei file
.ndspresenti nella cartella (utilizzare
o
per spostarsi,
/
per cambiare pagina,
per aprire un gioco e
per uscire da SalsaDS). Se non è presente alcun file .nds, verrà proposta una prova di caricamento integrata. L’ultimo gioco aperto viene ricordato. - Durante il gioco, tenere premuti
+
per un secondo per tornare all’elenco. I salvataggi (relativi al chip di memoria della cartuccia) vengono conservati separatamente per ogni gioco in /dev_hdd0/salsads/saves/<codice gioco>.sav; il registro si trova in/dev_hdd0/salsads/nucleo.log. Il tipo di chip di salvataggio (EEPROM, FRAM o Flash e relativa capacità) viene selezionato automaticamente per ogni gioco, utilizzando una tabella integrata e poi il rilevamento tramite i comandi SPI del gioco. La scelta viene registrata nel log. Per forzarla, aggiungere una riga comeIRD=flash512kal file/dev_hdd0/salsads/guardado.cfg(consultaredocs/guardado.md, in spagnolo).
Altre opzioni, tutte configurabili tramite semplici file nella cartella /dev_hdd0/salsads/:
controles.cfg: Rimappa i pulsanti del DualShock 3 e il puntatore touch. Per impostazione predefinita, gli stick, il D-Pad, L2 (disposizione degli schermi) e R2 (touch) funzionano come descritto insrc/frontend/dspad.h.rom-paged: File vuoto che permette di leggere la ROM in pagine anziché caricarla interamente (operazione eseguita automaticamente per le ROM superiori a 64 MB).audio.cfg: Impostando la rigaoriginal = si, l’uscita audio viene quantizzata a 10 bit, come sulla console originale.
Dichiarazione sull’utilizzo dell’intelligenza artificiale: SalsaDS è un progetto sviluppato con l’assistenza dell’intelligenza artificiale. L’emulatore viene comunque testato su hardware PS3 reale.
Changelog
Anteprima sperimentale: SalsaDS non raggiunge ancora la massima velocità in tutti i giochi e possono verificarsi problemi grafici e audio. Testato su una PS3 reale con HEN; il funzionamento su CFW non è stato verificato.
Novità nella versione 0.0.3
- Memoria di salvataggio corretta per ogni gioco: Ora ogni gioco utilizza il chip di salvataggio corretto (EEPROM, FRAM o Flash, con la relativa capacità), selezionato da una tabella integrata oppure rilevato analizzando i primi comandi del gioco. I giochi Pokémon (Diamante/Perla/Platino, HeartGold/SoulSilver, Nero/Bianco, Nero 2/Bianco 2) ora salvano i progressi invece di mostrare un errore relativo alla memoria di salvataggio. Se il riconoscimento non è corretto, è possibile forzare il tipo di memoria nel file
/dev_hdd0/salsads/guardado.cfg, aggiungendo una riga comeIPK=flash512k. I salvataggi esistenti continuano a funzionare. - Lettura delle ROM di grandi dimensioni in blocchi: Le ROM superiori a 64 MB (testate fino a 512 MB) vengono lette dal disco solo quando necessario, senza errori sull’hardware reale.
- 3D: Introdotta una nuova cache delle texture (celle da 4×4, selezionate automaticamente) e migliorata la distribuzione del carico di lavoro 3D tra i due SPE.
- Comandi geometrici: I comandi geometrici, compreso il DMA che li alimenta, seguono un percorso più breve verso il motore 3D, riducendo di circa 1 ms il tempo di elaborazione per fotogramma nelle gare di Mario Kart DS.
È possibile creare i seguenti file nella cartella /dev_hdd0/salsads/ per ripristinare il comportamento precedente nel caso in cui un gioco presenti problemi: texturas-bloques (vecchia cache delle texture), r3d-sin-aplazar (vecchia attesa per il 3D), reparto-sin-historia (vecchia distribuzione del carico 3D), gx-lento (vecchio percorso per i comandi geometrici).
Problemi noti
- Il salvataggio nei giochi Pokémon richiede più tempo rispetto a una vera Nintendo DS (circa 15 secondi).
- Pokémon HeartGold mostra piccoli punti neri tra le porzioni 3D della mappa.
- Mario Kart DS può ancora perdere fotogrammi durante le gare con molti elementi 3D.
- Metroid Prime Hunters gira a 30 fps nei menu (la schermata viene composta dal processore PPE).
Download: SalsaDS v0.0.3 preview
Download: Source code SalsaDS v0.0.3 preview
Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale. Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.🔥 Prodotti in promozione e articoli più venduti: PS4
Vedi altri prodotti PS4
Ultimo aggiornamento 2026-10-30 / Link di affiliazione / Immagini da Amazon Product Advertising API





