Super Mario Bros on MMC3

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Karatorian
Posts: 76
Joined: Sun Sep 30, 2007 9:54 pm
Location: Corneria
Contact:

Re: Super Mario Bros on MMC3

Post by Karatorian »

In an SMB hack I worked on, we expanded the ROM by moving the music data and code to a dedicated bank. This freed up a huge amount of space for lots of hacks.

The reset vector was changed to point to the mapper initialization routine, which jumped to the original init routine once it was setup. The music routine was replaced with a stub that swapped the music bank in, ran the original, and switched back. It all seemed to work pretty well.

The code was based on a version of Doppleganger's disassembly that was modified to build with the cc65 toolchain. This made making changes much easier than hex editing or whatever.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Super Mario Bros on MMC3

Post by tepples »

Of course one problem with basing a hack on SMBDis is figuring out a way to distribute your hack as a patch. Any reassembly that moves things around will cause the IPS file to contain nearly the entire ROM.
User avatar
MottZilla
Posts: 2835
Joined: Wed Dec 06, 2006 8:18 pm

Re: Super Mario Bros on MMC3

Post by MottZilla »

That was a problem with my Splatterhouse Famicom patch to MMC3. Alot of data had to be shifted around or duplicated. I ended up writing an entire program in C to patch the original ROM. Sometimes IPS just isn't going to do what you want. Well i guess it will but you'll have a patch that as you said basically contains a significant portion of copyrighted data.
Karatorian
Posts: 76
Joined: Sun Sep 30, 2007 9:54 pm
Location: Corneria
Contact:

Re: Super Mario Bros on MMC3

Post by Karatorian »

Our solution to the patching problem was crossing our fingers and hoping to not get sued. Not the best strategy, but so far, so good.

Considering that source code was also made available, we couldn't exactly keep our hands clean anyway.
User avatar
Sverker
Posts: 46
Joined: Wed May 23, 2012 11:30 pm

Re: Super Mario Bros on MMC3

Post by Sverker »

MottZilla wrote:That was a problem with my Splatterhouse Famicom patch to MMC3. Alot of data had to be shifted around or duplicated. I ended up writing an entire program in C to patch the original ROM. Sometimes IPS just isn't going to do what you want. Well i guess it will but you'll have a patch that as you said basically contains a significant portion of copyrighted data.
I get the feeling that the use of IPS patches has become more due to tradition or convenience of file size than any tangible legal loophole, similar to how ROM sites 15 years ago used to all have a disclaimer that read "For education purposes only! You must delete any ROMs you download within 24 hours or they will become ILLEGAL!". Can anyone even pinpoint the threshold where an IPS patch suddenly becomes "illegal?"
User avatar
Dwedit
Posts: 4470
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: Super Mario Bros on MMC3

Post by Dwedit »

There is a simple and obvious point: When you apply an IPS patch to a bunch of zeroes, and get a working file.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Super Mario Bros on MMC3

Post by tepples »

Sverker wrote:Can anyone even pinpoint the threshold where an IPS patch suddenly becomes "illegal?"
There are only nine people in the United States who can pinpoint when "the amount and substantiality of the portion used in relation to the copyrighted work as a whole" becomes excessive.
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Re: Super Mario Bros on MMC3

Post by qbradq »

Too true Tepples, but keep in mind that in the US, anyone can make and impose that decision upon you with a law suit. Even if the claim doesn't hold in court, the act of being filed is often detrimental enough to cause a chilling effect.

It wouldn't be too terribly difficult to construct a diff and patch utility that would describe an output file as a series of offset and length pairs of an existing reference file, and only include raw data when a sequence of two or more bytes does not appear in the reference file. That way the patch is guaranteed not to contain any data from the original.
darkhog
Posts: 192
Joined: Tue Jun 28, 2011 2:39 pm

Re: Super Mario Bros on MMC3

Post by darkhog »

I have only one method of determining if something what I host on my own site is illegal or not: If court orders me to take it down, then it is illegal. If some private company (say, Pretenda Law) tells me to do it, I say to them show me court order. If they fail to do so, I conclude what I'm doing is in legal boundaries. And for DMCA notices? My site isn't hosted in U.S., so if I get one, I tell them to give me any reason to listen to U.S. law when I and my site lives in europe.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Super Mario Bros on MMC3

Post by tepples »

So what happens when they do an RIAA/BPI and say "take it down and pay us $3,000 or we will sue you for $150,000"
User avatar
qbradq
Posts: 952
Joined: Wed Oct 15, 2008 11:50 am

Re: Super Mario Bros on MMC3

Post by qbradq »

tepples wrote:So what happens when they do an RIAA/BPI and say "take it down and pay us $3,000 or we will sue you for $150,000"
TL;DR - Laws suck, unless I'm the one who's had my rights violated :)
darkhog
Posts: 192
Joined: Tue Jun 28, 2011 2:39 pm

Re: Super Mario Bros on MMC3

Post by darkhog »

tepples wrote:So what happens when they do an RIAA/BPI and say "take it down and pay us $3,000 or we will sue you for $150,000"
I say do as you wish, then do Kim Dotcom on them. Possibly with EFF and Dotcom's help.
Post Reply