HD1975PC

            The Motorola 6800 microprocessor was one of the first 8 bit (1 byte) processors.  There had been many four bit processors and attempts at 8 bit units but the 6800 was the first used to any degree in the market place.  Some Motorola engineers broke away and started a company they called MOS and produced what they called the 6502 microprocessor.  Autonetics Division of Rockwell started what they called Microelectronics Division and hired the Chief engineer from MOS as their Chief Engineer for producing the 6502 under license to MOS.  In time Autonetics was selling more microprocessors than anyone and they were the 6502’s.  In the meantime Commodore bought MOS and the rights for the 6502, which they sold to Apple Computer for their early machines and produced four machines of their own.  This first an 8K machine, then 16 K then 32 K and finally a 64 K machine.  Some Autonetics engineers produced the AIM 65, a 64K machine for in house use but the company never backed it as a sales product – they did however produce hand calculators using the 6502 for some time.  In the meantime Intel began its I-86  8 bit microprocessor.  Apple switched to a new Motorola 68000, 16 bit chip to get away from their competitor Commodore.  IBM saw the desktop machines intruding on their, bought a significant holding in Intel to assure they would have a microprocessor for their pending machine, which became known as the IBM PC. 

Fig 1  8K  Commodore PET 2001/8 with built in cassette tape           and             64K  Rockwell AIM

            Collins division of Rockwell set up a program where the company would finance the purchase of Commodore computers for employees with monthly pay roll deductions to pay for them.  Autonetics soon followed.  I signed up and bought the machines in these photos.  I don’t recall the cost of these machines but they would probably average over $1000 each.  Though the machines were primitive they were still expensive – not toys for anyone. 

Fig 2   16K Commodore  PET 2001/16                                  and          Dual Super Disk Floppy Drive

            It was organizations such as Collins and Autonetics that help pay for and evolve the microprocessor and early computers.  Initially all programming was done in machine code.  Only engineers of very dedicated hobbyists had the tenacity of incentive to stick with it. 

            The Commodore 8K machine was the first user friendly machine, coming out about the same time as the first Apple machine.  The 8K machine had a tiny keyboard, and built in cassette for saving programs.  The software, an early version of BASIC written by Microsoft was stored in Read Only Memory chips built into the machine.  A user could write instructions is Basic, then command Run and the machine would interpret the Basic instructions as it ran, converting Basic to machine code for the microprocessor – this method was called Interpretive Basic. 

            The next Commodore was a 16 K RAM machine, with a separate stand alone cassette tape for storing programs and data.  This still used a small sized screen.  Admiral TV, at one time one of the largest producers had gone out of business and Commodore bought large quantities of their TV tubes converting them into monitors.  These Commodores were built like a car where the hood lifted up in order to get to the mother board.  The “video card” was a board under the Tube as part if the lift up lid.

            The third Commodore machine to come out was a 32K RAM machine with full size monitor and keyboard.  These became very popular with engineering firms, especially when Commodore came out with a Dual Floppy Disk.  These used 5 ¼” floppy, truly floppy, disks that wrote in standard density then a more compact density.  These connected via an IEEE cable, an edge connector off the mother board and IEEE test equipment standard on the Floppy Drive.  The IEEE standard had been used for years by Hewlett Packard for lab test equipment.  Not long after others came out with floppy drives which using an RS232 protocol Serial. 

            DOS, by Microsoft entered the world as a way to make it easier to talk with the floppy drives.  Shugart, which since became Seagate, were the first to provide desk to floppy drives.  DOS was a godsend to us early users.  It’s still in use today buried out of sight in Windows software but still retaining much of its early protocols – mostly upgraded from 8 bit to 16 bit to 32 bit and now 64 bit code.  Microsoft was a key player in making the PC a practical and very useful machine.

            What had been Interpretive BASIC soon became merged with DOS as if one.  When IBM needed something in a hurry to catch up, they contracted with Microsoft for the software for their PC’s.  Microsoft retained the rights and IBM and Microsoft made it available on floppy discs – it could then be upgraded and not frozen into chips.

