Sega Saturn SAROO is a device that slots into the Cartridge Port of the Sega Saturn that allows you to boot games from an SD card similar to an Everdrive or ODE (Optical Drive Emulator) found on other consoles. It is simple to set up and get running however there does seem to be some confusion on how to do this. Hopefully this guide will remove some of the confusion.

Where to Buy

The SAROO is open source and can be purchased from various sellers on AliExpress or eBay. The software and schematics can be found on tpunix’s GitHub repo.

Format SD Card

Your (micro)SD card must be formatted in either FAT32 or exFAT for the SAROO to be able to read the files on it. Depending on the size of your SD card it is likely already in a support file system but if you are unsure what the file system of your SD card is then this can be done by right-clicking on your SD card drive and selecting Properties.

SD Card Drive properties

If the file system listed is not FAT32 or exFAT (eg NTFS) then you will need to format your SD card. This can be done easily by right-clicking on your drive and selecting Format. Formatting your drive will ERASE all files on the drive. Backup any files that you would like to keep off of the SD card first!

Select FAT32 or exFAT from the File System drop down and click on Start.

Setup SD Card

The firmware of the SAROO and your games need to be copied to your SD card in specific directories. The required files can be downloaded from the releases page on tpunix’s GitHub repo. Version 0.3 is the latest at the time of writing. Download the firmware zip (not Source code (zip) or Source code (tar.gz)).

Release page

Once the firmware zip file has downloaded open it up. There should be a single directory called SAROO. Simply drag and drop (extract) this directory to the root (top level) of your SD card. If your SD card has been freshly formatted your SD card should now just have a single SAROO directory.

Set the menu language

By default the SAROO menu will be in Chinese. This can be changed by editing the /SAROO/saroocfg.txt file or from v0.4 onward the language can be changed from within the menu by pressing the left shoulder/trigger button. To set the language in the config, open the saroocfg.txt in Notepad (or similar editor) and look for the lines:

[global]
lang_id = 0

The 0 can be changed to any of the following:

  • 0 Chinese
  • 1 English
  • 2 Brazilian Portuguese
  • 3 Japanese
  • 4 French (v0.4+)
  • 5 Russian (v0.4+)
  • 6 Traditional Chinese (v0.4+)
  • 7 German (v0.4+)

Game Files

Game images need to be in their own directory within the /SAROO/ISO/ directory. Despite the name of the directory, ISO files are not supported (as of v0.3) and instead they must be in BIN/CUE format. You can either rip your own games or use your Google skills and find them on the internet. Each game can have multiple .bin files but only a single .cue file.

In the example below I have created the directory /SAROO/ISO/Command & Conquer (USA) (Disc 1) (GDI Disc)/ and placed all 12 of the .bin files for Command & Conquer GDI Disc along with the single .cue file.

Firmware Update

Updating the firmware can be done from the SAROO menu itself. To update, place your update files (eg mcuboot.bin and ssmaster.bin) into the /SAROO/update/ directory on your SD card. Then put the SD card into the SAROO and boot up your Saturn.

If you are updating from v0.2 or earlier, then keep ramimage.bin (can be found in the older release files) in the root of your SD card until after the update. Once it has been updated to v0.3 ramimage.bin can be removed.

From the SAROO menu there should be an option at the bottom called Firm Update (or 固件升级 if your menu is in Chinese). Select this option by highlighting it and pressing A. If all is successful you will see the message Update Finish! Please PowerOn again! (升级完成,请重新开机!) at the bottom of the screen. Restart your Saturn and the Firm Update option should be gone and your SAROO is now updated.

Full SD Structure

With everything set up correctly you should end up with a SD card with the following directory structure (as of v0.3):

/SAROO/
    /BIN/
    /ISO/
        /<Your Game>/
            <Your Game (Track 1)>.bin
            <Your Game (Track X)>.bin
            <Your Game>.cue
        /<Your Game 2>/
            <Your Game 2 (Track 1)>.bin
            <Your Game 2 (Track X)>.bin
            <Your Game 2>.cue
        kof95.bin
        readme.txt
        ULTRAMAN.BIN        
    /update/
        mcuboot.bin    ---- Will not be here after updating
        ssmaster.bin   ---- Will not be here after updating
    mcuapp.bin
    saroocfg.txt
    ssfirm.bin

Configuring Game Settings

Some games require some extra configuration to work correctly. This can be configured per game within the /SAROO/saroocfg.txt file. Opening this file you will see that there are already some games configured. Each game can have a single section with one or more settings, the format is:

[<Game ID>]         # eg [T-14411G  V1.001]
sector_delay=XXXX   # Delay before PLAY starts, eg 2000
play_delay=XXXX     # Delay after each sector is read, eg 4000
exmem_1M            # Use 1M expansion card
exmem_4M            # Use 4M expansion card
multi_disc="XXX"    # Specify the directory format for multi disc games eg "Disc " or "CD". (v0.4+ only)

Which values to use will require trial and error but some games have been tested by williamdsw and they have compiled a list of values that you can try. Future updates may make any settings configured no longer required or may need to be tweaked again.

Update: I have created a list of game IDs which can be found here.

The <Game ID> value must match the game your creating the setting for and be exactly 16 characters in length, this includes the spaces before the version number. I am not sure if anyone has compiled a list anywhere, but it is easy enough get the value yourself using a hex editor such as HxD and inspecting the first (likely the largest) .bin file for your game.

Finding the game ID

With the .bin file open, the game ID can be seen on the right-hand side in the Decode text column. Setting the column size to 16 bytes will make this easier. Make sure you have the right number of spaces between the two values so that the total length is 16 characters.

Troubleshooting

Since SAROO is still in development there will be bugs or some games will refuse to work correctly. Check tpunix’s GitHub repo for updates.

My SD Card doesn’t work

I have had similar issues in the past with other devices not liking cheap SD cards found on places like eBay or AliExpress. Use a known brand SD card and make sure it is formatted correctly.

Game X doesn’t work or crashes

Try playing around with the settings for the game in saroocfg.txt or check the open/closed issues on GitHub for any discussion on why your game doesn’t work. Failing that, wait for the next release to see if that fixes it.