Wow, this is some good stuff, and makes life easier, PocketFrog.
I intend to find some time (that's the real challenge for me, unfortunately), and make a sprite class that'll automatically build a lookup table at declaration of the sprite so that you can push an integer from 0 to 64 as the "Z" coordinate with 32 being the normal size/distance should a scaling flag be set (so the routine will draw to a destination rectangle on every frame).
It's actually pretty simple, I can't wait to get into this. I finally have to learn Windows programming...I'm certainly not too thrilled with eVB performance, my Pocket Circus game runs darned slow on some Pocket PC's.