La scena homebrew della console PlayStation 5 continua a muoversi anche sul fronte dell’emulazione, e questa volta il progetto merita attenzione per l’approccio scelto.

Si chiama PS5 RetroArch ed è un porting nativo di RetroArch pensato per le console PS5 jailbroken, sviluppato da Mihawk e basato sul lavoro del progetto RetroArch/libretro e sulle fondamenta di ProsperoLight.
L’obiettivo non è semplicemente eseguire una versione desktop di RetroArch sulla console, ma costruire un’integrazione realmente nativa per PS5.
Il progetto viene avviato come titolo homebrew e utilizza il driver video Vulkan di RetroArch, collegato staticamente a PS5_Vulkan, per presentare sullo schermo i fotogrammi prodotti dai core di emulazione.
Il risultato attuale è già piuttosto concreto. L’interfaccia XMB di RetroArch funziona, così come l’alternativa RGUI, l’input del controller, l’audio stereo, il salvataggio della configurazione, la navigazione dei contenuti e il caricamento dei core.
Il progetto è stato inoltre verificato direttamente su console, anche se gli stessi sviluppatori sottolineano che i test effettuati non equivalgono ancora a una compatibilità completa con ogni core, gioco o funzionalità Vulkan.
Uno degli aspetti più interessanti riguarda proprio i core disponibili. La build attuale ne include cinque: FCEUmm per NES e Famicom, mGBA per Game Boy, Game Boy Color e Game Boy Advance, Snes9x per SNES, FinalBurn Neo per diversi sistemi arcade e Genesis Plus GX per Mega Drive, Master System, Game Gear, SG-1000 e Sega CD.
I giochi vengono elaborati dai core in modalità software, mentre RetroArch si occupa di trasferire i fotogrammi attraverso il proprio percorso video Vulkan fino alla GPU della PS5.
I test effettuati sul campo hanno già confermato gameplay, audio e input con diversi sistemi. Per FCEUmm sono stati verificati giochi NES, mentre mGBA è stato provato con contenuti GB, GBC e GBA.
Anche Snes9x ha superato i test di gioco, colori, audio, input e transizioni dei menu. FinalBurn Neo è stato utilizzato con diversi giochi arcade e Genesis Plus GX ha già dimostrato il corretto funzionamento del gameplay Mega Drive. Questo non significa però che ogni gioco, BIOS, chip speciale o modalità video sia già stato validato.
Dal punto di vista grafico, PS5_Vulkan rappresenta una componente importante del progetto. Il driver viene integrato direttamente nel titolo RetroArch e permette alla console di ricevere i fotogrammi generati dai core attraverso il backend Vulkan. Il progetto mantiene inoltre disponibile un percorso video basato sulla CPU come soluzione alternativa.
Lo sviluppatore sta lavorando anche su una base tecnica che potrebbe aprire la strada a emulatori più complessi. È stato infatti verificato il supporto alla transizione della memoria da RW a RX con una prova nativa di esecuzione del codice, una componente utile per il futuro supporto JIT.
Questo, però, non significa che il dynarec di PPSSPP sia già operativo nella build attuale: l’integrazione di PPSSPP resta ancora un obiettivo separato del progetto.
Tra gli obiettivi futuri figurano Beetle PCE per PC Engine e TurboGrafx-16, Stella per Atari 2600, PicoDrive con il supporto al Sega 32X, una maggiore copertura arcade tramite MAME, Beetle PSX HW per l’emulazione PlayStation con rendering Vulkan, Nintendo 64 attraverso Mupen64Plus-Next o ParaLLEl-N64, PPSSPP e, più avanti, Dolphin per GameCube e Wii.
Restano ancora diverse funzioni da completare. La persistenza verificata di save RAM e save state tra riavvii e cambi di core non è ancora stata accettata come definitiva, così come alcune opzioni specifiche dei core, il supporto completo a BIOS e file di sistema, il cambio disco, RetroAchievements e netplay.
Anche le funzionalità legate a shader Slang, output 4K, upscaling, VRR, 120 Hz e HDR richiedono ulteriori verifiche.
Un altro dettaglio importante è che la rete è attualmente disabilitata nel frontend, quindi funzioni come il netplay non fanno ancora parte dell’esperienza disponibile. Allo stesso modo, il progetto non include giochi o BIOS: l’utente deve fornire autonomamente i propri contenuti compatibili.
Stato attuale
| Funzionalità | Stato |
|---|---|
| Avvio del titolo nativo e uscita | ✅ Funzionante, inclusa la chiusura dello splash screen e l’uscita nativa pulita |
| Output video Vulkan | ✅ Menu e fotogrammi dei core software presentati tramite libps5vk collegato staticamente |
| XMB | ✅ Menu predefinito, con rendering di icone, font e sfondo |
| RGUI | ✅ Menu alternativo |
| Input del controller nativo | ✅ Pulsanti, navigazione dei menu con levetta sinistra e acquisizione dei collegamenti tasto/asse |
| Audio nativo | ✅ Output PCM stereo audio_ps5, test del canale audio udibile e diagnostica del buffering |
| File system e configurazione | ✅ Navigazione delle directory, caricamento/salvataggio della configurazione e cartelle dell’applicazione scrivibili tramite FTP |
| Caricamento dei core | ✅ Loader nativo dei core condivisi, rilevamento ufficiale dei file .info e recupero dai caricamenti rifiutati |
| Caricamento dei contenuti | ✅ Giochi e archivi testati con i core riportati di seguito |
| Colori e transizioni dei menu | ✅ Upload dei pixel corretti; transizioni Quick Menu/Close Content/gioco successivo verificate dal proprietario |
| Fallback video CPU | ✅ video_ps5 rimane registrato e selezionabile |
| Diagnostica di sviluppo | ✅ retroarch.log, trace di avvio/GPU, acquisizioni del kernel e temporizzazione opzionale dei frame tramite buffer |
L’ultima build di gioco verificata ha registrato zero rifiuti del driver Vulkan, zero errori dell’API GPU, zero segnali fatali del kernel e zero errori del backend audio.
Questi risultati si applicano ai test acquisiti e non a ogni possibile carico di lavoro. Consultare stato attivo e prove archiviate per build esatte, copertura dei test ed eccezioni note.
Core disponibili
La build del titolo include questi core e i relativi metadati ufficiali. Tutti e cinque i core eseguono i giochi emulati in modalità software; RetroArch carica i loro fotogrammi e li presenta tramite Vulkan. Nessuno di questi porting stabilisce il supporto a core Vulkan con rendering hardware.
| Core | Sistemi coperti dal core | Verifica su console in questo porting |
|---|---|---|
| FCEUmm | NES / Famicom | ✅ Gameplay, audio e input; successive correzioni condivise delle transizioni dei menu verificate. Prove |
| mGBA | Game Boy, Game Boy Color, Game Boy Advance | ✅ Caricamento GB/GBC/GBA, colori corretti e transizioni pulite dei menu/del gioco successivo. Prove |
| Snes9x | SNES / Super Famicom | ✅ Gameplay, colori, audio/input e transizioni dei menu testati; non tutti i chip speciali o le modalità video. Prove |
| FinalBurn Neo | Schede arcade supportate, incluse Neo Geo e Sega System 16/32 | ✅ Giochi arcade testati utilizzando sia l’output nativo a 32 bit sia l’output convertito a 16 bit; non tutte le schede o raccolte ROM. Prove |
| Genesis Plus GX | Mega Drive / Genesis, Master System, Game Gear, SG-1000, Sega CD | ✅ Gameplay Genesis e transizioni pulite confermati dal proprietario. Gli altri sistemi Sega e i percorsi disco/BIOS richiedono ancora un’accettazione separata. Prove |
Utilizzare FBNeo per le raccolte arcade Sega System 16/32, anziché Genesis Plus GX. FBNeo necessita di raccolte arcade compatibili e riceve intatti i propri archivi ZIP/7z. Il supporto agli archivi e i requisiti BIOS variano in base al core.
I binari dei core devono essere compilati per questa pipeline nativa e questo SDK. Un .so desktop o un core proveniente da una diversa distribuzione di RetroArch per PS5 non è automaticamente compatibile. Nessun gioco o file BIOS è incluso.
Grafica e runtime nativo
Core software → callback video → driver video Vulkan di RetroArch
→ libps5vk collegato staticamente → display PS5
XMB / RGUI ───────────────────────┘
PS5_Vulkan, anch’esso mantenuto da Mihawk, è il progetto separato del driver GPU utilizzato in questo caso. RetroArch esegue già il rendering attraverso di esso; completare la copertura Vulkan 1.0 del driver non è un prerequisito per i percorsi funzionanti dimostrati da questa applicazione.
La conformità del driver e la copertura delle funzionalità rimangono obiettivi propri di quel progetto.
Il driver è collegato direttamente al titolo. Aggiornare un checkout del driver o sostituire un libvulkan.so.1 esterno non aggiorna il codice collegato: è necessario ricompilare e ridistribuire il titolo RetroArch utilizzando gli artefatti del driver desiderato.
Questo repository fornisce l’integrazione frontend/piattaforma, i backend nativi per audio e input, il loader dei core, gli script di compilazione e la validazione su console.
Gli adattatori dei pixel lato core preservano i buffer del renderer adattandoli al formato di upload del frontend. Il backend video CPU rimane disponibile come fallback; le impostazioni predefinite attuali sono video_driver = "vulkan", menu_driver = "xmb".
Il supporto alla memoria eseguibile ha superato un test nativo di esecuzione del codice con transizione RW → RX. Si tratta di una base per il JIT, non dell’accettazione del dynarec di PPSSPP in questa build.
La build PPSSPP sviluppata in precedenza è un lavoro separato; la sua integrazione qui è ancora in sospeso. Il loader nativo presenta inoltre limiti espliciti, tra cui l’assenza di TLS e della registrazione generale per il riavvolgimento delle eccezioni. Consultare il contratto runtime.
Roadmap
✅ = verificato per l’ambito indicato. ❌ = implementazione o accettazione in sospeso in questo porting, anche se RetroArch upstream offre già la funzionalità.
Frontend e piattaforma
- ✅ Avvio nativo e uscita pulita.
- ✅ Presentazione GPU tramite PS5_Vulkan; fallback CPU selezionabile.
- ✅ XMB, con RGUI mantenuto.
- ✅ Input nativo, navigazione analogica dei menu e rimappatura.
- ✅ Audio stereo nativo e diagnostica del buffering.
- ✅ Navigazione del file system, persistenza della configurazione e caricamento dei contenuti.
- ✅ Caricamento nativo dei core, metadati e recupero dai caricamenti falliti.
- ❌ Persistenza di Save RAM e save state verificata tra riavvii e cambi di core.
- ❌ Persistenza delle opzioni dei core e override per gioco/per core completamente validati.
- ❌ Copertura BIOS/file di sistema, cambio disco e test di accettazione multi-disco.
- ❌ RetroAchievements e netplay; la rete è disabilitata nella build frontend attuale.
- ❌ Preset shader Slang dell’utente ed effetti multipass validati su PS5_Vulkan.
- ❌ Output/upscaling 4K, VRR, 120 Hz e HDR validati in questa applicazione.
- ❌ Funzionalità a bassa latenza, runahead e misurazioni sostenute delle prestazioni per core.
- ❌ Test di compatibilità più ampi e qualificazione della release.
Core
| Stato | Core / milestone |
|---|---|
| ✅ | FCEUmm — NES |
| ✅ | mGBA — GB / GBC / GBA |
| ✅ | Snes9x — SNES |
| ✅ | FBNeo — giochi arcade testati |
| ✅ | Genesis Plus GX — gameplay Genesis testato |
| ❌ | Beetle PCE — PC Engine / TurboGrafx-16, SuperGrafx e CD; prossima aggiunta proposta |
| ❌ | Stella — Atari 2600; candidato |
| ❌ | PicoDrive — aggiunta della copertura Sega 32X; candidato |
| ❌ | MAME — espansione della copertura arcade oltre FBNeo |
| ❌ | Beetle PSX HW — PlayStation, con rendering Vulkan come obiettivo |
| ❌ | Nintendo 64 — valutazione di Mupen64Plus-Next / ParaLLEl-N64 con ParaLLEl-RDP |
| ❌ | PPSSPP — integrazione del precedente lavoro JIT per PS5, quindi validazione del rendering Vulkan |
| ❌ | Dolphin — futura milestone GameCube / Wii |
Le voci future sono obiettivi di sviluppo e non un ordine di rilascio promesso. Il rendering hardware introduce nuovi requisiti Vulkan oltre alla semplice presentazione dei fotogrammi software.
Installazione e posizione dei file
La distribuzione verificata utilizza una cartella del titolo homebrew, non un pacchetto retail. Copiare l’intero albero dist/PPSA99169/ nella posizione del titolo utilizzata dal launcher homebrew configurato.
La configurazione di validazione attuale utilizza /data/homebrew/PPSA99169/. Questo progetto non installa né un jailbreak né un launcher.
/app0 è il punto di mount dell’applicazione in esecuzione. Tramite FTP, utilizzare invece la relativa cartella del titolo:
| Scopo | Sotto /data/homebrew/PPSA99169/ |
In RetroArch |
|---|---|---|
| Core nativi | cores/ |
/app0/cores/ |
| Metadati dei core | info/, con copie di compatibilità in cores/ |
/app0/info/ |
| Giochi | content/ |
/app0/content/ |
| Dati BIOS/sistema | system/ |
/app0/system/ |
| Configurazione attiva | config/retroarch.cfg |
/app0/config/retroarch.cfg |
| Save RAM | savefiles/ |
/app0/savefiles/ |
| Save state | savestates/ |
/app0/savestates/ |
Per FBNeo, utilizzare system/fbneo/ per i relativi file di sistema. I nomi dei BIOS Sega CD di Genesis Plus GX devono essere inseriti nella root system/ configurata, come indicato dai relativi metadati.
L’applicazione crea le proprie cartelle gestite scrivibili e inizializza le impostazioni attive solo quando non esiste alcuna configurazione attiva. Gli aggiornamenti tramite script ordinari preservano i contenuti dell’utente e le impostazioni salvate.
Le impostazioni esistenti possono quindi mantenere RGUI selezionato anche se XMB è il valore predefinito del pacchetto. Eseguire un backup dei file dell’utente prima di qualsiasi rimozione completa; --clean elimina l’intera cartella del titolo.
Consultare deployment per la configurazione FTP, la lettura verificata e le sessioni di test. I dettagli della console devono essere inseriti nel file .env ignorato, basato su .env.example.
Test e risoluzione dei problemi
Una build completata non dimostra né il corretto funzionamento del gameplay né un rendering corretto. L’accettazione di un core comprende caricamento nativo, gameplay, controlli dei colori, audio/input, Quick Menu → Close Content e caricamento di un altro gioco.
La conferma visiva del proprietario della console viene registrata insieme ai log; una fotocamera può non rilevare sfarfallii sincronizzati con il refresh.
L’attuale milestone di gameplay ha superato tutti e cinque i controlli host con 66 test Python; 23 acquisizioni registrate vengono riprodotte correttamente. I risultati esatti e le limitazioni sono disponibili in ACTIVE, anziché essere dedotti dall’elenco delle funzionalità upstream di un core.
Per le segnalazioni, includere il core, il formato del file di gioco, le impostazioni rilevanti, i passaggi per riprodurre il problema e indicare se l’applicazione è stata chiusa manualmente.
Conservare retroarch.log e trace.txt prima di una nuova apertura: il log del frontend viene sostituito al nuovo avvio. Gli strumenti di test conservano le acquisizioni del kernel nella directory ignorata klog/. Oscurare i percorsi privati, gli indirizzi della console e le credenziali prima di condividere i log.
I vecchi file gpu-buffers-*.bin, gpu-stages-*.bin e gpu-tables-*.bin sono diagnostiche temporanee del rendering provenienti da precedenti analisi. Non sono risorse runtime necessarie e possono essere rimossi. Conservare i normali log di sviluppo quando si segnalano bug.
Documentazione
| Documento | Scopo |
|---|---|
| Stato attivo | Build verificata attuale, errori noti e limiti di accettazione |
| Reference | Loader nativo, contratti dei core, sorgenti fissati e dettagli della piattaforma |
| Testing | Controlli host e procedure di accettazione su console |
| Deployment | Preparazione della build, posizioni FTP, aggiornamenti e workflow delle acquisizioni |
| Troubleshooting | Sintomi registrati, cause e correzioni |
| Findings | Osservazioni tecniche e prove alla base delle decisioni |
| Phase log | Cronologia datata dello sviluppo e dei test su console |
| Evidence | Acquisizioni leggibili dalle macchine e risultati attesi |
| Istruzioni per contributori/agenti | Ambito, verifica, attribuzione e regole per i commit |
Autori e ringraziamenti
Questo porting si basa su un importante lavoro upstream e sulla scena homebrew PS5. I crediti riportati di seguito identificano gli autori e i team dei progetti; i relativi repository conservano gli elenchi completi dei contributori e le note originali.
Frontend, piattaforma e grafica
| Progetto / autore | Contributo |
|---|---|
| Mihawk — PS5_RetroArch, PS5_Vulkan | Questo porting nativo di RetroArch, l’integrazione dei core e l’implementazione separata di PS5 Vulkan |
| RetroArch / contributori libretro | Frontend, API libretro, menu, pipeline video e librerie condivise |
| BlackBearReloaded — ProsperoLight | Punto di partenza del progetto e riferimento per l’integrazione nativa di input e audio PS5 |
| BlackBearReloaded — PS5 Native App Boilerplate | Strumenti sottostanti per i titoli nativi, conversione ELF/FSELF e base runtime-shim |
| John Törnblom e contributori ps5-payload-dev | SDK pubblico PS5 Payload, toolchain e stub API; infrastruttura per i port di PacBrew |
| John Törnblom / ps5-payload-dev — websrv | Riferimento per gli script di recupero/compilazione/preparazione per core; questo porting utilizza una pipeline separata per il titolo nativo |
| BlackBearReloaded — ps5-opengl | Fondamenti per il compilatore shader e la grafica utilizzati da PS5_Vulkan; non è il backend video RetroArch attivo |
| Contributori Mesa | Runtime Vulkan, NIR/ACO e fondamenti delle utility utilizzati attraverso lo stack grafico |
| Khronos Group | Header API Vulkan e specifiche |
| Contributori degli asset RetroArch e progetto M+ Fonts | Asset XMB e font inclusi nel pacchetto; le note originali vengono mantenute |
| Contributori LLVM / Clang, autori di zlib Jean-loup Gailly e Mark Adler | Strumenti di compilazione e compressione |
Core degli emulatori
| Core | Autori / manutentori accreditati upstream |
|---|---|
| FCEUmm | FCEU Team, CaH4e3 e contributori |
| mGBA | endrift e contributori |
| Snes9x | Snes9x Team e contributori |
| FinalBurn Neo | Team FBNeo e contributori |
| Genesis Plus GX | Charles MacDonald, Eke-Eke e contributori |
| libretro core-info | Manutentori dei metadati e contributori |
Changelog
Questa prima alpha pubblica include un menu funzionante, input nativo del controller, audio stereo e cinque core di emulatori testati.
Cosa funziona
- Menu XMB, con RGUI anch’esso disponibile.
- Output video Vulkan, con fallback CPU selezionabile.
- Input del controller, navigazione analogica dei menu e rimappatura dei pulsanti.
- Audio stereo nativo.
- Navigazione dei contenuti e salvataggio della configurazione.
- Caricamento nativo dei core e recupero dai caricamenti rifiutati.
- Colori corretti e transizioni pulite tra menu e giochi nei titoli testati.
Core inclusi
| Core | Sistemi |
|---|---|
| FCEUmm | NES / Famicom |
| mGBA | Game Boy / Game Boy Color / Game Boy Advance |
| Snes9x | SNES / Super Famicom |
| FinalBurn Neo | Sistemi arcade supportati |
| Genesis Plus GX | Genesis / Mega Drive, Master System, Game Gear, SG-1000 e Sega CD |
Tutti i core inclusi eseguono i giochi in modalità software, mentre RetroArch presenta i relativi fotogrammi attraverso Vulkan.
La copertura varia: il gameplay Genesis è stato verificato; gli altri sistemi di Genesis Plus GX e il supporto ai dischi richiedono ancora ulteriori test.
Installazione
È necessaria una PS5 già configurata per eseguire homebrew, con accesso FTP e un launcher che supporti titoli basati su cartelle.
- Scaricare ed estrarre il file ZIP della release.
- Copiare l’intera cartella
PPSA99169in/data/homebrew/PPSA99169/. - Verificare che l’eseguibile si trovi in
/data/homebrew/PPSA99169/eboot.bin. - Avviare RetroArch tramite il proprio launcher homebrew.
Evitare di inserire un’altra cartella PPSA99169 all’interno della prima. Mantenere insieme tutti i file e le sottocartelle inclusi nel pacchetto.
Dove inserire i propri file
Questi percorsi sono accessibili tramite FTP:
| File | Cartella |
|---|---|
| Giochi / ROM | /data/homebrew/PPSA99169/content/ |
| Core | /data/homebrew/PPSA99169/cores/ |
| BIOS / file di sistema | /data/homebrew/PPSA99169/system/ |
| File di sistema FBNeo | /data/homebrew/PPSA99169/system/fbneo/ |
| Configurazione attiva | /data/homebrew/PPSA99169/config/retroarch.cfg |
| Save RAM | /data/homebrew/PPSA99169/savefiles/ |
| Save state | /data/homebrew/PPSA99169/savestates/ |
All’interno di RetroArch, la cartella del titolo appare come /app0/****. I propri giochi saranno quindi disponibili in /app0/content/.
L’applicazione crea le proprie cartelle scrivibili all’avvio. Nessun gioco o file BIOS è incluso.
Avviare un gioco
- Selezionare Load Core e scegliere l’emulatore appropriato.
- Selezionare Load Content.
- Navigare fino a
/app0/content/e selezionare il proprio gioco.
Configurare una scorciatoia per il cambio del menu in Settings → Input → Hotkeys, in modo da poter tornare al menu durante il gioco.
Per i giochi arcade Sega System 16/32, utilizzare FBNeo, non Genesis Plus GX. I giochi arcade richiedono raccolte ROM compatibili.
Limitazioni della Alpha
- La compatibilità è verificata con giochi selezionati, non con ogni sistema o titolo supportato.
- La persistenza di Save RAM e save state richiede ancora una validazione più ampia.
- I flussi di lavoro relativi a BIOS, CD e multi-disco non sono completamente verificati.
- RetroAchievements e netplay non sono disponibili in questa build.
- PPSSPP, N64, Beetle PSX HW e Dolphin non sono inclusi.
- 4K, HDR, VRR, 120 Hz e le funzionalità avanzate degli shader non sono state validate.
- I core provenienti da RetroArch desktop o da altre distribuzioni di RetroArch per PS5 non sono automaticamente compatibili.
Nota: Eseguire un backup della configurazione e dei salvataggi prima dell’aggiornamento.
Segnalazione dei problemi
Includere:
- Il core e il formato del file di gioco.
- I passaggi per riprodurre il problema.
- Le impostazioni rilevanti.
- Indicare se l’applicazione è stata chiusa manualmente.
Conservare retroarch.log e trace.txt dalla cartella dell’applicazione prima di riaprire RetroArch. Screenshot o video sono particolarmente utili per i problemi di rendering.
Download: PS5 RetroArch v0.1.0 Alpha 1
Download: Source code PS5 RetroArch v0.1.0 Alpha 1
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: PS5
Vedi altri prodotti PS5
Ultimo aggiornamento 2026-09-25 / Link di affiliazione / Immagini da Amazon Product Advertising API

![[Scena PS Vita] Aleph One Vita si aggiorna alla versione 2.0: Marathon ora arriva a 30 FPS stabili](https://www.biteyourconsole.net/wp-content/uploads/AlephOneVita1900-238x178.webp)
![[Scena PS5] Rilasciato Twiso v01.00: Nuovo launcher PS2 ISO per PS5](https://www.biteyourconsole.net/wp-content/uploads/Twiso1900-238x178.webp)

![[Scena PS Vita] Aleph One Vita si aggiorna alla versione 2.0: Marathon ora arriva a 30 FPS stabili](https://www.biteyourconsole.net/wp-content/uploads/AlephOneVita1900-100x75.webp)
![[Scena PS5] Rilasciato Twiso v01.00: Nuovo launcher PS2 ISO per PS5](https://www.biteyourconsole.net/wp-content/uploads/Twiso1900-100x75.webp)