Ocelot games are firmware images for the dsPIC33, written in C. There's two games for the Ocelot: Star Lynx, a 3D third-person flight-into-the-screen space shooter with talking animals and a huge floating-head final boss; and Mattsteroids, a classic blow-up-the-rocks arcade game!
Both are written by me and written atop an abstraction layer that combines the physical interfaces with some useful services like graphics and sound to produce a complete arcade system.
As a side note, the architecture only allows running code from internal flash - this is why it's more of a tabletop arcade similar to Grandstand Astro Wars than a home console like a Mega Drive. It'd be possible to give the Ocelot a bootstrapper that reads in cartridges (ROMs with an edge connector) and spontaneously flashes itself with the game it finds (or does a little checksum dance to see if it already has the current game 'installed' and skips that if not). The PIC is only rated for a finite amount of flashes, but if you needed a consoleish Ocelot, that's how it'd work.
Can you instruct me on how to build this? Schematics, components list, this sort of thing?