Sega Naomi in lr-reicast
-
About a week ago, I decided to start messing around with my Pi for the first time in a while, and discovered that the Reicast Libretro core was now available under the experimental menu. This not only meant that there was now an option for playing Dreamcast games on the Pi with all the quality-of-life features offered by Libretro, but it also meant that the Pi would now be capable of playing Sega Naomi games.For those not already familiar, the Sega Naomi was an arcade system that was essentially a Dreamcast with beefed-up specs. It could load games either from giant ROM cartridges, or from GD-ROMs, a format exclusive to the Naomi and Dreamcast. Around 100 titles were released for it, and while a good portion of it's titles are available on the Dreamcast, some games remain exclusive to the Naomi, and others were only ported to consoles the Pi isn't capable of emulating (namely the Gamecube and PS2).
As this core is rather experimental (and as I consider this to be too convoluted for inclusion in the RetroPie Wiki page for the Dreamcast), I decided to instead write this thread for anyone who's looking to attempt running Naomi games on their Pi. Hopefully, you should find this to be at least somewhat useful.
Emulator Setup
The first step is to install lr-reicast, which can be installed from the experimental menu in RetroPie Setup. If you don't see the option to do so, try updating the RetroPie Setup scripts.
Along with the usual
dc_flash.bin
anddc_boot.bin
for running Dreamcast games, you'll also need a third BIOS file in order to boot Naomi titles. You'll want to find a file namednaomi.zip
and place it in the same folder as the other Dreamcast BIOS files. If this doesn't work, extract the fileepr-21576h.ic27
, rename it tonaomi_boot.bin
, and place it in the folder.I would also recommend updating RetroArch, as lr-reicast fails to output audio if it's running on an older version of RetroArch. This does have the side effect of enabling the display for frame count, which can be easily disabled in the RetroArch settings.
ROM Setup
lr-reicast supports ROMs in the same format that MAME supports: ZIPs and CHDs. If a game was distributed on GD-ROM, you'll need both a .ZIP and a .CHD, but if it was only distributed on cartridge, only a .ZIP is necessary.
To ensure that your .ZIPs will work, you can match the contents of a given game's .ZIP with it's entry in this file. For example, let's say we wanted to load Rhythm Tengoku. A quick CTRL-F in the above file gives us this block of code:
// Rhythm Tengoku { "rhytngk", NULL, 0x10000000, 0x5504, "naomi", M4, REGION_JAPAN, ROT0, { { "fpr-24423.ic8", 0x00000000, 0x4000000 }, { "fpr-24424.ic9", 0x04000000, 0x4000000 }, { "fpr-24425.ic10", 0x08000000, 0x4000000 }, { "fpr-24426.ic11", 0x0c000000, 0x4000000 }, { "317-0503-jpn.ic3", 0, 0x800, Key }, { NULL, 0, 0 }, } },
What we're interested in is the list of files (starting after the
ROT0
line, and ending atNULL, 0, 0
); as long as the above filenames are present in a ZIP namedrhytngk.zip
, the game should be able to boot. Now let's look at the case of a GD-ROM game, Monkey Ball:// Monkey Ball (GDS-0008) { "monkeyba", NULL, 0x4000, 0, "naomi", GD, REGION_AUSTRALIA, ROT0, { { "317-0307-com.pic", 0, 0x4000 }, { NULL, 0, 0 }, }, "gds-0008", },
Just like Rhythm Tengoku, it's looking for a
monkeyba.zip
containing a317-0307-com.pic
file, but unlike Rhythm Tengoku, after the list of .ZIP file contents, it lists agds-0008
. This means that it's looking for a .CHD file namedgds-0008.chd
, which is a dump of the GD-ROM. You'll need to place this CHD file in the same directory as the ZIP file.It's worth a mention that, along with the Naomi, Reicast also supports games released for the Sammy Atomiswave, which was another arcade board based on the Dreamcast hardware. Any setup capable of playing Naomi games should be able to run Atomiswave ROMs without any extra effort.
Miscellaneous Notes
This is a list of extra observations and thoughts that I figured were worth mentioning.
- Monkey Ball defaults with the directional axises on the analog stick inverted. Fixing this is pretty trivial: open the Libretro menu, go to Controls, swap around Axis 1 and Axis 2, and save it as a game remap.
- An Error 1/Error 2 on the Naomi boot screen appears to indicate missing files. Error 1 only appears on GD-ROM games, so it most likely indicates a missing CHD. Error 2 is a bit more vague (according to Naomi documentation, that means a region mismatch).
- According to the RetroArch blog,
.bin/.lst
files should be supported. I was never able to get these to boot, however.
-
- i try to keep reicast always in sync with latest mame naomi/aw romsets
- there are several bioses,
naomi.zip
will only allow you to play standard naomi games. Full list at https://github.com/libretro/libretro-super/blob/master/dist/info/reicast_libretro.info - don't use
naomi_boot.bin
or lst/bin/dat/whatever, they are deprecated
-
There is some great advice for this too in the working dreamcast games thread also:
https://retropie.org.uk/forum/topic/21031/working-dreamcast-games
If you get failures when loading all roms in lr-Reciast then there is a useful script fix suggested in the above thread.
I think it's incredible these games work on the Raspberry Pi.
I was able to get the following working with Lightgun:
House Of The Dead 2
Confidential Mission
Maze Of KingsHowever House Of The Dead 2 has quite a lot of graphical glitches so it will be better getting the Lightgun working on the Dreamcast version which runs better.
I manage to improve the performance a little bit since this video but not as much on this system as with some others.
-
Thanks for the guide!
This works perfectly on the RPi4.
Just took me some time to find all the BIOS with the correct checksum (available in the wiki for anyone who wonders).
I did not have the monkey ball reverse analog by default so that is either fixed or non-existing on my specific setup.Does naomi have a separate directory by default or do I need to create a custom colection?
-
@langest said in Sega Naomi in lr-reicast:
Does naomi have a separate directory by default or do I need to create a custom colection?
In RetroPie, no - it uses the
dreamcast
folder. -
@langest said in Sega Naomi in lr-reicast:
I did not have the monkey ball reverse analog by default so that is either fixed or non-existing on my specific setup.
I fixed it last year.
-
@SuperFromND said in Sega Naomi in lr-reicast:
To ensure that your .ZIPs will work, you can match the contents of a given game's .ZIP with it's entry in this file.
So if my game is not listed in that header, then it is not supported, Is this correct?
Edit: I was specifically thinking of
Tokyo Bus Tour
, but I just noticed that one might be available as a regular Dreamcast rom. -
Hi there,
i am trying to boot fist of north star with recalbox.
In your opinion, there May be a Way to make this work? -
- this is not recalbox forum
- as long as you are using lr-flycast & proper romset/bios, this game is supported
-
I updated lr-flycast from source and this broke my working naomi games.
Did this happen to someone else at some point?
Any idea if some changes to flycast has been made that might break old naomi setups?RetroPie Version 4.5.14 (f541deb) (current master)
RPi4 -
Is there a way to play Naomi arcade games on Mame in Retropie? Thinking Mame2016 might be a viable core to try? I have BIOS files, not sure where to place them.
-
@GreenHawk84 no, flycast is your only option
-
I am having trouble with games with .CHD files. All NAOMI and Atomiswave games that are just .ZIPs have been fine.
I'm trying to play Monkey Ball and Ikaragu but both of them give me "Error 01 This game is not acceptable by the main board".
Any idea why this is? I've tried putting the CHDs within folders of the same name in the Dreamcast folder, ie. Dreamcast/ikaragua and I've tried with the CHDs in the Dreamcast folder also.
-
@AdamBeGood Can you add more details - what are the rom/folders/chd names you've tried ? For instance, the file structure for Monkey Ball should be:
monkeyba.zip monkeyba/gds-0008.chd
Another thing to check if you have the required BIOS files - maybe you're missing the Naomi GDrom BIOS (
naomigd.zip
?). -
@mitu said in Sega Naomi in lr-reicast:
maybe you're missing the Naomi GDrom BIOS (naomigd.zip ?)
No,
naomigd.zip
isn't required by flycast. -
@mitu Thanks for the advice, I have Monkey Ball working now! Ikaragu is still a problem but I have it on Switch and XBox so I'm not going to lose sleep over that.
-
@AdamBeGood said in Sega Naomi in lr-reicast:
Ikaragu is still a problem but I have it on Switch and XBox so I'm not going to lose sleep over that.
Maybe because you're spelling it wrong...
-
@mitu I did get it working after the event, I started again with it, after deleting my initial attempt. So it isn't impossible that is the reason... I really hope not though.
If anyone has any good Naomi or Atomiswave recommendations, I'd be interested.
-
@AdamBeGood said in Sega Naomi in lr-reicast:
If anyone has any good Naomi or Atomiswave recommendations, I'd be interested
Dolphin Blue is pretty awesome for Atomiswave if you like Metal Slug run and gun type games.
-
@ReadyPlayaWon Giving it a play now! Love it!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.