post

TIM 1 System by Joseph Watson

In the Facebook group ‘6502 programming’ Joseph Waton published a story about his TIM 1 system and photos.

13902788_1297285456956011_4038706379477634999_n

post

A Christmas Story About A Tiny TIM

A Christmas Story About A Tiny TIM

By Joseph Watson

I am a retired software engineer. I still program microcontrollers for fun. These days I concentrate on Microchip’s PIC chips, especially the PIC18 series chips. I retired from professional work at the end of 2010 and this year, 2016, I will turn 71 years old toward the end of the year.

Many years ago in 1971 at the ripe old age of 25, I bought a used DEC PDP-8/s minicomputer and played with it for many an hour. I even made a bit of extra money on the side by writing programs for that machine. (Yes, I still have the PDP-8/s.)

Early in 1975, a friend of mine bought a MITS Altair 8800 kit and invited me to help him build it. I was glad to help. That computer uses an Intel 8080 CPU chip. We soon had that machine blinking its lights and making strange noises in a nearby radio, but the fun seemed pretty limited for a little while.
Then a couple of college students named Bill Gates and Paul Allen wrote a BASIC interpreter for the Altair computer using the hitherto unknown company name of MicroSoft. My friend laid out the cash for the 4-kilobyte version of that product and we were soon writing BASIC programs for fun. Then my friend added an additional 4 kilobytes of RAM to his Altair and bought the 8-kilobyte version of MicroSoft BASIC. We spent many pleasant evenings in his basement writing BASIC programs for his machine. (By the way, my friend still has his Altair computer.)
In the era of the mid-1970s, microprocessor chips were still quite new but were becoming more known. The question on every would-be computer hobbyist’s lips was the same, “Which microprocessor chip is better, the Intel 8080 or the Motorola 6800?” I drooled over such things but, at more than a hundred dollars each, the cost surely seemed high for just a single silicon chip.
As I recall, some 8 guys who had been involved in the Motorola 6800 development left that company and joined MOS Technology, a calculator chip manufacturer, where about September of 1975 they created the very clever and much less expensive (about $25) MOS Technology 6502 CPU chip. Needless to say, my drooling intensified.

13962530_1297287150289175_989112927235440954_n

My TIM system got its start when my wife gave me, as a 1975 Christmas gift, just what I wanted most, a brand new MOS Technology 6502 microprocessor chip, a 6530-004 TIM chip, and 8 2102 static RAM chips. A 2102 RAM chip stores a whopping 1024 bits, organized as 1024 x 1. Those RAM chips ran so hot that you could not begin to touch them when they were operating.
I had a clear plastic box that I thought would make a nice enclosure for my TIM project. I took a large old printed circuit board and carefully stripped all the old parts and traces off of it to create a solid surface upon which to mount most of my circuitry, sort of a fiberglass chassis. I built up a simple 5-volt power supply to power the system consisting of a 120VAC to 12.6VAC transformer, a fuse, 4 1N2071 diodes wired as a full-wave bridge rectifier, a 2000 MFD 40 VDC filter capacitor, and a 7805 5-volt regulator. A long piece of aluminum running the length of the front side of the plastic box serves as the heat sink for the reguator. See Fig 1.

The CPU and the TIM chips were installed on a small perf board that was then glued with epoxy cement standing on edge on the large board inside the box. Additional components on this CPU/TIM board include a couple of 7400 quad 2-input NAND gate chips that I scraped up, about 9 resistors, a few small capacitors, and a couple of transistors that were involved in transmitting and receiving the 20-milliamp current loop signals for the Teletype. See Figs 2 and 3.

The 6502 supports several methods of being clocked. One uses a very simple external RC circuit so I chose that one. I included a potentiometer in the RC circuit so I could adjust the clock speed if needed. Since the TIM uses an autobaud feature to determine the timing for the serial interfaces, the clock speed needed only to be relatively constant but not any particular speed. See Figs 2 and 3.

I included a couple of red LEDs on the CPU/TIM board to reveal the state in the interface current loops with the Teletype, one for the sending side and one for the receiving side. (By the way, when I built this, we only had red colored LEDs. I had seen my very first LED in 1971, just 5 years earlier.) See Figs 2 and 3.

Aside from the CPU, TIM chip, and the RAM chips, most of the parts in this machine were salvaged parts scrounged from other old equipment and my spare parts box. The power transformer came from a nearby Radio Shack store. The IC sockets were wire wrap sockets that I unwrapped from old prototype boards being thrown out where I worked. However, I had no wire wrap tool so everything in the TIM system was soldered point-to-point.
Three push buttons were installed through the top of the plastic box for Reset, NMI, and IRQ. For the most part, only the Reset button was ever used. I may have used IRQ a few times. See Fig 4.

I made a little fan to keep the whole thing cool. The fan consisted of a small DC motor with a homemade aluminum fan blade on it. Eventually, I determined that the fan was just way to small for the amount of heat generated in this plastic box so I removed the fan and started using an external fan to cool it. All that remains of the old fan idea is the hole where it used to be located. See Fig 5.

As with many TIM systems, mine was connected to an ASR-33 Teletype unit. (Yes, I still have the Teletype, too.) Therefore, 10 bytes per second was the blazing speed for printing and for loading a program via 8-channel punched paper tape. I brought the serial lines out to a 37-pin connector on the side of the box. (Only slight overkill there… a 37-pin connector with only 4 electrical connections needed. One never knows when one will find a need for 33 spare pins.) See Fig 6.

I brought all the spare I/O port lines out to a connector on the side of the plastic enclosure so I could easily attach experimental interface circuitry there. See Fig 6.
To maximize cooling for the blistering hot RAM chips, I stood them on end, hoping for a degree of chimney effect cooling. They were all mounted in sockets as were all the chips of the project. Right from the beginning, I allowed room for an additional 24 2102 RAM chips so the system could grow from 1 kilobyte to 4 kilobytes of RAM. Standing the RAM chips on end resulted in one of the oddest physical wiring tricks in anybody’s computer and which is, no doubt, evident in the photos. Notice that much of the RAM array wiring was done with bare wire. For most of the wire in this project and especially the RAM array wiring, I used telephone wire which is to this day, one of my favorite kinds of hookup wire when solid wire is the best choice. It was easily stripped to make the bare wires for the RAM array. See Figs 7 and 8.

Aside from the ICs being in their sockets and a few connectors to the outside world, virtually every interconnection in this machine is hard wired with no connectors. It is obvious to me by looking at it now that I built the CPU/TIM board and then glued it down expecting to never have to change anything on it. (I do see that I tacked a capacitor onto the back of it at some point.) Looking at it now, I am surprised by some of the construction methods I used at that early time in my life (I was 30 years old). We all learn a lot as we grow older.
One kilobyte is a pretty small memory in which to store one’s program so I soon added the 24 additional 2102 RAM chips resulting in a total of 4 kilobytes of RAM. But that also made the little computer run really hot as well. So I added a slide switch to the system to choose whether it should run with 1 kilobyte or 4 kilobytes of RAM. That switch simply turns the power on or off to the extra RAM chips, thereby sometimes making life easier on the poor 7805 that was struggling to supply power to all those hot chips. See Fig 9.
There is a 74154 4-line to 16-line decoder that is involved in address decoding for the RAM chips (and for the EPROM chip described below). See Fig 10.

One reason for extending the RAM was that I found out about the existence of Tom Pittman’s Tiny Basic for the 6502 which cost a very reasonable $5 at the time. I loaded that little integer BASIC system and played with it often. Tom’s implementation is very compact and much could be accomplished even in a mere 4 kilobytes.

I wrote a number of assembly language programs as well. Clearly, the best one I ever wrote was a program to control a large set of Christmas lights that I strung across the front of my house. Each evening while I was on my way home from work, my wife would place a carefully prepared paper tape into the Teletype reader, turn on the power to the entire system, press the system Reset button, and turn on the Teletype reader. The tape contained a Carriage Return character to allow the TIM to determine the baud rate. After that came a TIM command telling it to load. Then came the machine code for the Christmas light program. When loading completed, one final TIM command on the tape started the program to running and the Christmas lights did their thing. It was always fun to arrive home and see my Christmas lights doing their dance before I even arrived. I used this little computer to run my Christmas lights so many times that it became clear that it would be smart to store the Christmas light program in an EPROM chip instead of loading it every evening from a paper tape. So I then added another slide switch inside the machine to optionally disable the TIM chip and enable a 2716 EPROM (2 kilobytes) plus a 7420 dual 4-input NAND gate chip (probably for address decoding) tucked into a corner of the box. When switched to the Christmas light position, one only had to power up the computer and press the Reset button to get the lights to go. By the way, there is no power switch other than plugging in or pulling out the power cord. See Figs 11 and 12.

The 7400 series chips are plastic and one 2102 chip is plastic. (I think I had to replace one of the original 2102 chips later because it had a habit of dropping bits, hence the plastic one.) Every other chip, including the 6502 and the 6530-004 TIM chip, are ceramic chips.

Looking over this little system after all these years, I have rediscovered many things about it that I had forgotten, most of which I have mentioned above. There is one more thing that I find of interest and that is the date codes. The 6502 CPU chip has a date code of 4775 meaning it was manufactured just about 4 weeks before I received it for Christmas. The 6530-004 TIM chip has a date code of 5075 meaning it must have still been a little bit warm when I got it as it had been made a mere week or so before it found its way under my Christmas tree. See Figs 13 and 14.
For those in the know, one might ask if my 6502 CPU chip includes the ROR (Rotate Right) instruction. Frankly, I can no longer remember if it does or not. I do remember the discussions about the issue of the earliest 6502 chips not having it.

14046072_1297285723622651_6647482492062422379_n 13934996_1297286270289263_974493783070824891_n 13907187_1297286760289214_6482952965923322726_n 13907034_1297286060289284_4107753050258814657_n 13902788_1297285456956011_4038706379477634999_n 13902589_1297285356956021_7074355163508101756_n 13901536_1297287020289188_2896969588299010668_n 13901375_1297286633622560_151653070225674965_n 13900312_1297285590289331_8124994451679700095_n 13895008_1297285813622642_3171866981378944622_n 14034981_1297286923622531_7797135737319393563_n 13962659_1297286170289273_6547530507822826946_n 14021561_1297286420289248_3666048737667080465_n 14034986_1297285163622707_2098995929299072581_n

post

6504 and Sally IC

65XX IC’s added, 6504, Sally Read More

post

Elektuur Junior books ocr’ed

Keith Howell kindly gave me ocr’ed versions of the Elektuur Junior books.

All four dutch, al four English and he is working on the spanish books.

You can find the documents on the Elektuur Junior page.

post

6502 Microprocessor Kit

Found this website on a search for parts, its a 65sc02 kit much like the Microprofessor 1

http://www.kswichit.com/6502/6502.html. Well documented!

Kits are for sale on ebay.

The author, Wichit Sirichote, has designed a whole range of these kits for Z80, 8080, 6802 etc.

Worth a look.

(Micro-)KIM Tutorials

Aart Bik has started to publish a series if tutorials on programming the (Micro-)KIM on his blog.

post

KIM Kenner, later 6502 Kenner and at last uPKENNER updated!

kimkenner42Hereyou will find the collection of publications by the KIM Gebruikersclub, called the KIM Kenner , later 6502 Kenner and at last uPKENNER.

Note that the PDF’s here are in black and white, right order and orientation, from corrected images, without irrelevant pages such as memberlist and non-6502 ads, missing pages added, lower quality rescanned and doubles removed. Contents added by hand!

post

Cross Assembler manual MOS Technology added

The August 1975 Cross Assembler manual MOS Technology has been added to the KIM-1 page.

This manual describes the  instruction format, directives and how to use the MOS Technology cross assemblers available on the G. E. Timesharing system.Scan-160408-0001

 

post

DOS65 pages added!

I have spent the last two months updating the DOS65 pages.

