Si torna sullo sviluppo di Itemzflow su console PlayStation 4 che non veniva aggiornato da circa un anno, risale infatti a febbraio dello scorso anno l’ultima versione pubblicata dal developer LightningMods.
Itemzflow è un semplice game manager, per lo più simile a ManaGunZ e IrisMAN su console PlayStation 3, una ShellUI alternativa e open source del menu iniziale presente sulla console PlayStation 4.
the install all PKGs feature is very useful esp when using it with an NFS Share connected pic.twitter.com/txnVSh4B3u
— LM (@LightningMods_) January 24, 2024
Questa nuova versione presenta diverse modifiche significative, tra cui la risoluzione di problematiche legate al dumping di DLC e AC senza dati e l’introduzione dell’opzione “Install all PKGs” per le cartelle contenenti più di un file PKG.
Corretto inoltre il comportamento di avvio alle impostazioni durante l’installazione di un file PKG e l’implementazione di miglioramenti provenienti dalla versione PS5 di Itemzflow.
Ulteriori aggiornamenti includono la sostituzione dei vettori di registrazione standard con ThreadSafeVectors, l’aggiunta di file di lingua cinese, la correzione di un bug che causava il blocco del thread di utilità, e la risoluzione di un problema che impediva al daemon di fornire un backtrace sulla versione 9.00.
Nell’ultimo tweet viene inoltre evidenziata l’utilità della funzione di installazione di tutti i PKG, particolarmente efficace quando questa viene associata a una condivisione NFS.
Librerie di terze parti
- FTPS4
- dr_mp3
- liborbisAudio
- Orbis SQLite
- OrbisDev SDK
- OOSDK for PRX
- JSMN (MIT)
- INI Parser (Licenza Apache 2.0)
- RSA Verify (ARMmbed) (Licenza Apache 2.0)
- OpenSSL/MD5 (Licenza Apache 2.0)
- BusyBox (GPLv2)
- LibPNG
- log.c
- Game Dumper
- libjbc
- yaml-cpp
- taglib
- Libz
Impostazioni
Il file ini contenente tutte le impostazioni viene caricato dalla directory dell’app o da USB0 all’avvio dell’app.
Chiave INI | Descrizione |
Dumper_option | 0 = TUTTI 1 = Solo gioco BASE 2 = Solo patch |
Sort_By | -1 è NA 0 = Ordine alfa per TID 1 = Ordine alfa per nome app |
Sort_Cat | Ordina categoria. |
cover_message | Mostra il messaggio di copertina all'avvio dell'app. |
MP3_Path | Percorso FS di una cartella di MP3 o di un singolo MP3 da riprodurre in loop. |
Dumper_Path | Percorso dump. |
TTF_Font | Carattere TTF che il negozio proverà a utilizzare (carattere incorporato in caso di errore). |
Show_Buttons | Mostra i pulsanti IF sullo schermo. |
Enable_Theme | Attivo SOLO se hai un tema abilitato. |
Image_path | Immagine di sfondo in PNG. |
Reflections | Abilita i riflessi di copertura in IF. |
Home_Redirection | Abilita il reindirizzamento del menu principale. |
Daemon_on_start | Disabilita la connessione automatica del daemon con l'app. |
Image_path | Immagine di sfondo. |
Show_install_prog | Abilita l'avanzamento dell'installazione di Store PKG/APP. |
Esempio del file setting.ini
[Settings]
Dumper_option=0
Sort_By=-1
Sort_Cat=0
cover_message=1
MP3_Path=/mnt/usb0/music
Dumper_Path=/mnt/usb0
TTF_Font=/mnt/usb0/myfont.ttf
Show_Buttons=1
Enable_Theme=1
Image_path=/mnt/usb0/pic.png
Reflections=1
Home_Redirection=1
Daemon_on_start=0
Show_install_prog=1
Registro Itemzflow
- Se l’app si arresta in modo anomalo o menziona “FATAL signal”, inviaci questo registro tramite il discord sottostante o tramite GH Issues
/user/app/ITEM00001/logs/itemzflow_app.log
.
Daemon
Il daemon itemz viene installato quando si esegue per la prima volta l’app all’interno della directory /system/vsh/app/ITEM00002
mentre viene aggiornato SOLO da Itemzflow.
Il file delle impostazioni del daemon è SOLO per uso interno da parte degli sviluppatori dello Store, tuttavia presenta anche un file delle impostazioni ini in /system/vsh/app/ITEM00002/daemon.ini
con i seguenti valori ini:
[Daemon]
version=0x1001// Daemon version for Store, Official version is always > 0x1000
Dettagli del dumper
- Il registro del dumper si trova in
/user/app/ITEM00001/logs/if_dumper.log
. - Il dumper scaricherà SOLO sulla prima USB che trova (molto probabilmente
USB0
). - Il dumper tenterà di utilizzare la stessa lingua di Itemzflow.
- Se il dumper si blocca su un file, ASSICURARSI che entrambi i dischi e TUTTE le lingue siano installati, se disponibili, PRIMA del dump.
- Se il tuo dump non è riuscito, forniscici il registro
/user/app/ITEM00001/logs/if_dumper.log
nel nostro discord.
Le lingue
- La repository delle lingue di Itemzflow può essere trovato QUI.
- Itemzflow utilizza l’impostazione Lang del software di sistema della PS4.
Temi
- Puoi scaricare temi personalizzati rilasciati in Itemzflow Themes Repo.
- Puoi creare anche i tuoi temi personalizzati seguendo queste istruzioni.
IMPORTANTE: I file del tema devono AVERE tutti il nome file esatto come elencato di seguito:
Nome del file | Descrizione |
btn_o.png | Pulsante cerchio (67x68). |
btn_x.png | Pulsante X (67x68). |
btn_tri.png | Pulsante triangolo (67x68). |
btn_sq.png | Pulsante quadrato (67x68). |
btn_r1.png | Pulsante R1 (309x152). |
btn_l1.png | Pulsante L1 (120x59). |
btn_l2.png | Pulsante L2 (120x105). |
btn_options.png | Pulsante Options (145x84). |
btn_up.png | Pulsante su della croce direzionale (32x32). |
btn_down.png | Pulsante giù della croce direzionale (32x32). |
btn_left.png | Pulsante sinistro della croce direzionale (32x32). |
btn_right.png | Pulsante destro della croce direzionale (32x32). |
font.ttf | Carattere del tema. |
background.png | Immagine di sfondo. |
shader.bin | Shader compilato GLES per PS4. |
theme.ini | Informazioni sul tema. |
Configurazione ini del tema
Chiave INI | Descrizione |
Name | Nome del tema. |
Author | Chi lo ha fatto. |
Date | Data in cui è stato realizzato. |
Version | Numero di versione del tema. |
Image | 1 se il tema ha un'immagine di sfondo, 0 in caso contrario. |
Font | 1 = Il tema ha font.ttf 0 = Non ce l'ha |
Shader | 1 = Ha raccoglitore Shader 0 = Non ce l'ha |
Esempio di configurazione del tema
[THEME]
Name=Example Theme
Author=Example Author
Date=10/16/2022
Version=1.00
Image=1
Font=1
Shader=0
Log delle app e relativi percorsi
Servizio | Percorso PS4 |
App principale di Itemzflow | /user/app/ITEM00001/logs/itemzflow_app.log |
Dumper | /user/app/ITEM00001/logs/if_dumper.log |
Itemz Loader | /user/app/ITEM00001/logs/loader.log |
Itemz Daemon | /data/itemzflow_daemon/daemon.log |
libfuse | /user/app/ITEM00001/logs/libfuse.log |
Su USB (solo in caso di guasto o arresto anomalo)
Servizio | Percorso USB |
App principale di Itemzflow | /mnt/usb |
Dumper | /mnt/usb |
Itemz Loader | /mnt/usb |
Itemz Daemon | /mnt/usb |
Server Discord ufficiale
Invito: https://discord.gg/GvzDdx9GTc
Patch di gioco
- Scaricare da GoldHEN online database tramite l’app o installazione manuale tramite file zip.
- Formati supportati: Il nome del file
json
deve essere(TITLE_ID).json
, ovveroCUSA00547.json
. - json per percorso file di gioco:
/data/GoldHEN/patches/json/(TITLE_ID).json
.
Sintassi della patch
Sintassi
{ "type": "", "addr": "", "value": "" }
Tipi di patch
type | Informazioni | Valore (esempio) |
byte | Hex, 1 byte | "0x00" |
bytes16 | Hex, 2 byte | "0x0000" |
bytes32 | Hex, 4 byte | "0x00000000" |
bytes64 | Hex, 8 byte | "0x0000000000000000" |
bytes | Hex, qualsiasi dimensione (senza spazi) | "####" |
float32 | Float, single | "1.0" |
float64 | Float, double | "1.0" |
utf8 | String, UTF-8* | "string" |
utf16 | String, UTF-16* | "string" |
Nota: le stringhe sono automaticamente con terminazione null.
Patch di esempio
{ "patch": [ { "title": "Example Game Title", "app_titleid": [ "EXAMPLE01", "EXAMPLE02" ], "app_ver": "00.34", "app_elf": "eboot.bin", "patch_ver": "1.0", "name": "Example Name", "author": "Example Author", "note": "Example Note", "patch_list": [ { "comment": "This is a code comment, improves code readability." }, { "type": "bytes", "addr": "0x00000000", "value": "0102030405060708", "comment": "Code comment at end of line is also supported." }, { "type": "utf8", "addr": "0x00000000", "value": "Hello World" } ] } ] }
Changelog
- Corretto il problema del dumping di DLC e AC senza dati.
- Aggiunta un’opzione “Install all PKGs” per le cartelle con più di un PKG.
- L’installazione di un file PKG non riporterà più alla schermata delle impostazioni.
- Trasferiti alcuni miglioramenti dalla versione PS5 di IF (Itemzflow).
- Sostituiti i vettori di registrazione standard con ThreadSafeVectors.
- Aggiunti file di lingua cinese.
- Corretto un bug che causava il blocco del thread di utilità.
- Corretto un bug che impediva al daemon di fornire un backtrace sulla versione 9.00.
Download: Itemzflow v1.04
Download: Source code Itemzflow v1.04
Fonte: twitter.com