SaturnDave (Sega Saturn, SHIRO!)

Should You Buy a SAROO Saturn Flash Cart?

The SAROO (SEGA Saturn flash cart) project by TPUinx has been building steam over the past year since our initial coverage, and many folks have picked one up to see what all the fuss is about. From the project’s initial conception a decade ago to its dormancy and revitalization, it finally came to market last year through various Chinese vendors on AliExpress. This versatile open-source FPGA-powered flash cart loads games from Micro SD, in addition to doubling as a 4MB RAM and Backup Memory cart. So, should folks run out and buy one right now?

The old Cyclone IV FPGA powers SAROO

Well, it took us a year to finally ‘bite the bullet’ and grab one, as we were patiently awaiting a major hardware revision (in the form of a planned FPGA replacement). However, there’s no stopping progress, and while we were busy waiting, many enterprising Chinese vendors moved in and ran with the existing schematic as it was, building and selling their own versions of the flash cart.

Fast forward a year, and we’ve had word from TPU (through colleague TZMWX) that the SAROO hardware will, in fact, NOT CHANGE, so it’s no longer possible for us to ignore the giant ‘elephant in the room’ that SAROO has become…

TZMWX confirming SAROO hardware finalized.

Add to that the fact that Bob reached out and sent us these nifty injection-molded cases from J&T Studio care of Martin from RGR Retro Game Restore, and we had yet another reason to finally grab a SAROO…

However, when we went to buy our own SAROO boards, we held our breath a bit as we clicked ‘buy it now’. Since there are so many different vendors on AliExpress and eBay building and selling their own SAROO carts, the level of quality and support out there varies wildly. And this is because many of the currently available boards use second hand parts and rely heavily on modified/forked firmware versions that differ greatly from the official and currently stable one.

It’s a virtual ‘mine field’ of hit-or-miss vendors & carts on AliExpress…

All this really comes down to the age of the SAROO project… While the semiconductor shortage has subsided to a degree, SAROO is STILL a near decade-old project, and that means that many of the board’s parts have become OBSOLETE in terms of sourcing them through reputable parts distributors. This has resulted in many vendors relying on new-old-stock parts and even pulling second hand chips from scrapped e-waste in order to build and sell SAROO at a price low enough to entice new buyers away from existing solutions already out there. With some buyers complaining of BRICKED CARTS when flashing new firmware SAROOs made with second hand chips, it’s been difficult for SHIRO! to easily recommend SAROO without some reservation

It’s not always clear which vendors are using scrap parts…

However, based on feedback from folks like TZMWX and cyo on Twitter, the Retro Game Paradise Store seems to be the safest bet for now, as it’s a well known and reputable vendor in China that does not use second hand parts or modified firmware. So that’s what we bought, and that’s what we are currently recommending to folks reading this and thinking about grabbing one for themselves.


UPDATE: Many sellers who received criticism for using second-hand chips and concerns regarding bricked carts have now responded by offering “ELITE” versions of the cart basically using new-old-stock chips (which are harder to obtain) for a premium price, while still offering the cheaper option using second hand chips for folks who don’t mind ‘rolling the dice’…

SAROO boards purchased from the Retro Game Paradise Store

Once our SAROO boards came in, we were excited to try out the new J&T case we got from Bob, and we were pleasantly surprised at what a perfect fit was. This case looks very sharp, and it’s honestly the best one out there as far as we’re concerned!

In fact, the J&T Studio cases are much better than those that optionally ship with SAROO for about $21 extra on AliExpress… The injection mold seems to be of a higher resolution, and the plastic used is of a higher quality, feeling more premium in the hands. Highly recommended!

Once we had the cart all put together and decorated, it was time to play some games, and that’s where we ran into a few more ‘bumps in the road’… There’s a lot of conflicting information out there from several different sources, as many of these carts come with their own modified/forked firmware, and most of the info currently out there is also completely in Chinese… So we had to do a fair bit of ‘reading up’ before jumping right in.

