Skip to the content
PCBKitNew board
2 layers99 × 45.5 mmEF9366, the printed circuit board in 3D

A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

Size
99 × 45.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
12
Nets
67
Pads
122
Tracks, vias
241, 62
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
27 May 2024
Updated
13 Mar 2025

Overview

EF9366 is an open-source printed circuit board by roberto314, from the roberto314/Unicomp3 repository on GitHub, published under the BSD-2-Clause licence. It is a 2-layer board of 99 × 45.5 mm with 12 parts on 67 nets, routed with 241 tracks and 62 vias.

Its parts include 3 connectors, 2 capacitors, 1 resistor and 1 IC. It belongs with the retro computing and games boards of this library.

README

README.md

UNICOMP

Version 3.00

A modular 8-bit Computer able to recreate (nearly) every microcomputer of the mid 70s to early 80s in Hardware without FPGAs (although an FPGA can be added). Can also be used as a teaching tool for:

  • VHDL or Verilog
  • C
  • RTOS (STM32F401 runs ChibiOS. Link: https://www.chibios.org)
  • Python
  • bash and linux in general (Olimex board runs linux with fbterm and tmux)
  • Harwaredesign
  • Timing of CPUs
  • maybe Assembler
  • SPI and I2C Interfaces
  • CPLDs and FPGAs

It is different from other designs because of these points:

  • it uses a 3.3V only Bus,
  • it uses fast RAM for 16 chipselect outputs with single address resolution over the whole 1MB range,
  • it uses one SRAM for RAM and ROM replacement (can be write writeprotected) with 1MB,
  • it uses a clock generator chip (DS1085) - no more crystals to change,
  • it is configureable via STM32 (RAM and ROM content, Clock frequency, chip select lines),
  • it can program the CPLDs (only XC9572 and XC9536 tested) from the STM32, no external programmer needed.
  • Board size is 100mm x 100mm - no backplane (like the PC/104 standard. Link: https://en.wikipedia.org/wiki/PC/104).
  • and maybe most convenient: it can change RAM and ROM content on the fly without crashing the CPU. For example starting the Apple I, going into Basic and uploading the program in about half a second is really nice.

Unicomp plus Logic Analyzer: Unicomp plus Logic analyzer

Unicomp modules

  • USB-Serial board:

    • a simple board with an universal 4x USB to UART module from ebay (FT4232).
  • CPU board:

    • can be any 8-bit CPU (6502, 6802, 6809, 68008, 6803, 8051,...)
    • a CPLD (XC9572) for clock generation and glue logic
  • Multi Serial boaŕd:

    • suggested chip select #0
    • can be used with the following serial interface chips: MC6850, MOS6551, MOS6552 or pin compatible
  • Multi Parallel boaŕd:

    • suggested chip select #1
    • can be used with the following parallel interface chips: MC6820, MC6821, MOS6520, MOS6521, MOS6522, MOS6526, MOS8520, MOS6532 in the first slot
    • the first slot can additionally mimic a MOS6530
    • the second slot can accommodate a MOS6522 or pin compatible
  • RAMROM board:

    • chip select fixed at #15 (for chipselect RAM or ROM) and #14 for Write Disable (High for ROM),
    • 1M of SRAM plus an extra 16-bit RAM for address decoding,
    • a STM32F401 'blackpill' board to fill the SRAMs with data over USB,
    • USB shell on the STM32 to change ROM content on the fly,
    • also configures the Address Range of all peripheral modules,
    • acts as a XSVF Player to program the CPLDs
  • Prototype board:

    • empty board for prototyping
    • no CPLD
  • MAX-II (EPM240) board:

    • CPLD plus Buffers
  • self made module:

    • chip select can be any non-used line in the Range from 0 to 13.
    • size is 100mm x 100mm
    • there is the prototype board in the repository for the position of the connectors and also the labels (pinout)

Configuration RAM

The configuration is done with 1Mx16 fast ram on the RAMROM board. It is configured from the STM32F401. The cs = 15 is for writing the main RAM, cs = 14 is the Write Disable. The rest is free.

Working Recreations of old computers (tested again with Unicomp3)

Nameprim. IOchips usedosweblink
Motorola MEK D2serialMC6802, MĆ6850newbug, xswtbug, mondebLink: https://www.retrotechnology.com/restore/smithbug.html
Motorola MEK D1serialMC6802, MĆ6821 (plus Arduino)MikbugLink: https://www.retrotechnology.com/restore/smithbug.html
SWTPC 6800serialMC6802, MĆ6821 (plus Arduino)MikbugLink: https://deramp.com/swtpc.com/
SWTPC 6800serialMC6802, MĆ6850SWTBUG, SWTBUGA, Mondeb, xSWTBUGLink: https://deramp.com/swtpc.com/
Heathkit ET3400serialMC6802, MĆ6850MITS BASIC, TSC MicroBASIC,...Link: https://github.com/jefftranter
HD6303 Board (Eric Klaus)serialHD6303 or MC6803Monitor +BASICLink: https://sites.google.com/site/ericmklaus/projects-1/hd6303cpuboard
MC3 ComputerserialHD6303 or MC6803MonitorLink: https://www.waveguide.se/?article=mc3-a-diy-8-bit-computer
Grant Searle 6809 boardserialMC6809E, MC6850MS BasicLink: http://searle.x10host.com/6809/Simple6809.html
Grant Searle 6502 boardserialMOS6502, MC6850OSI BasicLink: http://searle.x10host.com/6502/Simple6502.html
Daryl Rictor 6502 boardserialMOS6502, R6551SBC-2 (monitor only)Link: https://sbc.rictor.org/info2.html
Daryl Rictor 6502 boardserialMOS6502, MC6850SBC-2 (monitor only)Link: https://sbc.rictor.org/info2.html
SYM1serialMOS6502, UM6532SYM1 ( +BASIC +RAE)Link: http://retro.hansotten.nl/6502-sbc/synertek-sym-ktm/sym-1/
KIM1serialMOS6502, UM6532KIM1Link: http://retro.hansotten.nl/6502-sbc/kim-1-manuals-and-software/
Apple IserialMOS6502, MĆ6821 (plus Arduino)Wozmon + BASICLink: http://retro.hansotten.nl/6502-sbc/apple-1/
DREAM 6800BAS (Video)MC6802, MAX-IIDREAM operating System (Chip8)Link: http://www.mjbauer.biz/DREAM6800.htm
Psion Organizer ILCDHD6303Psion OSLink: https://www.jaapsch.net/psion/index.htm

python helper scripts

  • UC3_upload.py: multi-function script. up- or download RAM Content, write or read the clock chip, set the reset pin, upload configuration data from file, upload RAM data from file, gets version number,

  • UC3_make_uploadfile.py: creates an .ucb file for upload. It can have multiple RAM locations and lengths.

CPLD programming

Used Software and OS

Used Hardware

  • Oscilloscope: Rigol DS1054Z (4 channel)
  • Logic Analyzer: Hantek 4032L (32 channel)

History Lesson

The unicomp Project started a couple of years ago and is developed in my spare time. It is intended to be a module system to test out different hardware configurations or CPLD- or FPGA- extensions and to recreate old systems and test software and operating systems.

Differences Unicomp2 from Unicomp1:

  • chipselect not with CPLD but with RAM on every peripheral board - more flexible,
  • chipselect resolution improved to two,

Differences Unicomp3 from Unicomp2:

  • chipselect RAM is on RAMROM Board (16-bit wide) - that leads to:
  • simpler (and cheaper) peripheral modules,
  • no linux SBC needed,
  • CPLD programming from STM32 or with external programmer (JTAG Header on every CPU Module)
  • 3.3V Supply on RAMROM board,
  • RAM has now a backup battery (CR2032) battery,
  • improved documentation.

Parts

12
QtyValueFootprintReferences
2100nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1, C2
11kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR1
1Conn_02x01Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_HorizontalJ2
1EF9366Package_DIP:DIP-40_W15.24mm_SocketU4
1FormatConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJP1
1InputsConnector_PinHeader_2.54mm:PinHeader_2x17_P2.54mm_VerticalJ1
1LOGOmy_own:Logo_100ProzentOffner_10x2.7mmG***
1Logo Open Source HardwareSymbol:OSHW-Logo2_7.3x6mm_SilkScreenH2
1Logo kicadSymbol:KiCad-Logo2_6mm_SilkScreenH1
1OutputsConnector_PinHeader_2.54mm:PinHeader_2x17_P2.54mm_VerticalJ3
1WriteOnlyConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJP2

Questions

How big is the EF9366 PCB?

It measures 99 × 45.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the EF9366 use?

12 parts. 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 EF9366 KiCad files?

From the roberto314/Unicomp3 repository on GitHub, at the commit this page was made from: the board is VideoBoard/schematics/EF9366/EF9366.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the EF9366 design in my own project?

Its repository publishes it under the BSD-2-Clause licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from roberto314/Unicomp3

12
  • 2 layers100 × 100 mmWD1771 Board, the printed circuit board in 3D

    WD1771 Board

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    122 partsBSD-2-Clause
  • 2 layers100 × 100 mmRAMROM Board, the printed circuit board in 3D

    RAMROM Board

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    105 partsBSD-2-Clause
  • 2 layers100 × 100 mm6809 CPU, the printed circuit board in 3D

    6809 CPU

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    103 partsBSD-2-Clause
  • 2 layers100 × 100 mmRamRomBoard, the printed circuit board in 3D

    RamRomBoard

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    97 partsBSD-2-Clause
  • 2 layers100 × 100 mmSchematics v10, the printed circuit board in 3D

    Schematics v10

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    92 partsBSD-2-Clause
  • 2 layers100 × 100 mm6502 6800 CPU, the printed circuit board in 3D

    6502 6800 CPU

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    91 partsBSD-2-Clause
  • 2 layers100 × 100 mmMMU v1, the printed circuit board in 3D

    MMU v1

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    90 partsBSD-2-Clause
  • 2 layers100 × 100 mmVideoBoard v1, the printed circuit board in 3D

    VideoBoard v1

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    86 partsBSD-2-Clause
  • 2 layers100 × 100 mmMP Board, the printed circuit board in 3D

    MP Board

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    71 partsBSD-2-Clause
  • 2 layers100 × 100 mmMOT Serial v11, the printed circuit board in 3D

    MOT Serial v11

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    68 partsBSD-2-Clause
  • 2 layers66.5 × 50.5 mm6303X FP64, the printed circuit board in 3D

    6303X FP64

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    60 partsBSD-2-Clause
  • 2 layers100 × 100 mmCpu template with buffer, the printed circuit board in 3D

    Cpu template with buffer

    roberto314/Unicomp3

    A modular 8-bit Computer able to recreate (nearly) every Retro computer of the late 70s to mid 80s.

    58 partsBSD-2-Clause

Similar boards

  • 2 layersNrf bga, the printed circuit board in 3D

    Nrf bga

    github-linguist/linguist

    Language Savant. If your repository's language is being reported incorrectly, send us a pull request!

    12 parts14kMIT
  • 2 layers66.9 × 74.5 mmDeskHop, the printed circuit board in 3D

    DeskHop

    hrvach/deskhop

    Fast Desktop Switching Device

    12 parts7.9kGPL-3.0
  • 2 layers40 × 15 mmSensors, the printed circuit board in 3D

    Sensors

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    12 parts3kApache-2.0
  • 2 layers42.7 × 56.5 mmTle6240 driver, the printed circuit board in 3D

    Tle6240 driver

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    12 parts1.2k
  • 2 layers49 × 25 mm5v boost regulator, the printed circuit board in 3D

    5v boost regulator

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    12 parts915
  • 2 layers28.3 × 10.3 mmTap Photosensor PCB, the printed circuit board in 3D

    Tap Photosensor PCB

    VoronDesign/Voron-Tap

    Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

    12 parts716GPL-3.0
  • 2 layers25.4 × 70.4 mmTpmsniffer, the printed circuit board in 3D

    Tpmsniffer

    stacksmashing/pico-tpmsniffer

    A simple, very experimental TPM sniffer for LPC bus

    12 parts696