As I previously posted
on this forum, I'm working on a 6502 software-defined computer for the GadgetGangster Propeller Platform, called Propeddle
, a combination of the words "Propeller" and "Peddle", in honor of Chuck Peddle (Bill Mensch' name will be honored in future hardware
I finalized the hardware and I have a production run of the PCBs on order. The full kit will be for sale for the first time at the Parallax Expo
on April 13-14, 2012, and online after that. The initial retail price will be between USD 50 and USD 70 but the project is open-source so you can also just buy the PCB (expected price around USD 15) and build your own Propeddle with parts from your own parts drawer if you wish. I will also make a parts list available on Mouser so you can order your own parts (except for the PCB) there. The kit is easy to solder together: all parts are through-hole. Once you're done, you can either use it as your own custom 6502 computer, or you can simulate another existing one.
Basically, Propeddle is a 65C02S with a 128KB static RAM chip and some glue logic. Both are under control of a Propeller on a GadgetGangster Propeller Platform motherboard
(not included). The Propeller generates the clock for the 6502, generates signals such as reset, IRQ and NMI, and reads status pins such as R/W. The (HC) TTL-based glue logic is necessary to multiplex all signals to/from the Propeller's limited number of pins.
The address bus and data bus of the RAM are connected to the 6502 but the OE and WR lines of the RAM are controlled by the Propeller. As you may know, the 6502 only uses the data bus during the second half of each clock cycle, so during the first half of the clock cycle the Propeller has a chance to access the RAM (at the address that is generated by the 6502). This eliminates the need for ROM: The Propeller resets the 6502, feeds it the "start-of-ROM" address when it retrieves the reset vector, and fills the RAM behind the 6502's back while it lets the 6502 see NOPs.
The Propeller also takes care of video and keyboard interfacing: you can either use a PAL or NTSC TV, or a monochrome (1 bit) VGA monitor for video, and a PS/2 compatible keyboard. Unfortunately it was necessary to use non-standard pins for video so you'll have to modify e.g. the Wulfden.org Proto VGA/A-V module
(not included, instructions for modification will be provided). My next project will be a custom PCB that will be similar to the Proto VGA/A-V board but makes it easier to generate video on custom pins.
The software will run the 65C02S at a maximum speed of 1Mhz which should be enough to emulate many early-generation computers such as the KIM, SYM, Junior, PET, or CBM machines, but you will have to provide your own ROM and build your system from scratch. Later on, I will work on more software, for example a TIM or KIM emulator, or a simple video game.
The Propeddle also has an extension bus which makes it possible to add other hardware, e.g. hi-res graphics video or an interface to other peripherals such as legacy disk drives or printers. It will also be possible to use something other than the Propeller to generate the clock, so that you can run the 65C02S at a faster speed (both the CPU and the SRAM chip are capable of running at about 14MHz). I will work on this later if there is enough attention, but because the project is open-source and easy to understand, everyone is welcome to contribute their own ideas.
Propeddle was inspired by Dennis Ferron's Prop-6502 project