So, yesterday arrived C64 CP/M Cartridge.
For me is no so important if is CP/M running, but if is accessible its Z80 CPU.
First time I turned off SCPU and tested in C64 mode - Z80 works and CP/M 2.2 too. Maybe you think - so, what new, C128 has Z80 and newer CP/M version... if this had to be only one positive result, Z80 and CP/M could had both modes - C128 and C64 too. BTW: CP/M 2.2 and 3.0 are compatible but CP/M 2.2 cannot read CP/M 3.0 disks...
But now I turned on SCPU, first test failed... I was not surprised, but don't wanted to lost the fight. I switched SCPU to 1MHz and tried again - and - in C64 mode was working Z80 and CP/M too... I was surprised, so in hope I switch to C128 mode and try CPU switch routine with simple Z80 program - amazing - works perfectly, only one thing is in timing, SCPU must to be set to 1MHz. Now I tried to load CP/M 2.2 directly to Basic 2.0 start address to execute CP/M loader in C128 mode - failed what was not surprise.
What these results giving us?
- C128 has without SCPU 3 CPUs: MOS 8502, Z80 inside C128, Z80 inside cartridge
- C128 has with SCPU 2 CPUs: WDC 65816 and Z80 inside cartridge
- in C64 mode are available without SCPU 2 CPUs: 8502 and Z80 inside cartridge
- in C64 mode with SCPU are available 2 CPUs: 65816 and Z80 inside cartridge
What it means?
C128 can work in both modes with code of these CPU families: X65, 65K and X80 - even C128 without SCPU has 2 Z80 CPUs!
I add X80 feature finally to The Ace for C128 and C64 computers...
- output routine is near to finish, I'm handling C65 chargen and screen loaction