Okay, I wanted to do a comm project, and it seems others did as well, so
the voting is now officially closed! On with the show:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Production goals:
þ High speed, FOSSIL-aware, common routine serial library. This
means we provide common routines for things like monitoring
carrier detect, using nonstandard IRQs and addresses, custom
speeds (14400 direct, etc), 16550+ UARTS, etc, that use a
single routine per function (ie, IsCD instead of IsSerialCD and
IsFossilCD, etc.)
þ Simple-to-call routines for common xfer protocals (ie,
X/Y/Zmodem, SEALink, maybe Janus, etc)
þ Support for the TTY, ANSI, AVATAR, PRISM, VT52, VT100 and VT102
protocals. Preferrably, we'll work out a generic fast-parser
and config files for most of this, which would provide
flexibility. We should have a common system variable which
would have fields for total screen cols & rows, starting row &
col for emulated area, ending row & col for same, color, etc.
Also, ANSI music is a must!
þ A simple screen output control library, so we can isolate all
the output code and support things like optional control of
direct vs bios output, unusual screen sizes, usage of a library
like PB/VISION (cheap plug, but I like it...), etc.
þ An FTS-1 compatible FTN mailer, with added support for WaZoo,
YooHoo, and EMSI. Full support for 5D addressing, Version7
nodelists, points, multiple networks, and magic name freqs.
þ A BBS package providing INTEGRATED FTN-mailer support, many
options and a good scripting language, SQUISH, Hudson or JAM
message areas, advanced security including an INT21 file read
hook (to check if they're allowed access).
þ A collection of basic input routines for above, covering things
like phone numbers, masked strings, credit cards (WITH
checking), options (Yes/No), menu display, editor (line & F/S).
þ All complicated routines (xfer prots, mail connects, etc)
should have internal routines documented and in separate
subs/functions to aid customization.
þ All final code should be documented, especially any assembler
or interrupt calls, and structured. This means using
subs/functions instead of GOSUBs, proper indentation,
descriptive variables (ie call it UserName$ instead of UN$).
Remember - uninteligible code is C, not BASIC.
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
I'll start the ball rolling by providing some FTS-1 code asap. In the
mean time, let's get going with some basic serial I/O code.
Chris
... BBS SysOp:Person who spends $$ to receive abuse. See S&M
--- PPoint 1.88
---------------
* Origin: The Point of Obfuscation! (1:212/2001.5)
|