Burning Sega CD and Saturn Games on Linux
Kahuna over at SegaXtreme has written up a detailed tutorial on how to burn Sega CD and Sega Saturn backup CDs using Linux. I figured I should post this as it’s a nice complement to my guides for Ripping and Burning BIN/CUE and ISO/MP3 images using Windows. I assume this method also works for some other older systems like Neo-Geo CD, 3DO, and even Playstation.
The original page and it’s comments can be found on this SegaXtreme thread, but I thought it would be benificial to re-post it here.
I wrote this HOWTO because I’m a hardcore *nix user and also a big fan of my Saturn. I’ve used these techniques under FreeBSD 4.8 and Redhat Linux 9, but they should also work for your distribution of *nix, provided you have all the software installed correctly. There’s virtually nothing out there in the way of tutorials for Saturn/Sega CD burning for Linux/Unix. I’ve developed these by reading man pages, searching google, and trial and error basically for the sole purpose of avoiding the pain of booting into my windows partition.
I won’t cover the basics of Burning, since it’s already covered on SegaXtreme and I really don’t want to reinvent the wheel here. If you need a basic grounding in SCD/SAT burning, I suggest that you go to http://www.litespeedcomputers.com/sx/ for a basic tutorial and list of tools. I also will not cover getting CD burning to work in your *nix system. I will assume that you already have that figured out. If you don’t, for linux, you’ll want to check out the excellent CD-Writing HOWTO at http://www.tldp.org/HOWTO/CD-Writing-HOWTO.html
Also, I need to say that this HOWTO is not a guide to pirating software, but provides a way for you to backup your precious and rare games which are no longer being made. I, the author of this guide will not be responsible for the use/misuse of the information herein. The author of this guide is not reponsible for any damage to hardware or software on the console or PC as a result of following this guide. In other words, if you screw up, it’s all your fault.
These software packages are required to burn SCD/Saturn backups on a *nix system. There are other ways to do things described here. You can mix and match different tools that you’re comfortable with at your discretion.
*the* DAO cd burning software package for *nix. There’s a few other commercial alternatives out there, but this one hasn’t given me any coasters yet.
Command line MP3 player for *nix. Can also output wave files. If you don’t have an objection to the license terms, use this, since anecdoatal eveidence says that this one is faster.
A GPL alternative to mpg123 for the free software fanatic.
This is the unrar software for linux. Many people use rar to archive their backups, and this program is just nice to have around.
A SFV checker for linux.
My utility for creating TOC sheets for use with cdrdao out of lists of files.
python 2.3 :
Needed for sat2toc.py
This is the linux version of the satconv country code changer software.
Burning cue/bin images:
Cue/Bin images are easy to burn with cdrdao. You may want to use satconv on the bin before you burn it. To burn with cdrda o, you’ll need to know what driver your cdrw uses. You can find the info at http://cdrdao.sourceforge.net/drives.html.
The command to burn a cue/bin with cdrdao is:
cdrdao write –driver
as an example, I would type:
cdrdao write –driver generic-mmc-raw –device 0,0,0 –speed 2 mygame.cue
I always burn at 2 speed, since I seem to get better copies that way. The only real way to figure out the max of your burner and media is to experiment. You can also use the -eject option if you want the cd to be spit out when it’s done burning.
ISO+MP3 is a little bit more tricky to burn with cdrdao. the MP3 files must first be converted to wave format, and cdrdao cannot understand ISO+WAV cue sheets, so we must make a TOC file for use with cdrdao.
Convert MP3 to WAV:
It’s easy to convert a bunch of MP3 files to wav format in *nix. In the bash shell (or bourne shell), you can do them all in 1 command with mpg123 and some shell magic:
for i in *.[mM][pP]3; do mpg123 -w $i.wav $i;done
After running the command you should have a bunch of wav files that are the same name as the mp3 files with .wav tacked onto the end. You can delete the MP3 files, as we no longer need them. The next step is to create a TOC sheet for the ISO+WAV files that we have in the working directory.
Here is a sample TOC sheet to get you started:
ZERO 00:02:00 // post-gap
SILENCE 00:02:00 // pre-gap
FILE “Track_2.mp3.wav” 0
FILE “Track_3.mp3.wav” 0
FILE “Track_4.mp3.wav” 0
Just change the name in the FILE line to the ISO and WAV files and add additional audio tracks as needed. This will seem easy if you are used to cue files.
Another alternative is to use the sat2toc python script that I’ve provided.
As an example (assuming the only wav files in this directory belong to my game):
python2.3 sat2toc -t Mygame.toc -i Mygame.iso *.wav
Once your TOC file is finished, you can burn your backup. the cdrdao command is exactly the same as it is for the cue/bin example, except you’ll use the TOC sheet file in place of the cuesheet.
cdrdao write –driver generic-mmc-raw –device 0,0,0 –speed 2 Mygame.toc
Wasn’t that easy?
Most games can be recorded with just a couple of commands on the command line. Once you master this, you’ll be burning games faster and with less effort than you ever have on windows.
So long for now. In a while, I’ll post a thread about ripping SCD/SAT games on *nix.
Additional needed files can be found here
Thanks again to Kahuna for this guide!