Hi,
Pictures and sources are available at https://www.mikrocontroller.net/topic/523119. CPU speed is decent (approximately 2.6 MHz i80, at 16 MHz), disk speed is acceptable. The Atmega8515 turned out to be a tiny bit too small (not enough flash for CP/M, not enough RAM to store a sector buffer), the next iteration will use an Atmega162.
My hand-wired board uses two 32Kx8 SRAMs, but someone designed a PCB (pictures and gerbers in the thread) using one 128Kx8 SRAM instead. Disk drivers are implemented in i80 assembly, providing four 8 MB-drives. Runs on 5 V, single serial port, runs CP/M 2.2.
Congratulations. I made a similar thing last year, but simpler and using an Atmega8515 (because of XMEM).I recently finished my latest project, which is a i8080 CP/M computer, emulated in an ATMega88 on a circuit board the size of about half a credit card.
Pictures and sources are available at https://www.mikrocontroller.net/topic/523119. CPU speed is decent (approximately 2.6 MHz i80, at 16 MHz), disk speed is acceptable. The Atmega8515 turned out to be a tiny bit too small (not enough flash for CP/M, not enough RAM to store a sector buffer), the next iteration will use an Atmega162.
My hand-wired board uses two 32Kx8 SRAMs, but someone designed a PCB (pictures and gerbers in the thread) using one 128Kx8 SRAM instead. Disk drivers are implemented in i80 assembly, providing four 8 MB-drives. Runs on 5 V, single serial port, runs CP/M 2.2.
I've used an AVR to become a true monochrome 80-column TV terminal with PS/2 keyboard. It should be possible to get rid of the 74xx165 to become a true single-chip solution, which so far I haven't seen anywhere on the internet.I'm using an Atmega8 for my "fake CRTC" project specifically because the address generation code effectively requires "racing the beam" for the active portion of each scanline of video, and a problem like that is shockingly easy to code on those chips.