CP/M computer on Arduino Nano 3.0

FoxyLab's picture
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 2



I will begin here with a description (on english) of my project cpm4nano - a CP/M-compatible computer based on Arduino Nano 3.0.
Currently one (!) Arduino Nano (!) in my project:
- emulates the i8080 processor, 64 KBytes RAM+additional banks, 4 FDD;
- loads the OS CP/M and runs its programs;
- exchanges information with PC on the serial port, including uploading files to the emulator using the XMODEM protocol;
- with the help of the converter PS/2-UART allows you to enter information from the keyboard;
- displays text information on the TV screen (20 rows with 40 cols) (without jitter!).


Current project circuit:

PS/2-UART converter:


Minimal configuration:
Arduino Nano 3.0 + SD card with adapter + USB-UART converter
Maximal configuration (currently) -
Arduino Nano 3.0 + SD card with adapter + USB-UART converter or PS/2-UART converter + 1 or more FRAM chips FM24C256 + passive adapter for composite TV-input


Displaying the font on the TV screen after the redesign and adding symbols of the pseudographics and Russian letters in the KOI-8 encoding:


For example, the "screenshot" of the TV screen shows the results of the DIR command and the CPU tests:


Compilation of the program TOWERS.ADA for solving the problem of the "Hanoi Tower" (output on terminal program):


GitHub (previous version of sketch) - https://github.com/Dreamy16101976/cpm4nano

Youtube (earlier version) - https://www.youtube.com/watch?v=LHFmt3qWAuY&feature=youtu.be

Description (on russian) - https://acdc.foxylab.com/node/76


To be continued!