Home Homebrew Rilasciato ROM Properties v2.6: Aggiornamento rpcli, miglioramenti KDE/GTK e correzioni compatibilità Windows...

Rilasciato ROM Properties v2.6: Aggiornamento rpcli, miglioramenti KDE/GTK e correzioni compatibilità Windows e Linux

73
0

Pubblicato un nuovo aggiornamento di ROM Properties, l’estensione shell per PC Windows, Linux e BSD (Berkeley Software Distribution) mostra diverse informazioni e copertine per alcuni formati relativi alle ROM dei giochi.

Questa versione introduce nuovi parser per file ICO, firmware Wii U, file di impostazioni Wii e titoli Xbox 360 con caratteri non latini, migliorando la gestione di immagini, icone e dati testuali.

Tra le novità principali, è possibile estrarre icone da file EXE, leggere i contenuti di AUTORUN.INF nei file ISO, supportare file system Joliet, generare anteprime dei titoli per NES ROM e aggiungere supporto ai WAD di iQue NetCard.

Sono stati risolti diversi bug, tra cui crash legati a libpng su Windows, problemi di swap dei canali R/B in QOI, errori di compilazione su macOS e BSD, crash di PalmOS_Tbmp su Windows e gestione di canali alfa non definiti in TGA.

Apportati miglioramenti anche alla qualità delle immagini nelle interfacce GTK e KDE, alla gestione dei file offline su Windows e alla compatibilità di rp-download su sistemi più vecchi.

Inoltre, rpcli è stato aggiornato con una migliore colorazione dei messaggi e refactoring della gestione della console tramite libgsvt.

Installazione

Attualmente, ROM Properties Page Shell Extension è compatibile con le seguenti piattaforme:

  • KDE 4.x.
  • KDE Frameworks 5.x.
  • XFCE (GTK+ 2.x).
  • GNOME e Unity (GTK+ 3.x).
  • MATE Desktop (1.18+; GTK+ 3.x).
  • Cinnamon Desktop.
  • Windows XP (e superiore).

Su Windows, avrai bisogno del runtime di MSVC 2015-2019:

Linux

Installare il pacchetto .deb pertinente, a seconda dell’ambiente desktop che si sta utilizzando e della propria CPU. Nota che potreste dover installare il pacchetto KDE4 anche se si utilizza KDE5, poiché molti programmi KDE utilizzano ancora le librerie 4.x.

Dopo l’installazione, il plugin deve essere abilitato nel browser dei file Dolphin:

  • Chiudere tutte le istanze di Dolphin.
  • Avviare Dolphin.
  • Fare clic su Control, Configure Dolphin.
  • Fare clic sulla sezione “General”, quindi sulla scheda “Preview”.
  • Controllare la voce “ROM Properties Page”, quindi fare clic su OK.
  • Abilitare le anteprime in una directory contenente un tipo di file supportato.

Se installato correttamente, le miniature devono essere generate per il tipo di file supportato, è inoltre possibile fare clic con il pulsante destro del mouse su di un file, selezionare Proprietà, quindi fare clic sulla scheda “ROM Properties” per visualizzare ulteriori informazioni sull’immagine ROM.

Windows

Estrarre l’archivio .zip in una directory, quindi eseguire il file install.exe. Il programma di installazione richiederà l’accesso come amministratore, quindi fare clic su “Sì” se richiesto. Nel programma di installazione, fare clic sul pulsante “Install” per registrare la DLL della pagina delle proprietà della ROM.

Si noti che ciò codificherà in modo rigido la posizione dei file DLL nel registro, quindi è possibile posizionare le DLL in una posizione comune.

Per disinstallare il plugin, eseguire di nuovo install.exe, quindi fare clic sul pulsante “Uninstall”.

Livello di supporto file corrente

