ZX SPECTRUM WORKSHOP (aka. TOOL KIT) from Kerian UK (1984) by D.Wilson & C.Thornton The ZX Spectrum Workshop is a programmer's aid designed to assist those people who are writing programs in BASIC. One of the major features of this program is its ease of use. It has been designed so that the user only has to press the SYMBOL SHIFT and SPACE keys together to unleash the powerful features contained in this package. After doing this, all the user has to do is follow simple on-screen instructions. A list of the features is given below: 1. Renumber 6. String search 2. Program trace 7. Token search 3. Block delete 8. Free memory 4. Auto line number 9. Variable list 5. REM kill 10. Formatted listing LOADING. To load ZX Spectrum Workshop, type LOAD "" and press ENTER. The program will load and run automatically. IN USE When the program has loaded you will be shown a menu of 7 options. At this point only Option 7 (return to BASIC) is likely to be of any use! To invoke the ZX Spectrum Workshop from BASIC simply press the SYMBOL SHIFT and SPACE keys together. Do not invoke the ZX Spectrum Workshop from within a running program as this may result in certain options failing to work properly. IMPORTANT. Load the ZX Spectrum Workshop before loading your own program. If you use the NEW command and wish to use the ZX Spectrum Workshop further you must type RANDOMIZE USR 6e4. OPTION 1 - RENUMBER On choosing Option 1 from the first main menu, you will see on-screen prompts for the start line and the increment. You may input your own values or accept the system defaults of start line (10) and increment (10). The system default values are selected by simply pressing ENTER in response to the screen prompts. Lines including calculated GOTOs, etc. will not be renumbered. WARNING In order to fit the ZX Spectrum Workshop into under 3K of memory, no error checking takes place as to whether large line numbers will exceed 9999. If this condition occurs it will result in a fatal error. It is therefore suggested that, before you renumber your program, you take a backup copy for security. OPTION 2 - PROGRAM TRACE Option 2 from the main menu is a toggle to switch the program trace on or off. The current status is shown on the screen. The current line number and the number of the statement being executed are shown at the bottom of the screen between angle brackets. To use the program trace facility, invoke the toolkit, choose Option 2 from the menu, return to BASIC and RUN your program. OPTION 3 - BLOCK DELETE Option 3 from the main menu allows you to use the block line delete facility. Screen prompts will ask you for the first and last lines to be deleted, after which all program lines in that range will be deleted. If there is no BASIC program resident in memory the routine will return to BASIC with the PARAMETER ERROR message. WARNING This routine should be used with care to prevent inadvertent loss of important program lines. It should also be noted that the system default values will delete from line 0 to line 9999 so that the use of these default values will delete the whole of your BASIC program. OPTION 4 - AUTO LINE NUMBER This option enable fast entering of program lines by inserting the line number for you. After pressing 4 from the main menu you will again see screen prompts for start line and increment between lines. The system default values are again to start from line 10 and increment in steps of 10. These values are used if you press ENTER in response to the screen prompts. Care must be taken not to overwrite other program lines if you are using AUTO to insert lines within existing coding. To exit from AUTO you must press ENTER before adding any BASIC statement to the current line number. This will not delete any program line with the same line number. OPTION 5 - REM KILL Option 5 from the main menu pauses all further input for a few seconds whilst the ZX Spectrum Workshop searches through your program and deletes all REM statements, including those following other BASIC statements within a program line. OPTION 6 - STRING SEARCH To invoke the string search you must choose Option 1 from the ZX Spectrum Workshop sub-menu. The sub-menu is reached by choosing Option 6 from the main menu. You will be asked to input the string for which you wish to search. All program lines containing the specified string will then be shown, with each occurrence highlighted by the flashing question mark symbol. Pressing any key but SPACE will advance through the program and find the next occurrence. OPTION 7 - TOKEN SEARCH Token search is Option 2 from the sub-menu. It is almost identical in operation to Option 6 - string search, but enables you to search for BASIC keywords such as GOTO or THEN. In addition you may also search for specific occurrence of a token, such as GOTO 1000 or DRAW 100,10. Again, pressing SPACE will exit from the routine. OPTION 8 - FREE MEMORY Option 3 from the sub-menu will calculate the free memory available. Pressing any key will return you to the main menu. OPTION 9 - VARIABLE LIST Option 4 from the sub-menu will list all the variable currently in use, along with their values. Array variables are a special case as they often run to great length, and are therefore listed along with their dimensions instead of their values. Pressing any key will return you to the main menu. OPTION 10 - FORMATTED LISTING Options 5 and 6 from the sub-menu work respectively to the screen and to the printer (if fitted). Spectrum BASIC program listings become very difficult to interpret when a large number of multi-statement lines are used. These utilities enable you to list the program from any specified line number in a form that is easy to read. Each statement of a multi-statement line will be printed on a new line and indented by a few spaces, making interpretation, and therefore programming, simpler and quicker. -- Another Fine Product transcribed by: Jim Grimwood, Weardale, England (http://www.users.globalnet.co.uk/~jimg/) --