The MicroProfessor MPF-1 is one of the original Z80 trainers. It was a trainer that I suspect a lot of original Z80 coders first learned how to program the Z80, and it was my first introduction to programming the Z80. There is a multitude of information about the MPF-1 on the 'net so won't repeat it here.
With a more recent desire to go back and re-learn the Z80, I have managed to get hold of a couple of MPF-1's to re-live the experience. In hindsight. I can see just how limited the MPF-1 actually is. Part of it's issues for me are:
- Getting software on and off of the MPF-1 is via the keyboard or cassette tape.
- An incredibly tiny amount of RAM. Ideal for teaching the basics but not much else.
- Not a lot of options exist for expanding the capabilities of the MPF-1.
The repo at https://github.com/turbo-gecko/MPF/tree/main is where the information for adding 32K to 48K of extra memory, serial port comms, and an interface for using 4GB to 32GB SDHC cards.
The SD card specific code has been refactored into library files with conditional compiles in MinOS.asm to load in the hardware driver required. This has been tested on an expanded MPF-1 using the original setup in the gallery as well as cabling a second SD card to the Z80 PIO/CTC port on the MPF-1.
There were several small speed improvements made in the IO drivers, plus the ability to arbitrarily decide which IO pins can be used for the 4 lines on the SD card module. This allows for custom configurations.
The program is basically ready for testing and feedback.
Future work includes:
- Adding TEC-1G default serial support. - Adding support for the KS Witchit Z80 kit. This needs an adapter PCB as it's Z80 interface is non-standard. PCB's have been designed and ordered, just waiting for them to arrive and test.