An Intel 8080 emulator written in Python. It runs Altair BASIC and CP/M! It even passes 8080EXER!
Wordstar on CP/M on my 8080 emulator on Python on Windows:
Hunt the Wumpus on Altair 8K BASIC on my 8080 emulator on Python on Windows:
Passing 8080 instruction exerciser tests:
To run Altair BASIC, just run altair_basic.py
:
python altair_basic.py
It will load 8K BASIC by default. Use the -4
, -8
, and -e
options to
specify 4K, 8K, or Extended BASIC.
You can specify a program to load on start with -f
:
python altair_basic.py -8 -f wumpus.bas
To run CP/M, first install PyGame:
poetry install
Or:
pip install -U pygame
Then, run cpm.py
, specifying the disk images to load using the -da
, -db
,
-dc
, ..., -dp
options. You'll probably want to set -da
to
cpm_2.2/cpm22py64k.bin
unless you've created your own bootable disk images.
python cpm.py -da cpm_2.2/cpm22py64k.bin -db wordstar.bin
The image file must be raw images of single-sided single-density 8-inch floppy
disks with CP/M 2.2 directory data, such as an image created using
cpmtools' default format, ibm-3740
.
To run 8080EX1 without CP/M, run 8080exer.py
:
python 8080exer.py