Home Homebrew Rilasciato Twiso v01.00: Nuovo launcher PS2 ISO per PS5

[Scena PS5] Rilasciato Twiso v01.00: Nuovo launcher PS2 ISO per PS5

94
0

Nel panorama homebrew della console PlayStation 5 continua a crescere il numero di progetti sperimentali dedicati a rendere più semplice la gestione e l’avvio dei giochi PlayStation 2.

Tra le novità più interessanti ora troviamo Twiso, un nuovo front-end nativo per PlayStation 5 sviluppato da Swordpdf e ancora in fase sperimentale.

L’idea alla base di Twiso è piuttosto interessante: invece di limitarsi a fornire un semplice metodo per avviare un titolo, il progetto propone una vera e propria interfaccia in stile PS5 attraverso la quale è possibile organizzare e gestire la propria libreria di ISO PS2.

La versione 01.00 permette infatti di effettuare la scansione della cartella /data/PS2/isos, mostrando i giochi all’interno di un menu scorrevole pensato per ricordare l’interfaccia della console Sony.

Quando viene selezionato un titolo, Twiso può inoltre leggere automaticamente il seriale del disco e utilizzare configurazioni specifiche per ogni gioco.

Uno degli aspetti più interessanti riguarda anche la gestione delle copertine. Il launcher può scaricare direttamente sulla console le immagini JPEG associate ai giochi, salvandole nella cartella /data/PS2/covers/ e utilizzando il database PS2 Covers di xlenore. In questo modo la libreria può assumere un aspetto molto più vicino a quello di un vero catalogo digitale.

Twiso introduce inoltre un sistema di backend selezionabile in base al Title ID del gioco. Il progetto viene fornito con alcuni riferimenti a backend già supportati, mentre la struttura permette di gestire configurazioni personalizzate attraverso i relativi file .txt e .lua.

Sono presenti anche una schermata delle impostazioni, i prompt per DualSense, una barra di caricamento e strumenti diagnostici come klog e cover-debug.log.

Twiso non include gli emulatori o i relativi runtime. Il progetto richiede una PS5 jailbroken, un ELF loader, etaHEN o OnionHEN, ps-patch-system, ShadowMount e i propri pacchetti backend. Anche le cartelle dedicate a ISO, configurazioni e copertine devono essere predisposte dall’utente.

Cosa fa

  • Scansiona /data/PS2/isos e mostra i giochi; l’elenco scorre e i nomi lunghi vanno a capo per adattarsi allo spazio disponibile.
  • Legge automaticamente il seriale del disco di ogni gioco quando viene selezionato (scansione ISO in sola lettura), utilizzandolo per identificare la relativa configurazione e copertina.
  • Configurazioni per gioco, identificate dal seriale PS2: /data/PS2/configs/<SERIAL>.txt (CLI dell’emulatore) e <SERIAL>.lua. I valori predefiniti vengono creati quando necessario.
  • Copertine da xlenore/ps2-covers: scaricate tramite HTTPS e decodificate direttamente sulla console tramite un decoder JPEG baseline + progressive integrato, direttamente nel framebuffer.
  • Backend selezionabile: avvia uno dei pacchetti di emulatori installati (ad esempio WotM v1/v2, JAK2 v2, RECVX, Red Faction, KOF2000) tramite il relativo title ID.
  • Interfaccia in stile PS5: pannelli arrotondati, prompt reali dei pulsanti DualSense, barra di caricamento in stile PS5, schermata delle impostazioni integrata e ampia area dedicata alla copertina.
  • Diagnostica: stato visualizzato a schermo, script per la cattura del klog e traccia /data/PS2/cover-debug.log.

Requisiti

Console (runtime)

  • Una PS5 jailbroken con un firmware vulnerabile, dotata di un ELF loader.
  • etaHEN (o OnionHEN) come daemon app-jailbreak. L’app viene eseguita come PPSA99202, che deve essere inserito nella whitelist del daemon jailbreak di HEN tramite [app_jailbreak] exact_title_ids; in caso contrario, la richiesta di avvio del backend viene ignorata.
  • ps-patch-system di illusionyy (Apache-2.0): applica una patch a shellcore per montare /data nella sandbox, consentendo all’app e ai backend degli emulatori di accedervi.
  • ShadowMount di drakmor: monta /data/homebrew/PPSA99202-app in /user/app/PPSA99202/mount.lnk, permettendo a Twiso di comparire nella schermata Home della PS5.
  • I propri pacchetti backend degli emulatori installati (vedere sotto).
  • Opzionale: accesso alla rete per scaricare le copertine.

Build (host)

  • WSL2 / Linux con Clang/LLD 18, python3, bash.
  • PS5 payload SDK v0.42 e zlib 1.3.2 (scaricati/verificati dagli strumenti).