Fig 3  32K Commodore PET 2001/32 with full size Monitor   IEEE cable connection to Floppy & Printer

            Random Access Memory was a pacing development.  These were initially very small and expensive.  Desk top computers really didn’t have any breathing room until they had 64 K minimum. 

            An outfit in Canada began making enhancements for the Commodore 32, by adding an extra mother board with a 68000 microprocessor and were using these to interface with IBM mainframes.  It became very apparent these little guys were starting to eat their lunch.

            To play catch up IBM came up with a mother board design in which they could buy electronics from current desk top providers, and have these placed on cards that would plug into their motherboard.  Thus the “IBM Standard” was born.  Initially it was what became known as ISA 16 bit slots.  The IBM PC took off like wildfire – eventually causing the downfall Commodore and truncating Apple expansion. 

 

Fig 4  Dual 5 ¼“ Floppy Drive, new double density 534 K vs prior 126 K floppy       Interconnects

            When IBM came out with their machine they made use of a more advanced 5 ¼ “ floppy design calling it double density.  This new size and standard soon put prior floppy drives in the obsolete bin. 

            RAM became more plentiful and the IBM was equipped with 1 meg RAM as standard on the motherboard – suppliers made plug in cards such that you could readily double that. 

            Video cards came out offering color.

 

Dot Matrix printer and “cassette tape” read/write storage

            Dot Matrix printers initially used the IEEE cable and served early needs quite well.  Later printers used the parallel port, with Centronics connector to printer becoming a standard.  My printer went through many ribbons before I had to replace the dot matrix head with it’s many pins.  These were noisy but low cost.  See following figures.

            Early tape drives used standard cassette tapes, became practical, faster – and more reliable after change to push-pull I/O drivers.  These led to much better Back Up Tape drives which were used extensively until hard drives took over..

            A new 3 ½ “ 1.44 meg floppy, that was stiff and not “floppy”, took over as the new standard. 

            New hard drives came on the market which made use of the 3 ½ inch disk size – stacking them inside a sealed chamber, read by a tiny arm whose head remained airborne just above the high speed disk.

 

These printers worked remarkably well

Typical Commodore Keyboard with shift key activated Graphics characters

            Commodore User Manual:  The Commodore user manuals, put together by engineers, had a primitive appearance but in fact were excellent, providing technical content unavailable from other sources at the time.  I realized the machine could be very powerful if I could program it in machine language.  This manual provided all the information I needed to determine how to use the software stored in the machines ROMs to write my own programs such as a Word Processor.  The following figures are extracted from this manual.  I studied these in great detail determining how to write programs in machine code, but also how to get my foot in the door and have my program supercede the machines routines.  Without and instructor available on how to do this, it was both frustrating and invigorating to master the machines potential.

            From our “computer lab” I was able to obtain an early copy of “editor”, “assembler” and “dis-assembler” software on a cassette tape.  I found I could write a program in accordance with the following example using the edit program, then assemble it and save it to a cassette tape.  I could use the disassembler to reverse the process.  I found ways to set up “breaks” such that I could prove software up to a point.  Some of these were do-it-yourself tools programming tools.

            It would be necessary to replicate much of the manual to describe all the details.  The machine had been setup to operate in interpretive BASIC and this is what most people did.  I was bypassing that part of the system and working directly with the engine inside the chips.  This provided speed and versatility at a cost, a cost in much time and tedious dedication.

            The above and following figure shows how to write the nitty gritty code.  The third figure  shows how built in BASIC sub routines in the machines ROM can be tapped and made part of the users program.

            I don’t know of any others in our company who were dipping into the machines routines in this way.  However we were able to use the program I wrote, when some of us were assigned to help restart the B-1B bomber program.  There was no equivalent software available at that time.

 

 

