home *** CD-ROM | disk | FTP | other *** search
- !CompBasic
- ==========
-
- !CompBasic is a program that allows you to compress basic programs while
- still allowing the program to run correctly. It does this by using the
- techniques outlined below. This has the advantage that the programs take
- less space on disk, are (slightly) faster to load and take up less memory
- once loaded. They should also run slightly faster because there is less
- program to scan through for PROC calls etc..
-
- To use the program you must double click on the icon to load it and then
- drag a BASIC program onto the icon or onto the main window. The window shows
- the name of the program, number of lines in the program and also all the
- compression options. Selecting menu opens a savebox, which allows you to
- begin the compression. The name you save it under must be different to the
- original prgram.
-
- The iconbar menu allows you to set wether or not the compression is
- multitasking (if it is, the compression will take longer but you will be
- able to do other things while compressing). The abort option is only
- selectable while compressing and will abort the operation (obviously). The
- save opts option saves all of the options to disk so that when the program
- is run again it will use the same compression.
-
- Techniques Used
- ===============
-
- Space compression - This option cannot be removed and will remove most
- spaces from any program. The exceptions are those within
- speech marks and some spaces which would make the
- program uneditable or make the program error if run.
- Extra space - This removes spaces that are only needed for editors
- (i.e. spaces around tokenised instructions.)
- Remove blank lines - Any lines which are only a ":" or nothing are removed.
- Remove REMs - Removes any REM statements
- Remove THENs - Removes any excess THENs
- Replace ASCs - This turns ASC expressions into numbers
- Change SWIs - This changes SWI names to numbers
- Compress DEFs - Turns all PROC and FN names in 2 letters. This means
- that you can have over 600 PROCs and over 600 FNs in
- the program.
- Join lines - Joins lines together
- Join DATA - Joins DATA expressions
- Renumber - Doesn't change the length but just renumbers in
- increments of 10
-
- Further additions may include sum compression (which will evaluate sums
- making the program shorter and faster) and variable name compression. If you
- have any other ideas of feature to add please write to me.
-
- James Miskin
- 23 Hardwick Drive
- Loughborough
- LE11 OTJ