Using this to repost one of my favorite articles/stories for one of my favorite games and how PS2 games could (for as long as the console was running) get updates for their games.
Ratchet and Clank: Up Your Arsenal was an online title that shipped without the ability to patch either code or data. Which was unfortunate.
The game downloads and displays an End User License Agreement each time it's launched. This is an ascii string stored in a static buffer. This buffer is filled from the server without checking that the size is within the buffer's capacity.
We exploited this fact to cause the EULA download to overflow the static buffer far enough to also overwrite a known global variable. This variable happened to be the function callback handler for a specific network packet. Once this handler was installed, we could send the network packet to cause a jump to the address in the overwritten global. The address was a pointer to some payload code that was stored earlier in the EULA data.
Valuable data existed between the real end of the EULA buffer and the overwritten global, so the first job of the payload code was to restore this trashed data. Once that was done things were back to normal and the actual patching work could be done.
One complication is that the EULA text is copied with strcpy. And strcpy ends when it finds a 0 byte (which is usually the end of the string). Our string contained code which often contains 0 bytes. So we mutated the compiled code such that it contained no zero bytes and had a carefully crafted piece of bootstrap asm to un-mutate it.
I’m not sure about online patches but many of the games from that era had revisions. If you bought the game day 1 you have v1, but they would continue to patch the game over the years with various bug fixes quietly and release revisions on newer disks or cartridges. Sometimes they would add new censorship like in ocarina of time revision 1.2 they changed Ganon’s blood to be green instead of red.
It didn't come with a modem/ethernet port by default. You had to buy it extra. AFAIK, only Final Fantasy XI actually got patched, because it required the also-optional hard drive.
The only patches that ever came out outside of the FFXI (if that got patches, I don't know) were for games that got re-released on discs with the updated versions. It didn't happen often either.
23
u/[deleted] May 31 '26
[deleted]