Skip to the content
2 layers100 × 100 mmBoard6502, the printed circuit board in 3D

homebrew 65c02 single board computer

Size
100 × 100 mm
Copper layers
2
Thickness
1.6 mm
Parts
52
Nets
88
Pads
351
Tracks, vias
1,372, 133
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
28 Sep 2021
Updated
7 Jun 2022

Overview

Board6502 is an open-source printed circuit board by ulmer-a, from the ulmer-a/6502_board repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 100 × 100 mm with 52 parts on 88 nets, routed with 1,372 tracks and 133 vias.

It is built around the 74LS00SC, 74LS04PC and 74LS30PC, with the DS1813-5+ among its other parts. Its parts include 12 capacitors, 10 resistors, 9 ICs, 5 diodes and 5 connectors. It belongs with the computers and single-board computers and retro computing and games boards of this library.

Main components

4

README

README.md

Homebrew 6502 single board computer (running MS BASIC)

This repo contains kicad schematics, netlist, layout and gerber plots for the pcb, as well as a parts list, the firmware and a port of Microsoft BASIC. The board is fully functional and all parts (or equivalent alternatives) are readily available as of Nov '21.

You are welcome to use everything contained in this repository under the terms of the GNU General Public License v3.0, except for MS BASIC, which is made available under a BSD 2-clause license.

PCB Rendering

Specifications

  • 65c02 8-bit CPU along with 32KB RAM and 8K ROM
  • 65c22 VIA provides some GPIO pins and timers
  • 65c51 ACIA provides a serial port with up to 115200 baud
  • 4 status led's (3 of them are freely programmable)
  • 18 pin I/O pinheader with general purpose I/O pins (VIA)
  • 34 pin expansion pinheader exposing full address and data bus as well as other interesting lines (SYNC, CLK and HALT)

Firmware

The firmware initializes the system and provides drivers for the GPIOs, timers and the UART. It also provides routines to support the execution of MS BASIC.

Memory map and I/O addresses

plaintext
+-----------------------+   <- 0x0000     --.
|       zeropage        |                   |
+-----------------------+   <- 0x0100       |
|        stack          |                   |
+-----------------------+   <- 0x0200       |
|      available        |                   |
|         RAM           |                    > 32k RAM
|         ...           |                   |
+-----------------------+   <- 0x7e00       |
|     UART RX buffer    |                   |
+-----------------------+   <- 0x7f00       |
|     UART TX buffer    |                   |
+-----------------------+   <- 0x8000     --'
|                       |
|      unallocated      |         reserved for expansion shields etc.
|                       |
+-----------------------+   <- 0xdfe0     --.
|      65C51 UART       |                   |
+-----------------------+   <- 0xdff0        > memory mapped I/O
|      65C22 VIA        |                   |
+-----------------------+   <- 0xe000     --:
|     firmware code     |                   |
|    firmware rodata    |                   |
|       MS BASIC        |                    > 8k ROM

Parts

