I'd really love to play around with three.js to pick up some of these ideas. Any suggestions on the best way to approach teaching myself those concepts?
A brief search[1] turns up that the GBC had a few palettes actually built into the hardware, so games that were released before the system out would end up being colorized by one of these; supposedly for some first-party games, the system would actually determine what game was being played and select a more appropriate palette.
Once the system had been released, games could be made in "dual-mode" which would support a monochrome palette when played on the original hardware, but would use custom colorization on the GBC[2].
I'm trying to find more technical sources but haven't located any yet, so if anyone help me find more information I'd be very interested.
EDIT: I found a little more information. Here's[3] someone who disassembled the GBC boot ROM. It looks like on boot, the system would check to see if the inserted cartridge is one of 93 first-party games, and apply a specified palette; otherwise, it would just apply a default palette.
Between the Kindle cloud reader, the mobile apps, and the desktop apps, the glass is free. I'm not saying I like DRM - I don't, I find it a huge pain in the ass, and I took care of it as soon as I downloaded the book - but you're misrepresenting the situation for the benefit of your argument.
That's fair; I also find trying to get books off of the Amazon store irritating. I personally have a nook, but I'll buy eBooks from any store. Regardless, I have to either go through the Kindle desktop app or (ugh) Adobe Digital Editions before I can get it into Calibre, and it's always more of a hassle than it should be.
If you download it to any of the desktop apps, I think you should be able to convert it without a serial number; I've done it several times before and I don't have a Kindle. Here[1] are some Calibre plugins that automate it fairly easily. You could also use the Cloud Reader if you don't want to go through the hassle.