SCREEN SUITE

[files: Suite (PROG) + FN CODE (CODE)]



David Knight is another regular contributor, and has supplied us with

a suite of, not one, but EIGHT useful routines for screen

manipulation.



These are all stored in the printer buffer and are set up as user

defined functions in lines 1 to 8. Enter the program and run it; if

all is well then save it when the program prompts you and delete lines

10 to 160 before saving the FN lines 1 to 8.



To use it in your own programs, LOAD in the code and merge in the FN

lines by including a line:

	LOAD "FN CODE" CODE: MERGE ""

The two sets of code must, of course be on the tape after the main

program. But what do they do?



1. FN p(x,y) - This function gives the colour of any pixel normally

   accessible by the BASIC POINT command. It returns a number between

   0 and 7.



2. FN w() - To call use RANDOMIZE FN w(), and this command is used to

   wipe only the attributes with the current colours without affecting

   the rest of the screen.



3. FN u(n) - A rather more complex routine and only of use to those

   who are experienced programmers, it swaps between four banks of UDGs

   previously set up by the user. Called by RANDOMIZE FN u(n), n

   represents the UDG bank number from 1 to 4. [No explanation was given

   as to where the "four banks of UDGs" should be located. JimG]



4. FN v(address) - This function reflects the character pointed to by

   the address, i.e. To reflect UDG graphic "A" use RANDOMIZE FN v(USR "a").



5. FN h(address) - Reflect horizontally.



6. FN c(address) - Reflect clockwise.



7. FN a(address) - Reflect anticlockwise.



8. FN i(address) - invert character.

