How we developed our firmware
By John Feagans
The first 6502 cross assembler was written in Fortran by Michael Corder--aka the Cordless Electric Programmer. Before it was installed on the 360 I had to preface my 6502 assembler punched cards by this huge deck of the assembler program itself written in Fortran, then wait for the batch processing. Later MOS Technology offered the assembler on Tymshare for remote connections.
On the side as a grad student at Iowa State, Ames, in computer science I was enlisted by Compas for several projects they had contracted with MOS Technology. The facilitator in this was again Dr. Roger Camp of the Electrical Engineering department as I mentioned in my blog post "Door Into Summer".
Dr. Camp is retired now and we keep in touch. He told me how he met Chuck Peddle. "I took a years sabbatical from ISU and worked for Motorola in Tempe AZ and sniffed out a small group in a small office down the hall on a super secret project behind closed door. MOS (the technology not the company) was in its infancy and they were wire wrapping the 6800 microprocessor. Next thing I knew Chuck Peddle and I were teaching a course to very select people from Motorola and the likes of NCR. All sworn to secrecy!"
Compas developed the software for the MDT-650 and Larry Hittel, at his company Comlog in Phoenix designed the hardware. The MDT was a dual 6502 processor development terminal with ICE capability for the 2nd processor and built-in editor and native 6502 assembler on the 1st processor. The native 6502 assembler produced by hand compiling the FORTRAN to 6502 assembly language, assembled on the FORTRAN version and burned into ePROM for the MDT.
Norm Farrington, another ISU grad student founded Compas in 1972. In Norms words here is how they became associated with MOS Technology. "Through a contact at ISU (Dr. Roger Camp) Mike and I were introduced to Chuck Peddle who had recently left Motorola and was involved with John Pavinen of MOS Technology in King of Prussia or Valley Forge, PA to produce the first commercial microcomputer chip that sold for a "reasonable" price, the 6501. Mike and I flew to PA and, long story short, COMPAS was chosen by MOS Technology to support the effort from the software side, starting with producing a cross-assembler for the chip."
Steve Christiansen, an EE grad student and me, a CS grad student, were hired by Compas to port the cross assembler from FORTRAN and 6502 assembler to PDP-11 assembler for their MinMac development system. We created a virtual 6502 in PDP-11 registers and hand transcoded. Probably should have used a macro assembler but it got the job done. The source code was crazy because it retained the original FORTRAN line numbers as labels in the assembler version! It was a useful exercise to familiarize with the assembler and it aided in the port to PET and C64 later.
Now, I started working at Commodore and here is the MDT again. Storage on 8-inch floppies this time and a TI Silent 700 terminal with dual tape drives for storage too. The terminal had an acoustic coupled modem and within days of starting at Commodore in May 1977 I was in communication with Rick Weiland and Bill Gates in Albuquerque to spend an hour downloading the latest release of Microsoft BASIC at 300 baud. The form of the download was hex ascii with length, load address, and checksum on records of about 32 bytes.
The MDT had a ROM burner so once loaded into memory, we made 2716 ePROMs of the operating system and BASIC for the PET.