Just connecting by Retro computers via FTDI to compute (OS X or windows) we can confirm its operation but always I love "self-sufficiency system". (Indeed (I think), sending command from 21st century sophisticated monster level computer to 80's retro computer is funny..)
Before making this very intelligent console, I quickly tried "6809 computer with video and keyboard" by LPC810 simple console by boost-up baud rate to 115.2 kbps...
BUT, this tiny console does not have data flow control which is indispensable for high speed serial such as 115.2kbps of Grant's design. As a result, this simple LPC810 console frequently drops character and did not work well.
On the Grant's home page, he already designed very intelligent keyboard/video interface with 115.2kbps with flow control. He realises it on bread board, but I am not so good at bread board handling, and this time I made it by PCB with SMT components.
As well described in Grant's page, Video console is made of ATMega328 and keyboard part is by ATMega88. Initially I thought ATMega8 and 88 are compatible, but confirmed not and ordered at digikey. For firmware upload, I added ICSP terminals and put small modification to the original circuit (RST of 328 and 88 are pulled-up, not direct connection to VCC).
After soldering, firmware can be easily uploaded by Atmel ICE.
As well recognised, all AVR requires FUSE bit setting. Roughly explained in Grant's home page but exact ones are as follows.
Fuse bit setting and firmware (binary) uploading can be done by ATmel Studio. This is the case of ATmega328P, as you already know, never un-set SPIEN.
And this is the case of ATmega88.
After setting FUSE, appropriate binary (firmware) can be uploaded through ATmel Studio..
My PCB files are uploaded to github. My PCB assumes I2C connection between ATmega328P and ATmega88. Please find "yellow lines", which requires jumper on board. Actually this intelligent console has graphic function but at this moment I do not fully utilise. Initial character size on video is too small for small screen and its size can be modified just by sending commend
PRINT CHR$(24); "6"Last "6" corresponds to font property. Details is written in Grant's home page.
Actual operation can be found in the following movie.. have fun!