COLOUR DRAW New instructions by Miles Kinloch COLOUR DRAW is a multi-colour graphics editor to create pictures with 15 colour combinations per attribute cell, each new attribute having an 8 x 1 pixel format. The picture dimensions are: Width: 128 pixels. Height: Min. 8, max. 192 pixels, adjustable in 8-pixel steps. Three multi-colured pictures can be edited together, and parts may be copied or moved between each. 1. CONTROLS Cursor movement is controlled with keys Q,A,O,P,M/Space, or with the Kempston Joystick. No key redefinition is possible, as nearly every key is used in the Editor's 'hot keys' system. (For further info. about this feature, see Editor section.) 2. MAIN MENU EDITOR This is the main part of the program. (See Editor section for details.) LOAD/SAVE First, one of the three pictures must be selected, and also the storage device, i.e. tape, disk or Betadisk. During filename input, Symbol Shift/Q clears anything that has been typed, while Edit abandons the operation altogether. (See Load/Save section for list of sub-options.) SHOW PICTURES Keys 1,2,3 switch between pictures. CLEAR PICTURE Selects picture to clear. Set colours and then clear it. KEMPSTON Kempston Joystick on/off. INFORMATION Information about the authors, distribution, version etc. QUIT Resets computer (with option to cancel). 3. LOAD/SAVE LOAD SCREEN$ Loads standard 6912-byte Spectrum screen into the selected picture. After loading, define a window, moving it with keys Q,A,O,P and sizing it vertically with keys Q and A together with Space or M. Press Enter to finish. LOAD PICTURE Loads COLOUR DRAW picture (previously saved by the program). Select picture number, then type filename. SAVE PICTURE Saves COLOUR DRAW picture. Select picture number, then type filename. LOAD ATTRIBUTES Loads only multi-coloured attributes (as saved previously by SAVE ATTRIBUTES) without pixel data. This function is very useful in conjunction with SAVE PIXELS AS SCREEN$ and LOAD SCREEN$. For example, to include a circle in the picture, the latter may be drawn in ART STUDIO etc., but this requires a standard screen format. The pixels and attributes of the multi-coloured picture must therefore be separated and saved independently, then the pixel data edited in ART STUDIO, and pixels and attributes recombined afterwards in COLOUR DRAW. (When loading the pixel data back, the section of screen selected must correspond to that when it was saved, in order for the attributes to fit!) SAVE ATTRIBUTES Saves attributes only. (See above.) SAVE PIXELS AS SCREEN$ Saves pixels as normal 6912-byte SCREEN$. (See above.) SAVE PICTURE INCL. ROUTINE Saves selected picture including display routine, so you can use it in your own program. 'From address' refers to the routine's start address, which must be in uncontended RAM (above 32767) and lower than 64835. Only the length of the routine itself is taken into consideration at this stage, not the picture data, which will be compressed later. (All length and address parameters are determined after compression.) 'Buffer' means the start of the buffer used by the program: its length is equal to the picture height in pixels (8-192) times 30, and again it must be situated above address 32767. After these settings have been confirmed, the pixel data will be compressed (border will flash), and further info. displayed about the complete routine, as follows. Routine start: Address to which display routine must be loaded and executed (using LOAD "" CODE n: RANDOMIZE USR n). Test routine start: Start of routine that tests computer speed. Whole routine length: Combined length of display and test routines. Picture start: Start of picture data. (Follows routine.) The number in brackets refers to the address where the information about the picture start location is held. Picture length: Length of compressed picture. Total length: Whole routine length + picture length. This is the length of the code that will be saved. Second program address: While displaying multi-coloured pictures another short machine-code program can be run every 1/50 second. The second program's start address should be POKEd here, in standard low/high byte form. Buffer start: Start of buffer, as selected. Buffer length: Length of buffer, depends on size of picture. Memory used: Amount of memory needed for running picture, i.e. total length + buffer length. SAVE PICTURE FOR ROUTINE Saves picture data only, without routine - only one routine is required for showing all pictures in memory. (For further info., see Routine and Pictures section.) CATALOGUE Lists disk files. For tape, displays header information without loading any files. 4. EDITOR First, the desired picture must be selected. All functions can be accessed by a single keypress ('hot keys' system) or through the pull-down menu. (The hot keys are not available in the Help Menu itself.) HOT KEYS H: Help Menu. 1 or I: Sets Ink colour. 2 or Caps Shift/P: Sets Paper colour. 3 or B: Toggles Bright on/off. 4 or F: Toggles Flash on/off. S: Transparent colours. 5 or C: Applies chosen attributes by moving the cursor. 6 or Symbol Shift: Memorises attributes at cursor position. 7 or N: Copies memorised attributes to cursor position. 8 or G: Grids Sub-menu: Set/Remove Raster: Bright grid on/off. Set Bright: Applies Bright to whole picture. Set/Remove Grid: Sets or removes grid. 9 or T: Cursor mode, i.e. toggle, set or reset. 0: Inverts attribute (swaps Paper and Ink). X: Border on/off. (If on, Border indicates colour below cursor.) V: View. In this mode, the following functions are available: Q,A,O,P: Position. Fire+Q/A: Height. 6,7: Border colour. C: Copies window. Select window (using Q,A,W,S,O,P to move, with Fire to change size, and Enter to finish), then use keys 1,2,3 to change picture, Fire to copy, and Break or Enter to finish. T: Transports window. Similar to Copy, but background takes attribute memorised by key 6 or Symbol Shift (see above). Use Fire to transport, Break or Enter to finish. R: Scrolls windows. Select window, then use O & P to scroll (Q & A do nothing), together with Fire to scroll only one pixel at a time. (Attributes are not scrolled.) Press Enter to finish, Break to abandon without change. Z: Flips (mirrors) window. Select window, then use keys Q,A,O,P to flip, and Enter to finish. X: Clears window. Select, then press Enter to proceed, Break to abandon. H: Picture position and height info. 1,2,3: Switches between pictures. L+1,2,3: Loads selected picture (1,2,3) to actual one. S+1,2,3: Saves actual picture to selected one (1,2,3). E+1,2,3: Swaps actual picture with selected one (1,2,3). V or Break: Returns to Editor. BREAK: Returns to Main Menu. 5. ROUTINE AND PICTURES When only one picture is in memory, it can be shown simply by running the routine at its start address. When there is more than one, the display routine must be told whereabouts in memory the picture of interest starts. When the picture with the display routine was saved, an address would have appeared in brackets alongside 'Picture Start': this must be POKEd with the low and high bytes of the picture to be shown. 6. INFORMATION ABOUT THE ROUTINE The routine consists of two parts: a computer speed test and the display routine itself. The first of these establishes the exact machine speed, which varies between different models. The screen is momentarily filled with specific attributes, causing it to flicker for about 1/10 second before the original attributes are restored, so you may wish to use a black Paper/black Ink background while this is carried out. The speed test also switches off Interrupt Mode 2 and sets the I register to 63. The time taken to execute any second routine is critical, and depends to an extent on how far the bottom of the picture is from the foot of the screen display area - the nearer, the less time available. If too long, the display can be adversely affected by excessive flicker in the multi-colour areas. When no second routine is present, its address should point to 82 - a ROM location containing a RET instruction. Sound Tracker and SQ-Tracker tunes make compatible second routines. No registers need be preserved.