A tool to convert homebrew Neo Geo ROMs into TerraOnion's NeoSD .neo
format. This allows the program to run on real hardware via a NeoSD as well as on the MiSTer.
This tool is only intended to be used by those doing Neo Geo related development. For commercial games please use TerraOnion's NeoBuilder. Issues, support, etc, around commercial games will not be considered.
You need NodeJS installed, at least Node 14. I am using Node 18.18.2.
npm install -g neosdconv
neosdconv -i <directory with your ROM files> -o <output file> -n <game name> -g <genre> -y <year> -m <manufacturer> -# <NGH number> -s <screenshot number>
The input directory is a directory containing your game's raw P, S, M, V and C ROMs
The output path is something like ./mygame.neo
.
For example: neosdconv -i ./romFiles -o ./mygame.neo -n 'My Cool Game' -g BeatEmUp -y 2018 -m city41 -# 789
These are both optional, screenshot should not be used for homebrew ROMs.
You can set a ROM's NGH number with -# <ngh number>
(such as -# 95
for Real Bout Fatal Fury) and also the screenshot with -s <screenshot number>
. NGH numbers can be found here: http://www.neo-geo.com/snk/master_list-ngh.htm. Screenshot numbers are proprietary to TerraOnion, and I don't know of an easy way to get them. The screenshot option was added for completeness.
If NGH or screenshot are provided and are invalid, they will default to zero and a warning will be emitted.
the -g
flag is used to set the genre. It must be one of the values found here: https://github.com/city41/neosdconv/blob/master/src/genres.ts
If it is an invalid value or left out entirely, the genre will default to Other
.