SistemaTab proprietàMetadataImmagini interneScansioni esterne
NESSiNoN/ANo
Super NESSiSiN/ATitolo
Microsoft Xbox (XBE)SiSiIconaNo
Microsoft Xbox 360 (XEX)SiSiIconaNo
Microsoft Xbox 360 (STFS)SiSiIconaNo
Microsoft Xbox Game DiscSiSiIconaNo
Nintendo 64SiSiN/ANo
File ticket di iQue PlayerSiSiIcona, BannerNo
Dischi Nintendo GameCube SiSiBannerDischi, Cover
Banner Nintendo GameCube SiSiBannerNo
Salvataggi Nintendo GameCube SiSiIconaN/A
Dischi Nintendo Wii SiSiNoDischi, Cover
Wad Nintendo Wii SiSiSi*Titolo, Cover
Salvataggi Nintendo Wii SiNoSiN/A
Nintendo Wii USiNoNoDischi, Cover
Sega 8-bit (Sega Master System, Game Gear)SiSiN/ANo
Sega Mega DriveSiNoN/ANo
Sega DreamcastSiSiMediaNo
Salvataggi Sega Dreamcast SiNoIcona, BannerNo
Sega SaturnSiSiN/ANo
Dischi Sony PlayStationSiNoN/ANo
EXE della PlayStation SonySiNoN/AN/A
Salvataggi Sony PlayStationSiSiIconaN/A
Dischi Sony PlayStation 2SiNoN/ANo

* Le immagini interne sono presenti solo su WAD, DLC e Wii.

Palmari

SistemaTab proprietàMetadataImmagini interneScansioni esterne
Atari LynxSiNoN/ANo
Neo Geo Pocket (Color)SiSiN/ANo
Nintendo Game Boy (Color)SiSiN/ATitolo
Nintendo Virtual BoySiNoN/ANo
Nintendo Game Boy AdvanceSiSiN/ATitolo
Nintendo DS(i)SiSiIconaCover, Box
Nintendo 3DSSiSiIconaCover, Box
Pokémon MiniSiSiN/ANo
Tiger game.comSiSiIconaNo

Formati texture

SistemaTab proprietàMetadataImmagini interneScansioni esterne
Texture .tex Leapster DidjSiSiImmagineN/A
Texture Khronos KTXSiSiImmagineN/A
Texture Khronos KTX2SiSiImmagineN/A
Microsoft DirectDraw SurfaceSiSiImmagineN/A
Texture XPR Microsoft XboxSiSiImmagineN/A
Texture PowerVR 3.0.0SiSiImmagineN/A
Texture Sega PVR/GVR/SVRSiSiImmagineN/A
Texture Valve VTFSiSiImmagineN/A
Texture Valve VTF3 (PS3)SiSiImmagineN/A

Texture Codec

  • Formati RGB lineari assortiti, inclusi 15 bit, 16 bit, 24 bit e 32 bit per pixel.
    • La maggior parte di questi formati ha decodificatori ottimizzati per SSE2 e/o SSSE3.
    • RGB9_E5 è supportato, sebbene al momento sia convertito in ARGB32 per scopi di visualizzazione. Anche il decodificatore è lento (contributi benvenuti).
  • Dreamcast: Twiddled e Vector Quantized.
  • Nintendo DS: Tile CI8 con palette BGR555.
  • Nintendo 3DS: Tile twiddled RGB565.
  • GameCube: Tile RGB5A3 e CI8 con palette RGB5A3.
  • S3TC: DXT1, DXT2, DXT3, DXT4, DXT5, BC4, e codec BC5.
    • Formati di file supportati: DDS, KTX, KTX2, VTF, VTF3, XPR.
    • GameCube 2×2-tiled DXT1 è supportato nei file texture GVR.
  • BC7: Supportato in DDS, KTX, KTX2, e in nei file delle texture PowerVR 3.0.0.
    • L’implementazione è piuttosto lenta (i contributi sono benvenuti).
  • PVRTC: Supportato nei file delle texture DDS, KTX, KTX2, e PowerVR 3.0.0.
    • PVRTC-II: Parzialmente supportato. Il flag di transizione effettiva e le immagini che non sono un multiplo della dimensione del riquadro non sono supportati.

Formati audio

SistemaTab proprietàMetadata Immagini interneScansioni esterne
Atari 8-bit SAP audioSiSiN/AN/A
Atari ST SNDH audioSiSiN/AN/A
CRI ADX ADPCMSiSiN/AN/A
Commodore 64SiSiN/AN/A
Game Boy Sound SystemSiSiN/AN/A
Nintendo 3DS BCSTM e BCWAVSiSiN/AN/A
Nintendo Sound FormatSiSiN/AN/A
Nintendo Wii BRSTMSiSiN/AN/A
Nintendo Wii U BFSTMSiSiN/AN/A
Portable Sound FormatSiSiN/AN/A
Super NES SPC FormatSiSiN/AN/A
Video Game MusicSiSiN/AN/A

