Sonic CD Files

Introduction, Root Directory

This section describes Sonic CD files - to make a short story long, each PC game constists of files. If you know what each file does, or what importance does the file have to the workings of the game, hacking suddenly becomes very easy. So, let's get started already.

First, the Sonic CD root directory file listing (default: C:\Sega\Soniccd\):


Soniccd.exe - The Sonic CD executable
Sonic_p5.exe - Self-booting play-install-uninstal menu
Msmixmgr.dll - Sound driver, I guess
Sonicdlg.dll - Routines needed for graphic decryption, I think
Snctime.dll - Kernel definer
Key11a.bin - Demo mode (Palmtree Panic act 1 Present)
Key43c.bin - Demo mode (Tidal Tempest act 3 Good Future)
Key82a.bin - Demo mode (Metalic Madness act 2 Present)
Special1.bin - Demo mode (1st Special Stage)
Special6.bin - Demo mode (6th Special Stage)
Loading.bmp - Loading picture (DUH!)
Miyake3.bmp - Bonus picture
Yama_l3.bmp - Bonus picture
Yama_r3.bmp - Bonus picture
Hoshino3.bmp - Bonus picture
Nisimur3.bmp - Bonus picture
Sanpei3.bmp - Bonus picture
Sonic.ttf - Sonic CD font (not the actual-game one)
Readme.txt - Well, uh...a readme file...
Pcm8.cmp - Sound effects (e.g. Sonic jumping, ring count, time travel...)
S_score.dat - High scores (?)
T_bg.bmp - A nicely rendered picture of Sonic CD title screen, it's purpose is a mistery
Sonic.hlp, Sonic.gid - Sonic CD Manual
Sonic.ico - Sonic CD icon

Levels

The levels are set in subdirectories called R_. For example, Palmtree Panic has the number R1 and Wacky Workbench has number R6.

soniccd/R1

Acts and Time Periods are set in following directories:

R1 (Palmtree Panic)
R1/11a - Act 1 Present
R1/11b - Act 1 Past
R1/11c - Act 1 Good Future
R1/11d - Act 1 Bad Future
R1/12a - Act 2 Present
R1/12b - Act 2 Past
R1/12c - Act 2 Good Future
R1/12d - Act 2 Bad Future
R1/13c - Act 3 Good Future
R1/12d - Act 3 Bad Future

You can see why it is impossible to do timewarp in act 3: Past and Present simply don't exist! However, by copying a Present level into act 3, you will be able to do timewarp (thanks to YarHarHar for this one), but I will explain that later.

If you take R1/11a (for example) dir and open it, you will see five files:


Dll11a.dll - ? (Holds the instructions for game - in other words, Don't Touch)
Map11a.bin - Object Placement
T11a.map - Floor Layout
Scmp11a.cm_ - Compressed Graphics (Level Sprites)
Tcmp11a.cm_ - Compressed Graphics (Level Tiles)

Some levels, like Metallic Madness, have six files. The odd one is called Tchg???.cm_ (First question mark: zone, second question mark: act, third question mark: time period). I don't know what it is there for, but it could store some special effects. Odd, but while Microsoft Expand can expand the rest, it can't be done with this one...perhaps it stores images that require higher compression levels Expand simply can't handle.

Special Stages

Special stages are stored in /special directory. They are in done in something similar to SNES' patented Mode 7 - that means that although the course a 2D bitmap (or vector drawing, I'm not sure) angled so it looks 3D, all of the objects are sprites and/or floating bitmaps.

/map:
sp0map.map - level map for special stage 1
sp1map.map - level map for special stage 2
...
sp7map.map - level map for hidden special stage
'Maps' are basicaly bitmaps (or vector drawings), angled so they look like 3D courses Sonic runs on.

/bmp/fix: (special stage graphics)
clrback.bin - default background color
egg.bin - Robotnik background for secret special stage
S1a0.bin - special stage 1's multiple scroling background layer 1
S1a1.bin - special stage 1's multiple scroling background layer 2
S1b0.bin - special stage 1's multiple scroling background layer 3
S1b1.bin - special stage 1's multiple scroling background layer 4

/cg:
sp1cg32.cm_ - special stage 1 tiles
sp2cg32.cm_ - special stage 2 tiles
...
sp8cg32.cm_ - secret special stage tiles

This is all you need to know about files (any further knowledge might have hurt your copy of Sonic CD, well, reinstalling might help...) to do some safe, protected hacking. ^_^

Back To Main