4 ms·
Interesting that the article claims they encrypted the codes for legal reasons. I don't really buy it, though. Listing a numeric offset can't possibly be any k
by byuu 10y ago
Interesting that the article claims they encrypted the codes for legal reasons.
I don't really buy it, though. Listing a numeric offset can't possibly be any kind of legal risk, and anyone with a brain would understand that's how the device worked anyway. And especially, Nintendo could easily disassemble the BIOS and see the grade-school level cipher being used. Plus, Pro Action Replay used raw address:value pairs and never had any issues.
I always figured the point was to make it hard for normal people to tweak the codes, and to bloat out their code lists. You can have "Start with 3 lives; 5 lives; 9 lives", but if the last value is 03,05,09 ... then there's not much point in offering three codes.
I got tired of the shady websites full of ads giving you Game Genie codes for the wrong regions, so I worked with another person (mightymo) who made a list of all known codes. Then I decoded all of them to raw address:value pairs, and I ship all of those codes in a database with my emulator. The downside of this is you can't input your own codes in the weird Game Genie encode format. But so far, no one has complained.
Now moving onto the GBA era, and the devices just got disgusting. Each game would have a "master code" you had to enter first. That was actually an RNG seed value for all subsequent codes. So many people must have wasted so much time hand-keying in those things for zero added value. I'm almost completely certain the purpose of those was for the manufacturers to protect their codes from being stolen by competitors with similar hardware devices.
- derefr 10y ago> Listing a numeric offset can't possibly be any kind of legal risk Theoretically, if the code also for some reason needed to contain the original byte-value of the address at that offset, you could be sued for copyright-infringing reproduction ("you published one byte of the game ROM!") Encryption would prevent this being a clear reproduction. One could then argue, given that, that when it's trivial to deduce what the original value would have been given what the code does, you still have published a reproduction. E.g., if a code XXXXXX:YY means "give a player 0xYY lives at the start of the game", and the game regularly starts with 0x05 lives, then it's clear that byte $XXXXXX of the ROM must be 0x05.
- byuu 10y ago> Theoretically, if the code also for some reason needed to contain the original byte-value of the address at that offset The NES and Game Boy devices usually needed this. Without it, bank-switching would result in one code changing several actual ROM bytes, when you only wanted to change one. The SNES almost never used bank switching so it wasn't necessary there. Still, it's not a one-way hash function here. If you were sufficiently bored, it would be very easy to deduce the encoding for at least the :value portion of the codes, just by comparing the codes in the book. I actually did something similar as a kid. If a phrase (as in a sentence of text) were illegal, using rot13 on it wouldn't make it legal. And Nintendo were chomping at the bit to ban/outlaw/block Game Genie devices (Nintendo has a sad history of being fiercely litigious against everyone), so I'm certain they would have gone for this had they thought they stood a chance at winning. That would be one hell of a jury trial, though. "They clearly reproduced the number 5, which was in our original game! It's obviously an illegal reproduction of our copyrighted game code!"
- jandrese 10y agoNintendo did sue Galoob/Codemasters, but they lost. I have to wonder if the same trial was held today if the outcome would be the same. Copyright lawyers have really gotten quite good at convincing juries about the necessity of Copyright maximalism.
- tomatsu 10y agoOT: Ohai, byuu. The link for beat v03 404s. Is there some other tool I should use for bps?
- byuu 10y agoYes, I would recommend Floating IPS by Alcaro: http://www.smwcentral.net/?p=section&a=details&id=11474 http://www.smwcentral.net/?p=section&a=details&id=11474 He also implemented a much faster delta patch creation algorithm (polynomial time instead of quadratic), so it's definitely the superior option at present.
- tomatsu 10y agoThanks. Gonna give it a try.
- GFK_of_xmaspast 10y ago> Listing a numeric offset can't possibly be any kind of legal risk Why risk it and spend money on lawyers?
- byuu 10y agoBecause applying rot13 to copyrighted data won't suddenly make it legal. It'll just make it slightly more annoying to read. This move couldn't possibly offer any kind of legal defense.
- deleted 10y ago[deleted]
- GFK_of_xmaspast 10y agoAre you a lawyer?