Subroutine sets stored in ROM

            I soon found it was necessary to learned about the structure of the systems memory, such as “Zero Page”, reserved memory for monitor and I/O devices and how to reserve memory for storing values, definitions and arrays of data.  As these attributes of the system were mastered it began to make sense on how to reserve memory and know that what you were doing was fail safe, and not subject to be overwritten.  At this programming level there is no protection.  One wrong but of code and it could wipe out all that had been done.  I recall having worked all week getting a system to work as intended, the mid afternoon Friday beginning a final test run – whiff it all evaporated.  Not long after that my boss George Anderson sensing my frustration asked how things were going.  I side this software stuff is like nothing else I’ve ever done.  It’s as if you’ve spent all week building a porch onto your house then when driving he last nail it evaporates – and you have no idea what caused it to blow up!

 

 

            Pre-DOS   Prior to DOS it was necessary to write a statements as above to command read or write, these had not been packaged into sets of code.  Microsoft took the initiative to solve this need and came up with Disk Operating System and DOS took off becoming a standard for everyone, including IBM.  For us users it was a tremendous improvement.

 

 

            XY Write Word Processor Software:   XY Write was one of the first excellent Word Processor programs written for the  Commodore machines.  With is you could redefine the meaning of key strokes.  Zane Sandusky and I had our machines set up so we could make charts and block diagrams.  We redefined the “cursor” key pad at right so we could also have box making characters, 1, 7, 9 & 4 were corners with 5 a + and 4, 8, 6 & 2 T connects.  These became very valuable assets, especially when you realize this was before there was any graphics software. 

            Hard Drives: Initially very expensive, hard drives began coming down in price.  10 meg drives were the first affordable for desk top use.  Since these drives have gone up in capacity and down in price.  I paid about $750 for my first hard drive and it held only 20 mg.  Today you can buy 80 gig for about $100 -- and size is still going up and price down.

            Intel grew rapidly due to the huge IBM orders.  The “clones” began making machines based on the IBM standard bus.  Intel came out with a new motherboard chip that accommodated a PCI 32 bit bus.  Then later AGP 64 bit bus for video cards. 

            Intel went from I-86  8 bit at 1 mhz speed to I-286  16 bit to I-386 32 bit processors.  Then jumped to the I-486 processors with built in math chip with a 33 mhz bus speed.  The upgrades continued rapidly to the present over 1 ghz speeds at 266 mhz mother board bus speed standard.

            Software made a huge jump when Microsoft came out with Graphics programming with it’s Windows 3.1  using the I-386 processor.  Prior to that pixel character sets were used, the hardware could not handle more. 

            Printers went from dot matrix to laser powdered ink to laser jet ink with excellent color. 

            The USB serial port was added

            LAN, Local Area Network, capability for connecting computers has become standard on the mother board.

            WiFi, wireless hi fidelity is now making it possible to interconnect without hard wire connections.

We’ve jumped ahead -- Lets go back to PC Start

            Lets begin this segment with where things were when the microprocessor came out.  Remember all I told about digital electronics for an MX missile was before there was such a thing as a microprocessor.

            To understand how a microprocessor works you must study the above block diagram of the internal registers of a microprocessor.  The above diagram and mnemonics tables is for the R-6502.  Note that digital values are defined by Hex Code.  Fig 6 right shows how the processor is connected by use of data bus, address bus and control bus to other parts including memory.  The program provides the instruction sequence for read or write to memory then perform some operation with the microprocessor.  Data is move 8 bits at a time, in bytes.  The meaning of these bytes can be in accordance with ASCII standard alpha numeric character meaning or the meaning the system or operator applies to the bit codes. 

