Neo-Geo Assembly Programming for the Absolute Beginner (2016)
ajworld.net
ajworld.net
And the Neo-Geo looks to have been capable of displaying 7k sprites at once?
Damn, that's a hell of a choice.
----
Looking at the Neo-Geo dev wiki: https://wiki.neogeodev.org/index.php?title=Sprites - sprites are vertical strips of 16x16px tiles, from 1-32 tiles high; only 96 sprites can be displayed on any particular scanline. The hardware has support for linking them together to create wider game objects.
One scanline is 384px, so if you want to fill the screen with a tilemap made of sprites, you're gonna eat up 24 of those sprites, leaving you 72 for other stuff. You could probably use another couple dozen sprites for some sparse parallax layers and still have a decent number of them left for game objects. That feels really weird compared to other console architectures I've read about, there's normally a pretty strong division between tilemaps/bitmaps and sprites.
Sounds like fun.
But, most of the "magic" happens in the graphics chips, which are fairly different.
I've been taking my first baby steps into Genesis/Mega Drive development. On a line-by-line, cycle-by-cycle basis, the experience is one of feeding the VDP (its graphics chip) ...keeping it happy, and managing its quirks.
Interestingly, while the Genesis/Mega Drive is obviously far less powerful overall than the NeoGeo, it's more flexible in a few ways. They're not the most useful or spectacular but you can do some tricks that are impossible on the NeoGeo like a limited kinds alpha transparency. You can do it directly with shadow/highlight mode, or convincingly fake it with kind of a "stencil" method.