#--------------------------------------------------------------------
#      Message and Configuration file for use with StrongBS
#                  version 1.75 (17th July 1997)
#--------------------------------------------------------------------
#        Do not alter unless you know what you are doing.
#       Changes to some of the entries may cause StrongBS
#     to fail. Keep a backup copy if you want to experiment!
#-------------------------------------------------------------------
# The following are some Configuration options:
# You may change them if you like

# "BarColor" is the foreground color of the progress bar (range 0-15)

BarColor:11

#-------------------------------------------------------------------
# The following defines the type of font used in StrongBS menus.
# It is only applicable to Risc OS 3.1x.
# You should not change it if you are using Risc OS 3.5 or later.
#-------------------------------------------------------------------

Font:default
FontWidth: 14
FontHeight: 14


# The following are the menu entries and their titles:

M0:StrongBS
M1:Info
M2:Squash options
M3:Make faster
M4:Squash mode
M5:3rd party options
M6:Library files
M7:Log
M8:Choices...
M9:Free memory
M10:Quit

M20:Assembly
M21:Routines
M22:Variables
M23:Convert
M24:Concatenate
M25:Remove
M26:REMarks
M27:Constructs
M28:Misc

M200:Remove assembler remarks
M201:Remove zero shifts
M202:Remove ALIGN directives
M203:Convert register names
M204:Convert SWI names
M205:Convert directives
M206:Convert zero offsets
M207:Convert register list
M208:Convert to shortest directives
M209:Concatenate directives
M20A:Assemble into Code (eta)

M210:Rename functions
M211:Rename procedures
M212:Remove unused functions
M213:Remove unused procedures
M214:Remove empty procedures

M220:Rename Integer variables
M221:Rename Real variables
M222:Rename String variables
M223:Rename Integer arrays
M224:Rename Real arrays
M225:Rename String arrays
M226:Rename vars in DATA lines
M227:Remove unused variables

M230:SYS names to numbers
M231:CHR$ to string
M232:ASC" " to number
M233:NEXT <var> to NEXT or NEXT,,
M234:-1 to TRUE
M235:Numbers to shortest form
M236:Memory operators to shortest
M237:Repeated spaces to SPC
M238:Repeated chars to STRING$
M239:*FX to SYS "OS_Byte"

M240:Lines
M241:LOCAL lines
M242:DIM lines
M243:DATA lines
M244:IF...ENDIF lines
M245:Strings
M246:READ statements
M247:VDU statements
M248:PRINT statements

M250:Remarks
M251:Garbage lines
M252:Blank lines
M253:Spaces
M254:Brackets
M255:Excess colons
M256:Fractions
M257:"Not equal" sign
M258:THEN
M259:LEN
M25A:LET
M25B:STEP
M25C:SYS
M25D:Debug code
M25E:0 assignments

M260:Keep first REM line
M261:Keep initial REM lines
M262:Keep REM starting with
M263:Insert REMarks file

M270:Remove empty IF construct
M271:Remove empty CASE construct
M272:Remove duplicate WHEN statements
M273:Remove empty WHEN
M274:Remove empty OTHERWISE
M275:Convert CASE to IF construct
M276:Concatenate WHEN statements

M280:Evaluate expressions
M281:Line numbering
M282:Insert Squash info
M283:Auto append Libraries

M30:Convert 0 to FALSE
M31:Convert DIV to >>>
M32:Convert AND to IF
M33:Convert real vars to integers

M40:Create new Squash mode
M41:Clear all options
M42:Full options
M43:Full including 3rd party
M44:Custom options

M50:Info

M70:Variables statistics
M71:Removed variables
M72:Removed routines
M73:Undefined routines

MS0:Output as
MS1:BASIC
MS2:Absolute
MS3:Absolute and Crunched
MS4:Preserve command parameters

# Error and warning messages start here

E0:Insufficient memory to load file - Please use the Task Manager and retry.
E1:Sorry, this is NOT a tokenised BASIC file. StrongBS will only accept tokenised BASIC program files.
E2:Your BASIC file contains
E3:You have selected variables renaming and havn't loaded any Special file! The output compressed file MAY fail to work as expected.
E4: %0 an EVAL function. %1
E5: %0 line reference by variable. %1
E6: %0 a RESTORE +<No. offset> statement.
E7: %0 a LIBRARY call, and have selected to rename variables or procedures. The output compressed BASIC program will not work. This version of StrongBS does not auto-append libraries.
E8: %0 an OVERLAY call. %1
#E9:To start, drop a BASIC program file into StrongBS window or its icon.
E10:You can not save an un-compressed file. Please hit the Squash button to start squashing.
E11:You need to enter a "Mode Title" before pressing the "Save" button. Try again later...
E12:You need to enter a "Filename" before pressing the "Save" button. Try again later...
E13:Mode definition file (%0) can not be located in the current modes directory!
E14:Insufficient RAM to load into StrongBS - Please use the Task Manager and retry.
E15:Ram transfer failed!
E16:Transfer Error: No room!
E17:To save the compressed output file, drag its icon to an open directory viewer.
E18: (Internal error code %0)/%1
E19:Sorry, this is NOT a BASIC file. StrongBS will only accept tokenised BASIC program files.
E20:Sorry, this is NOT a recognised "Special" file. A "Special" file contains special keyword identifiers that must be recognised by StrongBS.
E21: Variables passed to the EVAL function in a string form should be LOCKED from being renamed. See Manual for more details.
E22:To load a Special file, please do it after loading your source BASIC program file. The current BASIC file is already done!
E23:Sorry, the current BASIC file has already been squashed upon your request without the required Special File!
E24:You should have loaded the Special file after loading the source BASIC program file and before starting to squash!
E25:To load a Special file, please do it after loading your source BASIC program file.
E26:Please see the documentation for more details.
E27:Sorry, this BASIC program file seems corrupted!
E28:Your BASIC file also contains
E29: You need to append all required libraries to your main BASIC program and remove the LIBRARY call from the main program.
E30: StrongBS will replace all RESTORE +<No. offset> with RESTORE+0. 99.99% of the time, this will work. You should give it a try!
E33:Error in "SBSMake" file!  <SBSLinkDir:> token points to an invalid pathname.
E34:Error in "SBSMake" file!  <SBSLinkDir:> token doesn't point to a directory name.