Utilizzare i propri backend

Il front-end avvia un pacchetto emulatore con titolo PS4 tramite il title ID installato; non include né sostituisce il binario dell’emulatore. Questi pacchetti non sono inclusi. Il registro associa ogni voce del menu a un title ID:

Etichetta menu Title ID installato
WOTM V1 EMPTY LIBR12347
JAK2 V2 EMPTY LIBR12348
RECVX EMPTY LIBR12349
RED FACTION EMPTY LIBR12350
KOF2000 EMPTY LIBR12351
WOTM V2 EMPTY LIBR12352

Sono disponibili due opzioni.

A. Creare i propri pacchetti utilizzando gli ID previsti. Pacchettizzare il proprio runtime dell’emulatore (uno che si abbia il diritto di utilizzare) come launcher con configurazione esterna e installarlo utilizzando uno dei title ID corrispondenti (LIBR12347–LIBR12352). La procedura testata è:

  • Title ID = uno degli ID indicati sopra (questo determina anche il content ID, UP9000-<ID>_00-…).
  • config-emu-ps4.txt = esattamente una riga, senza altro contenuto: --config="/data/PS2/configs/master.txt"
  • image/disc01.iso = un placeholder da 0 byte; la ISO reale viene fornita da master.txt durante l’esecuzione.
  • Artwork opzionale: sce_sys/icon0.png 512×512 e sce_sys/pic1.png 1920×1080.

Quindi installarlo. Il nome del file del pacchetto non è importante (viene mostrato esclusivamente nell’interfaccia) — ciò che conta è soltanto il title ID installato.

B. Utilizzare i propri ID. Modificare kBackends in PS2-Library-Prototype/diagnostics/native-launch-probe-12-fixed/src/main.cpp (etichetta, title ID, stringa dell’artefatto) e ricompilare con build.sh. Qualsiasi pacchetto installato con quel title ID verrà quindi avviato dalla voce di menu corrispondente.

Importante: Non ridistribuire mai runtime di emulatori, codice Sony o dati di gioco. La responsabilità è dell’utente.

Installazione (console)

0. Inserire PPSA99202 nella whitelist del daemon jailbreak di etaHEN

Twiso deve essere inserito nella whitelist del demone jailbreak di HEN per ottenere i privilegi necessari ad avviare un backend.

Aggiungere il suo title ID all’elenco app-jailbreak del proprio HEN e ricaricare HEN — senza questa operazione, etaHEN ignora la richiesta di jailbreak dell’app e l’avvio del backend non riesce:

  • etaHEN — /data/etaHEN/config.ini:
ini

[app_jailbreak]
exact_title_ids=PPSA99202
  • OnionHEN — /data/OnionHEN/config.ini:
ini

[app_jailbreak]
# separati da virgole, massimo 20; mantenere anche gli ID esistenti
exact_title_ids=PPSA99202
title_id_prefixes=LAPY

(oppure aggiungerlo nell’elenco Toolbox → App jailbreak di OnionHEN)

All’avvio, l’app pubblica una richiesta in /download0/etahen_jailbreak ({"PID":<pid>}); sia etaHEN che OnionHEN la elaborano, ma soltanto se PPSA99202 è stato inserito nella whitelist come indicato sopra.

File della whitelist del daemon (build del demone Twiso): /data/whitelist.txt — un title ID esatto di 9 caratteri per riga, in maiuscolo, # indica un commento, massimo 20 voci.

Deve contenere PPSA99202 (ricaricare il daemon dopo la modifica — una copia obsoleta in memoria ignora silenziosamente le aggiunte):

ini

# Twiso daemon allowlist
PPSA99202

Inoltre, con ps-patch-system in esecuzione (inviare patch-bundle-loader-prospero.elf all’ELF loader sulla porta 9021), aprire la relativa interfaccia web all’indirizzo http://<console-ip>:23900 e applicare la patch che monta /data nella sandbox. Senza questa operazione, l’app non può leggere le proprie ISO, configurazioni o copertine.

1. Posizionare l’app (tramite ShadowMount di drakmor)


/data/homebrew/PPSA99202-app/        # eboot.bin, sce_module/, sce_sys/, assets/
/user/app/PPSA99202/mount.lnk    ->  /data/homebrew/PPSA99202-app

2. Creare le cartelle dei dati — l’app non crea le directory, quindi devono essere già presenti:


/data/PS2/isos/       # inserire qui i propri file *.iso (scansionati dal menu)
/data/PS2/configs/    # qui si trovano i file <SERIAL>.txt + <SERIAL>.lua per ogni gioco
/data/PS2/covers/     # cache delle copertine (compilata automaticamente quando necessario)

Esempio tramite FTP:


MKD /data/PS2
MKD /data/PS2/isos
MKD /data/PS2/configs
MKD /data/PS2/covers

