If you are into hardcore game programming or a geek for embedded system design, you just can't miss this presentation about how the original Gameboy operates:
My main takeaway from this is, the Gameboy had a lot of specialized hardware to get great performance with minimal specs. The Arduboy has quite a bit more raw horsepower but relies on software optimization to maximize the performance.
In other words, because we can use C++ and don't need to rely on so many memory registers and special functions... we can just write whatever we want in the code and it just works! (of course if you want to get your hands dirty, the library is where most of the tricky stuff now happens).
What do you think?