AIM motherboard peripherals block diagram                   motherboard system diagrams

            A process will continue until there is an Interrupt Request, IRQ, which is a bit like a mouse of keyboard knocking on the door saying look at me.  The processor interrupts long enough to read the status and act accordingly. 

            Programming in this machine code, can be fascinating, especially when your causing things to be done for the first time.  In the beginning there was no software to be purchased other than that for use in editing, compiling, running and disassembling code for a given processor.

            When building processing electronics prior to there being complete systems like these, it was very necessary to work out the timing of each function – such timing is shown in figure 7.  Each mother board has a built in system routine stored in a ROM, Read Only Memory.  These handle the timing of interrelated chips, the user does not need to be concerned about those actions.  However when connecting to the outside world the user must take timing into account. 

 

   AIM  Motherboard chip set block diagram                                   Timing Diagram

            Initial Interest and Applications:  These came out while I was still trying to evolve digital electronics for the MX.  The MX application could not use microprocessors due to hardness (nuclear effects) environments – we had to use a limited set of proven bipolar parts – making out task more difficult in many ways.  Elsewhere I’ve described the difficulty and solutions used to test the digital circuits I’d designed.  Once these processors were available with the help of Karl Lofgrin we set up a microprocessor development system we obtained from the Autonetics electronics lab and used this for generating commands to our digital system – the system designed to test microprocessors was excellent for testing out system.  I also bought an AIM system for use in our lab – it worked fine but there was no memory storage other than what we could rig up on our own. 

            In time I migrated more and more to mastering how these Commodore machines worked.  My first machine the 8K unit I gave to daughter Julia, then the 16K unit to daughter Monica.  I had a 32K unit at work and used my 32K unit at home, writing machine code at night. 

            Someone at Autonetics had written a word processor in Basic – they said it didn’t work.  I manage to find out what was wrong with it, which caused me to be accepted in the programmer community who had written the program.  I used it but found it was way too slow.  So at home I began the process of writing a word processor program in machine code.  It was lightening fast in comparison to anything else.

            Using Machine Code Word Processor on B-1B program:  I had worked many many hours at home evolving the machine code word processor.  I’d also been taking night classes, one a semester at Fullerton JC.  One of those had been an Astronomy class in which I was to write a paper, it was to be on science fiction related to astronomy.  After looking over a few I decided I could do better than that so I began writing a story I called “Space Cell”. I’d also been taking things like Biology, Anthropology, Geology, History, etc.  These began to merge into the idea that once our Sun grows to the size of a Red Giant, we on earth will need to escape, we’d need a Noah’s Ark.  It occurred to me we could include two of everything if we reduced all down to their DNA molecule.  So the idea became a Space Cell to go out in large quantities into space seeking an Earth like environment.  Then take root and grow Earth’s life forms on the new planet.  I knew that to write such a story I’d need a word processor – though such were not yet on the market.  With this personal need I kept at the task. 

            About this time President Regan reactivated the B-1B program and a few of us were sent to El Segundo to help get it started.  John Cox, an ex B-29 pilot, and I were selected to go there to help, so we arranged to take our Commodore computers with us.  We had a 32K model and a 16K model.  I modified my program so that when using the small monitor on the 16K model, the text would scroll to keep what you were typing on the screen.  I also modified the program to do math in the text.  You could make a table using the graphics characters, enter numbers and do arithmetic.  It worked quite well and we used it, John on one machine and me on the other.  We had the only desk top PC in the entire plant!!!

 

            When that part ended they had us work on the specification for B-1B Depot Test Equipment.  I wrote a program in Basic to do the proposal evaluation.  Some 80 peoples inputs were entered and results determined using that program.

            Prior to the proposal I’d written a program in BASIC which we used to evaluate existing Depot Test Equipment to see if any of it was usable for the B-1B.  The NAA division had taken on a contract with the AF to make such a study using a program written in Fortran called TERSE for use on IBM mainframes – only it didn’t work. Over a week end I wrote a program in BASIC to do the equivalent and two weeks later we provided data they were able to take to Wright field for AF evaluation of the results.

            About a year later the first IBM machines came out and the Commodore machines became antiques.  Those in these photos are now in the Decatur County Museum Oberlin, KS.