
Schematics whole
Pconst167/sol-1
Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.

Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.
Frontpanel is an open-source printed circuit board by Pconst167, from the Pconst167/sol-1 repository on GitHub. It is a 2-layer board of 715.5 × 705.5 mm with 299 parts on 1,355 nets.
It is built around the 74HCT244D, SN7432N and AS6C4008-55PCN, with the 74HC04D, 74LS173SC and 74LS377PC among its other parts. Its parts include 213 ICs, 13 switches, 2 crystals and 1 capacitor.
Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.
| Folder Name | Description |
|---|---|
| ccompiler | a c compiler written for the Sol-1 CPU. It outputs Sol-1 assembly |
| hardware | schematics, board pictures, microcode assembler |
| software | bios, kernel, shell, and unix utilities programs written in ASM for Sol-1 |
| emulator | an emulator for Sol-1. |
| solix | the operating system for Sol-1 |
| solfs | a disk image generator for Sol-1 |
| systemverilog | systemverilog models for the Sol-1 CPU, computer, and a few other things |
| general_docs | datasheets and miscellaneous documents related to Sol-1 and digital design in general |
| sol1_docs | documents directly related to Sol-1 |
| 16bit | 8bit | Description |
|---|---|---|
| A | AH/AL | Accumulator |
| B | BH/BL | Base Register (Secondary Counter Register) |
| C | CH/CL | Counter Register (Primary Counter) |
| D | DH/DL | Data Register / Data Pointer |
| G | GH/GL | General Register (For scratch) |
| 16bit | 8bit | Description |
|---|---|---|
| PC | Program Counter | |
| SP | Stack Pointer | |
| SSP | Supervisor Stack Pointer | |
| BP | Base Pointer (Used to manage stack frames) | |
| SI | Source Index (Source address for string operations) | |
| DI | Destination Index (Destination address for string operations) | |
| PTB | Page Table Base | |
| Status | CPU Status | |
| Flags | Arithmetic and Logic flags register |

