All Projects → city41 → neosdconv

city41 / neosdconv

Licence: MIT License
A command line tool to convert Neo Geo roms into the format needed for NeoSD

Programming Languages

typescript
32286 projects
shell
77523 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to neosdconv

neospriteviewer
A Neo Geo Sprite Tile Viewer
Stars: ✭ 18 (+5.88%)
Mutual labels:  retrogaming, neogeo, neo-geo, neogeo-homebrew
NGDK
SDK for Neo Geo
Stars: ✭ 48 (+182.35%)
Mutual labels:  neogeo, neogeo-homebrew
neo-geo-dev-book
a book on developing for the Neo Geo
Stars: ✭ 27 (+58.82%)
Mutual labels:  retrogaming, neo-geo
pianette
Virtual & GPIO Game Console Controller
Stars: ✭ 14 (-17.65%)
Mutual labels:  retrogaming
LittleSixteen
Commodore 16 schematics and PCB, redrawn in Kicad
Stars: ✭ 26 (+52.94%)
Mutual labels:  retrogaming
OpenAmigaMouseTrigger
Control Amiga add-on boards through mouse buttons
Stars: ✭ 21 (+23.53%)
Mutual labels:  retrogaming
FF1Randomizer
A randomizer for Final Fantasy 1 on the NES.
Stars: ✭ 72 (+323.53%)
Mutual labels:  retrogaming
mamesaver
Mamesaver is a mame emulated screensaver - get all the good ol' games playing their demo modes while you procrastinate and enjoy!
Stars: ✭ 26 (+52.94%)
Mutual labels:  retrogaming
save-file-converter
Converter for retro console save files found around the Internet. All common formats for NES/SNES/GBA/N64/TG16/SMS/Genesis/Neo Geo/PS1 supported. Decrypts PSP saves. Converts to and from Retron 5 and MiSTer
Stars: ✭ 56 (+229.41%)
Mutual labels:  retrogaming
DreamForgerJS
Interactive Fiction JS library
Stars: ✭ 14 (-17.65%)
Mutual labels:  retrogaming
freemlib-neogeo
library(-ish) and utils for programming the Neo-Geo
Stars: ✭ 26 (+52.94%)
Mutual labels:  neogeo
lexys-labyrinth
Chip's Challenge 2 emulator that runs in a browser
Stars: ✭ 46 (+170.59%)
Mutual labels:  retrogaming
pacellman
Pac-Man in Excel
Stars: ✭ 37 (+117.65%)
Mutual labels:  retrogaming
sfxr-qt
Qt port of SFXR, a sound effect generator, to generate retro-gaming like sound effects.
Stars: ✭ 54 (+217.65%)
Mutual labels:  retrogaming
arcade-pcb-case
Plans to build Arcade PCB cases
Stars: ✭ 29 (+70.59%)
Mutual labels:  retrogaming
es-theme-Super-Retroboy
Super Retroboy Theme for the RetroFlag GPi Case and Small Screens 4:3 Aspect
Stars: ✭ 45 (+164.71%)
Mutual labels:  retrogaming
disc-elite-beebasm
Fully documented and annotated source code for the disc version of Elite on the BBC Micro
Stars: ✭ 19 (+11.76%)
Mutual labels:  retrogaming
Bartop-2-Players-with-Raspberry-Pi
Wooden Bartop Arcade 2 Players with Raspberry Pi: 17" LCD monitor, Marquee with LED lights and stereo speakers.
Stars: ✭ 48 (+182.35%)
Mutual labels:  retrogaming
opendw
A game engine for Interplay's 1989/1990 DragonWars game
Stars: ✭ 13 (-23.53%)
Mutual labels:  retrogaming
anise-cheezball-rising
an exciting new adventure for the Game Boy Color
Stars: ✭ 72 (+323.53%)
Mutual labels:  retrogaming

neosdconv

A tool to convert a Neo Geo ROM into TerraOnion's NeoSD .neo format.

Status

This tool should successfully convert any commercial game now. It should also convert any homebrew ROM, originally homebrew dev was the main purpose of this tool.

A note on Cabal

As of this writing, Cabal does not convert correctly. However, this is true of TerraOnion's own NeoBuilder as well. So for now, assuming Cabal does something odd the NeoSD isn't expecting. As more is learned, I'll update neosdconv accordingly.

How to Use

You need NodeJS installed, I am using version 8.9.4

  1. npm install -g neosdconv
  2. 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

NGH and Screenshot

These are both optional, and should not be used for homebrew ROMs.

You can set a commercial 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.

Setting the Genre

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.

How to Convert a Commercial ROM

Just unzip the ROM into a directory, then use that directory as the input

If a conversion fails

If a game fails to convert and load properly on the NeoSD, it might be this tool's fault. Feel free to file an issue. But also many ROMs out on the internet do not convert properly. You need to use Neo Geo ROMs that were meant to be used with MAME. If a ROM fails to convert properly, it possibly also fails to convert on TerraOnion's official tool.

If it fails to convert your homebrew ROM

Please file an issue. I definitely want to make sure this tool works well for homebrew

Bulk conversion using scripts/convert.sh

Kris Bahnsen (@kbembedded) has contributed a shell script that can bulk convert a directory of roms. To use it:

  1. Grab it from the scripts directory (you can clone this repo or download a zip from the main github page), you will need both convert.sh and the accompanying neosd_romset.csv file.
  2. scripts/convert.sh <directory to convert>

Your system needs neosdconv installed (see above), as well as sh or bash, unzip, sed and awk

The script is flexible on the locations of the input roms, output folder and the location of the csv file. For more information, run convert.sh without any arguments for help.

Dump a .neo file's header

Added in version 0.3.0

neosdconv -d <neo file>

for example

neosdconv -d mslug.neo

It will print out a listing like this

Metal Slug - Super Vehicle-001
----------------------
manufacturer: Nazca
        year: 1996
       genre: Action
         NGH: 21
  screenshot: 99

---- ROM sizes -------
            p: 2097152      0x200000
            s: 131072       0x20000
            m: 131072       0x20000
           v1: 8388608      0x800000
           v2: 0            0x0
            c: 16777216     0x1000000
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].