I'm trying to finalize a game with the DPC+ kernel. It's got a procedurally generated playfield (among other things), which means I need to call drawscreen a lot to prevent the screen from rolling. To minimize code space, I set up a gosub that looks like this:
screenrefresh DF6FRACINC = 32 DF4FRACINC = 32 DF0FRACINC = 16 DF1FRACINC = 16 DF2FRACINC = 16 DF3FRACINC = 16 drawscreen return
This code works perfectly as a gosub in Stella. But when I put it on my Harmony cart, the game crashes once its reaches it. I'm baffled by the difference. I really, really need this code to work as I'm down to < 100 bytes in each of my banks (many are < 30), and according to my tests, each new drawscreen call takes up 24 bytes. I know I could instead do this with a labyrinthine system of gotos, but that won't be as efficient as I need it to be, either.
I'd really appreciate any advice. Thanks.