Over Christmas, I've been writing the software for the PS/2 interface, this will run on an stm8s003f3 from Mouser, they are an eyewatering £0.67 in the TSSOP package and £0.325 QFN but as I cannot solder QFN by hand it will by the TSSOP. They run at 16MHz which is faster than the base Z80 but the same as final Z80 version based on the Z84C1516FSG. The Z84C15 is a Z80 at 16 Mhz with the support chips of the KIO (SIO, PIO & CTC) it is still in production. The stm8 and the Z80 will communicate via the serial link at up to 460800 baud, the Z80 side will likely limit it to less than this. If I get around to an eZ80 version that will communicate using I²C freeing up the UART. The software I'm currently working will drive 2 ports one for keyboard and one for a mouse. The devices I'm using to test are USB via a PS/2 adapter, the genuine PS/2 parts seem to be a bit problematic, it may need a pull-up or pull-down resistor. The source can be found on GitHub in the STM8 subdi...
In order to get some of the software working in advance of the hardware being ready and due to the lack of debugging support on the hardware I'm tying to rejig a simulator to provide some support. After trying to get several to work I ended up with CHIPS which allows me to play with the driving the CTC, which I'll need to get working to support the 50hz clock. While none of the exiting ones is is perfect, the LC-80 emulator provides a good base, you can see them all at Tiny Emus . I made a simple ROM which is below. To get it to work the source is assembled to chips-test\examples\roms\lc80_2k.bin then the chips-test\examples\roms\lc80-roms.h deleted at the project make is run. I am using Visual Studio so I thin make the individual project and run it in debug mode. To check that it is working some bytes in the RAM as 0x2000 are updated. CH0 equ 0h CH1 equ 1h CH2 equ 2h CH3 equ 3h IBASE equ 200h CTCIBASE equ 0h SIOIBASE equ 8h .org 0000h ...
A few months ago I found I had enough time on my hands to get on with something I 've been planning for 20+ years and that was to create a new Jupiter Ace. At one point I'd started porting the ROM to the Raspberry PI bits of it even run, but the problem was that the PI is quite a closed system finding out the details of the CPU and Graphics system is difficult and hidden behind a veil of secrecy and IP. The system I wanted to create would be simple and easy to understand at all levels. The first step was to find some schematics in a system I could get for free. Bodo Wenzel had done some nice ones here but in OrCAD which costs money. He did, however, provide images of the work so off I set with the free version of Eagle CAD. I downloaded the PDFs to get a good look. I translated the above eventually to Which is available in KiCad format here . Then built a cut down version to show the diagrams were correct. All the routing is done by FreeRouting because I'...
Comments
Post a Comment