Skip to content

Latest commit

 

History

History
364 lines (282 loc) · 40 KB

bios-garlicos-retroarch.en_us.md

File metadata and controls

364 lines (282 loc) · 40 KB

Finding and adding the correct BIOS files to Garlic OS on the Anbernic RG35XX so that you can play ROMs

Each step is explained in English with the corresponding terminal command below it. These instructions should work without problem on any modern macOS — with either Intel or Apple Silicon CPUs. Tested on macOS Ventura 13.5 on both an Intel i9 chip, and an Apple M1 Max chip.

Prerequisites

  • A relatively recent version of macOS.

    Finder icon
  • Comfortable-enough using Terminal.app (or alternatives).

    Terminal icon
  • You have Homebrew installed. (Installation is outside the scope of this tutorial, but it’s pretty fundamental if you do technical things on your Mac.)

    • This includes installing the Xcode CLI tools (a much smaller download than the entire Xcode).

BIOS files for the RG35XX

BIOS files for the RG35XX

Garlic OS shares certain fundamentals with Onion OS. Namely, these include names of ROM folders, and the BIOS files that are necessary to play games. The canonical guide for Onion OS lives at https://github.com/OnionUI/Onion/wiki/Emulators, and it is extremely good. However, Garlic OS and Onion OS are not identical, and in some cases, they do things slightly differently.

This document was created by cross-referencing Onion UI: Emulators, Libretro: Core List, and GitHub: @libretro.

These BIOS files also generally work well with other emulators (like OpenEmu), although the focus here is on the RG35XX device.

Preparation

If you followed one of the Installing Garlic OS on your Anbernic RG35XX using macOS guides to do an initial installation of Garlic OS, you’ll remember that we had a volume called MISC and another called ROMS.

  1. In the ROMS volume, you should have (at least) these folders: BIOS, CFW, Roms, Saves, and Screenshots.

  2. Inside the ROMS/BIOS folder, this is where you will put all of the BIOS files (listed below).

  3. The ROM folders are mapped back to a specific emulator core by opening the ROMS SD card partition, going into the CFWconfig folder, and opening coremapping.json in your preferred editor.

    See the Terminal command…

    Open the Finder window:

    open /Volumes/ROMS/CFW/config/

    Then double-click coremapping.json to open the file with whichever application is configured to open JSON files. (If you don’t have a preferred code editor, I can suggest VS Code.)

    Alternatively…

    open /Volumes/ROMS/CFW/config/coremapping.json

Note about save files

TLDR

Save files are emulator-specific. The (default) emulator that is assigned to a ROM folder will create save files in that emulator’s format (which is why I’m mentioning this here).

If you want to "cross-save" with a different device, you need to ensure you’re using the same emulator on the other device.

This is not bulletproof, however. Different systems may use different versions/commits of these emulators, which may be incompatible with each other. So make sure you regularly backup your save files.

Special instructions for SNK Neo Geo Systems

TLDR
Neo-Geo System

This applies to Neo Geo arcade games, Neo Geo console games, Neo Geo CD games. Sometimes the Neo Geo emulator looks for BIOS files in the same directory as the game, and sometimes it looks in the BIOS/ directory.

  1. Inside the ROMS/Roms folder, create a new subfolder called NEOGEO if it doesn’t already exist.

    1. Copy (not move) ROMS/BIOS/neogeo.zip to ROMS/Roms/NEOGEO/neogeo.zip.

      See the Terminal command…
      cp --verbose --force /Volumes/ROMS/BIOS/neogeo.zip /Volumes/ROMS/Roms/NEOGEO/neogeo.zip
  2. Inside the ROMS/Roms folder, create a new subfolder called NEOCD if it doesn’t already exist.

    1. Copy (not move) ROMS/BIOS/neogeo.zip to ROMS/Roms/NEOCD/neogeo.zip.

      See the Terminal command…
      cp --verbose --force /Volumes/ROMS/BIOS/neogeo.zip /Volumes/ROMS/Roms/NEOCD/neogeo.zip

Yes, this means that there will be multiple copies of neogeo.zipon your SD card. No, don’t create symlinks.

Arcade Systems

Arcade Systems

While you can certainly do some fiddling if you are a true arcade aficionado, for most people we’re going to recommend FinalBurn Neo for playing arcade games. It seems to work more consistently than MAME, CPS, or the other options.

