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


