STAR TIP 1 by Dominic Robinson from Your Sinclair #20 (Aug.1987) - "Program Pitstop" [files STARTIP1.*] Ever looked at the flashy rainbow coloured lettering on Hewson games and thought "Corky! I wish I could do that in my games!" Well now you can, because those awfully nice Hewson people have allowed Dominic Robinson, the exceedingly talented chap behind the Spectrum conversion of Uridium, to share it with you. His programming life at Hewson began when he worked on the team that built Pyracurse, and after Uridium and the game he's just completed, Zynaps, he looks, at the tender age of 21, to be one of the top Spectrum programmers of 1987. The Rainbow Effects Processor is a very tidy group of routines, used in both Zynaps and Uridium to produce the amazing rainbow 3D effects on the title and hi-score screens. "In its simplest form, the Rainbow Processor can be used to increase the Spectrum's normal colour resolution, giving you a different colour on each pixel line, in a band twenty characters wide in the centre of the screen. With a little more work, the bars can be animated to produce some very un-Spectrum like effects. The Rainbow Processor runs in Interrupt Mode 2, to keep it synchronised with the generation of the TV picture, so that different attribute values are fetched for each pixel line." Method To use the Rainbow Processor, you must set up a block of memory containing the colour for each pixel line of your display. This block can be 256 bytes long, although at most 192 will be used at one time, and it must not cross a page boundary. Starting at a block at an address which is a multiple of 256 will ensure that this condition is met. For example: 193*256-49408, which is conveniently placed just above the end of the code. Next POKE the address of your data into 49189 and 49190; call the routine at 49153 to initialise the interrupts, then POKE 49188 with the number of pixel lines you want displayed. This value should be a multiple of 8 for best results. Any value outside of the range 1 to 192 will switch off the rainbow effect until another value is used. The deeper the display you use, the less processor time will be available for Basic or any other code you have running. For this reason the rainbow effect can only really be used for title screens and special effects. Hex Dump Feed this, eight bytes at a time, into the Hex Loader from Peeker, and save it as SAVE "democode" CODE 49153,145. Demo Program This small Basic program demonstrates the facilities of the Rainbow Code. Save it as SAVE "RAINBOW" LINE 2000. When you run it, it will load and activate the machine code, upon which the screen will go black for a couple of minutes while the demo picture is drawn. So be patient; the result is stunning.