Peripheral Interface Adapters Have Been Assimilated.
I have conquered the Motorola 6820/6821 peripheral interface adapter!
Last week I got another batch of prototype PCBs and one of them was the latest version of my Bally/Stern CPU socket based daughter board that adds a microcontroller connected to all of the CPU pins needed to let the microcontroller run in parallel with the original CPU or halt it and interface with the RAM, ROM and PIAs on it’s own. The ultimate goal is to have a system which adds as much RAM and ROM as the original CPU (Motorola 6800) can address and be programmable by a PC via USB. At that point it will be possible to write far more complex game rules to run on the original CPU or new game rules that will run in the microcontroller making the Motorola 6800 CPU unnecessary. This RAM and ROM will be usable by either the original CPU or the microcontroller because the microcontroller is connected across the whole address and data bus.
Currently I’m working on writing the microcontroller operating system. The first step was to interface with the PIAs and get them doing my bidding. I first read the 6821 datasheet years ago and I understood the basic concept of how to read and write to the PIAs but I had to go over the datasheet pretty extensively to get the full picture of how they work.
I’m happy to say that at this point I have code to read and write to PIAs. That is a huge step toward reading switches and controlling lamps/solenoids. It seems like something so simple but it was pretty exciting when the LED on the MPU flashed under my control for the first time.










