home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 8
/
CDASC08.ISO
/
VRAC
/
SEL_M_18.ZIP
/
SELL'EM.DOC
< prev
next >
Wrap
Text File
|
1993-07-15
|
37KB
|
867 lines
**************************************************************
* *
* SELL'EM.EXE v1.8 *
* *
* Advertisement & Business Card Database *
* *
* Copyright (c) 1992, 1993 *
* Sagerquist Micro Engineering *
* *
* 1414 W. Kerrick Street *
* Lancaster, Ca. 93534 *
* Data (805) 723-6908 *
* *
**************************************************************
DESCRIPTION
-----------
SELL'EM.EXE is a BBS Advertisement Trap Door program. There may
be up to 20 defined database files where the ads can be placed.
Within each database, up to 100 entries (records) may be placed by
the BBS callers or the SysOp for all callers to view. To enhance
the ad, a file may be uploaded giving the BBS caller an expanded
explanation, .GIF picture, Shareware program, or other data deemed
appropriate by the person placing the ad. The Sysop may control
the placement of all ads, i.e. who and how many, allowing SELL'EM
to be operated as a business.
SYNTAX
------
SELL'EM [/B:(bbstype)] [/D:(optional) DIRECTORY] [/S:(Sound ON/OFF)]
or
SELL'EM /COMPRESS
The optional directory is where the BBS file (DOOR.SYS, TRIBBS.SYS,
etc.) is located. This is a directory only. Do not include a
filename. If this switch is not present, SELL'EM will search the
current directory.
EXAMPLES
--------
SELL'EM /B:MH1
SELL'EM /B:MH1 /D:C:\MEGAHOST\DATA /S:OFF
SELL'EM /B:WILDCAT /D:C:\WC30\WCWORK
SELL'EM /COMPRESS (See section on deleting records)
SUPPORTED BBS'S Switch: BBS File:
-------------------------------------------------------------
MegaHost: MH# MEGAHST#.DEF [# = Node]
PcBoard: PCBOARD PCBOARD.SYS
QuickBBS: QBBS# DORINFO#.DEF [# = Node]
RBBS: RBBS# DORINFO#.DEF
Remote Access: RA DOOR.SYS - 6 line version
Remote Access: RA# DORINFO#.DEF [# = Node]
Teleguard: TELEGUARD CHAIN.TXT
TGP: TGP CHAIN.TXT
TRIBBS: TRIBBS_D DOOR.SYS - 52 line version
TRIBBS: TRIBBS_T TRIBBS.SYS
Wildcat (v3.0+): WILDCAT DOOR.SYS - 52 line version
Wildcat: CALLINFO CALLINFO.BBS
World War IV: WWIV CHAIN.TXT
Note: The BBS will create its caller definition file, such as
DOOR.SYS, DORINFO3.DEF, etc. The data format within
these files may be different for each BBS even though
the same filename is used for another: DOOR.SYS for
MEGAHOST could be different than DOOR.SYS for Wildcat.
Be sure to use the proper switch.
FILES IN THIS PACKAGE
---------------------
SELL'EM EXE Executable program.
SELL'EM DBM Data Base Menu file.
SELL'EM DOC Document file (this file).
SELL'EM REG Registration text file.
SELL'EM XFR File transfer external protocol definitions.
SOFTWARE DAT Sample database file.
SERVICES DAT Sample database file.
NAT'LBBS DAT Sample database file.
TRAPDOOR BAT Sample batch file for a BBS Trap Door.
BBSFILES ZIP Sample BBS files (DOOR.SYS, MEGAHST1.DEF, etc.)
MEGAHST1 DEF Sample BBS file, allows TEST.BAT to run.
TEST BAT Batch file for initial testing.
XFR_BATS ZIP Sample batch files for external protocols.
OPTIONAL ZIP Database menu custom name file,
and Ad Placement Screening files.
REGISTER FRM Form for easy registration.
QUICK SETUP
-----------
1 - Create a directory for SELL'EM and place all files there.
2 - Place YOUR NAME in the file SELL'EM.REG so you will be
recognized as the BBS sysop (with or without a valid
registration number).
3 - Edit SELL'EM.XFR and make the directory that it points to.
4 - Edit SELL'EM.DBM to your liking.
5 - Be sure your external protocol programs (like DSZ.COM) can
be found through your PATH.
6 - Edit your BBS Trap Door batch file to call SELL'EM.EXE.
Be sure that this batch file does one of these two things:
A - The command line must include the directory where the
BBS's file (MEGAHST1.DEF, DOOR.SYS, etc.) is located, or
B - Copies the current BBS file (MEGAHST1.DEF, DOOR.SYS,
etc.) into SELL'EM's default directory.
SETUP
-----
Create a separate subdirectory for SELL'EM. Place SELL'EM.EXE,
SELL'EM.DBM, SELL'EM.REG, SELL'EM.NAM (from OPTIONAL.ZIP, if
desired), and SELL'EM.XFR into this directory. Also place the
external protocol batch files (from XFR_BATS.ZIP) into this
directory.
Your database files will be created and maintained from this
directory. If you desire, create a directory to keep your
database files separate from your executables. Define this
directory in SELL'EM.DBM.
With an ASCII text editor, edit SELL'EM.DBM. This is where your
database names and their file names are defined. A menu list may
appear like this:
Shareware: I B M Software;SOFTWARE.DAT
Computers and Equipment;COMP.DAT
BBS Listing - Local;LOCALBBS.DAT
BBS Listing - National;NAT'LBBS.DAT
Automotive: Cars for Sale;SELLCAR.DAT
Real Estate;REALEST.DAT
Home Services;SERVICES.DAT
Garage Sales;GARAGE.DAT
The menu item, as it will be displayed to the BBS caller has a
maximum length of 25 characters. If you accidentally exceed 25
characters, it will be cut short.
The semicolon ; separates the menu name from the filename that
will hold its data.
This filename may contain a path. Without a path, SELL'EM will look
for the file in the default directory (recommended method). DOS
standards must be met when deciding on a filename ie: maximum 8
character file name, maximum 3 character extension, etc. See your
DOS manual for further details. The filename entry (including the
path, if necessary) must not exceed 54 characters.
Automotive: Engine Repair;CARFIX.DAT
or
Automotive: Engine Repair;C:\BBS\SELL'EM\DATABASE\CARFIX.DAT
└─ 25 characters max ───┘│└───────────────── Up to 54 characters ──────────────┘
│ Place the file name (and path if desired)
Mandatory separator ─────┘ immediately after the semi-colon (NO SPACES!!).
Create a directory for your caller's advertisement uploads (uploaded
with the advertisement). With an ASCII text editor, edit SELL'EM.XFR.
Lines that begin with the asterisk '*' are comments and are ignored.
This is where your directory for uploads, protocol menu and your
external protocols are defined. SELL'EM.XFR might look like this:
FILE DIRECTORY;C:\BBS\SELL'EM\ADFILES
Xmodem CRC;XMODEM-C.BAT
Ymodem;YMODEM.BAT
Ymodem-G;YMODEM-G.BAT
Zmodem;ZMODEM.BAT
The first line defines the directory where files will be transferred
to and from. All other lines are the protocol definitions. The
format of the protocol definitions is: 'MENU ITEM;BATCH FILE'
Place the name of the protocol first (up to 10 characters) as you
want it to appear on the menu, a semicolon, then the name of the
batch file that calls it (69 character maximum). Each line must
not exceed 80 characters. The actual protocol program (such as
DSZ.COM) must either be located with SELL'EM or in a directory
accessible through your PATH.
Suggestion:
C:\──────BBS
│
└─────SELL'EM <-- SELL'EM's .EXE and definition files.
│
├──────────ADFILES <-- Files uploaded with ads.
│
└──────────DATABASE <-- Database files.
Extract all the sample batch files from XFR_BATS.ZIP. Place these
batch files in the same directory as SELL'EM.EXE. These files are
examples. I chose to demonstrate this process with "DSZ.COM", an
external file transfer protocol program by Omen Technology Inc.,
P.O. Box 4681, Portland, Or. 97208. Other external protocols are
available on BBS's around the world, and must be implemented in the
same manner, none of which are provided with this program. These
external protocol program files must be accessed either from the
default directory or through your DOS PATH.
SELL'EM sends the transfer protocol batch file all the data necessary
to complete the transfer: Port, baud rate, file path, filename, the
word "SEND" for download requests, or "RECEIVE" for upload requests.
These values are accessed in the batch file through the characters
%1, %2, %3, %4, and %5:
%1 = SEND or RECEIVE SEND
%2 = PORT NUMBER 1
%3 = BAUD RATE 14400
%4 = FILE PATH C:\BBS\SELL'EM\ADFILES
%5 = FILENAME DADS_CAR.GIF
Example Batch File "ZMODEM.BAT" using "DSZ.COM":
@ECHO OFF
IF %1 == SEND GOTO SENDFILE
IF %1 == RECEIVE GOTO RECEIVEFILE
GOTO END
:SENDFILE
DSZ port %2 speed %3 sz -r %4\%5 > nul
GOTO END
:RECEIVEFILE
DSZ port %2 speed %3 rz -r %4\%5> nul
GOTO END
:END
Be sure (with "@ECHO OFF" and "> NUL") that the screen output from
your protocol batch file is suppressed, or the local display of
SELL'EM will get garbled. Remote appearance will be unaffected.
Since the external protocol is called with a batch file, it is
possible to add a line that checks an upload for readability
or viruses. If you implement this action, please send me an
example of your batch file! I'd like to see it.
You may customize the displayed name of the door from SELL'EM to
whatever you want! The database menu displays this box by default:
┌────────────────────────────────┐
│ SELL'EM v1.8 │
│ │
│ Advertisement Door │
│ │
│ Copyright (c) 1992, 1993 │
│ Sagerquist Micro Engineering │
└────────────────────────────────┘
If the file SELL'EM.NAM (found in OPTIONAL.ZIP) exists in the
directory where SELL'EM.EXE is run, then the text in this file
will replace the 4 lines above the copyright statement. These
lines must not be more than 30 characters long, or they will be
cut short. They will be automatically centered in the box. The
file contents must start on the first column. The following
example displays the format for the file SELL'EM.NAM and its output:
Joe's BBS
Business Cards Index
┌────────────────────────────────┐
│ Joe's BBS │
│ │
│ Business Cards Index │
│ │
│ Copyright (c) 1992, 1993 │
│ Sagerquist Micro Engineering │
└────────────────────────────────┘
The file SELL'EM.NAM need not exist at all.
I believe SELL'EM is best run from a batch file. This allows
for the steps necessary for SELL'EM to run properly:
1 - Relocating the appropriate BBS file (DOOR.SYS, etc.) to the
subdirectory where SELL'EM is placed, if necessary. (See the
command line syntax).
2 - Changing to the directory where SELL'EM is located.
3 - Make a BBS log file entry, if desired.
4 - Execute SELL'EM.
5 - Changing back to a subdirectory that's safe for BBS operations.
Unless your BBS can perform all these functions for you, I recommend
the batch file method.
Edit the batch file TRAPDOOR.BAT (included in this ZIP package).
Rename this batch file to a name that your BBS will recognize, place
it where the BBS will find it.
Basically, that's it! It will run for you and your callers.
2 SAMPLE TRAP DOOR BATCH FILES
------------------------------
@ECHO OFF
CLS
ECHO ******* Entering SELL'EM *******>> C:\BBS\DATA\BBS.LOG
C:
CD C:\BBS\SELL'EM
COPY C:\BBS\DATA\MEGAHST1.DEF C:\BBS\SELL'EM > NUL
SELL'EM -MH1
CD C:\BBS\UPLOADS
or
@ECHO OFF
CLS
ECHO ******* Entering SELL'EM *******>> C:\BBS\DATA\BBS.LOG
C:
CD C:\BBS\SELL'EM
SELL'EM -MH1 C:\BBS\DATA
CD C:\BBS\UPLOADS
AD PLACEMENT SCREENING
----------------------
This feature takes control of who may place an ad, and how many.
With Ad Placement Screening operational, SELL'EM may be run as
a business. Placement of ads may be controlled globally, or
individually, or both!
Example files for implementing Ad Placement Screening are found
in OPTIONAL.ZIP.
Ad Placement Screening is activated by a text file. To control all
databases globally, use the file SELL'EM.APS, and place it in the
same directory as SELL'EM.EXE. To control individual databases,
use the file [database name].APS. The Ad Placement Screening file
for "AUTO.DAT" would be called "AUTO.APS", and exists in the same
directory as "AUTO.DAT".
These .APS files all have the same format. The caller's name is
followed by a semicolon, then the number of ads he/she is authorized
to place. Also, if EVERYONE is to be allowed to place a certain
number of ads, use the word DEFAULT in place of the name.
For example:
DEFAULT;2
CARL SAGERQUIST;5
BILL CLINTON;4
In this example, anyone may place up to 2 ads, but Carl Sagerquist
may place up to 5. Bill Clinton may place 4. If no one is to place
any ads (until they pay for them), define the default as 0 (zero),
i.e. DEFAULT;0
If a caller is to be allowed to place 5 ads total, scattered
within all existing databases, activate Ad Placement Screening
by placing the text file SELL'EM.APS into the directory where
SELL'EM.EXE is located. Place this caller's name into the file
like this: CARL SAGERQUIST;5
If Ad Placement Screening is to be activated only for 1 database,
place the database's .APS file into the same directory as the
database file is located. Again, the data file CARS.DAT would
require CARS.APS and is colocated with the database file. This
file will not affect the other databases, even if global screening
is activated.
It is possible to activate Ad Placement Screening globally through
SELL'EM.APS, and then control another database separately! The
ads placed within the individually screened database are not
counted toward the ads placed globally. This allows you to control
the majority of your databases as free ads, and charge for placement
into other databases. Its up to you!
If a caller is denied access to place an ad, the text in the file
SELL'EM.CTL is displayed. Place this file in the directory where
SELL'EM.EXE is located. In color mode, the Business Card box and
the Description box is overwritten. In noncolor, the text is
displayed just like another ad. When a key is pressed, the previous
ad is redisplayed. Text to be placed into the Business Card box
is prefixed with the string "HOST;" followed by the text to be
displayed. Text to be placed into the Description box is prefixed
with the string "REASON;" followed by the text to be displayed.
Up to 8 lines can be defined with the "HOST;" string for the
Business Card box, first four being 31 characters long, last two
being 14 characters, all are centered in the box automatically.
Convention calls for this text to be the Host System's information,
ie. BBS name, sysop name, two address lines, and two phone numbers.
Up to 9 lines can be defined with the "REASON;" string for the
Description box, all being up to 33 characters long, left justified.
Convention calls for this text to be the explanation why the caller
cannot place the ad.
Example of SELL'EM.CTL:
HOST;The S M E Support Board
HOST;Carl Sagerquist
HOST;1414 W. Kerrick St.
HOST;Lancaster, Ca. 93534-2225
HOST;Contact your Sysop through this
HOST;address for authorization.
HOST;Unlisted
HOST;(805) 723-6908
REASON; Advertisement Rate Schedule
REASON;
REASON;1 to 5 ads for 3 months: $5.00
REASON;6 to 10 ads for 3 months: $10.00
REASON;10 to 15 ads for 3 months: $15.00
REASON;
REASON;Please advise the Sysop of your
REASON;desire to place an ad. Payment is
REASON;required in advance. Thank You!!
To deactivate Ad Placement Screening, just remove all the .APS files.
Note: The Sysop (as defined in SELL'EM.REG) is exempt from the
screening.
ON-LINE OPERATION
-----------------
SELL'EM will operate in monochrome mode, or ANSI color mode. Either
way, the operation is identical. Only the appearance is different.
At the DATABASE MENU, (the opening screen), choose a database to
view or manipulate. The <ENTER> key, or the <ESC> key will exit
back to the BBS. Type the number of the database displayed, and
you will begin viewing the records within that database.
Once into a database, the menu allows for many choices:
[A]dd - - - - - Allows for adding a new advertisement (record).
The "Business Card" gets filled first, then the
description. The "Description" allows for 8 lines
of 33 characters. The time that the ad was placed
is displayed with each record. Upon completion of
the new ad, the caller is prompted to upload a
file. See "[T]ransfer" for file transfer details.
NOTE: Please notice that the name on the "Business Card"
need not be the name of the person entering the ad.
This allows a caller to place an ad for a friend or
neighbor. The actual record in the database file
will contain the name of the person who placed the
ad along with of the sysop's name. If the ad is
profane or offensive, view the database file with an
ASCII text editor. You'll find the culprit's name!
This file is a binary file, so if you attempt to edit
with the ASCII editor, the database will be destroyed.
DO NOT SAVE CHANGES to the database file from an
ASCII editor!
[D]elite - - - Allows only the "Originator" (the person who placed
the ad) or the sysop to delete the record. Actually,
the record is only MARKED as deleted. The sysop can
view all records marked as DELETED. The "Originator"
can view only those DELETED records that he/she placed.
Only the sysop can physically REMOVE these records from
the database file, explained later. Marking them as
"DELETED" inhibits other callers from viewing the
record.
NOTE: The name of the "Originator" and the sysop are placed
into the database record. This way, they can be
recognized for the Delete, Undelete and Edit functions.
The sysop is the person to whom SELL'EM is registered,
as defined in SELL'EM.REG.
[U]ndelete - - Records marked as "DELETED", may be "UNDELETED" by
the "Originator" or the sysop only. This restores
them to the public view.
[C]hange Database
Returns to the Database Menu, to allow viewing
another database of advertisements. <ESC> performs
the same task.
[E]dit - - - - Allows the "Originator" or the sysop the ability to
alter the data in the record. Entering 'E' at the
prompt places you into the "EDIT SELECT" mode. The
"EDIT SELECT" feature begins at the first item (field)
of the ad, the business name. In the ANSI color mode,
the EDIT MENU is displayed, then the selected field to
edit will flash. In monochrome mode, the field is
displayed below the EDIT MENU. You must then choose
from the EDIT MENU:
...[E]dit - - - Allows for editing that field. The entire string of
characters must be typed.
...[N]ext - - - Move to (select) the next field for possible editing.
...[P]revious - Move to (select) the previous field for possible
editing.
...[S]ave - - - Saves the edited record.
...[Q]uit Edit- Exits the edit function. If there were any changes
to the record, you are prompted to save. You may
save the new data, or restore the old data.
[T]ransfer - - Allows for file transfer through the File Transfer Menu.
...[U]pload - - Allows for the "Originator" or the sysop to upload
a file to the advertisement record. The originator
may upload to the ad when it is placed, or at a later
date. If the uploaded file replaces a previously
uploaded file, the prior file is deleted.
Note: When operated in Local Mode, the [U]pload feature only
allows entry of the file name into the advertisement
record. The sysop is then responsible to place a copy
of the file into the appropriate directory. If the
simulated upload replaces a previously uploaded file,
the prior file is deleted.
...[D]ownload - Allows for any caller to download the file sent by
the person who placed the ad.
Note: With [U]pload, the caller is prompted for the filename
and the protocol. On [D]ownload, the caller is
prompted for the protocol only. On uploading, if
(by chance) a file already exists with the same name
entered, the caller is notified, and the transfer
procedure is stopped.
...[R]emove - - Allows for the "Originator" or the sysop to remove
the file from the advertisement record AND FROM THE
DISK. Other callers cannot effect any change to
someone else's advertisement.
[N]ext - - - - Allows for viewing the next record. All records
loaded from the database file are numbered. Just
below the address on the business card, there's a
number like this: "03 of 73" meaning record 3 of
73 available records. Maximum records is 100 per
database.
[P]revious - - Allows for viewing the previous record.
[S]earch - - - Allows for searching for a particular string of
characters from the record. This function opens a
small menu while its searching the active records:
...[N]ext - - - If a record is found, the search pauses, and displays
this record. Use this function to continue searching
the remainder of the records (view the next one).
...[S]earch - - This allows for typing in a new string of characters
String to search for. The search begins at the first record.
If the search does not find the string requested, the
function just exits, returning control where you
started.
...[Q]uit - - - Stops the search at the current record.
[G]oto Record #
Allows for viewing a particular record number. If
the number entered is beyond the available records
(below 0 or over the last record number), the record
displayed will either be the first or last record.
[F]orward to Next Database
This feature places you into the next database. If
you're viewing database 1, pressing 'F' will move
you to database 2, without redrawing the database
menu or the ad viewing screen. If you're in the
last database, 'F' returns you to the beginning.
Think of it as scrolling you through, clockwise.
[R]eturn to Previous Database
This feature places you into the previous database.
If you're viewing database 5, pressing 'R' will move
you to database 4, without redrawing the database
menu or the ad viewing screen. If you're in the
first database, 'R' sends you to the end. Think of
it as scrolling you through counterclockwise.
[Q]uit - - - - Exits program back to the BBS, skipping the Database
Menu.
REMOVING RECORDS
----------------
When the command line switch "/COMPRESS" is invoked, all the database
files are searched. The records marked "DELETED" are physically
removed from the files. The command looks like this:
SELL'EM /COMPRESS
Place this command into your BBS event batch file, and your databases
of advertisements will maintain themselves. As a sysop, you might
need to prune it occasionally. "Originators" of the ads might forget
about them.
TECHNICAL
---------
SELL'EM.EXE performs its own COM port I/O, no redirection programs
are required. COM1 through COM4 are supported.
With high speed modems and their ability to perform data compression,
the Data Terminal Equipment (DTE) must feed the modem faster than the
modem feeds the phone line. This is where the DTE gets "locked" at
rates like 19200 or 38400 baud. To ensure the modem's buffer does
not get overwritten, RTS/CTS transmit flow control (hardware flow
control) is used by SELL'EM. The modem initialization string for the
BBS must turn this function on. Some modems use the command AT&B1 to
unconditionally lock the DTE, or AT&B2 to lock the DTE for 9600 and
greater baud rate callers, and unlocked for 2400 and lower. Also,
some modems use the command AT&H1 to enable the hardware flow control.
Check your modem owner's manual.
Comm port functions include buffered send/receive input and output,
interrupt driven receive. If installed, the 16550 UART's 16 character
FIFO buffer is supported for faster transmission speed. Works well
with earlier UARTs, also.
Carrier Detect is monitored. If a caller disconnects (hangs up) the
phone line, SELL'EM will automatically exit, and return to the BBS.
The BBS is expected to then perform its own reset.
User input time is monitored. A caller has two minutes (120 seconds)
to read the advertisement, or make a menu choice. Basically, the
user must strike a key at least once every 120 seconds or SELL'EM
will exit to the BBS.
Incoming characters are checked for error conditions. If a FRAMING
error, PARITY error, or DATA OVERRUN error occurs, SELL'EM.EXE will
recognize the error and exit to the BBS.
The User BREAK is recognized. Once received (see previous paragraph)
SELL'EM immediately breaks operation, and exits to the BBS. The
User BREAK signal is 0800 hex (0x0800), not <Ctrl> C. Some terminal
programs send the User BREAK with the '<Alt> B' key combination.
All files used by SELL'EM are opened in SHARE mode. This allows
for the program to be accessed by more than one caller at a time.
When SELL'EM writes to the data files, file locking is first
performed. This technique protects the system from failure in case
one node tries to read a file at the same time another node is writing
to it.
On exit of SELL'EM, ERRORLEVELs are returned. Your batch file can
check the ERRORLEVEL and determine what has happened. The following
is a list of SELL'EM's ERRORLEVELs and their meaning:
ERRORLEVEL 0 Normal exit from normal operation.
ERRORLEVEL 5 Normal exit from User BREAK.
ERRORLEVEL 10 COMPRESS function performed successfully.
ERRORLEVEL 15 Error exit: Keyboard time out. No user input
for 120 seconds.
ERRORLEVEL 20 Error exit: Carrier Lost. Telephone line was
disconnected.
ERRORLEVEL 25 Error exit: Incomming character framing error.
ERRORLEVEL 26 Error exit: Incomming character parity error.
ERRORLEVEL 27 Error exit: UART Receive Data Register overrun.
ERRORLEVEL 28 Error exit: Receive Buffer data overrun.
ERRORLEVEL 30 Error exit: Error on the command line.
ERRORLEVEL 40 Error exit: Memory allocation: out of "HEAP"
memory.
ERRORLEVEL 90 Error exit: Unsupported COM port.
COM1: through COM4: only.
ERRORLEVEL 100 Error exit: Unable to read the BBS file.
ERRORLEVEL 110 Error exit: Unable to read SELL'EM.DBM,
the database menu file.
ERRORLEVEL 120 Error exit: Unable to open or write to the
temporary files used in the /COMPRESS feature.
The best way to check for ERRORLEVELs is through a batch file. Add
a line like the one below in the batch file that calls SELL'EM:
IF ERRORLEVEL 100 IF NOT ERRORLEVEL 101 ECHO *** SELL'EM cannot find the BBS file! >> C:\BBS\DATA\BBS.LOG
Review your DOS manual for more information on ERRORLEVELs.
REGISTRATION
------------
SELL'EM.EXE is not public domain, but Shareware. You are granted a
limited license to operate this program for a test period of 30 days.
Completing this test period, if you decide to continue its use, you
must register with the programmer. The registration fee is $19.95.
For a printed manual, add $5.00 plus $1.00 shipping and handling.
California residents add 8.25% sales tax ($19.95 + $1.65, or
$24.95 + $2.06 + $1.00). The file REGISTER.FRM is included for your
convenience.
Make a check or money order payable to:
Sagerquist Micro Engineering
1414 W. Kerrick St.
Lancaster, Ca. 93534
BBS: (805) 723-6908
Payment is a one time investment which allows you all further revisions
at no extra expense.
Registration of SELL'EM will increase its usefulness for you and your
BBS callers. The database menu will expand from four to a maximum
of twenty! The available records will expand from five to a maximum
of one hundred! The credit banner stating "Unregistered" you see on
exit will go away.
Please distribute this program, i.e. place it in your communications
program download area for others to evaluate and use. Your comments
on this program are gladly accepted (requested, actually) at the data
number above. Please use the BBS as our communication vehicle. I
will gladly respond to all comments through the BBS.
COPYRIGHT
---------
This program is protected under US Federal Copyright laws. No
alteration of the executable program file is authorized without
expressed written permission from Sagerquist Micro Engineering.
DISCLAIMER
----------
This program is distributed as is. No warranty, either expressed or
implied is offered and the programmer is not responsible for any
damages or expenses that may occur through the use of this program.
The user shall determine its suitability. Extensive testing has been
performed and every effort has been made to ensure satisfactory
performance prior to release. Please communicate any difficulties
with the programmer through the BBS at (805) 723-6908. Any problems
received will be treated as a top priority.
CREDITS
-------
Many thanks to Mr. Jeff Silks of California City, Ca. (BBS (619)
373-7058) who tested every function of SELL'EM.EXE more thoroughly
than I thought possible. The direction and suggestions he gave
were above and beyond anything I could have asked for, and SELL'EM.EXE
is a better program to show for it. Thanks, Jeff! I owe you one!
Many thanks to Mr. Bill Duffy of Indio, Ca., (BBS (619) 342-6871) who
brought a compatibility problem to my attention. Mustang Software's
WILDCAT! BBS version 3.0 now uses DOOR.SYS rather than CALLINFO.BBS,
but in a format different than others. Thanks to his persistence,
SELL'EM now works well with WILDCAT! v3.0 and earlier versions.
Thanks, Bill!
Thanks to Jack Cross of Sheppard AFB, Tx. (BBS (817) 855-1526), and
Charles Bell of West Palm Beach, Fl. (BBS (407) 731-1675) for
advising me of the errors to v1.2, and for testing v1.3 prior to
release.
Thanks to Debbie Engwiller of Rosamond, Ca. (BBS (805) 256-6447)
for her many efforts, suggestions, comments and direction during
on-line testing of version 1.4.
Thanks to Gloria L. Short of Houston, Tx. (BBS (713) 467-9103) for
her input, making SELL'EM compatible with TRIBBS, through both
DOOR.SYS and TRIBBS.SYS.
Thanks to Kent Craig of Vincennes, In. (BBS (812) 886-9269) for his
input and close attention to some fine details he discovered in the
program and the transfer batch files during extensive in-line testing
of version 1.4.
Thanks to Phil Allamong of Quarryville, Pa. (BBS (717) 786-0715) for
notification of the RTS/CTS flow control problem in v1.4, and for
testing v1.6 prior to release. I appreciate your persistence!
Thanks to David Swift of Waldorf, Md. (who operates a private
corporate BBS) for final testing of SELL'EM v1.5 the night of
release. Your final confirmation is what I needed!
Thanks to Michael Carnell of Charleston, SC. (BBS (803) 766-7228)
for suggesting what has become "Ad Placement Screening", allowing
the BBS sysop to operate SELL'EM as a business.
Thanks to Scott Hunter of Mustang Software, Bakersfield, Ca., for
his guidance on file locking, and file share programming for the
multi-tasking environment.
Thanks to Tom McElvy of Norfolk, Va. (BBS (804) 490-LUST) also for
pushing the "Ad Placement Screening" functions, and for his extensive
testing in a miltitasking, multinode BBS, network environment,
using 8088, 80286, 80386, and 80486 equipment. Version 1.7 could
not have been completed without his efforts. My hat if off!
Thanks to Byron Hill of Memphis, Tn. (BBS (615) 298-1443) for
requesting the sound switch /S:. Now, you can turn off that "end
or beginning of database beep" that keeps you up at night!
HISTORY
-------
07/15/93 - Version 1.8 - Returned to interrupt driven transmit.
Finally found that transmitter bug!
Sysop's name effectively removed from the
database. The sysop's name is still there,
its just not used any more. Database files
will remain the same for now.
Command line switches overhauled. "/B:...",
"/D:...", and "/S:..." switches may be placed
in any order. "-COMPRESS" is now "/COMPRESS".
Database name placed below business card and
description in ASCII (non-color) display.
02/11/93 - Version 1.7 - Added "Ad Placement Screening" so SELL'EM
can be operated as a business.
Revised all file access to "shared" access
with locked/unlocked files. This allows
for SELL'EM to operate cleanly in a multi-
tasking environment (multi line BBS).
Fixed bug in GOTO function: when a number
greater than the amount of records is typed,
the record pointer was beyond the amount
of records, pointing to a record that did
not exist.
Adjusted code in File Transfer function that
may have been unreliable.
Fixed problem caused when remote keyboard
types a curser arrow.
Adjusted the Edit function to allow the
ANSI color caller to see which field is
being edited, even if the field is blank.
Command line now may define the directory
where the BBS's caller info file is located.
11/10/92 - Version 1.6 - Comm routines revised again. For reliability,
transmit is now "polled" while receive is
interrupt driven. Versions 1.4 and 1.5 would
crash if the caller would try to type ahead
while characters are being transmitted.
Fixed nasty bug that caused system to crash
when two ads are in the database and the
second was deleted, then removed (with the
-COMPRESS feature). A memory pointer was not
being "NULL'ed" out.
10/27/92 - Version 1.5 - Added RTS/CTS (hardware) transmit flow
control recognition for operations with
high speed modems and "locked" DTE rates.
10/20/92 - Version 1.4 - Added support for multi-line BBS's through
the BBS files MEGAHST#.DEF and DORINFO#.DEF
where the # is the node number.
Added file transfer (through external
protocol programs) allowing each record to
have an attached file available.
Revised for compatibility with TRIBBS
through TRIBBS.SYS, and DOOR.SYS.
Maximum amount of records per database
increased to 100.
Comm port routines fine tuned, again.
08/01/92 - Version 1.3 - "Go to Record (number)" function added.
ANSI code sequences reduced for efficiency.
Comm port routines fine tuned. Fixed bug
that caused v1.2 to freeze.
Database Menu name and copyright banner may
now be customized through the file
SELL'EM.NAM.
07/08/92 - Version 1.2 - Comm port routines overhauled. Now supports
the 16550 UART's 16 character FIFO buffer as
well as earlier UARTs.
Input and output are now both buffered and
interrupt driven.
More thorough error checking now takes place.
Unregistered, the evaluating sysop's available
databases is increased from 2 to 4. After
registration, up to 20 databases may be
defined.
In the search function, the record number is
included in the search. If the search string
is "14", all records are searched for the
two characters together "14". It still may
not go directly to record 14.
Revised for compatibility with RBBS v17 and
its DORINFO1.DEF format.
06/15/92 - Version 1.1 - Revised for compatibility with WILDCAT! v3.0
and its DOOR.SYS format.
03/28/92 - Version 1.0 - First release, awaiting comments and
suggestions.