NESS MICRO SYSTEMS Speedyload - Additional User Notes ---------------------------------- The following notes are intended to help beginners to Spectrum computing and is based on queries raised by some previous users : 1. It is obviously not possible to load programs at double speed unless they have first been saved at double speed since a taped program has a fixed run time. 2. In order to SAVE at double speed you must be able to break into the program if it is not one of your own making, to determine where the Speedy code should be located. For BASIC programs this will be at the top of ram and for programs which use machine code will normally be below the ram area used by the program code. 3. The area of ram cleared for machine code can usually be found from the listing of the loader program and should be changed to a lower value to leave room for the Speedy code to lie loaded after the main program has been loaded if this is necessary for use with, say, a filing type program where files are to be loaded and saved at double speed. The LOAD and SAVE string commands used by the program for file (data) handling should be altered in the listing by having the PRINT USR xxxxx : statement put in front of them, where xxxxx is the location of the Speedy code. 4. Where LOAD and SAVE facllities from within the program are not required, but only the faster loading of a long program, then a new master copy must be made by saving at double speed with both the program and the Speedy code resident in ram at the same time. With a BASIC program this is easy - LOAD "Speedyload" or "" then press O, load your BASIC program and then re-save using PRINT USR 64036:SAVE "program" To load it you will first have to load the short Speedy code into ramtop, but a tape which does this automatically can be made using a short loader: First load Speedyload – LOAD "", then press any key to scroll, then press 0 to generate the Speedy code in ramtop. Enter the following loader program at the keyboard 10 CLEAR 64035 : LOAD "" CODE 20 PRINT USR 64036: LOAD "" Place a blank cassette in the recorder and set to record. Enter SAVE "loader" LINE 10 Start the recorder and save the loader program - stop the recorder but do not rewind. Enter SAVE "speedy" CODE 64036,1330 Start the recorder and save the code. Stop when the save is finished but do not rewind. Remove the cassette and load your BASIC program in the normal manner. Replace the blank cassette, which now contains the loader and code programs, in the recorder and enter PRINT USR 64036 : SAVE "program" Set the recorder to record and save your program at double speed. Rewind. To load enter LOAD "" This method is convenient but slower and a significant time saving is only made on programs over 8k long using a 48k Spectrum. In comparison, when using the Speedy code with a filing or database system (such as the popular Masterfile) the time for handling tape transfer of even very short files is cut by half as no loaders are required before files of data. 5. The same technique of using a short loader program can also be used for longer machine code programs but is more difficult as you must first determine a free area of ram for the Speedy code to go in. Normally it will be necessary to save the "loader" then to load the program and alter the RAMTOP address before loading the Speedy code. The Speedy code should then be saved to tape in the usual manner and followed by the program code saved using the Speedy code. It sounds more complicated than it actually is ! Cassette Note : You should use data casaettes of best quality and of length 6 minutes per side (C12) or shorter for Speedy load to operate successfully. At least 3 copies on this cassette.