ROM Librarian is a tool which can help you to rename your ROMs accordingly
to the database. 

Database consists of enries, where an MD5, CRC32, or SHA1 hash corresponds to
file names (in long or short form).

This software is bundled with the MSX ROMs database, carefully compiled by
MRC (msx.org) user GDX.
It is possible to use an external database. Database format is YAML.
It is array of objects, each of those has a longname, name, and the hash data.
Example of the database content:
'''
- longname: Nuclear Bowls (S).rom
  sha1: 406ecb0fa6dff3ed86c4641c56a099c2e673ddf1
  name: NuclearB.ROM

- longname: Power Boggle [KR].sms
  sha1: d7e67d15ccc12e9bf40611dc91a080a99716ca6e
  name: PowerBog.SMS
'''


There are two versions of the software - GUI version and console version.
It has several options:

Console option: --help
GUI option: None
Description: Prints the short options usage info

Console option: --long-names (-l)
GUI option: Long names
Description: When renaming, use a long name from database (default is to use
             short name)

Console option: --overwrite (-o)
GUI option: Overwrite even if destination file exists
Description: When there's a file with the same name as resulting renamed file,
             just overwrite (default is to skip renaming for such file)

Console option: --copy & --dest-dir (-c & -e)
GUI option: Copy files instead of renaming: to the following folder
Description: Instead of renaming, copy file with new name to anothher folder.

Console option: --testrun (-t)
GUI option: Test (dry) run - only find and log
Description: With this option you can have a look at which files would be
             renamed to which new names, without performing an actual
             operation. You can use it if you're not sure to see what happens

Console option: --database (-d)
GUI option: Use your own database: load db from following file
Description: Use it if you have your own YAML database and want to use it for
             renaming

Console option: DIR1 DIR2 DIR3 ...
GUI option: Source directory with ROMs
Description: The folders which would be scanned for files to rename.
             NOTE: With console version you can specify multiple folders
             while with GUI version only one at a time.




Last database update: 2025-07-08
Last code update: 2026-01-05


(c) 2019-2026 GDX, Pencioner

