PCBFRE PCBoard Dynamic File Ratio Enforcer A PCBoard Post/Call Ratio Enforcer Post/Download Ratio Enforcer Files Ratio Enforcer Bytes Ratio Enforcer Version 2.0, Sometime in 1992 PCBFRE2?.ZIP For use with PCBoard Versions 14.5x Copyright 1991, 1992 Geoffrey Sy ALL RIGHTS RESERVED See !PCBFRE.NEW for a listing of changes since version 1.0. This program is supported by: Geoffrey Sy 51 Wyatt Walk Toronto, Ontario Canada M5A 3T3 Support BBS: The GRAFIX Connection HST: (416) 287-9002 2400: (416) 286-8734 - 2 - TABLE OF CONTENTS ================= Introduction ........................................................ 3 Installation ........................................................ 3 Editing PCBoard's PWRD ......................................... 3 Editing PCBFRE's Configuration/Program Manager ................. 3 Editing PCBoard's Door Security File ........................... 3 Editing PCBFRE Door Script file ................................ 4 Trial Run ...................................................... 4 Editing PCBFRE's Display Files ................................. 5 PCBFRE Display Files Substitution Variables .................... 5 Program Capabilities ................................................ 6 Security/Language specific display files ....................... 6 Non-Standard COM Ports ......................................... 6 Session Logging ................................................ 6 Multi-Tasking/Node Support ..................................... 6 Network, File Sharing Support .................................. 6 SysOp Function Keys ............................................ 7 Error Codes ......................................................... 8 Problem Report Procedure ....................................... 8 Support/Registrations................................................ 9 Disclaimers/Copyrights .............................................. 9 - 3 - INTRODUCTION ============ This program was written because of SysOps complaints of PCBoard's lack of ratio enforcement. PCBFRE is a utility door for PCBoard 14.5x to calculate user download bytes based on their download/upload and post/call ratio. PROGRAM INSTALLATION/OPERATION ============================== Step #1: ======= Edit PCBoard's PWRD file and set daily download bytes to 0 for the security levels affected by this program. Step #2: ======== Edit PCBFRE's configuration file. The one included in this archive is called PCBFRE.CNF. Please use FRESM to edit this file. The command line for starting FRESM is: FRESM PCBFRE.CNF C:\PCB ³ ³ ³ PCBoard System directory Name of CNF file There are 2 options on the main menu: A - Edit Configuration File B - Edit PCBFRE Security Table C - Edit Banking Data File Option A edits PCBFRE's configuration file. Some of the options include BBS Name, Registration number, Display screens. Option B edits PCBFRE's Security levels table. This is where the ratio options for the security levels are controlled. Option C edits PCBFRE's banking data file. Use this function to modify information in the banking data file. -4- Step #3: ======== Setup PCBFRE as a PCBoard Door. Load up PCBSetup, go to edit door security file and add the following line: USER DOOR Filename Password Sec Login SYS SYS Shell Path to DOOR Files ΝΝΝΝΝΝΝΝΝΝ ΝΝΝΝΝΝΝΝΝΝΝΝ ΝΝΝ ΝΝΝΝΝ ΝΝΝΝ ΝΝΝΝ ΝΝΝΝΝ ΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝΝ PCBFRE 0 Y Y N Y The Autologin and Shell options are optional. PCBFRE requires about 128K to operate. Make sure you have enough memory if you want PCBoard to shell to PCBFRE. The USERS.SYS option must be set to Y or PCBFRE won't work! You may now edit the PCBFRE door script. Call up the text editor and create a file with the following item (this file is included in this package): @ECHO OFF REM PCBoard door script for PCBFRE - PCBoard File Ratio Enforcer. %PCBDRIVE% CD \PCB\FRE PCBFRE PCBFRE.CNF C:\PCB /POSTDL /NEW:204800:1 CD %PCBDIR% IF (%INPCB%)==(Y) EXIT BOARD The above is your typical door script file. The command line for PCBFRE is explained below: PCBFRE PCBFRE.CNF C:\PCB /POSTDL /NEW:204800:1 ³ ³ ³ ³ ³ ³ ³ Award new user with starting bytes ³ ³ Enforce post/download instead of post/call ³ Location of your PCBoard Node directory PCBFRE's configuration Some of the available command line options are: /BANK - This tells PCBFRE to bypass the enforcer functions and run the banking functions. /POSTDL - This tells PCBFRE to enforce "Messages Post/Files Download" Ratio instead of the normal Messages Post/Calls Ratio. /NEW:204800:1 - This tells PCBFRE to give new users some upload ³ ³ credits. ³ ³ ³ The number of uploaded files to give new users The number of uploaded bytes to give new users New users affected by the /NEW:bytes:files option must meet the following criteria: Files Uploaded and Downloaded = 0 Bytes Uploaded and Downloaded = 0 User's security level must exist in PCBFRE's ratio table That's all that's needed. The line "IF (%INPCB%)==(Y) EXIT" is used to exit from shelled doors. If you don't run PCBFRE as a shelled door then you may remove it. Step #4: ======== TRIAL RUN. If you have a runtime error please check the runtime error codes in this document. -5- Step #5: ======== Cosmetics: The external display files called 'PCBFRE', 'FILES', 'MSGS' and other may be edited to your taste. Press F2 to edit the non-colored version and F3 to edit the ANSI version from FRESM. Feel free to customize these files to match the theme of your BBS. All ASCII, ANSI and IBM graphics characters are supported in the display files. You can use all PCBoard's @X## colour codes as well as the following variables: @MSGRATIO@ SysOp set # of calls allowed per message posted @FILERATIO@ SysOp set # of files download per file uploaded @BYTERATIO@ SysOp set # of bytes download per byte uploaded @ADJBYTES@ Adjusted download bytes available @MSGLEFT@ Messages user has left/uploaded to PCBoard @MSGREAD@ Message user has read/downloaded from PCBoard $B$ modem open baud rate $C$ connect bps same as @BPS@ $CLREOL$ clear to end of line $DEFAULT$ the default color $FIRST$ callers first name $N$ port number 0=local, 1..4 $NAME$ callers full name same as @USER@ $NODE$ current node number $NONSTOP$ display the rest of the file non-stop $SYSOP$ sysop name $TIME$ daily time limit in minutes @BEEP@ beep speaker, control-g @BOARDNAME@ the name of your BBS @BPS@ estimated connect bps @CITY@ city and state of caller (all caps) @CLS@ clear screen @DATAPHONE@ caller's business/data phone number @DLBYTES@ total bytes downloaded - all calls @DLFILES@ total files downloaded - all calls @EVENT@ time of next scheduled event @EXPDATE@ subscription expiration date @FIRST@ first name of the user (first letter capitalized) @HOMEPHONE@ caller voice phone number @LASTDATEON@ last date on (mm-dd-yy format) @LASTTIMEON@ last time on (hh:mm format) @MORE@ force a "MORE" prompt @NUMTIMESON@ number of times on system @SECURITY@ users current security level including conf. add. @SYSDATE@ host date in (mm-dd-yy format) @SYSTIME@ host system in (hh:mm format) @TIMELEFT@ time remaining that call incl. all credits, etc. @TIMELIMIT@ time allowed from PWRD file @TIMEUSED@ minutes used since logon @UPBYTES@ total bytes uploaded - all calls @UPFILES@ total files uploaded - all calls @USER@ complete name of the caller (first & last in caps) @WAIT@ force a "press enter to continue" prompt -6- PROGRAM CAPABILITIES ==================== PCBFRE is a standard ProKit door. Some of its features include: + Security-level / Language specfic display files: To activate this feature, replace the first 3 letters of the menu name with the security level. For level 60, NORMAL becomes 060MAL For language specfic menu, let say French just add the extension as specified in PCBoard. For French (.FRE), NORMAL becomes NORMAL.FRE Add level specfic and it becomes 060MAL.FRE + Support for non-standard COM ports COM3 - COM8. If the door doesn't work with your COM port you may set the following environment variables: SET COMBASE=nnnn Sets the base I/O address (in DECIMAL) for non-standard COM ports. SET COMIRQ=n Sets the IRQ level for non-standard COM ports. + Multi-Nodes are Supported + Baud Rates up to 115200 bps are suppored + Complete session logging. Everything the user sees can be captured in a session log. This is enabled by adding SET PRODEBUG=ON to the door script; output will be logged to DEBUG.OUT. + Operation under DoubleDOS, TaskView or DesqView is fully supported. The door will give up idle time to speed the other partition. If screen bleedthrough or background lockups occur, you may need to add the environment statement SET OVCRT=ON before executing the door. This disables direct screen write. + Automatic network file sharing is implemented on all system files. The door has been tested under LanTastic, Novell, NTNX and other true networks. -7- + Sysop function keys are supported: F2 . . . Lockout current user F3 . . . Toggle printer logging F4 . . . Toggle operator page bell F5 . . . Shell to DOS while caller is online F7 . . . Toggle alarm beeps F8 . . . Force immediate logoff and hangup F9 . . . Toggle local display F10 . . . Chat with user ALT-B . . Debug/display memory and overlay information ALT-I . . File input during message entry and CHAT ALT-F . . File capture of all displays ALT-M . . Node status display ALT-N . . Sysop on-next ALT-P . . Print complete session ALT-X . . Sysop dos-exit next UP . . . Increase online time DOWN . . Decrease online time PgUp . . Display comments from user file PgDn . . Display phone numbers, expiration and password HOME . . Sysop help message, listing available functions SHIFT . . F1..F10 . Sysop macro keys defined in PCBSETUP ERROR CODES =========== Error Class Description 2 DOS: File not found (Check command line) 3 DOS: Path not found 4 DOS: Too many open files (Check CONFIG.SYS) 5 DOS: File access denied 6 DOS: Bad file handle 12 DOS: Bad file access code 16 DOS: Can't remove current dir 15 DOS: Bad drive number 100 I/O: Disk read error 101 I/O: Disk write error 102 I/O: File not assigned 103 I/O: File not open 104 I/O: File not open for input 105 I/O: File not open for output 106 I/O: Bad numeric format (Check numbers in .CNF) 150 CRITICAL: Disk is write-protected 151 CRITICAL: Unknown unit 152 CRITICAL: Drive not ready 153 CRITICAL: Unknown command 154 CRITICAL: CRC error in data 156 CRITICAL: Disk seek error -8- 157 CRITICAL: Unknown media type 158 CRITICAL: Sector not found 159 CRITICAL: Printer out of paper 160 CRITICAL: Device write fault 161 CRITICAL: Device read fault 162 CRITICAL: Network or Hardware failure 200 FATAL: Division by zero 201 FATAL: Range check 202 FATAL: Stack overflow 203 FATAL: Heap overflow 204 FATAL: Bad pointer operation 205 FATAL: Floating point overflow 206 FATAL: Floating point underflow 207 FATAL: Bad floating point operation 208 FATAL: Overlay Manager not initialized PROBLEM REPORTS =============== If you need to report a problem, please capture the session using DOS environment variable "SET PRODEBUG=ON". The ouput file called "DEBUG.OUT" will be in the same directory that PCBFRE is executed from. Depending on the node, the file will be named "DEBUG#.OUT" where # is the node number. Please include this file as well as the USERS.SYS file in use during that session and a thorough explanation of the problem encountered. Please ZIP these files up and send it to my support BBS. -9- SUPPORT ======= If you have any questions, bugs, or suggestions, please contact me. I may be reached on the NaNET IBM, ProDOOR echo, Intelec(tm), City2City(tm), Rime, and other PCBoard echoes. Or by mail to the above address. Registered users may contact me using the voice number in the registration document. Since this is user supported software, I don't expect you to register if you don't like it or if it doesn't meet your needs. Just stop using it after a reasonable trial period (2-3 weeks). The program is not crippled in any way, there is only a short delay at the start/exit of the program to remind the user that the copy is un-registered. I've had to do this because I've seen users use my program and never bothered to echo me a comment on the program. I like to get feedbacks, doesn't matter if they're good or bad. If you like the program and use it regularly, please register it. Registration only costs $15.00 and you'll receive unlimited voice support and upgrades. Please mail your registration to the above address. When you register, I will personally upload a registered copy and your registration information to your BBS. The registration information will register all future versions of PCBFRE for you. If you are not in the local 416 calling area then please add the appropriate amount to cover mailing and disk or long distance charges. If you don't want the disk or me to upload the program, then don't add anything - your registration number will be sent by first class mail. Future copies downloaded from bulletins boards will work as registered copies when branded with your registration number. If you plan to drop by my home to pick up the registration, please let me know in advance. I live in a rough neighborhood, so watch yourself if you really must pick up the registration in person. A few has dropped by so far and and have escaped safely with their registration. STANDARD DISCLAIMERS/COPYRIGHTS =============================== This program is provided on an "AS IS" basis. No warranty of any kind is expressed or implied. YOU USE THIS PROGRAM AT YOUR OWN RISK. I take no responsibility for any damage caused directly or indirectly from the use or the inability to use this program. ProKit & Pro* Utilities - Copyrighted: Samuel H. Smith - The Tool Shop PCBoard - Copyrighted: Clarke Development Company Other - Copyrighted: Respected Owners