ERINTL:Sorry, your source BASIC program got corrupted at line no. %0.
ERINT0:(Corrupt Source program - StrongBS fault.)
ERINT1:Please don't try to re-squash this program, re-load it an squash it once only. Assembly listing generated too long line.
ERINT2:(Contains an unknown SWI/SYS call.)
ERINT3:
ERINT4:
ERINT5:(Result file expanding - StrongBS fault.)
ERINT6:(Too many ELSE statements)

# General messages start here

Msg1:Squashing...
Msg2:Squashed
Msg3:Squash
Msg4:Re-Squashing

# Interactive help messages start here

Hx0:StrongBS main menu.|MMove right to display
Hx1:StrongBS Squash Options menu.|MMove right to display
Hx2:|MThis option is not yet enabled in this version of StrongBS.

H0: StrongBS info window.
H00:This is StrongBS information window.

H1: the Squash Options menu.
H10: the assembler listings Squash Options.
H100:Remove assembler remarks in assembler listings.|MREMarks outside assembler listings are not affected.
H101:Remove LSR#0 and LSL#0.
H102:Remove unnecessary ALIGN directives.|MALIGN directives are not required if an instructions follows them.
H103:Convert register names such as R0, R1 and PC into numbers.
H104:Convert SWI names into numbers.
H105:Convert the EQUD, EQUB and EQUW directives into the shorter alternatives DCD, DCB and DCW.
H106:Convert LDR/STRRd,[Rn,#0] or LDR/STRRd,[Rn],#0 into  LDR/STRRd,[Rn].
H107:Convert LDM/STMRn,{R0,R1,R3,R4,PC} into LDM/STMRn,{R0-R4,PC}.
H108:Convert EQUD and DCD directives into &.|MConvert EQUS, EQUB and DCB directives into =.
H109:Concatenate EQUD, DCD, &, EQUB, DCB, EQUW, DCW, EQUS, = and CHR$ to produce new shorter equivalent.
H10A:Assembler instruction mnemonics are assembled into the equivalent 32-bit value using the&(EQUD)directive.
H11: functions and procedures Squash Options.
H110:Rename functions into shortest.
H111:Rename procedures into shortest.
H112:Remove all uncalled and unused functions.
H113:Remove all uncalled and unused procedures.
H114:Remove all empty procedures.
H12: variables Squash Options.
H120:Rename integer variables.
H121:Rename real (floating) variables.
H122:Rename string variables.
H123:Rename integer array variables.
H124:Rename real array variables.
H125:Rename string array variables.
H126:Rename variables inside DATA lines providing the variable exists in the rest of the program.
H127:Remove all unused variables.|MUnused variables are those defined or used only once.
H13: conversion options menu.
H130:Convert SWI names in SYS calls into numbers.
H131:Convert CHR$<number> into an equivalent shorter string.
H132:Convert ASC<string> into a number.
H133:Convert NEXT token into the shortest form.
H134:Convert the number -1 into the token TRUE.
H135:Convert numbers into shortest equivalent.
H136:Convert memory indirection operators into the shortest possible form.
H137:Convert repeated spaces into SPC.
H138:Convert repeated characters into STRING$.
H139:Convert *FX calls into OS_Byte (SYS 6) calls.
H14: concatenation options menu.
H140:Concatenate listing statements and lines.
H141:Concatenate LOCAL statements and LOCAL lines.
H142:Concatenate DIM statements and DIM lines.
H143:Concatenate DATA statements and DATA lines.
H144:Concatenate IF...THEN...ELSE...ENDIF lines.
H145:Concatenate strings.
H146:Concatenate READ statements and READ lines.
H147:Concatenate VDU statements.
H148:Concatenate PRINT statements.
H15: the removals options menu.
H150:Remove all REMark lines and statements.|MThis will also remove *Command remarks.|MThis will not affect remarks in an assembly listing.
H151:Remove garbage (useless) lines that are never executed.
H152:Remove all blank and empty lines.
H153:Remove all unnecessary spaces.
H154:Remove all unnecessary brackets.
H155:Remove all unnecessary colons between statements.
H156:Remove all unnecessary digits in floating (real) number fractional part.
H157:Remove all unnecessary Not-Equal (<>) signs.
H158:Remove all unnecessary THEN keywords used in IF THEN construct.
H159:Remove ">0" in IFLENexpression>0.
H15A:Remove all LET keywords.
H15B:Remove all unnecessary STEP keywords.
H15C:Remove all unnecessary zeros in SYS statements.
H15D:Remove all defined marked debug code.|MA code bracketed between the REM --[ and REM ]-- will be removed.
H15E:Removes unnecessary +0 or -0 in simple assignments.
H15E0:Remove empty IF...ENDIF constructs.
H15E1:Remove empty CASE...ENDCASE constructs.
H15E2:Remove empty WHILE...ENDWHILE constructs.
H16: Remarks options menu.
H160:Keep the first REM line in the BASIC program.
H161:Keep all REM lines at the start of the BASIC program.
H162:Keep all lines starting with REM xxx, where xxx can be be any string.
H1620:Enter string after REM to identify REM line with.|MDo not enter the REM word itself!
H163:Move right to display installed REMark files.
H1630:Select one of these files to insert at the start of the compressed output file.
H17: Constructs options menu.
H170:Removes empty IF..ENDIF constructs.
H171:Removes empty CASE..ENDCASE constructs.
H172:Removes duplicate WHEN statements.
H173:Removes empty/unused WHEN statements.
H174:Removes empty/unused OTHERWISE statements.
H175:Convert CASE...ENDCASE to IF...ENDIF constructs.
H176:Concatenate WHEN statements in CASE...ENDCASE constructs.
H18: the other miscellaneous Options.
H180:Evaluate mathematical expressions.
H181:Automatic line numbering with increments of 10 if possible.
H182:Insert the string: "SquashedbyStrongBSon(date)" at the start of the compressed output file.
H183:Append Libraries automatically.

H2: the Make Faster squash option.
H20:Convert all 0's to FALSE token.
H21:Convert DIV tokens to >>> operator.
H22:Convert AND to IF.
H23:Convert real variables into integers.

H3:Move right to select and create Squash modes.
H30:Move right to create a new Squash mode.
H300:This window allows you to define and create new Squash modes.
H31:Click SELECT to clearallcurrentlyselected options.
H32:Click SELECT to select all Squash options.|MThis will not include any 3rd party option.
H33:Click SELECT to select all Squash options including all 3rd party options.
H34:This is the default Squash mode.|MIt is automatically selected when no other mode is selected.
H3X:Select one of these pre-loaded Squash modes.

H4: installed 3rd party Squash Options
H40:Click SELECT to open the 3rd party information window.
H4X:Select one or more of the 3rd party Squash Options.

H5: list of library files pointed by the "StrongBS$Library" variable.
H50:Select one or more files to auto-append to your source BASIC program.|MThese files will be compressed along with the main program.

H6: the Log menu.
H60:Log variables' statistical information.
H61:Log information on any removed variables.
H62:Log removed routine names.
H63:Log undefined routine names.

H7:Click SELECT to open the Choices window.

H8:Click SELECT to free all memory used by StrongBS.|M **Note**you will lose any an saved squashed file by doing this.

H9:Click SELECT to QUIT StrongBS.


HSA:Select this option to save the output file as
HS0: a BASIC StrongBS' squashed file.
HS1: an Absolute BASIC squashed file.
HS2: an Absolute StrongBS squashed file further squeezed by !Crunch utilityfromBernardJungen.
HS3: an absolute type (i.e one of the options above) and preserve the command line parameters.

Hw0:This is StrongBS main window.|MDrag a file over this window to Squash it.
Hw1:This is version 1.75 of StrongBS (17/07/1997).|MStrongBS is  Mohsen Alshayef 1993-1997|MStrongBS is a powerful BASIC programs' compressor.|MClick SELECT to open the main window.|MDrag a BASIC file onto this icon to squash it.
Hi0:This the SQUASH button.|MClick SELECT to squash or re-squash the loaded BASIC program.
Hi1:This is the name of the compressed output BASIC program.|MYou may change the filename before saving it.
Hi2:This is the original size of your source input BASIC file.
Hi3:This field gives information about the status of the Special File.
Hi4:This is the compression ratio in percentage.|MHelpful to see by how much your BASIC program got squashed.
Hi5:This is the size of compressed output BASIC file.
Hi6:This is the SAVE button.|MClick SELECT to save the compressed output file.
Hi7:Drag this icon to a directory window to save the squashed BASIC file.
Hi8:This is the full path name of the source input BASIC program file.|MIt is the file that will be squashed.
Hi9:This is how the output file will be saved.|MClick the menu button to select the different options.
HiA:This is the progress bar.|MIt displays StrongBS squashing progress.
HiB:Drag this icon to a directory window to set the path for the Log file.
HiC:This is the name and path of the Log file.|MYou may change is.
HiD:Click on this icon to open or close the Log file information window.
HiE:Click the menu button to display the "Output as" options.
