[comp.sys.cbm] 1200 +

slindahl@udenva.UUCP (Steve "Mr. MBA" Lindahl) (07/25/87)

My question is:  Can a Commodore 64 handle anything above 1200 baud?

-- 
Steve J. Lindahl     |UUCP      {hplabs,seismo}...!hao!udenva!duorion!slindahl
University of Denver |BITNET    slindahl@ducair

                        |power| corrupts |ly| 

elg@killer.UUCP (Eric Green) (07/27/87)

in article <3989@udenva.UUCP>, slindahl@udenva.UUCP (Steve "Mr. MBA" Lindahl) says:
> My question is:  Can a Commodore 64 handle anything above 1200 baud?

The answer is "sort of". Just as WXMODEM or ZMODEM will only "sort of" work
with the C64. From what I've heard, the C64 can't recieve at a sustained 2400
baud, however, can transmit at near that rate. Something about the VIC][ chip
stealing too much time. Someone mentioned a 20% error rate in Xmodem
transfers.

By the way, what I'm talking about for WXMODEM or ZMODEM is that the C64
RS232 port apparently cannot recive characters at the same time that it is
transmitting them. Since flow control is necessary while the reciever goes to
save the last block to disk, unless you want to "fill the frame" (which
eliminates much of the speed advantage of a windowing protocol), this
effectively prohibits a WXMODEM or ZMODEM reciever for the C64. Be better to
just adapt a version of YMODEM, which would transfer as fast over PCPursuit as
a frame-filling ZMODEM, but without near the complexity of implementation....
--
Eric Green   elg%usl.CSNET     Ron Headrest: A President
{cbosgd,ihnp4}!killer!elg      for the Electronic Age!
Snail Mail P.O. Box 92191      
Lafayette, LA 70509            BBS phone #: 318-984-3854  300/1200 baud

rex@otto.COM (Rex Jolliff) (07/28/87)

Summary:

Expires:

Sender:

Followup-To:

Distribution:

Keywords:


In article <3989@udenva.UUCP> slindahl@udenva.UUCP writes:
>My question is:  Can a Commodore 64 handle anything above 1200 baud?
>
>--
>Steve J. Lindahl

That depends on whether you can put up with an incredible amount of garbaged
characters or not.  Actually the serial port driver is supposed to be able to
handle up to 2400 baud, but it is VERY inaccurate at any thing over 600 baud.
This is because they decided that they would rather use a piece of software to
control the serial port than to add an inexpensive (~ $2.00) piece of hardware
to the design.  It seems that their main interest in designing the C64 was its
ability to play great games.  And, I think their design was an enormous success
in that respect.  If you got any flames, mail them to me... I guarantee I'll
reply. 8-)

Now my question: Considering the sotfware design, hardware design and the
intended use for the serial port, why would it cost more to put a UART into the
machine instead of what they actually did.

                                                            Rex.



-- 

Rex Jolliff  (rex@otto.UUCP, {akgua,ihnp4,mirror,sdcrdcf}!otto!rex)
The Sun Newspaper -            |Disclaimer:  The opinions and comments in
Nevada's Largest Daily Morning | this article are my own and in no way
Newspaper                      | reflect the opinions of my employers.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
What happened to our superior space program?

drain@mcnc.UUCP (Jerome Drain) (07/28/87)

I was wondering if anyone has an xmodem that sends 256k block, and do anyone
know if PCPrusuit can transmit in punter protocal, if not why?

 

prindle@NADC.ARPA (08/04/87)

From: prindle@nadc.arpa (Frank Prindle)

First, thanks to Fred Bowen for his info and interest.  Fred, your now famous
lists of 1571 and C128 bugs even got mention in Jim Strasma's column in RUN
mag this month.  Too bad magazines have to be 6 months behind the rest of the
world.

Next, a bit of Commodore lore concerning the C64.  It has been told that the
reason the C64 does not have a UART is not related to cost; rather, when the C64
(or was it the VIC-20 - one or the other) had to be on the market by some drop-
dead date or other, Commodore's semiconductor division (MOS Technology) did not
have the specific UART chip into sufficient production to support the computers.
A quick and dirty *software* UART was thrown together, which is what we have
today (it survives from VIC to 64 to 128 for compatibility).  Quick and dirty
means that not much thought was put into the bit timing routines (which work
off of one of the CIA interval timers); interrupt service times for the send
and receive processes were not properly estimated or compensated for (especia-
lly when bits are being sent and received at the same time).  It all sort of
hung together by a shoestring for bit rates of 600 or less.  More correct
software UARTs (such as written by Steve Punter, for example) can handle 1200
bps full duplex with high accuracy.  At 2400 up, it becomes nasty territory
because the VIC-II chip burst DMAs from memory make it difficult to time bits
spaced less than 500 microseconds apart.  I hear the C128 in 2Mhz mode with
the VIC-II chip disabled can do a nice job at 2400 BPS, though I haven't seen
it for myself.

Anyway, you can believe either story about the UART I suppose (cost or
availability); the truth may never be known.  The only solution is to live
with what we have or buy one of those add-on cartridges which have a live
UART (and maybe modify software to work with it!).

Sincerely,
Frank Prindle
Prindle@NADC.arpa

jbh@mibte.UUCP (James Harvey) (08/07/87)

Subject: Re: 1200 +
In-Reply-To: your article <503@otto.COM>

> 
> Now my question: Considering the sotfware design, hardware design and the
> intended use for the serial port, why would it cost more to put a UART into the
> machine instead of what they actually did.
> 
>                                                             Rex.

According to an (excellent) article in the IEEE spectrum a couple of years ago,
The reason was that the 6551 UART was not perfected when the VIC-20 was 
developed.  It would probably have cost a lot more than two bucks at that 
time anyway.  Remember that the VIC shipped with five K of ram because RAM was
so expensive then.  

The Plus 4 and the C16 did use a 6551 and I understand they work much better as
terminals.

Another reason the C64 doesn't work well at 1200 BPS is because the 212 modem 
format acutally puts out about 1220 BPS to the terminal.  All successful
Term Emulators for the 64 plug in a custom baud rate to compensate for this.
I don't know if the popular 2400 BPS modems suffer from this peculiarity.

Jim Harvey
Michigan Bell Telephone Co.
Rm 3352
29777 Telegraph
Southfield, Mich.  48034

ulysses!gamma!mibte!jbh