Armed with two Cypress PSoC development kits and tons of LEDs, resistors, and jumper wires, I created a PSoC-based emulator of the classic 6502 microprocessor. It can read and execute assembly code stored on the device's flash memory. I also created a memory-mapped IO peripheral that gives the emulator two output ports to control.
The PSoC 6502 is implemented primarily in C on a 5LP development kit, but it also utilizes the PSoC's unique onboard programmable hardware to create its address and data busses, interrupt detectors, and a UART interface for receiving code over RS232 serial. The peripheral chip is currently implemented entirely in programmable hardware on a PSoC 4 Pioneer Kit; no firmware is required.
In its current state, the PSoC 6502 emulator can execute every instruction found in the W65C02. I have yet to emulate all pins from the 6502, and I plan to expand the peripheral chip's capabilities.
Components
1×
PSoC 5LP Development Kit (CY8CKIT-050)
I acquired this kit from one of my classes this past semester. During my departure from school, I flew with it in my carry-on. I still have no idea how these things get through security.
1×
PSoC 4 Pioneer Kit (CY8CKIT-042)
I also acquired this kit from the same class. They were given out the day before everyone left campus, with the professor hoping we could do something cool with them at home.
1×
RS-232 Cable
The PSoC 5LP dev kit has an RS-232 connector, adding a simple way to transfer data to the controller.
2×
Elegoo Breadboard
Who doesn't have extra breadboards lying around?
5×
LED Array
I am an avid collector of LEDs. These arrays were the greatest thing since sliced bread when I got them. 10 LEDs in one package?!? Just wait till I discover Neopixels...