14

According to Gameboy [sic] Development Wiki page The Cartridge Header, locations 0x104 through 0x133 in the cartridge contain a bitmap of the Nintendo logo that's displayed when the Game Boy is turned on. (Presumably that's the "Nintendo®" text/logo shown in this video.) After booting and displaying the logo, these data are checked by the GB (the first 0x18 bytes on the Color Game Boy and all 0x30 bytes on other models) and, if the data are different from what's expected, the unit locks up.

The Game Boy has internal ROM used during the boot process that reads the cartridge header, and according to that document a copy of the image is stored there (though perhaps it's only a partial copy in the case of the Color Game Boy). What are the reasons for storing this image (or a copy of it) in the cartridge?

One thought that comes to mind is that this is a licensing protection mechanism: the logo is intellectual property protectable under trademark laws and the specific binary representation of it under copyright laws, allowing Nintendo to sue anybody manufacturing working cartridges without a license from them. If this is the reason, references confirming this and discussion of its relationship to other licensing protection mechanisms would be appreciated.

However, Nintendo already had a seemingly more powerful version of this in the 10NES chip, so why wouldn't they just use that? (It was eventually successfully used to enforce cartridge licensing, though Nintendo couldn't have known this would succeed in court when the Game Boy was being designed.)

  • 3
    There’s an interesting conference made by a GameBoy developer where he explain this fact as well: youtube.com/watch?v=HyzD8pNlpwI – Rodrigo Jul 21 at 8:41
  • I have a somewhat hard time to see the point of the question. Why does it matter which of the two copies are displayed? – Raffzahn Jul 21 at 11:56
  • 2
    @Raffzahn No problem; I don't mind if you don't see the point of the question, since others do. (Though I'm not sure how documenting your lack of understanding in a comment is useful to anyone else.) You may benefit from reading the question a bit more closely; it seems you also missed that there are probably not two copies of the logo. – Curt J. Sampson Jul 21 at 12:53
  • @CurtJ.Sampson It might be interesting to learn es well, why you spend so much time to put this on a personal, disparaging level instead of answering the simple question I asked? Wouldn't it? For the second copy, you may want to check again. At location A8h..DFh of the boot ROM is a whole copy of the logo and it's checkt by just comparing it with the ROM (at 104h) after displaying the ROM copy (code starting at E0h). Piling another vague assumption on top of the existing doesn't make anything clear, or does it? I'd really would appreciate if you couldd turn back to constructive mode. – Raffzahn Jul 21 at 13:47
  • 3
    @Raffzahn You were not "[asking] a simple question"; you were criticising my post here as inappropriate because it doesn't suit you personally. (If you didn't intend to do that, you need to seriously reconsider how you phrase your posts.) As for copy in the boot ROM, I clearly didn't know it was there as you could see from reading the question and you didn't explain (as of when you posted your comment) that there actually is a second copy. Your criticism that I didn't know something that you never explained is also rather unwelcoming. – Curt J. Sampson Jul 21 at 14:49
10

According to Gameboy [sic] Development Wiki page The Cartridge Header, locations 0x104 through 0x133 in the cartridge contain a bitmap of the Nintendo logo that's displayed when the Game Boy is turned on. (Presumably that's the "Nintendo®" text/logo shown in this video.) After booting and displaying the logo, these data are checked by the GB (the first 0x18 bytes on the Color Game Boy and all 0x30 bytes on other models) and, if the data are different from what's expected, the unit locks up.

Describes the boot process in general - maybe it is good to consider that displaying the logo already is most of the boot process. After all, it's a game system, all useful initialization will be done by the game itself.

Clearly the Game Boy has internal ROM available at least during the boot process so that it can do system setup and read the cartridge header.

It's a 256 byte on-chip ROM. Not exactly a luxurious environment. More than 5/8th are already occupied with displaying the logo. The ROM is present at address 0000h - which makes sense for a Z80, doesn't it?

