joels@tektronix.UUCP (05/24/84)
Following is an excerpt from an article by Compuserve CBM SIG SYSOP Deepak Midha. It contains some insites into the C64 1200 baud problem. Joel Swank Tektronix, Beaverton OR Here are the instructions for modifying VIDTEX to work at 1200. This patch is only TEMPORARY until CompuServe issues supported patch. This patch will allow you to use 1200 Bits Per Second(BPS) with a modem. It supports all VIDTEX functions except UPLOADING unless your modem allows for overspeed terminal devices at 1220 bps. Before we get into details an explanation of VIDTEX is nesscessary. Pages 350-358 of the Programmer's Reference Manual describe some of the things that relate to this problem. The code used for communication is called United States of America Standard Code for Information Interchange (USASCII usually abbreviated to ASCII). This is usually sent in bytes preceded by a start bit and followed by a stop bit - making a 10 bit character. ASCII is defined as a 7 bit code but a byte is 8 bits. The 8'th bit is used for parity to check the character. The KERNAL can be used to generate parity but VIDTEX set's the 64 to 8 bit - No parity generated/checked and sets and checks it's own. This is because VIDTEX uses bit 8 during B protocol transfer to carry data (This may cause some problems with Smart modems like the Signalman Mark XII) and uses the parity bit to distinguish between text and graphics instructions in graphics mode. The 64 uses a two character field to determine the speed of the RS232 interface and a formula to calculate the two characters is given on page 350 of the Prog. Ref. Manual. The KERNAL contains defaults for 75, 110, 134.5, 150, 300, 600, 1200 and 2400 BPS. Modems which operate at speeds of 300 BPS can handle variations in speed of about 50 BPS but the new breed of CMOS 1200 BPS modems are much more sensitive to speed. They also follow their specifications more closely than earlier models. The Bell 212A spec. defines the rate between the modem and the Data Terminal Equipment (The 64 in this case) at a nominal 1220 bps and the rate between the DTE and modem as between 1182 and 1212 bps. In other words the two speeds are different! The 64, on the other hand, can only send and receive at the same speed within certain tolerance limits. The tolerance limits do not seem to be sufficient to handle the new 212A type modems. Therefore, the speed of the RS232 interface needs to be raised to be able to cope with higher rate from the modem I have tried to use 1212 and 1220 and 1220 works best with my modems(the Mark XII and a Vadic 3451) but you might be able to use 1212 which is easier on the 64. Deepak Midha 73465,777