3. Installare i propri pacchetti backend dell’emulatore (vedere sopra).

4. Utilizzarlo

  1. Avviare Twiso; l’app scansiona /data/PS2/isos.
  2. Spostarsi su un gioco e premere  — viene letto il suo ID disco e vengono creati/verificati i relativi file per gioco (<SERIAL>.txt / .lua).
  3. Aprire SELECT EMU / EDIT CONFIGS e selezionare il backend installato che si desidera utilizzare (e attivare/disattivare le eventuali opzioni per gioco). L’ultima voce è BACK.
  4. Selezionare LAUNCH e premere .

Nota: Il backend deve essere effettivamente installato, altrimenti la richiesta di avvio fallirà — l’app avvia il title ID selezionato, non può sostituire i binari dell’emulatore.

Note complete per l’utente finale (inclusa la nota opzionale sui salvataggi per gioco): RELEASE-SETUP.md.

Procedura guidata al primo avvio

Cosa dovrebbe essere visualizzato e quali testi a schermo indicano che tutto funziona:

  1. Avvio. Stato inferiore: DISPLAY READY - CONTROLLER TEST STARTING → RELEASE ALL BUTTONS TO ENABLE INPUT → CONTROLLER READY. Viene eseguita la scansione di /data/PS2/isos (STARTUP SCAN REQUESTED - READ ONLY).
    • Se l’elenco è vuoto viene mostrato NO ISOs FOUND / ADD .ISO FILES TO /DATA/PS2/ISOS.
  2. Selezionare un gioco. L’intestazione COVER mostra brevemente SCANNING, quindi il seriale del disco (ad esempio SCUS-97353). Il pannello mostra LOADING COVER (con effetto shimmer) e successivamente la copertina.
    • Se non è presente una copertina locale viene avviato un download; se questo fallisce verranno mostrati NO COVER ON DISK e un motivo DOWNLOAD: …. Premere  per riprovare.
  3. Premere sul gioco. Il pill inferiore mostra: GAME ID CHECK REQUESTED - READ ONLY → GAME ID FOUND - FILES CHECK STARTED.
    • Se mancano i file del gioco, viene mostrato GAME FILES MISSING - PLACE OR CREATE: premere  su CREATE DEFAULTS per creare i file predefiniti (<SERIAL>.txt + .lua), oppure trasferire i propri file tramite FTP e premere  per effettuare nuovamente il controllo.
    • Quando tutto è pronto, il pill mostra READY - PRESS LAUNCH. Visualizzare MASTER DIFFERS - PRESS LAUNCH TO APPLY su un gioco nuovo è normale.
    • Prima configurazione senza un master.txt: l’app non può crearlo dal nulla — prima trasferire tramite FTP /data/PS2/configs/master.txt con un contenuto qualsiasi non vuoto (un file vuoto viene rifiutato). La soluzione più semplice è utilizzare il loader per il proprio gioco, ad esempio per SCUS-97481:
txt

# PS2 Library loader - SCUS-97481. Managed on every launch; edit the game files instead.
--config="/data/PS2/configs/SCUS-97481.txt"
--config-local-lua="/data/PS2/configs/SCUS-97481.lua"

È sufficiente anche una singola riga #; al momento del LAUNCH verrà sostituita automaticamente con il loader reale.

  1. Selezionare il backend. Aprire SELECT EMU / EDIT CONFIGS; la voce selezionata viene contrassegnata come ACTIVE e il pill mostra BACKEND SELECTED. Premere BACK.
  2. Avvio. Selezionare LAUNCH e premere . Viene visualizzata una schermata di caricamento con la copertina, una nota CONFIGS RUNNING se le opzioni sono abilitate e una barra di avanzamento (TRANSACTION IN PROGRESS - DO NOT CLOSE THE APP). La console passa quindi al pacchetto dell’emulatore selezionato.

Utilizzo

  • / per spostarsi, per selezionare, per ripetere la scansione delle ISO, per riprovare il download della copertina,  per tornare indietro.
  • SELECT EMU / EDIT CONFIGS apre la schermata delle impostazioni (backend dell’emulatore + opzioni per gioco).  porta direttamente al pulsante di avvio.
  • I file per gioco si trovano in /data/PS2/configs/; master.txt è un loader generato che indirizza il backend selezionato verso i file del gioco selezionato.

Download: Twiso v01.00

Download: Source code Twiso v01.00

Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale.

🔥 Prodotti in promozione e articoli più venduti: PS5

Vedi altri prodotti PS5

Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.

Ultimo aggiornamento 2026-09-25 / Link di affiliazione / Immagini da Amazon Product Advertising API

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui
Captcha verification failed!
Punteggio utente captcha non riuscito. Ci contatti per favore!

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.