Just a note that I realised recently there is, obviously, a section of video RAM which is unused and could store programs / data.
On the MZ-80A you have the memory locations $D7D0 to $D7FF (48 bytes) which are not sent to the screen but is still RAM so is usable. The RAM from $D800 to $DFFF unfortunately doesn't exist physically so there's no extra RAM there.
On the MZ-80K you have the 24 bytes at the end of each 'page' of video RAM (each mirrored so you can't have 96 bytes, only 24), so for instance from $D3E9 to $D401
Just an interesting observation (and confirmed with John @ SUC)
Who knows, somebody could make use of 24 or 48 bytes
