I now have a pen for the drawing tablet, and it all works. It did indeed make twiddling individual pixels that little bit more comfortable.
The tablet is now back in the box, because it turns out that I didn't need it for drafting backgrounds yet. The very first pass was all straight lines, mirroring, and copying, which are quickest by trackball and keyboard.
It's boring, functional, and simple to change. The whole frontage is one continuous image, which the software now automatically splits to individual screens - the green outlines - and assigns each one a teletext page number.
Though I plan to make full use of the teletext page numbering system later, for now it's just a convenient way to organise the screens. The next tweak in that department will be decoupling page numbers from image numbers, so that the same background can be used on multiple pages. Eventually, each unique background will probably be defined by a set of drawing instructions, rather than a single bitmap, but the concept of sharing across pages will hold true.
Each split background image is encoded in ZX Spectrum format, then compressed by run length encoding. It's not the final technique, but is enough to pack these graphics down to the available memory. In some ways, drawing prettier graphics is the easy part, so that may well be the final step once all the code, buffers, and text have taken their slice.
The next steps relate to passing this new data around in a coherent manner, both between Python classes and within the ZX Spectrum side of the virtual machine. I still patch things together opportunistically for testing, where bad code is temporarily fine, but pinning down permanent mistakes is much easier when they reside in one function alone.
There will be similarly delayed gratification on the game design side, because despite having various stashes of paper with cool ideas around the room - some of which have even made it to the actual design document - nobody will see any of them if navigating the game world is a chore. I now have enough graphics to see where I'm going, so it's time to work towards building the full navigation shell.
Email: comments at arbitraryfiles.com