home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
BBSING
/
RBBS
/
RBBS4102.ARK
/
RBBS4.DOC
< prev
next >
Wrap
Text File
|
1985-02-09
|
10KB
|
275 lines
Brief Documentation for Release 1: RBBS 4.0 Edit 18
RBBS4 is a new version of the popular public domain program,
written in BDS-C, co-authored by John Gilbert and Frank Wancho.
It is not upward file-compatible with older versions of RBBS, and
requires BDS-C 1.50a to compile. See RBBS4.C for more info,
disclaimers, etc. (BDS-C 1.50 will do, but you'll need to add
the index function. We have not tried compiling this program
under any previous versions of BDS-C.)
The major topics covered in this doc file are:
A. FILES PROVIDED An itemized list with brief description
B. NOTES Some short comments
C. BUILDING RBBS4 How to get started
D. OTHER NOTES Miscellaneous notes
E. TO DO What's on tap
F. UNRESOLVED BUGS Known, somewhat harmless bugs
G. ACKNOWLEDGEMENTS To those who helped Beta Test
H. TRAILER Parting words
A. FILES PROVIDED:
(Files below, marked with an asterisk, are the support files that
RBBS4 expects to be in the designated user area and drive as
defined in RBBS4.H.)
RBBS4.H The commented header file. Please set the
DEFINEs in this file for your desired system
configuration.
RBBS4.C The "main" program
MAINOP.C A collection of functions
LOGON.C Most of the logon functions
ENTER.C Most of the entermsg functions
RBBSFN.C Miscellaneous functions, mostly file I/O
RBBSCIO.C A rather fancy line editor and associated console
I/O functions using BIOS calls. May be used as a
separate package.
TDOSFN.CSM Lock and free record TurboDOS functions in
assembler. Must be processed with CASM. This may
be optionally excluded by setting the LOCKEM
DEFINE in RBBS4.H to FALSE and removing the
reference in the l2 command line.
DAYTIM.CSM TurboDOS, MP/M and CP/M+ date/time function (105)
in assembler. Provide an equivalent function if
you wish to use your clock card, using this as a
model. See below. If you do not have a clock
card, set the DATETIME DEFINE in RBBS4.H to
FALSE.
The daytime rewrite is courtesy of Ron Fowler,
and the tos function is courtesy of Sigi Kluger.
*BULLETIN.CCC A SYSOP-created ASCII file that is displayed with
paging when the program starts up. The B Command
also displays this file. If this file does not
exist, then a "No BULLETINS" message is displayed
instead.
*WELCOME.CCC A SYSOP-created ASCII file that is displayed with
paging when a new user successfully registers.
The W Command also displays this file. A sample
file is provided.
*HELP.CCC An ASCII file that is displayed with paging when
the user types a ?<cr> to the COMMAND: prompt. A
sample file provided.
*HANGUP.COM SYSOP may optionally provide this program or
something equivalent. RBBS4 will chain to this
program with the G Command or after three failed
attempts to enter the password. If you do not
provide this program, set the HANGUP DEFINE in
RBBS4.H to FALSE.
*AUTO.COM SYSOP may optionally provide this program or
something equivalent. RBBS4 will chain to this
program with the C Command. If you do not
provide this program, set the CHAINEXIT DEFINE in
RBBS4.H to FALSE.
UTIL.C Creates SUBJECTS.CCC and empty subject.MSG files,
and an initialized USERS.CCC file with the SYSOP
entry and default initial password of 123456.
UTIL also permits the addition of new subject
files, modification of user entries, addition of
new users, consolidation of subject.MSG and
USERS.CCC files, and insertion of long text files
as messages.
*SUBJECTS.CCC Created by UTIL with two entries: PERSONAL and
GENERAL. Others may be added with UTIL.
*USERS.CCC Created and initialized by UTIL. Holds user info.
*CALLERS.CCC Created by RBBS4 when first used. A sequential
log of each user's use of the system.
*PERSONAL.MSG Created by a UTIL command. It is the initial
message file examined by the user. Only
Personal/private messages are allowed in this
file.
*GENERAL.MSG Created by a UTIL command. This and other
"secondary" subject files may be selected by the
F Command. Only messages to "ALL" are allowed in
these secondary files.
*EXIT2CPM.CCC Displayed when the non-expert exits to CP/M via
the C Command. Sample file provided.
*TWITMSG.CCC Displayed when a "twit" logs in.
*MSGHELP.CCC Displayed when the user types "?<cr>" on a new
line when entering message text.
*SELHELP.CCC Displayed when the user types a "?" to the SELECT
prompt.
*RCIOHLP0.CCC Displayed when the user types the Help Character
(^V) in normal mode.
*RCIOHLP2.CCC Displayed when the user types the Help Character
(^V) in masked mode.
B. NOTES
1. One major difference between RBBS4 and older versions of RBBS
is the addition of a fancy line editor. Type a ^V to see the
available commands and experiment.
2. If you are not running TurboDOS or multi-user mode, skip the
inclusion of TDOSFN or equivalent in the l2 command line.
3. If you are using a clock card, use DAYTIM.CSM as a model for
the clock function. This function returns in HL the address
of a null-terminated ASCII string of the form: dd mmm yyyy
hh:mm:ss. If you do not provide this function, the user will
be prompted to enter the date when he logs in.
C. BUILDING RBBS4
1. To build RBBS4 (and UTIL), first check the DEFINEs in
RBBS4.H. Build RBBS4 first, using the suggested SUBMIT file,
RBBS4.SUB as a guide. Then build UTIL, also using UTIL.SUB
as a guide.
2. Run UTIL first, to create the necessary files. Then run
RBBS4 and login as SYSOP with password of 123456. Use the P
Command to change your password. Then enter any initial
messages.
D. OTHER NOTES
1. User can both delete and insert lines in SELECT's Edit mode.
To delete a line, select it for editing and type ^X, then a
period and <cr>. To insert a new line at line n, type a -n
to the line number prompt.
2. The order of the arguments in the l2 line IS important. You
can generate faulty .COM files with no warning from l2,
especially if it goes into disk mode!
3. There is a DEFINE named PREREG that will not allow a new user
to access the system without already existing in the
USERS.CCC file. That means the SYSOP must use UTIL to
register that new user ahead of time.
4. LASTREAD DEFINE checks for a LASTCALR file and use that
information to logon the user who has already logged on
through some other front-end program like SIGNON. LASTWRITE
is used when RBBS4 IS the front-end program and is expected
to update the LASTCALR file with an entry of the current
user's name to be used by subsequent programs like XMODEM.
Please check the code in LOGON.C in between those DEFINEs to
make sure they either read or write the appropriate format
for your system.
5. If LASTREAD is TRUE, RBBS4 capitalizes the first and last
names it finds before testing if the name exists. If the
user doesn't exist, he is then passed through the newuser
function, skipping the password prompt, which is
automatically set to "123456" in case you wish to revert for
some reason. This means that LASTREAD and PREREG are
definitely mutually exclusive, or else you MUST manually
preregister each new user you allow through your front-end
program. (Of course, you CAN have both LASTREAD and PREREG
set TRUE. Then only a select subset of your users whom you
preregister will be allowed to use RBBS4.)
6. You can tag selected users to have "sysop privileges" within
RBBS4 by setting the MF FLAG.
7. The MF FLAG means:
blank = "sysop"
* = no CP/M access (user is locked into RBBS4)
# = twit (user logs all the way in and then
TWITMSG.CCC is displayed and hangs up.)
+ = normal user
E. TO DO:
1. Implement the auto-kill of seen private messages on exit.
2. Keep track of highest seen and provide an auto-survey of new
messages in the non-PERSONAL message files when that file is
first selected in a session.
3. Consolidate first and last name fields into one field to
allow longer names.
4. Consider implementing CHARIO.C for file handling.
F. UNRESOLVED BUGS:
1. Duplicate entries in USERS.CCC (sometimes).
2. The CALLERS.CCC entries are improperly displayed when there
are an odd (or even) number of entries.
H. ACKNOWLEDGEMENTS
Our thanks to Sigi Kluger, Ron Fowler, and Dave Schmidt for
taking the time and energy to help us beta test this program, and
suggest many features and improvements we didn't envision.
G. TRAILER
We fully expect those more expert in C to optimize or perhaps
totally revamp our code. If you do, please try to follow our
style for spacing and indentation to keep it readable. If your
changes don't amount to an overhaul, just bump the edit number in
all the files. If you do overhaul it, bump the minor version
number and reset the Edit number to 0. Start (or prepend your
changes to) a RBBS4.HIS file, pack it up, and upload it to the
SENECA RCP/M at the number below. If you convert this to some
other C dialect, please acknowledge your source and change the
name to avoid confusion with this version.
Please report any problems immediately to WANCHO@SIMTEL20 via DDN
or call between 10am and 10pm MST: 915-591-7266 (voice), or leave
me a message on the SENECA RCP/M: 915-598-1668.
Frank Wancho
10560 Lakewood
El Paso, TX 79925
Dave Schmidt for
taking the time and energy to help us beta test this program, and
suggest many features