Dave Beazley has written a python wrapper around Mike N's py65 to
emulate a Superboard - it can talk to the keyboard or can be contacted by telnet.
(As he's used this as a chance to work on python3, he also
ported py65 to python3, which is a bit futuristic: you need a
version 3 of python to use it. Probably backporting the
superboard emulation back to python 2.x wouldn't be too hard, but there is some work to do.)
Dave says on his blog that he doesn't expect to maintain this fork of py65, so perhaps it should be taken as a template for an official port to python3 sometime in the future.
Thanks to Mike for pointing out this project, and thanks to Dave for responsive fixups to unintended differences.