Classic Computer Magazine Archive COMPUTE! ISSUE 11 / APRIL 1981 / PAGE 154


The Single-Board 6502

Eric Rehnke

The 6500 Family—just where is it going?

Six years ago a star was born. The 6500 family was the product of a chasm between some Motorola design engineers and their management. They broke away and joined MOS Technology, a calculator manufacturer, to help produce one of the most revolutionary pieces of silicon to ever roll off a drawing board. The main idea was to simplify a chip design as much as possible by removing everything but the bare necessities. This led to a chip which was much smaller than its contemporaries and was in turn much easier to produce. Since chip yields were high, the end price could be much lower than the competition. The 6502 was going for $25 when the 6800 had to sell for around ten times that much. Combine that low price with an elegant architecture and a chip which was both easy to learn and use and what did you get? A sure winner, that's what.

And if all that weren't enough, the factory was selling direct to individuals in single quantities. This alone was completely unheard of at the time. But, since MOS Technology management had to play a game of catch up to assure themselves of an adequate number of new design ins, it was a shrewd and well calculated move. It sealed the fate of the 6500 family. It would succeed. But MOS Technology was determined not to give their competition any breathing room.

At a time when most of the industry were selling evaluation kits to help folks become familiarized with their devices, MOS Technology brought out the KIM-1, a system with features that were unheard of. A scanning hex keyboard and display, a built in audio-cassette and terminal interface. All for $245... and it was assembled and burned in at the factory to boot! The marketplace LOVED it! Now we had an easy way to evaluate the 6502 without going through the system design phases on our own.

As an aside, shortly before the KIM-1 came out, I had designed a system which would let me evaluate the 6502 chip. I designed a hex keyboard and display that would allow me to enter and examine data in memory as well as start a program running. Since I knew nothing about software at the time, the system was designed using TTL gates and counters, stuff I was familiar with at that time. My design would have taken A T LEAST 50 TTL chips to implement. And there were no means of saving data to an audio cassette or communicating with a terminal. Well, you can imagine how I felt when I first saw a KIM-1 with all the stuff I wanted plus features I didn't even realize I needed. All assembled, tested and at a price I couldn't pass up. As I look back, I can't remember ever making a better investment.

The design cleverness of the KIM-1 only became apparent when users started doing the most amazing things with the system. The most memorable early contributions were those of Jim Butterfield from Toronto, Canada. I can still remember my fascination with his realtime moonlander program. I just couldn't believe the KIM-1 was performing these feats of "magic".

From the early days it became increasingly apparent that 6502 users were the elite of the hobby, world. No other computer users were so creative and so willing to share their discoveries. Although Jim Butterfield deserves a lion's share of the credit for helping the KIM-1 become so popular, it was Rick Simpson, then Product Manager of the KIM-1 line, who really got things rolling by getting a few of the early KIM-1 users together. Rick thought up the idea for a KIM-1 user group newsletter and helped me get the original KIM-1 user notes started.

The 6500 family was proving very popular in real time systems such as video graphics machines because of its high throughput capability. It was one of the faster 8-bit chips and also very cost effective to design in because of the low number of support chips that were necessary to get a system together. This made it attractive for small dedicated systems use. Its elegant architecture and instruction set made it a programmer's dream. Since the influence of the DEC PDP-11 was so obvious, even down to some of the assembler mnemonics, people who were familiar with that popular mini could easily migrate downward to an 8-bit system and not have to start from scratch on the learning curve.

A short while after the 6500 family was introduced, thought was given to what should follow. Design specification work began on what was to be called the 6516 Psuedo-16 bit cpu. This processor had a rather unique design feature that gave the chip a dual personality! A single bit in the status register could be set to change the cpu from one that looked exactly like the 6502 to a psuedo-16 bit device with advanced instructions and even greater capability than the 6502.

But, it just wasn't in the cards for this advanced chip to ever become a reality. There was some talk of Synertek doing the chip, but, that never panned out either.

At this point in time, I don't see any real possibility of there being an expanded psuedo (or real) 16 bit cpu based on the 6502. Two years ago, such a chip would have been a hit. Today, it would be a disaster. Sorry bunky.

However, the 6500 family hasn't stopped growing. It just isn't growing in the same direction as some of the other semiconductor manufacturers' products. A lot of the development of the 6500 family of devices is being made in the area of single-chip microcomputer devices. These "computers-on-a-chip" will be increasingly important in the 80's as peripheral processors for the larger 16 bit cpu's. A system with 3 or 4 of the 16 bitters could conceivably have up to 30 or 40 of the single-chippers handling the more mundane system functions.

Admittedly, the thought of single-chippers probably isn't as glamorous as some of the new 16-bitters (such as the 68000), but, if you have a practical use for small dedicated systems around your home or lab, these small "all-in-one" devices will really fill the bill. Rockwell is planning to come out with single-chip devices that can talk to off chip EPROMS so you can easily develop your own programs and not have to buy a thousand of the little buggers just to automate your home energy management system, for example. And since the RAM, and I/O are on one chip (along with the cpu), the system design turns out to be a lot simpler.

And I've just heard a rumor that MOS Technology has announced a new chip called the 6508. Supposedly it has some on-board RAM and one 8-bit I/O port. But, I won't know for sure until the data sheet arrives. Now, if the full 16-bit address bus is present on the 6508, its eight bit I/O port could be used as a bank select for those applications requiring more memory than the normal 64K. Of course, it would be most useful at the lower end of the applications spectrum where the 6508 and an EPROM could form a very low-cost system.

So don't despair, all's not lost. The 6500 will live on.

65O2 Word Processor (?)

For quite some time I have wanted a word processor for my HDE expanded KIM system. Now the text editor that comes with the Hudson Digital Electronics disk system is probably the best there is for editing assembler source files. But, it has some limitations which make it a bit awkward when handling articles or doing letter writing. Fortunately, another HDE system user, Chuck Kingston, also felt the need to have a processing capability and he went ahead and wrote one.

His word processor is actually in two parts — the input editor and the output formatter. The editor uses line numbers (which makes the files readable with the HDE editor) but the lines in the editor file don't necessarily correspond to the output of the text formatter. The column width set command (which can either be imbedded in the text file or set up upon entry to the text formatter) determines the printing buffer length. Words are pulled from the input file and stuffed into this printing buffer until it's filed or a new line command has been encountered in which cases, the printing buffer will be dumped to the printer. So the line numbers are essentially ignored when the text is output to the printer.

The editor includes commands for auto line numbering, block moves, string searching and replacing, tabbing and so forth. The text formatter allows margins and column size to be set, files to be chained in from disk, page numbers to be added, and includes lots of other features too numerous to mention.

I think that the main feature of this system which makes it more than just another text editor is the way multiple lines can be inserted anywhere in the file, even between words on the same line. Normal text editors will not let you insert more text on one line than the difference between the amount of text already contained on that line and the length of the line buffer. To insert any more you'd have to delete some of the text already there. Chuck Kingston's word processing system automatically saves any text overrun to new lines and lets you insert text to your heart's content — up to the limits of memory, of course.

This software has added a new dimension of usability to my computer and I can see it being used a lot in my line of work. Now I'm going to have to figure a way to get my system out to the patio so I can work in the sunshine.

If you've been using the HDE text editor, you'll have no problem learning this word processor. I haven't tried to teach my wife how to use this software yet so I can't say how long it would take to teach someone who is not a constant computer user.

At this time, the system is available for KIM systems with the 5" HDE disk system. The price of $75 (NY residents must add appropriate tax) includes the program object code AND the manual on disk. That's right, the manual is included on the disk as a number of text files. Besides being less expensive to produce, it has the advantage of providing examples of about every command in the system for your inspection. Versions for the 8" HDE (KIM and SYM) and 5" HDE SYM systems should be available for the second quarter of 1981. AIM disk versions and cassette versions for the KIM, SYM, and AIM machines are planned for sometime in 1981.

If you do any writing at all, even just personal letters, you'll want a copy of this text editing software for your HDE disk system.

The text editing system is available from Charles Kingston, 6 Surrey Close, White Plains, NY 10607.

The reason for the question mark in the title of this article? Well, when I started to write it, I had wondered about what the difference was between a word processor and a text editor. I tried to figure out in my mind just what this particular system was and what it could be honestly called. After about two days of thought on the subject, I've decided that I don't really know the difference and it may not really matter anyway since everyone will have their own opinion. Since I can manipulate and insert text fairly comfortable with this particular editing software, I think it can be referred to as a word processor. If it were clumsy to operate I might call it a lousy text editor. So you decide...


A Low Cost Controller Development System

The AIM 65, with an assembler ROM, makes a very usable and low-cost development system, as long as whatever is being developed is meant to reside on the AIM. However, if you should want to develop a dedicated controller system, the AIM doesn't really have the proper tools. What's needed is some way to communicate with the controller board to somehow download the object code into it for testing. But, up until now, there have been no low-cost add-on tools to enable the AIM to handle this kind of duty.

Well, luckily for those of us who need such tools, that is no longer the case. A company called R.J. Brachman Associates Inc. has come up with not only the controller development tools necessary but the controller board as well.

Let's talk about the controller first. Basically, it's a 4.5" × 6" p.c. board that contains a 6503 microprocessor, a 1MHZ xtal, two 6522 VIA chips, two 2114 RAMs, and a socket for a 2716 (2K×8) EPROM. There's even a power supply on-board that will accept 9 to 18 volts of A.C. The I/O comes off the board from a 44-pin edge connector. As you know, the 6503 has a total addressing capability of 4K bytes — more than enough for a small controller system. The board layout is very clean and professional looking and a solder mask is included on both sides of the board. There's even an LED on the board to indicate power-on.

As part of the development package, they have an In Circuit Emulator that takes the place of the 6503 CPU in the controller and maps the lower 2K of the controller (everything but the EPROM) into the address space of the AIM. This means that you can directly access everything in the controller's memory space from the AIM. Think about that!

The controller hardware and software can be fully developed and debugged using the tools already resident in the AIM (like the assembler, the software trace and breakpoint routines). No need to download to another system and work in the blind anymore.

And when the system is developed, R.J. Brachman also has an EPROM programmer which plugs onto the controller and lets you make things more permanent. This is a very nicely integrated development system at a surprisingly low price. The In Circuit Emulator sells for $95, the EPROM programmer attachment sells for $45 and the controller board sells for from $25 for a bare pc board w/manual to $149 fully assembled with the on-board power supply. Pennsylvania residents need to add 6% tax.

The key to the low cost and high usability of this developmment system is in the use of the 6503 as the controller CPU. Because it can only address 4K of memory, all of it can easily be accessed by the host computer through the In Circuit Emulator. Another benefit is that since the 6503 only uses a 12 bit address bus, and the top 4 bits are ignored, programs which reside in ANY 4K block can be installed in a 2716 and run in the controller without needing to change any addresses at all!

If you've ever tried to develop a small controller without tools like these, you'll know why I'm so enthusiastic about them. Get more information from R.J. Brachman Assoc. Inc., POB 1077, Havertown, PA 19083 (phone 215-622-5495).

Pentominoes — The Ultimate Demo

Every so often a non-computer type comes over to my house and our conversation may casually turn to the subject of computers. If I mention that I have a computer, he'll eventually want to see it in action. Unfortunately, watching an assembler or an editor doing its thing seldom excites the unknowing onlooker. As a result, I have been searching for the ultimate demonstration program. And... I think I just may have found it.

The "ultimate demo" should not require any input from the onlooker and needs to show how powerful the computer is in solving problems.

Pentominoes, a program from the 6502 Program Exchange meets these specifications very nicely. Pentominoes is the computeriztion of a jig­saw puzzle that has fascinated and frustrated math and logic types for years. The puzzle consists of 12 pieces that must be fitted together to form a rectangle. Each of the pieces represents one of the twelve possible patterns that can be assembled with live unit squares.

For example, here is one possible combination. There are eleven others.

Since each pattern consists of 5 units and there are 12 such possible patterns, the total area of the rectangle is 60 units. A 6 by 10 arrangement has been popular with puzzle solvers, but, other arrangements (5 by 12, 4 by 15, and 3 by 20) are also possible. The 3 by 20 seems to be the most difficult of the possible rectangle arrangements. According to the program documentation, out of 1,000,000,000,000,000 possible placement combinations of the 3 by 20 rectangle, only 2 solutions exist.

Pentominoes is a 6502 machine language program that solves the jigsaw puzzle by trying all possible combinations of the pieces for a given rectangle arrangement until it finds a combination that fits together. The desired rectangle size can be chosen by the user as well as whether all, some, or none of the attempts are displayed on the users Ascii output device. Modification information, as well as a complete source listing, is provided to enable you to configure Pentominoes to just about any 6502 system/terminal combination (including memory mapped video).

To let Pentominoes be displayed on any Ascii output device, each pattern is represented by a particular combination of letters arranged in the same pattern.

For example, the cross pattern is represented by the letter 'A' in the same pattern.

On my Hazeltine 1500 terminal, Pentominoes clears the screen and homes up the cursor every time it prints an attempt. Since the terminal runs at 9600 baud with KIM, and the attempts are happening at about 2 or 3 times per second, it looks like an animation and is quite spectacular to view.

Pentominoes costs $15 and is available for KIM, SYM, AIM, AND TIM systems at memory locations $2380-$2801 or $0380-$08A1. Or send $1 for a complete catalog to:

6502 Program Exchange
2920 Moana Ln.
Reno, Nevada 89509