Reply to post: Re: What we need @DrBed

ZX Spectrum reboot latest: Some Vega+s arrive, Sky pulls plug, Clive drops ball

ThomH Silver badge

Re: What we need @DrBed

The Z80 in the Spectrum is not only nominally clocked at 3.58Mhz but also genuinely runs at that speed for as long as you avoid the physical chips that are shared with the ULA. E.g. on a 48kb Spectrum that means that as long as your code is in the top 32kb of RAM rather than the bottom 16kb.

The CPC is nominally clocked at 4Mhz but via use of the WAIT line permits a Z80 memory access on only one in every four cycles, regardless of what you're accessing. The standard fetch cycle is four cycles long, so single-byte instructions that don't cause a memory access run without a speed penalty (once you're in phase, anyway) but everything else is subject to delays. As a result code often ends up running more slowly than it would on a ZX Spectrum.

It depends how often the Spectrum code is seeking to update the display though, obviously. And the CPC's main problem isn't this clocking scheme or that one, it's the annoying large percentage of titles that are so lazy as just to be the Spectrum code plus some extra work at the end to translate the Spectrum graphics to anything that looks sort of right. It's almost a revelation every time you load a game that was converted properly, like Chase HQ, Robocop or Gryzor.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Biting the hand that feeds IT © 1998–2019