textfiles/bbs/CBBS/history.cbbs

425 lines
21 KiB
Plaintext

--
Item 20: To Ward & Randy: History of CBBS???
by John J. Welch [jjw] at Sun, Nov 9, 1986 (18:35) {7 10}
I'm kind of curious to find out some history from the people who made it
happen in the first place, and here we have a real good opportunity to do so.
Ward and Randy 'invented' the idea of CBBS, and spawned the whole gaggle of
bbs's we enjoy today. Ward, Randy, what gave you the idea that this might work
in the first place? Did you ever hope (or suspect) that it would catch on so
wildly? Were you really visionaries with a date with destiny, or just a couple
of (old usage of the word) hackers having fun?
10 responses total.
-> 1 Ward Christensen [ward] (3) on Tue Nov 11 22:29:00 1986
Have you seen the Nov '78 BYTE article, that spelled out the beginnings.
I have told it so many times I'm burned out - but I don't think I ever put
it down, such as to where I could upload it here.
-> 2 Tim Allman [aztinc] (3) on Wed Nov 12 19:10:55 1986
Might not be such a bad idea to tell it one more time - just to get the
recordd straight and to provide an original story not filtered through a
journalist.
-> 3 John J. Welch [jjw] (4) on Wed Nov 12 19:34:25 1986
I just thought it would be rather appropriate here, since both Ward and Randy
are available to let people know. Also, I have this image of Ward having a
hard time walking when it rains - he keeps walking *up* the
raindrops...
-> 4 Ward Christensen [ward] (42) on Thu Nov 13 01:54:01 1986
OK, here's the "brief" (read: 1:40 AM on a weekday night) version:
Randy and I were both 'snowbound' on the 16th of January '78. I had
the CACHE (Chicago Area Computer Hobbyist's Exchange) "hotline" in my
basement. I was concerned that we weren't getting enough newsletter
material for the club, and thought about the idea of putting a system
on that line for people to call into, and MODEM in articles. SO, I called
Randy, and he replied:
(1) "We'll do it at MY house since I'm in Chicago and it wouldn't be a toll
call to most people;
(2) "Just the two of us will do it, becuase if its a club project, it will
take forever and/or never get done. {Gross paraphrase}
(3) "I'll do the hardware, you do the software. When will it be ready?"
So, I started doing the software hacking, and he the hardware hacking.
Let me back up a bit to say "why" it happened:
(1) "hobbyist" modems had come of age - the Hayes internal S-100 modem
(2) there was a standard hardware bus (S-100) from which you could build
a reasonably economical "kludge" system - i.e. so-and-so's memory board,
so-and-so's disk controller (Tarbell Single density, 241K/8" drive),
such-and-such a serial board (Processor Technology's 3P+S), drives (Innovex
single sided 8"), video display (" " VDM-1, 64 x 16), and a kludge
keyboard going into the parallel port of the 3P+S.
(3) there was a standard "software bus" - CP/M-80.
---
So, I cranked out about 3 pages of MBASIC code that would "vaguely simulate"
the CBBS system, i.e. accept your name, display a message, etc (all from
faked-up msgs in memory).
As Randy got the hardware together, I cranked out the 8080 assembler for
the software. Hardware/software wise, it eventually (to date) grew to a
hard disk based S-100 box with 2400 baud modem, and about 20,000 lines of
8080 assembler.
That's really it in a nutshell - we don't think anyone else had come up
with a system anything like it before - and certainly no one had the
longevity we did - (thanks, Randy). We are now looking to have it 'survive'
by being moved to a PC. I have "just barely" gotten it runnin on a PC with
a V-80 8080 emulator chip, but am not happy with the function, etc - the
hassles of not really having the modem and console parallel I/O like I did
for the CP/M machine. Don't know what is best. For example, can't drop out
of CBBS into PC-DOS and run remotely - it just isn't there. I need to perhaps
hack up a character device driver which will parallel the modem with the
local output, to make remote operation of it more practical.
Well, that wasn't as brief as I had expected, . . any questions?
-> 5 Art Clemons [ac] (5) on Thu Nov 13 10:06:48 1986
You have a way of making years of labor, frustration, caller idiocy and expense
so short and simple that anyone could have done it. Show some more pride, you
did something that no one else had done as cheaply or efficiently and inspired
enough imitators to fill a small town phone book as well as at least 20 large
for pay imitators like Compuserve etc.
-> 6 Ward Christensen [ward] (5) on Fri Nov 14 23:23:49 1986
Right, "anyone could have done it". I feel even more strongly that way about
XMODEM - It was no big deal, I just happened to be first. It wasn't great,
or even very good - but it was first.
Yes, the "user frustrations" were significant.
-> 7 Bill Wisner [bdw] (2) on Sun Nov 23 19:27:33 1986
CompuServe came before CBBS.. as a business-type system. It didn't get into
consumer territory until after CBBS came along.
-> 8 Randy Suess [randy] (2) on Mon Nov 24 09:18:59 1986
Don't believe so. I seem to recall Cser{_ve being discussed long
after CBBS>
-> 9 Bill Wisner [bdw] (1) on Mon Nov 24 17:21:34 1986
No; it was around.. but not nearly so big. And much more primitive.
-> 10 Art Clemons [ac] (3) on Mon Nov 24 23:20:30 1986
You mean when I lived in Columbus OH, the employees of compserve lied to me!
I'm shocked, I thought they only lied about how hard it was to steal a pass-
word!
Respond or pass?
Ok: r 32
--
Item 32: History: Me, Micros, Randy, Xmodem, CBBS (LONG)
by Ward Christensen [ward] at Sat, Mar 18, 1989 (00:38) {163 24}
Overly-long item of my personal history, meeting Randy, the history of the
XMODEM file transfer protocol, CBBS, and the reason you unscrew Oreo
cookies.
Graduated form College (1968) and went to work for IBM. Asked "Where are
the computers". "We don't have any". Hmmm. Guess all the "iron" is out
in the customers.
Early 70's: got interested in having my "own" machine to program. Had
"pinups" of 16-bitters on my walls. TI had a 980-A, which was a 16K (32K
bytes I think) 16-bit machine with - gee golly - two 300 baud cassettes and
a thermal printer, and a control panel right out of the Enterprise. $10K.
Jan '74 went to couple hour class in NYC on "Large Scale Integration".
Teacher held up 8008. Greedy Ward asked "Can you make a real computer out
of one?". "Yep". "What do I need to know to understand it?" "TTL".
"Huh?".
Summer '74: bought TTL (Transistor-Transistor-Logic) books, old boards,
started blowtorching chips off of boards, and hacking with them.
Subscribed to "Experimenters Computer Systems" a mimeo-ed typewriter sheet
type of newsletter. By Carl Helmers. Later turned into BYTE subscription.
Got plans for a cassette interface (to nothing special) from Don Tarbell.
Began designing my own computer, and breadboarding pieces. Hardware random
number generators and all that stuff - home-brew D-A converters so I could
put my random numbers on the oscilloscope - x vs y - if I got "snow", it
was a good random number generator. (Things were easier in those days!)
(Why design my own? Because I became convinced the 8008 wasn't powerful
enough to be the basis for a serious computer).
'74: wrote letter to HeathKit. Told 'em they could start something big if
they came out with a home computer kit - and I KNEW all the pieces were in
place to make it happen. Answer came back "we have a computer - the Analog
computer". They didn't catch on, didn't have a 'bit' (haha) of foresight.
Finally was able to stop pretending I could actually design and get my own
scratch-built computer working - fortunately, the Jan '75 issue of Pop.
Electronics had the famous Altair 8080 on the cover, and I was hooked.
Hesitated, then found ONE other guy - an IBMer in NYC, who had ordered one,
so did so also ("oh well, at least there will be two of us).
Bought a 16K machine; hacked a selectric terminal/typewriter interface (hit
a key, see what comes out the wire by looking at the oscilloscope; program
the micro in hand-assembled machine language, toggled in via the front
panel, to generate a signal - hack until the computer generated signal
matches the one that came out of the selectric - then hook 'em together.
(A software UART for those of you who know what I mean - though I had no
idea that was what I was doing).
Hack a floppy disk interface together, too (I had found a strange but not
too hard to interface "flying head floppy" in ComputerWorld).
Met Randy prolly late '75 at Cache - I went to most meetings starting with
the 2nd which was Sept '75. He and I worked with Tarbell cassette
exchanges for a while - built-in assembler, editor, etc.
Saved stuff to cassette by a speaker and microphone on a 300 baud acoustic
coupler.
Met Rob't Swartz - now of Mark Williams company fame - he had CP/M in '76.
I bought a license in Jan '77 and took my diskette to his house. He showed
me the CP/M editor and assembler and I wrote a program to "beep" the
contents of my floppy to cassette via a modem. (the modem wouldn't
generate the carrier without hearing another, and Bob happened to have a
cassette of modem "stuff" around, so we played it into the modem to get it
to generate the tone). Used 128 byte blocks and a checksum - the bare
essentials for XMODEM though I didn't think of it as a protocol at the
time.
Sometime around there Randy also got CP/M, but HE got the "real thing" -
IBM format 8" diskettes.
I needed a way to swap stuff with Randy and others - so on late summer '77
wrote MODEM.ASM and tossed it into the CP/M users group.
That program became the singly most modified program in computing history
due to the many hardware environments in which it had to operate (no
standards - no "IBM" to say where serial ports should be addressed, etc).
Dave Jaffe wrote a routine "BYE" to allow remote users to call in to your
CP/M system and operate it. I put up a 70K/diskette Northstar system with
BYE and my modem program. Keith Peterson would call from Michigan and fill
the diskette in one night or so. I got tired of that and took it down.
Turns out that was - as others say - the first "remote CP/M system" since
apparently Dave never put up a system for any length of time.
Keith thought there should be an easier way to run MODEM than having to
remember to use a "Q" option (Quiet - i.e. don't chatter about block
numbers to the console) so he stripped MODEM down and called it XMODEM.
Since that was a more "recognizable" name, that stuck as the protocol name.
Others hacked MODEM/XMODEM to add CRC, multi-file transfer, etc. Chuck
Forsberg wrote it in C, and for Unix -became RB and SB, YAM, etc.
Chuck's 1K protocol as implemented in rb/sb needed a name, so I suggested
he call it "Ymodem" which he did. He later wrote Zmodem, a protocol to
send continuous blocks with asynch ACKs to allow max transfer throughput.
================
There was a group called PCNET mostly out of California who were doing a
lot of talk on ARPANET about building a network of microcomputers. They
were great at planning - something I've always been terrible at - but they
weren't putting any HARDWARE/SOFTWARE together. I was frustrated by the
lack of DOERS and lost interest.
January 16, 1978 was a very snowy day. Couldn't get dug out, so called
Randy. I had the CACHE message recorder phone line in my house, and Hayes
had "invented" the hobbyist modem.
I called Randy and talked about putting up my Vector machine (a 2nd S-100
box I'd bought to take around when asked to give talks on microcomputers)
on the CACHE line as a way for people to call in with newsletter articles.
Randy said "no" - "you're in the burbs, I'm in the city - we'll put it in
my house - and forget the club, a committee project will never be done -
just the two of us - you do the software I'll do the hardware. When will
the software be ready?" heh heh.
Without Randy's drive and ambition, it would never have seen the light of
day.
I prototyped a bit of a dialog in Basic, patterned after (1) the cork board
bulletin board at CACHE meetings, and (2) the kind of BB you see at the
Jewel - you know, garage for rent, dog grooming, etc.
Began writing the real bulletin board program (Called CE.C by Randy -
egotistically, the "Computer Elite's project C - Communications"). Randy
put together the hardware.
Very early in Feb, started testing. No one believed it could be written in
2 weeks of spare time so we called it "one month" and to this day declare
Feb 16 as the birthday.
================
The PCNET people became very interested in CBBS - and they wanted a copy so
they could start talking about PCNET by using CBBS (heh heh). Conversation
with Dave Caulkins went like this: "I guess I'll charge $25 for CBBS - to
keep people from bugging me (if it were free), yet making it cheap enough
for anyone to buy". "No, that's crazy - charge at least $50". OK, so $50
it was. I was concerned about "conflict of interest", so let Randy get all
the money (what, 200 sales or so, Randy?) He had after all put up all the
money - all I'd put up was time. (Uh, I seem to recall from the Nov '78
BYTE article that I did buy a bit of the hardware also).
That's about it. XMODEM was born of the necessity of transferring files
mostly between Randy and myself, at some means faster than mailing
cassettes (if we'd lived less than the 30 miles apart we did, XMODEM might
not have been born). CBBS was born of the conditions "all the pieces are
there, it is snowing like @#$%, lets hack".
Hope you don't mind this long monologue. (I thought it was monolog, but
my Word Finder Plus screen checker said monologue).
================
Unscrew Oreo Cookies because - well if you don't know then you haven't
done it.
24 responses total.
-> 1 Meg Geddes [meg] (1) on Sat Mar 18 03:02:38 1989
That was interesting! Thanks for posting it.
-> 2 Michael P. Andrews [mikea] (2) on Sat Mar 18 10:20:02 1989
Great! Have you noticed that there's a lot of new interest in you two pioneers?
We don't have a Mt. Rushmore in the midwest!
-> 3 Ward Christensen [ward] (11) on Sat Mar 18 11:47:11 1989
Waitaminit. There's nothing to it. I keep being amazed that people
actually think there's something good or useful about xmodem! It
is scary. It is as if you sneezed and threw off the aim of an assassin,
and they made you a hero or something. A typical weekend programming just
HAPPENS to be something apparently not done before, and suddenly fame.
People keep asking me if I don't regret marketing XMODEM. Ya, like
the guy marketing his sneeze. Real bucks in that!
CBBS on the other hand, WAS a significant effort by Randy and me - we
really did set out to 'invent' something - planned, strategized, etc.
Q: How can you tell if you set out to invent something?
A: If you're driven to giving it a name!
-> 4 Richard Todd [rmtodd] (8) on Sat Mar 18 13:17:55 1989
Very interesting. I always liked reading this kind of article, on the
history of computing.
And yes, Ward, there is something good and useful about XMODEM. Like it
or not, it's the closest thing to a universal protocol standard we've got
(mostly by virtue of being the first to be freely distributed). In lots
of cases there are *better* protocols to use, but it's a rare case these
days when you don't have XMODEM to fall back on when two systems don't have
any other protocol to fall back on.
-> 5 Marty Dippel [marty] (3) on Sat Mar 18 13:39:51 1989
Thanks for the posting, Ward. I know I've been bugging you and Randy for
days now asking about this, and this really satisfies my curiosity. Plus,
now that it's posted, you can refer all subsequent inquiries here!
-> 6 dawn [dawn] (1) on Sat Mar 18 18:45:30 1989
We're proud of you, Ward...and of Randy, too.
-> 7 John C. Sucilla,Party God [jcs] (1) on Sat Mar 18 20:29:17 1989
Yep, we are.
-> 8 David Tamkin [dwtamkin] (1) on Sun Mar 19 00:58:39 1989
proud of you and grateful to you
-> 9 Ward Christensen [ward] (1) on Sun Mar 19 23:18:58 1989
{blush}
-> 10 Mr. X [ward] (32) on Sun Mar 19 23:29:36 1989
Well, I DO wish I'd thought of wrapping the carry around when I computed
the checksum!
For those of you who don't understand what I mean - the XMODEM
checksum was done by simply "adding the bytes". The sum, as a
1-byte number, was then sent and the receiving program compared the one
IT computed with the sent one. Trouble is, 8-bits soon overflows when
adding 8-bit values. One day I found a file that was hosed, yet had
come across with no errors. What had happenes was that one 'high bit'
(hex 80) got zapped, and TWO hex-40 bits - the sum of 80 + 40 + 40 is
100 hex, but only 2 hex digits being stored in a byte meant the 1 was
'tossed' or 'ignored'.
(the solution to this problem was the addition of a full 16-bit CRC to
the protocol, by John Mahr and others)
Every now and then I get a kick out of reading "rewritten history".
Often, technical descriptions are strange, also!
My description of the XMODEM protocol briefly goes like this:
- send an 01 (SOH = Start of Header)
- send a sector number (starts out 01)
- send the ones complement of the sector # (FE hex for sector 1)
- send 128 bytes of data
- send the 8-bit checksum of the 128 data bytes
What I found, was people saying that the checksum was computed on the
ENTIRE block! I was just blown away that someone could MAKE UP things
as technically detailed as "how to compute the checksum".
But GET THIS: it WORKED! heh heh. The sector # and sector number
ones complement always add up to FF hex - by the definition of ones
complement, and since an SOH is always a 1, the 3 header bytes always
add up to 100 hex - i.e. being kept in an 8-bit byte, then "disappear"
(i.e. are 00) (grin).
Others have said how to do it in basic, and they say thing like
subtracting things, and so on - way off base. Frustrating.
-> 11 Mr. X [ward] (1) on Sun Mar 19 23:32:22 1989
Gee, I'm wasting space! The CBBS history was already in item 20! Sorry!
-> 12 Tor M. Kingdon [tkingdon] (4) on Sun Mar 26 21:49:03 1989
Wow. I'm new in this whole bbs thing, and I'm just overwhelmed that I am
actually communicating with someone who could sneeze as well as Ward. But
I'm curious, I've unscrewed Oreo's before and I've never known why, could you
help me out on this one?
-> 13 Mr. X [ward] (2) on Mon Mar 27 22:11:01 1989
(drift) Why did my append #10 show up as new today, 8 days later?
Why unscrew Oreos? Why not put Ketchup on Hotdogs! Tradition.
-> 14 Meg Geddes [meg] (3) on Mon Mar 27 23:48:52 1989
Because you don't see your own response till someone responds to it.
Try doing "help set meto" and "help set nometo", to set it the way you
want.
-> 15 Randy Suess [randy] (3) on Tue Mar 28 08:05:09 1989
Huh? It is a federal law that hotdogs have to have ketchup on them.
Local laws cover oreo twisting. Lot more of that being done on
North Broadway, however...
-> 16 John C. Sucilla,Party God [jcs] (2) on Tue Mar 28 08:58:20 1989
Does the law say anything about cheese on hot dogs? I like cheese,
hate ketchup.
-> 17 Michael P. Andrews [mikea] (6) on Tue Mar 28 10:00:29 1989
See the Clint Eastwood/Dirty Harry movie "Sudden Impact":
.... nobody, but nobody, puts KETCHUP on a hotdog!"
At Be Be's on Milwaukee if you ask you ketchup on the hotdog they won't do it-
they make you come up and put it on yourself "what you're doing is a sin!".
-> 18 Meg Geddes [meg] (1) on Tue Mar 28 17:17:24 1989
wait, I'm confused, which conference is this again?
-> 19 Tor M. Kingdon [tkingdon] (2) on Tue Mar 28 18:52:40 1989
I thought it was CBBS, for Catsup, Buns, But what about twisting the oreo
double Stuffed?
-> 20 Video Warrior [crazyted] (1) on Thu Mar 30 17:22:44 1989
Nobody that's over six years old puts ketchup on hot dogs.
-> 21 Randy Suess [randy] (1) on Thu Mar 30 18:21:54 1989
Ok, drift off.
-> 22 BBS man [phil] (3) on Wed Apr 5 23:01:39 1989
I think that was an interresting history. Heck, if there were no BBS's,
then we would be buying the ol' Radio Shack modem II (300 baud autodial
$249.00) just cto call CompuServe and pay even more money.
-> 23 John C. Sucilla,Party God [jcs] (1) on Thu Apr 6 20:29:59 1989
Would somebody please wake phil up?
-> 24 dawn [dawn] (1) on Thu Apr 6 21:39:48 1989
Ha ha ha ha ha
Respond or pass?
Ok: