PyZX is a ZX Spectrum emulator written entirely in Python. It is based on Vadim Kataev's PyZX Python Spectrum Emulator and is licensed under the GPL-2 license.
- Python 3.x (available at python.org)
- PyGame 1.7+ (available at pygame.org)
To run the emulator, use the following command:
python3 spectrum.py
Optionally, you can use the -OO
optimization flag for potentially better performance:
python3 -OO spectrum.py
- Ctrl + Alt: Switch to special mode
- Alt + AnyKey: Symbol shift
- Ctrl (in normal mode) + AnyKey: Big/small characters
- Ctrl (in special mode) + AnyKey: Symbol shift 2
Thanks to Jasper (spectrum.lovely.net) for the excellent Java emulator of the ZX Spectrum. A significant portion of the code was automatically translated from Java to Python, and further optimization and rewriting are needed to improve emulation speed.
- Implement a more Pythonic approach for the core (Z80 CPU)
- Add threading for parallel processing (video and possibly keyboard)
- Support for TAP/TZX files
- Vadim Kataev (initial version)
- Stanislav Yudin (initial conversion to Python 3)
- Vladimir Berezenko