It seems to me that the image above could just as easily be stored there (though it looks like it's not).

Well, it is. Occupying address 00A8h...00DFh.

The decision, to use the one in the cartridge (Adress 0104h) instead of the Boot-ROM copy (at 00A8h), may look arbitrary at first, but as a second thought, it reveals that this will be quite handy when such a cartridge is inserted, as the user will not see the Nintendo logic when the game locks up, but whatever foreign is stored there, thus making sure the blame is directed at them.

What are the reasons for storing this image (or a copy of it) in the cartridge?

I'd say it's a simple copy protection mechanism.

One thought that comes to mind is that this is a licensing protection mechanism: the logo is intellectual property protectable under trademark laws and the specific binary representation of it under copyright laws, allowing Nintendo to sue anybody manufacturing working cartridges without a license from them.

I guess that's exactly the intention - giving lawyers a leverage for the time there is a need to sue, while avoiding upfront cost of (ultimate broken) hardware based copy protection schemes.

Important in this context is that they not just required some location to read Nintendo (like Kaz mentioned with the Sega TMSS scheme), but hold a graphic image. Graphic images registered as trademark, even if it's 'just' the name, bear a higher degree of protection than a name represented as (ASCII) characters. While a trademarked name can be used in many ways in every day life, graphic trademarks can not.

However, Nintendo already had a seemingly more powerful version of this in the 10NES chip,

Not more powerful, but a total different tool. The image within the Game Boy code was intended to use the very strong trademark law against any (worthwhile) attempt to create compatible software. The CIC was meant as a copy protection device stopping any attempt to build cartridges without licencing (and buying the chip). And copyright was only used in addition in case someone did go all the length to reverse engineer it.

so why wouldn't they just use that?

Simply cost. The game boy was meant to be as cheap as possible (*1). It's start introduction price was less than 90 USD - half of what the NES was. Similar Game Boy games were lower priced than NES games. Using the CIC would have meant to add that chip not only to every GB, but also each and every cartridge. All increasing cost without a direct benefit.


*1 - One reason why it got that in 1989 already outdated B&W screen instead of state of the art colour (like the Lynx).

  • 2
    Another helpful result of displaying the logo from the cartridge ROM instead of the boot ROM is that contact issues on data lines could be easily spotted as vertical lines in the logo. – Michael Karcher Jul 21 at 15:13
  • @MichaelKarcher That's interesting enough that you ought to make it an answer, rather than a comment. – Curt J. Sampson Jul 21 at 17:01
  • 2
    Sega appeared to have done something similar with the Mega Drive (Genesis): segaretro.org/TMSS – Kaz Jul 21 at 18:36
  • @Kaz Seams quite like it. – Raffzahn Jul 21 at 19:40
  • @Kaz TMSS, and especially the resulting Sega v. Accolade case, is clear evidence that the industry knew about and was using this as a technique to enforce licensing. I think this could be expanded into a worthwhile answer. – Curt J. Sampson Jul 22 at 0:36
3

I completely agree to the answer provided by Raffzahn, but there is an additional perceived advantage of using the logo from the cartridge. The contact between the cartridge and the slot known for its suboptimal reliability (and created the impression that blowing into the cartridge to de-dust it helps). If reading the ROM is unreliable, the Logo on the screen is displayed displayed in a garbled fashion, like containing vertical lines if data lines are stuck high or even complete noise if some high address lines fail to address the logo area at all. This helps indicating the user that the cartridge connection is unreliable and the reason for the game to not boot.

2

Regarding the 10NES chip, it proved ineffective. Eventually ways were found to disable or bypass it. Mostly that involved a circuit in the cartridge using a voltage spike to cause the 10NES chip to latch up and stop working temporarily.

However, where it was somewhat effective was when it was cloned. Tengen, a subsidiary of Atari, cloned the 10NES chip by obtaining the source code from the Copyright Office under false pretences. Nintendo sued and eventually won in court, due to the copyright infringement.

This told Nintendo two things. Firstly, having a separate chip for copy protection was unlikely to work as it could be interfered with in the same way as 10NES was, and simply added cost to the system. So the Gameboy instead moved the protection to an on-die ROM that was part of the CPU, which make it extremely difficult to circumvent. In fact, it resisted attempts to read it until decades later, and the method used (clock glitching) was not something that a cartridge could do reliably itself.

Secondly, copyright and trademark law were more effective at deterring unlicensed games. Making the cartridge check look for the copyrighted and trademarked Nintendo logo graphic, which was then forced to be displayed on screen (similar to how Sega displayed "produced by or under licence from Sega" on some of their systems). If anyone copied the logo without authorization, Nintendo could sue them and have a very good chance of winning.

  • The information about the technical failure of 10NES sounds good, but do you have dates for it? The Game Boy was released in April 1989; were successful exploits of 10GEN known to Nintendo in 1988? – Curt J. Sampson Jul 22 at 9:40
  • As for copyright and trademark law being more effective, I don't know if Nintendo knew that in 1988 when they were developing the Game Boy. It was before any of the suits I'm aware of, such as suit against Atari/Tengen over the 10NES clone. ("Nintendo filed no infringement action against Atari until November 1989.") Can you rough out a timeline for what Nintendo knew when about copy protection chips vs. trademark protection? – Curt J. Sampson Jul 22 at 9:40
  • 1
    According to "Bible Adventures: Boss Fight Books #7" the voltage spike technique was known in at least 1987, probably earlier in Taiwan where it was apparently discovered. Also, Tengen released Pac-Man in 1988, which I think was one of the first to use their Rabbit chip cloned from the 10NES source. – user Jul 22 at 10:02
  • I'd say it's likely that Nintendo were aware of the limitations of the 10NES chip at that time. They appeared to be hedging their bets, having filed the source code with the Copyright Office rather than keeping it secret like they did with the Gameboy ROM. – user Jul 22 at 10:04
  • Wouldn't the source code have been filed by the time the 10NES was first released, before anybody had figured out how to compromise it? At that point they couldn't know the effectiveness of IP versus technical protections, though of course it's reasonable that they were going for both with the 10NES, and decided to abandon the technical protection due to known exploits by the time they were finishing up the Game Boy design. Ironically enough, within five years or so their attempt at IP protection had also failed. – Curt J. Sampson Jul 22 at 10:24
1

Summary/TLDR

From court documents it's clear that the primary purpose of a similar technique used by Sega starting at least as early as 1988 (released while the Game Boy was still under development) was to use trademark law to stop distribution of original games by other developers without a license from the console manufacturer. Nintendo had been dealing with the same problems, possibly for longer than Sega had, and no doubt had lawyers and managers who were just as smart and competent, so it's likely they did it for the same reasons.

Sega's TMSS and its Purpose

As mentioned by Kaz in a comment, in 1990 (a year after the release of the GameBoy) Sega started doing the same thing with their TradeMark Security System on the Genesis III. This was a great clue, as it turns out to lead to fairly compelling evidence about why they did this.

According to 977 F. 2d 1510 - Sega Enterprises Ltd v. Accolade Inc ¶6:

...Sega had grown concerned about the rise of software and hardware piracy in Taiwan and other Southeast Asian countries to which it exported its products. Taiwan is not a signatory to the Berne Convention and does not recognize foreign copyrights. Taiwan does allow prosecution of trademark counterfeiters. However, the counterfeiters had discovered how to modify Sega's game programs to blank out the screen display of Sega's trademark before repackaging and reselling the games as their own.

It's made clear in ¶79 that this was a conscious and explicit decision by Sega:

...Sega officials testified that Sega incorporated the TMSS into the Genesis console, known in Asia as the Mega-Drive, in order to lay the groundwork for the trademark prosecution of software pirates who sell counterfeit cartridges in Taiwan and South Korea, as well as in the United States.

It seems also that the system had been designed and implemented in cartridges before the first release of the Genesis system in 1988, as would obviously have been necessary if the old cartridges were to work in the Genesis III. ¶8:

During the reverse engineering process, Accolade engineers had discovered a small segment of code—the TMSS initialization code—that was included in the "power-up" sequence of every Sega game, but that had no identifiable function. The games would operate on the original Genesis console even if the code segment was removed.

(Accolade instructed their developers to include this initialization code in all their games, too, though at the time they didn't know the purpose of it, and all their ran fine on the Genesis III except for one, Onslaught, where the developer didn't do this right.)

While this is in Taiwan solving a much more serious problem than unlicensed cartridges from other software developers—copyright couldn't protect direct copies of the vendors' original games—SEGA at least admitted that this was intended to be used in the U.S. as well (see above), where it wasn't necessary to protect Sega's first-party game cartridges as they were already well protected by copyright.

Nintendo had to deal with the same IP issues for home video game consoles as Sega did, and had possibly been dealing with them for longer. The NES, released in 1985 (three years before the Genesis) had already implemented technical measures to prevent use of unlicensed cartridges, probably due to bad experience with the lack of a lockout system in the Famicom.

Nintendo's lawyers and managers were doubtless as smart and competent as Sega's, so it's no surprise that they might come up with a similar solution to the problem. Nintendo's solution might even be legally slightly stronger than Sega's solution because rather than just a short code (SEGA) in the cartridge triggering trademark display, the actual trademarked image was in the cartridge.

Actual Effectiveness of the Measure

It would be interesting to know if this was ever tested in Taiwanese courts. A few years later Sega sued an infringer in the United States where this was brought up as part of the case, but on appeal it was found allowable for third parties to trigger the trademark display where necessary for compatibility ¶1:

The question is whether the computer manufacturer may enjoin competing cartridge manufacturers from gaining access to its computers through the use of the code on the ground that such use will result in the display of a "false" trademark. Again, our holding is based on the public policies underlying the statute. We hold that when there is no other method of access to the computer that is known or readily available to rival cartridge manufacturers, the use of the initialization code by a rival does not violate the [Lanham Trademark] Act even though that use triggers a misleading trademark display.

The more detailed reasoning given in ¶73 et seq. makes it really clear that it's Sega's fault the trademark was displayed when Accolade's game was started and it was entirely on Sega to fix this.

Because the TMSS has the effect of regulating access to the Genesis III console, and because there is no indication in the record of any public or industry awareness of any feasible alternate method of gaining access to the Genesis III, we hold that Sega is primarily responsible for any resultant confusion.

...while it may not have been Sega's ultimate goal to mislabel Accolade's products, the record is clear that the false labeling was the result of a deliberate decision on the part of Sega to include in the Genesis III a device which would both limit general access and cause false labeling. [This] compels us to place primary responsibility for consumer confusion squarely on Sega.

This is a slightly different situation from the Nintendo Game Boy one, since, as noted above, the Game Boy carts must actually contain the trademark, rather than just triggering display of it. But the principle seems to me to hold: the actual display of the trademark is done by Nintendo code, having the correct material on the cartridge to trigger that is necessary for the game to play, and were it not for Nintendo's code the end user wouldn't be seeing Nintendo's trademark.

As a side note, Accolade had also needed to disassemble and reverse-engineer Sega games to figure out how to overcomes TMSS, and this involved making (internal) copies of the code. This was found to be legal as a fair use when no other means could serve to understand the (non-copyrightable) functionality of the program (¶31 et seq., ibid.), consistent with the earlier Atari Games Corp. v. Nintendo of America Inc suit. (Atari lost that one not because of their reverse-engineering, but because of copyright violations due to also copying original Nintendo source code.)

This and various other comments in the decision make it pretty clear that the judge felt (at that point in time) that it was perfectly legal to do whatever you needed to do to make your software run on any computer you liked. Ah; the good old days; new legislation would change that before the end of the decade.

Current Day

All this is probably purely historical now.

The above decision regarding use of trademarks when required to run software on a computer probably no longer holds in this age of the DMCA where that check would be argued to be an "effective technological measure" restricting use of the computer.

Taiwan (as "Chinese Taipei") became a signatory to the Berne convention on 2002-01-01.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.