

2layer
A Z80 retro computer, ZX Spectrum compatible, can also run CP/M.
- Size
- 299.2 × 180 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 369
- Nets
- 409
- Pads
- 2,259
- Tracks, vias
- 7,328, 665
- Pours
- 53
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 14 Nov 2023
- Updated
- 16 Mar 2025
Overview
2layer is an open-source printed circuit board by ceteras, from the ceteras/CoBra repository on GitHub, published under the MIT licence. It is a 2-layer board of 299.2 × 180 mm with 369 parts on 409 nets, routed with 7,328 tracks and 665 vias.
It is built around the P8212, 74LS42PC and 27C128-15, with the 74LS00SC, 74LS157PC and 74LS153DC among its other parts. Its parts include 113 resistors, 92 ICs, 51 capacitors, 11 connectors and 1 diode. It belongs with the retro computing and games boards of this library.
Main components
12P8212
DIP-24DIP-24 Buffers, Drivers, Receivers, Transceivers ROHSRochester Electronics, LLCBuffers, Drivers, Receivers, Transceivers74LS42PC
PDIP-16-55℃~+125℃ PDIP-16 Interface - SpecializedTexas InstrumentsInterface - Specialized27C128-15
-0℃~+70℃ 128Kbit 4.5V~5.5V Parallel Port (Parallel) - Non-Volatile Memory (ROM)Microchip TechnologyNon-Volatile Memory (ROM)74LS00SC
-0℃~+70℃ 15ns@5V,50pF 2 2.7V 2V 4 4.75V~5.25V 400uA 500mV 74LS 800mV 8mA NAND Gate - Logic Gates ROHSTexas InstrumentsLogic Gates74LS157PC
PDIP-160℃~+70℃ 4.75V~5.25V Single Supply PDIP-16 Signal Switches, Multiplexers, Decoders ROHSTexas InstrumentsSignal Switches, Multiplexers, Decoders74LS153DC
PDIP-160℃~+70℃ 14ns 4.75V~5.25V 400uA 400uA 6.2mA 74LS Single Supply Tri-state output PDIP-16 Signal Switches, Multiplexers, Decoders ROHSTexas InstrumentsSignal Switches, Multiplexers, Decoders74LS193P-E
DIP-1674LS Programmable divide ratio、Reset function、Cascade counter、Synchronous counting、Multi-mode counting DIP-16 Counters, Dividers ROHSRenesas ElectronicsCounters, Dividers74LS74PC
DIP-140ns 0℃~+70℃ 1 2 20MHz 3.5pF 35ns@5V,50pF 4.5ns 4.75V~5.25V 400uA 74LS Series 8mA 8mA Asynchronous Complementary D-Type Rising Edge Set and Reset DIP-14 Flip FlopsTexas InstrumentsFlip Flops74LS04PC
PDIP-140℃~+70℃ 4.75V~5.25V 6 6.6mA 74LS PDIP-14 InvertersonsemiInverters74LS10PC
PDIP-140℃~+70℃ 3 3.3mA 4.75V~5.25V 74LS Series NAND Gate PDIP-14 Logic GatesonsemiLogic Gates74LS86
DIP-14-20℃~+75℃ 10mA 2.7V 23ns@5V,15pF 2V 400mV 400uA 5V 74LS 800mV 8mA XOR Gate DIP-14 Logic Gates ROHSHITLogic Gates74LS11DC
CDIP-140℃~+70℃ 18ns@5V,50pF 2V 3 4.5V~5.5V 400uA 6.6mA 74LS Series 800mV 8mA AND Gate CDIP-14 Logic GatesTexas InstrumentsLogic Gates
README
README.mdCoBra
CoBra is a Z80 computer designed in 1986 at ITCI, a research center in Brasov, Romania.

