If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!
Proto:Sonic the Hedgehog 3
This page details one or more prototype versions of Sonic the Hedgehog 3.
This prototype is documented on Hidden Palace.
| Download Sonic the Hedgehog 3 (Nov 3, 1993 prototype)
File: Sonic the Hedgehog 3 (Nov 3, 1993 prototype).bin (2 MB) (info)
|
| This page or section needs more images. There's a whole lotta words here, but not enough pictures. Please fix this. |
To do:
|
The November 3, 1993 prototype of Sonic the Hedgehog 3 was made at a time where the game was starting to be split into two separate games. It is in a very unfinished state, though it contains a number of interesting things, including an early version of Flying Battery Zone, early sprites and different music that would later be re-purposed for the Sonic & Knuckles Collection on PC.
It was released on November 16, 2019, as the finale of Hidden Palace's Sonic Month.
Contents
- 1 Notes
- 2 Gameplay Differences
- 3 Graphical Differences
- 4 Audio Differences
- 5 Title Screen
- 6 Level Select
- 7 Stage Differences
- 7.1 Angel Island
- 7.2 Hydrocity
- 7.3 Marble Garden
- 7.4 Carnival Night
- 7.5 Flying Battery
- 7.6 IceCap
- 7.7 Launch Base
- 7.8 Mushroom Hill
- 7.9 Sandopolis
- 7.10 Lava Reef
- 7.11 Sky Sanctuary
- 7.12 Death Egg
- 7.13 The Doomsday
- 7.14 Zone ID $0D
- 7.15 Azure Lake
- 7.16 Balloon Park
- 7.17 Desert Palace
- 7.18 Chrome Gadget
- 7.19 Endless Mine
- 7.20 Zone ID $16
- 7.21 Zone ID $17
- 7.22 Gumball Machine
- 7.23 Glowing Spheres
- 7.24 Slot Machine
- 7.25 Special Stage 1
- 7.26 Special Stage 2
- 8 Unused Objects and Enemies
- 9 Unused Graphics
- 10 Lost Data
- 11 Source Code
Notes
- While the EPROMs date the ROM to November 3rd, the header suggests that it was built in October.
- Leftovers from Star Trek: The Next Generation, and even earlier builds of Sonic 3 linger at the end of the ROM.
- The prototype is region free, unlike the final.
Gameplay Differences
- Sonic has a Drop-Dash-esque move that can be performed by jumping while pressing Up.
- Elemental shields lack their specific effects.
- Special Stage rings aren't present.
- The insta-shield isn't present yet.
- Even though sparkles appear above checkpoints when Sonic has 50 rings, the bonus stages are inaccessible through normal play.
- It's very easy to clip into walls due to unfinished collision.
- Tails will fly instead of swim when attempting to fly underwater, and is capable of carrying Sonic underwater.
- Tails cannot get tired from flying or swimming.
- Super Sonic has been partially implemented, and has the ability to shoot rings, which was removed from the final.
- The demo of Angel Island 1 is a bit different, and also desyncs.
- The debug mode "animation test" accessed by pressing B + C in debug mode has not been implemented.
- Many stage transitions have not been properly implemented yet, so the level select is required to continue to the next zone in most cases.
- Objects that Sonic can hang onto still act like Wing Fortress's from Sonic 2 in that Sonic won't curl into a ball when jumping off, and his animation stays the same.
- Overall, the Competition Mode levels are more complete than the single-player ones, and even feature the final game's player sprites. There are still some things that were changed, however.
- The Grand Prix and Time Trial modes (as well as the monitor options) do not exist as a result of a lack of menu for the mode.
- The prototype features little markers near the black line that show the positions of the two players. They often change between three sprites for unknown reasons. These were removed in the final game, yet their sprites still exist within the data.
- The lap counter uses the blue/yellow palette of the "TIME" text, instead of the final's red/white palette.
- It's possible to complete a lap by jumping over the goal post.
- The game will declare a GOAL at lap 6 rather than the final's lap 5, but the race never ends. As a result, races can go all the way up to Lap 9, which results in it rolling over to 0 and continuing from there.
Super Sonic
Coding for Super Sonic exists even though the Special Stages haven't been created yet, thereby preventing you from gaining any Chaos Emeralds. He can only be accessed by destroying an S monitor. Most of the code is reused from Sonic 2, with a few adjustments: the invincibility music plays instead of using a unique track, and the palette cycling has been adjusted to only use three colors in Sonic's palette instead of the four colors that Sonic 2 required. However, the actual colors used are still based on Sonic 2's palette format (Where the darkest blue in Sonic's palette is indexed first, followed by progressively lighter shades of blue) instead of Sonic 3's format (Where the lightest blue color is indexed first, followed by darker shades). As such, the palettes for both Super Sonic and Sonic's palette after the transformation runs out are glitched.
Graphical Differences
- Sonic and Tails' sprites are the same as the ones in Sonic 2, albeit updated for Sonic 3's palette with some new sprites.
- Fire shields always overlap the player.
- The HUD numbers has some shading that were removed from the final. The shine on the HUD text is also larger.
- Neither Sonic nor Tails have victory poses, instead using their "hurt" sprites upon finishing an act.
- The bubble shield uses simpler graphics compared to the final.
- The invincibility stars are missing, but they do show up using the fire shield's graphics, if the player has a fire shield.
- Some frames for the lightning shield haven't been positioned properly.
- The game-over graphic is still the Sonic 2 sprite, and thus looks incorrect with the Sonic 3 palette.
- Title cards for levels use a different palette, and graphics from the stage load early, making the title cards garbled after a few seconds.
- A majority of object palettes are not finalized.
- The Speed Shoes and Heavy Shoes icons in Competition mode have different icons:
| November 3rd | Final |
|---|---|
Audio Differences
| To do: The music from the final game isn't ripped properly here. Use a high accuracy emulator like BlastEm, or preferably, an actual Model 1 Genesis. |
Between Sonic the Hedgehog 2 and Sonic the Hedgehog 3, the sound driver was completely replaced. In this prototype, the replacement driver is in an early state where it hasn't had features from the previous driver re-implemented yet, and it seems to suffer from some glaring bugs:
- Sounds often bug out and sustain until either the game is paused or something else plays on that sound channel.
- Various objects don't play the correct sound effect:
- The underwater "alarm" sound uses a completely different sound - likely just an incorrect ID assignment.
- Many bosses don't play sounds. This includes explosions, zooming, etc. They play one sound when being defeated.
- Collecting a ring only plays the sound for the right speaker, and doesn't alternate between the ones for the right and left (despite both sounds being present).
- The Spin Dash plays the rolling sound, much like Sonic the Hedgehog Genesis as well as some of the Sonic 2 prototypes.
- Playing a theme that would interrupt the stage theme prevents it from reloading.
- Beating an act doesn't play the act-clear jingle, it instead continues playing the stage theme.
- The Speed Shoes play the invincibility theme rather than speeding up the music - and it does not cut back to the level music when the effect ends.
- The Sonic 3 miniboss theme does not exist in this prototype. Instead, the Sonic & Knuckles miniboss theme occupies its slot, and thus plays during all miniboss fights.
- A small remnant of this exists in the final game while fighting the bosses in Hydrocity - leaving the water while the drowning countdown plays will result in the Sonic and Knuckles miniboss theme playing instead of the Sonic 3 one. This was fixed in Sonic 3 and Knuckles with the Big Shaker fight, but not with the Robotnik one.
| Sound ID | Name | November 3 | Final | Sonic & Knuckles Collection |
|---|---|---|---|---|
| $01 | Angel Island Act 1 | |||
| $02 | Angel Island Act 2 | |||
| $07 | Carnival Night Act 1 | |||
| $08 | Carnival Night Act 2 | |||
| $09 | Flying Battery Act 1 | |||
| $0A | Flying Battery Act 2 | |||
| $0B | Ice Cap Act 1 | |||
| $0C | Ice Cap Act 2 | |||
| $0D | Launch Base Act 1 | |||
| $0E | Launch Base Act 2 | |||
| $0F | Mushroom Hill Act 1 | |||
| $10 | Mushroom Hill Act 2 | |||
| $13 | Lava Reef Act 1 | |||
| $14 | Lava Reef Act 2 | |||
| $15 | Sky Sanctuary | |||
| $1A | Doomsday | |||
| $1C | Special Stage | |||
| $1F | Knuckles' Theme | |||
| $21 | Balloon Park | |||
| $22 | Desert Palace | |||
| $23 | Chrome Gadget | |||
| $26 | Sonic 3 Credits | |||
| $29 | Act Clear | |||
| $2A | 1-up | |||
| $2D | Competition Menu | |||
| $2E | Unused |
Notes
- Interestingly, certain tracks are Genesis compositions of their themes in Sonic & Knuckles Collection, suggesting those were originally intended to be used instead of the final tracks.
- The unused theme from the PC game is also present as slot $2E, which is where the Sonic & Knuckles miniboss theme is in the final.
Title Screen
| November 3rd | Final |
|---|---|
![]() |
![]() |
The title screen uses some very, very basic graphics. Specific visual differences include:
- There's no background at all - the final adds a nice skyline of Angel Island. This also means no Tails or Tornado.
- The palettes appear to be broken in some fashion. The logo banner is changed from a light blue/white to a red/white color scheme, and the logo itself was changed from dark blue with orange outlines (the way the text was presented on the box art for previous titles) to yellow with dark blue outlines. There's also no TM next to the banner.
- The model for the ring and Sonic himself seems to be the same as the final, but the ring's positioning as well as the lighting were updated. The final render makes better use of the color space, since it dithers colors where the proto render doesn't. Sonic also isn't animated, though the banner still bounces up and down. The rest of his body is present below the ring, unlike the final.
- Incidentally, the text reading "Sonic the Hedgehog" below the logo is finalized - this simple text carried its way into the final build of the game.
- The Copyright 1994 SEGA text is absent, which is likely more of a given.
- Entering the button combination Up, Up, Down, Down, Up, Up will enable Debug Mode.
In addition, there are no menu options. Pressing Start automatically sends the player to the Level Select.
Playing as Tails or Knuckles
| This needs some investigation. Discuss ideas and findings on the talk page. Specifically: Playing as Knuckles is particularly difficult, mostly because a lot of level collision becomes broken. Any ideas on what causes this? |
You can play as different characters by pressing the following button combinations at the title screen:
- Sonic + Tails: A + Start
- Sonic alone: B + Start
- Tails alone: C + Start
You can also play as different characters by using the cheat codes FFEF4C:000X FFFF08:000X FFFF0A:000X and replacing the X with one of the following numbers:
- 0 - Sonic & Tails
- 1 - Sonic
- 2 - Tails
- 3 - Knuckles (will use Tails' sprites instead)
Tails and Knuckles have graphical problems with their end-level Sign Posts they beat a level, however;
| Tails' Sign Post | Knuckles' Sign Post |
|---|---|
![]() |
![]() |
- When playing as Tails, the Sign Post will display an image of a blue Knuckles instead of Tails' image.
- Knuckles has data in the game and his name card is still present, though when playing as him the Sign Post will load Dr. Robotnik's image instead of Knuckles' image.
Level Select
The level select is almost the same as the final game. It plays no music, rendering the File Select theme unused.
Just like in the final game, none of the S&K zones are selectable by default (with the exception of Flying Battery Zone). Unlike in the final game, all bonus stages are accessible (the last 2P VS act goes to the gumball machine, while the two "Bonus" acts go to the Sonic & Knuckles bonus stages). The PAR Codes below can be used to regain access to these zones.
| Zone | Act 1 Code | Act 2 Code |
|---|---|---|
| Mushroom Valley | 005C0E:0700 | 005C10:0701 |
| Sandopolis | 005C12:0800 | 005C14:0801 |
| Lava Reef | 005C16:0900 | 005C18:0901 |
| Sky Sanctuary | 005C1A:0A00 | 005C1C:0A01 |
| Death Egg | 005C1E:0B00 | 005C20:0B01 |
| The Doomsday | 005C2A:0C00 | 005C2A:0C01 |
| ID 0D | 005BF2:0D00 | 005BF4:0D01 |
| Lava Reef Act 3/Boss | 005BF6:1600 | |
| Hidden Palace | 005BF8:1601 | |
| Death Egg Final Boss | 005BFA:1700 | |
| Hidden Palace (Special Stage Ring) | 005BFC:1701 |
Each level can be played through the level select. Lava Reef, Sky Sanctuary, and Death Egg are accessible using the first, second, and third 2P VS options respectively while The Doomsday Zone uses the Sound Test option. The gumball machine bonus stage can be played by selecting "Bonus" on the level select. "ID 0D" can be accessed by selecting Angel Island Zone Act 1 and 2. Lava Reef Act 3 and Hidden Palace can be played by selecting Hydrocity Zone. Finally, the Death Egg final boss and Hidden Palace (Special Stage Ring) can be accessed through Marble Garden Acts 1 and 2.
Stage Differences
Angel Island
| To do: Layout and object differences |
- The intro features Sonic riding a surfboard into Angel Island. In the final game, Sonic rides the Tornado, jumps off, and turns into Super Sonic. The object still exists in the final game, but goes unused.
- The only way to see this intro is if you wait on the title screen for the demo. Getting into Angel Island Act 1 normally does not play the intro.
- Knuckles also has completely different sprites, and simply blocks Sonic's path instead of punching him out and stealing the Chaos Emeralds. Because they share the same palette, Knuckles also causes the HUD to turn green; the developers fixed this in the final by coloring his socks yellow.
- Tails does not seem to spawn into the level for a while, aside from flying above the first badnik. The player can be airlifted by Tails, interestingly.
- A fire shield and badnik right before the miniboss are missing.
- Underwater countdown timer graphics do not load correctly.
- In the debug list, there is a strange object that seems to test sprite scaling. It causes some very adverse effects on the game, its level collision, and its VRAM.
| To do: Check the IDs of the monitors |
- In one of the upper alcoves early in the level, there are 2 static monitors that hurt the player when broken. These were replaced with monitors containing Power Sneakers and 10 Rings in the final game.
- The area before the miniboss has a few tiles incorrectly placed.
- The miniboss cutscene is slower, rougher, and the miniboss plays a different sound when launching missiles.
- The second part of Act 1 loads much more slowly, leading to some garbage object graphics at first.
- The waterfall platform objects do not play any sounds.
- Act 1's boss arena has the decorative flame objects like final, but they load incorrect graphics.
- During the tunnel to the end of the level in Act 2, you can see for a moment when the flying ship graphics are loaded.
- Eggman's "whooshing" sound when he goes through the trees at the end is completely different.
- The sound that plays when Eggman burns the bridge is different.
- The boss palette tends to cause issues with rings.
- Even if you jump off the bridge while Knuckles destroys it, you still go to Hydrocity Zone anyway.
| November 3 |
|---|
| Final |
| November 3 |
|---|
| Final |
Hydrocity
| November 3 | Level Select Icon |
|---|---|
![]() |
- The background in Act 1 is completely different from the final game, featuring gray bricks and pillars, waterfalls, and rows upon rows of plant life. This early background design can still be seen in the level select icon for Hydrocity in the final game.
- Sonic and Tails do not play their falling animations when entering the level.
- After dying, the background does not seem to load properly.
- The giant fan object does not play any sound.
- When Sonic runs across water, there is no sound associated.
| To do: Screenshot. Also, which IceCap Zone act track does the miniboss bug play? |
- The Buggernauts use different graphics.
- The grabbing hand booster object plays no sounds.
- The Turbo Spikers play no sounds.
- There are some misplaced spikes in Act 1.
- Destroying a Blastoid causes the player to bounce back the other direction as if they hit a boss.
- The 3D-like effect of the water doesn't work properly towards the middle of the level.
- The Big Shaker's underwater palette is incorrect.
- If Sonic is twirled around by the miniboss, he uses his death-animation instead of his floating animation.
- When the miniboss enters, no sound is played.
- The "whooshing" sound is played more frequently when the miniboss causes a whirlpool.
- The drowning miniboss music bug exists in this prototype, but it plays IceCap Zone's track instead of the Sonic & Knuckles miniboss theme.
- Some walls in Act 2 use slightly different sprites during the wall crusher segment.
- The wall crushing segment plays no sound.
- Sonic will play his previous animation when jumping on a spinning cylinder.
- Rings overlap tubes.
- Knuckles is blue when first loading in.
- The boss overwrites the water surface graphics.
- Trapdoor objects have issues with sprite priority.
| To do: Screenshot |
- There is a section in Act 2 involving a vertical bar object that is unused in the final game.
- The Knuckles cutscene is very different and unfinished - he immediately charges towards Sonic upon seeing him, which in turn presses the button and makes the bridge collapse in under a second.
- The small wall between the two also doesn't stop Knuckles from running, which results in him floating in air near Sonic.
- The pathway to the boss has no objects.
- Act 2's music has issues with volume.
- After defeating the boss, the level music does not start back up.
- In the final version, the level includes a couple of swinging balls and water droplet objects as eye candy. The proto lacks this, making the level look rather bland.
| November 3 |
|---|
| Final |
| November 3 |
|---|
| Final |
Marble Garden
| To do: Object & Layout differences |
- The player doesn't start up in the sky.
- The drillbot enemy seen throughout the level does not play any sounds when drilling.
- Tails seems to be able to influence the spinning top object when both he and Sonic are on it.
- The spinning top object doesn't fall out of the level when hitting a dead end.
- The chain with spike ball object plays no sound.
- The spinning wheel object makes no sound.
- Neither Sonic nor Tails have animations for grabbing pulleys, instead continuing whatever animation they were playing before grabbing on.
- The "switch" sound plays when grabbing the pulley.
- There are some misplaced rings in Act 2.
- It's possible to see below the level in Act 2.
- When the player encounters the Act 2 boss, the background is buggy. The player also dies when they hit the bottom of the screen, so two-player Tails must be used to start the fight properly.
- The game lags a lot during the Act 2 boss, and it's possible to stand on the air.
- Like with Hydrocity, there's no transition to Carnival Night.
| November 3 |
|---|
| Final |
| November 3 |
|---|
| Final |
Carnival Night
- Both acts use a completely different music track. MIDI renditions of these songs would go on to be used for the same zone in Sonic & Knuckles Collection (although Act 1 is in a different key).
- The Act 1 boss arena has no walls.
- Once the Act 1 boss is beaten, there's no way to progress further without using the level select.
- The underwater palette is very different, identical to the one seen in early screenshots.
- Knuckles doesn't appear in Carnival Night Act 2 at all, which results in the blackout and subsequent flood never happening, as well as Sonic falling to the ending area of Knuckles' Act 2. It is possible to get to the intended boss arena via Tails, though.
- The capsule at the end of Act 2 is not present.
- Touching one of the spinning cylinders as Tails will crash the game, possibly due to the game trying to load incorrect/missing graphics.
| November 3 |
|---|
| Final |
| November 3 |
|---|
| Final |
Flying Battery
Flying Battery is in a very preliminary state, lacking animated tiles and many objects.
| November 3 | Level Select Icon |
|---|---|
![]() |
- The background is different, and matches the design and palette seen in the zone's unused level icon. It additionally always uses the indoor background even in outdoor sections, and features "EGG" capsules not present in the final.
- Some of the background chunks are wrong.
- The Act 1 boss position matches that with Sonic 3 Alone and Sonic 3C 0408.
- Act 2's layout is even less complete.
- The Barrier Eggman boss isn't in the level. Its object does exist within the data, though.
- Act 2's boss position matches that with Sonic 3 Alone.
- Act transitions are once again not present.
| November 3 |
|---|
| Final (Sonic & Knuckles) |
| November 3 |
|---|
| Final (Sonic & Knuckles) |
| November 3 | Final (Sonic & Knuckles) |
|---|---|
| November 3 | Final (Sonic & Knuckles) |
|---|---|
| 200px | 200px |
IceCap
- Both acts use a completely different music track. MIDI renditions of these songs would go on to be used for the same zone in Sonic & Knuckles Collection. Act 1's appears to be unfinished at this point due to missing drums and a general lack of polish.
- Sonic begins the stage running down the mountainside. In the final, he snowboards down it.
- The "trap" glitch (in which the game treats the vertical screen wrap position as a bottomless pit under specific circumstances) affects both playable characters at this stage in development. The final version of the game fixed it for Sonic, but Tails would be stuck with it until Sonic 3 & Knuckles.
- There are some misplaced ice spikes in Act 2.
- Though the tunnel leading to Launch Base Zone is present, the game does not actually send the player there like in the final game.
| November 3 |
|---|
| Final |
Launch Base
- Both acts use a completely different music track. MIDI renditions of these songs would go on to be used for the same zone in Sonic & Knuckles Collection (although the MIDI version of Act 1 is in a slightly different key).
| November 3 | Level Select Icon |
|---|---|
![]() |
- The background has a different palette, resulting in a bluer ocean, a somewhat pink sky (not unlike Act 2) and a greenish Death Egg with darker supports. Much like Hydrocity and Flying Battery (initially), this palette would show up in the final game in Launch Base's level select icon.
- The player does not start by launching through the snow.
- Knuckles' palette and sprites mess with some objects.
- Some animated tiles are missing.
- The building doesn't collapse, though the transition to the boss still works.
- There are four warp tubes in the Twin Hammer boss arena, two on the floor and two on the ceiling. Entering a floor tube will warp the player to a corresponding ceiling tube.
- The top of Act 2's background is buggy.
- Jumping on first floating platform encountered in Act 2 triggers a series of FM chirps. This can be found in a few other areas of the level. This does not seem to be found as a playable value in the sound test.
- Part of the first Act 2 boss is overlapping the foreground.
- Knuckles stands on a bridge. The animated tiles also disappear for some reason.
- After a certain point in the cutscene, Sonic freezes, making it impossible to beat the stage.
Water Level
Just like the final version, the water level is disabled, but intact. To activate it, follow the same directions as in the final version of Sonic 3.
Unlike the final version, these color palettes are greenish. The final version uses a copy of Launch Base Zone Act 2's palette with a few minor changes.
| November 3 |
|---|
| Final |
Mushroom Hill
| To do: See if it is possible to restore the partial Kosinski compressed tiles located at 0x1AACAE-0x1AAE0E |
This zone has been mostly removed from the game at this point.
- The level is titled "Mushroom Valley" in the level select. This early name is still in the final game, but is replaced with the new one in Sonic 3 & Knuckles.
- The title cards reuse Launch Base's. This happens for the rest of the levels until The Doomsday Zone, with a few notable changes here and there.
- As soon as you spawn in you die for no reason.
- Early versions of the badniks exist, and can be placed in debug mode.
- An early version of the Hey Ho miniboss is implemented.
- A decompression error corrupts nearly all the graphics.
- Leftover palette data exists, but here it uses Azure Lake. This unused palette is different from the one used in Sonic 3C 0408 and Sonic & Knuckles.
- The graphics have probably been removed, and it uses Azure Lake as a place holder.
- An object layout is intact for both acts.
Sandopolis
- Almost the same as it is in Sonic 3 Alone.
- However, the Act 1 boss is implemented, and can be spawned through hacking.
- The music is only slightly different from the final.
- Act 2 uses the Angel Island Act 2 palette. This is also true for other zones that use AIZ graphics.
Lava Reef
| Download Sonic the Hedgehog 3 (Nov 3, 1993 prototype - LRZ1 restored)
File: Sonic 3 (Nov 3, 1993 prototype - LRZ1 restored).bin (2 MB) (info)
|
| To do: Maybe add a ROM, savestate, or PAR/Game Genie codes? |
Lava Reef is normally broken upon loading, but it's possible to make it playable by forcing the game to load leftover data from an earlier build, which just so happens to contain all of the necessary data. The only data that is missing is collision.
| To do: Rip the maps using offset addresses in the list below and try to find out the differences. |
The prototype contains a set of 8 maps from ACT1 to Lava Reef, apparently contains some differences, there are 6 complete maps and 2 fragments.
Full maps
- 0x1EC4CE
- 0x1ED2F6
- 0x1EE11E
- 0x1EEF46
- 0x1EFD6E
- 0x1F0B96
Fragmented maps
- 0x1EAF4A
- 0x1F3EC4
Color palettes
Act 1:
Act 2(?):
Unused chunk
| November 3 |
|---|
| Final (Sonic & Knuckles) |
| To do: Try to further match the chunks of 1103 vs SK-final for better visualization, or check if the prototype still has this missing data somewhere |
| November 3 using S&K dataset/colors, with chunk IDs shifted |
|---|
| Final (Sonic & Knuckles) |
Act 1 seems to be the most intact of the Sonic & Knuckles zones, having a full layout prepared for it, albeit completely lacking objects.
- The level's palette is completely different to the final version.
- The pipes were completely redrawn and replaced in later builds.
- The upper-right path was shrunk down in the final game.
| To do: The animated tiles are indeed intact in Sonic 3, the Sonic 3 background rip should be replaced. |
| November 3 | Final (Sonic & Knuckles) |
|---|---|
The background has a ton of placeholder tiles, the lava tiles are corrupted and the Death Egg was redrawn.
- The HUD uses an incorrect palette here.
Sky Sanctuary
- While the title card reuses Launch Base's, it also happens to be missing the act numbers. This seems to indicate that the rest of the S&K zones had proper title cards at one point.
- The music instrumentation here is quite different.
- Act 2 oddly uses Death Egg Act 1 music.
Death Egg
| To do: Maybe check if there is an object layout? There was an object in the final version of Sonic 3. |
- The music is almost identical to the final.
- Both acts use Death Egg Act 2 music.
The Doomsday
- Much like Sky Sanctuary, the act numbers are missing from The Doomsday's title cards. It still claims to be Launch Base, though.
- The music here has different instrumentation on a few parts.
Zone ID $0D
- This zone lacks a title card, in the final version of Sonic 3 it simply said "Zone".
- The Blue Spheres special stage music is used here.
- Act 1 uses AIZ intro graphics, whereas in the final it uses the standard level graphics.
Azure Lake
- The background is a little different.
Balloon Park
- The music is composed differently.
Desert Palace
- One of the background palette's colors is incorrectly set to black instead of brown.
- The music here is also composed differently.
Chrome Gadget
- The background scrolls differently.
- The music here is also composed differently.
Endless Mine
Zone ID $16
- Act 1 was later used for Lava Reef Act 3 or Lava Reef's boss.
- Act 2 was later used for Hidden Palace.
- Act 2 has a bug that causes the Launch Base Zone Death Egg graphics to load midway through the level.
- Both acts play the special stage music.
- There is no title card.
Zone ID $17
- Act 1 was later used for Death Egg's boss.
- Act 2 was used for the alternate Hidden Palace that is accessed through a big ring in Sonic & Knuckles.
- Both acts use the special stage music.
- There is no title card.
Gumball Machine
Incredibly bare bones at this point in development, but a start has been made.
- Plays the Special Stage theme.
- The map only features a layout - there's no collision detection for the walls, the gumball machine itself doesn't do anything, and most importantly, there aren't any bumpers, meaning you unceremoniously fall... to your death, as the code to end the bonus game isn't present. The tiles for the spring net are present(!) and are even a different color(!!), but alas, there's no springs atop them, nor does said net have any collision itself.
- There's some different graphics, namely in the tileset for the walls - the final has more shading details. The background is filled with placeholder tiles instead of the finalized checkerboard, and the layer in front of it is quite different in design. The gumball machine itself is more or less finalized, however.
- This level lacks a Bonus Stage title card.
- The HUD still has SCORE and TIME listed, unlike the final version of Sonic 3.
Glowing Spheres
- Even less complete than the Sonic 3C 0408 prototype.
- The stage's background does not exist in the ROM, and instead uses placeholder number tiles. These numbered tiles are intended to be animated by a seemingly not yet present reloading routine.
- The Bonus Stage title card is missing.
- The HUD still has SCORE and TIME listed, unlike the final version of Sonic 3.
Slot Machine
- The Bonus Stage title card is still missing.
- The HUD still has SCORE and TIME listed, unlike the final version of Sonic 3.
| November 3rd | Final |
|---|---|
![]() |
![]() |
- The slot machine in the November prototype is quite bare-bones, lacking several details that would appear in the final game.
- The simple hole that operates the slot machine was replaced with an elaborate glass cage.
- A bunch of shading was added to the blue area, as well as connections between the shapes and the central cage. The top shapes were shifted down to accommodate the top-most shade.
- On the topic of the squares and triangles, they had their colors changed to a cycling yellow palette.
- The indigo color used by the slot machine was updated to a proper blue.
- The protoype's second palette is missing the colors needed for Rings, which is obviously a problem. The colors in the object palettes had to be shuffled around to accommodate both the Rings and the updated slot machine...
| November 3rd |
|---|
| Final |
- ...which would result in the slots themselves losing some of their details.
- A layout is present, but collision has not been implemented.
Special Stage 1
The Special Stages are tech demos at this point in development, using different sprites entirely for the spheres. No proper gameplay has been implemented however, other than manipulating the spheres. Holding A and pressing Start will return you to the Title Screen.
Special Stage 1 features a pre-rendered gray sphere, with red spheres rotating around it. These set of spheres do remain in the final game in Angel Island Act 1, however they are unused.
| Button | Control Pad 1 | Control Pad 2 |
|---|---|---|
| Start | Toggles between automatic and manual rotation. | Toggles between automatic and manual rotation. |
| A/C | Rotates left or right. | Zooms the spheres in or out. A zooms out, C zooms in. |
| B | Resets the spheres to their point of origin. | If automatic movement is enabled, stops the spheres from rotating along one of the axes if held down. |
| Up/Down | Adjusts how fast the spheres rotate on one of the axes. | Moves the matrix up and down. |
| Left/Right | Rotates the spheres along the Y-axis | Moves the matrix up and down. |
Special Stage 2
Special Stage 2 features a flat square of spheres bouncing up and down while rotating. A secondary animation causes them to contract and expand. Parts of this animation overload the VDP's sprite bandwidth, causing some of the sprite pixels to disappear (as can be seen in the expanding animation below).
While it is rotating, this is what the controller inputs do:
| Button | Control Pad 1 | Control Pad 2 |
|---|---|---|
| Start | Toggles between automatic and manual rotation. | Toggles between automatic and manual rotation. |
| A/C | Speeds up or slows down the rotation when automatic, or rotates the spheres left or right along the X-axis when manual. | Zooms the spheres in or out. A zooms out, C zooms in. |
| B | Toggles between the primary and secondary animations. | If automatic movement is enabled, stops the spheres from rotating if held down. |
| Up/Down | Rotates the viewing angle in the given direction. | Moves the matrix up and down. |
| Left/Right | Rotates the viewing angle in the given direction. | Moves the matrix up and down. |
| Special Stage 1 | Special Stage 2 |
|---|---|
![]() |
![]() ![]() |
Unused Objects and Enemies
| ID | Offset | Name | Description |
|---|---|---|---|
| 12 | 0001C6A0 | LBZ Platform | A glitched platform that appears to belong to LBZ. |
| 1A | 0001DFCE | Speed Cannon? | A seesaw-esque object that forces Sonic to run extremely fast upon pressing the jump button. Seems to belong to LBZ. |
| 1C | 0001E6C6 | Spinning Spike? | A very strange object that appears to be spinning. Seems to belong to LBZ. |
| 1D | 0001C228 | Grabbing Platform | One of the LBZ platforms, but with a "grabber" underneath that can hold Sonic. Its tile mappings appear to be somewhat glitched. |
| 84 | 00040704 | Hey Ho | A very glitched version of Hey Ho, the Mushroom Valley/Hill Act 1 boss. |
| 8F | 0003C27C | Nothing? | ?????? |
| 90 | 00049FB6 | Fireworm? | Fireworm badnik for Lava reef Zone. Crashes the game while trying to DMA non-existent sprites. |
| 91 | 0004A29C | Iwadomoki | The exploding "fake stone" badnik. Can crash the game. |
| 92 | 0004A400 | Toxomister | The smoke clouds do not hurt Sonic, they only slow Sonic down. |
| 93 | 000495CC | Madmole | The mushrooms it throws have an exaggerated effect on Sonic. |
| 94 | 000499BC | Mushmeanie | The bouncing mushroom enemy from Mushroom Hill/Valley. |
| 95 | 00049B24 | Dragonfly | Flies up and down, as in the final game. |
| 96 | 00049DCA | ??? | ??? |
| 97 | 00049E50 | ??? | ??? |
| B6 | 0003CE96 | FBZ2 Barrier Eggman | The midboss of FBZ Act 2. Although coded, it isn't actually placed in the stage. |
Unused Graphics
Possible early graphics for a button used by Knuckles. These tiles are loaded early on in the space used for the burning Angel Island stage graphics.
Lost Data
Towards the end of the binary, two partial blocks of older data exist, which contain Lava Reef Zone data and older palettes (and potentially other levels' data), among other things.
The palette block used in-game is the one on the left.
Source Code
Pieces of another game's source code (judging by the labels, most likely the aforementioned Star Trek game) can be found scattered throughout the ROM at the following locations.
0xAFF0E:
,WhichMessage
Bra @DoneInput
@InComingHail:
Move.w #3,WhichMessage
Bra @DoneInput
@ImpulseDamaged:
Move.w #4,WhichMessage
Bra @DoneInput
0xBFAB4:
the screen.
DMAScrollArrows:
Subq.w #1,ArrowDelay ; Determine if arrow buffers or blanks should
Bne.s @NoTogg ; be DMA'ed this makes the arrows flash.
Move.w #15,ArrowDelay ; Reset delay between flashes.
Eor.w #1,ArrowToggle ; Toggle between blanks and arrows.
@NoTogg:
Tst.w ArrowToggle ; Branch to relevent bit.
Beq.s @ArrowsOff
; ====== Arrows on, DMA the buffers. ======
Lea UpArrowBuffer,A0 ; Source.
Lea ScrollBBase+(27*2)+(21*64),A1 ; Destination.
Move.w #1,D0 ; Number of words.
Move.l #VDP_VRAMWrite,D1 ; Set to write to VRAM.
Moveq #2,D2 ; Auto increment.
Jsr PushDMA ; Move characters to VRAM.
Lea DownArrowBuffer,A0 ; Source.
Lea ScrollBBase+(27*2)+(26*64),A1 ; Destination.
Move.w #1,D0
0xCF970:
Lea ScrollBBase+($b*64)+(27*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette0+CHR_HighPri,D5 ; Color is different if in impulse.
Bra @DoneSeperators
@NotImpulse:
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri+'.',D0 ; Place decimal points and '/' seperators.
Lea ScrollBBase+($5*64)+(28*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($7*64)+(27*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($d*64)+(28*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri+'/',D0
Lea ScrollBBase+($9*64)+(27*2),A1
Jsr Word_2GVRAM
Lea ScrollBBase+($b*64)+(27*2),A1
Jsr Word_2GVRAM
Move.w #AsciiOffset+CHR_Palette3+CHR_HighPri,D5 ; Set up character color.
@DoneSeperators:
Move.w CurrentDistance,D7 ; Get whole part of DISTANCE.
Moveq #3,D6 ; Three characters.
Moveq #'$',D2 ; Lead with a spaces.
Lea ScrollBBase+($5*64)+(25*2),A1 ; Screen destination.
Jsr PrintVal ; Print it.
Move.w CurrentDistance+2,D7 ; Get fractional part of DISTANCE.
Moveq #2,D6 ; Two digits.
Move.w
0xDFEF3:
_No1,VIEW_NOT_FLIPPED,VIEW_SIZE_6
Dc.b VIEW_PLANET10,VIEW_PAL_NoA,VIEW_FLIPPED,VIEW_SIZE_6
Dc.b VIEW_PLANET4,VIEW_PAL_NoC,VIEW_FLIPPED,VIEW_SIZE_7
Dc.b VIEW_PLANET10,VIEW_PAL_No1,VIEW_NOT_FLIPPED,VIEW_SIZE_7








