52
QtyValueFootprintReferences
8100nCapacitor_THT:C_Rect_L7.0mm_W3.5mm_P5.00mmC2, C3, C5, C6, C7, C8, C10, C11
4330Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR1, R2, R3, R10
4LED_SmallLED_SMD:LED_1210_3225MetricD1, D2, D3, D5
4MountingHole_3.2mm_M3MountingHole:MountingHole_3.2mm_M3M3, M3, M3, M3
4pullupResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR4, R5, R6, R8
2100µCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC4, C9
11-10MHzOscillator:Oscillator_DIP-14X1
11.8432MCrystal:Crystal_HC18-U_VerticalY1
11MResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR7
127pCapacitor_THT:C_Rect_L7.0mm_W3.5mm_P5.00mmC1
174LS00Package_DIP:DIP-14_W7.62mm_SocketU2
174LS04Package_DIP:DIP-14_W7.62mm_SocketU3
174LS30Package_DIP:DIP-14_W7.62mm_SocketU5
1AT28C64BSocket:DIP_Socket-28_W11.9_W12.7_W15.24_W17.78_W18.5_3M_228-1277-00-0602JU8
1CLK disableConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP3
1CY7C199Package_DIP:DIP-28_W7.62mm_SocketU9
1DS1813Package_TO_SOT_SMD:SOT-23U1
1Expansion PortConnector_PinHeader_2.54mm:PinHeader_2x17_P2.54mm_VerticalJ4
1IO PinheaderConnector_PinHeader_2.54mm:PinHeader_2x09_P2.54mm_VerticalJ1
1Power connectorConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ5
1RXCLK feedConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP2
1Reset buttonButton_Switch_THT:SW_Tactile_SKHH_AngledSW1
1SW ResetConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP1
1SW_NMIButton_Switch_THT:SW_Tactile_SKHH_AngledSW2
1UARTConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2
1USB_BConnector_USB:USB_B_OST_USB-B1HSxx_HorizontalJ3
1W65C02Package_DIP:DIP-40_W15.24mm_SocketU7
1W65C22NPackage_DIP:DIP-40_W15.24mm_SocketU4
1W65C51NPackage_DIP:DIP-28_W15.24mm_SocketU6
1tbdResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_VerticalR9
1tbdCapacitor_THT:C_Rect_L7.0mm_W3.5mm_P5.00mmC12
1tbdDiode_THT:D_DO-41_SOD81_P2.54mm_Vertical_AnodeUpD4

Similar boards

  • 4 layers243.8 × 170.2 mmHEC1, the printed circuit board in 3D

    HEC1

    Andy18650/HEC-Model-Z1

    A Z80 computer with protected mode support

    126 parts36GPL-3.0
  • 2 layers100 × 100 mmFM-7 SD, the printed circuit board in 3D

    FM-7 SD

    yanataka60/FM-7_SD

    FM-8、FM-7、FM-77シリーズでSD-CARDからロード、セーブ機能を実現するものです。

    21 parts14MIT
  • 2 layers98.3 × 107.1 mmCoco9511pak, the printed circuit board in 3D

    Coco9511pak

    barberd/coco9511pak

    This board is a cartridge for the Tandy Radio Shack TRS-80 Color Computer (CoCo), an 8 bit computer produced between 1980 and 1991. It provides an Arithmetic Processor Unit (APU), the AMD 9511, to the CoCo.

    44 parts13GPL-3.0
  • 2 layers364 × 203 mmCPU6S, the printed circuit board in 3D

    CPU6S

    Meisaka/CenMiniCom

    Centurion Minicomputer Schematics

    240 parts8
  • 2 layers177.5 × 161.5 mmVideo circuit, the printed circuit board in 3D

    Video circuit

    0nonymous/Breadboard-CPU-Computer-System

    This project is a fully microcoded 8-bit CPU designed from scratch and implemented using 100+ 74LS-series ICs across 40+ breadboards. CURRENTLY REIMPLEMENTING ON FPGA: https://github.com/0nonymous/fpga-cpu

    35 parts4MIT
  • 4 layers304.8 × 215.9 mm64 256KB SYSTEM BOARD, the printed circuit board in 3D

    64 256KB SYSTEM BOARD

    kev-ju/PC-Retro-MTM

    Modern KiCad version of the IBM 5150 system board originally created by MTM Scientific, Inc.

    197 parts4
  • 2 layers279.9 × 76.1 mmAmdekDVM, the printed circuit board in 3D

    AmdekDVM

    schlae/AmdekDVM

    Reverse engineering Amdek DVM video card for the Apple II

    69 parts4CERN-OHL-P-2.0

Questions

How big is the Board6502 PCB?

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

What parts does the Board6502 use?

52 parts, built around the 74LS00SC, 74LS04PC, 74LS30PC and DS1813-5+. 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 Board6502 KiCad files?

From the ulmer-a/6502_board repository on GitHub, at the commit this page was made from: the board is board6502/board6502.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Board6502 design in my own project?

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