POPULAR COMPUTING WEEKLY, November 1985
=======================================


CHARACTER SET
by Geoff Wearmouth
from Popular Computing Weekly, 28th November 1985

This program is short, but interesting. It takes about one minute to
design a character font based on the Spectrum's original, but thicker.
The listing was made after the program was run, and I think you'll agree
it's very legible.


**********************************************************************


TURBO-SAVE/LOAD ROUTINES
by J. Pickford
from Popular Computing Weekly, 14th & 21st November 1985

Fast loader
Part One of a super-fast load and save routine for Spectrum 48K
written by John Pickford


You've probably noticed that in recent months most of the top software houses
have started to use turbo-loaders on their games. The reason for this is partly
for the increased loading speed and partly for protection. The trouble with
these turbo loaders is that they are notoriously unreliable, especially for
those with old cassette players or Fuller boxes. You might think it is because
of the increased speed but this is not so. The loaders used by Ultimate and
Ocean, for example, actually crash on purpose if the volume is too high. This
is supposed to stop people making tape copies of software, but in practice it
just makes them a nuisance.

This article introduces a turbo loader which is both fast (3000 baud - twice
the normal speed) and reliable; ie. it doesn't crash on purpose if there is
too much noise on the tape. I have also included a basic utility which will
make the system very easy to use. It is possible to convert many commercial
games, so long as they don't use any fancy protection techniques like header-
less files, etc. (Older games are easier to convert.)

The actual save and load routines are based on an article by Alan Turnbull in
Popular Computer Weekly 17th May 1984. In its original form the system isn't
really very useful unless you are willing to write machine-code routines to
drive it. This system is completely self-contained. Each file is saved with
a "header", similar to Basic, which includes the filename (16 characters),
the start address and the length of the code.

First type in Programs one and two and save them to tape (or preferably micro-
drive). When run, program one will produce the turbo-save routine and save it
to tape for you (easy, isn't it!) and program two will produce and save the
turbo-load. I have kept them separate because they both occupy the same area
of memory so you can have the maximum amount of space for your programs; also
you won't need both of them at once.

Next week, a third program (to produce a new header) and full instructions on
how to use the system.



Before your very eyes

The final helping of this fast save/load routine on Spectrum
from John Pickford


From last week, you should now have two programs saved to tape - the turbo
load and turbo save routines. Now type in program Three (below) and save it
with, SAVE "HEADER" LINE 9999.

Right; now you're ready to test it. First find an old game with a loading
screen (Atic Atac will do). We'll use the loading screen because it's easy to
see if anything goes wrong. Now load in program Three followed by the turbo-
save routine (program one last week). Enter 16384 for the start address and
6912 for the length. Enter anything you like for the filename, it won't make
the slightest bit of difference. For those of you with no imagination try
"A Loading Screen", which, by sheer coincidence, is 16 characters long (the
maximum length of a filename).

Now insert the cassette with the game on it and press PLAY. When the screen
picture has loaded the border will go all funny and the computer will make a
buzzing noise; do not worry, this is normal. Now insert a blank cassette in
your data recorder, press PLAY RECORD, then any key on the computer. If every
-thing has gone well the screen should be saved to tape at double speed.

To load it back, reset the machine, type CLEAR 65214 and load in the turbo-
load routine (program Two last week). This is the moment of truth (exciting
isn't it?), type RANDOMIZE USR 65215: PAUSE 0. If you haven't made a mistake
then you should now see the message "Searching ..."at the bottom of the screen.
Now insert the cassette with the newly recorded loading screen and press PLAY.
After a few seconds you should see the message "Found:- A Loading Screen
Loading" and the SCREEN$ will load before your eyes at twice the normal speed.

The sequence described above can be used to save any code file (not BASIC).
All you need to know is the length and start address of the file. To convert
some commercial software you may need a "Tape Header Reader", which can be
found in most Tool Kit programs. You may also have trouble with programs which
use memory above address 65214, because the code overlaps the Save & Load
routines. This can be solved by loading the code into a lower address and then
moving it up with a simple machine code program.


**********************************************************************