20160214_135505_HDR Read More

post

DOS65 floppy collection

With the DOS65 systems came a large collection of floppies with DOS file. Not all were interesting, a fair amount shows read errors.
But the bulk was fine, after cleaning the heads of the floppydisk drives.

I have read all files on the floppies into the HxC2001 image format. And then processed the image files with the HxC2001 software into Raw IMG files. Those image files were then processed by my DOS65ImageManager program into PC readable files.

The results are shown on this page, the files are all downloadable. Of interest ofcourse for study are the ASCII files, containg sources, manuals and other textfiles. But the binary files are all there.
The .HFE HxC2001 files are ready to be loaded on an SD card to use them on a DOS65 system with a HxC2001 floppy emulator.

Note that the conversion to PC format has had some consequences for file attributes (lost), namespace (only ‘save’ characters in filenames) and text file formatting (I choose for the DOS/Windows file format CR+LF and removal of non-printable characters).

Below you find a list of the image files, names are the imagefilenames, whcih can be different from the DOS65 volumelabel.

In this archive you find the logfiles left by the DOS65ImageManager program, named with the DOS65 volumename.,

This archive contains all .HFE files, and this archive the PC readable folders created by DOS65ImageManager.

20160330_141850_HDR

20160330_141854_HDRdos65201 bootable not initialized DOS65 system disk
dos65bag bootable Andrew Gregory DOS65 system disk
allerlei dos65 c compiler
allerlei2 dos65 c compiler
assemblerch7a8 AG EPROM and terminal and Silicon sources,
basiccomal Basic manual, progs, system. Comal, Pascal
basicprg various basic programs, basicode
ccompiler Small C compiler
cmastererr Logic analyzer, Astrid C Compiler, Dinfo, Exetime, Monitor
comalbasic Basic manual, progs, system. Comal, Pascal
compilerc Logic analyzer, astrid C Compiler, Dinfo, Exetime, Monitor
20160330_141757_HDRdos011astridmocop Astrid sources, Viditel sources
dos012astridmanual Astrid, Viditel manual
dos013astrid Astrid, Viditel sources
dos016 clanguage DOS Extra Logic analyzer, Astrid C Compiler, Dinfo, Exetime, Monitor
dos017forth AVR Forth
dos018pascalsources PAscal compiler 6502, 65c02, sources 65c02
dos019 Screen editor, Micro Ade DOS65 version
dos021 DOS 65 V2.0, system, Eprom software
dos022 DOS 65 V2  system, Eprom software
dos022allerlei Comal. Forth
dos023v20 DOS 65 V2
dos030basic Spreadsheet (not a valid image for DOS65Imageanager)
20160330_141754_HDRdos05 Update DOS65 v1 to V2, manuals
dos06 Basicode
dos07 Small C compiler
dos08 DOS65 system
dos25entries DOS65 Entries Examples, extra utils
dos26AGsources Basic sources
dos27basic Basic sources
dos28AGsources Sources Andrew Gregory Silicon, Word65, term3x
dos31basicode 2
dos32basicprogs DOS65 extra
dos6501comal Comal distribution
dos6509 various assembler files AS Eprom software,   COMAL setup DOS Manuals sources
20160330_141921_HDRdos65andtools Pascal programs, Small C, DOS65
dos65sysutils DOS65 programs
dos65utilsrc Sources AG programs, EPROM programmer, ROMs
dossourcesas Sources AG
dossoursemanuals DOS65 manuals
dos65macsub Sources AG programs, EPROM programmer, ROMs
Empty Floppy
emptyddds80
Floppy Dump Image Pascal sources and programs
forthcorruptas AVR Forth
logtrack40
20160330_141918_HDRpascalcomp Image Pascal sources and programs
pascalcompsrc1bad Image Pascal sources and programs with problems?
pascompsrc Image Pascal sources and programs
sources Sources AG programs, EPROM programmer, ROMs
termeprom Sources AG programs, EPROM programmer, ROMs
terminaleprom Sources AG programs, EPROM programmer, ROMs