Inside the ROMS/Roms folder, create a new subfolder called FBNEO if it doesn’t already exist. This is where you will put all of the Arcade ROMs.

Note

You can validate MD5 checksums using Appendix: BIOS Checksums.

Finalburn Neo not doing it for you?

Garlic OS and RetroArch will try to execute games inside the FBNEO folder with the Finalburn Neo arcade emulator. This is probably OK, but if you have an arcade game that doesn’t work well with Finalburn Neo, there are some alternatives.

Folder Emulator
ARCADE MAME 2003 Plus
FBA2012 Finalburn Alpha (2012)
FBNEO Finalburn Neo
MAME2000 MAME 2000

While RetroArch (libretro) supports other Arcade emulators, Garlic OS on the RG35XX does not.

Game system BIOS filenames
Bubble System BIOS bubsys.zip
C-Chip Internal ROM cchip.zip
Fairchild Channel F BIOS channelf.zip
Nebula (Deco Cassette) (BIOS) cnebula.zip
ColecoVision System BIOS coleco.zip
DECO Cassette System BIOS decocass.zip
FDS System BIOS fdsbios.zip
ISG Selection Master Type 2006 System BIOS isgsm.zip
Midway SSIO Sound Board Internal ROM midssio.zip
MSX1 System BIOS msx.zip
Namco C69 BIOS namcoc69.zip
Namco C70 BIOS namcoc70.zip
Namco C75 BIOS namcoc75.zip
Neo Geo CDZ System BIOS neocdz.zip
Neo Geo BIOS neogeo.zip
Neo Geo Pocket BIOS ngp.zip
NMK004 Internal ROM nmk004.zip
PGM System BIOS pgm.zip
Super Kaneko Nova System BIOS skns.zip
ZX Spectrum 128 BIOS spec128.zip
ZX Spectrum 128 +2a BIOS spec1282a.zip
ZX Spectrum BIOS spectrum.zip
YM2608 Internal ROM ym2608.zip

Source: https://docs.libretro.com/library/fbneo/

Consoles and PC Systems

Consoles and PC Systems

If the game system has a flag next to it, it means that the name/device was only sold in that market.

Note

You can validate MD5 checksums using Appendix: BIOS Checksums.

Game system Year Core/Emulator BIOS filenames ROM folder name
3DO Interactive Multiplayer¹ 1993 Opera panafz1.bin or panafz10.bin or panafz10-norsa.bin or panafz10e-anvil.bin or panafz10e-anvil-norsa.bin or panafz1j.bin or panafz1j-norsa.bin or goldstar.bin or sanyotry.bin or 3do_arcade_saot.bin

