FRONT END
by Peter Zoeteweij
from Your Sinclair, June 1989

I was about to put out a nationwide APB for this sort of program in
the hope of a response when suddenly a parcel eased through my letter-
box. And inside? A you-guessed-it written by none other than Peter
"ah,ah,ah" Zoeteweij (bless you).

The Program
The program is designed to be welded onto the front of a Basic or
machine code game (hence the name) to provide the option of joystick
or keyboard play. It's easy to use, simple to type in, and straight-
forward to understand. Peter's even supplied a 'game' (the term 'game'
here is used in the broadest sense of the word - you'll see why if you
type it in) to show you how it can be used.

Method
Using the hex loader program, enter the 443 bytes of machine code, and
then SAVE "control" CODE 65000,443. Then type in the 'game' and
examine the listing for further information.

Techno-Bilge
The routine doesn't actually print a menu up for you. That part is
entirely handled by a program in Basic. Each option (Keyboard,
Kempston, Sinclair, Cursor) has a corresponding routine in machine
code. The addresses run as follows:
KEYBOARD (define keys) 65000
Select KEMPTSON        65003
Select SINCLAIR        65006
Select CURSOR          65009
Calling each of the individual routines programs the main Keyscan
routine at 65012. So, for example, if you RANDOMIZE USR 65006 the
keyscan routine will change to accept Sinclair joystick only.

Once this has been done you call the scan routine in order to accept
inputs. Any inputs are coded and placed at memory address 65535. So to
find out which direction has been selected:
LET a=PEEK 65535
a=10    a=8     a=9
a=2             a=1
a=6     a=4     a=5

