The Commodore 128 was a version of the Commodore 64 that also had a Z80 CPU along with its "native" 6502 CPU so the system could run CP/M as well as C64 software. (As well as more RAM and other differences.)

But were there ever any games that ran on the C128's Z80 as the main CPU?

If not games, demos or other software that ran on the metal rather than within the CP/M system.

Obvious examples would be ports from Z80-based systems such as the ZX Spectrum.

  • 1
    The Z80 in the C128 ran at about half the speed it did on other systems, IIRC, so any ports would likely be pointless. – Alan B Apr 14 '20 at 12:11
  • 1
    @AlanB: I'm still interested even if pointless. Many many pointless things have been done. For some things speed may not be as important as the exercise. – hippietrail Apr 14 '20 at 14:36
  • 1
    I'm assuming you mean native C128 games as opposed to CP/M games? – mnem Apr 14 '20 at 22:44
  • 1
    @mnem: As I tried to clarify in the question: "that ran on the metal rather than within the CP/M system". Basically I'm dreaming of a retrocomputing hobby board with both our favourite 8-bit CPUs and people keep suggesting that the C128 was already that. But was it ever actually? – hippietrail Apr 15 '20 at 1:36
  • 1
    I don't think so then. Not that you couldn't, theoretically, but a 6502 even in the slowest mode at ~1MHz is going to beat the pants off the Z80 at the 2Mhz it is limited to in the C128. Probably it would only be worthwhile if you designed some dedicated 128 software to offload some of its compute work to the Z80 to make use of both it and the main CPU at the same time. If the 128 had been designed to run the Z80 at a faster 4Mhz+ speed that would be a different situation. – mnem Apr 15 '20 at 2:41

You can write Zilog 80 programs and games (as I do) on the Commodore 128. I exploit Z88DK, which does the magic of booting the C128 in Zilog 80 mode. The Zilog80 at 2mhz effective speed is about as fast as a MOS6502/8502@1mhz in many situations. In some situations that depend on a bigger hardware stack, the slow Zilog80@2mhz can beat the MOS6502/8502@1mhz. This is the case when you write your games in C with CC65/Z88DK dev-kits.

My games are written in C + my abstraction layer CrossLib so that I can compile C128 versions in both MOS8502 and Zilog80 mode. I use equally good compilers for MOS8502 and Zilog80 (i.e., CC65 for MOS6502, SCCZ80 for Z80 and Intel8080 as part of Z88DK, as well as a dozen other cross-compilers). I know that this is not a scientific proof but both compilers have been developed and optimized over many years and both come from Small-C.

You can take a look at my project and even test the binaries of my games (also in exotic C128 modes as such Zilog 80 non-CP/M):

Source and doc: https://github.com/Fabrizio-Caruso/CROSS-CHASE

Binaries: https://github.com/Fabrizio-Caruso/CROSS-CHASE/releases/


Other than some CP/M based text games (mostly PD stuff) that aren't C128 specific, not that I know of. Remember there weren't that all that many C128 specific games to begin with, I'd guess more than 99% of the games people ran on it were unmodified C64 games, and of course the C64 has no Z80 CPU.

  • ...though there was a Z80 cartridge for the C64, and you could run CP/M on that. – Jerry Coffin Apr 17 '20 at 18:45

There were two reasons not many commercial C=128 z80 were games made. First is that if they wrote for C=64, the C=128 people could play it too. Writing only for z80 thus limited their potential market. Second, the graphics are not as flexible with the z80, such as no sprites. It is more difficult (but not impossible) to do graphically intensive games. Achievable resolution would be better, but doing something with that resolution would be harder.

  • 3D vector wireframe style games like Elite or flight simulators would benefit from a higher resolution and no sprites. But it seems the Z 80 just seems much much slower if Fabricio's little game is representative. – hippietrail Jul 15 '20 at 11:04
  • You have sprites for sure. – Polluks Jul 15 '20 at 12:33
  • @Polluks: Oh thanks for clarification. I made a false assumption based on the look of Fabricio's C128/Z80 game compared to his C64 version. – hippietrail Jul 16 '20 at 3:46
  • Z80 and 8502 have full access of VIC and VDC, of course this is not portable anymore. – Polluks Jul 17 '20 at 10:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.