Add readme

This commit is contained in:
King_DuckZ 2020-03-04 14:39:31 +01:00
parent 4c095996cc
commit 4b052537c8

72
README.md Normal file
View file

@ -0,0 +1,72 @@
# 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:
```bash
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:
```bash
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](https://github.com/meoow/cisoplus) is not supported
* Missing licence - I intend this project to be released under GPLv3 and an explicit licence should be added