Copyright © 2026 Paulo Constantino
This work is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0).
You are free to use, copy, modify, and redistribute this work for non-commercial purposes, provided appropriate credit is given.
Commercial use is not permitted.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 37 | 74151N | Package_DIP:DIP-16_W7.62mm | IC123, IC124, IC125, IC126, IC127, IC128, IC129, IC130, IC131, IC132, IC133, IC134, IC135, IC136, IC137, IC138 +21 |
| 34 | 74377N | Package_DIP:DIP-20_W7.62mm | IC1, IC2, IC36, IC42, IC54, IC55, IC56, IC57, IC58, IC59, IC60, IC61, IC62, IC63, IC114, IC195 +18 |
| 23 | 74257N | Package_DIP:DIP-16_W7.62mm | IC11, IC12, IC15, IC16, IC19, IC20, IC111, IC112, IC155, IC156, IC157, IC158, IC159, IC160, IC190, IC191 +7 |
| 20 | 74153N | Package_DIP:DIP-16_W7.62mm | IC7, IC8, IC10, IC14, IC17, IC18, IC77, IC78, IC79, IC80, IC81, IC82, IC166, IC167, IC168, IC169 +4 |
| 20 | 74244N | Package_DIP:DIP-20_W7.62mm | IC115, IC117, IC118, IC119, IC120, IC172, IC173, IC174, IC179, IC180, IC185, IC186, IC196, IC197, IC198, IC200 +4 |
| 20 | 74273N | Package_DIP:DIP-20_W7.62mm | FLAGS1, IC22, IC91, IC92, IC94, IC95, IC96, IC100, IC101, IC102, IC103, IC104, IC105, IC106, IC107, IC108 +4 |
| 16 | 27512 | Package_DIP:DIP-28_W15.24mm | BIOS_ROM1, U_ROM1, U_ROM2, U_ROM3, U_ROM4, U_ROM5, U_ROM6, U_ROM7, U_ROM8, U_ROM9, U_ROM10, U_ROM11, U_ROM12, U_ROM13, U_ROM14, U_ROM15 |
| 9 | R_Pack08 | Package_DIP:DIP-16_W7.62mm | RN1, RN2, RN3, RN4, RN5, RN6, RN7, RN8, RN9 |
| 8 | 7404N | Package_DIP:DIP-14_W7.62mm | IC_04_1, IC21, IC43, IC113, IC121, IC163, IC193, IC194 |
| 8 | 74157N | Package_DIP:DIP-16_W7.62mm | IC181, IC182, IC183, IC184, MDR_IN_MUX_1, MDR_IN_MUX_2, MDR_OUT_MUX_1, MDR_OUT_MUX_2 |
| 8 | 74253N | Package_DIP:DIP-16_W7.62mm | IC3, IC4, IC5, IC6, IC31, IC32, IC33, IC34 |
| 8 | 7432N | Package_DIP:DIP-14_W7.62mm | IC29, IC44, IC45, IC48, IC53, IC171, IC188, IC192 |
| 8 | SW_DIP_x08 | Package_DIP:DIP-16_W7.62mm | SW2, SW4, SW5, SW6, SW7, SW8, SW9, SW10 |
| 8 | as6c4008-55pcn | Package_DIP:DIP-32_W15.24mm | U1, U2, U3, U4, U5, U6, U7, U8 |
| 6 | 7474N | Package_DIP:DIP-14_W7.62mm | IC164, IC170, IRQ_0_DFF1, IRQ_1_DFF1, IRQ_2_DFF1, IRQ_3_DFF1 |
| 5 | 7408N | Package_DIP:DIP-14_W7.62mm | IC13, IC35, IC161, IRQ_AND_1, IRQ_AND_2 |
| 5 | 74138N | Package_DIP:DIP-16_W7.62mm | IC86, IC116, IC176, IC199, IRQ_RST_DECODER1 |
| 4 | 7400N | Package_DIP:DIP-14_W7.62mm | IC46, IC52, IC207, IC208 |
| 4 | 74283N | Package_DIP:DIP-16_W7.62mm | IC38, IC39, IC40, IC41 |
| 4 | 74HC04 | Package_DIP:DIP-14_W7.62mm | U17, U19, U21, U35 |
| 4 | SW_SPST | kicad_models:SW_100SP1T1B4M2QE | SW1, SW11, SW12, SW13 |
| 3 | 7410N | Package_DIP:DIP-14_W7.62mm | IC_10_1, IC_10_2, IC23 |
| 3 | 7427N | Package_DIP:DIP-14_W7.62mm | IC51, IC109, IC165 |
| 3 | 7486N | Package_DIP:DIP-14_W7.62mm | IC_86_1, IC_86_2, IC37 |
| 2 | 16550 | Package_DIP:DIP-40_W15.24mm | U13, U14 |
| 2 | 58C256P | Package_DIP:DIP-28_W7.62mm | PAGE_TABLE_RAM_0, PAGE_TABLE_RAM_1 |
| 2 | 74181N | Package_DIP:DIP-24_W7.62mm | ALU_HIGH1, ALU_LOW1 |
| 2 | 74279N | Package_DIP:DIP-16_W7.62mm | IC175, IC187 |
| 2 | ~ | led-displays-obsolete:TIL311 | DIS1, DIS2 |
| 1 | 100SP1T1B4M2QE | kicad_models:SW_100SP1T1B4M2QE | S1 |
| 1 | 4040 | Package_DIP:DIP-16_W7.62mm | U16 |
| 1 | 7402N | Package_DIP:DIP-14_W7.62mm | IC_02_1 |
| 1 | 7411N | Package_DIP:DIP-14_W7.62mm | IC75 |
| 1 | 74148N | Package_DIP:DIP-16_W7.62mm | IRQ_ENCODER1 |
| 1 | 7420N | Package_DIP:DIP-14_W7.62mm | IC122 |
| 1 | 74245N | Package_DIP:DIP-20_W7.62mm | IC110 |
| 1 | 7430N | Package_DIP:DIP-14_W7.62mm | IC162 |
| 1 | 74HCT244 | Package_DIP:DIP-20_W7.62mm | U22 |
| 1 | 74LS06 | Package_DIP:DIP-14_W7.62mm | U11 |
| 1 | 74LS173 | Package_DIP:DIP-16_W7.62mm | U18 |
| 1 | 74LS244 | Package_DIP:DIP-20_W7.62mm | U20 |
| 1 | 74LS377 | Package_DIP:DIP-20_W7.62mm | U12 |
| 1 | 8253 | Package_DIP:DIP-24_W15.24mm_Socket | U10 |
| 1 | 8255 | Package_DIP:DIP-40_W15.24mm | PIO_0 |
| 1 | 8mhz_osc | Oscillator:Oscillator_DIP-14 | X2 |
| 1 | ACO-10MHz | Oscillator:Oscillator_DIP-14 | X1 |
| 1 | C | Capacitor_THT:C_Disc_D7.5mm_W4.4mm_P5.00mm | C1 |
| 1 | KM62256CLP | Package_DIP:DIP-28_W15.24mm | KM62256CLP1 |
| 1 | M48T02-200PC1 | Package_DIP:DIP-24_W15.24mm | U9 |
| 1 | WD1770 | Package_DIP:DIP-28_W15.24mm | WD1 |
It measures 715.5 × 705.5 mm and has 2 copper layers, 1.6 mm thick.
299 parts, built around the 74HCT244D, SN7432N, AS6C4008-55PCN and 74HC04D. 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.
From the Pconst167/sol-1 repository on GitHub, at the commit this page was made from: the board is hardware/schematics_separate_pcb/frontpanel/kicad/main.kicad_pcb and its schematic general_docs/5.25_floppy_drive/flock-v2-main/KiCad/Z80-FDC-V2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask Pconst167 before reusing the design.

Pconst167/sol-1
Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.

Pconst167/sol-1
Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.

Pconst167/sol-1
Sol-1 is a homebrew CPU and Minicomputer built from 74HC logic. It is published here for educational purposes.


hkzlab/ROsiM
ROsiM is a ROM simulator/emulator, supporting up to 512k/16bit ROMs

Robert-Mones/Claculator
A reverse Polish notation calculator with added features such as comparisons, branching, and custom recursive operators taken from the Clac project from the 15-122 course at Carnegie Mellon University.


cartheur/M6809-multicomputer
Systems-matching the requirements of novel-ideal in metal to architecture


Trilobyte-CPU/8-bit-computer
A DIY 8-bit computer built mostly with discrete logic chips
