John Feagans

This article was taken from Rick Melick's Geocities page that has long being infected with malware through the various adverts on the page, visit at your own risk. Or to avoid that, read the copy below.

John Feagans Remembers the VIC-20

- from and interview conducted by Rick Melick on March 18, 1997 


>John, tell me about the VIC-20...

Peddle never had any involvement with the VIC-20.

The Yannes prototype was shown at the June 1980 CES in Chicago. Peddle left Commodore to start Sirius/Victor in August, 1980.

Bill Seiler and I did the Vic-20 hardware software work at the Moorepark advanced R&D facility in San Jose, California. We were ordered to transfer our work to the production engineering group in Santa Clara. The R&D facility was closed in September, 1980 and the people who didn't leave for Sirius, including myself, moved back to Santa Clara, 3330 Scott Blvd.

Bill Seiler left Commodre in November, 1980 for Sirius.

As you know the Vic-1001 was introduced first in Japan. My wife translated the user's manual from Japanese to English and this was the basis of the user's manual Mike Tomczyk worked on.

For the Commodore-64 I developed a music interpretive language which played the SID at the January 1982 CES, the Magic Desk at the June 1983 CES in Chicago on the "Commodore Clipper", and a cheap network using the Teacher's PET, and twisted pairs to C-64's in a classroom.

I went on to Atari where with a team from Digital Research, ported GEM from the PC to the Atari ST, a 68k based machine.

Currently I work for US Robotics, Advanced R&D. I implement ITU protocols for Video conferencing. Some shipping products with my code are the WinModem, "Big Picture" H.324 system, and Sportster DSVD.

Grass Valley Advanced R&D is located an hour northeast of Sacramento in the foothills of the Sierra. We are three hours from "Silly Valley" and recruiting!

You need to look up Bob Russel. He took our code from Advanced R&D and did things like modify the cassette tape routines (with consulting from Chuck Peddle on how the PET cassette worked) and the serial interface to the disk drive and printers. He was part of the production engineering team in Santa Clara and later moved to Valley Forge, then Wayne, and last West Chester. He ported the Vic-20 code to the Vic-40 (aka Commodore-64)

Did you know that the disk drive interface was based off the IEEE-488? That is what Bill Seiler and I implemented on the original PET. When the Vic-20 peripherals were designed we had the Atari 400 as a model of a serial system and hence we altered the parallel IEEE-488 to a serial version with the same handshake lines. It was a software bit banger serial and had horrid performance.

>Yes, here is what is on my page about a 6522 "bug" (the ones PET owners

>also used to get the "CB2 sound") This is from Jim Butterfield.  Is it

>accurate?

"As you know, the first Commodore computers used the IEEE bus to connect

to peripherals such as disk and printer.  I understand that these were

available only from one source:  Belden cables.  A couple of years into

Commodore's computer career, Belden went out of stock on such cables

(military contract?  who knows?).  In any case, Commodore were in quite a

fix: they made computers and disk drives, but couldn't hook 'em together! 

     

So Tramiel issued the order:  "On our next computer, get off that bus. 

Make it a cable anyone can manufacture".  And so, starting with the VIC-20

the serial bus was born.  It was intended to be just as fast as the

IEEE-488 it replaced. 

     

Technically, the idea was sound:  the 6522 VIA chip has a "shift register"

circuit that, if tickled with the right signals (data and clock) will

cheerfully collect 8 bits of data without any help from the CPU. At that

time, it would signal that it had a byte to be collected, and the

processor would do so, using an automatic handshake built into the 6522 to

trigger the next incoming byte.  Things worked in a similar way outgoing

from the computer, too. 

     

We early PET/CBM freaks knew, from playing music, that there was something

wrong with the 6522's shift register:  it interfered with other functions. 

The rule was:  turn off the music before you start the tape!  (The shift

register was a popular sound generator).  But the Commodore engineers, who

only made the chip, didn't know this.  Until they got into final checkout

of the VIC-20. 

     

By this time, the VIC-20 board was in manufacture.  A new chip could be

designed in a few months (yes, the silicon guys had application notes

about the problem, long since), but it was TOO LATE! 

     

A major software rewrite had to take place that changed the VIC-20 

into a "bit-catcher" rather than a "character-catcher".  It called for 

eight times as much work on the part of the CPU; and unlike the shift 

register plan, there was no timing/handshake slack time.  The whole 

thing slowed down by a factor of approximately 5 to 6.", Jiim Butterfield (1997)


I won't dispute Jim Butterfield out of respect, but the main reason we went to the serial cable was connector size and cost. Also we were influenced by the Atari 400 and 800. We had an engineering manager in the R&D lab who did nothing all the summer of 1980 but play games on the Atari 400 we had for evaluation!

My mistake on "software bit banger". Yes the 6522 was a UART, but the whole system was not as fast as the parallel IEEE because of the delay while the thing shifted out.

I don't think the story on Belden holds water either--I still buy IEEE cables for our lab.

The C-64 serial bus had to be slowed down even more because of hits by the video that cause missed data.

--John