[Coco] moving files on bootup >> leading to that CNC Coco machine

Gene Heskett gene.heskett at verizon.net
Sat Feb 2 21:42:19 EST 2008


On Saturday 02 February 2008, Kevin Diggs wrote:
>> Gene Heskett said the other day."a coco doing actual work!"
>>
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> http://five.pairlist.net/mailman/listinfo/coco
>
>I remember reading this. Don't think it was Gene though. He has
>"stitched" various home brew do-hickies together at the TV station. At
>least one of which was a coco.
>
Yup, guilty as charged, that was me.  When your market is in the middle 160's, 
there isn't $20k available for this or that handy doohicky, so the GVG EDisk 
we never had was emulated better than the original by a coco2.  Lots of our 
graphics were at one point, generated on an amiga, and inserted live by an 
amiga gismo called a supergen.

When I had time in between fixing lenses the newsies shortened up on 
doorframes going by at the courthouse, or the constant stream of surface 
mounted capacitor failures in dvc-pro vcr's, or tape path rebuilds in 
u-matics before them, I had a tendency to look at the labor intensive parts 
of commercial production and see if I could reduce the labor, or improve the 
quality of the product.

I learned that lesson, and how well it could pay off when I moved to CA the 
2nd time, to KRCR in Redding CA.  This was the heyday of the u-matic machine, 
and its copying losses per generation were pretty bad.  The production 
method, because there was a microtime automatic station break machine 
involved, meant that the finished commercial had to be dubbed to a copy of a 
master tape that had all the cue tones in the right places to trigger this 
microtime gismo, another generation loss & the on air quality, to be blunt, 
sucked.

Reasoning that if those tones and a fresh academy countdown leader could be 
installed directly on their finished product, saving that last generation 
loss, I proposed to build a gismo to do it.  At that point I'd never seen any 
of the small computers in action.  Not even a ts-1000 timex!

The GM jumped on it, probably knowing my $1K estimate was going to be 
exceeded.  So I searched around and ordered a Quest Super Elf board at about 
$250 for starters.  I played with it for about 3 weeks, figuring out how to 
program it through its hex monitor, realized I was going to need more than 
its 256 bytes of ram & ordered an S100 backplane, bigger power supply 
makings, and a S100 based memory board kit with a whopping 4k of static ram 
on it.  And 3 of the vector S100 breadboards plus a case for it all.

First I needed video, but very limited video, 2 digits and a decimal point and 
in huge sizes.  So I built a circuit that scanned a nibble, decoding it into 
a line or a bar such that I had the ability to do this:

X XXX X XXX X but with no space between the X's, so an 8 would look like this:

 XXXXXXX	dma byte/nibble 1 per field, repeat for 3 scan lines
X        X	dma byte/nibble 2 per field, repeat for 50 scan lines
 XXXXXXX	dma byte/nibble 3 per field, repeat for 3 scan line
X        X      dma byte/nibble 4 per field, repeat for 50 scan lines
 XXXXXXX	dma byte/nibble 5 per field, repeat for 3 scan lines
----------	dma byte/nibble 6 per field, clear data, repeat till next fields 
first byte/nibble.

This was decoded by a 4 to 16 decoder, with diodes to enable the left line, 
left bar, center line, right bar, and right line, with the decimal point 
generated during the 5th bytes time.  The right digit was made by switching 
the data into the 4 to 16 to the other nibble of the byte.

During the search for accurate time in view of the ntsc frame rate of 29.97 
per second, I more or less accidentally stumbled on a drop field algorithm 
that was far more accurate over extended periods of time than the usual drop 
frame time code was and it was actually easier to do.

I also built all the I/O to control the machines and the tone generator, and a 
control pendant the production people could carry to the machine while using 
it.  I also put a jell cell battery in for power failure protection, and 
permanently borrowed an old, off speed cart machine to save the program to 
and reload it from.

This was all in 1978-9, and the last time I talked to the Chief there, in 
1994, it was still being used, so that's another case of something I built 
having long term usability.  They have a paper copy of the code with liberal 
comments in case they need to modify time delays for new machines, and I have 
a copy of it here too, one of my 'keepsakes' I guess..  FWIW, I still had 
about 2.5K of that 4k of ram left when I was finished with it.  And about 
half of what I used was lookup tables for the character generator data.

The RCA 1802 cpu is a strange cpu at first, seemingly missing some things, and 
has a data flow bottleneck in that while it has 16, 16 bit registers in it, 
any one of which can be made the program counter or stack pointer (or dma 
source, it has a builtin dma controller), but data headed for any of those 
registers must first be loaded to its single 8 bit accumulator, and then 
moved to the appropriate byte of the 16 bit register being loaded.  Ditto for 
saving a register.  But I put a flag write in the program that was set when 
the next fields data was complete and all control functions done, cleared on 
the falling edge of vertical drive which started that fields processing, set 
when finished, and it was always done by line 21, so it sat there doing 
nothing but the 6 bytes of dma for the next 200 lines of each field.  
Efficient hex code does have its rewards. No assembler, just the hex monitor, 
so loading the program from scratch was a bit like flipping switches on the 
Altair 8800. 8-)

This was somewhat similar to the TI 9900 processor family, except that 
processor's registers were all in external memory, which made a context 
switch a 1 integer read which reloaded the pointer to its register image in 
ram to point to the new register image.


>kevin
>
>--
>Coco mailing list
>Coco at maltedmedia.com
>http://five.pairlist.net/mailman/listinfo/coco



-- 
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)
Chinese saying: "He who speak with forked tongue, not need chopsticks."



More information about the Coco mailing list