Currently supporting CP/M 2.2 and CP/M 3.0
This ia a fork of Takashi TOYOSHIMA's CP/Mega88 project (https://github.com/toyoshim/cp-mega88 ), only focussing on the AVR implementation.
The project features an Intel 8080 emulator, running in an ATmega88 AVR, in a virtual machine which runs CP/M 2.2 and 3.0. (dual boot)
This is a work in progress. Although the system is functional, it is not yet finished. Inside you will find all the files you need to build the system
Currently supporting: CP/M 2.2, Dos+ 2.5, ZSDOS 1.1/ZCPR 2, CP/M 3, ZPM3 and NASCOM “ROM” BASIC 4.7
In march 2007 Grant Searle introduced “CP/M on Breadboard”, a 9 chip Z80 CP/M computer using a CF card as mass storage device.
I got inspired by his work and created my own version
Currently supporting: CP/M 2.2, Dos+ 2.5, ZSDOS 1.1 / ZCPR 2, MP/M, CP/M 3, ZPM3 and NASCOM “ROM” BASIC 4.7
An FPGA implementation of the earlier mentioned Z80 system. Because the configuration supports a 50 Hz interrupt signal, MP/MII was added to the set of supported operating systems.
The system is laid out to run on Altera Cyclone II (EP2C5) miniboard
The board shown is a compact version of a CycloneII-c board with added serial interface connectors (4 in total) and 5v keyboard interface
In answer to popular demand: yes there is a Cyclone IV version too
I use the version 130 Quartus software
My miniboard is fitted with a 50 MHz oscillator
The board shown is compact version of James Moxham's work with 4 serial interface connectors and a 5v keyboard interface.
VHDLs, Schematics and Gerbers are here:
Please refer to the Cyclone II version for disk images and further information
High speed modifications
The FPGA systems can be 'overclocked' by using the available PLL. Without changing hardware the system clock can be increased to 66 MHz, which then clocks the Z80 at 33 MHz. The system RAM is the bottleneck to further increases.
When 10-15 ns RAMS are installed the system clock can be further increased. Depending on your configuration you can double the system clock, maybe more. Included are two configurations, one for the Cyclone II board and one for the Cyclone IV. The first uses a 120 MHz system clock (CPU at 60 MHz) and the second a 132 MHz system clock (CPU at 66 MHz) In both cases the SD card SPI clock is the same speed as the CPU.
The files go in the 'microcomputer' directory of the builds posted above.
In testing I found out that the II and IV builds behave differently. The IV actually performs at 'clock speed' compared to a 'real' Z80 CPU chip. The II system is 28 percent slower (eg 18 MHz with a 25 MHz CPU clock).
On Serial - USB interfaces
Following the FTDI 232 soap I found the following units based on the CP2102 chip to be cheaper and better. It is a 3v3 unit with voltage converter built in, but the inputs are 5v tolerant. A 5v Z80 SIO has no trouble with the 3v3 outputs. All necessary modem lines are available. There is also a 500 mA polyfuse in the 5V line
The board turns into a neat USB plug using a length of heat shrink tube.
look on eBay. They cost about $1.25 each