Home Homebrew Rilasciato sd2psXtd v1.3.0: Il firmware avanzato per sd2psx che rivoluziona l’emulazione delle...

Rilasciato sd2psXtd v1.3.0: Il firmware avanzato per sd2psx che rivoluziona l’emulazione delle Memory Card su PS1 e PS2

242
0

Pubblicato un nuovo aggiornamento per il firmware sd2psXtd che si conferma come una delle soluzioni più complete e avanzate per chi vuole sfruttare al massimo l’emulazione delle memory card su console PlayStation 1 e PlayStation 2.

Nato come estensione del progetto originale sd2psx, questo firmware non si limita a riproporre le funzionalità standard, ma introduce una serie impressionante di novità che puntano a rendere l’esperienza utente più fluida, potente e personalizzabile che mai.

Pensato per funzionare su dispositivi basati su RP2040, come sd2psx e alcuni modelli commerciali tipo PSXMemCard di BitFunX, sd2psXtd porta l’emulazione delle memory card a un livello superiore.

Con questo aggiornamento, sd2psXtd introduce una serie di novità pensate per migliorare l’esperienza d’uso e risolvere diverse problematiche emerse nelle versioni precedenti.

Tra le nuove funzioni più significative spiccano l’introduzione di una Splash Screen personalizzata, che offre un tocco visivo più curato all’avvio del dispositivo, e la Game Image Screen, una schermata che consente di visualizzare le immagini dei giochi salvati, facilitando l’identificazione dei file e rendendo l’interfaccia più intuitiva e accattivante.

Un’altra novità degna di nota è il Conquest Card Mode, sviluppato da @israpps, che introduce il supporto a particolari funzioni legate a titoli come SoulCalibur 2, rendendo possibile la gestione avanzata delle “Conquest Cards”, ovvero le schede di progresso specifiche del gioco.

Sul fronte tecnico, l’aggiornamento porta con sé una lunga serie di ottimizzazioni e correzioni. Sono stati risolti bug che causavano una GUI eccessivamente carica o loop di scorrimento infinito nei menu, migliorando sensibilmente la fluidità complessiva.

Ripristinato inoltre il corretto funzionamento dell’interfaccia SSD1306, con rollback mirato per garantire una visualizzazione stabile.

Numerosi commit firmati dagli sviluppatori, tra cui BBsan, Matías Israelson e Julian Uy, mostrano il grande lavoro di pulizia del codice e di riorganizzazione interna, con aggiornamenti mirati ai componenti grafici, alla gestione degli errori e al database Python, ora alleggerito da dipendenze inutili.

L’interfaccia grafica ha ricevuto una revisione completa, con menu più reattivi, animazioni corrette che non si ripetono più all’infinito e un sistema di aggiornamento dello schermo ottimizzato per PlayStation 1, che evita refresh inutili migliorando la stabilità generale.

Aggiunta inoltre la possibilità di leggere splash screen specifiche per canale o scheda, permettendo una maggiore personalizzazione visiva.

PlayStation 2

  • Cambio ID Gioco.
  • Selezione dinamica modalità PS1.
  • Supporto a MMCEMAN e MMCEDRV.
  • Disponibilità istantanea della Memory Card.
  • Supporto a Memory Card da 1 a 64 MB.
  • Supporto ai modelli Developer (DTL-H & DTL-T), Arcade (COH-H) e Prototype (EB?).

PlayStation 1

  • Meccaniche BootCard.
  • Supporto a PSRAM.
  • Supporto ai combo di tasti del Controller per cambiare Card.
  • Avvio super rapido di FreePSXBoot.
  • Supporto Net Yaroze.

Generale

  • File di configurazione delle impostazioni.
  • Supporto ad altri dispositivi MMCE basati su RP2040.
  • Configurazione per ogni singola Memory Card.
  • Mappatura Game2Folder.

PS2: Cambio ID Gioco

Come su PlayStation 1, sd2psXtd può rilevare l’ID del gioco su PlayStation 2 e passare automaticamente a una Memory Card dedicata per quel gioco. Il cambio ID può essere disattivato nelle impostazioni.

Questo avviene in due modi:

  • Tracciamento file di cronologia: La PS2 scrive l’ID del gioco su un file storico della Memory Card. Il firmware intercetta questa scrittura e monta automaticamente la Memory Card dedicata.
  • ID Gioco tramite MMCEMAN: Integrabile con OPL, consente di inviare l’ID del gioco direttamente al dispositivo.

