From: Frank R. Borger To: Basic Users Subject: Summary of changes to Michael Reese Basic August 1985 The following changes have been made to make basic work nicely with lower case input: This version of basic automatically converts all lower case char- acters to upper case, thus Program source may be in lower case. saving a program via the "save" command will result in an all upper case version. Case conversion does not take place under the following conditions: 1. During string input via a regular "INPUT" command. 2. During "INPUT LINE". 3. On source text enclosed in quotes. (This includes prompt strings and variables, which now may be lower case.) 4. On source text in a comment field. Note that string comparisons are still case sensitive. To enable input of commands, etc. in lower case a new SET command has been added, SET UPPER ON/OFF. The following is an enhanced (and cor- rected) description of the SET command. 3.14 SET PROMPT/TRACE/PASS-ALL/ECHO/UPPER ON/OFF This statement is used to set or clear a number of system condi- tions. The number of conditions is likely to increase in the fu- ture as functionality is added. Conditions now serviced include: TRACE: Default is OFF. SET TRACE is equivalent to the TRACE verb and should be used in preference to it because the TRACE verb is expected to disappear in future releases of this interpreter. PROMPT: Default is ON. The PROMPT condition is used to turn the INPUT and INPUT LINE question mark prompt on or off. The OFF mode is designed for special screen or page formatting and may be used in conjunction with the BREAK command. UPPER: Default is OFF. Causes string variables read with an "INPUT" statement to be con- verted to upper case. Useful for command parsers, specifying file names, etc. PASS-ALL-INPUT: Default is OFF. Causes reads to be done with TF.RAL set. Note that ctrl-C, ctrl-O, ctrl-Q, ctrl-S and ctrl-X will have their usual effect from a terminal, unless the terminal is set to be BINARY. Turned OFF when program STOPS. PASS-ALL-PRINT: Default is OFF. Causes writes to be done with TF.WAL set. Note that no carriage control characters will be added to any output. Turned OFF when program STOPS. ,fg 1 ECHO: Default is ON. If turned off, causes terminal reads to be done with TF.RNE. No input will be echoed. Turned OFF when program STOPS. Example: 210 SET PROMPT OFF 220 SET TRACE ON The following change has been made to the INPUT command. (Previo- usly the INPUT command rejected lower case ascii data, and only the INPUT LINE command could read lower case. INPUT V1,V2,V3 etc. Where N is an optional file number and V1, V2, V3 etc. are legal string or numeric variable names. The second form follows the rules for random access described for the PRINT statement. Numeric data must be separated by commas or spaces, successive string variables must be separated by a comma after the required number of characters have been typed in. A character legality check is performed to ensure that all characters are between oc- tal ASCII codes 40 and 137 inclusive and 11 (tab). If a "SET UPPER ON" command has been issued, lower case ascii will be con- verted to upper case. Under RSX, BAS cannot spawn itself, making life a little harder. You can get around this by installing separate versions as ...BA1 ...BA2 etc. Under VMS, BAS can spawn anything that has a 3-character .EXE file in the standard system account, SYS$SYSTEM. The RSX11M and P/OS versions now have imbedded error messages. No more looking in the back of the manual. The only thing they don't do is report the FCS error code too. P/OS users should be aware of the conditional assembly in BASPRE which prevents the error 28. error on starting up. (This essenti- ally omits the initial GMCR$ call which was commented out on the version that seems to be floating around on a lot of bulletin bo- ards.) I tried to go thru both the IAS and RSX11M versions to get rid of obsolete and confusing command files. In general both now have been cleaned up. (Anything that was in [1,203] on any earlier ver sions of this package are now in the VMS part.)