RetroPie – Sega CD Configuration
Having built the RetroPie Gaming system from my previous article https://muckypaws.com/2020/06/10/pi-4b-gaming-rig-part-1/, you’ve installed some Sega CD roms using the tutorial https://muckypaws.com/2020/04/07/install-games-roms-to-your-retropie-build/ however you discover that your ROMS aren’t working as expected. Typically you may be thrown back to the games list after a short pause.
This article explains the basic fault finding methods you can use to determine why the emulator failed to play your games and hopefully how to fix it, before requesting help from the forums. You can find more information on the Sega CD Emulator here https://retropie.org.uk/docs/Sega-CD/
I’m using CHD files for the Rom Images as this helps keep the folder neat and tidy, however you may have .CUE and .BIN files instead, the method remains the same.
When starting the emulator you will see a message informing you which emulator is being used and where errors are being logged. You will need to press a key to show the enhanced menu, and select Launch with Verbose Logging. Hit Return and then wait for the emulator to switch back to the Games List screen. At this point you can either hit F4 on your Pi connected keyboard, or SSH/PuTTY into the Raspberry Pi to review the logs.
At the command prompt, enter the following :-
cd /dev/shm ls -al cat runcommand.log
pi@retropie:/dev/shm $ cat runcommand.log Parameters: Executing: /opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-genesis-plus-gx/genesis_plus_gx_libretro.so --config /opt/retropie/configs/segacd/retroarch.cfg "/home/pi/RetroPie/roms/segacd/Batman Returns (USA).chd" --verbose --appendconfig /dev/shm/retroarch.cfg [INFO] RetroArch 1.8.5 (Git 8bcd74b) [INFO] Redirecting save file to "/home/pi/RetroPie/roms/segacd/Batman Returns (USA).srm". [INFO] Redirecting savestate to "/home/pi/RetroPie/roms/segacd/Batman Returns (USA).state". [INFO] === Build ======================================= [INFO] Capabilities: NEON VFPv3 VFPv4 [INFO] Built: Apr 20 2020 [INFO] Version: 1.8.5 [INFO] Git: 8bcd74b [INFO] ================================================= [INFO] Loading dynamic libretro core from: "/opt/retropie/libretrocores/lr-genesis-plus-gx/genesis_plus_gx_libretro.so" [INFO] [Overrides] no core-specific overrides found at /home/pi/.config/retroarch/config/Genesis Plus GX/Genesis Plus GX.cfg. [INFO] [Overrides] no content-dir-specific overrides found at /home/pi/.config/retroarch/config/Genesis Plus GX/segacd.cfg. [INFO] [Overrides] no game-specific overrides found at /home/pi/.config/retroarch/config/Genesis Plus GX/Batman Returns (USA).cfg. [INFO] [Environ]: GET_LANGUAGE: "0". [INFO] Core requested VFS version >= v1, providing v3 [INFO] [Remaps]: remap directory: /opt/retropie/configs/segacd/ [INFO] Redirecting save file to "/home/pi/RetroPie/roms/segacd/Batman Returns (USA).srm". [INFO] Redirecting savestate to "/home/pi/RetroPie/roms/segacd/Batman Returns (USA).state". [INFO] [Environ]: PERFORMANCE_LEVEL: 1. [INFO] [Environ]: PERFORMANCE_LEVEL: 7. [INFO] Content loading skipped. Implementation will load it on its own. [INFO] [Environ]: SET_PIXEL_FORMAT: RGB565. [libretro INFO] Frontend supports RGB565 - will use that instead of XRGB1555. [INFO] [Environ]: SYSTEM_DIRECTORY: "/home/pi/RetroPie/BIOS". [libretro INFO] Game Genie ROM should be located at: /home/pi/RetroPie/BIOS/ggenie.bin [libretro INFO] Action Replay (Pro) ROM should be located at: /home/pi/RetroPie/BIOS/areplay.bin [libretro INFO] Sonic & Knuckles (2 MB) ROM should be located at: /home/pi/RetroPie/BIOS/sk.bin [libretro INFO] Sonic & Knuckles UPMEM (256 KB) ROM should be located at: /home/pi/RetroPie/BIOS/sk2chip.bin [libretro INFO] Mega Drive TMSS BOOTROM should be located at: /home/pi/RetroPie/BIOS/bios_MD.bin [libretro INFO] Game Gear TMSS BOOTROM should be located at: /home/pi/RetroPie/BIOS/bios.gg [libretro INFO] Master System (PAL) BOOTROM should be located at: /home/pi/RetroPie/BIOS/bios_E.sms [libretro INFO] Master System (NTSC-U) BOOTROM should be located at: /home/pi/RetroPie/BIOS/bios_U.sms [libretro INFO] Master System (NTSC-J) BOOTROM should be located at: /home/pi/RetroPie/BIOS/bios_J.sms [libretro INFO] Mega CD (PAL) BIOS should be located at: /home/pi/RetroPie/BIOS/bios_CD_E.bin [libretro INFO] Sega CD (NTSC-U) BIOS should be located at: /home/pi/RetroPie/BIOS/bios_CD_U.bin [libretro INFO] Mega CD (NTSC-J) BIOS should be located at: /home/pi/RetroPie/BIOS/bios_CD_J.bin [libretro INFO] Mega CD (PAL) BRAM is located at: /home/pi/RetroPie/roms/segacd//scd_E.brm [libretro INFO] Sega CD (NTSC-U) BRAM is located at: /home/pi/RetroPie/roms/segacd//scd_U.brm [libretro INFO] Mega CD (NTSC-J) BRAM is located at: /home/pi/RetroPie/roms/segacd//scd_J.brm [libretro INFO] Sega/Mega CD RAM CART is located at: /home/pi/RetroPie/roms/segacd//cart.brm [libretro ERROR] Unable to open CD BIOS: /home/pi/RetroPie/BIOS/bios_CD_U.bin. [ERROR] Failed to load content [INFO] Content ran for a total of: 00 hours, 00 minutes, 00 seconds. [INFO] Unloading game.. [INFO] Unloading core.. [INFO] Unloading core symbols.. [INFO] [Core Options]: Saved core options file to "/opt/retropie/configs/all/retroarch-core-options.cfg"
Reviewing the Logs, we can see that the emulator is expecting a number of Sega CD Bios files to be located in the /home/pi/RetroPie/BIOS directory and a quick look shows that these files aren’t present. You’ll need to use your Google Foo to find the following files with the MD5 Hash Below :-
bios_CD_E.bin = e66fa1dc5820d254611fdcdba0662372
bios_CD_J.bin = bdeb4c47da613946d422d97d98b21cda
bios_CD_U.bin = 2efd74e3232ff260e371b99f84024f7f
bios_E.sms = 840481177270d5642a14ca71ee72844c
bios.gg = 672e104c3be3a238301aceffc3b23fd6
bios_J.sms = 24a519c53f67b00640d0048ef7089105
bios_U.sms = 840481177270d5642a14ca71ee72844c
scd_E.brm = 0c0dc69bd15bd1e70939a7cf9f4ed251
scd_J.brm = ba8679eecf422d65a5d1201b81e1344a
scd_U.brm = 0fa319dd1d440db6feea1b5748b344e9
us_scd2_9306.bin = 854b9150240a198070150e4566ae1290
According to the RetroPie user guide, I should be able to get away with us_scd2_9306.bin, however that didn’t solve the issue with this build, and so a belt and braces, locate as many BIOS files as I could.
Once placed in the BIOS directory, I could exit the command prompt by typing exit and restart the Sega CD Emulator and all worked!
I hope that helps solve your issue to.
How do I generate an MD5 Checksum?
That’s straight forward and a couple of common command line methods whilst logged into your Pi are as follows :-
openssl md5 filename md5sum filename
You can use wildcards for the filename and the console output will show the MD5 Hashes which you can compare against the published MD5s for the files you’ve downloaded.
Good Luck and Happy Sega Gaming!