[comp.sys.cbm] BBS input and RS-232 stuff

an207@cleveland.Freenet.Edu (David DeSimone) (01/08/91)

In a previous article, shavlul@ucscb.ucsc.edu (60231000) writes:
>When I wrote my BBS for the C-64 this technique did not work at all with
>BLITZ!, though it is otherwise a great compiler.

I find that strange, since Blitz! stores its variables in the same way
that Basic does, ie, using the same sort of pointers, variable lists,
etc.  Hmm.

>When I was C= b-boarding (around 1986), the big speed problem was with the
>disk drives.  It seems that the serial I/O was timing sensitive and can 
>not be interfered with by an RS232 Non-Maskable-Interrupt.  One idea I had
>was to figure out a way to send files using handshaking for every bit
>(instead of only for every char) so that the modem does not have to wait for
>the drive and vice versa.  Does anyone know if this has been tried?

I don't think anyone has tried this, althouhg it is definitely possible.
The RS-232 routines generally don't get in the way of the disk drive,
though, since the Commodore ROM's disable the RS-232 port whenever the
serial port is referenced.  But that means that Commodore computers
can't read from the modem and write to the disk at the same time.
Characters received while writing to disk are simply lost.

If one were to write a disk communication protocol that was
interruptible (asynchronous) yet still fast - and I have seen such
protocols; they are neat to watch! - that would solve that problem, but
raise another one.  Specifically, you would have to write a complete DOS
for the drive, especially if you are saving files.  You would have to
allocated disk sectors, update directories, etc.  Not easy to do in a
small space, which is why it usually isn't done, and it causes
incompatiblities among different disk drives (1541/71/81, 4040, 8250,
etc.)...

Now, what I'm more interested in doing is genereating a real 80 column
screen on a C64.  I saw a neat demo called "Reticulate" that could
generate a 320 x 400 or 640 x 200 screen on a C64, through interlacing.
Neat stuff!  I think I understand the theory, but that would require 16K
of memory just to maintain the display.  Can you imagine scrolling such
a screen?

Then again, who says it needs to be a bitmapped screen?  A character
screen with a redefined 80-column font would scroll a lot faster...

It's amazing what this itty bitty computer is capable of.  :)

--
begin 644 .signature
G5&AI<R!S<&%C92!I;G1E;G1I;VYA;&QY(&QE9G0@8FQA;FLN#0H:
 
end