home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / s1 / strongbs / !StrongBS / Documents / Changes next >
Encoding:
Text File  |  1997-06-28  |  22.9 KB  |  520 lines

  1.  
  2.                         StrongBS v1.69 (28th June 1997)
  3.                           © Mohsen Alshayef 1993-1997
  4.  
  5.                           email: mohsen@qatar.net.qa
  6.  
  7.  
  8.  
  9. This file describes the changes and history of StrongBS:
  10.  
  11. The list is in reverse chronological order.
  12.  
  13.  
  14. Version 1.69 (28th June 1997)
  15. =============================
  16.  
  17. - StrongBS will automatically load the Special text file named "SBSLock"
  18.   from the directory containing the core BASIC program, so you can now
  19.   write a Special file for each program, name it "SBSLock" and place it
  20.   in the same directory as your main program.
  21. - Added the Choices window to enable different configurations to be set and
  22.   saved. Not many choices yet!
  23.   - The "Assemble into Code" can now assemble all instructions recognised by
  24.   the BASIC assembler. StrongBS also makes allowance for bugs in the
  25.   BASIC assembler.
  26. - It seems that the BASIC interpreter doesn't like to see a string
  27.   containing the ASCII character 139 in a single line IF..THEN..ELSE
  28.   statements before the ELSE part, as this confuses the interpreter
  29.   thinking that the caharcter is the ELSE token. The interpreter search
  30.   for the ELSE token doesn't take into consideration that this could
  31.   be a character inside a string. StrongBS now will not generate strings
  32.   with the ASCII 139 character in an IF...THEN..ELSE statement, so
  33.   as to make the interpret happy!!
  34. - The assembler option to remove zero offsets now makes allowance for the
  35.   BASIC assembler bug that requires a zero offset be specified in LDRT and
  36.   STRT instructions.
  37. - A bug in the variables replacer code that caused the TOP token to be
  38.   mis-interpreted is now fixed.
  39. - Many improvements have been incorporated to enable StrongBS to cope with
  40.   compressed BASIC programs. This gives more flexibility for the user to
  41.   re-squash BASIC programs which have been squashed by StrongBS or by other
  42.   BASIC squasher.
  43.  
  44.  
  45.  
  46. Version 1.68 (25th June 1997)
  47. =============================
  48.  
  49. - Added the "Assemble into Code" option. This option is partially written
  50.   and few instructions are still not yet assembled. The option is
  51.   not selected by default.
  52. - When reverting back to BASIC filetype after failer to squeeze into
  53.   Absolute, the filetype was left at "Absolute". This is now corrected.
  54. - StrongBS can now cope with matrix operations and matrix operators don't
  55.   get wrongly evaluated and brackets around them removed.
  56. - Fixed a bug in the real array variables renaming code that caused the
  57.   BY( in DRAW, MOVE, etc statements to be interpreted as a real array variable.
  58.   Thanks to Reuben Thomas for all his assisstance in tracking down this bug.
  59. - Fixed a bug that caused the ON token in a MOUSE ON statement to be skipped
  60.   if located inside an IF..ENDIF construct.
  61. - Updates and corrections to the interactive help display messages.
  62. - Fixed a bug in the nummebrs converter that caused shifted numbers
  63.   following the & directive to be mis-interpreted.
  64. - PRINT concatenation code improved to deal with squashed programs.
  65. - Various routines improved to cope with squashed BASIC programs.
  66.  
  67.  
  68. Version 1.67 (23rd June 1997)
  69. =============================
  70.  
  71. - The output filetype is now selectable from a seperate pop-up menu.
  72. - The information message displayed during squashing is now disabled as
  73.   the icon is now used to display the output filetype and format. This
  74.   maybe re-enabled in future versions using a seperate configured window!
  75. - Interactive help improved with all icons and menu entries giving detailed
  76.   help information. Use this feature for a detailed explanation of each
  77.   menu entry and each StrongBS squash option.
  78. - Fixed a bug in the "Assembler directives code" that caused necessary
  79.   colons to be skipped after a fractional number inside an EQUD directive.
  80. - Dropping back a StrongBS squashed output file back into StrongBS is no
  81.   longer allowed. To re-squash, hit the "Squash" button again. Re-squashing
  82.   is allowed, only if, the "output as" file selected is BASIC.
  83. - Slight correction to the main sprite icon.
  84. - Bug fix in the assembler directives and spaces removal codes not liking
  85.   each others results !!
  86. - Renamed the <StrongBS$Append> variable to <StrongBSLibrary>. Also renamed
  87.   the "Append file" sub-menu to "Library files". This will list all
  88.   library files pointed by the StrongBS$Library variable, which is set to
  89.   point at the diectory "Library" within StrongBS. This can be changed in
  90.   the !Run file to point at any pathname (directory) containing library
  91.   files.
  92. - Improved the number conversion code.
  93. - Updated some parts of the manual.
  94. - A bug fix in shading of menu items (desktop front end).
  95. - A bug in the "unused variables remval" that left commas after removing an
  96.   unused_var after a SYS..TO.. has now been removed. Thanks to Theo Markettos
  97.   for pointing this out.
  98. - A nasty bug that caused PROCedure names after a Hex number to be skipped
  99.   unnoticed is now fixed. (Whoops!!)
  100.  
  101. Version 1.66ß2 (21st June 1997)
  102. ===============================
  103.  
  104. - 0's to FALSE conversion will, now, not convert those 0's inside assembler
  105.   listings (some Extended BASIC assemblers cannot cope with them). Also,
  106.   0's inside VDU statements will not be converted.
  107. - Improved the PRINT statement concatenation code and fixed problems with
  108.   concatenating string found between two PRINT statements.
  109. - A bug that caused ALIGN directives to be skipped following other directives
  110.   is now corrected. Thanks to Alex Thoukydides for spotting this.
  111. - Correction to the VDU concatenation behaviour with "|" characters has been
  112.   added so that extra VDU statements are not concatenated to a statement
  113.   ending with "|".
  114. - Fixed a problem with converting numbers to shortest form that caused very
  115.   large floating point numbers to mis-interpreted this only caused problems
  116.   with BASIC 64.
  117. - Improved assmbler register code conversion for faster processing.
  118.   
  119. Version 1.66ß1 (21st June 1997)
  120. =============================
  121.  
  122. - Fixed a bug in the memory spaces conversion code for complex IF, WHILE
  123.   statements.
  124.  
  125. Version 1.65 (20th June 1997)
  126. =============================
  127.  
  128. - Fixed a bug that caused the "Remove Colon" option to remove a space found
  129.   after an IF or WHILE. Example: "IF|WHILE <var1> <var2>=<var3>".
  130. - Improved the the memory operator options code.
  131. - Fixed a bug that caused numbers after an IF token to be converted into the
  132.   shortest form using shift format.
  133.   example:            IF A%=&80000000 THEN A%=2
  134.   was converted into: IF A%=1<<31 THEN A%=2
  135.   This would be treated by BASIC as IF (A%=1)<<31 THEN A%=2
  136.   The same applies to numbers after a WHILE token.
  137. - Fixed a bug that caused a space or a THEN token to be removed between a
  138.   hex number and a vaiable starting with a valid hex digit.
  139. - Improved the spaces removal code and the THEN removal code.
  140. - Added the option to convert *FX commands into OS_Byte (SYS 6) calls. The
  141.   option is not automatically selected by default.
  142. - Up to 64 files can now be listed in the "Append" file menu.
  143.  
  144.  
  145.  
  146. Version 1.64 (19th June 1997)
  147. =============================
  148.  
  149. - Fixed a bug that caused &8C inside quotes!! to be interpreted as a THEN token
  150. - Fixed a bug that caused LOCAL DATA and LOCAL ERROR to be concatenated along
  151.   with LOCAL <var> lines and statements. Whoops!! Thanks to Rouben Thomas for
  152.   spotting this bug (that was a quick one, and hope a quick fix!!)
  153.  
  154.  
  155. Version 1.63 (17th June 1997)
  156. =============================
  157.  
  158. - Bug in the "0 to FALSE" converter removed which caused 0's in *Commands
  159.   to be converted. Thanks to Dominic Plunkett for spotting it out just
  160.   too fast for me to celebrate a bug-free StrongBS !!
  161. - Updated the "Manual" documnet. Still needs lots of updates and grammer
  162.   checking !!
  163. - Improved the PRINT statements concatenation code. Again, thanks go to
  164.   Dominic Plunkett for pointing out areas where improvement have been
  165.   made.
  166. - A little bug in the module caused DATA statements to be skipped un-noticed,
  167.   this is now fixed. Thanks Dominic for pointing that out. BASICTools module
  168.   now at version 1.05 (thats already 5 years since the first module!! time
  169.   flies!!).
  170. - The Help system has now be enabled again specially for the menu system.
  171.   Added various help data for all options.
  172.  
  173.  
  174. Version 1.62ß (27th April 1997)
  175. ==============================
  176.  
  177. - First ßeta public release.
  178. - Slight correction made to the "convert to FALSE" code.
  179.  
  180.  
  181. Version 1.61 (20th April 1997)
  182. ==============================
  183.  
  184. - The assembler register list squash option enabled. Was greyed out. The code
  185.   to squash LDM and STM register lists is added.
  186. - Added an option to keep REM lines starting with a word or chars specified
  187.   by the user. Suggested by Graham Crow.
  188. - Moved the REMarks options from the "Misc" sub-menu into a seperate top-level
  189.   sub-menu.
  190. - Added the zero removal option to the "Remove" menu. This will remove all
  191.   unnecessary +0, -0, +0.0 or -0.0 in mathematical assignments.
  192. - Added the option to convert CASE...ENDCASE constructs to IF...ENDIF
  193.   constructs. The IF...ENDIF is much faster.
  194. - Added the "Structures" sub-menu (CASE, WHILE and IF structures' options).
  195. - Added the "Faster" sub-menu to include all options that can speed up
  196.   program execution, but not necessarily resulting in a smaller size.
  197. - Added an option to rename variables found in DATA lines, providing the
  198.   variable name can also be located in the main program. This option is
  199.   normally non-selected by default. Use it if DATA lines contain variables
  200.   that will be later EVALuated using the EVAL or READ statements. Previous
  201.   versions of StrongBS automatically renamed variables found in DATA lines.
  202.   This had caused a problem with one program I know of "The Acorn !Maestro
  203.   !Runimage file", as it had DATA lines containing strings of text that were
  204.   not inside quotes and were similar to some of the variables in the main
  205.   program. This caused the text in the DATA lines to be renamed along with the
  206.   similar variables in the main program!
  207. - A bug in the empty structures removal code, removed. Now can recognize some
  208.   undocumented BASIC methods for terminating a CASE construct.
  209. - Improved the mathematical evaluations code to cope with more expressions.
  210. - A bug in the spaces stripper code which caused "No such function/procedure"
  211.   now removed.
  212. - Slight front end program re-structuring.
  213. - Added the Log file sub-menu and additional icons for the log file.
  214. - The "Attach files" sub-menu renamed to "Insert REMarks file" and moved to the
  215.   "Remarks" sub-menu. Also the "Attach" directory is now called "REMInsert".
  216. - Slight updates and changes to the manual.
  217.  
  218.  
  219.  
  220. Version 1.60 (18th April 1997)
  221. ==============================
  222.  
  223. - Improved the -1 to TRUE converter code, now more squashing achieved.
  224. - Bug in the colons remover code removed.
  225. - Slight improvement in the brackets removal code.
  226. - When re-squashing a file with locked variables, the locked variables are now
  227.   remembered from the first pass.
  228. - The variables removal code improved to cope with highly compressed files. This
  229.   allows effective re-squashing of files.
  230. - Bug in the registers converter removed. Thanks to Dominic Plunkett for
  231.   pointing it out.
  232. - PRINT statement concatenation option added to the "Concatenations" sub-menu.
  233.   Idea by Dominic Plunkett.
  234. - Memory management changed. Now using the wimp for memory allocation. This
  235.   allows large compressed files above 400 Kb to be loaded and re-squashed again.
  236. - A bug in the Attach file menu causing the last file to be displayed twice is
  237.   now removed.
  238. - Main window icons slightly changed to comply with Acorn style guidelines.
  239.  
  240.  
  241.  
  242. Version 1.59 (17th April 1997)
  243. ==============================
  244.  
  245. - Now standing at 62 total options (including 3rd party options) !!!!
  246. - Added the Empty WHILE structures removal option.
  247. - Added the Empty procedure removal option.
  248. - Slight improvemnt to the spaces stripper code.
  249. - Some improvement to the colon stripper code. Now can cope with very
  250.   difficult unnecessary colons. More squashing...
  251. - Improved error reporting in case of StrongBS crash!! Has it ever crashed? No,
  252.   of course not, it is RISC OS that is buggy, StrongBS is of course bug free.
  253.   Acorn should correct the OS to make it compatible with StrongBS !!!
  254. - Improved sprite sent in by David Sharp.
  255. - The Log menu is greyed out. It will be enabled when cross-referencing code
  256.   is completed.
  257. - The "Clear all options" menu entry moved to the "Squash mode" menu.
  258. - Updated the "Messages" file.
  259. - Creating and saving a new squash mode will, now, take the 3rd party squash
  260.   options into considerations and save them as well.
  261. - The "Create New Mode" dialog box now uses standard font for RISC OS 3.5 and
  262.   later.
  263. - The "Squahsed by StrongBS xxxx" REMark line will not be inserted into the
  264.   output file if the result file is going to be squeezed into an abosolute file
  265.   type (&FF8), even if the "Insert Squash info" option is selected by the
  266.   user.
  267. - The location of the Append, Attach and Modes sub-directories is set using
  268.   a system variable in the !Run file, so this can be changed to re-locate
  269.   the directories.
  270. - The Template and Messages files moved to a sub-directory "UK" within the
  271.   the "Resources" directory and a variable StrongBS$Country in the !Run
  272.   file is set to point at that directory. For other languages and countries
  273.   you need to create a sub-directory with the language name and change
  274.   the "Messages" and Templates files in it, then change the StrongBS$Country
  275.   variable in the !Run file.
  276.   Looking for someone to make a Dutch and German versions of StrongBS.
  277. - A bug in the re-squashing loop removed.
  278.  
  279.  
  280.  
  281. Version 1.58 (11th April 1997)
  282. ==============================
  283.  
  284. - Now you can re-squash by pressing the "Squashed" button again. You can
  285.   do this as many times as you like to perform multi-squashing. The old
  286.   method of dropping the BASIC file back into StrongBS is still valid
  287.   as an alternative.
  288. - Some internal codes made recursive so that the need for re-squashing is
  289.   now reduced.
  290. - A bug pointed by David Sharp in the "Colons remover" code removed.
  291. - The error reporting window now accepts the RETURN key.
  292. - More 3rdParty options. Another one from David Sharp.
  293. - Added the "Empty IF structure" removal option. Idea by Dominic Plunkett.
  294. - Colon remover code further improved.
  295. - Added the "Empty CASE structure" removal option.
  296. - CallASWI module removed. Not required any more!
  297. - Under RISC OS 3.5 and later, the main window background and fonts now use
  298.   the desktop texture and desktop fonts, a new template is designed for
  299.   this purpose. For RISC OS 3.10, a custom background and fonts
  300.   are used (template "Templ310" used). Suggested by Andrew Ayre.
  301. - Very much improved colon remover code to remove all unnecessary colons part
  302.   of the WHILE and IF constructs.
  303. - A bug in the spaces-stripper code removed.
  304. - Bracket removal code improved to cope with shifted operators such << and
  305.   >>> as BASIC does not allow the use of more that one group 5 operator
  306.   by unbrackted expression.
  307. - Improved the variables search to look inside DATA lines for matching
  308.   variables. BASIC allows variables inside DATA lines, and the READ statement
  309.   performs an automatic evaluation of the variables inside DATA lines!!
  310. - Updated BASICTools Module to version 1.04. Slight changes to BASIC
  311.   program initialisation code.
  312.  
  313.  
  314.  
  315. Version 1.57 (9th April 1997)
  316. ==============================
  317.  
  318. - Added the VDU statements concatenation option. Idea by Dominic Plunkett.
  319. - Added the READ statements concatenation option.
  320. - A bug removed that caused some of the debugging code to be left over
  321.   causing some characters to be printed on the desktop.
  322. - Multi-tasking improved to allow StrongBS main window to be moved around
  323.   the screen while squashing is in progress.
  324. - Acorn "CallASWI" module is automatically loaded and copied to the
  325.   !System.Modules directory for pre-RISC OS 3.7 machines.
  326.   This module will be required if the BASIC program is
  327.   further squeezed into an application and distributed as such.
  328. - Code for brackets removal improved. Some ideas by Dominic Plunkett
  329.   implemented. Still some room for improvement.
  330. - 3rd Party information window added.
  331. - Manual updated.
  332. - Little bug with the 3rd party options menu selected corrected. Thanks
  333.   to David Sharp for pointing that out.
  334. - Little bug in the Template file corrected. Again thanks to David Sharp
  335.   for the observation.
  336. - Improved the colon remover code to deal with colons after WHILE. Now
  337.   even more code squeezing!
  338. - First 3rd party code written by David Sharp included with this version.
  339. - Display time for the banner window is now correct at 5 seconds.
  340.  
  341.  
  342.  
  343. Version 1.56a (7th April 1997)
  344. =============================
  345.  
  346. - This version has an improved error reporting for errors encountered in
  347.   the source BASIC program. Version is only sent to Dominic Plunkett for
  348.   the testing of an error he is encountering with ELSE statements.
  349.  
  350.  
  351.  
  352. Version 1.55 Beta (27 March 1997)
  353. =================================
  354.  
  355. - Added interactive help support.
  356. - Simple multi-tasking introduced to allow other desktop tasks to be used.
  357.   Suggested by David Sharp.
  358. - "Make Application" code added including the facility to squeezing the code
  359.   using an LZW compression method.
  360. - The user is alerted if overwriting an existing file.
  361. - The "THEN Removal" code improved to cope with very obsecure situations.
  362. - Bug corrected in the SPC code.
  363. - Description of the Squash options written partially, to be completed.
  364. - Disabled warning for RESTORE+<No. offset>
  365.  
  366.  
  367.  
  368. Version 1.54 (17 March 1997)
  369. ============================
  370.  
  371. - Bug fix:
  372.   A little bug in the numbers converter with complex shifted number.
  373. - More compression achieved by improving the scan routine inside DATA lines.
  374. - Tested on a Risc PC and working fine.
  375. - Re-coded the menu display routine so that if the menu is opened on the icon
  376.   bar, it will always appear in the same place (centred on top of the icon)
  377.   irrespective of the pointer x-position when the menu button is clicked.
  378. - StrongBS will now warn the user if a Special file is needed before compression
  379.   starts rather at time of loading the source file.
  380. - Added a little icon to show status of Special File. (A nice idea from David
  381.   Sharp).
  382. - Added 2 more warning messages to inform the user of how to load the Special
  383.   file, i.e. after loading the BASIC source file but before compressing.
  384. - The banner screen will automatically disappear after 4 seconds on start-up of
  385.   the program. (Thanks to David Sharp for the suggestion).
  386. - Improved brackets removal code to achieve better compression results.
  387. - Improved the Directives concatenation routine to cope with wider range of
  388.   assembler directive situations.
  389. - Improved warning error window. Original template designed by "David Sharp",
  390.   slight changes by myself.
  391. - Added an option to allow the "REM Squashed by StrongBS .." to be excluded from
  392.   the output file.
  393.  
  394.  
  395.  
  396. Version 1.53 (14 March 1997)
  397. ============================
  398.  
  399. - Bug fix:
  400.   Fixed a bug that caused a colon to be ommited after a DCD during conversion
  401.   to &, if the DCD failed to convert.
  402. - Bug fix:
  403.   A bug fix in the colon remover code. Was used to corrupt the program. It will
  404.   only appear if the "Remove colons" is the only option selected.
  405.  
  406.  
  407.  
  408. Version 1.52 (8 March 1997)
  409. ============================
  410.  
  411. - Locked function and procedure names can be given as FN or PROC. There is no
  412.   need to use DEFFN or DEFPROC.
  413. - The Squash mode is now configurable in the Messages file. Your prefered mode,
  414.   whether a user mode that you have defined and saved earlier or a mode that
  415.   is built into StrongBS, can now be automatically loaded and set on startup.
  416.   To set the prefered mode, change the value after the "SquashMode" token in
  417.   the Messages file.
  418. - Locked variables can be passed in a text file. The first word of the file
  419.   should be "LOCK:" this is an identifier.
  420.   Variables can be put on newline each or seperated by commas.
  421.   If locked variables also exist in the main program (i.e. after REM LOCK) then
  422.   the variables in the text file are added to those.
  423.   
  424.   Note: The locked variables file should be loaded AFTER the program to be
  425.         compressed is loaded. Loading a new program will reset all locked
  426.         variables that were loaded by the lock file.
  427.         
  428. - Added the automatic line numbering option.
  429. - Improvement to the numbers conversion to recognise more number formats.
  430. - Improvement to the string conversions to cope with more string formats.
  431. - Added the option to use the standard system font or any other font the user
  432.   may elect to choose.
  433. - Added the unused variables removal code.
  434. - Bug fix:
  435.   A bug that caused a colon to be removed after RESTORE ERROR is removed.
  436. - The variables indexer now improved, so that all variables inside an assembly
  437.   listing are also counted in the table.
  438. - Updated the coding of the Locked variables file, so that more keywords can be
  439.   added in the future.
  440. - Re-written the memory management for better space allocation.
  441. - Menus are now displayed in the default desktop font. User can specify the
  442.   font in the messages file if he wishes. This is handy for RISC OS 3.1 users.
  443. - The colons remover code improved to deal with more situations.
  444.  
  445.  
  446.  
  447. Version 1.51b (4 March 1997)
  448. ============================
  449.  
  450. - Added the option to append files to the end of the main program before
  451.   compression starts. This feature helps to append LIBRARY files.
  452. - Added the option to attach (insert) a file at the start of the main program
  453.   after compression is complete.
  454. - Added two options, one to keep the first REM line in the source program and
  455.   another to keep all REM lines appearing at the start of the source program.
  456. - Added and activated the option to concatenate assembler directives.
  457. - The shorter directives improved to cope with variable names that are similar
  458.   to directive names.
  459. - Numbers converter code improved to cope with the short directive "&" following
  460.   a label.
  461.  
  462.  
  463.  
  464. Version 1.49b (27 Feb 1997)
  465. ===========================
  466.  
  467. - Added the "SYS Remover code" to remove excess commas and 0's in SYS calls.
  468. - Added the routine to convert all assembler directives (EQUS/EQUD/EQUB) and
  469.   (DCD/DCB) into the shorter type & and = directives.
  470. - Added and activated the "Debug Code Remover". Any lines bracketed between
  471.   REM --[ and REM ]-- in the program will be removed.
  472. - Added and activated an option to remove all those unncessary ALIGN directives.
  473.   ALIGN directives are not required if they are followed by an instruction
  474.   opcode. BASIC automatically ensures that an instruction is stored in a
  475.   word align memory address.
  476.  
  477.  
  478.  
  479. Version 1.48b (26 Feb 1997)
  480. ===========================
  481.  
  482. - The variable menu width works correctly now. Obtaining the outline font text
  483.   width is now correct. Menus will automatically adjust to highest width.
  484.   Thanks to Alan Wrigley for his tip on using "Font_ConverttoOS".
  485. - The progress bar color is user defined. The token "BarColor" in the Messages
  486.   file can be changed by the user. (Thanks to David Sharp for the idea)
  487.   
  488.  
  489.  
  490. Version 1.47 (21 Feb 1997)
  491. ==========================
  492.  
  493. - Added the Message file. All menu entries are now contained in the messages
  494.   file.
  495.  
  496.  
  497.  
  498. Version 1.46 (19 Feb 1997)
  499. ==========================
  500.  
  501. - Added the modes creation facility.
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.                ••••••••• Hope you find StrongBS useful •••••••••
  509.                                        
  510.  
  511.  
  512. StrongBS © Mohsen Alshayef 1993-1997
  513.  
  514. Contact details:
  515. ----------------
  516.  
  517. Mohsen Alshayef,
  518. email: mohsen@qatar.net.qa
  519.