Altro

SistemaTab proprietàMetadata Immagini interneScansioni esterne
Formato eseguibile e collegabileSiNoN/AN/A
Immagini disco ISO-9660SiNoNoN/A
Binari Mach-OSiNoN/AN/A
Nintendo amiiboSiNoN/AMedia
Nintendo Badge ArcadeSiNoImmagineN/A
File eseguibili Windows/DOSSiNoNoN/A

Note

  • L’immagine interna si riferisce al materiale illustrativo contenuto nella ROM e/o all’immagine del disco. Queste immagini sono in genere visualizzate nel menu principale del sistema prima di iniziare il gioco.
    • “N/A” qui significa che l’immagine della ROM o del disco non ha questa funzione.
    • “No” indica che la funzione è presente ma non è attualmente implementata.
  • Le scansioni esterne si riferiscono alle scansioni da un database esterno, come GameTDB.com per GameCube e Wii.
    • “No” indica che nessun database è attualmente disponibile per questo sistema.
    • Qualsiasi altra cosa indica quali tipi di immagini sono disponibili.
    • Per amiibo, “media” si riferisce all’oggetto amiibo, che può essere una figurina, una carta o un peluche.
  • Gli eseguibili di Windows possono contenere più dimensioni di icone. Il supporto per le icone di Windows verrà aggiunto una volta aggiunto il supporto per più dimensioni di immagine.
  • Sega a 8 bit supporta solo immagini ROM con un’intestazione “TMR SEGA”.

Un programma di configurazione iniziale è incluso con la versione Windows di ROM Properties. Ciò consente di configurare quali immagini verranno utilizzate per le anteprime su ciascun sistema.

La funzionalità è disponibile anche su Linux, ma l’interfaccia utente non è stata ancora trasferita. Vedere il file doc/rom-properties.conf.example per un file di configurazione di esempio, che può essere inserito in ~/.config/rom-properties.

Download di media esterni

Alcuni parser supportano l’uso di scansioni di supporti esterni attraverso un database online, ad esempio da GameTDB.com. Questo è abilitato di default, ma è possibile personalizzare quali scansioni vengono scaricate per quali sistemi eseguendo il programma di configurazione, rp-config.exe.

Le immagini scaricate vengono memorizzate nella cache all’interno della seguente directory:

  • Linux: ~/.cache/rom-properties/
  • Windows XP: %LOCALAPPDATA%\rom-properties\cache
  • Windows Vista+: %USERPROFILE%\AppData\LocalLow\rom-properties\cache

La struttura della directory corrisponde al sito di origine, quindi ad esempio un’immagine del disco di Super Smash Bros. Brawl verrebbe scaricata su ~/.cache/rom-properties/wii/disc/US/RSBE01.png.

Si noti che se il download non riesce per qualsiasi motivo, un file fittizio a 0 byte verrà inserito nella cache, il che indica all’estensione della shell di non tentare di scaricare nuovamente il file. [FIXME: Se il download non riesce a causa della mancanza di connettività di rete, non dovrebbe farlo].

Se hai una copia offline del database di immagini di GameTDB, puoi copiarlo nella directory della cache della pagina delle proprietà della ROM per consentire all’estensione di utilizzare la versione pre-scaricata invece di scaricare le immagini secondo necessità.

Chiavi di decrittazione

Alcuni formati più recenti, comprese le immagini del disco Wii, hanno sezioni crittografate. L’estensione della shell include il codice di decrittazione per la gestione di queste immagini, ma le chiavi non sono incluse. Per installare le chiavi, creare un file di testo chiamato keys.conf nella directory di configurazione di rom-properties:

  • Linux: ~/.config/rom-properties/keys.conf
  • Windows: %APPDATA%\rom-properties\keys.conf

Il file keys.conf utilizza il formato INI. Un file di esempio, keys.conf.example, è incluso con l’estensione della shell. Questo file ha un elenco di tutte le chiavi supportate, con segnaposto anziché i dati delle chiavi effettive. Ad esempio, un file keys.conf con le chiavi supportate per Wii è simile al seguente:

