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.