Current project state - a complete CP/M system based on Arduino Nano 3.0.
Currently one Arduino Nano in my project:
- emulates the Intel 8080 processor, 64 KBytes RAM (with two FRAM chips) + 4 FDD with 100 diskettes (with SDHC card);
- with the help of the PS/2-UART converter on STM8 allows you to enter information from the keyboard (allows you to switch English/Russian languages, upper/lower case, enable lock for scrolling text on screen);
- displays text information on the TV screen (20 rows with 40 cols or 80 cols on two virtual screens, between which you can switch) without jitter (with duplication of information to the PC through serial channel);
- receives/sends data from/to the PC through serial port via XMODEM;
- data input/output via magnetic tape or audiofile;
- loads the OS CP/M and runs its programs (including BASIC, C, ADA, FORTH, LISP, FORTRAN, FOCAL, MINOL).
I started a chess duel between the "nanocomputer" running Microchess (playing white) and the "big" computer with the chess engine Sunfish (written in Python, written by Thomas Dybdahl Ahle) .
After 22 moves the situation is as follows:
https://blog.foxylab.com/wp-content/uploads/2019/12/cpm4nano_sunfish_22.png
As it turned out, the Spanish party was played in the opening, then Black used the Berlin Defense, and White used anti-Berlin.
All moves and pictures are recorded here -
https://blog.foxylab.com/shahmatnyj-battl/ (comments - on russian).
The game continues :-)