Skip to content

blackwine/NeoGeo_MiSTer

 
 

Repository files navigation

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

Features

  • 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
  • Compatible with decrypted .neo ROM sets
  • Compatible with gog.com ROMs using provided XML
  • Support for Universe BIOS

Note: Core doesn't support encrypted ROMs. Make sure the ROM has no encrypted parts before use. MAME ROM pack includes many encrypted ROMs so it's not recommended for inexperienced users. Using the .neo conversion tool with a MAME ROM set will result in some ROMs still being encrypted. There is an alternate .neo conversion tool for the Darksoft ROM set that will give you a fully decrypted set.

MAME to .neo conversion tool

Darksoft to .neo conversion tool

Installation

Copy the NeoGeo_*.rbf file to the 'Console' or 'Arcade' folder (your choice) on the SD card. ROMS should go in the 'games\NeoGeo' folder. For ease of use, it is strongly suggested that people use the Darksoft ROM pack. These can be either zipped or unzipped with minimal loading speed difference. Several things must be observed:

  • When using an unzipped Darksoft ROM set, each game's ROM files must be in their own folder and the folders containing the ROM sets must be named to match the XML (MAME standard names)
  • ROMs can be placed inside sub-folders for organization
  • Zipped ROMs must not contain folders.

In addition, several bios files must be placed in the 'games\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 different 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. gog-romsets.xml can be used (renamed to romsets.xml) for games purchased from gog.com (which also include all the needed bios files), see comments in gog-romsets.xml .

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.

MRA Loading

Arcade version of the core now can be built by assigning Verilog macro MVS_ARCADE_LOAD=1. This version starts Neo Geo in MVS mode and uses the MRA file to load its data. Neo Geo core reorganizes fix layer and sprite data internally to take advantage of faster continuous memory burst reads. The original core relies on a custom loader in the main mister Linux binary program that sends mangled data towards it. Here data is being reordered while transferred to SDRAM on the FPGA side. Also, fast memory transfers of data loaded on the Linux from DDR to SDRAM are emulated in MRA enabling it to load with speeds similar to the optimized custom routines console core uses. This version lacks support for loading and saving backup and memory card data.

About

NeoGeo for MiSTer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Verilog 27.8%
  • C++ 26.2%
  • SystemVerilog 18.1%
  • VHDL 9.7%
  • HTML 9.0%
  • JavaScript 6.0%
  • Other 3.2%