New Stuff in GT POWER 15.50 4-15-90 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Terminal Mode ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. The number of external protocols supported has been expanded from 10 to 15 protocols. 2. ENQ answer back. For systems requiring a response to the ^E character. If you need to use an answer back to ^E, please look under the Alt-I Misc. options and fill in the needed response, use the same syntax as a macro key. For example, '|' for carriage return, and '~' for a 1 second delay. 3. A new entry has been added to the phone directory, the DIAL SCRIPT. The DIAL SCRIPT is used to handle complex requirements needed to dial some numbers, i.e. when the built-in dialing routines can't handle the job. In a DIAL SCRIPT, the script writer must use the new command DIALER to dial the modem. DIALER automatically works with the number selected from the phone directory and will set the %FAIL variable to reflect whether the connection can be made. If the DIAL SCRIPT is successful in reaching the indicated system, a new command is available to signal the results to GT POWER. SET ONLINE true|false For example: SET ONLINE TRUE Would cause the program to do logging and exit the DIAL SCRIPT. If one is specified, GT POWER will chain automatically to the LOGON SCRIPT. The DIALER command has no parameters, please refer to the example below: ; The %NAME variable is passed in ; from the phone directory selection. writeln "Attempting to dial '" %name "' !!!" ; The DIALER command dials the selected ; entry automatically. You may issue ; SENDLN and GETLN commands prior to using ; the DIALER for handling PC Pursuit, etc. ; DIALER will issue the "ATDT123-4567" to ; the modem. dialer case %FAIL TRUE goto BUSY esac writeln "Success!" twait 1000 ; The SET command quits the script. ; The SET command must be used to exit ; from a DIAL SCRIPT. set online true :BUSY case %BUSY TRUE writeln "The line is busy..." twait 1000 set online false esac writeln "Failed to make connection..." twait 1000 set online false 4. New Script Variables %NUM .......... String variable. The phone number, ready to be dialed, from the phone directory. For example: "ATDT123-4567". Set by the new script command, FETCH, or set auto- matically by GT POWER in the new DIAL SCRIPTs. %DELETED ...... Boolean variable. Set to reflect the status of the last FETCHed entry from the phone directory. %CITY ......... String variable. Set to the PCP CITY field from the last FETCHed entry from the phone directory. %MARKED ....... A boolean. Added so that a script can determine when a directory entry is marked for circular dialing. This is especially useful in conjunction with the FETCH command. %BUSY ......... A boolean. It works with the new DIALER command. If the DIALER command fails to connect, i.e. %FAIL is TRUE, then the script can examine the %BUSY variable to see if the failure was due to a busy result. If a busy result was found, then the script can choose to redial after a small interval via the DIALER command. 5. The number of dialing prefixes has been expanded from 4 to 6. The new prefixes are '?' and '&'. 6. Different versions of the DOOR.EXE program must now be used, as follows: DOOR.EXE ...... for use with GR and GRO versions. TDOOR.EXE ..... for use with the GT and GTO versions. FDOOR.EXE ..... for use with the GTF and GTOF versions. 7. Several screens have been removed from the program and placed into a seperate file, GT.WIN. This file is not user modifiable, but has been created for technical reasons. (To free up space on the "near heap"). WARNING: You must put the GT.WIN file into the GTPATH directory to run this release. The GT.WIN file is not user modifiable, if you change it, GT POWER will not run. 8. NOTE: To users of the SPAWN command, who reported it was failing. I have not been able to reproduce the failure, but note that you must specify the FULL pathname when doing a SPAWN, including the extension. SPAWN c:\dos\edlin.com 9. New keyboard macro substitutions. %N1 ...... Comment #1 substitution %N2 ...... Comment #2 substitution Picks up the comment fields from the entry in the phone directory for the currently connected BBS. This is very useful for passing secondary passwords or other information via macro key. 10. When the Alt-H help screen is invoked, it no long erases the contents of the screen it overlays. 11. The (E)xchange command in the phone directory now allows you to call up a pick list. Select the desired directory with the CR or SPACEBAR, then press ESC to put it into effect. 12. The EXCH script command has been expanded. Previously, it was able to swap phone directories and macro files, now it is able to load different config files. Here is the syntax for the EXCH command: EXCH DIRECTORY file_name EXCH MACROS file_name EXCH CONFIG file_name In all cases, the extension must not be given, GT POWER will supply .DIR for phone directories, .KEY for macros, and .CNF for config files. 13. The maximum line length of the Alt-A command, ASCII Transmit, has been increased from 255 bytes to 512 bytes. 14. Transparent Mode. The Ctrl-Down key is used to toggle the terminal mode of GT POWER into Transparent Mode. This mode is used when calling out to a BBS and executing DOOR programs that require the usage of special keys, such as the Alt or Fn keys. In Transparent Mode, GT POWER will ignore all command keystrokes, instead it will send them to the host computer for processing. During Transparent Mode operation, the Status Line will be removed from the screen, so that the host computer can have access to all 25 lines. 15. Support for F11 and F12! The support for F11 and F12 will work only on IBM compatible computers, since GT POWER must supply an ISR to handle the keyboard. This ISR filters the scan codes from the keyboard, looking for 0x57 or 0x58 - those are the scan codes for the F11 and F12 keys, then it stuffs them direct into the BIOS key buffer. Works pretty good. Soooo, GT now supports 48 function keys, but you must have an enhanced keyboard to use them! For users of multi-tasking operating systems (or where conflicts exist with TSR programs), a BIOS keyboard option is provided under the Alt-I setup, Misc. Options. This option should be set to TRUE when operating under a multi-tasking operating system, or if a conflict with a TSR develops. 16. Point 'n Shoot Setup Screens. The new GT POWER introduces a new style of screen to the Alt-I and Alt-M setup. It is point 'n shoot. Use the arrow keys to move the highlight bar, then press CR to select an item for change. Data entry can be be terminated by a CR or ESC character. To exit from any of these screens you must press ESC. In addition, each entry may be selected by number, so previously written macros used to update the config will continue to function. 17. Configurable IRQ. The IRQ number can now be set between 0 and 7. Here are the default values for port addresses and IRQs: COM # 1 2 3 4 ------ ------ ------ ------ Port Address 0x03F8 0x02F8 0x03E8 0x02E8 IRQ 4 3 4 3 The command line parameter to change the port assignment for a particular COM # looks like this: /2 $03C2 This says, reassign COM #2 to hex address 03C2. Now, to also reassign the IRQ, one would add a colon and the IRQ number, like this: /2 $03C2:2 This says, reassign COM #2 to hex address 03C2 and instead of the normal IRQ3, use IRQ2. 18. New versions of GTBIMOD, DOOR and TDOOR are being introduced to accomodate the new IRQ and port addressing. The command line of GTBIMOD looks like this: GTBIMOD port baud bipath\ You may now specify 'port' as 'x:yyyy:z', where: x ........ COM port number yyyy ..... COM port address z ........ IRQ number, 0-7 If you use non-standard port configurations with BIMODEM, you will need to hard code the port configuration into the BI??.BAT files and use the BIMODEM setup programs to config BIMODEM separately. 19. The phone directory has been expanded. The Phone Number has been widened to 24 characters, and the Hours Of Operation field has been widened to 11 characters. Two new fields has been added - PCP CITY and DIAL SCRIPT. The PCP CITY is interfaced to the script language, so that PC Pursuit scripts can be polished up. The DIAL SCRIPT entry is used for entries that require special instructions to dial, for example PC Pursuit and Starlink. (See examples above). The GT_UTIL program has had two significant features added: (1) Nodelist import to phone directory format. (2) The conversion from 15.01 to 15.50 format will allow wildcard specification, so that multiple directories can be converted easily. WARNING: The GT_UTIL program must be used to convert the phone directory to the 15.50 format. 20. VT-52 emulation has been added. To set this mode, you place 'VT52' into the emulation parameter under Alt-I setup. TRUE will enable VT100. FALSE will disable emulation - which gives BBS mode. 21. The Quiet Mode may now be toggled while the phone directory is on screen without having the screen disappear. 22. Scripts may be linked to entries in the phone directory that lack phone numbers. When those entries are selected, the associated LOGON SCRIPT will begin execution. This acts as a menu for scripts. 23. A new script command has been added. It allows script processing to be done 1 command at a time. The new command is SINGLE STEP. The syntax: SINGLE STEP on|off For example: SINGLE STEP on When in SINGLE STEP mode, the script will pause after the execution of each line of code and display the '~' prompt. To resume execution, any key may be pressed. The '~' will be erased and execution continues with the next command. 24. A new script command has been added. It allows the script language to retrieve information from the phone directory, i.e. BBS name, PCP CITY, Baud Rate, Phone Number, etc. The new command is FETCH. The syntax: FETCH n Where 'n' is the entry number in the phone directory. From 1 to the maximum number of entries. If a value higher than currently available is requested, then the variable %FAIL will be TRUE. If a value for a deleted entry is selected, then the new variable %DELETED will be TRUE. If a value for an entry marked for the Circular Dialer is selected, then the new %MARKED variable will be TRUE. Here is an example script showing the usage of some of these new items. v3 = 0 :loop v3 add %3 1 v4 str %3 case %4 = 100 quit esac fetch %4 case %fail TRUE quit esac case %deleted TRUE goto loop esac writeln %4 = %name goto loop 25. More new script commands: DELAY n The DELAY command does NOT cause an immediate delay. Rather it sets a delay in milliseconds to be associated with the ECHO command. This will allow script writers to slow down the execution of commands so that they may be more easily followed on the screen. For example: DELAY 100 Causes a 100 millisecond delay whenever a line is echoed to the screen under control of the ECHO command. CURSOR on|off The CURSOR command allows the script writer to make the cursor disappear and reappear. For example: CURSOR OFF Causes the cursor to disappear from the screen. 26. Full fifo buffering in 16550A UARTs is now supported! This feature is very nice for use with high speed modems, LANs and/or multi-tasking operating systems. Data loss errors are virtually eliminated through the usage of this advanced UART. Please note that the standard 8250 type UART is still supported. The presence of the 16550A UART is detected automatically. 27. 25-line mode. The Ctrl-Home key is used to toggle the 25-line mode. In 25-line mode, GT POWER removes the Status Line from the screen, and allows all 25 lines for the display of information. Unlike Transparent Mode, all the command keys of GT POWER will continue to function normally. 28. The /L command line option has been expanded, so that the user may now vary the duration of each beep. The format of the new command is: /Lm:n Where the ":n" is optional. m ..... A value from 0 to 9 which will vary the frequency of the beep, 0 is the lowest and 9 the highest. n ..... The duration of the beep in milleseconds. This is optional and defaults to 225 milliseconds. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Host Mode ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Two new options have been added to the ^U line in host mode screens: A ...... The DTE baud rate. B ...... The DCE baud rate. 2. SYSOP.BBS A lot of stuff has been added to the SYSOP.BBS file. The program will no longer build a default SYSOP.BBS (i.e. you must have a SYSOP.BBS file to run the program properly). A default SYSOP.BBS file is included with the distribution package. Please refer to it as a starting point for any customization you might want to do. Each item is contained on a **SINGLE** line, with the maximum allowed length of 256 characters, although many entries may not exceed 80 characters, for logical reasons. Carriage returns may be embedded in each item by using the \r notation. See the SYSOP.BBS file for examples. The items in this file may custom- ized, but no great change in length is recommended. In general, items originally less than 80 characters, may be expanded up to 80 characters. Items originally greater than 80 characters, may be expanded up to 160 characters. 3. A new version of GT POWER is being introduced, dubbed GT Rapid. You will know you have the "Rapid" version, if the name of the EXE begins with GR or GRO. If you can use the "Rapid" version (it has been found incompatible with some older XT systems with ancient BIOS chips), it offers several advantages. It is compiled with a new C compiler, TopSpeed C by Jensen and Partners International. The new compiler produces very tight and fast code. The "Rapid" version also handles the /V overlay process without need of the old "errorlevel 255" procedure. Since the new compiler handles overlay of external processes better than the old compiler (i.e. it does not "eat" memory), the '-' option of the /V command is the default with the "Rapid" version. If you want GR to do a quit with errorlevel 255 after each logoff (when an overlay of GR has occurred during the session) you must now use the '+' option to force it to do so: /V:E+ The new compiler will not allow GT POWER to change the DOS PROMPT during execution of the (S)hell command from host mode. This means that if you want to have this display in the prompt during host mode shells, you must modify the pertinent batch files to include a "PROMPT=Exit to GT POWER$_$p$g" or whatever you prefer. This prompt setting will not affect your setting in the master DOS environment, so you don't have to worry about resetting it at the end of the batch file. GT POWER will still be able to change the prompt during terminal mode operation. This is done by GT POWER changing the master DOS environment and when the shell is finished, GT POWER will reset the master environment automatically. 4. A new path has been added to the GT POWER pathname setup. It is called the BBS/CBS Path. If it is set, GT POWER will search that path for BBS/CBS files. GT POWER will also search the GTPATH directory for these files. The order of search is GTPATH first, then the BBS/CBS path. This feature will be of great interest to LAN users, who are advised to become familiar with the DOS "subst" command, which will allow GTMDIR.BBS and GTDIR.BBS to be common across a LAN. subst e: c:\ This command on the server would allow all nodes to address drive E: and drive C: as the same logical drive. Please note that the door batch files may also take advantage of the BBS/CBS path. It would be wise for any LAN operator to make shared .BAT files Read- Only, otherwise they can cause SHARE violation, as DOS does not open them is shared read mode. The proper command is: attrib +r *.bat Assuming, of course, that the .BAT files are in the current directory. 5. A new FILES.BBS format is being introduced! This new format allows for multiple line descriptions, up to 10 lines. Here is a sample: QEDIT21.ZIP 126966 03-07-90 03-07-90 | Latest version of Qedit. Has some New Features. Great Editor! PZB102-H.ZIP 86686 03-08-90 03-07-90 | ZIPBAT.EXE The easiest and fastest shell for PKZ102.EXE PKZ102.AXE 136192 03-08-90 10-20-89 | PKware's latest file compression program ( change to PKZ102.EXE TREEVU11.LZH 125952 03-11-90 03-11-90 | Current version of TREEVIEW ... A good Dos Shell. Among other things, please notice that there are two dates recorded, the first is the upload date, the 2nd is the file date. The new format actually has more features than shown here (this is what it looks like when GT POWER records an upload description) - for a full description of the new layout, please refer to the SYSOP TOOLS docs. Special attention should be given to the SYSOP TOOLS File Validate routine, which can reformat the FILES.BBS listing into a form that you like better. 6. GT POWER now limits the number of attempts to initialize the modem upon entry to host mode to 3 tries. After that, GT POWER assumes that the modem is okay and leaves it at that. 7. Messages addressed to "All" may no longer be made private. 8. A new permission is available for usage in the GTPASSWD.BBS file: NP. If "NP" is specified for a CLASS of caller, that CLASS may not issue a sysop page. 9. For callers doing long uploads, GT POWER now makes an attempt to give them a 5 minute grace period to enter a file description. GT POWER may not be successful due to conflicts with the schedule, which will override any grace period. 10. A new main menu command, "DG", is available. This is (D)ownload + (G)oodbye all in one command. So callers can begin a D/L and go to bed, confident that the line will disconnect at the end of the transfer. 11. Callers who issue a sysop page command will be asked to enter a PAGE REASON. The reason may be up to 3 lines long and will be logged, if the page is not answered. 12. CB Simulator. The CB Simulator is an online conferencing feature that is intended for use on multi-node BBS systems that have a NetBIOS emulator installed. The CB Simulator checks for the presence of NetBIOS before allowing callers to get stuck in that mode. When the host mode enters the CB Simulator locally, it automatically enters Split Screen Mode (which is inherently half-duplex). You should advise your callers to manually invoke Split Screen Mode on their end when going into the CB Simulator, otherwise they will not see what they type (remember, the CB Simulator is half-duplex). A new authorization may now be placed into the GTPASSWD.BBS file: CB. The "CB" permission is required to allow callers to participate in the CB Simulator. A caller may now escape from the CB Handle entry process by erasing the handle, if it is visible, and pressing return (remember that the ESC key will automatically erase things like this). The letter (Z) is used to invoke the CB simulator from the main menu. When setting up the CB simulator, please make sure that you have allocated adequate NCBs. I have setup the following command for my NetBIOS startup: lanbios irq=5 address=2 ncbs=35 sessions=15 I am not sure if 35 NCBs are enough, but it seems to work fairly well on a three node LAN. On the server, if it is not dedicated, you should insure that the server can manage sufficient simultaneous tasks - my server was set for 2 simultaneous tasks, but I now have it setup for 5. This does consume memory, to be sure, each extra task requires considerable buffer space, but it is required for the CB simulator to work alongside the other network tasks. On my server, I have found it necessary to overlay all external protocols due to the lack of free memory above GT POWER. Three BBS files are required: CBWELCOM.BBS ...... Welcomes callers to the CB simulator CBHELP.BBS ........ Displayed in response to the "@help" entry. CBPAGE.BBS ........ Displayed to a caller who receives a page. Currently these are the CB commands supported: (one must be in the CB simulator to issue these commands). @help ........ Produces the help screen. @ignore ...... Ignore further pages. @page ........ Invite another caller, by handle, into CB mode. Ex: @page foxy Where 'foxy' is the handle of the caller you are paging. The handle is obtained by running the '@who' command (shown below). @quit ........ Quit from CB mode to the main menu. @tune ........ Tune the CB to channels 1 through 98. Ex: @tune 5 @who ......... Find out who else is on the system and which channel they are tuned to. @sys ......... For sysops only. Allows broadcast messages or messages directed to individual pids. Ex: @sys 5 Hello Mike! Ex: @sys The system is going down in 5 minutes! The first example sends a message to pid 5, where Mike is logged on. The second example sends a broadcast message, to all pids, telling them that the system is going down soon. Please note, that these pids do not have to be in the CB simulator to get these messages. The messages will interrupt most things, except file transfers. Note: A "pid" corresponds to a "position" or "workstation" on the LAN. GT POWER supports up to 10 pids. The CB simulator uses the NetBIOS Datagram feature to pass the messages between pids on the LAN. The Datagrams are sent to the group name 'GT_POWER_CB_SIM' (the 16th byte is 0x00). GT POWER now registers this group name whenever it is brought up under NetBIOS in a LAN situation. The Datagrams used by GT POWER are of a particular format, as follows (for those of you that want to try their hand at NetBIOS programming): Maximum length: 128 bytes Byte Offset Description ----------- ----------- 0 'S' for special messages, such as '@sys'. 'C' for normal CB simulator messages. 1-2 The channel number the message is addressed to. Channels 1-98 are normal CB channels. Channel 99 is used for broadcast message usage. 3-4 The originating pid number. This is used to keep a pid from processing messages that he originates. Datagrams are received by all stations that have the group name registered. 5-6 Transaction code number: '00' - Normal messages. All 'C' type datagrams. '01' - Who inquiry. 'S' type datagram. '02' - Who reply. " " " '03' - Page inquiry. " " " It is anticipated that the transaction code will be used for other things in the future. I anticipate that '04' will be used to submit DOS commands to other pids and '05' will be used to submit a shutdown command to the other pids. I am reserving code numbers up to '50' for use by GT POWER, values above that will not be used by GT POWER and conceiveably could be used by other software. 7 Reserved. 8 ',' constant. 9-16 Handle of the sender. If does not have handle, then the first name of the sender. 17 ',' constant. 18-127 Text. In '@page' transactions, this is the handle of the caller that is being paged. In other transactions, this may be blank or contain a regular message. It is variable length, only the amount of data required is transmitted, up to the maximum of 128 bytes. 13. The GTPASSWD.BBS file now accepts comment lines. This is done by placing a semi-colon in the first column of the line. Like this: 01 [23:00,1000,24:00,C:\GT] CLASS SY ; this is a comment! B1 [1:00,1000,2:00] CLASS UP,DN,MS E1 [2:00,1000,2:00] CLASS UP,DN,MS 14. The (T)ype command now checks to make sure that binary files are not typed by callers. GT POWER might make a mistake, because it examines the file to determine the percentage of alpha characters in the file. If the percentage is 85% or above, then the (T)ype command is allowed (only the first 128 characters of the file are examined). 15. In Host Mode, Alt-H now displays the DTE and DCE baud rate, so that sysops can determine the caller's baud rate without alerting the caller (i.e. without using the (Y)our info command). 16. The new compiler will not allow GR (the new "Rapid" version) to change the DOS PROMPT during execution of the (S)hell command from host mode. This means that if you want to have this display in the prompt during host mode shells, you must modify the pertinent batch files to include a "PROMPT=Exit to GT POWER$_$p$g" or whatever you prefer. This prompt setting will not affect your setting in the master DOS environment, so you don't have to worry about resetting it at the end of the batch file. 17. The bug in the ^N command that caused it to ignore the schedule in assigning new time limits has been fixed. The bug in the ^N command that caused it to continue to show the old bulletins is now fixed. 18. It is now impossible to stack commands after a unsuccessful page. This makes it impossible to enter "p p p p p p p p p" at the main menu in host mode. Only the first page will be done, the others will be discarded. 19. The format of the GTUSER.BBS file has changed. The two changes being made are: a. The baud rate field will now be composed of two baud rates seperated by the ',' character. For example: 19200,2400 This would indicate that the DTE rate = 19200 and the DCE rate = 2400. b. The name field will have a placeholder added in the case of single name callers. For example: A Paul ; SY 19200,2400 ANSI 1-30-90 1380 388 18:27 This caller has no last name, indicated by the ';' where that name would otherwise appear. The ';' character was chosen, since it is one of the few illegal characters in a caller name. Versus the old way: A Paul SY 19200 ANSI 1-30-90 1380 388 18:27 20. The GT.LOG will now contain an entry that will indicate that a caller PAGED without receiving a reply. This entry is made in the log when the caller logs off (and will not be made if the sysop chats with the caller prior to logoff). ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ New stuff in GT POWER 15.01 9-20-89 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ GT POWER 15.01 represents a bug fix release. Very few feature changes are included. Changes worthy of a seperate mention follow: 1. Crash Mail calls are now logged in the GT.LOG file. The entry appears as: CRASH ANSWER nnnn Where 'nnnn' is the DCE baud rate of the caller. 2. The command used to quote messages, (R)ead, now defaults to the previously read message in the current area. The ESC key can be used to choose a different value. 3. The macro {^PRT} has been fixed so that it works properly. 4. The macro {^END} has been fixed so that it works properly. 5. The RG command would not allow you to stack commands after a 'Q'. For example, "q;g", would not work. It is now fixed. 6. Under GTO the pathname setup screen has had cosmetic bug fixed. 7. Phone directory. Entries with dates with leading zeros now sort into the correct sequence. 8. The upload description problem with external protocols is fixed. Also the files are not left in GT$WORK$ any longer. 9. The USER_MSG.IDX files were not expanding! This is fixed. This is a very bad bug. My USER_MSG.IDX file on my main message base in Phoenix had over 570 entries, BUT there was only room for 503! Not good, huh? 10. A problem with the loss of the 'millisecond loop count' has been cleared up with the introduction of a seperate delay mechanism for macro keys. Under ASCII/Macro Setup, a new field, "Macro char delay in ms" has been added. This had been done by the "ASCII char delay in ms" prior to this time. 11. The FOSSIL version did not run on Tandy 2000, due to a quirk of the Standard Library function "delay()". I have recoded the "delay()" function to use portable DOS calls. Also, the /V:S option has been added to the FOSSIL version, this will allow FOSSIL users to overlay the (S)hell and Alt-1 commands during host mode - on the Tandy 2000 the overlay mechanism does not work, so this option will allow non Tandy 2000 FOSSIL users to avail themselves of the overlay feature. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ New stuff in GT POWER 15.00 6-20-89 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ o 1. Due to the problem of overlay shells causing a small amount of memory to be eaten each time a shell is executed, a "QUIT 255" will be automatically executed after any call that has executed such a shell, either as a door, external protocol or remote shell. To accomodate this new feature, the HOST.BAT file should be constructed in the following manner: :HOST GT1500 ... if errorlevel 255 goto HOST Other errorlevels and housekeeping stuff need not be changed. Please note that an 'errorlevel' of 1 is used for many error exits from GT. It may be trapped and appropriate action taken (like the reboot of the computer or restart of the HOST.BAT file. o 2. A new status line indicator "SCR", shows when a script is executing. o 3. New option for BBS files. The ^U, variable substitution line. You can now begin a line in one of your BBS/CBS files with a Ctrl-U and then get the following substitutions for the remaining part of the line. M ....... Current message base description. S ....... Current file section description. Wn ...... Set the width of the following paramter to 'n' positions. X ....... Xmit stats. The X alone would show the D/L amount in K. XF ...... The XF would show the D/L amount in files. R ....... Recv stats. The R alone would show the U/L amount in K. RF ...... The RF would show the U/L amount in files. C ....... The caller number. F ....... First name of the caller. H ....... Home of the caller - city & state. L ....... Time remaining in minutes. N ....... Caller's name. T ....... Current time. D ....... Current date. n ....... 'n' Number of blank columns. And quoting, "...", of course! Put any other text within quotation marks and it will be printed as is. o 4. Two color chat mode. Works only in ANSI graphics mode. o 5. Variable keyboard timeout in host mode. It is set to default to 10 minutes now, but this parameter, if given on the command line can override it. For example: /T8 Would cause the keyboard timeout to be reduced to 8 minutes. o 6. The "Read Global" mode is introduced. This will take you thru the entire set of joined areas without a break. And you can follow a thread the whole way! o 7. Due to popular demand, I am introducing an undocumented feature, against my better judgement (but I am writing this for you, sooo...) If you specify the '-' with the /V option, the automatic QUIT 255 will not be done. For example: /V:ED- If you used this option, then the QUIT 255 would be eliminated and the program would consume memory in the same fashion as 14.03 did. I believe this to be inherently dangerous, hence I do not plan to document it. However, I will advise anyone who complains about the QUIT 255 of its existence. So you are NOT sworn to secrecy over its existence. (I don't consider the README file to document these things.) :-) o 8. The dialing directory sort routine has been expanded to a 7th option, i.e. to sort the directory ascending on the new comment fields. o 9. The upload/download stats are now being accumulated by GT in the USER.CTL file. They are displayed on the (Y)our info display for the caller. This display has been redesigned so that it looks more organized. o 10. The (M)essage to sysop function will now insure that the caller is JOINed to the sysop message base, so the response from the sysop will be caught by the "Check for personal mail?" function. o 11. There is a new command line option, the /M option: /M ..... Suppress the "Check for personal mail?" prompt. /MN .... Allow the "Check for personal mail?" prompt, BUT default the caller's response to [y/N] instead of the normal [Y/n]. o 12. Whenever a message is addressed to Sysop, the program will now replace "Sysop" with the contents of the 3rd line of the SYSOP.BBS file. Which should now contain the name of the Sysop. The translation will not occur in netmail areas. o 13. Zmodem auto-download now available. This means that the terminal mode of GT will now look for the DSZ signature and automatically drop into ZMRX.BAT whenever detected. The signature is "rz\x0d**\x18". Of course, if this signature changes, then the auto- download will not work, and the PgDn method will have to be used. o 14. The Alt-I config has been changed. The pathname setup has been moved to the top screen, and the CTS, RTS & DTE options have been placed onto the misc. screen. o 15. More script changes. New built-in variables: %TIME .... The current time. %DATE .... The current date. New command, TDIFF, calculates the difference between two times and stores the result in minutes in integer format. For example: V1 = %TIME V2 = %DATE WRITELN "The current date/time is: " %1 " " %2 ONLINE V3 TDIFF %TIME %1 V4 STR %3 WRITELN %4 " minutes spent ONLINE on this date " %2 The GOTO command has been added to the script language. Here is an example script: V1 = 0 :LOOP V1 ADD %1 1 V2 STR %1 WRITELN "VALUE = " %2 CASE %2 = 100 WRITELN WRITELN "DONE!" QUIT ESAC GOTO LOOP Please note the a label must be on a line by itself, and that the first character of the label must be a ':' and it must appear in column 1. This loop will add 1 to variable 1 a 100 times, printing the result of the addition on each loop. o 16. The speed of execution of scripts has been improved. Please check any timing dependent scripts you have available. o 17. The (L)ocate function of the dialing directory has been expanded to search the script name entry, the telephone number and the new comment fields. o 18. The format of the Capture Review window has been altered to eliminate the vertical window frame lines, thus allowing a full 80 columns to be viewed. o 19. The WELCOME.BBS for use with message bases has been re-worked. If there is no MBULLETn.BBS file in the area, then the WELCOME.BBS will not pause after display. If there is a MBULLETn.BBS file, then there will be a "Press RETURN to continue:" between the two screens, but after the MBULLETn.BBS is finished, control will transfer directly to the read sub-menu. Also, the "A;1;R" command can now be entered as simply "A;1", as GT will now force an R automatically after a change to an area is performed. And, although it does not appear on the menu, it is now possible to perform the (A)read change command from the read sub-menu (so you don't have to (Q)uit first. o 20. On the (R)ead Messages sub-menu, there is a new item, the "Msg Area(+,-)" command. This function provides the equivalent function to "q a 2 r", except that you move +1 or -1 from the current message area. o 21. Color bulletins. You may now have colored bulletin files available from the GTBMENU.BBS! Regular bulletins would be called, as they are now, simply by the number, for example file '1' would be bulletin #1, file '2' would be bulletin #2, but the color versions would be '1.CBS' and '2.CBS', etc. o 22. The Circular Dialing function will now begin dialing from the point in the phone directory where the lite bar is located. In prior releases, the Circular Dialing function always began at the beginning of the phone directory. o 23. The message edit sub-menu has been expanded to include a (R)ead function. This will allow a caller to quote other messages, and it will allow sysops to include other documents inside messages. o 24. During the listing of areas available for the (A)rea change or (C)hange section commands, when a 'More?' appears, it is now possible to stack input. During message entry, when a message is being listed thru either the (R)eview or (L)ist options, when a 'More?' appears, it is now possible to stack input. o 25. During message entry, if the caller enter an .ORIGIN line, the line will be converted to an *ORIGIN line (which will not be harmful to the netmail programs). o 26. Another new version of DOOR.EXE is released. It makes some additional tweaks to the stack length, to improve reliability. o 27. You may now begin lines in screens (such as the bulletins) with a ^F (ASCII 6) character. Following the ^F character will be the name of a file to display. This file will be displayed in a nested fashion, i.e. as if it were a part of the main file containing the ^F character. A nice way to arrange bulletins, so that multiple CLASSes can be sent a collection of items to read. Please do not nest screens more than two deep! For example: ^FC:\GT\FOO.BAR o 28. A time limit to enter the password has been setup. The time limit is 15 minutes. If the caller cannot get the password entered in 15 minutes he will be terminated. o 29. If a caller calls the system within 10 minutes of a scheduled event, the system will allow him to "bail out" with no charge against his daily call limit. o 30. The message headers now contain the "Day of the week". The WEEKDAY.COM program is provided to convert message bases to the new format. To run WEEKDAY.COM, the message bases must have _already_ been converted to the 15.00 format. o 31. The new USER.CTL file is indexed for rapid access. And there will be only one USER.CTL, instead of the many GTMAIL.CTL files that existed prior to level 15.00. o 32. The system will now request confirmation before aborting the entry of a message. o 33. Attempts to gain entry to the system, by banned users, are now logged. o 34. When the sysop enters the local shell (Alt-1) the caller will be sent a notice telling him the fact, so that he will not wonder why his keyboard is "locked". o 35. The local shell (Alt-1) is now available from more places, instead of just at the main menu. However, upon return from the local shell, the return is made to the main menu. o 36. Private message areas are now possible by placing a '$' character before the pathname in the GTMDIR.BBS file. This feature cannot be used with the default message area. A private message area is an area where only PRIVATE messages are allowed. o 37. Read-Only message areas are now possible by placing a '<' character before the pathname in the GTMDIR.BBS file. This feature cannot be used with the default message area. A read-only message area is an area where no one is allowed to enter message (except the Sysop, I guess, since he can do most anything). o 38. The (L)ist message command, used during message entry process, requests the starting line number (which may be stacked ahead of time), so that the complete message need not be listed. o 39. The (D)elete line command, used during the message entry process, can now accept a range of lines. It will still accept single line deletes. For example, both of these are valid syntax: d;1 or d;2-4 Please note that the range _must_ be specified with the '-' character as the delimiter. o 40. The message edit function now allows the Topic of the message to be changed, prior to the saving of the message. Also the Topic is not automatically converted to uppercase letters, as it was in the past. o 41. The Ctrl-X Sysop command now requests confirmation, prior to disconnecting the caller. o 42. There are now LAN setup parameters which must be addressed if you hope to run GT POWER 15.00 on a network. They are: PID Number ..... Must be a unique number between 0 and 9. GT will support LANs of up to 10 GT POWER host systems (PIDs). PID Name ....... This should be the resource name that this node is known by on the network. LAN Path ....... This _must_ be the home directory for GT POWER on the network server (it need not actually run GT). The LAN Path directory will contain the USER.CTL, USER.IDX and PID_FILE.BBS (at the very least). These are created automatically. It is assumed that these files will be shared among a number, if not all, systems on the LAN. The LAN Path *must* be specified to get file and message sharing fully enabled. Without a LAN Path, GT will assume that a non-sharing environment is established (like a regular single node BBS). File sharing is implemented using the record locking facilities of DOS 3.1+ SHARE. It is recommended that you give this program adequate facilities to do its job. I have found this command line works well for me: SHARE /F:6144 /L:60 If you give SHARE too little trouble is sure to occur! o 43. New doors! GTNLOGON.BAT ..... New-user logon door. Runs just prior to the regular logon door. GTNLOGOF.BAT ..... New-user logoff door. Runs just prior to the regular logoff door. Naturally, if these files are not found in the GTPATH directory, the doors will not execute. o 44. New message threading option! You can now specify a textual search thread. The program will display all messages containing the indicated search string. The '?' character can be used as a wildcard character (that will match any character from the text. o 45. The SYSOP.BBS file now has 3 lines. The 3rd line should contain the name of the sysop of the BBS. This name will be used on messages sent to SYSOP. The first two lines on this file contain the (1) greeting to chat mode and (2) the city-state prompt for new users. o 46. The KL permission is now available in the GTPASSWD.BBS file. A CLASS of user with this permission can (K)ill messages, as if he were the Sysop. This is a handy permission for Assistant Sysops. It should not be given to the regular callers. o 47. The FA permission is now available. It must be granted before anyone can perform File Attaches from your system. This eases the overload on the FR permission, which now controls File Requests only. o 48. Major news! The (UN)join command is now included. This command must be executed by typing UN at the main menu. A list of conferences will be presented to the caller, and he may select a conference to UNjoin. The effect of unjoining will be to eliminate the mail scan for that conference at the next logon. The (A)rea change command can be used to re-join a previously unjoined conference. o 49. A macro key can now send the NUL character, binary zero, by including the following in the key: {NUL} o 50. Due to the many questions from users, the Modem Speaker strings will now default to the empty state. o 51. The limit on the number of doors has been raised to 999. The names of the door files above 99 will be changed to accomodate the bigger number. GTDOORnn.BAT ----- Doors 1..99 GTDORnnn.BAT ----- Doors 100..999 o 52. Door sub-menus are now possible. For example, if your GTDOORS.BBS had something like this: Main DOOR menu ============== A. Game Doors B. Database Doors C. Utility Doors Then if the caller selected 'A', he would be shown a sub-menu named GTDOOR-A.BBS, or he if selected 'B', he would be shown GTDOOR-B.BBS, etc. Whenever the caller made a numeric entry, he would be put into the selected door. A 'RETURN' will take the caller back to the main door menu, GTDOORS.BBS. o 53. New ASCII Transmit parameter adds the ability to specify an end- of-line delay time in milliseconds. o 54. New flow control option has been added. It is now possible to specify RTS flow control. This is useful with high-speed operations. When doing disk I/O during a file transfer, GT should now first lower RTS and then raise it again afterwards. o 55. New command line parameter, /S, is intended as a selective override of the "QUIET" mode, so that the Sysop page can be heard (but nothing else) while the system is in "QUIET" mode. o 56. Parameterized external protocols are now supported. Ten slots are provided for this purpose. The first five slots come pre- configured for Jmodem, Kermit, Zmodem, Ymodem-G and BiModem. The remaining five slots are totally open. Any or all of these slots can be fully modified. This change has required a change in the interface to external protocols, so that a consistent interface is employed. Thus new batch files for Kermit must be installed. They are included. The interface to the external protocol is as follows: 1. The two character batch file initials are taken from the table in GT and combined with TX and RX to make the name of the file. For example, the table shows KR for Kermit, therefore the two batch files are KRTX.BAT and KRRX.BAT. 2. The command line for the batch file is as follows: KRTX port speed filename1 filename2 ... When translated to the command line for the external driver %1 = COM port number %2 = Baud rate %3 and following are the filenames to process. For example this is my ZMTX.BAT file: dsz port %1 speed %2 handshake both sz %3 %4 %5 %6 %7 %8 %9 A new program, GTBIMOD.EXE is available to interface with BiModem --- a super new protocol. To get logging to work properly, with BiModem, you should: (A) Install BiModem to do full logging, i.e. both summary and detail logging must be enabled. (B) Install BiModem in a separate directory, I have mine in C:\GT\BIMOD\ and then make sure that the command line for GTBIMOD includes the correct pathname. (C) After the transfer is complete, GT POWER will read the BIMODEM.LOG from the indicated directory and format entries in the GT POWER style for the GT.LOG. Here are samples of both logs: GT.LOG ------ 4-20 16:22 BIMODEM LOG 4-20 16:22 TX: GT1500.C 1834 4-20 16:22 TX: OVR5A.C 8122 4-20 16:22 TX: OVR5B.C 9639 4-20 16:22 TX: OVR5C.C 25578 4-20 16:22 RX: ADV.ZIP 51624 4-20 16:22 BIMODEM: 5 FILES 96797 BYTES 0:04.02 TIME 399 CPS BIMODEM.LOG ----------- Connected to: ... 17:56:57 S 31402 2:12 237.8 BPS C:\GT\GT1.C 17:59:10 S 1886 8 235.7 BPS C:\GT\GT1500.C 17:59:19 S 9508 40 237.7 BPS C:\GT\GT2.C 17:56:58 R 51624 3:37 237.8 BPS C:\GTBBS\GENERAL\ADV.ZIP 18:00:00 S 11221 47 238.7 BPS C:\GT\GT3.C 18:00:48 S 3023 13 232.5 BPS C:\GT\GTBIMOD.C Disconnected @ 18:01:04 Please note that the "Overlay" option of the External Protocol table will not take any effect unless you use the /V:E option on the GT command line. The command line for GTBIMOD.EXE is as follows: GTBIMOD port baud bipath Where: port ....... the com port in use, you can use %1. baud ....... the baud rate in use, you can use %2. bipath ..... the path where to locate the BIMODEM.CFG and BIMODEM.LOG files. o 57. The door interface given in the GTDDIR.BBS file has been altered to allow for selective overlay of door programs. To enable this feature the sysop must use the /V:D option on the GT command line, then use the '&' char to selectively choose which doors are not to be overlaid. For example: E [EDLIN_Door_#1] &Enter Filename: This shows how to setup an entry for a door that is _not_ overlaid. If there is no prompt string, then you can simply give the '&' char by itself, as follows: E [EDLIN_Door_#1] & Again, the '&' char allows selective override of the /V:D command line switch. o 58. The phone directory has been redesigned. The structure has been changed from the ground up, to one that is more conducive for use with the C compiler now in use and to allow comments to be added for each entry in the directory. o 59. A minimum baud rate is now supported. At this time, it is only used in connection with the "Dialing Directory", that is it overrides the baud rates so that no connection should be made below a stated rate. This functions much the same as the pre-existing maximum baud rate. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - 13 -