4

When Z80 first became available on the market in 1976 it was made using NMOS technology. It is the version that is likely to be most familiar to people interested in retro-computers. For example, to the best of my knowledge, all classical models of ZX Spectrum used NMOS version of the chip, sourced from several manufacturers.

At some point in time, CMOS version of Z80 became available. The Wikipedia article on Z80 claims that CMOS version of Z80 was used in several portable computers, starting from Sharp PC-1500 in 1981. However, upon closer inspection it becomes clear that Sharp PC-1500 is based upon a very different CPU, namely LH5801 (see more details here). Two portable computers that I verified to be definitely using CMOS variant of Z80 are Epson PX-8 Geneva released in 1984 (it uses a Toshiba clone TMPZ84C00P-3) and Cambridge Z88 released in 1988 (it uses Zilog's Z84C0004PSC).

I have two related questions, one factual and another partly opinion-based.

  1. When did the CMOS version of Z80 actually become available? I am interested to know both when Zilog released its own version of CMOS Z80 (clearly, prior to 1988) and also when other manufacturers made their CMOS versions of the chip (clearly, prior to 1984).

  2. I was unable to find any mention of any non-portable home computer using a CMOS version of Z80. Of course, CMOS versions were mainly marketed as lower power versions of Z80, i.e. mostly relevant for portable devices. However, CMOS versions also have higher operating frequencies, so one could have used them to make faster Z80-based computers. Are you aware of CMOS Z80 being used in this capacity, especially in the 1980s? If not, do you have any explanation/hypothesis why this was the case?

5
  • There are a lot of 48k and clones using the Z80 NEC... Feb 18, 2020 at 16:03
  • @RuiFRibeiro, I am not very interested in clones, as most of them happened later. Do you have any specific information regarding Sinclair- or Amstrad-produced ZX Spectrums build with CMOS chips?
    – introspec
    Feb 18, 2020 at 19:51
  • Yep, my own issue 3 came with a NEC originally...I asked to change it to a Zilog one. They were cheaper or easier to procure as @Raffzahn says. Even back in the day, models with NEC Z80 had problems with the Interface 1. Feb 18, 2020 at 22:20
  • @RuiFRibeiro, what is the specific part number of that NEC chip? I have seen NEC chips in some ZX Spectrums too, for example, see Issue 2 at spectrumforeveryone.com/technical/zx-spectrum-models. However, in this case the part number is D780C-1 and it is NMOS (see cpu-world.com/CPUs/Z80/NEC-D780C-1.html).
    – introspec
    Feb 19, 2020 at 11:04
  • 1
    All MSX computers with an MSX-ENGINE chip use the integrated (CMOS) Toshiba TMPZ84C00A. Mar 6, 2022 at 4:33

3 Answers 3

3

In the 1985 edition of the Zilog's Data Book CMOS version of Z80 (Z84C00) is shown as a new product for 1985. Dated "April 1985", the datasheet contains label "Preliminary product specification", so the actual CMOS CPUs from Zilog are most likely to have become available later that year. This answers the first half of my first question.

Below I am including a partial image of the first page of the datasheet, archived by BitSavers:

enter image description here

2

Steve Ciarcia's SB-180 - as described in Byte magazine in 1985 - used a 6 MHz Hitachi HD64180 CMOS processor that was compatible with the Z80. Maybe a kit doesn't qualify as a home computer, though, but it certainly wasn't too portable.

(The company that Steve co-founded to make these kits — Micromint — still sells Z180-based SBCs, amongst other products.)

5
  • Thank you for mentioning this interesting machine, I've never heard about it, but it does seem to feature high(ish) CPU frequency at 6MHz, which is likely to be enabled to at least some extent by the use of CMOS. However, unfortunately, HD64180 is only mostly Z80-compatible: it does not support undocumented instructions with the halves of index registers, has a bunch of new instructions, and it also substantially modifies timings of many commands.
    – introspec
    Jul 1, 2021 at 22:17
  • Relying on those split register opcodes was always a gamble. OUT (C),0 doesn't work on CMOS Z80s: sinclair.wiki.zxnet.co.uk/wiki/…
    – scruss
    Jul 2, 2021 at 17:32
  • Well, it was a pretty good gamble, as there is no true clone of Z80 that would not support them.
    – introspec
    Jul 2, 2021 at 21:05
  • all Z80s made in the last few years by Zilog are CMOS, and so do OUT (C),0 differently. I'd say a chip made by Zilog is a true clone. Just testing this on my Z84C0008PEG to see what happens
    – scruss
    Jul 2, 2021 at 23:38
  • out (c),0 is a very special case and is not in any way related to index registers. Simon Cooke explains: "For OUT (C),(HL) the bus clash causes whatever the internal floating level of the Z80 is to be output on the bus... which means that on an NMOS Z80 you get OUT (C),0 and on a CMOS Z80 you get OUT (C),255", see groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ
    – introspec
    Jul 3, 2021 at 0:12
1

(Only partial answer)

Using a CMOS does not just happen because of the need of low power, but availability as well. Already in the late 80s, CMOS were sold at the same or even lower price as NMOS variants or being the the only offer some manufacturers had at all. Since the CMOS was in most parts compatible with the NMOS version, decision to use one was made in procurement, not in engineering.

1
  • CMOS Z80 has exacly one difference in undoc instructions. It executes 'out (c),#00' as 'out (c),#FF'. There might be also differences in undocumented flags, but i'm not aware of it.
    – lvd
    Feb 19, 2020 at 16:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .