Skip to the content
4 layers100 × 100 mm6502-retro, the printed circuit board in 3D

A 6502 Backplane design.

Size
100 × 100 mm
Copper layers
4
Thickness
1.6 mm
Parts
36
Nets
72
Pads
341
Tracks, vias
832, 194
Pours
4
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
8 Jul 2023
Updated
15 Aug 2023

Overview

6502-retro is an open-source printed circuit board by linuxplayground, from the linuxplayground/6502-retro repository on GitHub. It is a 4-layer board of 100 × 100 mm with 36 parts on 72 nets, routed with 832 tracks and 194 vias.

It is built around the DS1813-5+ and SN74HC08N. Its parts include 11 capacitors, 8 resistors, 7 ICs, 5 connectors and 2 crystals. It belongs with the retro computing and games boards of this library.

Main components

2

README

README.md

6502-Retro!

Inspired by the Z80-Retro! see: https://github.com/z80-retro I decided to see if I could put together a small 6502 based project with a similar design philosphy. The main goals of the project are:

  1. The base board must be no larger than 100mm x 100mm to leverage the cheaper manufacturing options.
  2. The base board must provide all required functionality to be minimially operational.
  3. Daughter boards will provide additional peripherals such as Graphics and Audio

Base Board

Base Board

You can find the hardware schematic and gerber files for the base board in hardware/6502-retro.

Expansion Boards

This project contains two expansion boards.

NOTE !!

One of the expansion slots (J1) is too close to the BAUD RATE Oscilator on the base board. It can be used for manual jumper wires maybe, but I would not risk putting a card in there as the solder joints on the back of the card will short against the metal oscilator can for the baud rate clock.

F18A (TMS9918A FPGA)

The F18A from dnotq is mounted with some glue logic on an expansion board. It provides all the same features as the TMS9918A VDP along with some additional enhancments that can be accessed in software.

F18A Board

You can find the hardware schematic here.

General Purpose IO + PS/2

GPIO + PS/2

You can find the hardware schematic here.

Note: PS/2 Support is designed for the PERIBOARD-409 P - Mini PS/2 keyboard

This board has a "sign-on" routine that's handled in the PIC16F628A microcontroller. The code for the MCU is included here

The more generic / standard PS/2 Keyboards will require the MCU code to be altered.

Memory Map

The memory map is given by an AT22v10Q PLD which provides ranges in the table below. These values are also defined in 6502-retro-rom.cfg

RangeDescriptionSizeDecoder PinsComments
0000-00FFZero Page0x100
0100-0200Stack0x100
0200-0FFFSYSRAM0xE00
1000-7EFFRAM0x6F00
7F00-7F10UNMAPPED0x16
7F10-7F1FFREE0x16IOCS1 + A4IOCS1 is clock qualified
7F20-7F2FACIA0x16IOCS1 + A5
7F30-7F3FUNMAPPED0x16
7F40-7F4FF18A / TMS9918A0x16IOCS1 + A6
7F50-7F8FUNAMPPED0x64
7F90-7F90VIA0x16IOCS2 + A4IOCS2 is not clock qualified
7FA0-7FAFFREE0x16IOCS2 + A5
7FB0-7FBFUMAPPED0x16
7FC0-7FCFFREE0x16IOCS2 + A6
7FD0-7FEFUNMAPPED0x64
  • IOCS1 is only active when phi2 is HIGH in the shown address ranges.
  • IOCS2 is active in the shown address ranges without any influence by phi2.

See the PLD Code for the WinCUPL design file.

Parts

36
QtyValueFootprintReferences
100.1uFCapacitor_THT:C_Disc_D3.0mm_W2.0mm_P2.50mmC1, C2, C3, C4, C5, C6, C8, C9, C10, C11
73.9KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2, R4, R5, R6, R8, R9, R10
10548190519digikey-footprints:USB_Mini_B_Female_548190519J4
11.8432MHzOscillator:Oscillator_DIP-14X2
110uFCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC12
1220Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR7
128C256 ROMPackage_DIP:DIP-28_W15.24mm_SocketU2
12MHzOscillator:Oscillator_DIP-8X1
162256 SRAMPackage_DIP:DIP-28_W15.24mm_SocketU1
16551 ACIAPackage_DIP:DIP-28_W15.24mm_SocketU3
1AT22V10QPackage_DIP:DIP-24_W7.62mm_SocketU5
1Conn_01x03_MaleConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ5
1DS1813Package_TO_SOT_THT:TO-92_InlineU7
1POWERLED_THT:LED_D5.0mmD1
1RESETButton_Switch_THT:SW_PUSH_6mm_H5mmSW1
1SLOT 1Connector_PinSocket_2.54mm:PinSocket_1x38_P2.54mm_VerticalJ1
1SLOT 2Connector_PinSocket_2.54mm:PinSocket_1x38_P2.54mm_VerticalJ2
1SLOT 3Connector_PinSocket_2.54mm:PinSocket_1x38_P2.54mm_VerticalJ3
1SN74HC08NPackage_DIP:DIP-14_W7.62mm_SocketU6
1W65C02SxPPackage_DIP:DIP-40_W15.24mm_SocketU4

The 35 most common of 36 parts.

More from linuxplayground/6502-retro

2
  • 4 layers100 × 47.4 mm6502-retro io, the printed circuit board in 3D

    6502-retro io

    linuxplayground/6502-retro

    A 6502 Backplane design.

    20 parts
  • 4 layers100 × 47.4 mm6502-retro f18a, the printed circuit board in 3D

    6502-retro f18a

    linuxplayground/6502-retro

    A 6502 Backplane design.

    10 parts

Similar boards

  • 2 layersSchematics, the printed circuit board in 3D

    Schematics

    jamestiotio/compstruct

    SUTD 2020 50.002 Computation Structures Code Dump

    13 parts3MIT
  • 2 layers38.1 × 24.1 mmCharging interlock rev a, the printed circuit board in 3D

    Charging interlock rev a

    dsorensen228/sherman

    Desktop robot project with C++ personality and display runtimes, Python hardware services, Pico 2 firmware, and PCB and enclosure design.

    17 parts1
  • 2 layers25.5 × 43.5 mmBlkhurst USB C, the printed circuit board in 3D

    Blkhurst USB C

    blkhurst/kicad-usb-c

    This USB-C Powered AND Gate is the first PCB I have designed using KiCad, and serves as a proof of concept for integrating USB-C power into future projects. The design includes:

    12 parts
  • 2 layers100 × 140 mmFULL PC, the printed circuit board in 3D

    FULL PC

    Iluhaprog/IN-machine

    Homemade computer architecture. Schemes, model and tools.

    97 parts
  • 2 layers166.4 × 181.6 mmCalculator ver1, the printed circuit board in 3D

    Calculator ver1

    PhdWizards/4-Bit-Discrete-Transistor-Adder

    The core 4-bit binary adder is implemented entirely using discrete transistor-resistor logic. The resulting 5-bit binary value is converted to BCD using 74HC-series logic and displayed on two 7-segment displays.

    308 parts
  • 4 layers207 × 78.7 mmRpihw, the printed circuit board in 3D

    Rpihw

    quorten/rpihw

    Raspberry Pi SPI devices board design

    101 partsUnlicense
  • 2 layers120 × 70 mmSmurf box, the printed circuit board in 3D

    Smurf box

    semteXKG/fiesta-hardware

    idf.py.exe -p COM4 -DPRIMARY=1 -DFORD=1 build flash monitor

    41 partsApache-2.0

Questions

How big is the 6502-retro PCB?

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

What parts does the 6502-retro use?

36 parts, built around the DS1813-5+ and SN74HC08N. 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 6502-retro KiCad files?

From the linuxplayground/6502-retro repository on GitHub, at the commit this page was made from: the board is hardware/6502-retro/6502-retro.kicad_pcb and its schematic hardware/6502-retro-f18a/6502-retro-f18a.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the 6502-retro design in my own project?

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