Pre-power Checks & Bring-up¶
Pre-power sanity checks¶
Verify all 6 pull-up resistors: each is 10 kΩ from a 65C02 control pin to +3.3 V (R1–R6, see Wiring).
Verify RAM OE# (pin 22) → +3.3 V, not GND.
Verify chip orientations: both the 65C02 and RAM have notches at the top. Reversed orientation usually shorts VCC to GND instantly.
Continuity-check the shared bus wires. A0 should beep between 65C02 pin 9, Pico pin 1, and RAM pin 10. Repeat for each address and data line.
Check no short between the +3.3 V rail and GND rail.
Power the breadboard (external 3.3 V). Measure 3.3 V at 65C02 pin 8 and RAM pin 28. Do not connect external 3.3 V to Pico VSYS yet.
Flash
piclone.uf2, plug in USB (Pico only), tie Pico GND to breadboard GND.
Bring-up sequence¶
Wire per Wiring, flash
piclone.uf2, connect USB (Pico) + external 3.3 V (breadboard), common GND.Set up host tools: install Romulan:
cd ~/Downloads/romulan && uv sync.Dumb-ROM test (no upload needed after a fresh boot): plug in USB, the built-in demo starts automatically and the CPU runs at 1 kHz. Observe it:
cd ~/Downloads/romulan uv run python -c " from romulan.hardware_api import open_hardware_api with open_hardware_api() as api: api.monitor(enable=True) input('Press Enter to stop...') api.monitor(enable=False) # before upload or read capture "
Or capture structured bus data (built-in ROM ends in
STP):uv run romulan hardware capture --max-cycles 500 --port /dev/ttyACM0.Full program test:
cd ~/Downloads/romulan uv run romulan program.txt --build --upload uv run romulan hardware capture --max-cycles 500 --port /dev/ttyACM0
RAM writes (optional): a program that
STAs to$0200(or$4000) can be observed viaread/monitor. WithOE#tied high the AS6C62256-55PCN never drives the bus, soLDAfrom RAM returns floating garbage. The built-in demo only writes to RAM.