

Code for my 6502 build
- Size
- 102.5 × 30 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 5
- Nets
- 44
- Pads
- 90
- Tracks, vias
- 130, 26
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 24 Nov 2019
- Updated
- 19 Jul 2026
Overview
Ram is an open-source printed circuit board by atarola, from the atarola/compy6502 repository on GitHub. It is a 2-layer board of 102.5 × 30 mm with 5 parts on 44 nets, routed with 130 tracks and 26 vias.
It is built around the AS6C4008-55PCN. Its parts include 2 capacitors, 2 ICs and 1 connector. It belongs with the retro computing and games boards of this library.
Main components
1README
README.mdcompy6502
compy6502 is an early-stage 6502 homebrew computer project. The long-term
goal is to build enough hardware and firmware to run Tetris on the machine.
The design follows the spirit of Ben Eater-style breadboard/modular 6502
systems for simplicity and debuggability, but uses a different memory map based
on the MMU/address-decoder architecture in docs/mmu.png.
The repo currently includes KiCad hardware designs, early ROM bring-up
firmware, build/write scripts, emulator test scaffolding, and architecture
reference images in docs/.
Memory Map
The intended memory map is:
$0000-$BFFF RAM
$C000-$C0FF I/O page
$C100-$FFFF ROMThe I/O page is split into four 64-byte device slots:
$C000-$C03F IO0B
$C040-$C07F IO1B
$C080-$C0BF IO2B
$C0C0-$C0FF IO3BThe linker script currently uses $8000-$FFFF as the 32 KB EEPROM image range
so CPU addresses map directly to the correct physical offsets on the chip.
ROM Layout
The intended ROM organization is:
$C100-$C1FF public jump table
$C200-$DFFF kernel routines and drivers
$E000-$EFFF enhanced monitor
$F500-$FFF9 Wozmon fallback monitor
$FFFA-$FFFF CPU vectorsCredits
docs/mmu.png: Mike McLaren, K8LH.docs/Beater 02b.png: Mike McLaren, K8LH.
Parts
5| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 0.1u | Capacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mm | C2, C3 |
| 1 | 7400 | Package_DIP:DIP-14_W7.62mm_Socket | U1 |
| 1 | AS6C4008-55PCN | Package_DIP:DIP-32_W15.24mm_Socket | U2 |
| 1 | Board Connector | Connector_PinHeader_2.54mm:PinHeader_1x40_P2.54mm_Horizontal | J1 |
Questions
How big is the Ram PCB?
It measures 102.5 × 30 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Ram use?
5 parts, built around the AS6C4008-55PCN. 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 Ram KiCad files?
From the atarola/compy6502 repository on GitHub, at the commit this page was made from: the board is kicad/ram/ram.kicad_pcb and its schematic kicad/ACIA/ACIA.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Ram design in my own project?
Its repository states no licence, so its author keeps all rights: ask atarola before reusing the design.
More from atarola/compy6502
9- 2 layers190.5 × 105 mm

- 2 layers102.5 × 30 mm

- 2 layers102.5 × 44.8 mm

- 2 layers105.4 × 30 mm

- 2 layers102.5 × 30 mm

- 2 layers102.5 × 30 mm

- 2 layers102.5 × 30 mm

- 2 layers49.5 × 30 mm

- 2 layers102.5 × 30 mm

Similar boards
- 2 layers125 × 98 mm

3-in-1
mudmin/AnotherMaker
This is where I will store code snippets for AnotherMaker Videos
44 parts258 - 4 layers160 × 100 mm

Rosco m68k
rosco-m68k/rosco_m68k
Design, documentation and software for the Really Old School Computer (M68K)
140 parts200 - 2 layers213 × 65.1 mm

- 4 layers215 × 150 mm

Mackerel-30-proto
crmaykish/mackerel-68k
A series of single-board Motorola 68k computers with support for modern Linux
133 parts96MIT - 4 layers100 × 100 mm

- 4 layers101.6 × 53.3 mm

- 2 layers176.5 × 85.1 mm

- 4 layers170.1 × 170.1 mm
