[Coco] origins of OS-9
Gene Heskett
gene.heskett at verizon.net
Fri Mar 5 21:37:16 EST 2010
On Friday 05 March 2010, Stephen H. Fischer wrote:
>Hi,
>
>I seem to remember that there was something before OS-9 for the 6800.
>
The 6800 was never on my radar at all Stephen. It was lost in the glare of
the Z-80 at the time, however after carving out enough code to run a
transmitter with it in about that time frame, I came to the conclusion that
the Z-80 was only slightly less drain bamaged than the original 6502.
Warning, long, & rambling, dissertation on cpu architectures follows.
Several cpu architectures I've dealt with and tried to code on that struck me
as potentially good, but then remained in what I would call an undeveloped
state by the makers:
The RCA 1802. A plethora of 16, 16 bit registers, any one of which you could
assign to be the program counter in a one byte instruction, so you could
bypass the subroutine call and return if you liked, by simply writing re-
entrant code, and leaving a register pointing at its entrance/exit address.
It found heavy use in the space and nuclear industry because as RCA's cmos
showcase, it was naturally rad-hard. Its git, the 1805, has found many
sockets over the years, but shares the 1802's pair of Achilles Heels in that
it had no call and return from subroutine facility other than the short
routines in the programmers instruction manual, and all data moves were both
limited to 8 bits per instruction, and had to be loaded into the accumulator
and then placed in the high or low byte of the chosen 16 bit registers by
separate instructions. So it took 4 instructions to load just one of those
16 bit registers. Oh, and it had built in dma facilities, interrupt driven.
I still have both audio cart & paper copies, and some of the schematics, of
the machine I built to do a job better than humans could do it, at KRCR in
Redding CA. That code, and that machine were still running 15 years after
I'd gone on down the road, driven by a bitch that has since left, not capable
of recognizing the pot at the end of the rainbow if she got a foot stuck in
it.
The Z-80 was my next target. It had calls and returns ok, but if you wanted
to have it conditional, the branch had to be within the same memory page of a
signed 8 bit jump. Zilog's support was minimal, and it was buggy, so code
would run today, but not tonight. What can I say. Thumbs down. The ATX kit
I built and installed was pulled out and a dumb remote control put back in by
the next 'engineer', who probably wouldn't know a cpu from a cup if he
spilled it.
Next up was the TI-9900, an unusual critter if there ever was one, backed by
some of the best programming brains in the business at the time. Unusual
because it used pieces of system ram as an image of what a cpu looked like.
Having only an extremely elementary program execution unit, even its program
counter was a 16 bit wide memory location. Need to do a subroutine? Reload
the execution unit with a new memory address, which you had presumably
preloaded with the contents of the 'registers' needed to do that function.
It was very very capable and I believe they even made a pass at a 32 bit
version of it, but its execution speed was limited by the speeds of the dram
chips available then, typically 250ns stuff. So it got left behind
eventually.
Almost by accident, and after I had bought a TI99/4A, intending to build me a
real computer, I ran into the cost of the first step, the expansion box.
IMO, not very realistically priced for what it was. An alky, who was
generally a good friend, was working for the shack back then and showed me
the old grey ghost, with its 6809. I got one, and discovered the 6809, and
nearly everything I felt I needed in a cpu was there except dma. But the way
the memory was shared between the cpu and the display made most of that moot.
You could actually get stuff done! Helped in the early days by Jake
Commander and his Chrmakey editor that with a bit of programming trickery,
lived above the disk basic roms. Shortly after that, the alky intro'ed me to
os9 level 1.00. Case closed, I had found both the machine and the os that
let me do those big things with a little computer that I could actually
afford.
I wrote, in Basic09, a much better 'E-DISK' than GVG was selling at the time
for $20,000. That machine and that program were in daily use, several times
a day yet when I retired in 2002, but its days were numbered because the GVG
switcher it supported had parts that were by then made out of pure
unobtainium, and I was busy putting newer devices it it to keep it going.
But I was the only one able to do that, so it got replaced, and they gave me
that machine to take home. But in today's times, a computer and a program
that are in steady use for 15+ years, says as much for the platform as it
does for the programmer.
Sure, eventually I got an Amiga because we were using them at the tv station
and it did my online stuff, serving as a bridge between the coco and all that
talent out there on the web. And eventually the amiga was replaced by an x86
box running Red Hat 5.1. And linux is still serving as the bridge between
the coco3 and the net, but the coco3 is now relegated to a computer hutch in
the basement, with its monitor turned off 90% of the time, but running and
available to this machine right now. 2 shells are running with minicom on
this end.
>FLEX had been in existence for the 6800 for some time and perhaps something
>else.
I looked at that, about '87 or '88 I think. Single tasking, so I turned away,
too much like dos.
>I think that I have the 68 micro journals starting just before OS-9 was
>announced in an ad.
>
>Look in the scanned copies in the Archive.
>
>Have these issues been looked at by anyone?
>
>SHF
>
And that's basically how I came to be here. And its been one heck of a ride.
Thanks for reading. ;-)
--
Cheers, Gene
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
We are sorry. We cannot complete your call as dialed. Please check
the number and dial again or ask your operator for assistance.
This is a recording.
More information about the Coco
mailing list