A secret hidden image of chair 1. Find it at your peril. A secret hidden image of chair 2. Find it at your peril. A secret hidden image of chair 3. Find it at your peril. A secret hidden image of chair 4. Find it at your peril. A secret hidden image of chair 5. Find it at your peril.
Ethan J. Hulbert

Super Mario RPG (SNES): Unused Content, Lost Dialogue, Debug Menus, Hidden Enemies, and ROM Secrets

Unused content from the 1996 U.S. SNES cartridge, a comparison with the Japanese Super Famicom release, and a final look at the unofficial translation patches.

I went through the original Super Mario RPG: Legend of the Seven Stars ROMs looking for things Square left behind: unused enemies, cut dialogue, unfinished boss encounters, discarded rooms, debug menus, oddball items, and graphics that never appear in a normal playthrough. I also compared the Japanese release with the American one, then checked the fan-translated versions for anything unusual. I have played this game a crazy number of times, not to mention the fan forums and friends I made as a kid due to this, but until now I had never sat down with its data in this way.

This is the long, insane, hyper-fan deep-dive post. If you know your Yaridovich from your Drill Bit, or have ever wondered why a developer would leave four battle formations full of Torte chefs in the game, you’re in the right place. This has been my favorite video game since it came out!

Note that I’m definitely not the first person to do this kind of thing, and I relied heavily on other documentation already out there, which I have linked throughout and at the end, and to those people I give full credit. This project was more about independent verification and research practice for myself, as well as to compile one huge source of information myself.

I did notice one discrepancy. Super Mario Wiki reports that Crippo, the unused brown Hippopo variant, has 800 HP. However, in the ROM, Crippo only has 10 HP. I don’t know why Super Mario Wiki says 800 and if there’s a reason for it that I’m not seeing.

My memory isn’t perfect. It has been a while since I played the SNES version from beginning to end, and the game has plenty of obscure conditional dialogue that is easy to mistake for something unused. I checked the cartridge’s text records against published transcripts and existing ROM research, and I have tried to say when an interpretation goes beyond what I can find. An abandoned room layout isn’t automatically a finished secret dungeon and some of the “hidden text” could be unreachable for any number of reasons.

Everything here concerns the 1996 SNES game unless I specifically say otherwise. I mention the 2023 remake where it helps identify or explain a leftover, but I have kept its new material separate. Most of these discoveries were documented by other researchers long before I started comparing the ROMs; links to their work are throughout the article and collected at the end.

So what is actually hidden in the original Super Mario RPG ROM? More than one kind of thing: functioning development menus, unused items and attack code, enemies with names and battle scripts but no normal encounters, surviving formations for third Croco and Belome fights, old map collision data, abandoned character animations, and English dialogue you ordinarily cannot see. Some of it is nearly finished. Some of it is a handful of bytes that became meaningless when something else changed.

The original SNES ROMs and how I checked them

My starting point was a 7z archive containing 18 4 MB ROM files: the clean American release, Japanese v1.0, fan translations, and a few catalogued bad or modified dumps. I concentrated first on the American release, checked its enemy-name, item, battle-formation, text, and Psychopath data, and then compared Japanese records and the other patched versions. The original American file is an unheadered 4,194,304-byte ROM, CRC32 1B8A0625, SHA-256 740646f3535bfb365ca44e70d46ab433467b142bd84010393070bd0b141af853. The original Japanese file is CRC32 5527071E, SHA-256 5d6aa9daec8525495510cda7cbd0bf476466dc4d8d86c28420e31715db351c64.

All offsets below beginning with 0x are hexadecimal. Unless I say “CPU address,” they refer to positions in the unheadered ROM file, not an address you can enter directly into an SNES memory viewer. Enemy, item, and formation IDs are also hexadecimal. That is why 0xA1 is an enemy identifier, not 101 in decimal.

I use three evidence categories: ROM record for a value or text I can identify in these files, documented behavior for things other researchers have made the game display or execute, and reconstruction for attempts to explain what an abandoned feature was meant to be. I did not complete a full disassembly of every event script, and I did not run all the debug encounters in an emulator. That limitation applies wherever I discuss exactly why a given string cannot appear.

Useful starting references are The Cutting Room Floor’s main Super Mario RPG page, Data Crystal’s ROM map, Super Mario Wiki’s prerelease and unused-content catalog, the SNES text dump preserved on GameFAQs, and The Photic Zone’s Super Mario RPG pages.

Super Mario RPG debug menus and developer leftovers

The battle debug menu and how it works

Square shipped the game with much of its internal battle-testing interface intact. In the U.S. ROM, a single instruction byte at 0x0106AF is F0. A documented test patch changes it to 80, allowing the battle menu to be summoned while a party member is taking a turn. The often-cited Pro Action Replay code is C106AF80. I checked the original byte in this cartridge; the behavior of the patched code comes from existing emulator research, not a test I performed here.

The menu labels start around 0x010798. These are not generic strings guessed from a hacking guide; they are stored in the actual game. The main features are:

Command Purpose / oddities
SCENE Select a formation or scripted battle by hexadecimal number. The entries include normal encounters, discarded boss slots, and scenes never intended for a normal playthrough.
OBJ Browse uncompressed sprite objects and cycle their animation sequences. This is particularly useful for unused character poses and test effects.
BG Switch battle backgrounds without changing the encounter itself.
HPMAX Restore characters’ HP to their current maximum values.
MUSIC / SE Audition music tracks and sound effects.
LINE Display an internal performance or CPU-usage indicator.
EFFECT Inspect animation-effect objects, including stars, rocks, and other special-attack graphics.
EVT 1 / EVT 2 / EVT 3 Jump into scripted battles: the opening Bowser fight, Boomer, and Smithy.
TEST Run a Smithy transformation test. Published investigations report that execution hangs afterward.

The OBJ browser covers ordinary character sprites, battle enemies, weapons and effects, plus miscellaneous graphics. An object can have multiple sequence numbers; stepping through them is how abandoned poses become visible even when no surviving NPC or battle ever calls them. Some records are malformed or rely on resources that were changed later, so a crash or nonsensical sprite is not itself proof of some bizarre monster.

The separate spell-effect test menu

The ROM also contains the strings MAGIC, LASTER, and BGLASTER around 0x010822. This is another technical menu for testing special effects. The last two names seem to be Japanese-influenced spellings of raster. Research describes LASTER as working with a Big Boo graphic and BGLASTER with vertical scaling. The documented patch combination is C106AF80 C106D2F3 C106D307.

Overworld debugger, test warps, and debug room 00

There is also a separate overworld testing system. In the American release, a documented code combination is D4AFC100 D4AFC226 DF000001, used before entering Mario’s Pad; the Fungi Light then gives access to the menu. This is a different tool from the in-battle debugger, and much of its English text was wiped or blanked. The Japanese cartridge retains more of those labels, which I discuss below.

One of the most entertaining leftovers is debug room 00, a large grassland-like room with Toad NPCs, Bowser, and a Mario actor that does not do much. The debug-room access code published by researchers is 7FF40400 7FF40501, followed by a loading transition. One Toad is essentially a walking administrative console: save, grant members or locations, supply the Signal Ring, and even send the player directly to the credits. Other characters warp to destinations including Nimbus Land, Barrel Volcano, Bean Valley, Monstro Town, Land’s End, and Bowser’s Keep. The option to make “Member 1” or “Member 2” drop out of the party survives in the dialogue bank.

The literal string Star Menu Test occurs at 0x22B3F8, next to overworld debug travel text such as The World Map. The funny part is that this isn’t a black test screen full of random junk. Somebody at Square made an actual room where they could get around the game without replaying hours of story.

Developer signatures, debug text, and controller code

At 0x030010, the American ROM carries an internal signature: ENGLISH  VER. and by M.YOSHIOKA, followed by Japanese text associated with programmer Mitsuo Yoshioka and a dedication to Hideji Ootaki. A different signature around 0x09E02E reads START OF MULTI5 CONNECT CHECK, followed by a modified version of Nintendo’s MULTI5 detection routine. Despite its wonderful name, that is controller hardware-detection code. It is not evidence for a planned five-player Mario RPG.

Other surviving developer-style strings include 000-0FF/ EVENT/100-1FF/ BATTLE/, an Error message record, and the baffling Go, World!. That last one becomes more interesting once the Japanese original is consulted: there it means something like “The monster is provoked!” rather than an obvious “Hello World” joke. It has been reported under particular glitch conditions involving sheep effects and regenerated enemies; nobody should infer a completely functional taunt system from that line alone.

Unused items, Debug Bombs, and abandoned equipment behavior

The American ROM has 256 item-name slots, beginning at 0x3A46EF, with 15 bytes per name. Item parameter records are 18 bytes each, beginning at 0x3A014D. A lot of slots are simply named DUMMY; those are unused allocations, not dozens of fully designed secret items. A smaller collection, however, is plainly there for testing.

Item Hex ID Actual behavior or remaining purpose
Debug Bomb 85 255 damage to every enemy at once.
Bomb AD 255 damage to one enemy.
Doom Bomb A8 255 damage to a targeted ally.
Bane Bomb A7 Poison a targeted ally.
Fear Bomb A9 Inflict Fear on a targeted ally.
Sleep Bomb AA Put a targeted ally to sleep.
Mute Bomb AB Silence a targeted ally.
S.Crow Bomb A5 Turn a targeted ally into a Scarecrow.
Secret Game A4 An earlier item-based version of Beetle Mania, with a 999-coin selling value.

The purpose is obvious. If I were testing an enemy animation or a poison cure, I wouldn’t want to wander around Forest Maze waiting for the right attack. I’d want to poison Mallow on command. These bombs do exactly that. Some of the names are wonderfully literal in Japanese: デバッガーボム is the Debugger Bomb, and ころしボム is the Kill Bomb.

Secret Game is different. Its description is “A super popular video game!” and its item-price storage is consistent with a selling value of 999 coins. It appears to be an older way to represent Beetle Mania before the minigame was invoked through the regular menu. That points to a change in how Beetle Mania was accessed, not a missing separate video game.

Permanent-stat items that nobody can normally obtain

Item-handling code at CPU addresses C2:C074–C2:C0B1 includes a branch that can permanently add to Speed, Attack, Defense, Magic Attack, and Magic Defense. Setting an item’s attack flag to 03 reaches that behavior. Ordinary consumables in the shipped game do not use it that way. It would have supported the familiar RPG idea of consumables that permanently raise a statistic, instead of merely healing HP, restoring Flower Points, or affecting a battle temporarily.

