SSX on a PIC

CS25 Final Project:
Simulating the Simple Swarthmore Computer on a PIC Microcontroller
Alexandr Pshenichkin and Cortland Setlow
Last update (v 1.1): 3:50 PM Saturday, May 08, 2004
Abstract
A user-friendly yet powerful emulator for the Simple Swarthmore Computer was implemented in C on an eight-bit microcontroller. The emulator displays the state of a hypothetical organization that conforms to the architectural specifications of the SSC as it steps through various substates of a Fetch/Decode/Execute cycle. This includes pseudo-real-time updates to all registers, RAM, and ROM. The emulator allows the user to run the SSC at variable clock speeds, single-step through instructions, edit the contents of RAM, ROM, and registers, and to store up to four programs in nonvolatile storage. It attempts to be user-friendly despite the limitations of a small display and a slow clock, primarily accomplishing this via a simple yet elaborate LCD GUI and a hex keypad for data entry. This project demonstrates many concepts relating to computer architecture and its underpinnings, including hardware design, very low-level programming, and methodologies for interfacing with (slow) humans.
What's in a Name?
Why is a PIC that runs SSC called "SSX on a PIC"? This originally came from a typo on our board. Since we couldn't change the labels after production, we reasoned that we might as well make the best of it and call it SSX. It sounds more "eXtreme" or something like that. So, yeah, simple computing.... to the max!
Alexandr Pshenichkin and Cortland Setlow
Swarthmore College