Commodore Trivia
Home  Weblog  Research Kitchen  Contact 
All You Ever Wanted To Know About Commodore Main Menu
Home > Trivia #A8A

C64 Chronology
  A comprehensive chronology of the Commodore 64
Zzap! 64
  Fan site for the classic C64 mag
Lemon 64
  Awesome 64 games site
  A C64 on your desktop
RKO C64 Remixes
  Amazing site of C64 SID remixes

Who wrote this stuff?
This trivia was originally written by Jim Brain as part of the now long defunct C= Hacking Magazine, but happily Jim has kindly agreed to let me reproduce it in HTML-ized format for retro computing fans everywhere.

If you are interested in seeing the Commodore Trivia digests in their original form, take a look at this website.

For those who are interested, these pages were generated from the original text files using Perl and Velocity (and a nice template originally found here)


	On a PET series computer, what visual power-on indication will tell
        the user whether the computer has Revision 2 or Revision 3 ROMs?

	Revision Level 2 ROMS (the ones with more bugs) power up with:
        *** COMMODORE BASIC ***, with '*' in place of the more familiar
        '#' character.  

	The IEEE-488 interface is sometimes called the GPIB interface.  
        What does GPIB stand for?

	General Purpose Interface Bus.  Another name is Hewlett Packard
        Interface Bus (HPIB), since HP developed this standard for its
        istrumentation device networking.

	Commodore manufactured at least two hard drives with IEEE-488
        interfaces.  Can you name them?

	The Commodore D9060 and D9090. From the cbmmodel.txt file:
        * CBM D9060  5 MB Hard Drive, DOS3.0, Off-White, IEEE-488.       GP
        * CBM D9090  7.5 MB Hard Drive, DOS3.0, Off-White, IEEE-488.     GP
        The following model has been said to be in existence, though no one
        has one on hand to prove it:
        * CBM D9065  7.5 MB Hard Drive
        And this model may never have made it past the prototype stage:
          CBM D9062  Dual D9065.

	Why didn't buyers like the original PET-64?

	It looked just like a old-style C-64.  It had a "home" computer
        look that the schools didn't care for.  They liked the "business"
        look of the PET series, so Commodore put refurbished and new 64
        motherboards in PET cases and sold them as PET 64s.  The repackaging
        suited the schools.

	On a PET Revision 2 ROM, what was the largest single array size that
        BASIC could handle?

	An array can have a cumulative total of 256 elements.  For single
        dimension arrays, that means D(0) to D(255), but a 2D array can only
        go from DD(0,0) to DD(1,127) etc.  All types of arrays had this

	On the stock 1541, data is transmitted one bit at a time.  How many
        bits are transferred at a time on the Commodore 1551 disk drive? 

	3 bits were transmitted at a time.  I assume that each byte had a
        parity bit tacked on for error detection, so it would have taken
        3 transfers to transmit a byte of information from the drives.

	On all Commodore floppy disk drives, how fast does the disk spin?

	300 RPM.

	Upon first reading the Commodore 1541 Error channel after turning
        on the disk drive, what error number and text is returned?

	73, CBM DOS V2.6 1541, 0, 0

	What error number and text is returned on a 1551?

	73, CBM DOS V2.6TDISK, 0, 0   Notice that the new text JUST fits!

	Commodore printers are normally assigned to device #4, but they
        can be also used as device #?

	#5.  The Commodore 1525 has a switch to do this, but not all printers
        have such a switch.

	What microprocessor is used in the Commodore 1551 disk drive?

	the 6510T.  It is a slight variant on the 6510 microprocessor used
        on the C64.  Some say it runs at 2 MHz, but the specs drives spec 
        sheet doesn't say.

	When the VIC-20 was designed, the serial port throughput was roughly
        equivalent to the throughput of the IEEE-488 bus?  Why isn't it
        very fast in production VICs?

	Let's go back to question $04F:
        Q $04F) What was the primary reason Commodore went to a serial bus
                with the introduction of the VIC-20?
        A $04F) Jim Butterfield supplied me with this one:
                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.                    
        And here is what Jim Butterfield followed up with:
        "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.
        When the 64 came out, the problem VIA 6522 chip had been
        replaced by the CIA 6526.  This did not have the shift register 
        problem which had caused trouble on the VIC-20, and at that time it 
        would have been possible to restore plan 1, a fast serial bus.  Note 
        that this would have called for a redesign of the 1540 disk drive, 
        which also used a VIA.  As best I can estimate - and an article in 
        the IEEE Spectrum magazine supports this - the matter was discussed 
        within Commodore, and it was decided that VIC-20 compatibility was 
        more important than disk speed.  Perhaps the prospect of a 1541 
        redesign was an important part of the decision, since current 
        inventories needed to be taken into account.  But to keep the 
        Commodore 64 as a "bit-banger", a new problem arose.
        The higher-resolution screen of the 64 (as compared to the VIC-20)
        could not be supported without stopping the CPU every once in a while.
        To be exact:  Every 8 screen raster lines (each line of text), the CPU
        had to be put into a WAIT condition for 42 microseconds, so as to 
        allow the next line of screen text and color nybbles to be swept into
        the chip.(More time would be needed if sprites were being used).
        But the bits were coming in on the serial bus faster than that:  
        a bit would come in about every 20 microseconds!  So the poor CPU, 
        frozen for longer than that, would miss some serial bits completely!
        Commodore's solution was to slow down the serial bus even more.
        That's why the VIC-20 has a faster serial bus than the 64, even though
        the 64 was capable, technically, of running many times faster.
        Fast disk finally came into its own with the Commodore 128."

	On Commodore computers, how much RAM is set aside as a tape buffer?

	192 bytes is used as a tape buffer.  Blocks of data on tape are 192
        bytes long.

	On Commodore computers, most every peripheral has a device number.
        What is the device number of the screen?


	What is the device number of the keyboard?


	Commodore computers use 2's-complement notation to represent integers.
        What is the 2's-complement hex representation of the signle byte -1? 

	(This was not a Commodore specific question)  Commodore computers
        use this notation to represent integer quantities.  In 2's complement
        notation, a -1 looks like 11111111(binary) or $FF(hex).

Jim Brain
[email protected]
10710 Bruhn Avenue
Bennington, NE  68007
(402) 431-7754


This site 2005 The Research Kitchen and Jim Brain.
Page generated: Sat Oct 14 14:06:37 BST 2006