Skip to the content
4 layers160 × 100 mmSBC-386EX-2, the printed circuit board in 3D

ECB 80386EX sbc

Size
160 × 100 mm
Copper layers
4
Thickness
1.6 mm
Parts
96
Nets
215
Pads
1,108
Tracks, vias
4,776, 99
Pours
9
Routed
Yes
KiCad
KiCad 4
Created
6 Sep 2026
Updated
4 Oct 2026

Overview

SBC-386EX-2 is an open-source printed circuit board by danwerner21, from the danwerner21/SBC80386EX repository on GitHub. It is a 4-layer board of 160 × 100 mm with 96 parts on 215 nets, routed with 4,776 tracks and 99 vias.

It is built around the 74LS240DC, 74LS245SC and 74LS241P-E, with the 74F257APC, 74HCT14D and 74LS74PC among its other parts. Its parts include 39 capacitors, 24 ICs, 9 connectors, 8 resistors and 8 diodes. It belongs with the computers and single-board computers boards and the FPGA and CPLD boards of this library.

Main components

8

README

README.md

SBC 386EX: homebrew single board computer

SBC-386EX

A single board computer built around the Intel 80386EX, an embedded 386 with most of a PC's support chips on the die. It plugs into a RetroBrew ECB backplane or runs on its own, and with the BIOS in this repository it boots MS-DOS 6.22 and COHERENT 4.2, Mark Williams Company's UNIX-like operating system.

The board was designed by John Coffman for RetroBrew Computers. Its project page, with the boards, the history and the community around it, is the SBC-386EX wiki page. This repository holds the board's design files, its BIOS, and the software that runs on it.


The board

Version 2.0, from John Coffman's guide to the schematic (Hardware/SBC386ex2-schematic-guide.pdf):

CPUIntel 80386EX, up to 33 MHz (a 66 MHz double-frequency oscillator for the fastest parts); on the board, or on an adapter board, the two footprints overlaid
FPU80387SX socket, run at the CPU's clock
Memoryone 72-pin SIMM, 4 to 64 MB, FPM or EDO, through a DRAM controller in two GAL16V8s; provision for a 32 KB static RAM
ROM64 KB EPROM, or 128, 256 or 512 KB flash, chosen by jumper
Serialthe 386EX's SIO0 at 3F8h, RS-232 on a 9-pin connector, from a 1.8432 MHz clock
Diskan IDE connector laid out for a CompactFlash adapter, 8-bit programmed I/O
ClockDS1302 real-time clock with battery-backed NVRAM
SD carda microSD socket on the 386EX's synchronous serial unit (described on the schematic as "entirely experimental"; it works: see below)
Bus96-pin ECB connector, for RetroBrew cards: the Disk I/O V3 floppy controller, the VGA3 video and PS/2 keyboard board, and others
Front panelfour LEDs on port 1, a run/halt LED, reset

The KiCad project, the schematic and board PDFs, a bill of materials and the PLD equations are in Hardware/.


The BIOS

SBC386/bios is the board's ROM BIOS: John Coffman's, from 2018, which brought the board up and laid the foundations, taken by Dan Werner in 2026 to the point where it boots DOS. It gives the board a PC-compatible BIOS interface on hardware that is not a PC:

  • POST with a memory test and sizing, the ROM checked by CRC16 and then shadowed into DRAM, and the CPU clock measured
  • SETUP, by pressing a key during POST, with its settings kept in the DS1302's NVRAM: disk geometry, floppy drives, the serial console, date and time, the boot device
  • Disks: CompactFlash and IDE through INT 13h, CHS and the LBA extensions; floppy drives on the ECB Disk I/O V3, which has no DMA and is driven polled
  • Console: the serial port, with VT100 translation, and the ECB VGA3 colour display with a PS/2 keyboard, both at once
  • Clock: INT 1Ah on the DS1302
  • A debug monitor, SETUP entry 5, which every piece of hardware on the board was brought up with (commands in upper case, numbers in hex)

Notes for using it are in SBC386/bios/0README.TXT. Two worth knowing first: three Ctrl-^ in a row on the serial console restart the board (it has no Ctrl-Alt-Del), and HIMEM.SYS needs /MACHINE:PS2, since there is no 8042 for it to drive A20 through.

How the BIOS went from never having run INT 13h to a DOS prompt, and why things are as they are, is told in 0BRINGUP.md; what is left is 0TODO.md.

Building the BIOS

The build runs on Linux. It needs:

GNU make
NASM2.08 is the version used; 2.09 is reported to have problems
Open Watcom C 1.9its tools on the PATH, and WATCOM set to where it is installed
gccfor the build's helper programs
  1. The helper programs (exe2rom, hex2bin, bin2hex, copt) are in SBC386/tools, with their sources. Build them if the ones there do not run on your system:

    sh
    cd SBC386/tools
    make
  2. The ROM:

    sh
    cd SBC386/bios
    make

    This builds rom064.hex, the 64 KB image for an EPROM, and rom128.hex, rom256.hex and rom512.hex, the same BIOS placed at the top of a 128, 256 or 512 KB flash part. They are Intel HEX, for any device programmer. make MONITOR=0 leaves the debug monitor out, which frees about 25 KB of the 64 KB.

  3. Program the part that matches the ROM jumper, fit it, and connect a terminal to the serial port at 9600 baud, 8 data bits, no parity. POST runs there; press a key during it for SETUP.


The SD card under DOS

SBC386/sdcard has a DOS driver for the on-board microSD socket, and the program it was brought up with:

  • SD.SYS: DEVICE=SD.SYS in CONFIG.SYS gives the card's first FAT12 or FAT16 partition a drive letter (DOS 4 or later)
  • SDTEST.COM: the bring-up program, which tests the socket a step at a time, from the pins to timed reads and a write test on a sector outside the partition

Both build with make in that directory (GNU make and NASM). How the socket was made to work, given a serial unit that only moves 16-bit words and a clock line that floats between transfers, is set down in the comments of sdtest.asm.


COHERENT

Coherent/ is a port of COHERENT 4.2 to the board. It comes up multi-user, with a login on the serial port and another on the VGA3 screen and keyboard when one is fitted. Its drivers cover the board's IDE port and CompactFlash, the ECB floppy controller (read, write and format), the VGA3 console, and the microSD socket, so files move to and from DOS on SD cards and diskettes.

It is installed on the board from five diskettes, the original 4.2.10 kit with a boot diskette and a supplement made for the board. The diskette images, the installation directions and everything about building it are in Coherent/README.md.


What is where

Path
Hardware/the board: KiCad project, schematic and PCB PDFs, the schematic guide, bill of materials, PLD equations
SBC386/bios/the BIOS
SBC386/tools/the BIOS build's helper programs and their sources
SBC386/sdcard/SD.SYS and SDTEST.COM, for the microSD socket under DOS
SBC386/ATBIOS/an IBM AT BIOS listing, the reference for what DOS expects
Coherent/the COHERENT port: install diskettes, kernel source and changes, tools
TestROMS/, EX2-11/, 386v2/John Coffman's test ROMs, early BIOS work and PLD files from the board's bring-up in 2018
0BRINGUP.md, 0TODO.mdthe BIOS bring-up record, and what is left

Credits

  • John Coffman designed the SBC-386EX, wrote its first BIOS and the tools it is built with, and brought the board up in 2018. See the RetroBrew Computers wiki.
  • Dan Werner took the BIOS to MS-DOS in 2026, and ported COHERENT with the board's drivers, including the SD cards.
  • Mark Williams Company wrote COHERENT, released as open source in 2015.
  • The RetroBrew Computers community, whose ECB bus and boards this one shares.

Licence

The BIOS is free software under the GNU General Public License, version 3 or later: see SBC386/bios/COPYING. COHERENT's own licence, and that of the work on it here, are described in Coherent/README.md.

Parts