PS2: Selezione dinamica modalità PS1

Quando si avvia in modalità PS2, i comandi inviati a sd2psx vengono monitorati. Se vengono rilevati messaggi da controller PS1 sullo stesso bus della Memory Card, la modalità passa automaticamente a PS1.

Attenzione:

  • Se collegato a una PS1 in modalità PS2, c’è rischio di danneggiare la console PS1.
  • Non utilizzare la modalità dinamica su un multitap PS1: questo danneggerà il multitap.

PS2: Supporto MMCEMAN e MMCEDRV

  • Cambio Memory Card: MMCEMAN può richiedere il cambio di Memory Card o di canale.
  • Comunicazione ID Gioco: può inviare ID gioco al MMCE per montare la Card dedicata.
  • Accesso al File System: MMCEMAN consente di accedere al filesystem tramite chiamate POSIX.
  • Caricamento giochi: MMCEDRV permette di caricare giochi dal MMCE con prestazioni pari o migliori di MX4SIO.

PS2: Disponibilità istantanea Memory Card

Con Memory Card da 8MB, sd2psXtd espone immediatamente la Card anche mentre viene trasferita su PSRAM. Questo accelera l’avvio di FMCB/PS2BBL senza necessità di script di attesa.

PS2: Supporto Memory Card da 1 a 64 MB

Aggiunto il supporto per Card da 1 a 64 MB. Tuttavia, oltre gli 8 MB, si richiede un accesso veloce alla SD per evitare corruzioni.

Nota: Si consiglia comunque di usare Card da 8MB per la massima compatibilità.

PS2: Supporto a Developer, Arcade e Prototype PS2

sd2psXtd supporta:

  • DevKit
  • TestKit
  • Arcade
  • Prototype

Attraverso la configurazione della variante nelle impostazioni PS2. Queste varianti utilizzano chiavi MagicGate differenti per proteggere le Memory Card.

Nota: Per i possessori di Devkit (DTL-H), impostare la Card su RETAIL mode 1.

PS1: Meccaniche BootCard

Se la funzione BootCard è attivata, il sistema PS1 avvia automaticamente la BootCard all’accensione. Se disattivata, vengono ripristinati canale e Card dell’ultima sessione.

PS1: Supporto PSRAM

Le Memory Card possono essere gestite tramite PSRAM, migliorando la flessibilità dell’uso della RAM.

PS1: Combo Controller per Cambio Card

Combinazioni di tasti per cambiare Memory Card o Canale:

CombinazioneDescrizione
+ + + + Prossima Memory Card
+ + + + Memory Card precedente
+ + + + Prossimo Canale
+ + + + Canale precedente
+ + + + Passa alla BootCard

È necessario tenere premuti contemporaneamente tutti e quattro i tasti dorsali più la direzione desiderata.

PS1: Avvio Super Rapido FreePSXBoot

Utilizzando una comunicazione non standardizzata, sd2psXtd permette l’avvio velocissimo di FreePSXBoot. Necessita di una versione speciale di FreePSXBoot scaricabile da: https://sd2psXtd.github.io

PS1: Supporto Net Yaroze

Il firmware si comporta come una Net Yaroze Access Card se utilizzato col software ufficiale Net Yaroze.

Generale: File di configurazione delle impostazioni

Viene generato un file .sd2psx/settings.ini modificabile da PC.

Esempio formato:

[General]
Mode=PS2
FlippedScreen=OFF
[PS1]
Autoboot=ON
GameID=ON
[PS2]
Autoboot=ON
GameID=ON
CardSize=16
Variant=RETAIL

Valori possibili:

ImpostazioneValori possibili
ModePS1, PS2
AutoBootOFF, ON
GameIDOFF, ON
CardSize1, 2, 4, 8, 16, 32, 64
VariantRETAIL, PROTO, ARCADE
FlippedScreenON, OFF

Nota: Assicurarsi che il file .ini termini con una riga vuota.

Generale: Supporto ad altri dispositivi MMCE basati su RP2040

Supporta dispositivi come:

  • PicoMemcard+ / PicoMemcardZero (DIY di dangiu): Utilizzare firmware variante PMC+ o PMCZero.
  • PSXMemCard (BitFunX): Utilizzare firmware variante psxmemcard.
  • PSXMemCard Gen2 (BitFunX): Utilizzare firmware variante sd2psx.