In its official version, its specs are:
- 3.5MHz Z80A CPU
- 64KB ram, made up of 4 banks of 8x 4116 chips each
- 2KB - 16KB ROM boot code (original firmware fits in 2K)
- 16KB ROM for the BASIC interpreter (8x 2716 or 4x 2732)
- 256 x 192 resolution ZX Spectrum video interface
- 58 keys keyboard, featuring 50 keys for ZX Spectrum mode plus 8 for CP/M
- i8272 floppy interface - on a daughter board (not included in the repo for now)
- RS232 port (bit-banged)
- joystick port
- 8 bit parallel port, input only, signals shared with the joystick interface
- extension port using a 3x32 pin DIN41612 connector
It's a two-in-one machine, it can be either a ZX Spectrum compatible or a CP/M machine.
CoBra has three different memory maps: one for power-on, one for ZX Spectrum, and one for CP/M.
The memory configuration change is done in software, using the bit 7 of the R register.
On power-on, the memory map includes both ROMs, and RAM banks 0 and 1.
Cobra boots from the small 2K ROM, it can display on the screen and copy code to RAM.
Code can be copied from ROM for ZX Spectrum mode, and from the floppy interface for CP/M.
Tape interface can also be an option, which should be great for development.
After copying the code, it will switch the memory map to te desired architecture.
ROMs are disabled now and execution continues from the 64KB of RAM.
Many thanks to cobrasov.com, my main inspiration source in this endeavour.
You can find out a lot about this incredible machine on the website, including many improvements made to the original boards by the community.
Gerber files are also available there for these improved versions, all tested and working great!
This repo is a "revival" approach, aiming to re-create the original computer in Kicad, adding only some minor tweaks.
Current status:
- the board is built (see bottom image), there were some pain points I should document here
- a floppy interface was also built, works with a modified BASIC (gerbers are Ver.1.2 on "Floppy" IF section on cobrasov.com.
- CP/M not possible to test yet, all versions I can get access to need a 80KB RAM upgrade.
Links:
- 2 Layer PCB project - a 4 layer version is in the works too
- Schematic in pdf format
- Gerber files
- Interactive BOM
- A PAL encoder with S-Video connector - a draft, not tested yet
- An USB keyboard adapter - this one is also not final, an experiment


Parts
369| Qty | Value | Footprint | References |
|---|---|---|---|
| 34 | SolderJumper_2_Open | Cobra_original:SolderJumper-2_P1.3mm_Open_TrianglePad1.0x1.5mm | JP11, JP12, JP13, JP14, JP15, JP16, JP17, JP18, JP19, JP20, JP21, JP22, JP23, JP24, JP25, JP26 +18 |
| 32 | MMN4116 | Cobra_original:DIP-16_W7.62mm | U4, U10, U11, U24, U25, U26, U27, U28, U29, U30, U31, U43, U44, U45, U46, U47 +16 |
| 26 | 100n | Cobra_original:C_THT_762_254 | C1, C2, C10, C11, C12, C13, C17, C18, C19, C20, C21, C23, C101, C102, C103, C104 +10 |
| 23 | 1N4148 | Cobra_original:D_DO-35_SOD27_P7.62mm_Horizontal | D*1, D1, D2, D3, D4, D6, D7, D8, D9, D10, DBR1, DBR2, DBR3, DBR4, DBR5, P11 +7 |
| 23 | 680 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R35, R38, R45, R46, R47, R49, R50, R51, R52, R53, R54, R55, R56, R57, R58, R59 +7 |
| 22 | 33 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R1, R2, R3, R18, R19, R21, R24, R25, R28, R29, R30, R32, R33, R36, R37, R39 +6 |
| 15 | 100n | Cobra_original:C_THT_508_254 | C5, C8, C16, C22, C31, C33, C35, C38, C39, C40, C41, C46, C47, C48, C176 |
| 13 | MountingHole_Pad | Cobra_original:MountingHole_2.5mm_Pad | H2, H4, H5, H6, H8, H15, H16, H17, H18, H21, H22, H24, H25 |
| 12 | 1K | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R6, R20, R22, R23, R26, R27, R31, R34, R42, R73, R94, R96 |
| 10 | 4K7 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R43, R67, R68, R85, R108, R109, R110, R111, R112, R113 |
| 9 | 4k7 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R10, R11, R12, R13, R14, R15, R16, R17, R69 |
| 8 | 8K2 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R99, R100, R101, R102, R103, R104, R105, R106 |
| 8 | MMN2716 | Cobra_original:DIP-24_W15.24mm | U1, U18, U23, U42, U59, U75, U84, U91 |
| 7 | 470 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R72, R78, R79, R80, R81, R82, R83 |
| 6 | 10K | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R88, R89, R90, R95, R97, R98 |
| 6 | 74LS00 | Cobra_original:DIP-14_W7.62mm | U16, U17, U37, U54, U55, U87 |
| 6 | 74LS95 | Cobra_original:DIP-14_W7.62mm | U60, U77, U78, U81, U82, U83 |
| 5 | 100 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R71, R75, R76, R77, R91 |
| 5 | 74LS157 | Cobra_original:DIP-16_W7.62mm | U41, U51, U58, U80, U85 |
| 5 | CDB407 | Cobra_original:DIP-14_W7.62mm | U71, U72, U73, U74, U86 |
| 5 | Jumper_NC_Small | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | JP1, JP3, JP5, JP7, JP9 |
| 5 | Jumper_NO_Small | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | JP2, JP4, JP6, JP8, JP10 |
| 4 | 74LS153 | Cobra_original:DIP-16_W7.62mm | U3, U20, U22, U39 |
| 4 | 74LS193 | Cobra_original:DIP-16_W7.62mm | U12, U13, U32, U33 |
| 4 | 74LS74 | Cobra_original:DIP-14_W7.62mm | U2, U15, U36, U61 |
| 4 | Conn_01x10 | Cobra_original:PinHeader_1x10_P2.54mm_Vertical | J1, J6, JA5, JB5 |
| 3 | 150 | Cobra_original:C_THT_508_254 | CAT1, CCS1, CHB1 |
| 3 | 2K2 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R9, R84, R87 |
| 3 | DIN-5 | Cobra_original:DIN-5 | J3, J4, J9 |
| 3 | SolderJumper_3_Open | Jumper:SolderJumper-3_P1.3mm_Open_Pad1.0x1.5mm | JP45, JP46, JP47 |
| 2 | 10u | Cobra_original:C_THT_508_254 | C15, C45 |
| 2 | 150 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R48, R92 |
| 2 | 150 | Cobra_original:C_THT_762_254 | C6, C14 |
| 2 | 220 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R74, R86 |
| 2 | 390 | Cobra_original:C_THT_508_254 | CCC1, CVR1 |
| 2 | 74LS04 | Cobra_original:DIP-14_W7.62mm | U53, U57 |
| 2 | 74LS08 | Cobra_original:DIP-14_W7.62mm | U19, U38 |
| 2 | 74LS10 | Cobra_original:DIP-14_W7.62mm | U14, U40 |
| 2 | 74LS42 | Cobra_original:DIP-16_W7.62mm | U56, U70 |
| 2 | 74LS86 | Cobra_original:DIP-14_W7.62mm | U35, U88 |
| 2 | Conn_01x01_Male | Connector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_Vertical | J5, J8 |
| 2 | Conn_01x15 | Cobra_original:PinHeader_1x15_P2.54mm_Vertical | JEXA1, JEXB1 |
| 2 | e | Cobra_original:MountingHole_2.5mm_Pad | H7, H23 |
| 2 | ~ | TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mm | TP1, TP2 |
| 1 | 100u | Cobra_original:C_THT_508_254 | C44 |
| 1 | 14MHz | Cobra_original:Crystal_HC18-U_Vertical | Y1 |
| 1 | 1500uF | Cobra_original:CP_Axial_L25.0mm_D9.0mm_P30.00mm_Horizontal | C43 |
| 1 | 15p | Cobra_original:C_THT_508_254 | C30 |
| 1 | 220p | Cobra_original:C_THT_508_254 | C24 |
| 1 | 220u | Capacitor_THT:CP_Radial_D8.0mm_P5.00mm | C42 |
| 1 | 240 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | RN1 |
| 1 | 270 | Cobra_original:C_THT_762_254 | C36 |
| 1 | 27C128 | Package_DIP:DIP-28_W15.24mm | U89 |
| 1 | 2N2219 | Cobra_original:TO-92-Cobra | Q2 |
| 1 | 2k2 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R107 |
| 1 | 330 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R70 |
| 1 | 360 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R44 |
| 1 | 4V7 | Cobra_original:D_DO-35_SOD27_P7.62mm_Horizontal | D5 |
| 1 | 74LS11 | Cobra_original:DIP-14_W7.62mm | U52 |
| 1 | 74LS20 | Cobra_original:DIP-14_W7.62mm | U34 |
| 1 | 74LS51 | Cobra_original:DIP-14_W7.62mm | U21 |
| 1 | 75 | Cobra_original:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | R93 |
| 1 | 8255 | Package_DIP:DIP-40_W15.24mm | U79 |
| 1 | BC327 | Cobra_original:TO-92-CobraRev | T2 |
| 1 | Back_CU | Cobra_original:cobra_3.0_back_copper | H3 |
| 1 | C96ABC | Connector_DIN:DIN41612_R_3x32_Male_Horizontal_THT | J2 |
| 1 | Conn_02x10_Odd_Even_MountingPin | Connector_PinHeader_2.54mm:PinHeader_2x10_P2.54mm_Vertical | J7 |
| 1 | LM741 | Package_DIP:DIP-8_W7.62mm | U92 |
| 1 | P8212 | Cobra_original:DIP-24_W15.24mm | U76 |
| 1 | Z80CPU | Package_DIP:DIP-40_W15.24mm | U90 |
| 1 | front_CU | Cobra_original:cobra_3.0_front_copper | H1 |
| 1 | ~ | Cobra_original:Reset_Switch | RSW1 |
Questions
How big is the 2layer PCB?
It measures 299.2 × 180 mm and has 2 copper layers, 1.6 mm thick.
What parts does the 2layer use?
369 parts, built around the P8212, 74LS42PC, 27C128-15 and 74LS00SC. 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 2layer KiCad files?
From the ceteras/CoBra repository on GitHub, at the commit this page was made from: the board is mainboard/2layer/kicad/main.kicad_pcb and its schematic adapter/USB-Keyboard/kicad/CObra_USB_KB/CObra_USB_KB.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the 2layer design in my own project?
Its repository publishes it under the MIT 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 ceteras/CoBra
2- 4 layers62.7 × 78.7 mm

- 2 layers37.9 × 44.2 mm

CObra USB KB
ceteras/CoBra
A Z80 retro computer, ZX Spectrum compatible, can also run CP/M.
12 parts11MIT
Similar boards
- 2 layers299.2 × 180 mm

Cobra XP
ceteras/Cobra-XP
Derived from Cobra, an experimental board for testing all kind of mods.
452 parts5MIT - 2 layers486 × 306.3 mm

- 2 layers630 × 300 mm

- 2 layers349.3 × 160 mm

- 2 layers236.8 × 169.8 mm

TK2000
clemarfolly/Microdigital-TK2000
Reprodução da PCB do TK-2000 da Microdigital, clone do Micro-Professor MPF-II
212 parts17 - 2 layers279.9 × 76.1 mm

AmdekDVM
schlae/AmdekDVM
Reverse engineering Amdek DVM video card for the Apple II
69 parts4CERN-OHL-P-2.0 - 2 layers385 × 230 mm

- 2 layers