(JP: panafz1-kanji.bin, panafz10ja-anvil-kanji.bin, panafz1j-kanji.bin)
PANASONIC ⚠️
Amstrad CPC 1984 CrocoDS None CPC
Atari 800 1979 Atari800 ATARIOSA.ROM, ATARIOSB.ROM, ATARIBAS.ROM EIGHTHUNDRED ⚠️
Atari 2600 1977 Stella 2014 None ATARI
Atari 5200 SuperSystem 1982 a5200 5200.rom, ATARIBAS.ROM FIFTYTWOHUNDRED
Atari 7800 ProSystem 1986 ProSystem 7800 BIOS (U).rom, 7800 BIOS (E).rom SEVENTYEIGHTHUNDRED
Atari Falcon 1992 Hatari tos.img v4.x ATARIST ⚠️
Atari MEGA STE 1991 Hatari tos.img v1.x, 2.x ATARIST ⚠️
Atari ST 1985 Hatari tos.img v1.00, 1.02, 1.04, 2.06 ATARIST ⚠️
Atari TT 1990 Hatari tos.img v3.x ATARIST ⚠️
ColecoVision 1982 blueMSX coleco.rom COLECO
Commodore 64 1982 VICE x64 None COMMODORE
Commodore 128 1985 VICE x128 None C128
Commodore Amiga 1985 PUAE 2021 kick33180.A500, kick34005.A500, kick34005.CDTV, kick37175.A500, kick37350.A600, kick39106.A1200, kick39106.A4000, kick40060.CD32, kick40060.CD32.ext, kick40063.A600, kick40068.A1200, kick40068.A4000 AMIGA
Commodore Amiga CD32 1993 PUAE 2021 kick33180.A500, kick34005.A500, kick40068.A1200 AMIGACD
Commodore PET 1977 VICE xpet None PET
Commodore Plus/4 1984 VICE xplus4 None PLUS4
Commodore VIC-20 1980 VICE xvic None VIC20
Fairchild Channel F 1976 FreeChaF sl31253.bin, sl31254.bin, sl90025.bin FAIRCHILD
GCE Vectrex 1982 vecx None VECTREX
Magnavox Odyssey 2
🇺🇸
1978 O2EM o2rom.bin ODYSSEY
Mattel Intellivision 1979 FreeIntv exec.bin, grom.bin INTELLIVISION
Microsoft MS-DOS 1981 DOSBox-Pure None DOS
NEC PC Engine
🇯🇵 🇪🇺
1987 Beetle PCE Fast None PCE
NEC PC Engine SuperGrafx
🇯🇵
1989 Beetle SuperGrafx syscard3.pce SGFX
NEC PC-8000 series 1979 QUASI88 None PCEIGHTYEIGHT ⚠️
NEC PC-8800 (PC-88) series 1981 QUASI88 None PCEIGHTYEIGHT ⚠️
NEC PC-9800 (PC-98) series 1982 Neko Project II Kai np2/font.bmp, np2/FONT.ROM, np2/bios.rom, np2/itf.rom, np2/sound.rom PCNINETYEIGHT ⚠️
NEC PC-FX
🇯🇵
1994 Beetle PCFX pcfx.rom PCFX ⚠️
NEC TurboGrafx-16
🇺🇸
1989 Beetle PCE Fast None PCE
Nintendo Entertainment System (NES)
🇺🇸 🇪🇺
1985 FCEUmm None FC
Nintendo Entertainment System (NES)
🇺🇸 🇪🇺
1985 Nestopia UE None NESTOPIA
Nintendo Family Computer (Famicom)
🇯🇵
1983 FCEUmm None FC
Nintendo Family Computer (Famicom)
🇯🇵
1983 Nestopia UE None NESTOPIA
Nintendo Virtual Boy 1995 Beetle VB None VB
Philips Videopac+
🇯🇵 🇪🇺
1978 O2EM o2rom.bin, g7400.bin (maybe c52.bin, jopac.bin) VIDEOPAC
Sega Genesis
🇺🇸
1989 PicoDrive bios_MD.bin MD
Sega Mark III
🇯🇵
1985 PicoDrive bios_E.sms, bios_U.sms, bios_J.sms MS
Sega Master System
🇺🇸 🇪🇺
1986 PicoDrive bios_E.sms, bios_U.sms, bios_J.sms MS
Sega Mega Drive
🇯🇵 🇪🇺
1988 PicoDrive bios_MD.bin MD
Sega SG-1000
🇯🇵
1983 Gearsystem None SEGASGONE
Sharp X1
🇯🇵
1982 X Millennium xmil/IPLROM.X1, xmil/IPLROM.X1T XONE ⚠️
Sharp X68000
🇯🇵
1987 PX68k keropi/iplrom.dat, keropi/cgrom.dat, keropi/iplrom30.dat, keropi/iplromco.dat, keropi/iplromxv.dat X68000 ⚠️
Sinclair ZX Spectrum
🇪🇺
1982 Fuse None ZXS
Sinclair ZX-81
🇪🇺
1981 EightyOne None ZXEIGHTYONE
SNK Neo Geo 1990 Final Burn Alpha (2012) Neo Geo neogeo.zip NEOGEO
SNK Neo Geo CD 1994 NeoCD (000-lo.lo or ng-lo.rom) + (neocd_f.rom or neocd.bin or uni-bioscd.rom) + neogeo.zip NEOCD
Sony Playstation 1995 PCSX ReARMed PSXONPSP660.bin, scph101.bin, scph7001.bin, scph5501.bin, scph1001.bin PS
Super Famicom
🇯🇵
1990 Snes9x None SFC
Super Nintendo Entertainment System (SNES)
🇺🇸 🇪🇺
1991 Snes9x None SFC
Uzebox 2008 Uzem None UZEBOX ⚠️

¹ 3DO was a set of specifications, with manufacturing licensed to Panasonic, GoldStar, Sanyo, Creative, and Samsung.

