ARGYLL

Author: regregex
Category: Christmas Challenge
System: BBC Micro A/B/Master, Acorn Electron
Language: BBC BASIC
Len source code: 141 bytes
Len exe file:    119 bytes
Len code only:   119 bytes
Instructions:
 Install and open BeebEm ( http://www.mkw.me.uk/beebem/ ).
 Click File -> Disc Options -> New Disc 0, enter argyll.ssd
 Click Edit -> Import Files to Disc -> Disc 0, select argyll.inf
 At the BASIC prompt, type CHAIN"ARGYLL" and press RETURN.

 To reproduce the screenshots:
 Click Hardware -> BBC Model -> BBC Master 128
 Enter the following:
 *INSERT 9
 *CONFIGURE FILE 9
 *CONFIGURE MODE 4
 Press Ctrl+F12 (CTRL+BREAK), releasing Ctrl last.
 Then follow the instructions above.

Description: The program runs under BBC BASIC version 1 and up.
First it selects display MODE 2, which automatically clears the screen.
It then turns the cursor off (with five little-endian words to the VDU
driver) and initialises C%, a running variable of the current text
colour.  The program then endlessly draws three interlinked oblique
rectangles made up of multi-coloured asterisks.  The commands used are
VDU 17 to select a colour, and VDU 31 to move the cursor to a position
on each rectangle.  VDU 42 prints the asterisk itself and the colour
variable is then cycled.  The positions being redrawn are staggered to
produce a pleasing effect.

Comments:
The animation speed is improved slightly by crunching the code and
using the resident integer variables A%..Z%.