[Toturial]: Access the 256W of SMB on real hardware

Started by MasterDisk, March 30, 2010, 03:57:55 am

Previous topic - Next topic

MasterDisk

March 30, 2010, 03:57:55 am Last Edit: September 05, 2016, 11:04:37 am by MasterDisk
1 Insert SMB1 cartirdge and power-on the Famicom unit
2 Remove the cartridge (The Famicom is still powered-on)
3 Insert Tennis
4 Reset
5 Push start and play some Tennis
6 Remove the cartridge (The Famicom is still on)
7 Put back Mario
8 Reset
9 Press A + Start and you should access some strange world.

This technique was released in some old book one year after the SMB release (1986).

The world you access is dependant on the number of steps you make in Tennis.

NintendoKing

I dont understand how this would actually work, but if it does indeed work... this would be a very fun thing to do.

MasterDisk

Cover of the book


EDIT: The world depend of the number of moves you do in Tennis. If you move 9 times, you should access to 9-1.
But I don't know if it's moves with the buttons or moves on the field

NintendoKing

That is a awesome cover art!!
I want that book, now!  ;D

NintendoKing

That saddens me, I wonder if anyone has ever scanned all of the pages? ???

NintendoKing

Also really nifty.  :D
I like to see cool tricks like that.

133MHz

I remember watching a YouTube video a long time ago, it was very low quality and it featured two Japanese dudes demonstrating the Tennis trick with a Yobo-like Famicom clone. In fact that was the first time I've learned about the trick and I thought it was fairly recent. Too bad I can't seem to find the video anymore, maybe it was removed. :'(

Medisinyl


b1aCkDeA7h

March 30, 2010, 01:22:18 pm #8 Last Edit: March 30, 2010, 01:35:33 pm by b1aCkDeA7h
I have US copies of both games, dunno if this would work with them though. I'll give it a try and see what happens.

Edit:

Welp, I don't have Tennis on a standalone cart and it doesn't work with my multicart so I'll go with a never mind for now.

ericj

Are the worlds different than you can select on a level-select version of SMB? I have a version in which you can select any level, even levels above 8-4. Like 9-3, B-4, X-1, etc. Super Simpsons lets you do this, too.

UglyJoe

How this works is that the FC's RAM is not being cleared when the game is reset. 

In SMB's program code, there is an address in memory that determines which world you will "continue" in by holding down A.  When you swap in Tennis, the memory is, again, not getting cleared (since the power was not turned off).  Tennis's program code must use that same "continue" address for something else, such that playing the game for a while changes the value. 

When you swap SMB back in and reset it, the continue address is some other value (possibly greater than 8 ) and so you continue in some other random world.

The Family Basic code is just setting those addresses manually (that's what the POKE command does). 

I had no idea the RAM wasn't cleared when you reset (although it makes sense).  This means I can use Family Basic as a crude gameshark device ;D

(also, I suspect you can just use Tennis -> SMB, rather than SMB -> Tennis -> SMB, but I can't confirm that)

133MHz

You beat me to the explanation, and yours turned out much better. ;)

Quote from: ericj on March 30, 2010, 01:22:36 pm
Are the worlds different than you can select on a level-select version of SMB? I have a version in which you can select any level, even levels above 8-4. Like 9-3, B-4, X-1, etc. Super Simpsons lets you do this, too.


They should be exactly the same, at least in theory. But also keep in mind that pirate versions of SMB such as Super Simpsons or the ones contained in multicarts aren't byte perfect copies of the real SMB, and so I think that the results could vary slightly depending on the ROM data in question. I presume that other, unrelated PRG data gets interpreted as level data when you get the world count past 8.

I also have one of those multicarts where you can select worlds beyond 9 in SMB, and as far as I remember enabling that is as simple as changing a couple of bytes in the PRG ROM. The Tennis trick increments the starting world value through other means.

UglyJoe

I can confirm that this works on a toaster NES with SMB and Tennis.

NintendoKing

Actually, now that I think about it; it makes since. When you reset you dont lose your high scores, but you do when you power off.

So I now get a good understanding of how this works.

UglyJoe

March 30, 2010, 05:10:02 pm #14 Last Edit: March 30, 2010, 05:18:22 pm by UglyJoe
Quote from: MasterDisk on March 30, 2010, 05:41:41 am
But I don't know if it's moves with the buttons or moves on the field


I checked in an emulator and it's moves on the field.  Whenever you move up/down/left/right it gets larger.  If you hold down a direction, it keeps getting larger until you let go.  Sliding left and right during serves doesn't count.  After 255, it loops back to zero.  If you tap the directions really quickly, you can "count" the value (ie, x taps is world x-1, where 0-8 = worlds 1-9, 9-35 = worlds A-Z, and beyond that is worlds whatever-background-tile).  The value starts at 255, so the first tap would really set it to 0, which is world 1.

edit:

Also, here's World Q: http://ximwix.net/storage/smb-worlds/