ROM Properties Page shell extension
Go to file
David Korth 181084b9aa [gtk] Split the D-Bus thumbnailer out from xfce/ and into thumbnailer-dbus/.
Preparations for Thunar 1.8.0, which was released today and uses GTK+ 3.x.

NOTE: The .thumbnailer file is common for both GTK+ 2.x and 3.x,
so it's installed as part of thumbnailer-dbus.

[debian] Added a new package, rom-properties-thumbnailer-dbus.

rom-properties-xfce and rom-properties-all now have dependencies on
this package.
2018-06-07 20:20:36 -04:00
cmake [gtk] Use Cairo for image handling with GTK+ 3.x. 2018-06-03 13:45:17 -04:00
debian [gtk] Split the D-Bus thumbnailer out from xfce/ and into thumbnailer-dbus/. 2018-06-07 20:20:36 -04:00
doc Updated required packages in debian/control and doc/COMPILING.md. 2018-06-03 13:47:28 -04:00
extlib [libromdata/tests] GcnFstTest: Fix issues caused by the minizip-2.3.2 update. 2018-06-02 12:28:07 -04:00
locale [win32] rp-pt_BR.rc: Updated window sizing for the new strings. 2018-06-02 17:00:17 -04:00
scripts package.cmd: Reverted some temporary changes for local building. 2018-06-02 18:58:24 -04:00
src [gtk] Split the D-Bus thumbnailer out from xfce/ and into thumbnailer-dbus/. 2018-06-07 20:20:36 -04:00
xdg [xdg] rom-properties.xml: Added Sega PVRX texture files. 2018-05-11 23:53:11 -04:00
.gitattributes .gitattributes: Needs '**'. 2018-04-21 13:23:42 -04:00
.gitignore .gitignore: Ignore *.kate-swp files. 2016-10-17 00:18:46 -04:00
.travis.yml .travis.yml: Only use a single compiler for Linux. 2018-05-02 00:53:07 -04:00
appveyor.cmd appveyor.cmd: Updated the CMake command for MSVC 2013. 2018-01-24 01:18:24 -05:00
appveyor.yml Version bump for development. (v1.3+) 2018-06-03 00:35:18 -04:00
CMakeLists.txt Version bump for development. (v1.3+) 2018-06-03 00:35:18 -04:00
git_version.sh Added git version checking. 2016-10-17 02:26:59 -04:00
LICENSE Added a quick README and the GPLv2+ license. 2016-07-19 23:59:07 -04:00
NETWORK.md NETWORK.md: Linux first. 2018-03-27 21:01:15 -04:00
NEWS.md NEWS.md: Mention un_premultiply() optimizations. 2018-06-03 16:13:39 -04:00
README.md README.md: Added the game.com HDK. 2018-06-03 00:40:34 -04:00
travis.sh Clean up QT_SELECT so we no longer need it set by the caller. 2018-06-02 15:40:59 -04:00

ROM Properties Page shell extension

This shell extension adds a few nice features to file browsers for managing video game ROM and disc images.

License: GPL v2
Travis Build Status AppVeyor Build status Coverity Scan Build Status

v1.3 - The Internationalization Release

This release adds support for internationalization. Now you can have the ROM Properties fields displayed in your own native language. (Currently not supported on Windows; this will be fixed before release.)

Translators needed; file an issue if you'd like to get started on a new translation, or submit a Pull Request if you have a translation ready to go.

New systems supported include the Tiger Electronics game.com:

game.com active

This release also adds support for several new texture file formats, including Khornos KTX and Valve VTF. It also adds support for ETCn-compressed textures.

See NEWS.md for a full list of changes in v1.3.

Feedback

This is a work in progress; feedback is encouraged. To leave feedback, you can file an issue on GitHub, or visit the Gens/GS IRC channel: irc://irc.badnik.zone/GensGS

Or use the Mibbit Web IRC client: http://mibbit.com/?server=irc.badnik.zone&channel=#GensGS

Installation

Currently, the ROM Properties Page shell extension is compatible with the following platforms:

  • KDE 4.x
  • KDE Frameworks 5.x
  • XFCE (GTK+ 2.x)
  • GNOME and Unity (GTK+ 3.x)
  • Windows XP (and later)

On Windows, you will need the MSVC 2017 runtime:

For instructions on compiling from source, see doc/COMPILING.md .

Linux

Install the relevant .deb package, depending on what desktop environment you are using and what your CPU is. Note that you may want to install the KDE4 package even if using KDE5, since many KDE programs still use the 4.x libraries.

After installing, the plugin needs to be enabled in the Dolphin file browser:

  • Close all instances of Dolphin.
  • Start Dolphin.
  • Click Control, Configure Dolphin.
  • Click the "General" section, then the "Preview" tab.
  • Check the "ROM Properties Page" item, then click OK.
  • Enable previews in a directory containing a supported file type.

If installed correctly, thumbnails should be generated for the supported file type. You can also right-click a file, select Properties, then click the "ROM Properties" tab to view more information about the ROM image.

Windows

Extract the ZIP archive to a directory, then run install.exe. The installer requires administrator access, so click "Yes" if requested. In the installer, click the "Install" button to register the ROM Properties Page DLL.