Elemental physical weapons

The equipment-record format also includes bits for Ice, Thunder, Fire, and Jump elemental typing on physical weapon damage. Those bits still exist even though normal weapons do not take advantage of the system. There are also unused hammer and shell palettes. It’s tempting to label a red hammer a canceled Fire Hammer or a blue shell an Ice Shell, but the spare colors don’t establish which weapon, if any, they belonged to. The engine support is established. The exact original assignment of the spare artwork is not.

Bowyer still checks for the Carbo Cookie

The battle scripts for Bowyer and his Machine Made counterpart both contain a check for the Carbo Cookie. Under that condition, buttons that Bowyer has disabled can be restored. The problem is that the Carbo Cookie is a story/key item, not something you can select and throw at Bowyer in an ordinary battle. Either an earlier item behaved differently, or this was a developer test that got left in.

There is also an unused spell-parameter behavior that lets a magical attack calculate using physical Attack and Defense instead of their magical counterparts, while the Mushroom status effect carries control-flag logic that is basically redundant in the shipped turn-skipping implementation. You could play the game a hundred times and never notice either of these branches.

Unused attacks, Confusion, and discarded battle mechanics

The battle engine contains a condition often described as Confusion or Berserk. Affected party members can lose player control and automatically make physical attacks against random targets, even themselves or allies. Enemies can also target themselves, although the enemy behavior is clearly broken in several circumstances: some attacks miss automatically, and other unusual attacks appear when both sides are afflicted. The condition uses status byte 0x10 in the documented research, with an unused character portrait sequence. It looks like a mechanic that made it into the program but did not make it into the game design.

Abandoned move What the remaining data indicates
Toxicyst A green spore attack applying Poison.
Dahlia Dance Transforms an opponent into a Mushroom.
Chain Saw Uses a battle effect apparently recycled from Corona.
Knock Out An extreme 9,999-damage attack capable of wiping out a party.
Royal Flush A high-damage 8× physical attack modifier; plausible extra Jester move.
Sickle An attack with a 1.5× multiplier and Scarecrow transformation.

The Royal Flush name makes sense next to the Jester enemy’s established card-themed attacks, Full House and Wild Card, but that is an interpretation of the naming and multipliers, not a recorded design memo. I verified the U.S. strings for Royal Flush at 0x395B2D, Toxicyst at 0x395CC0, Dahlia Dance at 0x395DEB, Chain Saw at 0x3A19D4, and Knock Out at 0x3A1911.

Another interesting leftover: individual Axem Rangers retain experience-point rewards that cannot normally be collected, because their final encounter handles defeat and reward distribution unusually. The Blade and the battle’s scripted result take precedence over the individual enemies’ ordinary reward data. There are also dummy party specials and a spare battle-button-coordinate entry. These do not establish that there was ever a sixth playable party member.

Unused enemies: names, stats, behaviors, and placeholder monsters

The enemy name bank starts at 0x3992D1, with 256 thirteen-byte slots. Their statistics are located through a pointer table beginning at 0x390026. Several apparently discarded enemies still have names, palette data, attack scripts, and occasionally Psychopath thoughts. Many of their current stat records are placeholders with 10 HP and nearly all the other combat attributes zero. That is a strong sign of unfinished or overwritten data, not evidence that Crippo was meant to be the easiest boss ever invented.

Enemy (U.S. label) Appearance What is left / reported attacks
Baba Yaga Blue Fautso Sand Storm, Mega Recover, Thornet; some self-targeting oddities. 10 HP in current record.
Crippo Brown Hippopo Lightning Orb, Doom Reverb, Thornet, and a Vigor Up action that may target the player inappropriately. 10 HP.
Juju Blue Reacher Mush Funk, Scream, Knock Out, and Silver Bullet; a unique inaccessible thought. The old name is not the monster’s ordinary in-game identity.
Lumbler Blue Stumpet Crystal and a three-egg attack associated with Birdo; inaccessible “Grrr!” thought.
Mastablasta Blue Mastadoom Crystal, Blast, Storm, Eerie Jig, and Goomba summoning. 10 HP placeholder.
Pile Driver Blue, partially broken Corkpedite Hammer attack and Fear Roulette. 10 HP placeholder; its body animation can malfunction spectacularly.
Radish White Carroboscis Endobubble, watery attack, normal physical attack. 10 HP placeholder.
Harlequin Green Jester Mainly a physical attack; no completed spell set. 10 HP placeholder.
Super Spike Red Spikey variant Physical and spike attacks; 10 HP placeholder.
Chompweed Pipe Vault overworld plant A real enemy-style record despite its ordinary role as a field hazard; 10 HP placeholder.
Unnamed Bahamutt variant Purple Bahamutt with dark glasses Reported Somnus Waltz, Flame, and Bolt.
Unnamed Gunyolk variant Yellow-brown Gunyolk Lightning Orb.

Pile Driver is an especially good demonstration of why old records can look haunted. Researchers forcing the body component to act have seen it briefly turn into Bowser making a claw motion, then a thin white graphic, before dying. I doubt Square intended a secret Bowser-transforming caterpillar. This looks more like outdated sprite or animation references being interpreted through the final battle engine.

Drill Bit is an unusually complete discarded combatant

The Drill Bit monster record, ID 0xE3 at 0x390F26, is far more developed than the 10-HP placeholders. Its current stats are HP 80, Attack 85, Defense 70, Magic Attack 40, Magic Defense 56, and Speed 15; it can use Skewer and has actual resistances and rewards (11 EXP and one coin). Its thought is “This is for Yaridovich!” Drill Bits do turn up in Smithy-related story material, but this full, normally fightable enemy record is never used as an ordinary target in the released adventure. The Yaridovich wording suggests an older encounter relationship worth investigating, though it does not establish a complete missing Yaridovich sequel.

The cactus boss Sabon, known mostly from what does not survive

Sabon is more substantial than most of these recolors. Early Japanese concept and promotional material depicts a large cactus-like boss with a pacifier and smaller cactus companions called Boten. The Japanese word saboten means cactus. The finished ROM preserves an animation-set index (0x30) and sequences for standing, taking damage, attacking, and a special attack; the complete original sprite art and full battle definitions are no longer there. It has been described as a regional guardian for a desert-area concept, and prerelease art places the cactus around what became Booster Pass. The visual and animation evidence is real; an exact battle location, script, move list, or connection to Artichoker cannot be proved.

A few other partially developed enemy ideas can be seen through prerelease material and abandoned palette variants: alternate Magikoopas, extra Wiggler and Lakitu battle roles, blue or differently tinted enemies, and a Smithy first-form variant. The Mario Wiki catalog has pictures and scans for much of this. I am leaving the graphics out of this article, but the visuals are worth looking at alongside the underlying records.

Unused battle formations, extra Croco and Belome encounters

The game contains 512 battle formations, 26 bytes each. The original formation data occupies 0x39C000–0x39F3FF. Some groups are never selected by regular encounters; others contain enemies whose IDs were later reassigned, producing combinations that probably did not exist as designed fights.

Formation / group Contents or function What I make of it
0x117 A third Croco slot, pointing at nameless enemy 0xF2 with 10 HP Evidence of an extra boss encounter stub, not a finished third fight.
0x120 A third Belome slot, pointing at nameless enemy 0xC9 with 10 HP Another boss stub; no proper surviving behavior scripts.
0x06C–0x06F Between one and four Torte chefs Possibly once fightable in Marrymore, or used to test battle arrangements.
0x09C–0x09F One through four Drill Bits A fuller family of formations for the otherwise inaccessible enemy.
0x040–0x043 Goombas, Shy Rangers, Piranha Plants, Sparkies Earlier or test Pipe Vault encounters.
0x08C–0x08F Bandana Blues, Greapers, Straw Heads Unusual groupings outside their finished placements.
0x0EC–0x0EF Magikoopa with ordinary enemies May indicate a non-boss or otherwise differently implemented Magikoopa.
0x104 / 0x106 / 0x107 Mad Mallets, sometimes with Clerk Discarded Factory combinations.
0x108–0x10B Pounders with or without Clerk Another set of Factory tests.
0x140–0x143 Poundettes with or without Clerk More Factory combinations.
0x160–0x161 Three or four Super Spikes Fighting groups for a half-finished enemy.
0x1FD Bundt, Raspberry, and two Terrapins A strange mixture probably reflecting overwritten IDs rather than a deliberate cake-and-Koopa fight.

There are also leftover formations involving Exor’s Right Eye with Bandana Reds, a solo Axem Yellow, King Bomb and Mezzo Bomb, and a Microbomb in a boss-like position. This is where I have to resist turning an interesting data structure into a nonexistent secret plot. The formations survived; the intentions frequently did not.

Unused maps, hidden rooms, and removed locations

A collision map tells the engine where Mario can stand, where a wall or gap exists, and how one area connects to another. When the developers replace a map’s graphics but leave an older collision layout behind, the resulting remnant can look like a floor plan from a lost building. Sometimes the real tiles are still intact; sometimes the shape is all we get.

Mushroom Kingdom used to be different

Earlier map data shows a Mushroom Kingdom with the item shop in a different, lower position, a two-door building, a changed connection to Mushroom Way, and a different approach to the castle. The Bandit’s Way approach is also absent in one early layout. Separately, the finished town retains collision geometry extending beyond what the player can see. The former is an identifiable early redesign. The latter suggests the final map was reduced or rearranged, but it does not tell us what would have occupied the extra area.

There are also old interior layouts and odd room geometries, some resembling basement or winding underground spaces. I would rather call them unassigned rooms than declare that Mushroom Kingdom originally had a vast dungeon beneath the bakery. That said, I would absolutely like to play the version with the extra basement.

Forest Maze, Kero Sewers, caves, and Bowser’s Keep

Area Surviving abandoned layout
Forest Maze Several deleted rooms and branches; some shapes resemble a question mark and exclamation mark. It is unclear whether that resemblance is deliberate.
Kero Sewers Extra rooms and a possible chest area, plus differing passage arrangements.
Booster’s Tower Earlier collision arrangement, especially around a springboard/climbing section.
Other caves Some rooms with apparent dead ends or exits that may have depended on springboards or scripted movement.
Bowser’s Keep Multiple groups of missing passages, basement-like areas, and a long corridor containing a donut-shaped platform within a pit.
Mountain settlement A stepped, rugged village-like collision map, sometimes suggested as an early Moleville, though the missing graphics make the identification uncertain.
Tadpole Pond / Melody Bay Older spatial arrangement and a different or longer musical-pond approach.

