Sonic the Hedgehog (Genesis)
|Sonic the Hedgehog|
Also known as: Baramdori Sonic (KR)
This game has unused enemies.
This game has a bugs page
This game has a prerelease article
Sonic the Hedgehog is more or less the definitive game of the Genesis in the early 1990s and introduced the world to Sega's new mascot.
- 1 Level Select
- 2 Debug Mode
- 3 Unused Sprites
- 4 Unused Warping Effect
- 5 Invisible Credits
- 6 Misplaced Objects
- 7 Unused Level Chunks
- 8 Unused 2x2 Tiles
- 9 Exception Handler
- 10 Unused Sounds
- 11 Revisional Differences
One of the most well-known codes in gaming history: press Up, Down, Left, Right on the title screen (three Downs if playing on a Japanese console), then hold A and press Start. In the original revision, the level order is different from the order in normal gameplay.
|Green Hill Zone||Green Hill Zone|
|Labyrinth Zone||Marble Zone|
|Marble Zone||Spring Yard Zone|
|Star Light Zone||Labyrinth Zone|
|Spring Yard Zone||Star Light Zone|
|Scrap Brain Zone||Scrap Brain Zone|
|Final Zone||Final Zone|
Again, codes for the debug mode vary based on console region.
Another well-known code. While Up, C, Down, C, Left, C, Right, C is the most common version, a shorter version is C, C, Up, Down, Left, Right. The main requirement for the code is pressing C twice before the final input of Right. After entering the code, press Start while holding A and continue holding A until Sonic appears in the level.
To activate Level Select and Debug Mode, simply enter the Level Select code, push any direction on the D-Pad after the ring sound, then enter the Debug Mode code.
From here, you have access to a variety of things:
- Infinite Time
- Debug Coordinates (in place of score)
- Sprite Counter (in place of time)
- Placement Mode: Press B during gameplay. From there,
- Press A to move forward one object.
- Hold A and press C to move backward one object.
- Press C to place the object.
- Pause Options: press A to go back to the title screen, hold B to enable slow motion, or press C to enable frame advance.
When running on a Japanese console, there are separate codes for the pause options and the rest of the debug features. As usual, they are entered on the title screen and can be combined by interpolating a D-Pad direction between them.
- C, C, Up, Down, Down, Down, Left, Right
- C, C, C, C, Up, Down, Down, Down, Left, Right, hold A and press Start
Once enabled, they behave in the same manner as they do when running on non-Japanese systems.
|Sonic gulping air. Likely used for the air bubbles found in Labyrinth Zone, as well as Scrap Brain Zone Act 3. An edited version of this sprite found use as Ray's look up sprite in Sonic Mania Plus.|
|Sonic holding his breath. Possibly used for when the player was close to drowning. The face of this sprite would later be used in Sonic Mania, as Sonic is inhaling an air bubble.|
|Seen in earlier development pictures. Apparently, a victory animation used after passing the goal. Slightly modified versions of these sprites would finally see the light of day in Sonic Mania, keeping their original purpose.|
|A sliding sprite, similar to those used in Sonic CD. Modified versions of these sprites would later appear in the official "Hedgehog Day Dance Party" video, but not in Sonic Mania itself.|
|Spin Dash-like sprites. There's a routine which would change Sonic's sprite to one of these, but it's unused. However, a similar animation was made for Mighty's "Hammer Drop" ability in Sonic Mania Plus.|
|Shrinking, maybe falling, sprites for Sonic.|
|A black-and-white death sprite, whose purpose is unknown. Possibly would have been used when falling into lava, like in Marble Zone. This is also present, still unused, in Sonic the Hedgehog 2. Sonic the Hedgehog 3 and Sonic & Knuckles have similar unused sprites.|
These are visible if you fly over the goal in debug mode, as the end-of-level art loading routine isn't executed and the goal art is written over the top of the art for the monitors.
|A Robotnik monitor. Possibly would have hurt Sonic, like in Sonic 2 and Sonic 3 & Knuckles.|
|An image of Sonic's unused goggles, leading some to believe it was originally a power-up. These become placeable objects in the 2013 remake's debug mode, and are also worn by Sonic during Tails', Mighty's, and Ray's Tornado plane segments in Sonic Mania.|
|A static monitor, used as a default for invalid object IDs. Scrap Brain Zone contains a number of these (apparently a victim of changing object allocations - the subtypes work perfectly if these are changed to solidity objects) which emit various glitched tiles when broken. They can be placed in Debug Mode, but don't do anything when broken.|
|A monitor with an "S" on it. This monitor appears in Prototype 510 of Sonic CD, essentially giving the player a speed boost and invincibility. In other games it appears in, including this game's 2013 remake, it grants Super/Hyper forms.|
Green Hill Zone
|This checkered ball, seen in early screenshots, and part of the Green Hill Zone boss in the final. It would have originally been its own object and would have chased Sonic and crashed through walls that he couldn't break through. The checker ball can still be viewed via debug mode, but cannot be placed.
It was restored in the 2013 remake, however, it’s pushed by Sonic there instead of chasing him. It is also now in Sonic Mania's debug mode, though only in Green Hill's acts.
|Two faces, possibly from an earlier point in development. Their true palette isn't in the game anymore. They are simply earlier versions of the Green Hill Zone decorations. They can be also seen in the Nick Arcade prototype of Sonic 2 in Green Hill Zone, on the glitched Crabmeats and the Act 3 boss. They are loaded naturally into the RAM addresses FFBAC8 and FFBAD0 and appear a layer in front of the sprites, can be added on Green Hill Zone with these codes, FF5970:0159 happy face, FF5972:015A sad face.|
|Unused tiles from the Green Hill Zone. Interestingly, these tiles were used for the Underground segment of Green Hill's second act in the 8-bit version. It is possible that an Underground section was once planned for the 16-bit version as well at some point in development. These tiles would later appear in Sonic Mania.|
|The swinging platforms of Green Hill Zone instead carry a wrecking ball when the highest bit of their subtype value is set. The object is fully functional and can hurt Sonic. Technically, the swinging platforms of Marble Zone, Star Light Zone, and the swinging spike ball of Scrap Brain Zone are capable of doing this, too, but the wrecking ball graphics are not loaded, suggesting this feature was only intended for Green Hill Zone. You can see this using PAR codes FFFE06:6B00 + FFD004:1500 during debug mode.|
|A horizontally-oriented spiked chandelier thingy. A fully functional but completely unused object exists for these. Can be added using patch code FFD004:4500 with debug mode active in Marble Zone.|
Spring Yard Zone
|An unused sign present in Spring Yard's tileset, seen in early screenshots.|
|A Burrobot facing downwards. Purpose unknown.|
Star Light Zone
|Unused lights from Star Light Zone.|
|Unused pieces of a capsule. They are loaded into the data of Robotnik's capsule.|
|The sprite on the left shows the back parts of the legs of Robotnik's vehicle, which are impossible to see in-game.|
|A rosebud with an incorrect palette, which functions like a bumper. This is because both the ending and Special Stage use the same debug item list, resulting in a strange-looking bumper due to different art being used.|
These can be seen in normal gameplay by falling out of a Special Stage using debug mode.
|Labelled as Zones 1-6, possibly used to mark which Special Stage you were in.|
|A 1-up icon. This is mentioned and shown in the game's manual but doesn't appear in-game outside of the aforementioned out-of-bounds area. It is actually fully coded and functional, and collecting it will grant you an extra life. The icon disappears like a ring when touched.|
|A W block. It's unknown what this would have done.|
|Press Start Button||This text was meant to appear on the title screen, but was disabled due to a programming error. Interestingly, it will appear on Japanese systems after viewing the invisible credits. It can be reactivated by using the code FFD11A:0100.|
|Splats the Bunny||An unused badnik that seems to have been cut relatively late in development, as both a trading card and a figurine for it were released. It would be later used in Sonic Mania for Press Garden Zone, in a scrap pile during Flying Battery Zone's mini-boss battle, and through debug mode in the Green Hill Zone, much like the 2013 remake.|
|Goggles||Unused sprites for goggles, which would have been placed over Sonic. It was most likely supposed to come from opening the respective Goggles Monitor. These were later used in Sonic Mania for when Sonic is piloting the Tornado when playing as Tails.|
|Robotnik Explodes||These sprites could have been used in the ending, since they show Robotnik struggling to stay in the air (and then exploding), presumably only if you attacked Robotnik's craft when he tries to escape in Final Zone.|
|Unused Explosion||An unused and quite different explosion, found along with the badnik art. Speculated to be from an earlier version of the game. Resembles the smaller explosions used in Sonic the Hedgehog 3.|
|Unknown Grass||A chunk of grass which has no known purpose. Interestingly, it doesn't seem to match with any palette in the game.|
|Unused Switch||An unused frame of the switch sprite. When bit 5 of a switch's subtype is set, it makes the object flash, using this sprite. In Labyrinth Zone, this sprite's data is partially overwritten by the cork sprite in VRAM. Marble Zone's switch has no equivalent sprite.|
Unused Warping Effect
Possibly an earlier method of accessing the Special Stage, this warp effect activates when Sonic runs into the area in which the object is placed. Sonic disappears as he runs into it, and a warping noise plays. Sonic then reappears a few seconds later, likely as a method of testing the object.
Credits that are hidden on the Sonic Team Presents screen, and completely unseen in every region outside of Japan. If you have a Japanese Mega Drive, or switch the region to Japanese, you can use the code C, C, C, C, C, C, Up, Down, Down, Down, Left, Right, which should make a ring noise, then when the demo starts, hold Down + A + B + C to turn the screen's background to white, making the text visible after the Sega splash screen. This code does not work in the Sonic Classics version.
The credits translate to:
|Design|| Naoto Ooshima|
|Sound Produce||Masato Nakamura|
|Sound Program|| Hiroshi Kubota|
Green Hill Zone Act 2 has multiple misplaced enemies, such as this Crabmeat at coordinates 10D0,0370, under the section with the moving pillars and spikes just before the checkpoint. They cannot be seen in gameplay, as they're always placed such that they instantly fall into the abyss and unload. The Crabmeat is particularly amusing in that it's already below the level of the screen.
Unused Level Chunks
Identify whether there are differences or whether they are just unused copies.
Star Light Zone:
Note: Several unused chunks of Star Light Zone still retain the art style used in several pre-release screenshots and because there are several unused chunks, it's possible this level has had many changes throughout its development.
Scrap Brain Zone:
Unused 2x2 Tiles
Tiles loaded in the VRAM are organized by spreadsheet in the RAM address FFB000, at this point IDs are created for each line representing 2x2 of the graphics of the VRAM. The address FF0000 is in charge of adding mirroring and collision to the tiles 2x2, creating a 16x16 chunk, and in all there are 255 chunks created from FF00000. To add these chunks, add the IDs below in this format 0x xx from FF0000 and search for the chunk ID 01 on the level. It is possible to see some unused graphics that are referenced above.
|Green Hill Zone|| 006, 187, 199, 19A, 00C, 00E, 017, 018, 022, 028, 02B, 02C, 044, 048, 049, 055|
057, 058, 059, 05C, 05E, 086, 087, 0BD, 0BE, 0F4, 0F5, 0F7, 146, 159, 15A, 161
|Marble Zone|| 058, 059, 05A, 05B, 065, 069, 06A, 06B, 06C, 08A, 08C, 094|
095, 096, 097, 09A, 09B, 09D, 09E, 0A3, 0A4, 0B7, 0B8, 0B9, 0BA, 0BB, 0BC, 0C8
|Spring Yard Zone||01C, 01D, 02B, 06A, 06B, 072, 08B, 08D, 0AC, 0BA, 0BB, 0D2, 0DD, 0F6, 0FB, 104|
10C, 10D, 16F, 171, 191, 192, 197, 1A5, 1A6, 1A9
|Labyrinth Zone||03C, 03D, 04F|
|Star Light Zone||
018, 019, 01A, 01B, 01C, 01D, 01E, 01F, 021, 022, 023, 024, 025, 026, 027, 028
|Scrap Brain Zone|| 01A, 01B, 01C, 01D, 029, 02A, 034, 03E, 047, 048, 06A, 074, 07B, 085, 086, 0C0|
0D2, 0DC, 0EA, 128, 132, 13F, 141, 16C, 172, 173, 17C, 182, 188, 189, 223, 224,
The game contains a very basic error handler. In the event a 68000 exception occurs (e.g. a bug causes the game to crash), the game will stop and print some basic information to the screen. This can be triggered in the first two acts of Labyrinth Zone. If the camera is panned down at the moment the results screen is about to appear at the end of the first two Acts, the game may crash with an illegal instruction exception.
These are best performed on an actual console, as the error handler does not work properly in some emulators.
While the error handler has text for most of the defined 68000 exceptions, very few of them are likely to show up during normal gameplay, as many of them are assigned as placeholders.
A way to get out of error messages is by pushing C, but sometimes it won't work properly and will either show another error message, or lead to the game freezing entirely.
A complete list of the game's error messages (which are shown below) can be found at hex value 000004E0. (Note that the @ in the divide zero error represents a Z in-game.)
ERROR EXCEPTION BUS ERROR ADDRESS ERROR ILLEGAL INSTRUCTION @ERO DIVIDE CHK INSTRUCTION TRAPV INSTRUCTION PRIVILEGE VIOLATION TRACE LINE 1010 EMULATOR LINE 1111 EMULATOR
Rip the rest of the unused sounds
Meant to be played when a Buzz Bomber's missile explodes, although it doesn't really sound like an explosion. Due to the fact that this behavior is unused, it's possible that the sound IDs were changed at some point during development, and this sound was meant to be something else entirely.
A revision (commonly known as REV01) was silently released, which is more common in the Asian market. Most compilations and re-releases include this altered version. Below are the changes:
- The game's background deformation and screen drawing routines were given significant overhauls. As a result, the clouds in Green Hill Zone and on the title screen now scroll from right to left (common in most depictions of Green Hill in the series), backgrounds that previously did not have multiple layers of scrolling now do, and the water in Labyrinth Zone/Scrap Brain Zone Act 3 has been given a ripple effect, similar to that of Sonic CD.
- The level select was rearranged. In the initial release, the Zones were listed in a pre-release order that doesn't represent the final game.
- There are more changes if the game detects whether it is being played on a Japanese console. Previously, it disabled the Debug Mode but enabled the hidden developer credits - the revision provides new Level Select and Debug Mode codes as well.
- The points system was slightly altered: extra lives are now gained every 50,000 points, and the final boss now awards 1,000 points in defeat. Previously, extra lives were not acquired upon reaching any particular point total and the final boss awarded no points at all.
- Minor programming changes of certain properties such as Caterkiller's nuances, lamppost/game over and drowning music exist.
- Generally, the game code is tighter, more efficient, and removed unnecessary remnants like certain unused sprites.
- Holding buttons during the attract mode and ending demo sequences will not cause Sonic to miss jumps.
Labyrinth Zone's Extra Ring
There is one extra ring in Labyrinth Zone Act 1 of Revision 01. After the player presses a button near the two rising platforms, a platform spawns above, something few people know about. It's possible to reach this platform with a well-timed jump, and if the player rides on it, it'll take them to an alternate path which may have an extra ring. With said ring, it is possible to collect 50 rings (and so access the Special Stage) while taking this shortcut.
Ports and Compilations
Note: The Wii Virtual Console version of the game uses the REV00 ROM.
The version of the game included in Sonic Jam has its fair share of differences, including:
- A toggle-able Spin Dash move present in the other Sonic games. Turning on the Spin Dash also fixes the notorious Spike Bug.
- Easy and Normal modes, which reduce the difficulty of the game by different measures.
- Skid marks appear when changing direction while running, much like in the other Sonic games.
- Unlike most of the other re-releases, the version of the game included uses CD audio (like Sonic CD), allowing for enhanced sound.
This version of the game is also based on REV01, and is not simply an emulated rom - it uses rebuilt code, which allows the toggle-able features.
Sonic Mega Collection (and Sonic Mega Collection Plus) include both the REV00 and REV01 versions, as well as a new revision, REVXB, which fixes the Spike Bug.
3D Sonic the Hedgehog
Like Sonic Jam, this version of Sonic 1 uses rebuilt code for extra options. These options include:
- Stereoscopic 3D graphics that take advantage of the 3DS's hardware.
- REV00 (labeled as "International") and REV01 (labeled as "Japanese") are both selectable.
- Customizable controls.
- A CRT-style filter.
- The Spin Dash.
- The Stage Select being unlocked by default.