I recently received a few raspberry pi picos!
My original idea was to use one of them as a VGA output for
my 6502 computer, but that did not really work out.
So I took a different tack about what to do with them and decided to run a 6502 emulator. The I/O is very simple and goes through the Pico's USB to serial capability.
For the emulation code, I started out with
this and added support for 65C02 instructions to be able to run Taliforth on it. You can also choose to run it in 6502 mode by changing one #define statement.
It passes all of
Klaus Dorman's 65C02 test suite.
I then added 6522 support from
this repository.
And putting it on a breadboard, we get some blinkenlights !
Attachment:
output.gif [ 277.29 KiB | Viewed 10381 times ]
While running the tests, I get about 3.1 MHz of emulated speed if I overclock the Pico to 280 Mhz. That seems fairly slow, so I've been looking at
Daryl's code for an ARM assembly 6502 emulator. I have absolutely no experience in ARM assembly though, so it will be a while before I can try and rewrite the emulator in ARM assembly that is compatible with the RP2040 microcontroller... If we go by Daryl's result (ARM: 900 MHz -> 6502: 97MHz) I should be able get more than 25 MHz 6502 emulated speed out of the Pico!
Here is the github repo if anyone is interested :
https://github.com/jfoucher/pico-6502