The possible prison dungeon

One especially interesting collision map appears to be a dungeon with cells or a prison-like arrangement. A 1995 prerelease screenshot shows Mario and Princess Toadstool apparently imprisoned, with early Terrapins and an unidentified figure nearby. The matching architecture makes it plausible that the scene belonged to a cut captivity or escape sequence. It would be a major story change, but it is not safe to claim that an entire playable jailbreak chapter survives. We do not have the complete script, and nobody has established who captured them or when it happened. Treat the pairing of image and map as an informed reconstruction.

The casino’s inaccessible guests

Grate Guy’s Casino and Seaside Town share some underlying map resources. In an inaccessible part of the casino-loaded map, researchers found a male Toad bobbing with dialogue normally associated with Geno, Geno himself pacing back and forth, and two Terrapins displaying walking animations while standing in place. Touching the Terrapins calls a battle against two Goombas on the Mushroom Kingdom battle background. Geno’s assigned dialogue is “Come on! Let’s get this show on the road.” This is programmed NPC behavior outside the player-accessible space, which is much more specific evidence than a stray sprite file.

Two abandoned battle backgrounds

An unused underwater battle arena survives with substantial finished artwork, a good candidate for an encounter in or around the Sea. Another is an ornate sunlit interior with greenery and tall windows, sometimes compared with Nimbus Castle imagery but not confidently assignable to a specific final room. Both backgrounds have been reconstructed by ROM researchers. I have not independently reassembled their tile and palette data in this project, so I am not pretending to know exactly which abandoned encounter would have used either.

Unused graphics, animation frames, sprites, and props

There is an impressive amount of visual debris. Some of it is material that was drawn and abandoned; some was implemented but never called; some looks like an early version of something that remains in the game. I’m grouping it by what survives rather than treating every palette as a new enemy.

Asset / character What survived and why it is odd
Banana peel with eyes A recognizable cartoon banana peel that might have been a field obstacle; Booster Hill has been suggested, without supporting placement data.
Small sea urchin A Super Mario World-like Urchin. Two instances are loaded outside the normal visible area during the Marrymore wedding-belongings scene.
Different Mario doll A miniature Mario-like graphic, unlike the more toy-looking doll Booster uses in the final game.
Older Sunken Ship Shows a larger, more complete hull facing the other way, with a changed crow’s nest. An early appearance survives in the ending parade.
Old sewer pipes Wall-entering pipe tiles that were later replaced or remapped to Belome-related gargoyles.
Casino blackjack table An earlier, rounder, simpler table.
Belome temple art Alternate statue orientation and extra decorative assets.
Wedding props Unused bouquets and variations of scenery.
Lakitu with air pump A complete peculiar animation. A Royal Bus connection is imaginable but unproved.
Toadofsky A more elaborate conducting animation than the brief movement the final game uses.
Geno An unused head-holding motion.
Peach Extra floor-crying and peeking animations, associated with alternative staging of her Booster Tower scenes.
Czar Dragon An unused charging pose for a spell or special move.
Leuko / Muckle Unused regular physical attacks despite their magic-oriented behavior.
Chester A discarded physical attack exposes an Ameboid inside the chest. Its Attack statistic is 220, although it does not ordinarily make that attack.
Exor Extra eye movements in both directions.
Smithy Extra first-form normal-head attack and Tank-head casting poses, plus small hidden transformation graphics.
Shy Guys Sitting, falling, and other low-detail poses stored with test art.
Spiderweb An effect that expands and disintegrates but is not normally invoked.
Yo’ster Isle ending flowers Extra frame sequences for flowers or parade decoration.
Extra palettes Colored hammers, shells, Mallow’s cymbals, teleport effects, cave colors, enemy variants, and a little border-highlight palette for menus.
Stray Mario-colored graphic An abstract-looking fragment near Mario/Smithy-related graphics, with no established purpose.

The Chester discovery is my favorite of the graphic-only mysteries because the unused attack animation and the conspicuously high Attack stat point in the same direction. There was apparently at least an experiment with Chester hitting you, complete with a surprise inside the chest. That is still not the same as proof that it was once used in a finished room.

Lost English dialogue and other inaccessible writing

This is the category I care most about. Sprite leftovers are neat, but an abandoned line can tell us what a character was going to do, what a quest might have asked for, or what joke the writers decided against. I decoded the English text records from the ROM and compared the suspect ones with old playthrough transcripts and the unused-text research. Appendix A below reproduces all 79 recovered records in a table, including their offsets, instead of cherry-picking only the funny ones.

Princess Toadstool may have walked through town incognito

An abandoned cluster of Mushroom Kingdom lines looks like a different version of Peach’s departure after joining the party. She tells Mario:

TOADSTOOL: Shhhh…. If people see who I’m with, they’ll flip out, so… Let’s be real quiet!

Another line says she loves the smell of flowers but is in a hurry and will return later. Nearby dialogue includes a person noting that the Princess has not been around to inspect the flowers, someone getting startled, and a townsperson inviting Mario to eat. The grouping makes it look like there was once a walk through town where Peach did not want to be spotted, with residents reacting along the route. I can’t demonstrate the precise order or every trigger from the text alone. It might have been a more interactive departure sequence; that is the sensible guess, not an observed playable event.

There is also an extended complaint addressed to Mario, with the speaker unspecified in the text dump: “Mario, where have you been? I’ve never been so worried!” It ends by asking whether Mario would want to marry someone so angry she cannot see straight. I wouldn’t assign that to Peach, a generic Toad, or a scrapped fiancée without stronger script evidence.

Croco knew when you had already found everything

A discarded contingency for Croco’s Signal Ring delivery in Nimbus Land starts by recognizing that the player has already discovered all hidden treasure, then complains: “So, youse guys found ’em ALL? …Geez…I’ve failed… …I’m humiliated…!” It is a splendidly mean little joke. The ring helps locate treasure, and Croco would have been admitting that his big contribution was useless. The string survives at 0x247318; the extent of the completed conditional logic is a separate question.

Unused Marrymore, Belome, and Tadpole Pond business

The Marrymore hotel has extra bellhop lines asking Mario to escort a guest, calm down, and take care of things. A guest says they are exhausted from walking all day and have no requests. Those fragments suggest a more elaborate or differently scripted hotel job. Over at Belome Temple, Belome has an unused response after a rusty key, “Eww, a mouthful of rust. Thanks anyway,” and an inaccessible fallback fortune predicting hardship. Tadpole Pond has an unused statement that its items are all sold out. A limited-shop mechanic might have been considered, although there is no reason to state as fact that shops once had a complete stock-depletion economy.

Extra lines from Mallow, the Axem Rangers, and Smithy

Mallow has a particularly telling unused line during the Nimbus Castle reunion: “Please! These people aren’t your enemies. They’re my friends.” Its presence could indicate an earlier confrontation with the royal family or different staging of the reunion. Axem Red can bark “SHUT UP, all of you! We’ve got a job to do!” and Smithy can reprimand the party for making him upset after his first form is defeated. The Japanese versions give the latter two lines a somewhat harsher tone. Those are actual battle-dialogue records, even though normal story flow does not use those exact lines.

The weird small lines are sometimes just as good

Pa’Mole has a longer panic about an apparently missing bomb; Chef Torte objects to interrupting a wedding; Garro has a nervous, stammering reaction around the statue disguise; an unidentified speaker complains about hating males; Moleville has an alternate child discussing the trolley; and there are spare win/loss messages for minigames. One deleted prompt asks whether the player wants to give a puzzle another shot. Those are fragments, but they show quite a lot of editing and rearrangement in the game’s event writing.

Old battle rewards and level-up text

An earlier results interface is represented by unused strings for EXP gained, coins received, an item acquired, a character reaching a level, maximum HP increasing by five, and learning a special attack. There are also alternate Battle, Lucky, ATTACK UP!!, and DEFENSE UP!! strings. Several contain variable control codes, so they were designed to insert the right values at runtime rather than being mere mockup captions. The Japanese source sometimes preserves slightly different details, including a variable HP increase rather than the English fixed “5”.

The two earlier Peach scenes in Booster Tower

The battle-event debugger can load two unfinished or alternate Peach scenes as BG 11 / SCENE 150 and BG 11 / SCENE 151. They involve Peach recognizing Mario at Booster Tower and reacting in a more exaggerated way. A floor-crying pose survives, and there is a peeking motion that seems almost made for a fake-crying joke. The scene text in the shipped ROM has been overwritten by Count Down clock announcements, so the displayed words are not reliable evidence of the scenes’ original script. We know a good deal more about the poses and staging than the dialogue.

Inaccessible Psychopath thoughts and enemy dialogue

The Psychopath data is especially useful for this. The U.S. ROM has a pointer table of 256 thoughts beginning at 0x399FD1. Some enemies are unencounterable, and some appear before Mallow is recruited, so their thoughts exist but cannot be seen in an ordinary run. The following are relevant inaccessible or cut examples:

Enemy / internal ID Psychopath thought Why normally inaccessible
Opening Terrapin, 0x00 Yo! What’s going on? Mallow is not present.
Opening Hammer Bro, 0x1B I love my hammer! Mallow is not present.
Opening Bowser, 0xF4 Mario! It’s time! Mallow is not present.
Baba Yaga, 0x27 Feelin’ kinda round… Unused enemy.
Juju, 0x69 K-9 is after my bones! Unused enemy.
Lumbler, 0x77 Grrr! Unused enemy.
Harlequin, 0x79 Kekekekekekekekekeka! Unused enemy.
Mastablasta, 0x7E Life is tough, ain’t it? Unused enemy.
Hangin’ Shy, 0xA1 Minimum wage for THIS?! Non-targetable chandelier actor; same English wording is used by Snifit.
Drill Bit, 0xE3 This is for Yaridovich! Not encountered as an ordinary Psychopath-targetable enemy.

Some other discarded enemy records, including Radish and Crippo, simply have empty thoughts. I did not invent sentences to fill them. Also, an inaccessible thought is not necessarily a globally unused piece of writing. Hangin’ Shy’s English line is shared with Snifit. In Japan, though, the chandelier-holder has a more specific and unique complaint about earning only two coins an hour. More on that later.

