Are the Screen->D[0] etc. registers saved in a save game? Or, rather, should they be?
In my testing, they aren't. This is a problem, as there's currently no other way to persist arbitrary variables across game sessions.
Like, right now, I'm writing a script to control water levels, a la the Water Temple. I thought it would be a nice touch if the water level was saved in a save game, and the only way I thought to do that was to stick the water level in the first screen's D[0] register. But, when I load it up while testing, it's always 0.