SHORTCUTS
ZX Computing, September 1986

There has been a tremendous response to our challenge of writing an
interesting compact program. The competition is hotting up and
remember there are #10 prizes for each published program plus #20 for
the outstanding Star-cut of the month.


- - - - - - - - - - 
A TRIO OF CHARACTERS
[file: Characters]

The first contender this month is Ben Stagnell, 13, of Radway, who
sent us three variations on a program to create new character sets.

Now I don't know about you, but I never bothered to alter my chars in
programs because the effort of either typing in at least 52x8 sets of
data to individually create a new char. set or to modify each letter
using a char. definer program was just too time consuming.

Ben's programs cleverly make modifications to the existing set after
copying them to ROM [sic]. This makes each variation short, fast and
easy to use.

All 96 characters are modified and once you type in the program run it
and save it when instructed you are ready to go. To see the effect
type POKE 23606,0: POKE 23607, 117 and all printing to the screen will
be in that font.

Now as it stands the code of each new character set is located at
30208 which does not give a lot of room for anything else, however the
code can be loaded into any area of memory as long as you follow the
next instructions:

1. CLEAR to the address one less than the code will be loaded to i.e.
   to load it to 64000, CLEAR 63999
2. Type or include as a program instruction LOAD "" CODE address i.e.
   LOAD "" CODE 64000
3. Play the tape with the program code on it.
4. Type or include as program lines:
 LET a=address-256
 POKE 23606,a-INT (a/256)
 POKE 23607,INT (a/256)
 ie. "address" would be replaced by 64000 for the general usefulness
 of these routines.
[The line 4 instructions were all wrong, so I've corrected them.  JimG]

Ben wins the #20 Star-Cut prize.


- - - - - - - - - - 
MATHS MAD
[file: Factorise]

There is a great deal of interest in mathematical functions in
computing and W.E. Thomson sent us this routine to factorise numbers
(maths students everywhere take note!).

There is a time delay which depends on the complexity of the number,
the prime 4294967291 will take around 8 minutes to check, most other
numbers far less!

Note the use of the subroutine at 300, it prints all the digits of a
nine or ten character integer unlike the built in PRINT command which
rounds off at 8 digits.


