ZX Spectrum 16K/48K: Difference between revisions

Jump to navigation Jump to search
m
Spectrum+ → Spectrum +
m (→‎ULA: Remove leftover words)
m (Spectrum+ → Spectrum +)
Line 13: Line 13:
== Case Design ==
== Case Design ==


The industrial design for the original [[#Rubber Keyboard Model|rubber-keyed]] ZX Spectrum and the [[#Plastic Keyboard Model|plastic-keyed Spectrum+]] was by [[Rick Dickinson]], who had previously done the industrial design for the [[ZX80]] and [[ZX81]]. One of the iconic elements of the design is the coloured stripes on the right side of its faceplate in the colours Red, Yellow, Green and Cyan. The exact Pantone colour values couldn't yet be retrieved. The angle of the stripes was measured as being at 24-degrees.
The industrial design for the original [[#Rubber Keyboard Model|rubber-keyed]] ZX Spectrum and the [[#Plastic Keyboard Model|plastic-keyed Spectrum +]] was by [[Rick Dickinson]], who had previously done the industrial design for the [[ZX80]] and [[ZX81]]. One of the iconic elements of the design is the coloured stripes on the right side of its faceplate in the colours Red, Yellow, Green and Cyan. The exact Pantone colour values couldn't yet be retrieved. The angle of the stripes was measured as being at 24-degrees.


== ULA ==
== ULA ==
Line 25: Line 25:
It was later noticed that the ULA contended all I/O access, not just that to its own I/O port. This was presumably avoidable, as the ULA uses the Z80's A0 line to determine whether to respond to I/O port requests. This issue was partially resolved by means of the "spider" modification, which gates the ULA's {{overline|IORQ}} input with A0.
It was later noticed that the ULA contended all I/O access, not just that to its own I/O port. This was presumably avoidable, as the ULA uses the Z80's A0 line to determine whether to respond to I/O port requests. This issue was partially resolved by means of the "spider" modification, which gates the ULA's {{overline|IORQ}} input with A0.


The 48K Spectrum suffers from severe dot crawl, as the pixel clock is not synchronised with the PAL colour subcarrier. This was known about before release, and was a deliberate compromise in the design. The ULA outputs {{overline|Y}}, U and V signals without modulation with a carrier, so this can be avoided entirely, but the pixel clock cannot be adjusted without adversely affecting video timings. This issue was fixed in later models of the Spectrum.
The 48K Spectrum suffers from severe dot crawl, as the pixel clock is not synchronised with the PAL colour subcarrier. This was known about before release, and was a deliberate compromise in the design. The ULA outputs {{overline|Y}}, U and V signals without modulation with a carrier, so this can be avoided entirely, but the pixel clock cannot be adjusted without adversely affecting video timings. This issue was fixed in later models of the Spectrum.


The "flash" attribute of the ZX Spectrum's display, designed to swap ink (foreground) and paper (background) colours in any 8×8 attribute block that enable it, suffers from a timing issue, in that the inversion of the display's bitmap data is not properly synchronised with pixel boundaries. This results in a thin edge in cases where the combination of the flash effect together with swapping of ink and paper in successive attribute bytes (or, alternatively, inversion of the bitmap) ought to cancel out, leaving no visible change between the right of one attribute block and the left of the next.
The "flash" attribute of the ZX Spectrum's display, designed to swap ink (foreground) and paper (background) colours in any 8×8 attribute block that enable it, suffers from a timing issue, in that the inversion of the display's bitmap data is not properly synchronised with pixel boundaries. This results in a thin edge in cases where the combination of the flash effect together with swapping of ink and paper in successive attribute bytes (or, alternatively, inversion of the bitmap) ought to cancel out, leaving no visible change between the right of one attribute block and the left of the next.
Line 39: Line 39:
== [[NTSC Spectrum]] ==
== [[NTSC Spectrum]] ==


Sold in Chile. Didn't meet FCC standards, so was not sold in the USA — the [[Timex 2000 series|Timex TS2068]] was produced instead.
Sold in Chile. Didn't meet FCC standards, so was not sold in the USA — the [[Timex 2000 series|Timex TS2068]] was produced instead.


Two machines found: one with 5C114E ULA, one with 6C011E-3.
Two machines found: one with 5C114E ULA, one with 6C011E-3.
Line 45: Line 45:
== Software ==
== Software ==


The Sinclair BASIC interpreter for the ZX Spectrum was written by [[John Grant]] and [[Steve Vickers]] working for [[Nine Tiles Ltd]]. It was developed based on code previously written by Nine Tiles for the ZX81.
The Sinclair BASIC interpreter for the ZX Spectrum was written by [[John Grant]] and [[Steve Vickers]] working for [[Nine Tiles Ltd]]. It was developed based on code previously written by Nine Tiles for the ZX81.


=== Rubber Keyboard Model ===
=== Rubber Keyboard Model ===


The [[ZX Interface 1]] and Microdrives were designed to fit neatly with the rubber key model of Spectrum. Part of Sinclair's patent for the ZX Spectrum covered inventions relating to the keyboard design.
The [[ZX Interface 1]] and Microdrives were designed to fit neatly with the rubber key model of Spectrum. Part of Sinclair's patent for the ZX Spectrum covered inventions relating to the keyboard design.


=== Plastic Keyboard Model ===
=== Plastic Keyboard Model ===


The [[Spectrum+]] makes use of same circuit board as the rubber keyboard model of the Spectrum, but with a larger hard plastic keyboard instead. This keyboard features extra keys which map to combinations of keys on the rubber keyboard. These extra keys cannot be scanned individually in software, as the membrane for the new keyboard has the same connections as the membrane for the rubber key model.
The [[Spectrum +]] makes use of same circuit board as the rubber keyboard model of the Spectrum, but with a larger hard plastic keyboard instead. This keyboard features extra keys which map to combinations of keys on the rubber keyboard. These extra keys cannot be scanned individually in software, as the membrane for the new keyboard has the same connections as the membrane for the rubber key model.


The same design of the keyboard is also included in the [[ZX Spectrum 128]] and [[Sinclair QL]].
The same design of the keyboard is also included in the [[ZX Spectrum 128]] and [[Sinclair QL]].


Spectrum+ machines sold by Sinclair were assembled with later issues of the Spectrum PCB, although Sinclair sold a conversion kit to owners of the rubber keyboard model to upgrade to the newer keyboard, and these are compatible with older issues of the PCB as well. PCBs can be swapped between rubber keyboard models and the Spectrum+ (a working PCB from a machine with a damaged case could be combined with a case from a machine with a damaged keyboard to produce a usable Spectrum+). It should be noted that the heat dissipation properties of the two cases do differ and that this can cause failures due to overheating.
Spectrum + machines sold by Sinclair were assembled with later issues of the Spectrum PCB, although Sinclair sold a conversion kit to owners of the rubber keyboard model to upgrade to the newer keyboard, and these are compatible with older issues of the PCB as well. PCBs can be swapped between rubber keyboard models and the Spectrum + (a working PCB from a machine with a damaged case could be combined with a case from a machine with a damaged keyboard to produce a usable Spectrum +). It should be noted that the heat dissipation properties of the two cases do differ and that this can cause failures due to overheating.


== Motherboards ==
== Motherboards ==
Line 67: Line 67:
The ZX Spectrum contains either one or two banks of DRAMs. The lower bank of eight [[DRAMS#4116|16Kbit DRAMs]] is present in all Spectrums, and shared between the ULA and CPU as it contains the machine's video memory. A second bank of eight DRAMs for the upper 32K may be present for a total of 48K of RAM. External 32K RAM packs were sold for those not wanting to upgrade their 16K Spectrums to 48K internally.
The ZX Spectrum contains either one or two banks of DRAMs. The lower bank of eight [[DRAMS#4116|16Kbit DRAMs]] is present in all Spectrums, and shared between the ULA and CPU as it contains the machine's video memory. A second bank of eight DRAMs for the upper 32K may be present for a total of 48K of RAM. External 32K RAM packs were sold for those not wanting to upgrade their 16K Spectrums to 48K internally.


For an internally fitted 32K bank eight 32K DRAM chip used ([[DRAMS#4532|TI TMS4532-20NL3]]/[[DRAMS#4532|OKI M3732-L]] or [[DRAMS#4532|TI TMS4532-20NL4]]/[[DRAMS#4532|OKI M3732-H]]). These chips are really faulty 64K DRAMs. All eight DRAMs must be faulty within only one half of their storage. A link is present on the Spectrum PCB to specify which half of each of the faulty DRAMs is usable, but as this single link applies to all eight DRAMs, faults must only be present within the same half of each of them.
For an internally fitted 32K bank eight 32K DRAM chip used ([[DRAMS#4532|TI TMS4532-20NL3]]/[[DRAMS#4532|OKI M3732-L]] or [[DRAMS#4532|TI TMS4532-20NL4]]/[[DRAMS#4532|OKI M3732-H]]). These chips are really faulty 64K DRAMs. All eight DRAMs must be faulty within only one half of their storage. A link is present on the Spectrum PCB to specify which half of each of the faulty DRAMs is usable, but as this single link applies to all eight DRAMs, faults must only be present within the same half of each of them.


=== Issue 1 ===
=== Issue 1 ===
Line 83: Line 83:
The Issue 3 Spectrum included a new, uprated speaker with louder output (Speaker impedance is now 40 ohms instead of 200 ohms for Issue 1/2 boards. This is buffered by a new transistor on the PCB (TR7, ZTX450) instead of being directly driven by the ULA.
The Issue 3 Spectrum included a new, uprated speaker with louder output (Speaker impedance is now 40 ohms instead of 200 ohms for Issue 1/2 boards. This is buffered by a new transistor on the PCB (TR7, ZTX450) instead of being directly driven by the ULA.


Starting with the Issue 3, a low power 6C ULA was used, with changes to the handling of the EAR socket which caused compatibility problems. The "spider" fix was integrated into board.
Starting with the Issue 3, a low power 6C ULA was used, with changes to the handling of the EAR socket which caused compatibility problems. The "spider" fix was integrated into board.


The Issue 3 was the first issue to be sold in the Spectrum+.
The Issue 3 was the first issue to be sold in the Spectrum +.


=== Issue 4 ===
=== Issue 4 ===
Line 93: Line 93:
=== Issue 5 ===
=== Issue 5 ===


This is described in the service manual, however none are thought to exist in the wild.  
This is described in the service manual, however none are thought to exist in the wild.


=== Issue 6 ===
=== Issue 6 ===

Navigation menu