It is well known that some Z80A processors with non functioning M1 signals were assembled into many ZX Spectrums. As this signal is not used in the main board and not everyone bought interfaces that used it, this fault may pass unnoticed during the whole service life of the computer.

Now many of these M1-faulty Spectrums have started to show their condition, as retro users want to use DivIDE or DivMMC interfaces with them. These interfaces do need a working M1 signal.

As the Z80A was second sourced by several brands (Mostek, Toshiba, Sharp, SGS and NEC, among others), I'd like to know which of these brands could be considered more reliable in terms of having a working M1 signal (is it there any statistics or anything?)

  • Not sure if this is related: If I remember right, my Spectrum used to have a CPU that didn't work in IM 2 - When the first games came across that used that (I think it was something like Beachhead??), I had to change the CPU in order to be able to play that game (and it cost me quite a number of nights to find out why that game didn't run) – tofro Jun 26 '16 at 14:25
  • Mmmmm.... not quite related, but strange anyway. I think it is not the CPU that failed to switch to IM 2, but some malfunction in the data bus lines which might prevent the floating bus to return $FF during the INTACK bus cycle. Most games required that in order to work, but I don't know of it as a CPU issue – mcleod_ideafix Jun 26 '16 at 21:00

I've stumbled upon both this question and its answer today while trying to find out something else, and Tynemouth Software's theory as of the 1st of July is simply this: the Spectrum's expansion connector puts M1 next to the 12v AC signal. So the most likely cause isn't that Spectrums were assembled with processors that signalled M1 incorrectly, it's that many of the Z80s in Spectrums have had their M1 output destroyed by people accidentally bridging the M1 and 12v AC connections with hardware that wasn't quite exactly aligned with the connector.

That theory would suggest that there might well be no correlation between Z80 source and malfunction; if there is one then it's likely to do with 12v AC tolerance, and not really relevant unless the Z80 you intend to use is to be pulled from a Spectrum.

EDIT: to expand on the second paragraph, it appears to be true that having a functioning M1 line is necessary for use in an MSX — to conform to spec you need to assert WAIT while M1 is active so as to extend the machine cycle by an extra clock. So any Z80 that was used in or comes from an MSX should be completely conformant with the specification on M1 activity. Given the wide variety of production lines that led to various MSXs I'd be surprised if that didn't include every manufacturer of Z80s.

  • 1
    If the pin was just sent out floating to an external connector, it might not even take shorting to AC (which I doubt would have just damaged a pin - it would likely have been rectified by protection diodes slowly pulling VCC up until either reaching around 19 Volts or something catastrophically giving in!) but just some ESD events to end up with a shot pin... – rackandboneman Aug 24 '17 at 20:13
  • I will defer to anybody on the real-life factors of circuit design; I can read a schematic but that's about my limit. I think the core theory remains unchanged though — Spectrums don't reveal a hardware flaw in the M1 line, but rather commonly create one. – Tommy Aug 25 '17 at 13:39

Looking at Spectrum schematics the M1 is not used at all! It is brought out to the edge connector though, so expansion packs may have used it. As regards faulty Z80s, I've never heard of any and I used Z80s extensivly for years (started with Nascom 2 in 1979). I've used Z80 chips from Zilog, Mostek, Sharp and NEC and never noticed or heard of any problems. A lot of the systems I worked with would have required a working M1 as this was needed to get Zilog's Z80 peripherals to work correctly with the Z80 specific interrupt modes. A thought is that the issue may arise because the Speccy didnt bother buffering much and the signal may appear erratic when connected to external devices...

  • Welcome to Retrocomputing, great answer! – JAL Aug 29 '16 at 17:36

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.