This USB device lets you upload programs to run against the classic 6502 CPU, made famous by the NES, Apple ][, and Commodore PET.
Write programs from the comfort of a modern machine, then upload your programs via USB. Version:
This system lets you save time, and gives you the most accurate environment for running 6502 based programs. Common use cases:
The 6502 chiplab board includes:
The device connects to your computer over USB. Then you can use the serial_rom.py program, which I have open sourced, to upload your assembled program to the chip.
Typically it is simple as running:
./serial_rom.py /dev/ttyUSB0 my_program.bin
You can also manually interact with the chip. The controller board provides a serial console which can be used to simulate external events to the chip.
An online version of this board is provided as part of the Chiplab service I run.
Note that the online version is shared, so program execution is limited in order to ensure fair usage of the service. Programs are only allowed 100 cycles (or around 30 instructions), and are queued first-come-first-serve.
Purchasing your own board gives you dedicated access to your own chip, and you can run your programs for as long as you like. And without waiting in line.
If you are planning on using your own 6502 with this board, you should confirm that it is compatible. I have tested using the W65C02 from Western Design Center. You can find it from Mouser here.
The board runs the 6502 at 3.3V. The expected pinout is as follows:
Name | Number |
---|---|
VPB | 1 |
RDY | 2 |
PHI1O | 3 |
IRQB | 4 |
MLB | 5 |
NMIB | 6 |
SYNC | 7 |
VDD (3.3V) | 8 |
A0 | 9 |
A1 | 10 |
A2 | 11 |
A3 | 12 |
A4 | 13 |
A5 | 14 |
A6 | 15 |
A7 | 16 |
A8 | 17 |
A9 | 18 |
A10 | 19 |
A11 | 20 |
Number | Name |
---|---|
40 | RESB |
39 | PHI2O |
38 | SOB |
37 | PHI2 |
36 | BE |
35 | NC |
34 | RWB |
33 | D0 |
32 | D1 |
31 | D2 |
30 | D3 |
29 | D4 |
28 | D5 |
27 | D6 |
26 | D7 |
25 | A15 |
24 | A14 |
23 | A13 |
22 | A12 |
21 | VSS (GND) |
If you have other questions, feel free to send me an email.