<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Fri, 08 Feb 1991 16:36:33 EST
From   : Mark Eichin <eichin@apollo.com>
Subject: Is my machine too SLOW for 2400bps modems?

>>now it seems that 2400 baud is too fast.  Is this true?  How do I fix it?  Is
       Well, I run a custom port of TurboDOS on my Model 4P, and
using a simple CP/M style comm program (it makes the TurboDOS "call
0050h" calls instead of the BDOS ones) it has *no* problems with
newlines. (The RS232 driver in the OS is interrupt driven feeding a
128 or 256 byte (I forget which) ring buffer, which helps a bit.) It
does lose when there is a large amount of text (ie a full 24x80 screen
with mostly 60 columns per line...) but upping the buffer size would
probably solve that. (this is at 2400 baud; I've *never* had loss at
1200.)
       There was a standalone comm program that used the same
driver... it would run at 19.2Kbaud without losing data! No OS
overhead at all - the disk had a bootloader which read in the terminal
program, which talked to everything directly.
       There is one important trick, which I suspect MM CP/M doesn't
do. The Model 4 video controller has a register which tells it what
address (in the 2K block) should appear at the top of the screen. In
order to scroll, my driver puts blanks in the 80 characters *after*
the last line, then adds 80 to the register (24x80 = 1920, 25x80 00,
2K = 2048, so there is room...) *poof* instant scroll (or at least,
one that requires touching 80 bytes, not 2000...)
                                       _Mark_ <eichin@apollo.hp.com>
ps. Both the TurboDOS port and the comm program were done by myself
and Jon Luning when we worked for DOKAD Inc, a CP/M consulting firm
that I think is gone now (the president had health problems and didn't
have time to continue to run it, and the technical staff all graduated
and went off to college...) I apologize for not being able to
distribute the code; I'm certainly willing to discuss details of the
code for anyone who wants to try using the same techniques.  _Mark_


<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>