ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ TEXTVIEW 3.1 ³ ³ A PCBoard Programming Language based Application ³ ³ By Joseph Sheppard - The Ledge PCBoard (818) 896-4015 ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ÄÄÄÄÄÄÄÄÄÄÄ DESCRIPTION ÄÄÄÄÄÄÄÄÄÄÄ Textview allows the Sysop to make text based features available to callers in an online magazine format. It includes an option to allow your users to download from a list of files you specify. The sysop can also give extra time in the application to users of a defined security level. All of the PCBoard function keys are supported, including Sysop Chat (F10). TextView is written using the PCBoard Programming Language. This being the case, the program is compatible with any setup that is successful at running PCBoard 15.1 or greater. Downloading is handled using your PCBoard setup, so all of the protocols you have working in PCBoard, will be used automatically by TextView including external protocols. Textview can shell to another program or batch file from inside TextView if you wish. This can be any kind of routine you like as long as you have enough free memory to support it. The program supports menu branching. You can make up menu selections, that when selected execute another Textview based feature, and will return to the original feature when exited. This can be done in multiple layers. TextView features can be launched from most files that can be displayed via PCBoard. For example, you can launch a TextView feature from your Bulletin menu. TextView can launch other PPE programs. Simply place an exclamation point, followed by the path and name of the PPE, plus any parameters needed to run the PPE in the first column of any TextView displayed file, and the PPE program will be executed! If you have software that you want to distribute to users of a certain security level only, you can make TextView available to users with the same security level as your customers or higher. When your customer goes into TextView, he can read new product information and download an ZIP of the latest version of your software. You choose the download path, so you can put the files in a directory only accessible via TextView. You can even give him extra time when he is in the application, which will be deducted when he exits, restoring the original time he had left when he entered. The following user created files are supported in both ASCII and ANSI: Welcome screen (TVHELLO & TVHELLOG) Menu screen (TVMENU & TVMENUG) Download Directory (TVDIR & TVDIRG) Goodbye Screen (TVBYE & TVBYEG) TextView can display as many files as you can support on your system ASCII and ANSI versions are displayed depending on which mode your caller is in. The caller has the option to toggle between ANSI and ASCII display mode. Both file formats (ASCII/ANSI) are supported, but not required. If one or the other format is unavailable, the caller will be shown what is available for that menu selection. TextView will also convert PCBoard @x color codes on the fly, as well as text @VARIABLES@. Command stacking is supported, so callers can capture several menu selections with a command such as 1;2;3;4;NS. ÄÄÄÄÄ SETUP ÄÄÄÄÄ Here is a description of the files you will need to get started: 1. Filename: TV.PPE Purpose: Textview program Location: The directory specified in CMD.LST 2. Filename: TV.CNF Purpose: Defines parameters for TV.PPE Location: The same directory as TV.PPE. Sample File: RESERVED D:\TV 20 0 0 M D:\TV\DL RESERVED DEFAULT TextView N RESERVED NONE Explanation: RESERVED: Reserved for Future Use. D:\TV: This is the path to the files you want to display. I would suggest putting these files in their own directory. 20: This is the number of files available for display. It can be any number higher than 1. 0: Replace this with the security level you want to all more time in the application for. For instance if you are providing product support for your level 50's and up, AND you want to give them more time in the application, put a 50 here. If you don't want to give anyone more time put a 0 here. 0: Replace this with the number of minutes you want to add to the security level defined above. If you want to give your customers an extra 15 minutes in the application, then put a 15 here. If you don't want to add any time, put a 0 here. M: This line tells TextView how you want to handle downloading. Your choices are: Single file, Multiple files or No files (downloading not allowed). If you only have one file that you want available for downloading, then put the letter S on this line. If you have a list of files you want the user to be able to download then put an M on this line. If you don't want the user to be able to download at all, put the letter N on this line (if N is selected the download option won't appear on the command line at all). D:\TV\DL: Replace this with the path to the files you want the user to be able to download. Be sure that there is nothing in this directory that you don't want downloaded because the user will be able to take whatever is there. Please don't call me and yell at me because a user downloaded the USER file while in TextView. The only way this could happen is if you screw up and put \PCB\MAIN on this line. IMPORTANT: If you have selected the Single file option (an S on line 6) then you will need to add the filename to the path (example D:\TV\DL\FILES.ZIP). If you aren't going to allow downloading, then put the word NONE on this line. RESERVED: Reserved for Future Use. DEFAULT: This line affects Registered Versions of TextView only. Registered Sysops may place a filename on this line, which must include the path if the file isn't in the same directory as TV.EXE. The file named on this line must be an ASCII file containing the names and paths of the files to be displayed. This feature is designed to cut maintenance time for Sysops who display online magazines which are updated frequently, but have the same filenames week to week. USAToday and NewsBytes are examples of these types of magazines. The files must be listed in the order that they appear on the menu. For example, a file that had these three lines: D:\PCB\GEN\WELCOME D:\PCB\GEN\NEWUSER D:\PCB\MAIN\CALLER Would cause TextView to display your WELCOME screen if the caller chose #1 off the menu. Your NEWUSER file if he chose #2 and your CALLER log if he picked #3. The number of files listed in this file MUST be the same as the number you have on line 3 of the .CNF file. The files NBYTES.TV and USA.TV (included in TVSAMPLE.ZIP) are examples of how this option can be used for easy maintenance of the Newsbytes and USAToday. And can be activated by registered users if they specify one of these filenames on line 9. TextView: You can give your TextView application a name that will be placed in the CALLER log to let you know what features are being used. N: TextView can run as a "Sub-System". This means that you can run one application, then follow it with TextView automatically. The original purpose for this is to display game door scorecards. One put the letter Y on this line followed by the desired prompt, and TextView will give the option to answer (Y)es, (N)o, (G)oodbye before running. For a score door, the sysop might put the following on this line: Y;View the Scorecards? TextView will show: View the Scorecards? (Y)es, (N)o, (G)oodbye: _ If the caller answers Yes, then TextView is run, and he is shown the material. If he answers No, then he is returned to the BBS. If he answers Goodbye then he is properly logged off. This feature is valuable if you want to give a user certain material to read before or after a particular application. For example, you might use it to launch an TextView application from a bulletin, giving the user an option to execute the feature or not. Leave the letter N on this line if you don't want TextView to act as a "Sub-System". RESERVED: Reserved for future use. NONE: Replace this with the name of a batch file or program you would like your users to be able to run from the TextView menu. This can be any kind of routine you like as long as you have enough free memory to support it. Programs that write directly to screen will need a program like Marshall Dudley's "Doorway" to redirect the output. The program or batch file specified must be in the same directory as TV.PPE. The user can run the routine by typing the word you put on this line. For example, if the routine you want to run is called REGISTER, then you would need a program called REGISTER.EXE or REGISTER.COM, or a batch file called REGISTER.BAT in directory with TV.PPE. Then your caller would type the word REGISTER from the TextView command line to run the routine. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ TEXTVIEW AS A DOOR ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ 3. Filename: TEXTVIEW Purpose: Used by PCBoard to run the TextView from the DOOR menu Location: Your Door batch file directory Sample file: @ECHO OFF ECHO !D:\TEXTVIEW\TV.PPE TV.CNF > PCBDOOR.TXT Explanation: @ECHO OFF: Stops echoing commands to the local screen ECHO !D:\TEXTVIEW\TV.PPE TV.CNF > PCBDOOR.TXT: Creates a file called PCBDOOR.TXT in the default directory for the node the caller is on. Inside the file is the command to run the specified TextView feature from the door menu. Note: In order to run TextView from the Door menu, you must enter TEXTVIEW in your DOORS.LST file. This is done by via PCBSETUP.EXE. Set it up as a SHELLED door, by putting the letter "Y" under the column that says "SHELL". ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ TEXTVIEW FROM THE MAIN MENU ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ To execute a Textview based feature from the Main Menu Command prompt, you must put an entry in your CMD.LST file. To do this, you have to run PCBSETUP.EXE. Go from the main menu to "File Locations", then to "Configuration Files". Next cursor down to your CMD.LST file and hit F2 to edit it. You must put in an entry for each TextView based feature. It might look like this: Command Security PPE/MNU File -or- Keystroke Replacement ============ ============ ======================================= 1) NEWUSER 10 D:\TVIEW\TV.PPE NEWUSER.CNF 2) SUPPORT 10 D:\TVIEW\TV.PPE SUPPORT.CNF The First column is the word the caller will type to view the feature. The second is the minimum security level the caller must have to use the feature. The third is the command required to run the feature with the location of TV.PPE first, and the name of the configuration file second. IMPORTANT: the configuration file must be in the same directory as TV.PPE. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ TEXTVIEW FROM A DISPLAY FILE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ You can automatically execute a TextView feature from most files that PCBoard can display. For example, I launch three different TextView features from my Bulletin Menu. One menu item is for information on the U'NI-net Echomail Network. When the caller goes to read this item, the TextView U'NI-net Menu is instantly produced, from there the caller can read from a menu of text files, or even download programs. When the caller exits that feature, the Bulletin menu prompt is displayed! The way this is done is to go into BLT.LST from PCBSETUP.EXE and assign a file name to display as a bulletin. Then hit F2 to edit that file. Place a single line in the file to execute the TextView feature you want. The line must start in column one with an exclamation point, then the path to TV.PPE, a space, then the name and path of the configuration file. It would look like this: !D:\TVIEW\TV.PPE UNI.CNF You can launch other PPE's as well in this from an TextView based feature. Several features can be stacked in this fashion. For example, on my BBS a caller can go to the Bulletin Menu, Select "New User Information", the "NewUser" TextView menu is produced instantly. From there, if the caller selects the menu item for "Information on Internet Email", the "Internet" TextView menu is produced. When the caller exits the Internet feature, the Newuser menu is produced, and when that is exited the Bulletin prompt is back. This makes TextView amazingly flexible. If you run another program of mine called DDoor, you can launch any door on your system from a TextView menu selection! < Shameless Plug ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FILES YOU PROVIDE ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The following files can be used to enhance your TextView features. You don't have to create them. If you don't, then the code will handle it by skipping to the next step, so if you don't want to support an ANSI version of each file, simply don't include it. If you do use these they must be in the path defined by you in TV.CNF. These files can be created with any ASCII or ANSI editor, or PCBEDIT from CDC. Security Level specific and Language Specific files are also supported, as well as RIP screens. TVHELLO & TVHELLOG: These are like PCBoard's WELCOME & WELCOMEG. will be shown to your callers inside the application. TVDIR & TVDIRG: This is the directory of files you are offering for download in the TextView application. If you don't allow downloading, then this file need exist. You can use any of the PCBoard directory maintenance programs to create and maintain this file, including PCBFILER. This file will be automatically colorized. To make this work correctly, reserve the first three lines of the file for header information. Have the first filename and description on LINE 4. TVBYE & TVBYEG: This the last thing the caller sees before leaving the feature to go back to PCBoard. TVx & TVxG: These are the actual files available for viewing. x equals the menu number of the file (So, TV1 and TV1G would be Menu item 1). It is VERY important to remember to rename each feature in this manner. This is written in the same manner as the PCBoard Bulletins (BLT1, BLT1G, etc.). Registered users may specify their own filenames in a file defined on line 9 of the .CNF file. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ NON-STANDARD PORTS ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ If your non-standard setup (multiport board or whatever) works with PCBoard, it will work with TextView. Don't give this a second thought, this is one of the reasons I completely rewrote the program using the PCBoard Programming Language. Compatibility is guaranteed! ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ TEXT VARIABLES & COLOR CODES ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ All display files will respond to the standard PCBoard text variables and color codes. Place the variables anywhere in any line to be displayed by TextView and they will be translated. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DOWNLOADING INSIDE TEXTVIEW ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Under most circumstances, Downloading with TextView is simple, because it uses PCBoard's own downloading routines. However, when you want to give people who don't have downloading access on your BBS the ability to download specific files inside a TextView application, it can be a little tricky. First, you must give these callers some daily K-bytes in the PWRD file. TextView bypasses the fact that they don't have access to the main board (D)ownload command, but they still have to have some K-Bytes available in the PWRD file for it to work. The other consideration is that the routine from PCBoard that TextView uses to download files, flags only the legit files they are allowed to download, but then presents them with a prompt to "Download Flagged Files (Y)". I found out that if the caller answers (N) to this question, he can then flag any file on the system! To get around this, you have to manipulate your FSEC file a bit. Here is what mine looks like: D:\NU\DL\,*.*,10, ,*.*,30, The first line lets anybody with level 10 or greater download any file in my D:\NU\DL directory. This is the directory for my "New User Door". The next line tells the system to only allow level 30 or above (registered users) to download from any other directory. If you set it up this way, your unregistered callers can download from the TextView door, but if they try to flag other files on the system, they will get a security message. The FSEC file can be edited using PCBSETUP.EXE. ÄÄÄÄÄÄÄÄÄÄÄÄ REGISTRATION ÄÄÄÄÄÄÄÄÄÄÄÄ TextView represents years of work. I have been supplying updates of this program since June of 1988. In November of 1993 I did a complete rewrite as a PPE without charging people who registered the program before anything. The fact that TextView is a PPE guarantees future compatibility with PCBoard. If you exploit the full power of TextView it will become an important part of your BBS. For this reason, you should pay to register it. If you find that your are still running TextView 30 days after setting it up, or if you'd like to unlock the registered features, please call The Ledge PCBoard at 818-896-4015 and type REGISTER at the main menu command prompt. This will allow you to register by MASTERCARD, VISA, DISCOVER or AMERICAN EXPRESS. If you prefer to pay by check or money order, please fill out REGISTER.TXT and send it in with a shareware contribution of $20.00 in US Funds. Registered users will receive a file called TV.KEY that when present in the same directory as TV.PPE will bypass all "unregistered" references, bypass the "Press Enter to Continue" prompt before TVHELLO is displayed, and will allow you to use line 9 of the .CNF file to specify your own custom filenames for display instead of TV1, TV2, TV3, etc. Valid TV.KEY files will automatically register this version of TextView and ALL FUTURE VERSIONS! There is no need to call my BBS each time I release a new TV.PPE to get your registered copy. Just download it from any source and your TV.KEY file will unlock the new version for you just by being there no mumbo-jumbo, no passwords...just run the program! I can be reached at my BBS, The Ledge PCBoard (818) 896-4015 - HST/V.32bis, U'NI-net Echomail Network (for which I am the International host), Internet: sysop@ledge.com, Compuserve: 76175,623 or US Mail at the address listed in REGISTER.TXT. If you contact me on my BBS, please ignore the mail-in validation procedure. Simply leave me a [C]omment with your questions and I will validate you as a "visiting Sysop" without delay. LEDGE SUPPORT: Please note that on your first call to the ledge, you can enter the Ledge Support area. It is a TextView feature that will allow you to view the current "TEXTVIEW.DOC" file and download the very latest version of TextView. You DON'T have to be a registered user on The Ledge to use this service! Please let me know you called though so I can validate you for future calls. UPDATES VIA INTERNET FTP: You can get updates to programs by Joseph Sheppard via Internet FTP! If you have an Internet account with access to FTP (File Transfer Protocol) ftp to kaiwan.com. Programs by Joseph Sheppard are located in the /user/uninet/sheppard directory. While this program performs fine on my system, I can't guarantee that it will work at all on yours. If you have a problem, contact me and I will attempt to solve the problem. ÄÄÄÄÄÄ THANKS ÄÄÄÄÄÄ Thanks to Samuel Smith, the genius behind Prodoor, ProKit, HS/Link and other programs we have all benefited from. I learned to program in Turbo Pascal so I could write the original TextView door using Sam's door kit routines. I have moved on to the PCBoard Programming Language, but I still owe Sam a lot for making his source code public so I could learn from it. Sam's Tool Shop BBS can be reached by calling (818) 891-6780. Thanks to Charles Shapiro, Sysop of Absolut(e)ly Temporary (702) 254-8601 for his valuable help in beta testing TextView. Thanks to Mark Rapp, Sysop the MicroSellar BBS (201) 239-1346 for some great technical suggestions that were very helpful in the creation of the original TextView door. ÄÄÄÄÄÄÄÄÄÄ DISCLAIMER ÄÄÄÄÄÄÄÄÄÄ I make no warranty of any kind, express or implied, including without limitation, any warranties of merchantability and/or fitness for a particular purpose. I shall not be liable for any damages, whether direct, indirect, special or consequential arising from a failure of this program to operate in the manner desired by the user. I shall not be liable for any damage to data or property which may be caused directly or indirectly by the use of this program. IN NO EVENT WILL I BE LIABLE TO YOU FOR ANY DAMAGES, INCLUDING ANY LOST PROFITS, LOST SAVINGS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF YOUR USE OR INABILITY TO USE THE PROGRAM, OR FOR ANY CLAIM BY ANY OTHER PARTY.