Unplayable systems

These systems are deemed unplayable either because emulation is far too slow on RG35XX, or because the BIOS files are extraordinarily hard to find on the internet.

Game system Core/Emulator BIOS filenames ROM folder name Issue(s)
Atari Jaguar Virtual Jaguar virtualjaguar_bios JAGUAR ⚠️ Poor performance; BIOS files cannot be found.

Handheld Systems

Handheld Systems

Note

You can validate MD5 checksums using Appendix: BIOS Checksums.

Game system Year Core/Emulator BIOS filenames ROM folder name
Atari Lynx 1989 Handy lynxboot.img LYNX
Bandai SwanCrystal 🇯🇵 2002 Beetle Wonderswan None WS
Bandai WonderSwan 🇯🇵 1999 Beetle Wonderswan None WS
Bandai WonderSwan Color 🇯🇵 2000 Beetle Wonderswan None WS
Cougar Boy 🇧🇷 1993 SameDuck None MEGADUCK
Nintendo Game & Watch 1980 GW None GW
Nintendo Game Boy 1989 Gambatte gb_bios.bin GB
Nintendo Game Boy Advance 2001 gpSP gba_bios.bin GPSP
Nintendo Game Boy Advance 2001 mGBA gba_bios.bin GBA
Nintendo Game Boy Color 1998 Gambatte gbc_bios.bin GBC
Nintendo Pokemon Mini 2001 PokeMini bios.min POKE
QuickShot Supervision 🇬🇧 1992 Potator None SUPERVISION
Sega Game Gear 1990 PicoDrive bios.gg GG
SNK Neo Geo Pocket 1998 Beetle NGP None NGP
SNK Neo Geo Pocket Color 1999 Beetle NGP None NGP
Watara Supervision 🇺🇸 🇯🇵 🇪🇺 1992 Potator None SUPERVISION
Welback Holdings Mega Duck WG-108 🇪🇺 1993 SameDuck None MEGADUCK

Add-ons and Peripherals

Add-ons and Peripherals

If the game system has a flag next to it, it means that the name/device was only sold in that market.

Note

You can validate MD5 checksums using Appendix: BIOS Checksums.

Game system Year Core/Emulator BIOS filenames ROM folder name
Bandai SuFami Turbo 🇯🇵 1996 Snes9x STBIOS.bin SUFAMI
NEC PC Engine CD-ROM² 🇯🇵 🇪🇺 1988 Beetle PCE Fast syscard3.pce PCECD
NEC TurboGrafx-CD 🇺🇸 1989 Beetle PCE Fast syscard3.pce PCECD
Nintendo Family Computer Disk System 🇯🇵 1986 FCEUmm disksys.rom FDS
Nintendo Satellaview 🇯🇵 1995 Snes9x BS-X.bin SATELLAVIEW
Nintendo Super Game Boy 1994 mGBA sgb_bios.bin SGB
Nintendo Super Game Boy 2 🇯🇵 1998 mGBA sgb_bios.bin SGB
Sega CD 🇺🇸 1992 PicoDrive bios_CD_U.bin, bios_CD_E.bin, bios_CD_J.bin SEGACD
Sega Genesis 32X 🇺🇸 1994 PicoDrive None THIRTYTWOX
Sega Mega Drive 32X 🇪🇺 1994 PicoDrive None THIRTYTWOX
Sega Mega-CD 🇯🇵 🇪🇺 1991 PicoDrive bios_CD_U.bin, bios_CD_E.bin, bios_CD_J.bin SEGACD
Sega Super 32X 🇯🇵 1994 PicoDrive None THIRTYTWOX
Sega Visual Memory System (VMS) 🇯🇵 🇪🇺 1998 VeMUlator None VMU ⚠️
Sega Visual Memory Unit (VMU) 🇺🇸 1999 VeMUlator None VMU ⚠️

Miscellaneous

Miscellaneous

Game system Year Core/Emulator BIOS filenames ROM folder name
ASCII Corporation + Microsoft MSX 1983 blueMSX See blueMSX from libretro for more information. MSX
Pico-8 Fantasy Console 2015 fake-08 None PICO
ScummVM 2001 ScummVM None SCUMMVM
TIC-80 2017 TIC-80 None TIC