Prerelease screenshots, abandoned character designs, and Small Mario

For some things, the best evidence is not in the cartridge anymore. Promotional screenshots, magazine scans, and footage from 1995 show areas and actors that differ from what shipped. I do not treat these as “hidden in my ROM” when the relevant art or code is gone.

The earlier Chancellor was an elderly gray-spotted Mushroom person with a beard. Mario’s house was bigger and called Pipe House, with a chest releasing a green 1-Up-looking mushroom. Yo’ster Isle was more expansive and looked different before its final race configuration. Early Nimbus Castle had more vegetation, different towers, and the word HOLLOW on entrances. Screenshots show a fishing Lakitu, extra Magikoopas around Booster Tower, Buzzer enemies in early field areas, Knife Guy outside the tower, and an appearance by Luigi inside Nimbus Castle. The Luigi image is real prerelease evidence, but a screenshot of Luigi in a room is not evidence that he could join Mario’s party.

The director, Chihiro Fujioka, discussed an especially interesting canceled idea in a 1995 interview: changing Mario’s size, with some dungeons accessible only to Small Mario. The designers abandoned it partly because of the hardware and partly because the size changes were awkward in the isometric presentation. That is a documented canceled design. It is not a working secret mode I found by setting a particular bit. The English translation of the interview is available at Shmuplations.

Japanese ROM differences and Japan-only material

After going through the American version, I compared it with the original Japanese v1.0 cartridge. The raw files are 86.43% identical byte for byte, which does not tell us much on its own: translated strings move around, while enormous banks of graphics and game data match exactly. The useful comparison is in the game-data tables. The ordinary enemy stats, rewards, behavior scripts, 512 formations, and 256 item-parameter records are identical in the known data regions. The Japanese version does not secretly have another fully populated boss roster in those tables.

Japan got a hidden cheat code that does absolutely nothing

While the Japanese menu is open, the original Super Famicom game accepts Down, Up, Right, Left, Select, Start, Select, Start, B. A Toad turns up to announce that a secret code has been discovered. He checks statistics and experience, then concludes nothing happened. He more or less tells the player not to bother searching for another useful code. It is a complete intentional Easter egg and a very good joke, especially in 1996 when tips magazines were full of elaborate button combinations. The American SNES release does not expose it as an accessible feature. The 2023 remake restored the gag internationally with modified controls.

Japanese debug labels tell us what the old tests did

The Japanese overworld debugger retains labels erased or left blank in English. Among them are different Hillside configurations for Booster Hill (including Beetle Box present and absent), a flower-search event, direct jumps to parts of the Midas River waterfall or barrel sequence, Land’s End Donut Block and Sky Troopa challenges, a mine-cart ending test, and looping demos for Wigglers, Bowser’s troop movements, invincibility, and Booster Hill. It also offers 99 flowers, 500 coins, and level-up commands. One cryptic Croco-related object test remains hard to interpret. None of this proves that Japan shipped a finished extra area; it does tell us precisely what kinds of things Square needed to test.

The chandelier-holder’s two-coin hourly wage

The Japanese Hangin’ Shy thought (ID 0xA1, text at 0x39A20B) reads ツライ、、コレデジキュウ2コイン、、ヤリキレナイ。 I would translate it roughly as “This is miserable… Two coins an hour for this… I can’t take it.” The U.S. substitutes the more generic “Minimum wage for THIS?!” and also gives that English line to Snifit. I like the Japanese version better. Somebody actually decided that chandelier maintenance at Bowser’s Keep pays two coins an hour. The 2023 remake later drew on this discarded thought.

More character-specific Japanese thoughts

The opening Terrapin’s original Japanese thought includes a Dragon Ball-style Goku reference involving Grandpa. The Hammer Bro’s original thought plays off Goemon’s famous sword line from Lupin III, except he is talking about a hammer. Opening Bowser is more directly challenging Mario. In English these become “Yo! What’s going on?”, “I love my hammer!”, and “Mario! It’s time!” All three are inaccessible in the opening because Mallow has not joined the party yet. The extra cultural information is useful even if the underlying English strings are already accounted for.

The original names explain several discarded enemies

U.S. internal name Japanese internal name Meaning or useful reading
Baba Yaga ポット Pot.
Juju グレイバー Graver.
Lumbler クールフンガー Cool Stumpet.
Harlequin スティング Sting.
Crippo ヒッポポスーパー Super Hippopo.
Mastablasta ジュラマンゾー Jura Mastadoom.
Super Spike トゲへいスーパー Super Spikey.
Chompweed プチパックン Small Piranha Plant / Nipper-type plant.
Pile Driver ジダタンダー Related to Corkpedite’s Japanese name.

An early/demo Magikoopa named MERLIN in English is identified as カメック, Kamek, in the Japanese internal table. The normal boss Magikoopa has a different Japanese name, Kamezard. That distinction matters: it points to a recognizable character identity in the demo-related record without proving a lost Kamek boss story. A few spare labels go the other direction: the English ROM contains names such as BB-BOMB, MAGIDRAGON, and HANGIN’ SHY where the corresponding Japanese name fields are blank.

The Japanese wording helps explain a few English mysteries

The American Go, World! string is a badly misleading localization of Japanese text about a monster being provoked. The unexplained English “I REALLY hate males…!” ends in Japanese with めえ~, a sheep or goat sound, and the Japanese wording has been connected to a Gundam reference. Neither identifies a definite speaker. Japanese older battle-result text refers explicitly to acquiring a weapon in one place, where the English says “Got a(n) [item]!” Japan also uses a variable in an old Max HP increase string that the English rendering simplifies to a fixed five HP.

A few real presentation and behavior differences

Japan gives Bowser a victory gesture with one bent arm and the other hand across it, which was replaced for the American release with both fists raised. Its save-selection screen has little mustache icons that were removed for longer English location labels. Geno’s unpronounceable name uses more distinctive special glyphs, where the American localization uses familiar symbols. The Royal Bus’s JB initials relate to Jugemu, Lakitu’s Japanese name, a connection lost in translation.

There is also a tiny Japanese version bug in the Marrymore hotel suite: a lamp can face the wrong way after a room sequence because its sprite orientation is not overridden. The U.S. build supplies the corrective instruction. At Bowser’s Keep’s 3-D maze, Japan can tell you which of the stacked levels (0–7) you are on when giving up; the American message omits that useful information even though the game still tracks it.

For comparison studies, I relied on The Mushroom Kingdom’s Japanese–English comparison, Legends of Localization on Japanese references, their article on Geno’s introduction, and the lamp bug investigation.

Unofficial translations: extra jokes, hacks, and oddities

I made a single pass through the remaining ROM files: French, German, Norwegian, Spanish, Italian, and Portuguese patches, plus a few non-translation variants. They are fan work, not additional Square releases, so I am putting them here rather than mixing them with original game-development evidence. None of the checked translation variants changes the ordinary enemy stats, 512 formation records, or item parameters. I did not run every translated event, so that says nothing about every possible font or display glitch.

Brazilian Portuguese Geno learns Dragon Ball Z

The Brazilian CBT patch changes Geno Beam to Kame Hame Ha and Geno Boost to Kaio Ken. There are further Ki-related references. Smelter’s mind-reading line about brushing after meals is replaced with Vou comer um churrasco. (“I’m going to eat barbecue.”) The chandelier worker’s complaint becomes Qual sua idade, filho? (“How old are you, son?”). The translators were having their own fun. This patch is documented as a 2000 release, and the liberties were noticed by reviewers at the time. See the Brazilian patch history and review.

A supposedly French ROM has Portuguese inside it

One French-labelled alternate ROM, [T-Fre][a1], contains ordinary early French thoughts but a remarkable number of Portuguese thoughts and even Portuguese unused Smithy dialogue. Across the 256-entry thought table, 194 records match the Portuguese patch exactly, although that number also includes shared empty or unchanged entries. It appears to have been patched with overlapping translation material, but the exact chain of releases is unknown. It is a hybrid file, not evidence of an alternate official French script.

Translation completeness is very uneven

Patch Changed Psychopath entries out of 256
Portuguese CBT 211
German Alemanic 99a 208
Norwegian Just4Fun 98A 207
Spanish Pkt alternate 196
French Ryusan 2.1 62
Italian Dewos v0.45 1
Spanish Pkt main release 0

These are raw entry differences, not percentages of the game translated. The “complete” Spanish Pkt build leaves the entire Psychopath bank in English while another Spanish variant changes most of it. The Italian v0.45 gives us the lovely unfinished thought Grazie to you I’m free!. A translated menu does not necessarily mean somebody bothered translating a non-targetable monster’s mind.

Translators left notes in Square’s own signature

At the internal Yoshioka signature location, the French Ryusan builds replace the English identification with TRADUCTIONS / par RYUSAN. The full German Alemanic patch writes GERMAN VER. / by stefan k.. The Japanese dedication bytes that follow remain. This is the kind of little ROM-hacker signature I was hoping the extra files would contain: ROM hackers signing their work over an original developer’s hidden note.

Two catalogued bad dumps are just altered data rather than authenticated prototypes. The American bad dump differs by two bytes; the Japanese bad dump differs by 4,159 bytes in one text bank. A Japanese [h1C] version changes 19 bytes of the internal game title to 1822 SUPER MARIO RPG and nothing else. None is a mysterious new game build.

Appendix A: 79 recovered English text records, with ROM offsets

These are the 79 English records I recovered and catalogued in this pass, with their original file offsets. Some are unused dialogue, some are alternate lines, some are unreachable in normal progression, and some are just older interface messages. I’m keeping the wording as extracted, including control-code placeholders in square brackets, and giving each entry its context instead of pretending all 79 are secret conversations.

