Super Mario Bros. Minus World Explanation
Started by Tempest, Feb 22 2004 10:30 PM
35 replies to this topic
#1
Posted Sun Feb 22, 2004 10:30 PM
Ok we all know about the SMB minus world trick/bug, but why does it happen? What causes this glitch? Does a level pointer get set to a wrong location or something like that? How come the game doesn't crash, but creates a whole new (endless) level?
Anyone ever take a look at the SMB code and figure this out?
Tempest
Anyone ever take a look at the SMB code and figure this out?
Tempest
#2
Posted Sun Feb 22, 2004 10:54 PM
Well I think I found a good explaination:
Tempest
The Minus World is actually World 36-1 of Super Mario Brothers for the NES. It does not appear in the coin-op Vs. Super Mario Brothers, Super Mario All-Stars for Super NES, or Super Mario Bros. DX for Game Boy Color. Start by coming to the end of World 1-2 with fireball power. Break the ceiling above the pipe out of 1-2 EXCEPT the last block on the right. Now jump through the left side of the block you left. The game's buggy early collision detection will push Luigi or Mario through the ceiling and wrap him around the side of the screen. Shoot the plant and jump down the pipe before WELCOME TO WARP ZONE appears.
You are now in world (SPACE)-1. Character 36 in SMB's font (after 0-9A-Z) is an empty tile, used for the space character. If you duck down a pipe before SMB throws up the warp zone menu, it reads the space from the screen and interprets that as the level number. World 36-1 just happened to point to a water level with a map the same as that of 2-2. According to Pseudo_Intellectual, this level (which he calls Minusland) eventually ends after eight or so laps and takes you to 8-4 at the end.
If I were porting Super Mario Brothers to another console or computer, I would special-case a space character and send the player to World 2-2, a legitimate water level. Too bad Nintendo decided just to fix the collision detection in Super Mario All-Stars, the Super NES port of SMB.
I haven't gone into the warp zone code with a debugger, but commented 6502 source code for SMB at one time was available at http://darkcode.tripod.com . The code may be reading from world 4-2's underground warp zone, the one with a single pipe in the middle that leads to world 5 (and has space characters on either side).
Tempest
The Minus World is actually World 36-1 of Super Mario Brothers for the NES. It does not appear in the coin-op Vs. Super Mario Brothers, Super Mario All-Stars for Super NES, or Super Mario Bros. DX for Game Boy Color. Start by coming to the end of World 1-2 with fireball power. Break the ceiling above the pipe out of 1-2 EXCEPT the last block on the right. Now jump through the left side of the block you left. The game's buggy early collision detection will push Luigi or Mario through the ceiling and wrap him around the side of the screen. Shoot the plant and jump down the pipe before WELCOME TO WARP ZONE appears.
You are now in world (SPACE)-1. Character 36 in SMB's font (after 0-9A-Z) is an empty tile, used for the space character. If you duck down a pipe before SMB throws up the warp zone menu, it reads the space from the screen and interprets that as the level number. World 36-1 just happened to point to a water level with a map the same as that of 2-2. According to Pseudo_Intellectual, this level (which he calls Minusland) eventually ends after eight or so laps and takes you to 8-4 at the end.
If I were porting Super Mario Brothers to another console or computer, I would special-case a space character and send the player to World 2-2, a legitimate water level. Too bad Nintendo decided just to fix the collision detection in Super Mario All-Stars, the Super NES port of SMB.
I haven't gone into the warp zone code with a debugger, but commented 6502 source code for SMB at one time was available at http://darkcode.tripod.com . The code may be reading from world 4-2's underground warp zone, the one with a single pipe in the middle that leads to world 5 (and has space characters on either side).
#3
Posted Sun Feb 22, 2004 11:04 PM
Invalid pointers. Basically because the 3 pipes haven't been activated for warp world (before Welcome to Warp Zone message), the value assigned (2, 3, and 4) isn't there so you end up with a blank space in place of the world number (hencing the name minus world) Because it's not a valid value, you get stuck in the wrong area of the cart's memory for the game's layout and the pipe in the end. Since no valid value is assigned for that pipe, you get back to the begining of world -1.
#4
Posted Mon Feb 23, 2004 1:32 AM
So apparently, instead of reading the level number from memory, it just reads the character from the screen... so if you seached through the rom for the "welcome to warp zone", could you then replace the numbers with whatever you wanted, thus forcing the pipes to take you to places like Z-1 (or even legitimately take you to actual levels) without exploiting the collision detection?
It's possible that whatever invalid memory Z-1 would point to might be less "friendly" than (space)-1, and cause a crash or something.
--Zero
It's possible that whatever invalid memory Z-1 would point to might be less "friendly" than (space)-1, and cause a crash or something.
--Zero
#5
Posted Mon Feb 23, 2004 8:27 AM
I could have sworn that it was possible to do the minus world trick on Super Mario All Stars for the SNES. It seems like I've watched someone do it.
I've never been able to get it to work on the NES cart in the first place.
I've never been able to get it to work on the NES cart in the first place.
#6
Posted Mon Feb 23, 2004 8:43 AM
I'm more confused about the part where it says the level ends after eight laps. Is it even possible to get through it eight times in the time you're alloted? Something tells me if that was possible someone would have done it back in the day and everyone would know about it.
Tempest
Tempest
#7
Posted Mon Feb 23, 2004 10:28 AM
I don't know if it's possible or just BS but there are Game Genie code for infinite timer. I'll have to find the Game Genie and the code book.
#8
Posted Mon Feb 23, 2004 1:33 PM
PM me for any Game Genie codes. I am at work so I don't have the book on me right now.
#9
Posted Mon Feb 23, 2004 4:43 PM
You can do the trick in SMBAS, but it will still take you to world 4. Jasoco posted a pic over at the playnintendo forum proving it.
#10
Posted Mon Feb 23, 2004 5:07 PM
I just went through the minus world full force. I was able to get through it 7 times going full force without breaking stride when time ran out, I don't think it'd be possible to get through 8 times without the game genie code for infinite time.
Why is it that you end up in world 5-1 if you go down the middle pipe instead of the first pipe when you slide through the wall? What's the coding glitch there?
Why is it that you end up in world 5-1 if you go down the middle pipe instead of the first pipe when you slide through the wall? What's the coding glitch there?
#11
Posted Mon Feb 23, 2004 6:15 PM
Quote
Why is it that you end up in world 5-1 if you go down the middle pipe instead of the first pipe when you slide through the wall? What's the coding glitch there?
This may answer your question:
>>I haven't gone into the warp zone code with a debugger, but commented 6502 source code for SMB at one time was available at http://darkcode.tripod.com . The code may be reading from world 4-2's underground warp zone, the one with a single pipe in the middle that leads to world 5 (and has space characters on either side).
Tempest
#12
Posted Mon Feb 23, 2004 6:21 PM
Tempest said:
Quote
Why is it that you end up in world 5-1 if you go down the middle pipe instead of the first pipe when you slide through the wall? What's the coding glitch there?
This may answer your question:
>>I haven't gone into the warp zone code with a debugger, but commented 6502 source code for SMB at one time was available at http://darkcode.tripod.com . The code may be reading from world 4-2's underground warp zone, the one with a single pipe in the middle that leads to world 5 (and has space characters on either side).
Tempest
Thanks, that makes a lot of sense actually. When you start going down the pipe, the left and right pipe disappear and the welcome to warp zone 5-1 message comes up.
#13
Posted Wed Feb 25, 2004 10:17 PM
I thought I had my own pretty reasonable explanation.
http://jasoco.no-ip.com/minusworld.php
But it's nice to see an actual technical explanation.
But anyone know where one can find the source code again? Or the site that seems to be gone now? I really need to see that code.
How does he explain the Japanese FDS version of the Minus World which is completely different?
Of course, I still feel confident in my own explanation.
Must see the code, though. Or the site.
Here's that picture. For a larf I decided to see if it would actually work. I was shocked when I saw myself sucked into the wall in the SNES version. But wasn't surprised in the least when it turned out to take me to the correct world.. Sadly.
http://jasoco.no-ip.com/minusworld.php
But it's nice to see an actual technical explanation.
But anyone know where one can find the source code again? Or the site that seems to be gone now? I really need to see that code.
How does he explain the Japanese FDS version of the Minus World which is completely different?
Of course, I still feel confident in my own explanation.
Must see the code, though. Or the site.
sigma said:
You can do the trick in SMBAS, but it will still take you to world 4. Jasoco posted a pic over at the playnintendo forum proving it.
#14
Posted Wed Feb 25, 2004 11:34 PM
We always called that phenomenen Negative World.... sounds kinda better to me than Minus. It doesn't matter, I guess, but I can't deny that a part of me hopes it doesn't catch on. Just doesn't have the flair of NEGATIVE WORLD.
#15
Posted Thu Feb 26, 2004 5:44 AM
It's been called the "Minus World" for over 15 years. You aren't gonna change that!
#16
Posted Thu Feb 26, 2004 6:14 AM
Jasoco said:
But anyone know where one can find the source code again? Or the site that seems to be gone now? I really need to see that code.
I just uploaded a SMB disassembly to The Nintendo Difference's code vault
http://www.geocities.com/happy_dude_2600/c.../codevault.html
WARNING: It's really nasty. If anyone knows of a nicer dis-asm of SMB (or any NES games really) PM me.
#17
Posted Thu Feb 26, 2004 6:20 AM
Happy_Dude said:
Jasoco said:
But anyone know where one can find the source code again? Or the site that seems to be gone now? I really need to see that code.
I just uploaded a SMB disassembly to The Nintendo Difference's code vault
http://www.geocities.com/happy_dude_2600/c.../codevault.html
WARNING: It's really nasty. If anyone knows of a nicer dis-asm of SMB (or any NES games really) PM me.
Is that the whole game? What is the story?
#18
Posted Thu Feb 26, 2004 6:32 AM
Jasoco said:
Too bad I don't really know a thing about Assembly. I just like to have copies of code for stuff.
Is that the whole game? What is the story?
Is that the whole game? What is the story?
The CHR-ROM isn't in there. But it is the whole game code.
#19
Posted Thu Feb 26, 2004 6:34 AM
Happy_Dude said:
Jasoco said:
Too bad I don't really know a thing about Assembly. I just like to have copies of code for stuff.
Is that the whole game? What is the story?
Is that the whole game? What is the story?
The CHR-ROM isn't in there. But it is the whole game code.
#20
Posted Thu Feb 26, 2004 6:41 AM
Just uploaded a nice Metroid disassembly.
But that has nothing to do with this thread
But that has nothing to do with this thread
#21
Posted Thu Feb 26, 2004 7:23 AM
I probably shouldn't be but I have to say I am impressed with the extensive documentation offered on this subject. This is a good example of the Internet as a source of information. Great work guys!
Changing subject, why would Nintendo eliminate such a neat trick? I remember it was quite popular in the early days of Nintendo Power (and apparently it still is). IMO The "minus bug" has become a "feature" of the game. Newer versions feels less without it
Changing subject, why would Nintendo eliminate such a neat trick? I remember it was quite popular in the early days of Nintendo Power (and apparently it still is). IMO The "minus bug" has become a "feature" of the game. Newer versions feels less without it
#22
Posted Thu Feb 26, 2004 7:46 AM
Dones said:
I probably shouldn't be but I have to say I am impressed with the extensive documentation offered on this subject. This is a good example of the Internet as a source of information. Great work guys!
Changing subject, why would Nintendo eliminate such a neat trick? I remember it was quite popular in the early days of Nintendo Power (and apparently it still is). IMO The "minus bug" has become a "feature" of the game. Newer versions feels less without it
Changing subject, why would Nintendo eliminate such a neat trick? I remember it was quite popular in the early days of Nintendo Power (and apparently it still is). IMO The "minus bug" has become a "feature" of the game. Newer versions feels less without it
I like how they handled it in the Japanese SMB2. By removing the bricks next to the pipe. Sneaky sneaky. "If you can't fix it, create a workaround."
I wonder if that means the bug's still there. All someone has to do is find a ROM of SMB2 Japan and hack the bricks back in. Or easier yet, remove the wall. Walk right into the room down the pipe. See if it still happens.
#24
Posted Mon Feb 19, 2007 8:17 AM
I wonder if the - world is still in the Wii VC version? I would assume so.
#25
Posted Mon Feb 19, 2007 8:36 AM
Well that was thorough. My 6502 is rusty, but I think I actually understand most of that. Have you looked at the Famicom Disk version of the game?
Tempest
Tempest
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users














