3 ms·
The 7800's video architecture is almost/maybe more difficult to program than the 2600. The MARIA chip reads Display Lists from RAM, which tell it what to draw o
by sehugg 2y ago
The 7800's video architecture is almost/maybe more difficult to program than the 2600. The MARIA chip reads Display Lists from RAM, which tell it what to draw on each scanline. These can contain a combination of bitmaps and indirect bitmaps (i.e. tiles). You only get so many DMA cycles per scanline, so you have to track cycles yourself -- and these cycles eat into your CPU time too.
But wait, there's more. Display Lists are grouped into Display List Lists which are <= 16 lines high, so any moving object higher than 1 pixel is going to need multiple copies.
And if you don't want garbage above and below your sprite, you're going to have to learn about "DMA holes" and arrange your bitmaps carefully in memory space. I didn't mention that some of these structures need to live in 7800's static RAM area, did I?
It's kind of amazing that programmers of the era hacked out a dozen high-quality arcade games. Today things like 7800basic exist to ease the pain. And it's a shame the sound quality wasn't upgraded, C64's SID had set the bar higher by then.