After a few months of work it's finally finished...
Code: Batsly Adams
Music: Animal Style
Download the ROM here!
I got to try out a ton of new stuff here, learned a ton in the process.
A few notes:
Wrote a new scene handler, allows separate scenes that can exit gracefully regardless of changes in video modes. Scene timers can be easily adjusted.
New smooth non-blocking palette fading.
VDP DMA routines work perfectly now, most effects are applied to a tilemap in RAM then DMA'd over right after vsync. A 32x32 map finishes in vblank with time to spare, which means no more tearing!
Wrote a utility to split GIFs into frames and convert them into tiles / palettes. Have a special struct for sprites to handle this output for easy manipulation too.
The large comet is 128x128 -> 16 32x32 sprites stitched together!
The green/blue lines in the announcement scene have a (subtle) transparency effect surrounding the black bar. Used the shadow/highlight registers on the VDP here for certain tiles to simulate opacity.
And finally: a full speed plasma effect, which was the holy grail of visual coding for me. Thanks so much to Andy B for help with the optimization.
Can't wait for this!