I wrote a few game cartridges for the Atari 400/800 computers when I was there in the early 80s. We were told to include a specific bit pattern, I think it was 5 or 8 bytes long, somewhere in our code. The idea was that the presence of a non-functional, unique bit pattern was going to be very difficult for a defendant to explain in court, since pirates mostly just copied ROMs and made minimal changes to obvious bitmaps and strings. Even if they found the mysterious bit pattern and were clever enough to (say) zero it out, they'd have to explain why most of a ROM was identical except for visible assets and that one set of bytes with no function ("What are these bytes for? Oh, you don't know? Let us show you...")
We weren't told what the pattern meant. I played with it for a couple of hours once; I knew it wasn't executable 6502 code or simple logical bit operation (NOT, reverse bits, etc.) of anything obvious. Morse code makes sense now.
Some coinop machines (Tempest, for sure) used character encodings so that the visible copyright messages were also executable code; changing the message, even slightly, would crash or have unpredictable behavior. In the case of Tempest, when the "final" ROMs were released to manufacturing, the dev team went on vacation while production ramped up. Some lawyer decided that the copyright message had to change, so they patched the ROM on the factory floor. Unfortunately this modification didn't lead to an immediate crash, but opened up a hole where the contents of the score line could do things like give you 100 extra lives (e.g., die with the low digits of your score being "50" and you'd be able to play for free for hours).
> Unfortunately this modification didn't lead to an immediate crash, but opened up a hole where the contents of the score line could do things like give you 100 extra lives (e.g., die with the low digits of your score being "50" and you'd be able to play for free for hours
Was this intentional is order to make the pirated game not make money at the end customer?
The Nintendo gameboy has this, to block unlicensed games. If the copyright message is not displayed by the cartridge at boot, the machine will refuse to play the game.
This is interesting in a couple of ways. First, I think it was ruled in court that a developer could use the Nintendo logo in their game for an unlicensed game because it was necessary to make it work. Nintendo's legal trap backfired.
In another case, someone made a knockoff system from the GameBoy which would play the same games. The games they released would show their logo, I think it was Game Fighter, but in the code it actually contained the Nintendo logo. Basically tricking the system into running a game with a different startup logo.
Side note here, the Atari 800 was my first computer, and I absolutely loved every minute of it. Thanks for all your work and ingenuity, they gave me a good start on a career in technology.
One question: why didn’t the Atari 800 ever take advantage of the double cartridge ports?
My understanding was that the second cartridge slot was not a very well thought out thing. I think there was one cartridge made for it (some debugging tool?)
That port cost a lot of money per unit; Atari's early efforts were not very well cost reduced. If they'd been more aggressive about cost reductions (and improving I/O speeds) they might have done much better in the market against Commodore. Instead we got more unclear hardware directions (the 1200XL's "Help" key was a prime example of the hardware group just not caring about or talking to the software folks), even more expensive machines, and a bunch of work being done by outside contractors instead of inside staff because it was easier to build empires that way. The 7200 game machine (developed by General Computer Corporation in Cambridge, IIRC) was a surprise to most of us, for instance, and not a good one.
See this post at AtariAge about the motivation (https://atariage.com/forums/topic/71760-atari-400800-left-ca...): "According to Joe Decuir, the original idea Atari had for the 800 was that software would come with the base program (LEFT cart) and the add-on content (RIGHT cart). This way you could keep expanding an educational program with new lessons, for example. Plus, having the software in ROM would reduce the RAM requirements of the computer since nothing needed to be loaded. RAM quickly came down in price and many of the advantages of such a complex cartridge arrangement went away ."
We weren't told what the pattern meant. I played with it for a couple of hours once; I knew it wasn't executable 6502 code or simple logical bit operation (NOT, reverse bits, etc.) of anything obvious. Morse code makes sense now.
Some coinop machines (Tempest, for sure) used character encodings so that the visible copyright messages were also executable code; changing the message, even slightly, would crash or have unpredictable behavior. In the case of Tempest, when the "final" ROMs were released to manufacturing, the dev team went on vacation while production ramped up. Some lawyer decided that the copyright message had to change, so they patched the ROM on the factory floor. Unfortunately this modification didn't lead to an immediate crash, but opened up a hole where the contents of the score line could do things like give you 100 extra lives (e.g., die with the low digits of your score being "50" and you'd be able to play for free for hours).