[Keys]
rvl-common=[Wii common key]
rvl-korean=[Wii Korean key]

Sostituire i segnaposto chiave con stringhe esadecimali che rappresentano la chiave. In questo esempio, entrambe le chiavi sono AES-128, quindi le stringhe esadecimali devono contenere 32 caratteri.

Nota: Se una chiave non è corretta, qualsiasi finestra di dialogo delle proprietà che utilizza la chiave per decrittografare i dati mostrerà un messaggio di errore invece dei dati in questione.

File non supportato?

Se hai un file che ritieni dovrebbe essere supportato da ROM Properties o desideri vedere il supporto aggiunto per un nuovo tipo, invia un problema su GitHub: https://github.com/GerbilSoft/rom-properties/issues

Changelog

Nuovi parser

  • ICO: Icone e cursori di Windows. Supporta la maggior parte delle icone e dei cursori progettati per Windows 3.x e versioni successive (incluse le icone in formato PNG di Windows Vista), oltre al vecchio formato di Windows 1.x. Viene selezionata solo la versione “migliore” di ciascuna icona per le anteprime (dimensione maggiore e massima profondità di colore).
    • La generazione di anteprime delle icone non è al momento abilitata su Windows e Linux, poiché potrebbe confliggere con la gestione delle icone di sistema. È principalmente utilizzabile tramite rpcli o come sottoclasse in altri contesti.
    • Correzione parziale di #170: file di icone ICNS, ICO, EXE.
  • WiiUAncast: Immagini del firmware Wii U (comunemente chiamate immagini “ancast”). Supporta fw.img e kernel.img semplici, immagini vWii incorporate in eseguibili DOL e immagini Toucan presenti in alcuni software di diagnostica.
  • WiiSettingTxt: Lettore dei file setting.txt della Wii. Questi file sono generalmente cifrati o offuscati tramite XOR, facilitando così la visualizzazione rapida del contenuto.

Nuove funzionalità del parser

  • Xbox360_STFS: Correzione dei titoli di alcuni pacchetti che erano stati creati in modo errato e presentavano titoli con caratteri illeggibili (mojibake). I titoli erano originariamente codificati in UTF-8, ma durante la creazione del pacchetto venivano trattati come cp1252 durante la conversione in UTF-16BE.
    • Correzione di #450: X360 – Titoli non latini apparivano come mojibake.
      • Segnalato da @Masamune3210.
  • EXE: L’icona dell’applicazione può ora essere estratta tramite rpcli.
  • ISO: Il file AUTORUN.INF ora viene analizzato, includendo una scheda che mostra il contenuto del file AUTORUN.INF e l’icona del disco proveniente da un file .ico o .exe/.dll.
    • Correzione #232: ISO: Parsing di autorun.inf.
  • ISO: I file system Joliet sono ora parzialmente supportati. Questa funzione è stata aggiunta per gestire immagini disco di vecchie versioni di Windows che utilizzano nomi lunghi per le icone; i dischi sono creati con Joliet per i nomi lunghi ma con una vecchia versione di ISO-9660, risultando in nomi 8.3 nelle directory ISO-9660.
  • NES: Aggiunta la generazione di anteprime dello schermo del titolo. Poiché le ROM NES generalmente non hanno un header con titolo identificabile o numero seriale, vengono utilizzati il mapper, il CRC32 dei primi 8k del PRG ROM e il CRC32 dei primi 8k del CHR ROM (se presente).
  • WiiWAD: Aggiunto supporto per i WAD di iQue NetCard.

Correzioni

  • Windows: Soluzione temporanea per un potenziale crash di libpng durante la lettura di dati vuoti come immagini PNG. (Richiede ulteriori debug per una correzione definitiva).
    • Vedere #451: Errori libpng causano crash dovuti a libpng setjmp/longjmp (solo build di rilascio su Windows 10).
      • Segnalato da @Masamune3210.
  • QOI: I canali R/B erano scambiati in modo errato quando introdotti in v2.5.
    • Interessa le versioni: v2.5 – v2.5.1.
  • Correzione di un problema dove lo swizzle ‘abgr’ poteva fallire su sistemi little-endian.
  • fmt: Non tentare di installare un file di debug separato se si compila la copia interna di fmt come libreria statica (solitamente solo su Linux).
    • Correzione #456: fallimento di “sudo make install”.
      • Segnalato da @Techokami.
  • CisoPspDlopen: Correzione di un problema che poteva causare errori di compilazione su macOS e alcuni sistemi *BSD.
  • PalmOS_Tbmp: Corretto un crash su Windows durante la decodifica di un’icona compressa.
    • Correzione #457: File Palm OS causa crash di explorer.exe (Windows 11).
      • Segnalato da @ldroberts02.
  • TGA: Corretta la gestione dei canali alfa “undefined”.
  • TGA: Mostra anche il campo ID dell’immagine.
  • Linux: la versione i386 di rp-download era rotta perché nella whitelist delle syscall seccomp mancava getuid32().
  • Windows, EXE: La proprietà longPathAware dovrebbe trovarsi in windowsSettings e non in compatibility.

