On 5/29/2010 4:47 AM, Eric Smith wrote:
Found it. The "UI+" command will slow down
a 1540 for use on a C64,
and "UI-" will speed it up again. Apparently when they wrote the 1540
firmware they anticipated that the bus might have to be slowed down
for use with some future computer.
The UI- command does not exist in the 1540 ROM. Commodore did not
think that far ahead.
The story goes that Tramiel was unhappy with the price and availability
of the IEEE-488 cables on the PET line, and told the VIC designers to
"get off that bus!". They looked at the VIA 6522 and designed a serial
protocol around the use of the shift register. Late in the game,
software developers became aware of the 6522 Shift Register "bug", and
so had to retreat back to bit banging the bus. So, for that bug, the
serial speed went from CLK/32 to transfer a byte down to CLK/320 or so.
Then, when the C64 was in development, they improved the VIC-I to do 40
columns. By the time they got done, the VIC-II had to "steal" cycles in
order to do it's work. This corrupted disk transfers because the
"steal" took away more time that the cycle time of the IEC protocol.
So, the IEC protocol was slowed from 20uS to 60uS on the 154X->C64
direction. The 1540 ROM had to be updated to slow down the transfer,
and thus UI+/- was introduced.
Jim
--
Jim Brain, Brain Innovations (X)
brain at
jbrain.com
Dabbling in WWW, Embedded Systems, Old CBM computers, and Good Times!
Home:
http://www.jbrain.com