Skip to the content
2 layers99.1 × 49.9 mmRc-256page, the printed circuit board in 3D

128K+128K fully pageable RAM/ROM card for RC2014

Size
99.1 × 49.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
13
Nets
60
Pads
164
Tracks, vias
379, 50
Pours
1
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
27 Mar 2021
Updated
6 Jul 2021

Overview

Rc-256page is an open-source printed circuit board by PickledDog, from the PickledDog/rc-256page repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 99.1 × 49.9 mm with 13 parts on 60 nets, routed with 379 tracks and 50 vias.

It is built around the 74HCT138D, 74HCT174D and 74HCT257D. Its parts include 5 capacitors, 5 ICs, 1 resistor and 1 connector.

Main components

3

README

README.md

rc-256page

128K+128K fully pageable RAM/ROM card for RC2014 Assembled PD110

Overview

This RC2014-compatible board provides RAM and flash ROM, software-pageable in 32k pages. 4 ROM and 4 RAM pages may be paged into both the lower and upper 32k of Z80 memory.

Memory details

For ROM, a SST39SF010 128k x 8 flash chip is used. It can be programmed in-place using Will Sowerbutts' FLASH4 utility (included with RomWBW). For RAM, an AS6C1008 128k x 8 SRAM is used, providing 128K of addressable memory. Both are divided into 32k pages, and are presented to the system via 2 32k address blocks (so 2 pages selectable from 8 total).

Paging

Upon reset, ROM page 0 is mapped to both the lower and upper 32k (initialization code in page 0 must select a RAM page for normal operation). A single config register is used to set both currently mapped pages, presented as an I/O device at 0x78 (the address used by most "large" Z80 memory systems). The low nibble of this configures the lower page, and the high nibble the higher page. For each nibble, the high bit selects the chip (0 for ROM, 1 for RAM).

Firmware

This board can be used as an affordable way to add RomWBW support to an RC2014 (see below). It is also presented as a programming challenge for adventurous RC2014 builders, who want an inexpensive way to add fully software-pageable memory to their computers. Beyond RomWBW, there are currently no standard ROM images for this board (that is, no BASIC ROM etc). None of the standard RC2014 ROM images can be used as-is. Building a ROM image (or modifying an existing one) is left up to the user.

RomWBW

For RomWBW, a new memory mapper needs to be added. A patch file to do this can be found in the firmware directory (along with an example image).

Part selection

Bill Of Materials and part references are below. I recommend using gold-plated header for the bus connection - I use these ones from Pololu or Sparkfun. A nice detail of these, is that they sit at the same height as double-row header in a backplane.

The specified parts are just the ones I used, and can be substituted as needed - Mouser links provided for convenience and reference.

ReferenceValueQtyMouser link
C1-C5100nF ceramic5KEMET C315C104M5U5TA
J11x40 right-angle header1Wurth 61304011021
R14k7Ω resistor1Yageo CFR-25JT-52-4K7
U1SST39SF010 NOR flash1Microchip SST39SF010A-70-4C-PHE
U2AS6C1008 SRAM1Alliance AS6C1008-55PCN
sockets2Amphenol DILB32P-223TLF
U374HCT1381TI SN74HCT138N
U474HCT1741TI CD74HCT174E
U574HCT2571TI SN74HCT257N

Parts

13
QtyValueFootprintReferences
50.1uFCapacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mmC1, C2, C3, C4, C5
1Mounting_Holes:MountingHole_3.2mm_M3
14k7Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
174HCT138Package_DIP:DIP-16_W7.62mm_LongPadsU3
174HCT174Package_DIP:DIP-16_W7.62mm_LongPadsU4
174HCT257Package_DIP:DIP-16_W7.62mm_LongPadsU5
1AS6C1008Package_DIP:DIP-32_W15.24mm_LongPadsU2
1RC2014Connector_PinHeader_2.54mm:PinHeader_1x39_P2.54mm_VerticalJ1
1SST39SF010Package_DIP:DIP-32_W15.24mm_LongPadsU1

Similar boards

  • 2 layers58.2 × 84.1 mmNeoRAMremix, the printed circuit board in 3D

    NeoRAMremix

    hackup/NeoRAMremix

    A remix of the NeoRAM catridge for the Commodore 64.

    29 parts41
  • 2 layers99.1 × 49.9 mmZ80-FDC, the printed circuit board in 3D

    Z80-FDC

    kitspace-test-repos/kicad6-file-collection

    28 partsMIT
  • 2 layers99.1 × 49.9 mmGameControl, the printed circuit board in 3D

    GameControl

    jblang/GameController

    Game Controller interface for RC2014

    53 parts18
  • 4 layers280 × 140 mmP8x regbank card, the printed circuit board in 3D

    P8x regbank card

    ksr/p8x

    Generated by generators/genkicad.py from the canonical geneagle netlist (CARDS["peripheral-card"]), same standard as the memory card: 4-layer (F/B signals, In1=GND, In2=VCC planes), a bypass cap above each IC, a…

    113 parts
  • 2 layers99.8 × 49.9 mmZ80ram, the printed circuit board in 3D

    Z80ram

    jblang/z80ctrl

    AVR-based bootloader, I/O, and debugging for Z80-based computers

    19 parts73
  • 4 layers318.4 × 124.5 mmN2360, the printed circuit board in 3D

    N2360

    jasonsbeer/Amiga-N2630

    A re-imagining of the Amiga A2630 processor card.

    248 parts69
  • 2 layers100 × 50 mmRc2014-ds1302-rtc, the printed circuit board in 3D

    Rc2014-ds1302-rtc

    electrified/rc2014-ds1302-rtc

    DS1302 Real Time Clock for the RC2014 computer

    34 parts25
  • 4 layers100 × 100 mmRosco 6502, the printed circuit board in 3D

    Rosco 6502

    rosco-6502/rosco_6502

    Design, documentation and software for the Really Old School Computer (6502)

    62 parts8MIT

Questions

How big is the Rc-256page PCB?

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

What parts does the Rc-256page use?

13 parts, built around the 74HCT138D, 74HCT174D and 74HCT257D. 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 Rc-256page KiCad files?

From the PickledDog/rc-256page repository on GitHub, at the commit this page was made from: the board is rc-256page.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Rc-256page design in my own project?

Its repository publishes it under the Apache-2.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).