Altre modifiche

  • rpcli: Aggiunta maggiore colorazione per i messaggi di avviso.
  • rpcli: Gestione della console rifattorizzata in una libreria separata, libgsvt.
  • IsoPartition: Implementata la funzione readdir(), attualmente non utilizzata da nessuna funzionalità.
  • GTK3, GTK4, KF5, KF6: Migliorata la qualità delle immagini durante la visualizzazione delle icone nelle liste, ad esempio nei campi RFT_LISTDATA e nella scheda Achievements di rp-config.
  • KDE (KF5, KF6): RomThumbnailCreator ora gestisce solo i tipi MIME effettivamente supportati per le anteprime, riducendo leggermente i tempi di elaborazione.
  • Windows: I file contrassegnati come “offline” (ad esempio non sincronizzati con un provider di backup cloud) saranno considerati su un file system “lento” e non verranno generati in anteprima se l’opzione per le anteprime sui file system di rete è disattivata.
  • Windows: Su Windows XP e Server 2003, se libcurl.dll è presente nella stessa cartella di rp-download.exe, verrà utilizzata al posto di WinInet. Questo permette a ROM Properties di accedere a server con protocolli di sicurezza più aggiornati, non supportati normalmente da queste versioni più vecchie di Windows.
  • Linux: Risolto un problema di compilazione che attivava l’interfaccia KDE4 se Qt4 era installato, anche se le librerie KDE4 non erano presenti.
    • Correzione#455: CMake tentava di creare una versione KDE4 causando errori durante la compilazione.
      • Segnalato da @Techokami.
  • Linux: risolto un problema di compilazione che causava un riferimento indefinito a zlibng_version su sistemi con zlib-ng installato globalmente.
    • Correzione #454: Riferimento indefinito a ‘zlibng_version’.
      • Segnalato da @Techokami.

Per quanto riguarda l’installazione su Ubuntu, i pacchetti sono disponibili tramite il PPA di Ubuntu per le versioni seguenti:

  • Ubuntu 16.04 “Xenial” Xerus
  • Ubuntu 18.04 “Bionic” Beaver
  • Ubuntu 20.04 “Focal” Fossa
  • Ubuntu 22.04 “Jammy” Jellyfish
  • Ubuntu 24.04 “Noble” Numbat
  • Ubuntu 25.04 “Plucky” Puffin

Per aggiungere il PPA e installare rom-properties, eseguire i seguenti comandi:

sudo add-apt-repository ppa:gerbilsoft/ppa
sudo apt-get update
sudo apt-get install rom-properties-all

Questo installerà tutti i frontend e gli eseguibili di ROM Properties. È possibile installare anche i singoli frontend installando il pacchetto specifico rom-properties-*.

Si noti che se si esegue l’aggiornamento dalla versione 2.1 o precedente, potrebbe verificarsi un conflitto di file relativo a /usr/share/thumbnailers/rom-properties.thumbnailer.

In questo caso, sarà necessario rimuovere manualmente rom-properties-gtk3 prima di eseguire l’aggiornamento.

Inoltre, se si esegue l’aggiornamento dalla versione 2.0, potrebbe verificarsi un errore di dipendenza legato a libromdata1. Sarà necessario disinstallare libromdata1 prima di eseguire l’aggiornamento.

Download: ROM Properties Page Shell Extension v2.6 (Windows Debug)

Download: ROM Properties Page Shell Extension v2.6 (Windows)

Download: Source code ROM Properties Page Shell Extension v2.6

Fonte: github.com