Here’s the SAROO all put together and decorated to match the OEM Backup Memory Cart.

For starters, it’s best to go straight to the source, TPUnix’s official Github project page. There, you’ll find the latest firmware version 0.4. After unzipping the archive, you’ll find a SAROO folder that needs to be copied to the root of a FAT32 or exFAT formatted MicroSD card. Then, you’ll need to create two new folders inside the SAROO folder called ‘ISO’ & ‘UPDATE’.

Once this is done, your SD card should look something like this:

NOTE: To reduce potential risk of bricking carts when flashing new firmware updates, TPU has implemented a new system whereby firmware updates are simply accessed from the SD card directly (ssfirm.bin & mcuapp.bin). When upgrading firmware, you’ll simply replace these files in the SAROO folder.

One thing that sets SAROO apart from other ODEs is the fact that it completely bypasses Saturn’s CD Block. This means it has the potential to load games faster than the other ODEs, however, this perceived benefit also leads to potential timing & compatibility issues with several commercial games. That means it’s necessary for such games to have their own individual settings added to the saroocfg.txt config file in order to dial in the timing for each title to ensure proper performance & compatibility. It’s still very early days for SAROO, and folks are in the process of testing each game and finding the proper configuration, however, this will likely end up being as trivial as downloading a template config file and calling it a day, similar to the RetroTINK scalers.

Another side affect of bypassing the CD Block is that SAROO is not compatible with VCDs or MPEG games, so despite the fact that using SAROO keeps your VCD card slot open (as opposed to Satiator), you can’t actually benefit from using a VCD card in your Saturn. This is definitely not a deal breaker, but it’s something to be aware of, regardless.

Since the project is open source and there are so many different versions being sold, there doesn’t seem to be a central forum or community where a unified effort is being made to help debug SAROO, and that makes it feel a bit disjointed when compared to other solutions out there.

Most folks reading this article will probably want to change SAROO’s default menu language to English, which can be done by editing the line:

[global]
lang_id = 0

to lang_id = 1

Once this change is made and you save config the file, your SAROO should boot in English by default, though you’ll still be able to cycle through menu languages by pressing the L-trigger on your controller.

When it comes to adding games to the SD card, .ISO, .BIN/.CUE & .IMG/.CUE formats are supported (multi-track games with more than one .bin file are also supported). You’ll need to create a different folder to house each game bin/cue, and one thing you will notice when firing up the SAROO for the first time is that games are sorted in the order that you dropped them onto the SD card. That means that even if you have everything in alphabetical order, if you happen to add a new game image, it goes to the bottom of the list regardless of what letter it starts with. This is due to the amount of compute power required for automatic sort, especially when working with Chinese characters (for English only, it’s not nearly as power intensive).

The current workaround for this is to CUT all of the game folders in the ISO folder, PASTE them into a new folder outside the ISO folder, SORT them by name, CUT them again and finally PASTE them back into the ISO folder… YIKES! I’m sure it won’t be this way forever, but this is the kind of thing one has to get used to if buying into the SAROO at this early point in time…

However, if you want all that cut & paste nonsense done for you automatically, check out SDSorter or DriveSort, which should be able to override the way FAT32 orders the files on the disk, enabling Alphabetical order. NOTE: Your SD card needs to be formatted in FAT32 to be able to take advantage of these programs.

Alternatively, if you are interested in trying out an unofficial firmware fork, Martin of Retro Game Restore has a nice custom firmware version that does support alphabetical sorting! NOTE: Alphabetical sorting is compute intensive for Saturn especially when using Chinese characters, however, when using filenames with only English characters, it’s not nearly as bad, and any resulting menu delay should be minimal.

Martin’s custom SAROO firmware

It’s also important to note that at the time of writing this article, that all currently public SAROO firmware (both stock and custom) DO NOT support soft reset back to menu. While folks like YZB do have this feature working in private test firmware, it’s not yet been made available to the public.