American SNES ROM: 79 recovered English text records
ROM offset Record / speaker Recovered English text Context or limitation
0x22001A Unused location label: INN / ITEM SHOP INN / ITEM SHOP Unused location/UI label, not a cut quest.
0x2200B8 Unused location label: BEDROOM BEDROOM Unused location/UI label.
0x2206FD Mushroom Kingdom shopkeeper: get down Get down from there! Alternate response to Mario climbing on the counter.
0x220732 Unused minigame: victory You win Unassigned minigame win message.
0x22073D Unused minigame: defeat You lose Unassigned minigame loss message.
0x220EB3 Chancellor reacting to kidnapping Things are ALWAYS happening to her! What an UNLUCKY child! Original or alternative Chancellor reaction to Peach being kidnapped.
0x22164F Watchman after Mallow makes it rain Rain or shine, I stand watch! [pause] But this is getting ridiculous! Unreachable portion of a line; part of a string containing a used watchman remark.
0x22262B Mushroom Kingdom: noise outside There’s a lot of noise out there today. Unassigned NPC line, possibly unused during invasion.
0x222973 Mushroom Kingdom watchman: shaken and stirred I’m shaken and stirred but still standing. Alternate frightened-watchman line.
0x222AA6 Mushroom Kingdom: what did you find So, what did you find? Unassigned Mushroom Kingdom line; possibly private-room item.
0x2242C7 Rose Town: vengeance Just you wait… Alternate line near Rose Town dialogue.
0x22527E Yo’ster Isle: finish announcement GOAL! Unused race-finish banner/message.
0x225787 Yo’ster Isle: found cookie Found a Cookie! Unused Yoshi Cookie find message.
0x22583D Yo’ster Isle: farewell [new page] (See you around!) Unassigned Yoshi farewell.
0x225B7D Yo’ster Isle: race cookie reminder [new page] (Remember, you need Cookies if you want to race!) Unused race reminder.
0x2264B1 Marrymore Hotel: escort guest Please escort our guest! Extra hotel bellhop/escort dialogue.
0x2264CD Marrymore Hotel: calm down Please calm down. Extra hotel bellhop/escort dialogue.
0x2264E2 Marrymore Hotel: take care of belongings Please take care of these things. Extra hotel bellhop/escort dialogue.
0x2265DD Marrymore Hotel: exhausted guest I’m tired from walking all day long. I have no requests now, [pause] thank you. Unused guest dialogue; could be an untipped guest.
0x228F97 Moleville: child cannot ride trolley Ma and Pa say little ones aren’t allowed on the trolley. I can’t wait to get older! Earlier wording for Moleville child.
0x22A059 Belome: after giving key Eww, a mouthful of rust. Thanks anyway. Unused Belome Temple line after obtaining a key.
0x22A163 Belome: mishandled fortune Yikes, looks like you’ll have hardships ahead of you. Failsafe for invalid Belome Temple fortune condition; requires hacking.
0x22A303 Puzzle retry prompt Giving up? Wanna give it another shot? [pause] ▸ (Yes) ▸ (No) Unknown puzzle/reset context.
0x22B351 Debug room: drop member ▸ Next Page ▸ Member 1 will drop out ▸ Member 2 will drop out Unreachable options in retained debug room.
0x22C6F8 Pa’Mole: missing bomb WHAT?! NO BOMB?! This can’t BE!! It should be around somewhere! [pause] Maybe someone stole it! Earlier version of Coal Mine bomb dialogue.
0x22C74E Pa’Mole: get out of way Come on, come on, outta the way! Neighboring unused mine scene instruction.
0x230DB2 Chef Torte: wedding interrupted CHEF TORTE: Ve should not interrupt za vedding! Unused chef line in wedding sequence.
0x2327F7 Peach-related marriage joke: original long complaint Mario, where have you been? I’ve never been so worried! I’m so angry I can’t see straight! [pause] Would you want to marry someone who can’t see straight?! Extended unused Mushroom Kingdom dialogue preceding the Princess departure texts; speaker uncertain.
0x23287B Mushroom Kingdom: princess at flowers Lately, the Princess hasn’t been around to look at the flowers. Unused NPC comment near Princess-departure strings.
0x2328B3 Mushroom Kingdom: startled NPC Wow! That sure woke me up! Unused line near Princess-departure strings.
0x2328CF Peach: stay quiet TOADSTOOL: Shhhh…. [pause] If people see who I’m with, they’ll flip out, so… [pause] Let’s be real quiet! Unused Peach instruction from departure sequence.
0x232929 Peach: the flowers I just love the smell of flowers! [new page] I’m sorry…I’m in a rush right now. I’ll come back another time. Unused Peach dialogue in/near Mushroom Kingdom flower area.
0x232AFE Mushroom Kingdom: offer to eat Hey Mario! Wanna grab something to eat? Unused town food invitation.
0x232B1E Mushroom Kingdom: food invitation followup Go on now, don’t hang back! Unused food invitation follow-up.
0x235A2B Garro: nervous about his statue GARRO: OH! You mean… THAT…That’s …um… Unused Garro text when discovered by Valentina.
0x23825E Tadpole Pond: old greeting Hi! Welcome to Tadpole Pond. [pause] Who are you? Old welcome line for Pond tadpole.
0x2383E1 Tadpole Pond: inventory sold out Sorry, Tadpole Pond items are all sold out! [new page] Thanks for coming by. Unused sold-out branch, possible limited inventory.
0x2380B7 Tadpole Pond: item not yet made I haven’t had one made yet. Unassigned NPC line around shops/composer.
0x239309 Toadofsky: old introductory reaction TOADOFSKY: Hmmm. Was that your song I just heard? Earlier Melody Bay response.
0x239335 Toadofsky: masterpiece complaint It won’t do at all! It is not the masterpiece I am trying to compose! Earlier Melody Bay response; maybe same exchange.
0x239863 Booster Amulet alternate Received an “Amulet” Alternate amulet award message; depends on context.
0x239992 Toad: alternate Mushroom Way dialogue TOAD: Thanks for saving me! In my rush to tell the Chancellor, I didn’t watch where I was going. [pause] Mushroom Kingdom’s just ahead, Mario. Let’s hurry there. Earlier Toad greeting after Hammer Bros.
0x239A18 Generic item test message Get an item! Placeholder item text.
0x239F4A Generic locked door The door won’t budge. Unused locked-door line.
0x23ADEC Room key variant Got the Room Key Unused variation lacking quotes.
0x23AFA7 Booster: train noise variant BOOSTER: [pause] Ah: HA:::::::! Unused alternate Booster train sound text; control codes appear as pauses.
0x23CE7C Seaside Town: inventory full Speaking of items, it looks like you’ve got too many and can’t carry them all. Unused inventory-full branch.
0x23D62E Possible Culex goodbye See you around. Alternate goodbye near Monstro Town content.
0x2413A5 Geno at Star Hill before Frogfucius GENO: +++ I feel the energy of the Star Piece. Functional condition, inaccessible under normal progression.
0x240A74 Raz: Star Hill proposal I hope she’ll say “yes”. Apparently timing-locked wish.
0x240A91 Raini: Star Hill proposal I wish he’d pop THE question. Apparently timing-locked wish.
0x24681D Nimbus Castle: wait a minute Wait a minute, please… Unused reunion/arrival dialogue.
0x246838 Mallow: reassure Nimbus royalty MALLOW: Please! These people aren’t your enemies. They’re my friends. Unused reassurance during Nimbus court scene.
0x24687D Nimbus Castle: follow me This way, come on! Unused movement prompt in Nimbus castle.
0x247318 Croco: all treasures collected [new page] So, youse guys found ’em ALL? …Geez…I’ve failed… …I’m humiliated…! Unused Signal Ring contingency if all treasures were found.
0x247A6A Nimbus Land: bustling again Things have finally picked up! Unused Nimbus NPC line.
0x247BF0 Nimbus inn: quiet dream You slept quietly, so I’m sure you had pleasant dreams! Unused Dream Cushion reaction.
0x247FCB Nimbus Land: beautiful weather Everyone’s happy when the weather is nice! Unused NPC weather comment.
0x248FC2 Overworld battle-style outcome: victory Victory!! Unassigned overworld victory string.
0x248FCE Overworld battle-style outcome: defeat Defeated!! Unassigned overworld defeat string.
0x248FDB Overworld battle-style outcome: retreat Run Away!! Unassigned overworld retreat string.
0x396D88 Mallow chases Mario Mario… wait! Unused Forest Maze/Bowyer scene message; battle-dialog ID 0x25
0x3985B2 Axem Red reprimands his team AXEM RED: SHUT UP, all of you! We’ve got a job to do! Unused Axem Rangers battle line; battle-dialog ID 0xBB
0x399121 Smithy complains to the party SMITHY: You kids should be ashamed of yourselves for making me so upset! Unused Smithy first-to-second-form dialogue; battle-dialog ID 0xF9
0x3A29C9 Unused battle line about men I REALLY hate males…! [new page] Unused enemy battle message; original context unclear
0x3A29E3 Battle victory style: Defense Up DEFENSE UP!! [new page] Alternate buff message
0x3A29F2 Battle victory style: Attack Up ATTACK UP!! [new page] Alternate buff message
0x3A3932 Spare item: alternate wastebasket wording Throw away unwanted items Item-description bank; unused alternative to the normal Waste Basket description.
0x3992B4 Debug error message Error message Battle string at tail of battle text table; debug message.
0x3992C4 Glitch/debug Go World Go, World! Internally present, can surface under rare glitches; not ordinary playable dialogue.
0x3A274D Alternate battle reward: EXP Exp. up [VAR:1C,30] point(s)! Early battle result text, separate from final results screen.
0x3A2763 Alternate battle reward: weapon Got a(n) [VAR:1C,31]! Early battle result item/weapon text.
0x3A2771 Alternate battle reward: coins Got [VAR:1C,32] coin(s)! Early battle result coin text.
0x3A2782 Alternate level-up [VAR:1C,33] reaches Level [VAR:1C,34]!! Early level-up message, with name and level placeholders.
0x3A2799 Alternate max HP upgrade [VAR:1C,33]’s MAX HP up by 5! Early HP gain announcement; displayed English says 5 HP.
0x3A27C4 Alternate spell learning [VAR:1C,33] learns [VAR:1C,37]! Alternate newly learned special attack message.
0x3A28D3 No escape Can~t run{ Earlier escape failure menu text with reassigned punctuation glyphs.
0x3A299A Old battle label: Battle Battle Generic early battle label.
0x3A29A1 Old Lucky label Lucky Old version of Lucky message shown in text box.

The original Psychopath pointer bank contains 256 entries, many of them entirely ordinary or empty. The table above isolates the inaccessible entries. Appendix B has all 256 slots, including ordinary and empty ones, with offsets so you can compare the actual thought data.

Appendix B: all 256 Psychopath thoughts by enemy ID

This is the complete U.S. SNES Psychopath pointer-table catalog, not a list of 256 unused lines. It includes everyday monsters, bosses, blank slots, and the inaccessible thoughts discussed above. I have kept the enemy IDs, decoded text, ROM pointers, and the original accessibility classifications so that an obscure thought can be checked without guessing who said it. Blank messages are shown as an em dash; the classifications are preliminary, and “ordinary enemy” does not prove every battle state is reachable.

Original American cartridge: all 256 enemy-thought slots
Enemy ID Internal name Thought offset Psychopath thought Access / status
0x00 TERRAPIN 0x39A1D1 Yo! What’s going on? Mallow absent in encounter
0x01 SPIKEY 0x39A1E8 Just try and jump on me! Ordinary enemy; not shown to be unused
0x02 SKY TROOPA 0x39A203 What a gorgeous day! Ordinary enemy; not shown to be unused
0x03 MAD MALLET 0x39A21A Work, work, work… Ordinary enemy; not shown to be unused
0x04 SHAMAN 0x39A230 I’m losing this fight! Ordinary enemy; not shown to be unused
0x05 CROOK 0x39A249 You can’t run away! Ha! Ordinary enemy; not shown to be unused
0x06 GOOMBA 0x39A263 Goomba gumba…phew! Ordinary enemy; not shown to be unused
0x07 PIRANHA PLANT 0x39A27A Pretty boring nowadays. Ordinary enemy; not shown to be unused
0x08 AMANITA 0x39A294 Gotta work on my tan! Ordinary enemy; not shown to be unused
0x09 GOBY 0x39A2AC Blub blub blub… Ordinary enemy; not shown to be unused
0x0A BLOOBER 0x39A2C0 I love floating around. Ordinary enemy; not shown to be unused
0x0B BANDANA RED 0x39A2DA I love the color RED! Ordinary enemy; not shown to be unused
0x0C LAKITU 0x39A2F2 Why do people hate me? Ordinary enemy; not shown to be unused
0x0D BIRDY 0x39A30B I HATE Valentina. Ordinary enemy; not shown to be unused
0x0E PINWHEEL 0x39A31F What a day it’s been… Ordinary enemy; not shown to be unused
0x0F RAT FUNK 0x39A339 Squeek, squeek… Ordinary enemy; not shown to be unused
0x10 K-9 0x39A34D May I take a BITE? Ordinary enemy; not shown to be unused
0x11 MAGMITE 0x39A362 Got a thorn in my foot. Ordinary enemy; not shown to be unused
0x12 THE BIG BOO 0x39A37C Stop staring at me! Ordinary enemy; not shown to be unused
0x13 DRY BONES 0x39A392 I’m sick of gettin’ hit! Ordinary enemy; not shown to be unused
0x14 GREAPER 0x39A3AD Any reaping to be done? Ordinary enemy; not shown to be unused
0x15 SPARKY 0x39A3C7 Fire EVERYWHERE! Ordinary enemy; not shown to be unused
0x16 CHOMP 0x39A3DA Workin’ on a chain gang. Ordinary enemy; not shown to be unused
0x17 PANDORITE 0x39A3F5 I’m trying to sleep, OK? Ordinary enemy; not shown to be unused
0x18 SHY RANGER 0x39A410 Transmitting information.[0x0A] Over and out. Ordinary enemy; not shown to be unused
0x19 BOB-OMB 0x39A43C Ouch. HEY! Watch it! Ordinary enemy; not shown to be unused
0x1A SPOOKUM 0x39A453 Que pasa? Ordinary enemy; not shown to be unused
0x1B HAMMER BRO 0x39A45F I love my hammer! Mallow absent in encounter
0x1C BUZZER 0x39A473 Buzzzzz… Ordinary enemy; not shown to be unused
0x1D AMEBOID 0x39A480 Get outta my face. Ordinary enemy; not shown to be unused
0x1E GECKO 0x39A495 Red? What about Green? Ordinary enemy; not shown to be unused
0x1F WIGGLER 0x39A4AE I’m just a helpless wiggler… Ordinary enemy; not shown to be unused
0x20 CRUSTY 0x39A4CF Look at THIS! Ordinary enemy; not shown to be unused
0x21 MAGIKOOPA 0x39A4DF That’s…my child? Ordinary enemy; not shown to be unused
0x22 LEUKO 0x39A4F4 Floating’s a bad habit. Ordinary enemy; not shown to be unused
0x23 JAWFUL 0x39A50E Huh? Ordinary enemy; not shown to be unused
0x24 ENIGMA 0x39A515 Gather around! Watch it! Ordinary enemy; not shown to be unused
0x25 BLASTER 0x39A530 Wanna join me? Ordinary enemy; not shown to be unused
0x26 GUERRILLA 0x39A541 Don’t confuse me[0x0A] with someone else! Ordinary enemy; not shown to be unused
0x27 BABA YAGA 0x39A569 Feelin’ kinda round… Unused monster
0x28 HOBGOBLIN 0x39A582 Havin’ a blast today! Ordinary enemy; not shown to be unused
0x29 REACHER 0x39A59A Hope you’ll stay close. Ordinary enemy; not shown to be unused
0x2A SHOGUN 0x39A5B4 Do as you like. Ordinary enemy; not shown to be unused
0x2B ORB USER 0x39A5C6 I hate Kinklinks! Ordinary enemy; not shown to be unused
0x2C HEAVY TROOPA 0x39A5DA I’ll make ya beautiful! Ordinary enemy; not shown to be unused
0x2D SHADOW 0x39A5F4 You’re a model, right? Ordinary enemy; not shown to be unused
0x2E CLUSTER 0x39A60D I’ll psyche you out! Ordinary enemy; not shown to be unused
0x2F BAHAMUTT 0x39A624 Give me a chance, here. Ordinary enemy; not shown to be unused
0x30 OCTOLOT 0x39A63E Check out my legs! Ordinary enemy; not shown to be unused
0x31 FROGOG 0x39A653 This bright sunlight[0x0A] better not fry me! Ordinary enemy; not shown to be unused
0x32 CLERK 0x39A67F 10 years I’ve been here! Ordinary enemy; not shown to be unused
0x33 GUNYOLK 0x39A69A If we’re beaten, the boss is alone! Ordinary enemy; not shown to be unused
0x34 BOOMER 0x39A6C0 It’s all over now… Ordinary enemy; not shown to be unused
0x35 REMO CON 0x39A6D7 The world is history. Ordinary enemy; not shown to be unused
0x36 SNAPDRAGON 0x39A6EF I did a lot in my youth. Ordinary enemy; not shown to be unused
0x37 STUMPET 0x39A70A Express yourself! Ordinary enemy; not shown to be unused
0x38 DODO 0x39A71E I’m starved…later! Ordinary enemy; not shown to be unused
0x39 JESTER 0x39A735 I’ve failed my King… Ordinary enemy; not shown to be unused
0x3A ARTICHOKER 0x39A74E Relax a little, okay? Ordinary enemy; not shown to be unused
0x3B ARACHNE 0x39A766 %Day-o… Ordinary enemy; not shown to be unused
0x3C CARROBOSCIS 0x39A772 I ALWAYS eat my vegetables! Ordinary enemy; not shown to be unused
0x3D HIPPOPO 0x39A790 This is a drag… Ordinary enemy; not shown to be unused
0x3E MASTADOOM 0x39A7A4 Phew, I’m FREEZING.. Ordinary enemy; not shown to be unused
0x3F CORKPEDITE 0x39A7BB Off! FORGET IT! Ordinary enemy; not shown to be unused
0x40 TERRA COTTA 0x39A7CD Oh, Mr.Bowser:: Ordinary enemy; not shown to be unused
0x41 SPIKESTER 0x39A7DF Why, you’re AFRAID of me! Ordinary enemy; not shown to be unused
0x42 MALAKOOPA 0x39A7FB Just call me “General!# Ordinary enemy; not shown to be unused
0x43 POUNDER 0x39A815 Wham bam SLAM! Ordinary enemy; not shown to be unused
0x44 POUNDETTE 0x39A826 Love conquers ALL. Ordinary enemy; not shown to be unused
0x45 SACKIT 0x39A83B This is just how I am. Ordinary enemy; not shown to be unused
0x46 GU GOOMBA 0x39A854 Hey, maybe I CAN win! Ordinary enemy; not shown to be unused
0x47 CHEWY 0x39A86C I’m just a fresh flower. Ordinary enemy; not shown to be unused
0x48 FIREBALL 0x39A887 Blurb blurb blurb… Ordinary enemy; not shown to be unused
0x49 MR.KIPPER 0x39A89E I’m a fresh little fish. Ordinary enemy; not shown to be unused
0x4A FACTORY CHIEF 0x39A8B9 Who DARES to fight ME?! Ordinary enemy; not shown to be unused
0x4B BANDANA BLUE 0x39A8D3 Color me Blue, mates!! Ordinary enemy; not shown to be unused
0x4C MANAGER 0x39A8EC 25 years of working, sigh. Ordinary enemy; not shown to be unused
0x4D BLUEBIRD 0x39A909 You are… magnificent Ordinary enemy; not shown to be unused
0x4E — 0x39A922 — Empty / placeholder
0x4F ALLEY RAT 0x39A924 Don’t pity me, Mario! Ordinary enemy; not shown to be unused
0x50 CHOW 0x39A93C Hey, I fought you already! Ordinary enemy; not shown to be unused
0x51 MAGMUS 0x39A959 Clobber me for good life! Ordinary enemy; not shown to be unused
0x52 LI~L BOO 0x39A975 Beep pa doodle-dee!% Ordinary enemy; not shown to be unused
0x53 VOMER 0x39A98C Nobody, NOBODY likes me. Ordinary enemy; not shown to be unused
0x54 GLUM REAPER 0x39A9A7 Comin’ through… Ordinary enemy; not shown to be unused
0x55 PYROSPHERE 0x39A9BB Vroom, VROOM!! Ordinary enemy; not shown to be unused
0x56 CHOMP CHOMP 0x39A9CC Hey, let’s PLAY! Ordinary enemy; not shown to be unused
0x57 HIDON 0x39A9DF You wanna run, huh?! Ordinary enemy; not shown to be unused
0x58 SLING SHY 0x39A9F6 Hear my song. Ordinary enemy; not shown to be unused
0x59 ROB-OMB 0x39AA06 Disappear? Maybe later! Ordinary enemy; not shown to be unused
0x5A SHY GUY 0x39AA20 Hold still, okay?! Ordinary enemy; not shown to be unused
0x5B NINJA 0x39AA35 Wooo HOOO! I’m a FOO! Ordinary enemy; not shown to be unused
0x5C STINGER 0x39AA4D Strike the pose! Ordinary enemy; not shown to be unused
0x5D GOOMBETTE 0x39AA60 Me speak soft, BIG STICK! Ordinary enemy; not shown to be unused
0x5E GECKIT 0x39AA7C Geck…Geck…GOCK? Ordinary enemy; not shown to be unused
0x5F JABIT 0x39AA92 This is the pits! Ordinary enemy; not shown to be unused
0x60 STAR CRUSTER 0x39AAA6 I’M NOT A CRAB!! Ordinary enemy; not shown to be unused
0x61 MERLIN 0x39AAB9 — Empty / placeholder
0x62 MUCKLE 0x39AABB Gotta know your limits. Ordinary enemy; not shown to be unused
0x63 FORKIES 0x39AAD5 Shikashikashika::! Ordinary enemy; not shown to be unused
0x64 GORGON 0x39AAEA I just wanna go home. Ordinary enemy; not shown to be unused
0x65 BIG BERTHA 0x39AB02 Adabing, ADABANG! Ordinary enemy; not shown to be unused
0x66 CHAINED KONG 0x39AB16 A tad warm, isn’t it?! Ordinary enemy; not shown to be unused
0x67 FAUTSO 0x39AB2F Thanks to you I’m free! Ordinary enemy; not shown to be unused
0x68 STRAW HEAD 0x39AB49 Gotta press this shirt! Ordinary enemy; not shown to be unused
0x69 JUJU 0x39AB63 K-9 is after my bones! Unused monster
0x6A ARMORED ANT 0x39AB7C Do one good turn a day! Ordinary enemy; not shown to be unused
0x6B ORBISON 0x39AB96 Don’t jump on me! Ordinary enemy; not shown to be unused
0x6C TUB-O-TROOPA 0x39ABAA My shell’s shot! Ordinary enemy; not shown to be unused
0x6D DOPPEL 0x39ABBD This’s been a bad year! Ordinary enemy; not shown to be unused
0x6E PULSAR 0x39ABD7 I’m a mini-pulsar. Ordinary enemy; not shown to be unused
0x6F — 0x39ABEC — Empty / placeholder
0x70 OCTOVADER 0x39ABEE I’m a part-time typist! Ordinary enemy; not shown to be unused
0x71 RIBBITE 0x39AC08 My dad says, “Hello.# Ordinary enemy; not shown to be unused
0x72 DIRECTOR 0x39AC20 I just lost EVERYTHING. Ordinary enemy; not shown to be unused
0x73 — 0x39AC3A — Empty / placeholder
0x74 — 0x39AC3C — Empty / placeholder
0x75 PUPPOX 0x39AC3E What does it all MEAN? Ordinary enemy; not shown to be unused
0x76 FINK FLOWER 0x39AC57 Gimme your best shot! Ordinary enemy; not shown to be unused
0x77 LUMBLER 0x39AC6F Grrr! Unused monster
0x78 SPRINGER 0x39AC77 What’s going on here? Ordinary enemy; not shown to be unused
0x79 HARLEQUIN 0x39AC8F Kekekekekekekekekeka! Unused monster
0x7A KRIFFID 0x39ACA7 Aloe: there! Ordinary enemy; not shown to be unused
0x7B SPINTHRA 0x39ACB6 Oh! I’m gonna poison ya! Ordinary enemy; not shown to be unused
0x7C RADISH 0x39ACD1 — Empty / placeholder
0x7D CRIPPO 0x39ACD3 — Empty / placeholder
0x7E MASTABLASTA 0x39ACD5 Life is tough, ain’t it? Unused monster
0x7F PILE DRIVER 0x39ACF0 — Empty / placeholder
0x80 APPRENTICE 0x39ACF2 I’ve had ENOUGH. Ordinary enemy; not shown to be unused
0x81 — 0x39AD05 — Empty / placeholder
0x82 — 0x39AD07 — Empty / placeholder
0x83 — 0x39AD09 — Empty / placeholder
0x84 — 0x39AD0B — Empty / placeholder
0x85 — 0x39AD0D — Empty / placeholder
0x86 BOX BOY 0x39AD0F Been waitin’ 100 years! Ordinary enemy; not shown to be unused
0x87 SHELLY 0x39AD29 Slow down! Ordinary enemy; not shown to be unused
0x88 SUPER SPIKE 0x39AD36 — Empty / placeholder
0x89 DODO 0x39AD38 I’m STARVED! Ordinary enemy; not shown to be unused
0x8A OERLIKON 0x39AD47 I live to eat. Ordinary enemy; not shown to be unused
0x8B CHESTER 0x39AD58 I love my job!$ Ordinary enemy; not shown to be unused
0x8C BODY 0x39AD6A +++ Ordinary enemy; not shown to be unused
0x8D — 0x39AD70 +++ Empty / placeholder
0x8E TORTE 0x39AD76 Cake! Vatch zee CAKE. Ordinary enemy; not shown to be unused
0x8F SHY AWAY 0x39AD8E La Dee Dah: Ha Ha. Ordinary enemy; not shown to be unused
0x90 JINX CLONE 0x39ADA3 I’m the REAL thing! Ordinary enemy; not shown to be unused
0x91 MACHINE MADE 0x39ADB9 Boing, boing, boing. Ordinary enemy; not shown to be unused
0x92 MACHINE MADE 0x39ADD0 Look out, LOSERS! Ordinary enemy; not shown to be unused
0x93 FORMLESS 0x39ADE4 I have a secret! Ordinary enemy; not shown to be unused
0x94 MOKURA 0x39ADF7 Mwa ha ha… Ordinary enemy; not shown to be unused
0x95 FIRE CRYSTAL 0x39AE06 I gotta vacuum tonight! Ordinary enemy; not shown to be unused
0x96 WATER CRYSTAL 0x39AE20 Get me back underground! Ordinary enemy; not shown to be unused
0x97 EARTH CRYSTAL 0x39AE3B I hate being awakened! Ordinary enemy; not shown to be unused
0x98 WIND CRYSTAL 0x39AE54 Whhhhhhooooo… Ordinary enemy; not shown to be unused
0x99 MARIO CLONE 0x39AE66 +++ Ordinary enemy; not shown to be unused
0x9A TOADSTOOL 2 0x39AE6C It’s tough to be pretty! Ordinary enemy; not shown to be unused
0x9B BOWSER CLONE 0x39AE87 Grr…my castle… Ordinary enemy; not shown to be unused
0x9C GENO CLONE 0x39AE9C Star Pieces…Star… Ordinary enemy; not shown to be unused
0x9D MALLOW CLONE 0x39AEB4 Ma? Pa? Where are ya? Ordinary enemy; not shown to be unused
0x9E SHYSTER 0x39AECC Boing, boing, boing. Ordinary enemy; not shown to be unused
0x9F KINKLINK 0x39AEE3 — Empty / placeholder
0xA0 — 0x39AEE5 — Empty / placeholder
0xA1 HANGIN~ SHY 0x39AEE7 Minimum wage for THIS?! Chandelier actor; not targetable
0xA2 SMELTER 0x39AF01 I brush after each meal! Ordinary enemy; not shown to be unused
0xA3 MACHINE MADE 0x39AF1C Mario! I’m BAAAAAAAACK! Ordinary enemy; not shown to be unused
0xA4 MACHINE MADE 0x39AF36 Nya! I’ll SNUFF ya! NYA! Ordinary enemy; not shown to be unused
0xA5 MACHINE MADE 0x39AF51 My promotion’s at stake! Ordinary enemy; not shown to be unused
0xA6 MACHINE MADE 0x39AF6C Oh! My makeup! Ordinary enemy; not shown to be unused
0xA7 MACHINE MADE 0x39AF7D Will I make the team? Ordinary enemy; not shown to be unused
0xA8 MACHINE MADE 0x39AF95 Gotta fight for evil! Ordinary enemy; not shown to be unused
0xA9 MACHINE MADE 0x39AFAD I’m STARVED! Ordinary enemy; not shown to be unused
0xAA MACHINE MADE 0x39AFBC Whew! Vertigo! Ordinary enemy; not shown to be unused
0xAB GOOMBA 0x39AFCD — Empty / placeholder
0xAC HAMMER BRO 0x39AFCF — Empty / placeholder
0xAD BIRDO 0x39AFD1 — Empty / placeholder
0xAE BB-BOMB 0x39AFD3 — Empty / placeholder
0xAF MAGIDRAGON 0x39AFD5 — Empty / placeholder
0xB0 STARSLAP 0x39AFD7 They think I’m goofy… Ordinary enemy; not shown to be unused
0xB1 MUKUMUKU 0x39AFF1 Ya trying to bug me?! Ordinary enemy; not shown to be unused
0xB2 ZEOSTAR 0x39B009 Oh, I can’t stand him! Ordinary enemy; not shown to be unused
0xB3 JAGGER 0x39B022 Oh! I’m so excited! Ordinary enemy; not shown to be unused
0xB4 CHOMPWEED 0x39B038 — Empty / placeholder
0xB5 SMITHY 0x39B03A Don’t shock me! DON’T! Ordinary enemy; not shown to be unused
0xB6 SMITHY 0x39B053 Nothin’ can hurt me! Ordinary enemy; not shown to be unused
0xB7 — 0x39B06A — Empty / placeholder
0xB8 MICROBOMB 0x39B06C Small is as small does. Ordinary enemy; not shown to be unused
0xB9 — 0x39B086 — Empty / placeholder
0xBA GRIT 0x39B088 — Empty / placeholder
0xBB NEOSQUID 0x39B08A I’m so utterly alone… Ordinary enemy; not shown to be unused
0xBC YARIDOVICH 0x39B0A4 I’m not the real McCoy! Ordinary enemy; not shown to be unused
0xBD HELIO 0x39B0BE I’m burnin’ up inside! Ordinary enemy; not shown to be unused
0xBE RIGHT EYE 0x39B0D7 I’ve got an astigmatism! Ordinary enemy; not shown to be unused
0xBF LEFT EYE 0x39B0F2 I can’t see a thing! Ordinary enemy; not shown to be unused
0xC0 KNIFE GUY 0x39B109 Happiness is hip! Ordinary enemy; not shown to be unused
0xC1 GRATE GUY 0x39B11D Peace is just a dream. Ordinary enemy; not shown to be unused
0xC2 BUNDT 0x39B136 Congratulations. Ordinary enemy; not shown to be unused
0xC3 JINX 0x39B149 You’re just a beginner! Ordinary enemy; not shown to be unused
0xC4 JINX 0x39B163 Sympathy!? Not from me! Ordinary enemy; not shown to be unused
0xC5 COUNT DOWN 0x39B17D We’re into overtime! Ordinary enemy; not shown to be unused
0xC6 DING-A-LING 0x39B194 Wake up sleepy heads! Ordinary enemy; not shown to be unused
0xC7 BELOME 0x39B1AC I just…wanna sleep. Ordinary enemy; not shown to be unused
0xC8 BELOME 0x39B1C4 Gotta yummy in my tummy! Ordinary enemy; not shown to be unused
0xC9 — 0x39B1DF — Empty / placeholder
0xCA SMILAX 0x39B1E1 Turn your eyes! Ordinary enemy; not shown to be unused
0xCB THRAX 0x39B1F3 — Empty / placeholder
0xCC MEGASMILAX 0x39B1F5 I was a water baby! Ordinary enemy; not shown to be unused
0xCD BIRDO 0x39B20B I just love life! Ordinary enemy; not shown to be unused
0xCE EGGBERT 0x39B21F What a glorious day! Ordinary enemy; not shown to be unused
0xCF AXEM YELLOW 0x39B236 We’re lookin’ GOOD! Ordinary enemy; not shown to be unused
0xD0 PUNCHINELLO 0x39B24C Yeeha! I see we’re already famous! Ordinary enemy; not shown to be unused
0xD1 TENTACLES 0x39B271 Keep me in cool! Ordinary enemy; not shown to be unused
0xD2 AXEM RED 0x39B284 I’m all thumbs today! Ordinary enemy; not shown to be unused
0xD3 AXEM GREEN 0x39B29C Are we done here? Ordinary enemy; not shown to be unused
0xD4 KING BOMB 0x39B2B0 I LIVE to explode! Ordinary enemy; not shown to be unused
0xD5 MEZZO BOMB 0x39B2C5 Look out! Ordinary enemy; not shown to be unused
0xD6 — 0x39B2D1 — Empty / placeholder
0xD7 RASPBERRY 0x39B2D3 Congratulations! Ordinary enemy; not shown to be unused
0xD8 KING CALAMARI 0x39B2E6 The ship’s MINE! SCRAM! Ordinary enemy; not shown to be unused
0xD9 TENTACLES 0x39B300 You wouldn’t…EAT me?! Ordinary enemy; not shown to be unused
0xDA JINX 0x39B31A Ooh! I’m gonna hurt ya! Ordinary enemy; not shown to be unused
0xDB ZOMBONE 0x39B334 Hey! We’re not done yet! Ordinary enemy; not shown to be unused
0xDC CZAR DRAGON 0x39B34F Flamin’ hot, right at ya! Ordinary enemy; not shown to be unused
0xDD CLOAKER 0x39B36B I love cold hard steel! Ordinary enemy; not shown to be unused
0xDE DOMINO 0x39B385 MAGIC! DEAL with it! Ordinary enemy; not shown to be unused
0xDF MAD ADDER 0x39B39C I’m alive and kicking. Ordinary enemy; not shown to be unused
0xE0 MACK 0x39B3B5 Boing, boing, boing. Ordinary enemy; not shown to be unused
0xE1 BODYGUARD 0x39B3CC Boing, boing, boing. Ordinary enemy; not shown to be unused
0xE2 YARIDOVICH 0x39B3E3 My promotion’s at stake! Ordinary enemy; not shown to be unused
0xE3 DRILL BIT 0x39B3FE This is for Yaridovich! Not normally targetable
0xE4 AXEM PINK 0x39B418 Red, WRONG POSITION! Ordinary enemy; not shown to be unused
0xE5 AXEM BLACK 0x39B42F You’re timing stinks! Ordinary enemy; not shown to be unused
0xE6 BOWYER 0x39B447 What’s with these folks? Ordinary enemy; not shown to be unused
0xE7 AERO 0x39B462 — Empty / placeholder
0xE8 — 0x39B464 — Empty / placeholder
0xE9 EXOR 0x39B466 Gotta mow the lawn soon. Ordinary enemy; not shown to be unused
0xEA SMITHY 0x39B481 Eh?! Not bad! Ordinary enemy; not shown to be unused
0xEB SHYPER 0x39B491 Ooh! This’ll be fun! Ordinary enemy; not shown to be unused
0xEC SMITHY 0x39B4A8 What a heavy head! Ordinary enemy; not shown to be unused
0xED SMITHY 0x39B4BD This isn’t good at all! Ordinary enemy; not shown to be unused
0xEE SMITHY 0x39B4D7 Good magic, bad defense. Ordinary enemy; not shown to be unused
0xEF SMITHY 0x39B4F2 What’s hidden inside?! Ordinary enemy; not shown to be unused
0xF0 CROCO 0x39B50B Gosh, I’m good! Ordinary enemy; not shown to be unused
0xF1 CROCO 0x39B51D Ooh! I’m good! Ordinary enemy; not shown to be unused
0xF2 — 0x39B52E — Empty / placeholder
0xF3 EARTH LINK 0x39B530 What a royal pain! Ordinary enemy; not shown to be unused
0xF4 BOWSER 0x39B545 Mario! It’s time! Mallow absent in encounter
0xF5 AXEM RANGERS 0x39B559 It’s a melee! Ordinary enemy; not shown to be unused
0xF6 BOOSTER 0x39B569 This is like realizing[0x0A] you’re outside without[0x0A] your clothes on! Ordinary enemy; not shown to be unused
0xF7 BOOSTER 0x39B5AE — Empty / placeholder
0xF8 SNIFIT 0x39B5B0 Minimum wage for THIS?! Ordinary enemy; not shown to be unused
0xF9 JOHNNY 0x39B5CA Whoa! It’s all over. Ordinary enemy; not shown to be unused
0xFA JOHNNY 0x39B5E1 — Empty / placeholder
0xFB VALENTINA 0x39B5E3 I tell ya, he’s NOTHING! Ordinary enemy; not shown to be unused
0xFC CLOAKER 0x39B5FE I can’t think straight! Ordinary enemy; not shown to be unused
0xFD DOMINO 0x39B618 Sh…sho…shocked! Ordinary enemy; not shown to be unused
0xFE CANDLE 0x39B62E — Empty / placeholder
0xFF CULEX 0x39B630 A little off, eh? Ordinary enemy; not shown to be unused

Appendix C: ROM offsets, pointers, and test codes

Data / feature Location / value Note
U.S. developer signature 0x030010 English identification and Yoshioka dedication.
Battle debugger gate 0x0106AF, F0 → 80 One documented unlock patch byte.
Battle debug strings 0x010798 SCENE, OBJ, BG, HPMAX, MUSIC, SE, LINE, EFFECT, events.
Spell-effect tester 0x010822 MAGIC, LASTER, BGLASTER.
Test event text 0x01A76F EVENT/BATTLE mode ranges.
Star Menu Test 0x22B3F8 Hidden developer-facing text.
Multi5 signature 0x09E02E Controller detection, not multiplayer.
Item parameter table 0x3A014D 256 18-byte records.
Item-name table 0x3A46EF 256 15-byte records.
Enemy stat pointers 0x390026 Use these to locate the individual stats.
Enemy names 0x3992D1 256 13-byte records.
U.S. Psychopath pointers 0x399FD1 256 pointers into battle/thought text.
Japanese Psychopath pointers 0x399411 Text bank shifted in Japanese release.
Battle formations 0x39C000–0x39F3FF 512 formations, 26 bytes each.
Third Croco stub formation 0x117, enemy 0xF2 10 HP placeholder and blank name.
Third Belome stub formation 0x120, enemy 0xC9 10 HP placeholder and blank name.
Drill Bit stats enemy 0xE3, 0x390F26 More complete unused combat record.
Permanent stat routine CPU C2:C074–C2:C0B1 CPU memory address, not ROM file offset.
Japanese Hangin’ Shy thought 0x39A20B Two coins an hour.
U.S. Hangin’ Shy thought 0x39AEE7 Reused English Snifit line.

Questions I had while checking the ROM

Are the third Croco and Belome fights playable?

No finished third boss fight has been established. Both have formation records, but their associated enemy slots contain placeholder HP and lack the scripts needed for a proper fight. The records are real. The finished encounters are not.

Does the Japanese version have more unused enemies?

Not in the ordinary enemy-stat and formation tables I compared. The Japanese and American releases share those records. Japan does retain some additional text and presentation details, including the original chandelier-holder thought and a menu Easter egg.

Can Mallow use Psychopath on every enemy?

No. Some named records refer to actors that cannot be targeted in battle, and the opening fights happen before Mallow joins. Other entries are leftovers for enemies that never appear in a normal encounter.

Does the ROM contain complete deleted dungeons?

Some rooms and collision maps survive, occasionally with recognizable graphics. Other remnants have no working art or events attached. The supposed prison dungeon has prerelease-image support, but no complete, playable escape sequence has been demonstrated.

Sources and original Super Mario RPG research

I have linked the research pages, patch documentation, and historical material wherever I could, rather than padding the references with listicles. Several of these researchers have done the difficult work of reconstructing scripts, renderers, and maps. I checked data against the files I had, but their documented emulator demonstrations and prerelease scans are essential context.

If you are doing your own inspection, the main trap is confusing “present in the ROM” with “present in the finished game.” The reverse trap is assuming that something never seen by a normal player must have been a completely implemented, canceled feature. Often all we have is a name, a flag, and a few 1995 screenshots. That is enough to be interesting. It does not need embellishment.

I came into this wondering how much of the game Square had left behind. The answer is: quite a lot, from tiny glitches to abandoned mechanics and what may be remnants of entire story sequences. But what I like best are the little specific details. The Toad who can send you to the credits. The chefs with battle formations. The deleted joke about Croco being useless. A treasure chest with an Ameboid hiding inside. Some poor Shy Guy hanging from a chandelier for two coins an hour. That is a much better record of how this game was made than any generalized claim that there was once a “darker, bigger Mario RPG” hidden in the cartridge.