Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  GNGEO (1)


gngeo - emulate a SNK Neo-Geo game system




gngeo [options] ROMSET


gngeo is a program that emulates the SNK Neo-Geo game system. It uses SDL and optimized assembly CPU emulation cores on i386 platforms.


A Neo-Geo BIOS image set is required to play commercially-released games. Unfortunately, the BIOS images are copyrighted and may not be distributed with gngeo.

Like MAME, the memory layout of each game is defined by a driver, which is simply a plain text description of the game’s characteristics needed by the emulator. The driver database is installed in /usr/local/share/gngeo/romrc. If a new program is wanted to be run in gngeo, it must be added to that database.

The simplest form of operation is the following:
$ gngeo <game>
where <game> is the MAME name of a Neo-Geo ROM set corresponding to a game.
Examples: mslug, garou, kof99

You can also use the folowing form of operation:
$ gngeo <file>
where <file> point to a zip that contain the Neo-Geo ROM set.

However, it is more likely that you will need some of the following command line options in order to properly locate your ROM collection and Neo-Geo BIOS images.

By default, gngeo looks for the BIOS images and ROM collection in /usr/share/gngeo. This can be changed with the -i or --rompath option. For example:
$ gngeo -i /home/flurbly/neogeo/roms mslug2

The ROM location, as well as any other options, can be persistently set in the $HOME/.gngeo/gngeorc. A sample gngeorc can be found in /usr/share/doc/gngeo; copy it into your .gngeo directory and adapt it to your needs.


These programs follow the usual GNU command line syntax, with long options starting with two dashes (‘-’).

All boolean options can be disabled with --no-OPTION (Ex: --no-sound turns sound off)

-l, --listgame
  List all games that gngeo has recognized and are available to play.
  Enable auto frameskipping. The program will determine the best frameskip value to avoid lagging the gameplay on a machine that is too slow to emulate at full speed.
-b, --blitter=STRING
  Use the specified blitter. -b help will provide a list of available blitters. soft, opengl, and yuv are typical choices.
-c, --convtile
  Convert graphics tiles into internal format at load time (default on).
  Set the country code to japan, usa, or europe.
-D, --debug
  Enable gngeo’s internal debugger, for hacking, cheating, or fixing bugs.
-e, --effect=STRING
  Use the specified video effect. -e help will provide a list of available effects.
-f, --fullscreen
  Start gngeo in fullscreen mode.
-H, --hwsurface
  Use a SDL hardware surface for the emulator’s video. This can improve performance if your video hardware/drivers are fast.
-I, --interpolation
  Enable interpolation from one frame to the next. This can make the display look "smoother", but has a performance penalty.
  Invert joystick order. (need more details)
  Enable joystick support.
  Use STRING as libGL (default should normally be okay).
-P, --pal Use PAL timings. This currently has bugs.
  Player 1 and Player 2 keyboard and joystick mappings, respectively. (need more details)
-r, --raster
  Enable the raster interrupt. (need more details)
-i, --rompath=[path]
  Give the path to locate the ROM collection. The default is to look in /usr/share/gngeo, but your ROM collection is most likely not there. :)
-d, --romrc=[path]
  Give the path to locate the romrc file. This defines the layout of the games and is required to run any Neo-Geo games.
--sound Enable sound emulation.
  When the emulator is started, show a frames-per-second count. This can be used to gauge a baseline performance for the emulation.
  Enabling this option will cause the emulator to give up time to the system when it is idle. It can incur a performance penalty, but can also make the emulator "nicer" to the rest of the system.
  This option allows you to set the type of the emulated system to home or arcade, depending on how you prefer to play your games. There are some differences in many games if they detect a home system instead of an arcade system.
  Upscale the resolution by N. For example, if N is 3, the Neo-Geo output, which is normally 320x224, will become 960x448. You may encounter a mode which is not hardware accelerated when using this option.
  Set the sound sample rate to N. N will typically be 11025, 22050, 32000, or 44100.
-t, --transpack=STRING
  Use the specified transparency pack (need more details)
-h, --help Show summary of options.


The SNK Neo-Geo system was cartridge-based and was sold to arcades as well as homes. It has a 68000 CPU, a Z80 for sound, and custom graphics hardware, and its main claim to fame was that it has the highest megabit count of any cartridge-based system in history, allowing for detailed animation and huge sprites.

MVS, the arcade system, had mainboards which could accept up to six cartridges at once. The user could choose one of the games to play by simply moving the joystick. This allowed arcade operators to maximize the choice of games available to players without taking up floor space with more dedicated cabinets.

AES, the "Advanced Entertainment System", was the home Neo-Geo system. It sold for hundreds of dollars at launch and the cartridges generally cost around $200 a piece. However, there was no truer way for players to have the "arcade at home" experience in 1990. The joysticks were authentic arcade joysticks and the cartridges were huge. The cartridges, while shaped differently, had the exact same data stored in them as the MVS arcade cartridges. Some companies sold adapters to use MVS cartridges (which typically could be found cheaply on the used market) on the AES console.

The Neo-Geo introduced the idea of a memory card, which could be shared between the MVS and AES systems (as the hardware was essentially identical). The user could take his/her high scores and other saved data between the arcade and home.

Some later cartridges used some hardware bootleg protection that had to be first understood and then worked around. New software is still released even today for the MVS and AES systems, though SNK itself finally went bankrupt in 2001.


gngeo is fast, but still has some bugs. Visit the homepage at:
if you would like to help development or submit bug reports.

Some planned features are netplay support, better game compatibility, and better portability, as well as more i386-specific optimizations.


This manual page was written by Ryan Underwood <>, for the Debian project (but may be used by others).
Search for    or go to Top of page |  Section 1 |  Main Index

--> GNGEO (1) June 26, 2003

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.