Nuovo nella versione 1.2: I pulsanti onboard di PMC+ e PMCZero sono supportati:

  • Bottone 1: Carica BootCard
  • Bottone 2:
    • Pressione breve: Canale precedente
    • Pressione lunga: Memory Card precedente
  • Bottone 3:
    • Pressione breve: Canale successivo
    • Pressione lunga: Memory Card successiva

Generale: Configurazione Per Card

Ogni Memory Card può avere il proprio file di configurazione CardX.ini nella cartella della Card.

Formato esempio:

[ChannelName]
1=Channel 1 Name
2=Channel 2 Name
3=Channel 3 Name
4=Channel 4 Name
5=Channel 5 Name
6=Channel 6 Name
7=Channel 7 Name
8=Channel 8 Name
[Settings]
MaxChannels=8
CardSize=8

Note:

  • CardSize si applica solo a Memory Card PS2.
  • La cartella BOOT deve contenere il file BootCard.ini.
  • Assicurarsi che i file .ini terminino con una riga vuota.

Generale: Mappatura Game2Folder

Alcuni giochi (ad esempio, la serie Singstar) condividono dati di salvataggio tra più ID gioco. È possibile creare una mappatura personalizzata in .sd2psx/Game2Folder.ini.

Esempio:

[PS1]
SCXS-12345=FolderName1
[PS2]
SCXS-23456=FolderName2

Note:

  • Nomi cartella troppo lunghi potrebbero causare scatti o malfunzionamenti durante l’utilizzo di MMCE.
  • Assicurarsi di avere una riga vuota alla fine del file .ini.

Changelog

Caratteristiche

  • Schermata di avvio (Splash Screen): Aggiunta una schermata iniziale personalizzabile.
  • Schermata immagine del gioco (Game Image Screen): Introdotta una vista per mostrare le immagini associate ai salvataggi/ai giochi.
  • Modalità Conquest Card (@israpps): Aggiunto il supporto per la Conquest Card, con funzionalità specifiche per titoli compatibili.

Correzioni

  • Interfaccia grafica (GUI) ottimizzata: Risolto un problema che causava un utilizzo eccessivo delle risorse.
  • Scorrimento infinito: Corretto un bug che provocava un ciclo continuo nei menu.
  • Interfaccia SSD1306: Ripristinate le modifiche precedenti per garantire una migliore stabilità e compatibilità.

Commit

  • e1a73c0: Pulizia del codice (BBsan) #54
  • f039900: Ulteriore pulizia del codice (BBsan) #54
  • bceb4e5: Aggiornati alcuni elementi dell’interfaccia grafica (BBsan) #55
  • 7d8879f: Corretto errore nella funzione di creazione (BBsan)
  • 999676a: Piccola correzione imprevista (“woopsie”) (BBsan)
  • fe4cb90: Schermata di errore più chiara per dimensione VMC non valida (Matías Israelson) #57
  • 7fef157: [Database] Evitato l’uso di ambienti virtuali Python (Julian Uy) #60
  • 7257602: Corretto un problema di visualizzazione (BBsan)
  • c31e635: Aggiunto pieno supporto per la Conquest Card di SoulCalibur 2 (Matías Israelson) #64
  • ab756e9: Aggiunta un’immagine statica per la schermata iniziale (BBsan)
  • 87c2a77: Implementata la visualizzazione delle immagini dei giochi (BBsan)
  • bc6b38d: Corretto il cambio di menu (BBsan)
  • ce26221: Unione del branch “develop” con “feat/img_view” (BBsan)
  • 75f3505: Correzione dei menu e aggiunta di una splash personalizzata (BBsan)
  • 557fd2a: Corretto un problema nei menu (BBsan)
  • cfe8547: Aggiornato il sistema di gestione degli stati della GUI (BBsan)
  • 5e5a63c: Risolto un problema con la schermata iniziale che rimaneva bloccata (BBsan)
  • f014fd9: Corretto un bug nella visualizzazione delle immagini di gioco (BBsan)
  • 2e8c4f3: Corretto un problema con le animazioni che restavano in esecuzione infinita (BBsan)
  • 743a9a6: Evitato l’aggiornamento continuo della GUI a ogni ciclo su PS1 (BBsan)
  • c4c17b6: Aggiunta la lettura delle splash per canale con fallback per scheda (BBsan)
  • ff28139: Aggiunta la descrizione delle nuove funzionalità (BBsan)
  • b2450c3: Aggiornamento alla versione 1.3 (BBsan)

Download: sd2psXtd v1.3.0

Download: Source code sd2psXtd v1.3.0

Fonte: github.com