Original URL: http://www.theregister.co.uk/2009/05/01/s100/
Love on the buses: The S-100 and me
An illustrated affair
This Old Box Although the IBM PC had been released in August of 1981, the system of choice for true geeks in those days was a home-brewed computer based on the S-100 bus architecture.
I may have not been a bull geek in those days, but I was working on it - so I built one in 1982. It served as our family's computing workhorse for a few years, even after it was joined in our home office by an Apple Mac in 1984.
The S-100 bus was an outgrowth of the Altair 8800 of the mid-1970s - and, no, I'm not going to call the Altair 8800 the "first personal computer". There are so many competitors and such a vague history surrounding that claim that I'll let you folks dig into that contentious subject on your own.
First or not, the Altair 8800 did give rise to a bus technology that was eventually standardized - as much as anything was standardized in those early days - into the S-100 bus. Much of the popularity of the S-100 bus can be credited to the efforts of George Morrow - one of the true greats of the early days of personal computing - and his S-100 Bus Standards Committee.
It may not have been pretty, but it was a business powerhouse
Supported by broad range of systems, the S-100 bus made assembling your own system a relatively easy chore. First you opened up the back pages of Byte magazine, found an enclosure with enough slots, bays, and power that you might need, and wrote a check. Then you shopped for cards, drives, and cables.
Here in the San Francisco Bay Area, that latter chore was decidedly more enjoyable, as the quest led me to the San Jose Swap Meet, where companies and individuals put up makeshift tents or backed-up their pickup trucks, and sold everything from chips to cards to cables.
Inside there's plenty of room for cards, drives, and power supply
I recall that when I asked the guy from whom I bought a bargain $300 64KB RAM card - out of the back of his truck, by the way - about his warranty policy, he simply laughed. The suits hadn't yet tamed Silicon Valley.
So here's the system that I assembled, and which has been languishing in my basement since the early 1980s. Some basic specs:
- Size: 22 by 20.75 by 10.75 in. (55.9 by 52.7 by 27.3 cm)
- Weight: 77 lbs. (35.4 kg)
- 8-bit processor: 6MHz Intel 8085
- 16-bit processor: 8MHz AMD 8088
- Memory: 64KB SRAM
- Storage: Two 1024KB 8-inch floppy drives
- Ports: Three RS-232 serial, one Centronics parallel
- Operating system: CP/M 2.2
- Spreadsheet: SuperCalc
- Word processor: WordStar
- Database software: dBASE II
- Management utility: CP/M Power
- Price: $2,100 (£1,420) in 1982 dollars, or $4,630 (£3,130) in 2009 dollars
Let's put this puppy together
The case that I picked out of Byte from the now-defunct XOR Corporation had a beefy power supply to feed its four eight-inch drive bays and S-100 slots. "Bays," however, is overstated - "holes" is more to the point, since you had to supply your own mounting brackets.
Power is supplied by a huge transformer that feeds equally huge capacitors
The S-100 bus in the XOR enclosure's "card cage" had a dozen slots - a normal amount at the time. I'd seen enclosures with more, and I'd seen enclosures with fewer. Even though I knew I didn't plan to use all the slots, I wanted to leave space for ventilation.
This S-100 bus card cage has room for a dozen cards
Installing cards was a snap - literally. You simply pushed them down into the slots at the bottom of the cage. First, though, you had to dig through opaque manuals and discover exactly how to set the cards' myriad jumpers and DIP switches - and if you don't know what a DIP switch is, consider yourself lucky. And young.
Interestingly, I discovered that the order of the cards affected how well the system ran - latencies and timing issues, I assume. Much of computer assembly in those days was done by the seat of one's pants.
At the base of the S-100 card cage are 100-pin slots
Although there were a number of reputable S-100 card companies in those day - meaning folks who actualy believed in such niceties as warranties - I was partial to Bill Godbout's CompuPro line, having used his machines at work. I could just as easily have gone for cards by Cromemco, California Computer Systems, or some other, but I stuck with what I knew.
The CompuPro CPU 8085/88 card - pick a processor
The CompuPro CPU 8085/88 (PDF) was a dual-processor card that contained a 16-bit AMD 8088 and an eight-bit Intel 8085. You could switch back and forth between the two in software, thus avoiding popping the case open and setting a jumper every time you wanted to switch.
AMD 8088 (left) and Intel 8085 - notice that each chip has just 40 pins
The 8088 was essentially an 8086 that could deal with the eight-bit S-100 bus. Its combination of 16-bit insides with an eight-bit approach to the outside world made it a good chip for the S-100 bus, offering a convenient way to use an eight-bit file system like CP/M 2.2 and still develop 16-bit code.
The CompuPro Disk 1 card supports both 8-inch and 5.25-inch floppies
For a floppy controller, I chose the CompuPro Disk 1 (PDF) to manage my dual 8-inch Qume floppies. The Disk 1 could also work with those new-fangled 5.25-inch disks - which (trust me on this one) were called "minifloppies" - but I preferred the eight inchers so that I could be compatible with the eight inchers we had at work.
The two 1024KB 8-inch Qume floppy drives are industrial-strength beasts
My Qume drives were of the "double density" variety, meaning that they could store 512KB on each side - a mind-blowing 1028KB per floppy! Who could ever fill that much space?
The CompuPro Interfacer 4 I/O card supports parallel, Centronics, and three serial ports
The CompuPro Interfacer 4 enabled me to connect my system to my 80-character-by-24-line Freedom 100 monochrome (green) CRT terminal - and yes, they were called terminals in those days, well before terminals morphed into monitors which morphed into displays. I also hooked up my Epson MX-80 dot-matrix printer through one of the three serial ports.
The COEX RAM card: 64KB in 32 chips
Being an eight-bit processor, the 8085 - my usual processor of choice - could directly address only 64KB of RAM. Bill Godbout and his crew had created a Memory Manager scheme that would allow it to access up to 16MB, but that was an unthinkable RAM allotment that would have run many thousands of dollars. For WordStar, SuperCalc, and dBASE II*, my 64KB was plenty.
CompuPro M-Drive/H disk emulator: 512KB of virtual-disk luxury
A stroke of great good fortune landed a CompuPro M-Drive/H (PDF) in my lap - and then into an S-100 slot. This pricey item carried 512KB of memory that looked to the system as if it were a floppy drive - although an exceptionally speedy floppy drive. All you had to do was remember to write anything in it back to a physical floppy before you shut your system down.
Theoretically, an S-100 bus doesn't need active termination - but it certainly helps
Finally, the least expensive but most welcome part of my system: a CompuPro Active Terminator card. After I had first assembled my system, I couldn't get it to operate at any decent level of reliability. But then a friend tipped me off to the fact that in S-100's bus topology, signal stability is key. And signal stability could be guaranteed by actively terminating the bus.
The Active Terminator wasn't in the CompuPro catalog at the time, but I assumed they must have had some sort of active-termination device available. So I drove over to the CompuPro headquarters on the grounds of the Oakland Airport, talked to Bill himself, drove home with a $45 Active Terminator card, and lived happily ever after. ®
* George Tate, founder of dBASE II's publishing company Ashton-Tate, simply tacked the pulled-from-thin-air name "Ashton" onto his own to give his company's name some gravitas. Also, there was never a dBASE I - Tate gave his software the "II" suffix for the same reason that he added Ashton to his company's name. Had he been active in the over-hyped 1990s, Tate would have named his software dBASE Pro II Deluxe Studio Premier Gold Edition X.