Skip to the content
4 layers161.3 × 101.9 mmSBC6809System2Video, the printed circuit board in 3D

This started out as a reimplementation of the Acorn system 2 teletext card. That design quickly went in the bin in favour or something closer to the video implementation of the BBC Model A/B or Amstrad CPC464.

Size
161.3 × 101.9 mm
Copper layers
4
Thickness
1.6 mm
Parts
82
Nets
218
Pads
628
Tracks, vias
2,322, 267
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
9 Dec 2025
Updated
5 Mar 2026

Overview

SBC6809System2Video is an open-source printed circuit board by jimbro1000, from the jimbro1000/SBC6809System2Video repository on GitHub. It is a 4-layer board of 161.3 × 101.9 mm with 82 parts on 218 nets, routed with 2,322 tracks and 267 vias.

It is built around the 74LS157PC, 74HCT393D and CD4052BM. Its parts include 26 capacitors, 18 resistors, 18 connectors, 15 ICs and 3 diodes. It belongs with the FPGA and CPLD boards of this library.

Main components

3

README

README.md

SBC6309 Video Inspired by Acorn System 2

This started out as a reimplementation of the Acorn system 2 teletext card. That design quickly went in the bin in favour or something closer to the video implementation of the BBC Model A/B or Amstrad CPC464.

Render of reproduction board

Theory of Operation

The design is based around a MC6845 CRTC for video timing and sync generation. This is supplemented with a MC6821 to provide additional control over variables outside of the CRTC capability (such as colour palette control)

The conversion of byte data into graphic output is handled by a small CPLD generating TTL RGB (with a half-bright to facilitate 15 colours).

Optionally the RGB is converted to Chroma and Luma for S-video and Composite (all in PAL format). Note the RGB doesn't have to be PAL timing but the composite will not operate correctly if the timing is abused. Conversion is performed by a AD724JRZ encoder.

Clocks

The pixel clock is generated on the board starting with a 32MHz oscillator, this is divided down to 16, 8, 4 or 2MHz. At the same time the data clock is fixed and synchronised at quarter of the pixel clock.

The choice of divider is controlled by the PIA. Changing the divider requires the CRTC register values to be reset.

Video Memory

To simplify the design the board uses 16K of dual-port SRAM, this decouples the main clock of the computer from the video clock, allowing it to run out of phase without repurcussions. While dual-port ram is expensive, the chip used here can be obtained at a price comparable to regular SRAM (still more expensive but not prohibitively so).

From the perspective of the host the video memory is just an 8K window, the address range is paged via the PIA to expand to the full 16K.

System Integration

The board uses a 16V8 GAL to integrate the board into the rest of the computer for the purposes of mapping main bus addresses to the video ram and to the CRTC and PIA.

The main video (RGB) output is through a 9-pin mini-din socket, this incorporates stereo audio output not generated on this board. The signal can be injected via a pair of two pin headers.

Plans

Text Mode

The objective is to create a single general purpose video board for the SBC6309 project which must include a text-only mode. To achieve this the board needs to incorporate a character generator ROM. A set of 256 characters at 8 bytes per character requires a 2K address space, the CRTC provides row addressing for up to 32 bytes. Assuming the maximum the requirement increases to 8K but a 8 pixel x 32 pixel character is of limited use. A more practical solution is to utilise the 16 byte option and map the rows to 8, 10 or 12. An 8K rom would allow for two different character sets, possibly at different row counts.

Switching between bitmap and character modes can be performed using a simple 74LS157 multiplexer (two required) depending on the mode. Graphic data can be mapped to both the multiplexer directly (bitmap) or via the character rom (text).

Larger Address Space

The 6845 can address a maximum of 512KB - way beyond the addressing capability of the host. With an 8K window that 64 pages. Expanding to a 16K window would make this more digestable. The cost of dual-port ram would become excessive however to take this to the maximum.

Increasing to 32K (or 64K) falls within reasonable design and cost limits.

The mechanism for expanding the address space is the same as used for text mode, leveraging the row address registers. By adjusting the design for one, the other becomes inherent.

Referring back to the BBC Model A/B and Amstrad CPC the same trick is used. In the BBC the row address is effectively the lower 3 bits of the address so that the bitmap proceeds vertically for 8 bytes before moving to the next horizontal position. The Amstrad moves the row address on so that each row of video data is consecutive but vertically jumps 8 rows before returning to the top (offset by a row) and proceeding again

Parts

