I love you!! Thanks from deepest of my heart!
eriks5 wrote: ↑Sat May 21, 2022 11:59 am I recently got myself a DE10 nano and saw there was no C128 core, so I figured this is a nice little project to get back into FPGA programming
The C128 was my second computer back in the eighties - traded in my C64 for it - and I loved it, and still do. I still have it, and though it needed some repairs over the years it's still functioning. But I'm always afraid to turn it on, as it might just die some day.
So, I dove in schematics, Programmer's reference guide, and even some books I still had from over 35 years ago, in an attempt to create a C128 core, and here it is. Forked from the C64 MiSTer core since the 128 is essentially a C64 with some extra chips hacked in. Not a 100% complete C128 implementation (yet), but some programs already work.
C128 features implementedC128 features not (yet) implemented
- MMU fully implemented and tested. Configurable for 128K or 256K of system memory.
- VDC partially implemented: memory interface is, video output is not.
- Z80 implemented. Simple uses work, but CP/M does not yet boot.
- C64 mode fully operational.
- Support for C128 specific .CRT and .PRG files.
- C128DCR or C128 ROMs and hardware differences implemented.
You can download the core from the repo at: https://github.com/eriks5/C128_MiSTer
- C128 specific keys
- 80 column display
- CP/M mode
- Loading internal function ROM (were there even any ROMs for this?)
- 1571 drive and fast serial for disk I/O
- ... probably other stuff I forgot or didn't realize is different from the C64
The README of the repository has some more information on what is working and what is not.
And here's a short YouTube video showing the current state: https://youtu.be/DoZKi4JNWWs
I will be continuing to work on this. Next thing I want to dive into is implementing the extra keys and the 80 column video output.