Note that this will hard-code the location of the DLL files in the registry, so you may want to place the DLLs in a common location.

To uninstall the plugin, run install.exe again, then click the "Uninstall" button.

Current File Support Level

Game Consoles

System Properties Tab Internal Images External Scans
NES Yes N/A No
Super NES Yes N/A No
Nintendo 64 Yes N/A No
Nintendo GameCube Yes Banner Disc
Nintendo GameCube Saves Yes Icon N/A
Nintendo Wii Yes No Disc, Covers
Nintendo Wii U Yes No Disc, Covers
Sega 8-bit (SMS, GG) Yes N/A No
Sega Mega Drive Yes N/A No
Sega Dreamcast Yes Media No
Sega Dreamcast Saves Yes Icon, Banner No
Sega Saturn Yes N/A No
Sony PlayStation Saves Yes Icon N/A

Handhelds

System Properties Tab Internal Images External Scans
Atari Lynx Yes N/A No
Nintendo Game Boy (Color) Yes N/A No
Nintendo Virtual Boy Yes N/A No
Nintendo Game Boy Advance Yes N/A No
Nintendo DS(i) Yes Icon Covers, Box
Nintendo 3DS Yes Icon Covers, Box
Tiger game.com Yes Icon No

Texture Formats

System Properties Tab Internal Images External Scans
Sega PVR Textures Yes Image N/A
Microsoft DirectDraw Surface Yes Image N/A
Khronos KTX Textures Yes Image N/A
Valve VTF Textures Yes Image N/A
Valve VTF3 (PS3) Textures Yes Image N/A

Other

System Properties Tab Internal Images External Scans
Executable and Linkable Format Yes N/A N/A
Nintendo amiibo Yes N/A Media
Nintendo Badge Arcade Yes Image N/A
Windows/DOS Executables Yes No N/A

Notes:

  • Internal image refers to artwork contained within the ROM and/or disc image. These images are typically displayed on the system's main menu prior to starting the game.
    • "N/A" here means the ROM or disc image doesn't have this feature.
    • "No" indicates that the feature is present but not currently implemented.
  • External scans refers to scans from an external database, such as GameTDB.com for GameCube and Wii.
    • "No" indicates no database is currently available for this system.
    • Anything else indicates what types of images are available.
    • For amiibo, "media" refers to the amiibo object, which may be a figurine, a card, or a plush.
  • Windows executables may contain multiple icon sizes. Support for Windows icons will be added once support for multiple image sizes is added.
  • Sega 8-bit only supports ROM images with a "TMR SEGA" header.

An initial configuration program is included with the Windows version of rom-propreties 1.0. This allows you to configure which images will be used for thumbnails on each system. The functionality is available on Linux as well, but the UI hasn't been ported over yet. See doc/rom-properties.conf.example for an example configuration file, which can be placed in ~/.config/rom-properties.

External Media Downloads

Certain parsers support the use of external media scans through an online database, e.g. GameTDB.com. This is enabled by default, but you can customize which scans are downloaded for which systems by running the configuration program, rp-config.exe.

Downloaded images are cached to the following directory:

  • Linux: ~/.cache/rom-properties/
  • Windows: %LOCALAPPDATA%\rom-properties\cache

The directory structure matches the source site, so e.g. a disc image of Super Smash Bros. Brawl would be downloaded to ~/.cache/rom-properties/wii/disc/US/RSBE01.png. Note that if the download fails for any reason, a 0-byte dummy file will be placed in the cache, which tells the shell extension not to attempt to download the file again. [FIXME: If the download fails due to no network connectivity, it shouldn't do this.]

If you have an offline copy of the GameTDB image database, you can copy it to the ROM Properties Page cache directory to allow the extension to use the pre-downloaded version instead of downloading images as needed.

Decryption Keys

Some newer formats, including Wii disc images, have encrypted sections. The shell extension includes decryption code for handling these images, but the keys are not included. To install the keys, create a text file called keys.conf in the rom-properties configuration directory:

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

The keys.conf file uses INI format. An example file, keys.conf.example, is included with the shell extension. This file has a list of all supported keys, with placeholders instead of the actual key data. For example, a keys.conf file with the supported keys for Wii looks like this:

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

Replace the key placeholders with hexadecimal strings representing the key. In this example, both keys are AES-128, so the hexadecimal strings should be 32 characters long.

NOTE: If a key is incorrect, any properties dialog that uses the key to decrypt data will show an error message instead of the data in question.

Unsupported File?

If you have a file that you believe should be supported by ROM Propeties, or would like to see support added for a new type, file an issue on GitHub: https://github.com/GerbilSoft/rom-properties/issues

Credits

Developers

  • @GerbilSoft: Main developer.
  • @DankRank: Contributor, bug tester.
  • @CheatFreak: Bug tester, amiibo support.

Translators

  • @DankRank: Russian, Ukrainian
  • @NullMagic2: Brazilian Portuguese

Other Contributions

[This list is incomplete; if you think you should be listed here, file an issue.]

  • @Tpot-SSL: Assistance with the game.com implementation.

Websites