Skip to the content
2 layers50.8 × 33 mmZX Spectrum Component Video, the printed circuit board in 3D

Component video (YPbPr) output for the ZX Spectrum computer

Size
50.8 × 33 mm
Copper layers
2
Thickness
1.6 mm
Parts
78
Nets
132
Pads
359
Tracks, vias
828, 86
Pours
1
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
29 Feb 2020
Updated
15 Oct 2023

Overview

ZX Spectrum Component Video is an open-source printed circuit board by c0pperdragon, from the c0pperdragon/ZX-Spectrum-Component-Video repository on GitHub. It is a 2-layer board of 50.8 × 33 mm with 78 parts on 132 nets, routed with 828 tracks and 86 vias.

It is built around the 10M02SCE144I7G, THS7316D and LM1117IMPX-3.3. Its parts include 29 resistors, 28 capacitors, 11 connectors, 4 ICs and 3 inductors. It belongs with the retro computing and games boards and the FPGA and CPLD boards of this library.

Main components

3

README

README.md

ZX-Spectrum-Component-Video

Component video (YPbPr) output for the ZX Spectrum computer

General

The ZX Spectrum in its original form produces a radio frequency signal that can be fed into an analog TV. The quality of this signal is very poor, but this can be improved by a simple modification that will make the ZX Spectrum output a composite video signal instead. While this is actually better, it is nowhere near good. To bring the video quality to the next level, this modification will produce a component video signal (YPbPr) that should be as good as an analog signal can possible get. This video signal can be used either directly with a TV that has a YPbPr input, or it can be passed through a dedicated upscaler device ("Framemeister", "OSSC", etc.) before displaying on an HDMI screen.

This hardware modification is a more compact version of the solution that uses an A-Video board with seperate level shifters. It tries to solve various shortcomings of https://github.com/c0pperdragon/A-VideoBoard/tree/master/zxspectrummod :

  • Smaller and cheaper to make
  • No need to modify the case of the ZX Spectrum
  • No need to remove any components besides the RF modulator.

Theory of operation

The mod board passively listens to various digital data lines through which the ULA communicates with the rest of the main board - specifically the signals CAS,RW,IOREQ and the data bus. This information is processed by the FPGA to figure out what image the ULA intends to display. The FPGA drives a simple 3-channel digital-to-analog converter built from resistors to produce the 3 output voltages of the YPbPr signal. Because the main board runs with 5 volt logic levels and the FPGA can only work with 3.3 volts, a voltage regulator and two input level shifter ICs are necessary (on the bottom side of the mod board).

Video output possibilities

  • 288p (default) or 576p
  • YPbPr (default) or RGsB

Output modes can be selected by jumpers or optional switches.

