home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
cpm
/
22rsx
/
byestuff.ark
/
ANSWER.DOC
< prev
next >
Wrap
Text File
|
1985-12-19
|
4KB
|
100 lines
ANSWER performs the phone-answering operation in a system.
It requires that BYERSX be installed and operating. ANSWER
itself is completely machine independant, however it does
assume the use of an intelligent modem. It has been checked
with the USR Password and the Prometheus 1200 so far. ANSWER
can enforce system access passwords, and select the first (and
possibly only) program to execute in remote mode. The baby
programs ENDCALL and BYE should be made available. RXMD can
be used for up/downloads.
NOTE: for RCPM use, when generating a ANSWER.COM, link using
the NOPIPES module (.pipes:: stc | ret) to prevent a remote
user redirecting output to files or devices. Since speed
is no problem, this is the only reason for creating such a
file in place of ANSWER.PCD. It is much easier to control
the system with BYE and ENDCALL chains.
To run with 2400 baud modems (not checked) execute with
parm = 4, e.g.:
d>answer [4]
(answer will back down to 1200 if it can't arm the modem)
Any failure to arm the modem turns on the debugging
monitor for modem communications. Answer tries 5 times
before aborting.
You should also patch/reassemble the chaining string in
ENDCALL.COM to include the "[4]". The "RUNPCD" may be
deleted if you are using the .COM version of ANSWER. The
string is at the end of the .COM file, and at least 32
bytes of patch space are available.
The password and execute strings in ANSWER are patchable.
To find them, scan for the word DDT in the object code.
This begins a 20 byte blank filled string, and is shortly
followed by a 20 byte string of blanks. You may patch
these as desired, using only upper case letters, and no
control characters. Internal and leading blanks are
significant, trailing blanks are not. If all blank the
associated string is considered nul. The "DDT" string is
the password, and the blank string is the "execute".
ANSWER exits in the following manner, after receiving a
call:
1. If the password string is non-blank, a system
password is requested. It is not echoed to the
remote system. The remote user has 3 tries.
If the password is blank, no password is enforced.
This caters to "execute" programs that do their
own identification.
2. If the execute string is non-blank, that command
is executed in secure mode (i.e. any system error
or other reboot will hang up and re-initialize).
Note that the command may include parameters. This
will normally execute a BBS system, but may do
anything you desire.
If the execute string is blank (nul) then the CPM
system is entered, in non-secure mode.
3. In either case, the remote console is enabled, all
privilege levels (wheel, dunochk [restricting drive/
user access], devices [preventing any use of LST, PUN,
RDR]) are off, carrier checking is on, and all disk
drives (A thru P, whether existent or not) are
write-protected. Thus any attempt to write to a disk
will reboot without writing. The user cannot erase or
modify anything without access to SETWHEEL, WPROTECT,
DDT (or equivalent) programs. Note that DUU is safe,
as are the ERA and SAVE CCP commands. Since devices
are disabled the CTL-P operator is also harmless.
DCDCHECK should probably also be protected to ensure
that carrier loss will re-cycle the system.
WARNING: systems exist (time stampers, etc) that attempt
a disk write when a file is opened for read. With
write protection enabled these will abort everything.
For best operation it is recommended that CCPLUS and CCPXTEND
be installed. These provide automatic execution of commands
in libraries, the RUNPCD interpreter, and search chains. No
changes are needed to any normal bios. CCPLUS installation
for a fixed CPM size can be performed in 5 minutes, using the
standard SYSGEN program. CCPXTEND.SYS is a normal runnable
program, if renamed to a .COM type. It is always optional.
With CCPXTEND.SYS in place all commands may be kept in the
two libraries COMMAND.LBR and PCDS.LBR. This can produce
huge savings in disk space. (I keep over 100 commands on my
390k, 64 directory entry system disk, including one compiler,
two code generators for it, 2 assemblers, lu, duu, editor,
ANSWER itself, pip, RXMD, and much more. All are accessible
from any drive/user with only the command name).
cbf
óÄ