Because SAROO uses Saturn’s Cartridge port, it takes boot priority over any other device, including discs, ODEs & even Satiator. However, this means that if you already have a Satiator, you can leave it plugged in, and you don’t have to worry about the SAROO conflicting with it. When you boot to the SAROO menu, simply select ‘System CD Player’ and the next device on the priority list (in this case, Satiator) will take over. Then if you still want to get to the CD Player Menu / Memory Manager, you’ll do that from the Satiator menu.

System CDPlayer ‘passes the baton’ to the next in command, in my case, Satiator.

As mentioned previously, SAROO has the potential to be very fast, as it’s not locked down to the same speed as the CD-ROM drive like other ODEs are. This means that, as long as a given game is not sensitive to timing issues, you may experience in-game loading times significantly shorter than that of a CD-Rom or even other ODEs! That said, the initial boot speed seems on par with a Satiator running the stock menu.

Another great thing about SAROO is that it uses it’s own virtual ‘internal memory’ for each game (never actually touching your Saturn’s true internal memory). When you boot any game via SAROO, it will create a new save that is stored directly on the SD card and will be loaded automatically anytime you boot that game up again. However, this will not be reflected in your Saturn’s true internal memory. If you would like to play a game using a save that is located on your system’s physical internal memory, you can boot the game using the Z button to do so.

There is currently a memory manager utility available care of zny1982, however, it is entirely in Chinese, so use it at your own risk…

Here’s a link to a very nice configuration guide to help get folks up and running with their new SAROO carts: https://elephantflea.pw/2024/02/saroo-configuration-guide

Here is an excellent full compatibility list: https://github.com/williamdsw/saroo-compatibility-list

Those interested in running English translation patches or homebrew games will likely need to build those game images in .BIN/.CUE in order for them to work properly, which can be done easily with the Sega Saturn Patcher utility by Knight0fDragon. Homebrew games & patches may also require their own entry in SAROO’s config file in order to properly boot as well.

All things considered, SAROO is definitely an exciting project and product, however, it still needs a bit of time to realize it’s full potential. As of right now, commercial game compatibility seems to be the sole focus of TPUnix and resellers, and that means there’s been no concerted effort to make SAROO more friendly for the development community. While a serial USB footprint is present on the board, it’s not currently being implemented for debugging, like the Saturn USB Dev Cart, and this feels like a bit of a missed opportunity, at least for now…

Since the SAROO occupies Saturn’s cart slot, that also means that Online NetPlay via the NetLink or XBand cartridges is out of the question, however, if the serial USB port could be implemented, NetPlay through a tunnel could be a very real possibility. This is something we’ll have to hope for and check back on in the future.

Due to it’s FPGA-powered nature, SAROO has loads of additional potential that we may see unlocked over the years to come, and that’s what really makes it an exciting project to follow. We do feel a design update may be necessary in order to swap out obsolete parts with currently available alternatives, which might require different footprints on the PCB, meaning an updated layout altogether. If such a thing does happen, there could be a new generation of SAROO carts that end up displacing the current design. While there’s no guarantee this will happen, it’s something to keep in mind…

As for the initial question of whether or not you should go out and grab your own SAROO cart, we’d say that while you may need to exercise some caution when buying one and perhaps a bit of patience when setting it up, it’s not a bad way to spend $50~$100, and it’s a far cry cheaper than any other options currently available. A true ‘FLASH CART’ is exactly what the Saturn scene has been waiting for, and SAROO certainly fits the bill. Poised as the perfect solution for folks who are just looking to play some commercial games for cheap, as long as you aren’t concerned about the absence of debug/development support, VCD compatibility or NetPlay, we think you’ll be happy grabbing a SAROO in 2024!

Liked it? Take a second to support SaturnDave (Sega Saturn, SHIRO!) on Patreon!