| | Atlas
Demo Demo Loader for SEGA Saturn
by The Rockin'-B, [url]www.rockin-b.de[/url]
version 05/10/09
Atlas is a fully customizeable bootloader
for run on SEGA Saturn videogame system.
(similar to the Self Boot Inducer method for Dreamcast)
Features:
- up to 50 games per disc
- multiregion disc
- multitap and pad disconnection support
- resolution 352x224
- 4 methods of per-game info
- fully customizable
- 3D display
Controls:
LEFT / RIGHT - change selected game
NOTE: when releasing LEFT/RIGHT
1. the audio file playback is stoppe
2. the selected game info screen is loaded from CD
3. and the audio file is played back, if present
-> so there might be a short wait time involved
START - boot selected game
A - show game info screen
B - back to main screen
C - credits screen
A or Y or Z - play game audio information
START+A+B+C - exit Atlas and return to multiplayer
Things to customize:
Atlas:
- main screen image (352x224, 15bpp)
- credits screen image (352x224, 15bpp)
For each game (not required, optionally):
- thumbnail screenshot sprite (64x64, 15bpp)
- info screen image (352x224, 15bpp)
- audio file (.AIF, supports ADPCM, up to 60min)
- text file with:
- CDDA start track specified
- info text (up to 8 lines of up to 20 characters)
Not customizeable:
- title screen
- title sound
- button help sprites
- button mapping
- default data (if not available)
for "GAMENAME.IMG", "GAMENAME.SPR", "GAMENAME.TXT"
How to customize:
1. create temporary folder "myAtlas"
2. create an ISO:
2.1 create folder "cd" in "myAtlas" and
put the 8 Atlas files in:
0.bin
ABS.TXT
ATLAS.IMG (your custom)
BIB.TXT
CREDITS.IMG (your custom)
CPY.TXT
FLD_KNL.BIN
README.TXT (your custom)
2.2 download and extract Mkisofs.exe and Cygwin1.dll
into "myAtlas"
2.3 create file "MAKEISO.BAT" into "myAtlas":
mkisofs -quiet -sysid "SEGA SATURN" -volid "SaturnApp" -volset "SaturnApp" -publisher "SEGA ENTERPRISES, LTD." -preparer "SEGA ENTERPRISES, LTD." -appid "SaturnApp" -abstract "ABS.TXT" -copyright "CPY.TXT" -biblio "BIB.TXT" -generic-boot ip.bin -full-iso9660-filenames -o myAtlas.iso cd
2.4 add game data
for each game add data into "cd":
(see below how to create)
"GAMENAME" <- folder with all files on game CD
"GAMENAME.IPI" <- game ip.bin
"GAMENAME.IMG"
"GAMENAME.SPR"
"GAMENAME.TXT"
"GAMENAME.AIF"
2.5 put Atlas' "ip.bin" into "cd"
3. create a .CUE sheet:
CDDA tracks of a game MUST BE consecutive.
First track of a game MUST BE the same
like specified in "GAMENAME.TXT".
Here it would be
"2" for "GAMENAM1.TXT" and
"5" for "GAMENAM2.TXT".
Example "myAtlas.cue" sheet:
FILE "Atlas.ISO" BINARY
TRACK 01 MODE1/2048
INDEX 01 00:00:00
POSTGAP 00:02:00
FILE "GAMENAM1_Track1.wav" WAVE
TRACK 02 AUDIO
PREGAP 00:02:00
INDEX 01 00:00:00
FILE "GAMENAM1_Track2.wav" WAVE
TRACK 03 AUDIO
INDEX 01 00:00:00
FILE "GAMENAM1_Track3.wav" WAVE
TRACK 04 AUDIO
INDEX 01 00:00:00
FILE "GAMENAM2_Track1.wav" WAVE
TRACK 05 AUDIO
INDEX 01 00:00:00
FILE "GAMENAM2_Track2.wav" WAVE
TRACK 06 AUDIO
INDEX 01 00:00:00
4. burn "myAtlas.cue" sheet with Nero, CDRWin or other
How to create custom data:
Filenames are importand (8.3 format).
Each game MUST HAVE:
"GAMENAME" - a folder where the game files are in
"GAMENAME.IPI" - an IP.BIN file
Each game CAN HAVE (not required, optionally):
"GAMENAME.IMG" - info screen
"GAMENAME.SPR" - thumbnail screenshot
"GAMENAME.TXT" - text file
"GAMENAME.AIF" - audio file
"GAMENAME.IMG" full screen image (352x224, 15bpp):
"ATLAS.IMG" main screen:
"CREDITS.IMG" credits screen:
1. save as "GAMENAME.TGA",
size MUST MATCH width=352 and height=224
2. use BGCON to convert it to Saturn format
(uncompressed raw bitmap 15bpp binary)
2.1 create TGA2IMG.TXT:
CD 15
IF TGA
IM BITMAP
CMP NONE
RGBHI ON
TRANS -1
OF BIN
L atlas.tga
S atlas.img
L CREDITS.tga
S CREDITS.img
L GAMENAME.tga
S GAMENAME.img
.....
2.2 create TGA2IMG.BAT:
BGCON.EXE TGA2IMG.TXT
3. convert by opening TGA2IMG.BAT
"GAMENAME.SPR" thumbnail screenshot sprite (64x64, 15bpp)
1. save as .TGA,
size MUST MATCH width=64 and height=64
2. use BGCON to convert it to Saturn format
(uncompressed raw bitmap 15bpp binary)
2.1 create TGA2SPR.TXT:
CD 15
IF TGA
IM BITMAP
CMP NONE
RGBHI ON
TRANS -1
OF BIN
L GAMENAME.tga
S GAMENAME.img
.....
2.2 create TGA2SPR.BAT:
BGCON.EXE TGA2SPR.TXT
3. convert by opening TGA2SPR.BAT
"GAMENAME.TXT" text file:
- first line specifies the CDDA start track
(default: 2)
- following 8 lines are printed to screen AS IS
(up to 20 characters, beyond 20 are skipped)
"GAMENAME.AIF" audio info file:
- up to 60 minutes long
- can be ADPCM encoded
"GAMENAME.IPI" ip.bin file:
- this file is in the first couple of sectors of a Saturn CD.
In some homebrew Saturn games it's included as a file.
In all other cases such like commercial game,
You'll have to extract the first sectors (< 30) of a CD or CD image
with IsoBuster and remove the zero bytes after the IP.BIN with a hex
editor. Usually IP.BIN's are 4-5 kBytes size,
Special thanks to VBT, who made the
MultiBoot Demo Demo Loader
for SX Saturn Coding Contest 2003. |