Simplest Way to Add Files to Saturn ISO?

slinga

Member
I'm trying to insert a save game file into the Save Game Copier ISO without having to recompile. When I used Windows I believe Magic ISO let me insert files and save it as a valid Saturn ISO. When trying on Linux with mkisofs It looks like the file gets inserted, but the Saturn game header is removed meaning the game will no longer boot.

What do you recommend? Thanks in advance.
 

Jameson

Gear Supporter
You can extract IP.bin with dd, then add the file with mkisofs, then insert the IP.bin back. Or, if you have the IP.bin already precompiled/available, you can skip the first step.
 

dibz

Boss
Staff member
CDMage I believe can insert files like that, and works fine with wine (I use it all the time in linux). Jameson's suggestion is better in my opinion though.
 
CDMage only lets you replace existing files with ones the same size or smaller. You can't add new files as far as I know. The only way to do that is to rebuild the ISO either with mkisofs, or with the official VCDTOOLS from Sega.
 

Jameson

Gear Supporter
Keep in mind that dd does not support multiple input files, so to insert IP.bin back, you'll need 2 steps, something like this:
Bash:
cp IP.bin complete_image.iso
dd if=changed_image.iso skip=1 bs=size_of_IP_bin >> complete_image.iso
where you replace size_of_IP_bin with a real value.
 

rorirub

New Member
The last time I did this, I think I just made an iso file normally and then add the IP sectors with a hex editor manually.
 

slinga

Member
Here are my instructions:

# mount the original
mkdir /tmp/sgc_custom
sudo mount -t iso9660 -o loop sgc_original.iso /mnt/
cd /mnt/
tar cf - . | (cd /tmp/sgc_custom; tar xfp -)

# make the necessary changes
# remember that filenames must be in 8.3 format>
cd /tmp/sgc_custom/SAVES
<add\delete saves as needed>

# convert your changes back into an iso
mkisofs -o sgc_modified.iso /tmp/sgc_custom

# insert the boot headers from the original iso into the modified
dd conv=notrunc if=sgc_original.iso of=sgc_modified.iso bs=1 count=32768
 
Top