data | ||
script | ||
src | ||
subprojects/isoinfo | ||
tools | ||
.gitmodules | ||
meson.build | ||
README.md |
psp2name
A simple CLI tool to guess the title of psp iso files on your computer.
Compiling
Dependencies
You will need:
- cdrtools 3.02
- sqlite 3.30.1
Older versions might also work though I haven't tested them.
You will also need:
- meson 0.52.1
- ninja
- a c compiler (tested with gcc 8.3.0)
- a d compiler (tested with ldc2 1.17.0)
Like above, other versions or compilers might also work.
Building
Run the following commands:
meson setup -Dbuildtype=release <path to your working copy>
ninja
Troubleshooting
pspgamelist not found
If you get errors like:
Error: module `pspgamelist` is in file 'pspgamelist.d' which cannot be read
you can just keep on running ninja and it will eventually work. I believe this is a bug with ninja having issues with sorting dependencies correctly. You can also try the ninja -j1
command, which should always work on the first attempt.
SQLite3 error 1 loading memvfs extension
The file libmemvfs.so
needs to be in the same directory where psp2name is launched from. If this is not acceptable then feel free to hardcode your absolute path to that library in src/gamesdb.d:27, for example:
const int load_ret = sqlite3_load_extension(db, "/usr/local/lib64/libmemvfs.so", null, &err);
This is a known problem and I will look into it in the future.
Running
Simply pass the path to the iso file you want to check:
psp2name ~/deleme/some_game.iso
If the game iso has a known serial number that appears in the internal DB you will get the corresponding game title printed out to stdout.
If you want to rename files you can try with commands like this:
mv -v my_game.iso "$(psp2name my_game.iso)"
Known problems and limitations
- The game database is of poor quality and it's lacking informations that the program already has support for, like game languages, version etc
- Output is limited to the game title and there are no options to change it
- Path to libmemvfs.so needs to be manually hardcoded
- Some games are missing from the database
- Reading from .cso compressed files is not supported
- Missing licence - I intend this project to be released under GPLv3 and an explicit licence should be added