Super Mario Bros Minus World

Patrick793

WiiChat Member
Jul 21, 2007
39
0
Some of you may of seen the Super Mario Bros Minus World on the NES, but have you seen them on the Famicom Disk System?

Watch and see the differences.

NES: [MEDIA]http://youtube.com/watch?v=hfSVuYINva4[/MEDIA]

Famicom Disk System:
[MEDIA]http://www.youtube.com/watch?v=K_RN7TarW9Y[/MEDIA]
 
  • Thread Starter
  • Thread starter
  • #5
Conan the Librarian said:
Awesome!!! Im glad you posted a vid of that....I did it once, and nobody believes me!....lol
At least you got there.
I've been trying every once and a while for 3 days with no luck!
lol :p


EDIT:
I found an explanation behind the minus worlds.
Nintendope said:
[23:03] Barubary: let's start with why the fact that it's blank-1 is not just luck.

[23:04] Barubary: it was destined to be called the minus world since blank was the only possible result.

[23:04] Barubary: as you know, there are 3 warp zones

[23:04] Barubary: these are 432, 5, and 876.

[23:05] Barubary: mario 1 was very very tight for space - no extra anything could be added.

[23:05] Barubary: to save space, the game actually handles the "5" warp zone as a normal 3-pipe warp zone

[23:06] Barubary: 5 is really a normal 3 part warp zone, except the game has the first and last positions as 36

[23:06] Barubary: 36 = $24... if you look in nesticle's pattern data, $24 is a blank tile

[23:07] Barubary: so the 36 5 36 warp zone appears as blank 5 blank

[23:08] Barubary: so it ends up looking like a single pipe warp zone

[23:08] Barubary: the reason you can't go into 36-1 from 4-2 is simply because there's no pipe

[23:09] Barubary: if 4-2's blank 5 blank data was loaded into 1-2's warp zone, do you see how that could be used to go to the minus world simply?

[23:10] Barubary: (note: again, for optimization, the game uses the same data table for the data displayed and the data loaded to know to what world to go)

[23:11] Barubary: now for how blank 5 blank gets into 4-2

[23:12] Barubary: in the ROM is a table that looks like... 04 03 02 24 05 24 08 07 06

[23:12] Barubary: the game thinks in "columns" (actually it thinks in groups of 16 columns called segments but that just makes things harder to understand)

[23:13] Barubary: when a command is inserted into the map data, it is loaded at a certain "column" in the level.

[23:15] Barubary: in order for the thing that tells it which of the 3 warp zones (numbered 0, 1, and 2) to use to work, the game's "cursor" must get there first.

[23:16] Barubary: It is for this reason that the really long platforms warp zones make you walk on exist - to make you scroll the screen enough to get the data loaded.

[23:16] Barubary: however, if you go to the warp zone without scrolling, the data is never loaded

[23:17] Barubary: it turns out that a stray 01 is in the byte of RAM that controls the warp zones

[23:18] Barubary: so the game loads warp zone 01's (24 05 24, if you remember) data when you go down the first pipe

[23:18] Barubary: this is why you get to the minus world

[23:18] Barubary: when it loads 36-1, by accident it ends up with world 7-2's data.

[23:18] Barubary: it's like this in C:

[23:19] Barubary: unsigned char asdf <p> [4];

[23:19] Barubary: printf("%d", (int) asdf <p> [5]);

[23:19] Barubary: -- you don't know what the hell you're loading.

[23:19] Barubary: it turns out it loads 7-2's data.

[23:19] Barubary: now for why the world loops (the final part)

[23:20] Barubary: in the enemy data for each level is contained the data that says where pipes go

[23:20] Barubary: however, to save space in bonus levels, each pipe command has an "if" attached to it

[23:21] Barubary: like...

[23:21] Barubary: if (world_number == 7)

[23:21] Barubary: pipe_target = bonus_level_1;

[23:22] Barubary: at the end of 7-2's enemy data it has:

[23:24] Barubary: if (world_number == 7)

[23:25] Barubary: pipe_target = end_of_1-2;

[23:26] Barubary: In the Minus World, world_number is not 7, so no pipe target is set. It defaults to the beginning of the level (this is beyond the scope of this discussion for reasons why) so you end up at the beginning in an infinite loop.

[23:26] Barubary: Thus ends my very long explanation of the Minus World.
 
Last edited:
Back
Top