Skip to content
NeoGeo for MiSTer
Verilog C++ SystemVerilog HTML VHDL JavaScript Other
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
cd Fix/hide some warnings. Jul 25, 2019
cells Fix/hide some warnings. Jul 25, 2019
cpu VPA generation without FC. Aug 6, 2019
io Fix NEO-PVC. Aug 12, 2019
jt12 jt12: use half clock for SSG. Sep 14, 2019
jt49 jt49: update to latest version. Aug 18, 2019
mem Support for 128MB SDRAM module. Sep 1, 2019
releases Merge branch 'master' of Sep 15, 2019
sys Update sys. Sep 14, 2019
video cmc: new type 1 implementation, implement type 2. Aug 10, 2019
.gitignore Add romsets.xml. Aug 10, 2019 Initial commit. Jul 20, 2019
LICENSE Initial commit. Jul 20, 2019
NeoGeo.qsf Open OSD on startup. Sep 6, 2019
NeoGeo.srf Update project name #2 Jul 21, 2019
NeoGeo_DualSDR.qpf Support for dual SDRAM. Jul 21, 2019
NeoGeo_DualSDR.qsf Fix/hide some warnings. Jul 25, 2019
NeoGeo_DualSDR.srf Fix/hide some warnings. Jul 25, 2019 Update readme. Sep 7, 2019
clean.bat clean.bat: don't delete romsets.xml. Aug 11, 2019
files.qip Improved black levels Sep 13, 2019 romset(s).xml format description. Sep 11, 2019

NEO GEO for MiSTer

This is an FPGA implementation of the NEO GEO/MVS system by Furrtek


  • Supports memory card saving
  • MVS and AES system support
  • Compatible with Darksoft ROM sets using provided XML
  • Compatible with decrypted MAME ROM sets using your own XML
  • Support for Universe BIOS

Note: Core doesn't support encrypted ROMs. Make sure the ROM has no encrypted parts before use it. MAME ROM pack includes many encrypted ROMs so it's not recommended for inexperienced users.


Copy the NeoGeo_*.rbf file to the folder of your choice on the SD card. Create a NEOGEO folder on the root of the card, and place the unzipped ROM sets inside this folder. For ease of setup of use, it is strongly suggested that people use the Darksoft ROM pack. Several things must be observed:

  • Each set of ROMs must be in its own folder
  • The folders containing the ROM sets must be named to match the XML (MAME standard names)
  • The ROMs must not be zipped
  • ROM set folders can be placed inside sub-folders for organization

In addition, several bios files must be placed in the NEOGEO folder for the core to function properly:

  • 000-lo.lo
  • sfix.sfix
  • sp-s2.sp1 (MVS)
  • neo-epo.sp1 (AES)
  • uni-bios.rom

Sometimes these files may be named slightly differently depending on where they are obtained, but they must be renamed to match the filenames above to work with MiSTer. You may choose between using original system BIOS (sp-s2.sp1/neo-epo.sp1) and uni-bios.rom. Using uni-bios is recommended, and can be obtained here.

Lastly, romsets.xml from the release folder must also be placed in the directory. The provided XML is for Darksoft ROMs only, you must make your own for MAME ROMs. This file describes to the core where the ROM sets are located and how to load them.

Saving and Loading

In AES mode, all saves are to the memory card only. In MVS mode, some games and uni-bios save their settings to a special area of battery backed ram built into the system, while game data can be still be saved to a memory card. To simplify things, it is suggested to stick to one system type on the OSD and use uni-bios to change the system type, so that game information is saved consistently.

RAM and Game Sizes

Neo Geo uses very large ROMs. About 84% of the library will fit onto a 32 megabyte SDRAM module. Another 12% will fit onto a 64 megabyte SDRAM module. The remaining 8 games require a 128 megabyte module. For more information about which games can be loaded with which sized RAM, open romsets.xml in your favorite text editor or github. The games are organized by size.

You can’t perform that action at this time.