96
QtyValueFootprintReferences
28CCapacitors_ThroughHole:C_Disc_D5.0mm_W2.5mm_P5.00mmC10, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24, C25 +12
510uFCapacitors_ThroughHole:CP_Radial_D5.0mm_P2.00mmC43, C44, C45, C46, C47
4LEDLEDs:LED_D3.0mmD3, D4, D5, D6
374ALS244dip_sockets:DIP-20__300U11, U12, U13
374F257dip_sockets:DIP-16__300U19, U20, U21
3Conn_01x03pin_array:PIN_ARRAY_3X1J1, J3, J4
3GAL16V8dip_sockets:DIP-20__300U18, U22, U23
210Kdiscret:r_pack9RR1, RR2
222uFCapacitors_ThroughHole:CP_Radial_D8.0mm_P2.50mmC1, C2
22700discret:R3R5, R6
24700discret:R3R7, R8
10.1Capacitors_ThroughHole:C_Disc_D5.0mm_W2.5mm_P5.00mmC42
110discret:R3R2
110K01N8VEM:r_pack4RR5
110kdiscret:R3R3
110ufCapacitors_ThroughHole:CP_Radial_D5.0mm_P2.00mmC3
11N4148discret:D3D7
1270discret:R3R4
129F040dip_sockets:DIP-32__600U6
14.7uFCapacitors_ThroughHole:CP_Radial_D5.0mm_P2.00mmC41
147001N8VEM:r_pack4RR3
168discret:R3R1
174HCT14dip_sockets:DIP-14__300U9
174LS240dip_sockets:DIP-20__300U14
174LS241dip_sockets:DIP-20__300U3
174LS245dip_sockets:DIP-20__300U10
174LS74dip_sockets:DIP-14__300U15
1C96ABC01N8VEM:C96ABCM-RAECB1
1CLK-1.8432dip_sockets:DIP-14__300U17
1CONN_2pin_array:PIN_ARRAY_2X1P4
1CPU-66mhzdip_sockets:DIP-14__300U16
1CRYSTALKicad:Tuning_Fork_Header_Straight_1x02_Pitch1.00mmX1
1Conn_01x02pin_array:PIN_ARRAY_2X1J5
1Conn_01x0401N8VEM:PCpower4P1
1Conn_02x05_Odd_Even01N8VEM:SHROUDED_5x2J2
1Conn_02x20_Odd_EvenKicad:SHROUDED_20X2P3
1DIODEdiscret:D3D2
1DS1302dip_sockets:DIP-8__300U8
1I386EX_PQFPKicad:PQFP-132_i386_JRCU101
1I386EX_passiveKicad:i386EX-132-adapterU1
1LP2950-3.3_TO92TO_SOT_Packages_THT:TO-92_Inline_Narrow_OvalU5
1MAX233dip_sockets:DIP-20__300U7
1MT16D83201N8VEM:DRAM-72-2021SIM1
1R/G LEDLEDs:LED_D3.0mmD1
1SD LEDLEDs:LED_D3.0mmD8
1SRAM-32Kdip_sockets:DIP-28__300U4
1SUPER01N8VEM:SuperCap5C4
1SW_PUSHdiscret:SW_PUSH_SMALLSW1
1i387SXKicad:80188U2
1microSD-01Kicad:microSD-Molex-47309P2

Similar boards

  • 4 layers241.8 × 174.8 mmAmiga Rejuvenator, the printed circuit board in 3D

    Amiga Rejuvenator

    joethezombie/Amiga-1000-Rejuvenator

    A1000 Rejuvenator

    121 parts58
  • 2 layers244 × 244 mm6809PC-6U, the printed circuit board in 3D

    6809PC-6U

    danwerner21/6809PC

    6809 PC

    167 parts2
  • 2 layersCompaqportableIII, the printed circuit board in 3D

    CompaqportableIII

    raymondh2/CompaqPortableIII

    Current PCB Memory Expansion board layout is untested. The backplane for the expansion cards is tested and working.

    123 parts17
  • 2 layers385 × 230 mmMZ80K, the printed circuit board in 3D

    MZ80K

    Board-Folk/Sharp-MZ-80K

    Sharp MZ-80K Replica Public

    254 parts6
  • 2 layers253.2 × 203 mmPegasus2023, the printed circuit board in 3D

    Pegasus2023

    NeilsVintageComputers/1981_Aamber-Pegasus-2023-Revival

    My first computer, this is a replica I produced from the original schematics using original old components.

    156 partsUnlicense
  • 2 layers279.4 × 203.2 mmZ180GDC, the printed circuit board in 3D

    Z180GDC

    lynchaj/rhyophyre

    Single Board Computer featuring Zilog Z180 processor and NEC µPD7220 Graphics Display Controller

    249 parts12
  • 2 layers100 × 100 mmZ80CLOCK2, the printed circuit board in 3D

    Z80CLOCK2

    lynchaj/nhyodyne

    Modular Backplane Computer

    67 parts31
  • 2 layers213.5 × 79.1 mmApple2Card, the printed circuit board in 3D

    Apple2Card

    patdie421/A2-scsi-card-rebuild

    62 parts

Questions

How big is the SBC-386EX-2 PCB?

It measures 160 × 100 mm and has 4 copper layers, 1.6 mm thick.

What parts does the SBC-386EX-2 use?

96 parts, built around the 74LS240DC, 74LS245SC, 74LS241P-E and 74F257APC. 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 SBC-386EX-2 KiCad files?

From the danwerner21/SBC80386EX repository on GitHub, at the commit this page was made from: the board is Hardware/SBC-386EX-2.0-kicad/SBC-386EX-2.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the SBC-386EX-2 design in my own project?

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