Pubblicato un nuovo aggiornamento per DKWDRV, la versione homebrew sostitutiva del driver originale PS1DRV per console PlayStation 2, progettato per migliorare l’esperienza di gioco dei titoli PS1 su PS2.

Il driver originale presentava numerose limitazioni, sia intenzionali che accidentali, che rendevano l’uso frustrante, come problemi di compatibilità, modalità video errate e difficoltà con giochi fuori regione.
DKWDRV affronta questi problemi, unificando in un unico driver le funzionalità dei due driver originali (PGIF e DECKARD), che sono stati analizzati tramite reverse engineering e ricostruiti da zero.
Questo progetto non ha legami con altri homebrew PS1 per PS2 ed è attualmente in fase beta, con possibili bug dovuti alla varietà di hardware PS2 e giochi PS1.
Questa nuova versione introduce diverse correzioni e ottimizzazioni importanti. Per le console PGIF, se la modalità “Component Fix” è selezionata e il parametro “VMODE” è impostato su “Auto”, il sistema effettuerà il fallback automatico alla modalità video predefinita della console.
È comunque possibile forzare una modalità video di un’altra regione, ma la modifica è stata necessaria perché la funzione “Component Fix” richiede l’accesso ai registri DVE tramite IOP, operazione che può causare un breve stallo sul processore Emotion Engine.
L’impatto riguarda solo le console con “PGIF Component Fix” attivo e, in questi casi, è consigliato impostare il videomode fisso per ogni gioco.
Corretti inoltre diversi bug legati al caricamento dei valori “mecha” dal database interno: in precedenza, questi non venivano letti correttamente, influenzando tutti i giochi che utilizzavano configurazioni mecha dedicate.
Gli sviluppatori consigliano di ricontrollare l’elenco dei titoli interessati e aggiornare i relativi valori. Il codice responsabile della gestione automatica della modalità video (AutoVMode) è stato spostato in una sezione separata, migliorandone la stabilità, anche se saranno necessari ulteriori test per verificarne la piena affidabilità.
Ulteriori fix riguardano il gestore delle interruzioni PGIFIntr, la correzione di un bug legato al comando secondario GPU A0 — che risolve diversi problemi segnalati in precedenza — e l’introduzione di una nuova combinazione di tasti USB per l’IGR (In-Game Reset).
Ora è possibile spegnere la console tenendo premuti per circa quattro secondi
+
+
+
+
, oppure riavviarla mantenendo premuti gli stessi tasti ma sostituendo
con
.
Il team invita gli utenti a contribuire testando diverse combinazioni di giochi e supporti, sia tramite CD che USB, con o senza patch DECKARD, per aiutare a individuare eventuali problemi ancora irrisolti.
Caratteristiche
- Caricamento giochi via USB (beta). Solo console DECKARD.
- Emulazione quasi identica al comportamento dei driver originali.
- Singolo file compatibile sia con console PGIF che DECKARD, con dimensione finale compressa di circa 70-80kb (i driver PGIF da soli erano ~120kb, quelli DECKARD compressi ~180kb).
- Database interno separato di configurazioni giochi per PGIF e DECKARD. Tutti i giochi dei driver originali sono inclusi e applicati automaticamente.
- Cambio automatico del video mode PS1. Il driver adatta automaticamente il video mode richiesto dal gioco; è anche possibile forzare manualmente un mode.
- Correzione PS2HDMI per dongle HDMI PS2, utile anche quando l’uscita component non mostra più nulla dopo il logo PS1.
- Correzione per il reset GPU GP1, problema comune nei giochi homebrew PS1 che bloccava il funzionamento su PS2.
- Possibilità di forzare il dithering attivo o disattivo, senza bisogno di patch o cheat sui giochi.
- Possibilità di regolare gli offset dello schermo.
- Controllo del color banding della GPU (il driver PS1DRV originale lo applicava solo agli sprite).
- Patch automatica del controllo licenza e logo PS1 per console DECKARD. (Per ora non disponibile su PGIF, ma viene segnalato a schermo.)
- Tutte le opzioni di configurazione PS1 possono essere salvate.
- Più valori di filtering disponibili per la nitidezza dei poligoni.
- Opzione di filtering anche per gli sprite (non solo per i poligoni texturizzati come nel driver originale).
- Correzione Crackto per patch, trainer/crackto e homebrew che risultavano fuori schermo.
- Possibilità di applicare cheat (solo su console DECKARD).
- Combinazioni di tasti personalizzate per azioni specifiche durante il gioco (solo DECKARD).
- Possibilità di scambiare i tasti X e O, utile per giocare ai titoli giapponesi (solo DECKARD).
- Patch automatica dei giochi protetti con Libcrypt, impostando la chiave finale nei registri Cop (usando magic words da gamedb.py di sahlberg pop-fe).
- Controllo del valore VERSTR per far credere ai giochi PS1 di trovarsi su una console di regione diversa (solo DECKARD).
- Mappatura dell’analogico per giochi che non lo supportano nativamente (es. Crash Bandicoot 1), con possibilità di impostare le deadzone.
- Utile per gli utenti PCSX2 che hanno solo BIOS DECKARD recenti e non riescono a emulare correttamente: è possibile avviare direttamente l’ELF.
- Utile per utenti TOOL con switch obbligatori e ROM correttamente flashata.
- Numerose correzioni di bug ai codici originali, soprattutto relativi agli interrupt.
In futuro verrà pubblicata una lista completa dei file di configurazione interni con documentazione dettagliata.
Download ed Esecuzione
- Scaricare l’ultima versione dalla repository del progetto.
- Eseguire semplicemente il file ELF in qualsiasi modo disponibile.
- Assicurarsi di avere un disco PS1 valido inserito prima di avviare il programma.
- Gli utenti devono configurare le opzioni relative alle correzioni e funzionalità desiderate.
- Per salvare le modifiche, è necessario utilizzare l’opzione Save Game Config nel menu.
- La selezione Run avvierà il gioco.
- La maggior parte delle opzioni è facile da capire.
- Una migliore nomenclatura e documentazione arriveranno presto.
- Nota: I modchip possono influenzare e compromettere il boot, causando schermate nere.
- Segnalare i problemi su Github Issues fornendo TUTTE LE INFORMAZIONI POSSIBILI:
- Modello della console.
- Versione di DKWDRV.
- Tipo di supporto utilizzato.
- ID del disco.
- Eventuali link Redump.
- Presenza o tipo di modchip.
- Qualsiasi altra informazione rilevante.
- Segnalazioni tipo “non funziona” o “schermata nera” non sono utili!
- Riportare anche le informazioni presenti nella sezione INFO di DKWDRV.
- Utilizzare sempre l’ultima versione disponibile!
Caricamento da USB
- Il progetto ha subito ritardi a causa di enormi difficoltà tecniche nell’implementazione dell’emulazione e del debugging.
- Questa è la fase 1 di rilascio: si spera di raccogliere segnalazioni di bug per migliorare lo stato attuale.
- Dopo questa fase verrà implementato il supporto audio XA/CDDA (un prototipo ha già funzionato con successo).
- Grazie al supporto della community, siamo arrivati alla fase 2: con la versione 1.7.6 l’emulazione è stata migliorata.
- Restano ancora casi limite da risolvere.
- Attualmente, sono ben accette segnalazioni riguardo a regressioni (giochi che funzionavano prima e ora no).
Utilizzo del caricamento USB
- Creare una cartella chiamata “DKWDRV” all’interno della chiavetta USB.
- All’interno di “DKWDRV”, creare una cartella chiamata “BIN”.
- Dentro “BIN”, creare una cartella per ogni gioco, e inserire al suo interno i file
.bine.cue(uniti in un unico file.bin). - Volendo è possibile inserire anche un file
CHEATS.TXTrelativo al gioco.
Esempio di struttura:
USB
└── DKWDRV
└── BIN
├── Crash Bandicoot
│ ├── Crash Bandicoot.bin
│ └── Crash Bandicoot.cue
│
├── Crash Bandicoot 2 - Cortex Strikes Back
│ ├── Crash Bandicoot 2 - Cortex Strikes Back.bin
│ ├── Crash Bandicoot 2 - Cortex Strikes Back.cue
│ └── CHEATS.TXT
│
└── ...
- Eseguire
DKWDRV.ELFe selezionare Select USB Game. - Premendo il tasto
su un gioco è possibile aprire le opzioni specifiche per quel titolo. - Al primo avvio di un gioco, il programma tenterà di creare automaticamente una configurazione analizzando i file del gioco.
Limitazioni
- L’unità USB deve essere formattata in FAT32.
- Tutte le tracce
.bindevono essere unite in un unico file (è possibile utilizzare IsoBuster o CDMage). - È necessario fornire anche il file
.cue, e il nome del file.binche deve corrispondere a quello principale. - Tutti i dump devono avere settori da 2352 byte.
- Tutti i giochi devono essere deframmentati (Se non lo sono, il gioco potrebbe crashare in qualsiasi momento).
- Non è ancora supportato l’audio XA/CDDA (musiche, audio FMV, effetti sonori mancanti).
- Non è ancora implementato il cambio disco, ma è pianificato e fattibile.
Risoluzione dei problemi
- Questa versione è ancora MOLTO BETA e in fase di sviluppo.
- Provare con un’altra chiavetta USB se si riscontrano problemi.
- Collegare la chiavetta USB direttamente (senza hub USB o altri dispositivi USB collegati).
- Verificare che la struttura dei file del gioco sia corretta.
- Verificare che il gioco sia deframmentato.
- Giocare con le opzioni di configurazione, ad esempio impostando VERSTR sulla regione di default del gioco.
- L’assenza di audio XA/CDDA è un problema noto e verrà risolto in futuro.
- Alcuni giochi protetti con subq funzionano, ma potrebbero esserci casi rari in cui la patching “magic word” non funziona bene.
- Alcuni giochi si caricano molto rapidamente perché i tempi di seek sono stati impostati al minimo (questo verrà migliorato).
- Se si utilizza un adattatore HDMI, ricordarsi di regolare le impostazioni video: a volte il cambio di modalità video può causare NO SIGNAL sulla TV; in quel caso, riavviare l’adattatore.
Funzionalità future pianificate (senza data prevista)
- Driver USB exFAT (implementati, ma non affidabili su tutti i dispositivi; FAT32 funziona meglio).
- Supporto a videomode più elevati durante il gioco (in fase di studio).
- Supporto audio XA/CDDA (parzialmente completato).
- Implementazione del cambio disco (parzialmente completato).
- VMC (Memory Card Virtuale) da USB sia per caricamento da disco che da USB (codice di scrittura VMC già pronto).
- Funzionalità IGR (Reset In-Game).
- BIOS personalizzati.
- E molto altro…
Changelog
- Console PGIF: Se è selezionata la modalità “Component Fix” e VMODE è impostato su Auto, verrà eseguito il fallback alla modalità video predefinita della console. Per far funzionare altri videomodi, forzare la modalità video di un’altra regione. Questa modifica è stata aggiunta perché “Component Fix” deve accedere ai registri DVE tramite IOP, causando un breve stallo sul processore EE. L’impatto riguarda solo le console PGIF con modalità “Component Fix”. Per questa console è necessario impostare un videomode fisso per ogni gioco. Risolve il problema #107.
- PGIF/DECKARD: Corretto un bug per cui i valori “mecha” non venivano caricati dal database interno. Tutti i giochi con configurazioni mecha nel database interno erano interessati. Controlla di nuovo la lista dei giochi qui e qui e modifica i valori mecha di conseguenza.
- PGIF/DECKARD: Il codice AutoVMode è stato spostato in un’altra sezione, dovrebbe essere più stabile ma necessita di ulteriori test.
- PGIF: Correzione del gestore delle interruzioni PGIFIntr.
- PGIF: Corretto un bug relativo al comando secondario GPU A0. Risolve i problemi #108, #86 e #98.
- USB: Aggiunta la combinazione IGR. Tenere premuti
+
+
+
+
per circa 4 secondi per spegnere la console. Tenere premuti
+
+
+
+
, per circa 4 secondi per resettare la console. - Chiusura di alcuni problemi aperti per concentrarsi sul miglioramento generale del driver. Ottobre non è ancora finito!
Gli sviluppatori invitano gli utenti a contribuire con ulteriori test, utilizzando PGIF/DECKARD da CD (con o senza patch DECKARD) o da USB, per individuare eventuali problemi ancora presenti.
Download: DKWDRV Release 1.7.6f
Download: Source code DKWDRV Release 1.7.6f
Fonte: github.com
![[Scena Wii U] Rilasciato wafel_payloader v3.0 per l’avvio automatico di Aroma e Tiramisu](https://www.biteyourconsole.net/wp-content/uploads/WafelPayloader-238x178.webp)
![[Scena Wii U] Rilasciato Stroopwafel v2.1: Controllo kernel avanzato con IPC e modchip de_Fuse](https://www.biteyourconsole.net/wp-content/uploads/Stroopwafel-238x178.webp)
![[Scena Switch] Nuovo aggiornamento per SysDVR compatibile con firmware 21.0: più stabilità e minore uso di memoria](https://www.biteyourconsole.net/wp-content/uploads/SysDVR-238x178.webp)
![[Scena Wii U] Rilasciato wafel_payloader v3.0 per l’avvio automatico di Aroma e Tiramisu](https://www.biteyourconsole.net/wp-content/uploads/WafelPayloader-100x75.webp)
![[Scena Wii U] Rilasciato Stroopwafel v2.1: Controllo kernel avanzato con IPC e modchip de_Fuse](https://www.biteyourconsole.net/wp-content/uploads/Stroopwafel-100x75.webp)
![[Scena Switch] Nuovo aggiornamento per SysDVR compatibile con firmware 21.0: più stabilità e minore uso di memoria](https://www.biteyourconsole.net/wp-content/uploads/SysDVR-100x75.webp)
![[Scena PS Vita] Rilasciato Fallout 2 Community Edition v1.2.0-vita.7](https://www.biteyourconsole.net/wp-content/uploads/Fallout2CE-100x75.jpg)
![[Scena PS5] Rilasciato PS5 Discord Rich Presence client v1.0.0](https://www.biteyourconsole.net/wp-content/uploads/PS5Discord-100x75.webp)
