That is beautiful, loads of things crammed in but in a very nice way.
I like the way the sky changes colour including a sun and moon drifting across the sky.
I can't help feeling that if you had popped those on a circle to make them rise and fall, it might add something.
For example (very crude code, doesn't synch with your demo yet, but it's only for demonstration)
In your sky subroutine, if you added a couple of lines to increase a sunrise variable like this
heavenscroll = 0.4
sunrise=sunrise+heavenscroll
if sunrise>360 then sunrise=sunrise-360 fi
sunscroll = sunscroll + heavenscroll
and then changed the sun drawing line to
x=sin(sunrise*pi/180)*240+RESX/2
y=cos(sunrise*pi/180)*200+RESY/2
gcircle(x,y, 32, 255,127,063, 255,255,127)
Then the sun nearly behaves as we'd expect. It's not amazing, but it might help.
You can put the moon on the opposite side of the circle so that they rotate together. The trick would be to get them to line up with the sky colour change.
Please don't get me wrong, I love your demo, it's just that the sun and moon scrolling across doesn't do it for me, especially as you've taken the effort to change the sky brightness at the horizon.