The color palette I am using has slightly softened colors. The original monochromatic colors are just too hard on my eyes especially when viewed on a modern display. I took the platte from [https://lospec.com/palette-list/zx-spectrum] and in my opinion this really looks great.

Drawbacks

Installation of the mod requires complete removal of the RF modulator. This also implies that an existing composite video mod will no longer be available. Without further modification the ZX Spectrum will then work with component video output exclusively.

If you need composite video additionally you can wire up an extra connector, as the original analog signals are still being produced by the video output circuit.

Images

alt text alt text alt text alt text alt text

Configuration jumpers

You can switch to 576p (enhanced definition TV - double vertical resolution) by bridging the jumper J10. Likewise you can switch to RGsB output by briding the jumper J3. Both can either be done with a jumper (permenant setting) or an optional external switch. You can do that in whatever way you like - maybe there is even a solution that does not require to modify the case.

Video adapter cable

The mod uses a small TRRS jack to provide the component video signal. For use with standard cabling, you will need an adapter to break out the 3 lines to individual RCA jacks. Take care to use a cable that has the common ground on the sleeve of the tip-ring-ring-sleeve plug. One possible ready-made product would be: [https://www.delock.de/produkte/S_62499/merkmale.html]

Installation details

Remove an existing RF modulator completely and remove all the solder from the mounting holes. Put the mod boad in place of the modulator and solder the two mounting pins. These pins will also connect the GND levels. For the following cabling I recommend some single stranded wire that is just thin enough to fit into the various via holes of the main board. Using via holes wherever possible is the least invasive option and is also easily reversible.

Power

+5V power supply must be wired to the JPOWER1 hole of the board. A usable voltage source can be found for example near the headphone jacks. Do not use the power line that was originally driving the RF modulator, as this is comming through some resistor and will not deliver enough current.

Control signals

The three control signals CAS, IOREQ, WR can best be taken from the backside of the main board directly from the ULA socket pins (see pin_assignment.txt for more details).

Data signals

Signals D0 to D7 can be taken from various vias through which the data signals are sent on their way between the ULA and the RAM chips. The exact locations may differ with board revision. You may have to probe around with a multimeter to find a conveniently located via for each signal. In the case that you can not find any accessible via, you can also solder your wire directly to the RAM chip (but only as last ressort).

Assembled boards

I have provided all my assembled boards to videogameperfection.com for sale. Please have a look at their website first, and if everything is out of stock, you can try to contact me directly at at reinhard.grafl (at) aon.at.

Parts

78
QtyValueFootprintReferences
23100nFCapacitor_SMD:C_0603_1608Metric_Pad1.05x0.95mm_HandSolderC11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24, C25, C31 +7
710kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR20, R21, R22, R23, R24, R25, R26
6Conn_01x01_MaleConnector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_VerticalJ5, J6, J7, J8, J9, JPOWER1
510uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC1, C2, C3, C4, C5
310uHCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderL1, L2, L3
3150Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR17, R18, R19
316kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR6, R11, R16
31kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR2, R7, R12
32kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR3, R8, R13
34kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR4, R9, R14
375Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR27, R28, R29
38kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR5, R10, R15
2Conn_01x02Connector_PinHeader_2.54mm:PinHeader_2x01_P2.54mm_VerticalJ3, J10
2LVC245APackage_SO:SSOP-20_5.3x7.2mm_P0.65mmIC1, IC2
110M02SCE144footprints:QFP_144_GNDU2
11k1Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR1
1AudioJack4_Groundfootprints:Conrad 4pin audio jackJ2
1CONN_02X05Connector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJTAG1
1Conn_01x05_MaleConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ11
1Conn_01x06_MaleConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ1
1LFSPXO024957Oscillator:Oscillator_SMD_EuroQuartz_XO53-4Pin_5.0x3.2mm_HandSolderingOSC1
1LM1117IMPX-3.3Package_TO_SOT_SMD:SOT-223REG1
1THS7316Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU1

Similar boards

  • 2 layers61 × 64.1 mmRfreplacement, the printed circuit board in 3D

    Rfreplacement

    c0pperdragon/C64-Video-Enhancement

    Component video modification for the C64 8-bit computer

    98 parts286MIT
  • 2 layers43.2 × 53.3 mmA VideoBoard, the printed circuit board in 3D

    A VideoBoard

    c0pperdragon/A-VideoBoard

    FPGA board to create a component video signal for vintage computers.

    75 parts71MIT
  • 2 layers72 × 43 mmLag tester, the printed circuit board in 3D

    Lag tester

    citrus3000psi/Time-Sleuth

    Easy to build & cheap hdmi display lag tester

    56 parts92MIT
  • 4 layers371.6 × 209 mmAdatv2, the printed circuit board in 3D

    Adatv2

    swiszczoo/adat_usb_interface

    16-in, 16-out 4x ADAT <=> USB interface supporting USB Audio Class 2.0

    253 parts2
  • 2 layersCore sf, the printed circuit board in 3D

    Core sf

    krtkr/4hbd

    4 Halfbridge Driver board schematics and PCB files, KiCAD

    114 partsApache-2.0
  • 2 layers58.4 × 34.3 mmSIO2SD, the printed circuit board in 3D

    SIO2SD

    c0pperdragon/SIO2SD

    An Arduino-based floppy drive emulator for the atari 8 bit computers.

    26 parts83
  • 2 layers25 × 25 mmWifi adapter, the printed circuit board in 3D

    Wifi adapter

    qeda/examples

    PCB examples with using QEDA

    17 partsMIT

Questions

How big is the ZX Spectrum Component Video PCB?

It measures 50.8 × 33 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ZX Spectrum Component Video use?

78 parts, built around the 10M02SCE144I7G, THS7316D and LM1117IMPX-3.3. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the ZX Spectrum Component Video KiCad files?

From the c0pperdragon/ZX-Spectrum-Component-Video repository on GitHub, at the commit this page was made from: the board is board/board.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the ZX Spectrum Component Video design in my own project?

Its repository states no licence, so its author keeps all rights: ask c0pperdragon before reusing the design.