82
QtyValueFootprintReferences
21100nFPCM_Capacitor_SMD_AKL:C_0805_2012Metric_Pad1.15x1.40mmC1, C2, C3, C10, C12, C13, C14, C15, C16, C17, C21, C22, C23, C24, C25, C26 +5
8Conn_01x08Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ4, J7, J9, J12, J13, J14, J15, J17
6150RPCM_Resistor_SMD_AKL:R_0805_2012Metric_Pad1.15x1.40mmR4, R5, R6, R7, R8, R9
674LS157Package_SO:SOIC-16_3.9x9.9mm_P1.27mmU10, U11, U12, U13, U14, U16
675RPCM_Resistor_SMD_AKL:R_0805_2012Metric_Pad1.15x1.40mmR10, R11, R12, R15, R16, R17
568RPCM_Resistor_SMD_AKL:R_0805_2012Metric_Pad1.15x1.40mmR1, R2, R3, R14, R18
31N4148Diode_SMD:D_0805_2012Metric_Pad1.15x1.40mm_HandSolderD1, D2, D3
3220uFPCM_Capacitor_Tantalum_SMD_Handsoldering_AKL:CP_EIA-3528-21_Kemet-BC18, C19, C20
2Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ6, J10
2Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ8, J18
2Conn_01x16Connector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_VerticalJ5, J16
110pFPCM_Capacitor_SMD_AKL:C_0805_2012Metric_Pad1.15x1.40mmC9
110uFPCM_Capacitor_Tantalum_SMD_Handsoldering_AKL:CP_EIA-3216-10_Kemet-IC11
127C64Package_DIP:DIP-28_W15.24mmU15
12K7PCM_Resistor_SMD_AKL:R_0805_2012Metric_Pad1.15x1.40mmR13
132MHzOscillator:Oscillator_SMD_Abracon_ASV-4Pin_7.0x5.1mm_HandSolderingY2
14.433618MHzCrystal:Crystal_HC49-4H_VerticalY1
174HCT393Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU7
1AD725Package_SO:SOIC-16W_7.5x10.3mm_P1.27mmU6
1ATF1504ASPackage_QFP:TQFP-44_10x10mm_P0.8mmU2
1AudioConnector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_VerticalJ11
1CD4052BPackage_SO:SOIC-16_3.9x9.9mm_P1.27mmU8
1Conn_CoaxialLibrary:CUI_RCJ-013-SMTJ2
1DIN-9Library:KMDGX-9S-ASJ1
1GAL16V8Library:PLCC-20_THT-SocketU9
1IDT7006L35JLibrary:PLCC-68_THT-SocketU1
1JTAGConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ3
1MC68B21Package_DIP:DIP-40_W15.24mmU5
1MC68B45Package_DIP:DIP-40_W15.24mmU4

Similar boards

  • 2 layers99.1 × 49.9 mmZ80-cpu, the printed circuit board in 3D

    Z80-cpu

    ChartreuseK/RC2014-Z80-CLK-RES

    Simple z80 board with onboard clock generator and reset circuitry for RC2014 bus.

    26 partsGPL-3.0
  • 4 layers120.2 × 104.1 mmExtrom, the printed circuit board in 3D

    Extrom

    jimbro1000/DragonPalExtRom

    Dragon Pal with External Character Rom for Rev 3.1

    78 partsMIT
  • 2 layers117.3 × 43.4 mmGMsbc01-CPU, the printed circuit board in 3D

    GMsbc01-CPU

    GaryMacMinn/65C02-Retro-Computer

    A retro computer system based on the 65C02 CPU in a modular form.

    19 partsMIT
  • 2 layers177.8 × 127 mmScopetrex, the printed circuit board in 3D

    Scopetrex

    schlae/scopetrex

    SCOPETREX vector gaming on your oscilloscope!

    201 parts248
  • 2 layers13.7 × 21.4 mmZ2m partner, the printed circuit board in 3D

    Z2m partner

    smarthomefans/z2m_partner

    Hardware module for iobroker.zigbee

    52 parts186
  • 2 layers109.4 × 108.5 mmQUAAD V1 1, the printed circuit board in 3D

    QUAAD V1 1

    mzourack/QUAAD

    quad 4-step Eurorack CV sequencer

    191 parts45
  • 2 layers194.4 × 95.7 mmGroove main, the printed circuit board in 3D

    Groove main

    whowechina/groove_pico

    Groove Coaster Style Pico Controller

    116 parts31
  • 2 layers280 × 155.3 mmCoco3, the printed circuit board in 3D

    Coco3

    qbancoffee/cocoplusplus

    So now it's time to have fun.... I want to base this board on the CoCo 3 for several reasons.

    211 parts9

Questions

How big is the SBC6809System2Video PCB?

It measures 161.3 × 101.9 mm and has 4 copper layers, 1.6 mm thick.

What parts does the SBC6809System2Video use?

82 parts, built around the 74LS157PC, 74HCT393D and CD4052BM. 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 SBC6809System2Video KiCad files?

From the jimbro1000/SBC6809System2Video repository on GitHub, at the commit this page was made from: the board is SBC6809System2Video.kicad_pcb and its schematic SBC6809System2Video.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the SBC6809System2Video design in my own project?

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