If you'd like to support our preservation efforts (and this wasn't cheap), please consider donating or supporting us on Patreon. Thank you!
Dr. Robotnik's Mean Bean Machine (Genesis)
| Dr. Robotnik's Mean Bean Machine |
|---|
|
Also known as: Dongle-i Toechijakjeon (Puyo Puyo) (KR)
|
Dr. Robotnik's Mean Bean Machine is a Westernized Puyo Puyo based on the syndicated cartoon Adventures of Sonic the Hedgehog.
To do:
|
Contents
Sub-Pages
| Prototype Info |
| Prerelease Info |
| Notes |
Unused Graphics
Most of these are leftovers from Puyo Puyo.
Gameplay
Perhaps unsurprisingly, the game still contains unused assets from the arcade Puyo Puyo. The game no longer contains the "Insert Coin" prompt that was buried in the Mega Drive Puyo Puyo's title screen data, but still contains the credit(s) counter in its gameplay sprite data.
8x16 text is used rather than a unique graphic for the PAUSE text. This is the one used in Puyo Puyo.
Graphics used in Puyo Puyo to denote the 1P VS 2P difficulty modes.
While the game only uses numbers from 1 to 5 to mark the difficulty levels, other numbers do exist.
Lesson Mode
The entire Endless/Lesson Mode tileset is still present in the game, but is never used. As this game uses only one graphic pointer for the entirety of Scenario Mode (unlike Puyo Puyo), the leftover Lesson Stages do not actually load this tileset. Note that the palette which should be used for these tiles either has been removed or it's never loaded, so the one from Puyo Puyo is used in the image.
This shadowed block was part of the background in the Endless Mode from Puyo Puyo. While a similar set of tiles is still used as the background of various screens, this one is not.
The flashing square is only used in the first Lesson stage.
This is the tutorial text shown in the first Lesson Stage in Puyo Puyo. Since this is only present in the Endless Mode tileset (which is never loaded during gameplay), the actual object appears scrambled when the stage is accessed in the game.
Cutscene Sprites
Graphics of Arle! They are always loaded initially (and then partially overwritten) during cutscenes as they contain the dialog box sprites.
Sprites of Harpy exist, too. In Puyo Puyo, there was 2 copies of Harpy's sprite data, with one copy left unused. Interestingly enough, the one left in Mean Bean Machine is actually the copy used in-game in Puyo Puyo, while the copy that was unused got cut. The used copy was lumped in with unrelated graphics data, while the unused copy was actually placed with the other character cutscene graphics data. It can be assumed that the localization team didn't notice this, thus accidentally leaving this in.
Game Over
Leftovers from the Game Over screen of Puyo Puyo. Unsurprisingly, they are never loaded in memory too.
More leftovers from Game Over screens, this time from the 1P VS 2P Mode.
High Score
The graphics from High Score screen used in Puyo Puyo were replaced during the conversion, but not completely as they still get loaded in memory.
The High Score screen only uses letters.
This was used to mark the different game modes. Appropriate graphics exist and are used in this game.
Misc Fonts
The original font of Puyo Puyo is only used in the Checksum Error Screen, so most of it is unused, including numbers and their duplicates.
Another leftover from Puyo Puyo. The font used in the demo mode of the original game obviously isn't used here.
While this 8x16 font is used during the cast roll in Puyo Puyo, this game uses a different 8x8 one. This is another of the few graphics to never get loaded.
Unused Stages
The Lesson Stages of Puyo Puyo are still present, and can be accessed via patch code 00BEFE:00?? (where "??" is 00, 01, or 02), although they're a bit glitchy: the tutorial text is scrambled, no music plays, Coconuts stands at odd positions in the stage intros, and Scratch takes the place of Skeleton-T as the challenger. The flashing squares showing which beans can be cleared with the current piece still remain, though. Beating the third Lesson Stage advances the player to the ending scene.
Sound Test
In the Genesis Puyo Puyo, the game was programmed to check the RAM at 00FFFC02 was set to 0000. If this was the case, the Sound Test would not display in the Options. If you beat the Scenario Mode once or use a code at the Title Screen, it would send FFFF to the RAM at 00FFFC02. This would then display the Sound Test in the Options.
In the Korean version of Mean Bean Machine, as well as the prototype (when the hardware region is Japanese), the Sound Test is automatically available upon starting the game. Other versions of the game still retain the code to check if the Sound Test can be displayed in the Options, albeit normally inaccessible.
Code to display the text "SOUND TEST" in "OPTIONS" (USA Version): 0233F8 4A 79 TST.W ($00FFFC02) ; Checks to see if the word 0000 is in FFFC02. 0233FE 67 14 BEQ #$14 [023414] ; If word is 0000, then jump to 23414. 023402 10 3C MOVE.B #$07,D0 ; Copy byte 07 to D0 (option that is selected). 023406 3A 3C MOVE.W #$0B9E,D5 ; Copy byte 0B9E to D5 (text position). 02340A 43 F9 LEA ($00023416),A1 ; Load 023416 into A1. 023410 61 00 BSR #$FB16 [022F28] ; Jump to 23F28. 023414 4E 75 RTS ; Return to start. Code for number of options to select in "OPTIONS" (USA Version): 023088 14 3C MOVE.B #$06,D2 ; Copy byte 06 to D2 (Sound Test can't be selected). 02308C 4A 79 TST.W ($00FFFC02) ; Checks to see if the word 0000 is in FFFC02. 023092 67 06 BEQ #$06 [02309A] ; If word is 0000, then jump to 2309A. 023096 14 3C MOVE.B #$07,D2 ; Copy byte 07 to D2 (Sound Test can be selected). 02309A
Unlike the Genesis Puyo Puyo, the code has been removed so you can't unlock the Sound Test if you beat Scenario Mode or enter a code at the Title Screen. The programmers have added some code that loads before the Title Screen, where FFFF is moved to the RAM at 00FFFC02 (so the Sound Test will display). It then checks the Hardware Version of the Mega Drive. If the Mega Drive is not Japanese, then it reverses the bytes so 0000 is now in the RAM at 00FFFC02 (so the Sound Test will not display).
Code is activated before the Title Screen (USA Version):
00E102 33 FC MOVE.W #$FFFF,($00FFFC02) ; Move FFFF to FFFC02.
00E10A 61 00 BSR #$0BAE [00ECBA] ; Jump to 00ECBA.
00ECBA 10 39 MOVE.B ($00A10001),D0 ; Copy Hardware Version byte (A10001) to D0.
00ECC0 02 00 ANDI.B #$C0,D0 ; Perform a logical AND on C0 and byte in D0 (basically
bits 5 to 0 will always become 0, while bit 7 [Region]
and bit 6 [Display] are kept the same).
00ECC4 67 14 BEQ #$14 [00ECDA] ; If bits 7 & 6 equal 00, then jump to ECDA.
00ECC6 30 39 MOVE.W ($00FFFC02),D0 ; Move word from FFFC02 to D0.
00ECCC 46 40 NOT.W D0 ; Reverse the bits in D0.
00ECCE 33 C0 MOVE.W D0,($00FFFC02) ; Move word from D0 to FFFC02.
00ECD4 4E F9 JMP ($00023536) ; Jump to 23536.
00ECDA 4E 75 RTS ; Return to start.
In the Sonic Classics version, the code to prevent the Sound Test from being displayed has been modified. The code to check the Hardware Version is still there, but the rest of the instructions have been set to no operation (with two instructions not doing anything useful). Then 0000 is moved to the RAM at 00FFFC02 (so the Sound Test will not display).
Code is activated before the SEGA Logo (Sonic Classic - USA/Europe V1.1):
1224F6 10 39 MOVE.B ($00A10001),D0 ; Copy Hardware Version Byte (A10001) to D0.
1224FC 02 00 ANDI.B #$C0,D0 ; Perform a logical AND on C0 and byte in D0 (basically
bits 5 to 0 will always become 0, while bit 7 [Region]
and bit 6 [Display] are kept the same).
122500 04 00 SUBI.B #$00,D0 ; Subtract 0 from D0.
122504 4E 71 NOP ; No operation.
122506 4E 71 NOP ; No operation.
122508 4E 71 NOP ; No operation.
12250A 4E 71 NOP ; No operation.
12250C 13 FC MOVE.B #$00,($00FF0A3A) ; Move 00 to FF0A3A.
122514 4E 75 RTS ; Return to start.
Code is activated before the Title Screen (Sonic Classic - USA/Europe V1.1):
10E10C 33 FC MOVE.W #$0000,($00FFFC02) ; Move 0000 to FFFC02.
10E114 61 00 BSR #$0BAE [10ECC4] ; Jump to 0BAE.
Unused Music
The game has 26 tracks (this includes the "No Music" track)", but the game only allows 19 of them to be selected in the Sound Test. The programmers have added some code that checks the Hardware Version of the Mega Drive. If the Mega Drive is Japanese, then it increases the value so all 26 tracks can be selected instead of 19.
Code to unlock extra sounds if the Hardware Version is Japan (USA Version): 0227FC 1E 39 MOVE.B ($00A10001),D7 ; Copy Hardware Version byte (A10001) to D7. 022802 02 07 ANDI.B #$C0,D7 ; Check bits 7 & 6 from D7 (Region & Display). 022806 66 04 BNE #$04 [02280C] ; If bits 7 & 6 are not 00, then jump to 2280C. 022808 14 3C MOVE.B #$1A,D2 ; Copy byte 1A to D2 (26 tracks can be selected). 02280C
If you go to the following ROM location, you can change the hex byte from 13 to 1A. This will allow you to select all the tracks on any Hardware Version of the Mega Drive.
Number of tracks to select (USA Version): 022839 = Number of "Music Tracks" that can be selected in the Sound Test.
Present in the Sound Test are 6 unused tracks. These are mostly leftover tracks from the Genesis Puyo Puyo. Some are based from Genesis Puyo Puyo, but have been updated to use different instruments and actual drum samples, rather than the noise-based percussion instruments that were used in the original game.
| Song | ID | Description |
|---|---|---|
| 01 | A rendition of Kraftwerk's "Home Computer", removed for licensing reasons. In an earlier build of the game, this was the title screen music. A similar-sounding song was used for stages 9-12 in the final version. | |
| 0C | The Stage Clear original track from the Genesis Puyo Puyo. | |
| 0F | The Brave of Puyopuyo original track from the Genesis Puyo Puyo. A remixed version of this track is used before you play against Dr. Robotnik. | |
| 10 | The Theme of Puyopuyo original track from the Genesis Puyo Puyo. A remixed version of this track is used for the Cast Roll. | |
| 14 | A faster and slightly altered version of the Stage 13 Battle Theme. | |
| 15 | A very weird sound. |
To hear the tracks during the VS. Mode or Exercise Mode, change the hex byte to the required Track ID from the table above.
Tracks to play (USA Version): 00239F = Track to play during VS. Mode. 00246F = Track to play during Exercise Mode.
Cheat Codes to unlock Sound Test
Use the following cheat codes to unlock the Sound Test and listen to all the tracks:
| Game Version | Game Genie Code | Hex Code | Description |
|---|---|---|---|
| Dr. Robotnik's Mean Bean Machine (USA) |
F2WA-EA8J BA4T-EA2R CHTT-BCAE DJYA-FEK2 |
0224C8:602E 02350E:6008 00E104:1111 022838:321A |
Skip the Region Check. Skip the Checksum. Unlock the Sound Test. Listen to the unused music in Sound Test. |
| Dr. Robotnik's Mean Bean Machine (EUR) |
F2WA-EA8N BA4T-EA2W CHTT-BCAJ DJYA-FEK6 |
0224CC:602E 023512:6008 00E108:1111 02283C:321A |
Skip the Region Check. Skip the Checksum. Unlock the Sound Test. Listen to the unused music in Sound Test. |
| Sonic Classics (USA/EUR V1.1) |
CTDW-TA3C 99TV-B92R DJYB-FENC |
280722:6014 10E10E:FFFF 122882:321A |
Skip the Checksum. Unlock the Sound Test. Listen to the unused music in Sound Test. |
| Sonic Compilation (EUR V1.0) |
MJAW-TRCR CHTV-BCAR DJYB-FENC |
28014E:075A 10E10E:1111 122882:321A |
Skip the Region Check. Unlock the Sound Test. Listen to the unused music in Sound Test. |
Checksum Error
The checksum error screen from the Genesis Puyo Puyo still exists in this game, and is still triggered in the same way, which is of course the ROM checksum failing.
Unused Tilemaps
The game contains tilemaps from the 1P VS 2P and Endless Mode used in Puyo Puyo.
| To do: The tilemap is split in many parts. Find all of these. |
Note that while the tileset for Endless Mode still exists, the 1P VS 2P one doesn't.
Unused Text
At location 00019EC0 in the US version is data that could have been used to load the word MISSION onto the playing field:
00019EC0 F222 ; Mapping Address. In this case, loads onto Plane B. 00019EC2 A500 ; Palette to use. In this case, make the text blue. 00019EC4 2E263A3A263230 ; The letters to display. In this case: MISSION 00019ECB FF ; End of text
This could indicate that the MISSION MODE from Puyo Puyo (NEX/MSX) was going to be used in the Mega Drive version of Puyo Puyo.
Sixth Puyo Color
Color ID: 02
Like in Puyo Puyo, code for the sixth colored puyo still exists here and its palette is used properly. As the graphics were overwritten, in the fixed screenshot tiles from the violet puyo are used.
| Normal | Fixed |
|---|---|
![]() |
![]() |
Lockout Screen
| US | Korea |
|---|---|
![]() |
![]() |
The Korean version changed the lockout error message to capital letters, and corrected the "onry" typo to "only".
Bypass
There is a code that can bypass the lockout error message by entering the following inputs on controller 2:
A A ↑ → ↓ ← B B → ↓ ← ↑ C C ↓ ← ↑ → S S
Note: This can only be attempted once. If you mess up, then you will need to reset your console to try again.
Code to detect if the correct inputs on controller 2 have been pressed:
ROM:0002253E @@ChkCode: ; CODE XREF: ObjLockoutBypass+2Cj
ROM:0002253E lea (r_P2_Data).l,a1
ROM:00022544 lea (LockoutBypassCode).l,a2
ROM:0002254A move.w $26(a0),d0
ROM:0002254E move.b (a2,d0.w),d0
ROM:00022552 cmpi.b #$FF,d0
ROM:00022556 beq.s @@BypassLockout
ROM:00022558 move.b 1(a1),d1
ROM:0002255C beq.s @@NoButton
ROM:0002255E cmp.b d0,d1
ROM:00022560 bne.s @@NoMatch
ROM:00022562 addq.w #1,$26(a0)
ROM:00022566
ROM:00022566 @@NoButton: ; CODE XREF: ObjLockoutBypass+52j
ROM:00022566 rts
ROM:00022568 ; ---------------------------------------------------------------------------
ROM:00022568
ROM:00022568 @@BypassLockout: ; CODE XREF: ObjLockoutBypass+4Cj
ROM:00022568 move.b #0,(r_BC_Stop).l
ROM:00022570 rts
ROM:00022572 ; ---------------------------------------------------------------------------
ROM:00022572
ROM:00022572 @@NoMatch: ; CODE XREF: ObjLockoutBypass+1Aj
ROM:00022572 ; ObjLockoutBypass+26j ...
ROM:00022572 jsr (ObjDelay).l
ROM:00022578 nop
ROM:0002257A rts
...
ROM:00023520 LockoutBypassCode:dc.b $40 ; DATA XREF: ObjLockoutBypass+3Ao
ROM:00023521 dc.b $40
ROM:00023522 dc.b 1
ROM:00023523 dc.b 8
ROM:00023524 dc.b 2
ROM:00023525 dc.b 4
ROM:00023526 dc.b $10
ROM:00023527 dc.b $10
ROM:00023528 dc.b 8
ROM:00023529 dc.b 2
ROM:0002352A dc.b 4
ROM:0002352B dc.b 1
ROM:0002352C dc.b $20
ROM:0002352D dc.b $20
ROM:0002352E dc.b 2
ROM:0002352F dc.b 4
ROM:00023530 dc.b 1
ROM:00023531 dc.b 8
ROM:00023532 dc.b $80
ROM:00023533 dc.b $80
ROM:00023534 dc.b $FF
ROM:00023535 dc.b 0
Other Puyo Puyo Leftovers
Debug Flags
While the addresses have been shifted from the ones in Puyo Puyo, the following debug flags still exist in the game:
00FF1958: If set to zero, a CPU takes over the player.
00FF1959: If set to a nonzero value, beans only drop if you press C.
00FF195A: Does nothing here, but in Puyo Puyo, it was used to skip stages in Scenario Mode.
00FF195B: Does nothing in both here and Puyo Puyo, but is initialized alongside the other flags.
Satan's Cloud Swirling Effects
The code that handles the cloud swirling effects in Satan's stage introduction cutscene from Puyo Puyo is still in the game, starting at 0000151C in the ROM.
Cleanup > To do
Games > Games by content > Games with regional differences
Games > Games by content > Games with revisional differences
Games > Games by content > Games with unused areas
Games > Games by content > Games with unused graphics
Games > Games by content > Games with unused music
Games > Games by developer > Games developed by Compile
Games > Games by platform > Genesis games
Games > Games by publisher > Games published by Sega
Games > Games by release date > Games released in 1993
Games > Games by series > Puyo Puyo series
Games > Games by series > Sonic the Hedgehog series





















