Here is the the first part of the project I was trying to optimize with mixing ASM with GCC.
Obviously it was not rock-blaster or quad-tris that needed the super-fast line draw routines but game #4 I am working on
Which will be a vector-ized implementation of a side scrolling shooter with power-ups, crazy weapons and giant end of level bosses.
In the end by using hand crafted ASM and forcing C to use register variables and forcing C to use specific addresses with a new "section" I was able to increase the line/scene draw routine a little bit over 5x as fast as the C-Only version was.
The "API" is still all nice an C callable so the game logic can be done in nice easy to program C. That was the initial goal of my first ever C project on a microcontroller.