Release history

0.3  04.04.2008 - first public release
0.4  05.04.2008 - corrected memory management bug which caused many knock-on problems
                - fixed a problem with the sound compilation
                - added code to display message number in the message editor
0.5  06.04.2008 - fixed bug moving to next level
                - fixed bug whereby only 6 sprites appeared on screen, instead of maximum 12
0.6  12.04.2008 - added functionality for ADD and SUBTRACT
                - added events for restart and initialise sprite
                - games are now saved properly, so should now be entirely stand-alone
                - fixed bug in scoring routine
0.7  13.04.2008 - fixed anti-flicker sprite sort
                - fixed delete message bug
                - removed debug code which prevented saved games being reloaded
0.8  18.04.2008 - added map layout code
                - added DISPLAY command to display numeric values
                - code editor now makes use of as much RAM as possible
                - now returns address of score string to BASIC
0.9  27.04.2008 - window resize now shows character squares in a chessboard pattern
                - fixed lock up caused by delete block routine
1.0  29.04.2008 - should be fairly stable now, so we'll call this version 1.0  ;)
                - added new deadly block, and new DEADLY collision test
                - replaced missing code for sprite copy and paste
                - fixed a bug in the sprite initialisation event
1.1  07.05.2008 - fixed bug in SPAWN routine
                - added WAITKEY command
1.3  28.02.2009 - rewrote sprite routines to eliminate flicker
                - added JUMP and FALL commands
                - added jump table editor
1.4  01.03.2009 - added global variables E, F, G and H
                - SCORE, BORDER, COLOUR, DELAY, MESSAGE now accept variables as arguments
1.5  02.05.2009 - added object editor to main menu
                - added GOT, GET, PUT, DETECTOBJ
                - added global variables I, J, K and L, plus object handling variable OBJ
                - fixed screen corruption in text editor
2.0  29.08.2009 - screen data is now stored in a compressed format
                - changing screens with LET SCREEN = now changes the map position
                - added TOGGLE command
                - increased speed of sprite routine
                - fixed bugs which occurred when deleting screens or resizing window
2.1  18.09.2009 - added ENDGAME command
                - added PRINT facility to text editor (symbol shift-I)
                - fixed bug which removed first sprite position when resizing window
                - stand-alone games no longer crash on returning to Sinclair BASIC
                - fixed compiler bug whereby IF would occasionally test incorrect parameters
                - fixed bug with FALL command which prevented char-aligned sprites falling
2.2  03.10.2009 - replaced TOGGLE command with OTHER, SPAWNED and ORIGINAL
                - added ANIMBACK command
                - editor now checks sufficient room in RAM before editing event scripts
                - removed unshifted copy of sprites, making them 20% more efficient
                - added option to configure editor colours
2.3  21.03.2010 - bright key in block editor now cycles all 4 bright and flash bit combinations
                - fixed bug amending screens after blocks are deleted in block editor
                - fixed problem with sound in DELAY
2.4  02.04.2010 - added fast draw mode to screen editor
                - added collision detection distance option to main menu
                - added setup menu with ULA+ palette editor
                - block editor now displays blocks properly in ULA+ mode
                - reset sprite frame and avoid potential corruption on sprite creation/deletion
                - minor internal compiler changes
2.5  04.06.2010 - fixed bug which didn't set up terminator when adding a sound
2.6  17.07.2010 - save current screen changes when creating new screen in the editor
2.7  26.11.2011 - added Kempston joystick support
                - internal editor changes to free up more RAM
3.0  08.04.2012 - editor routines paged in and out of RAM to create more room for the game
                - added event templates
                - ULA+ palette editor incorporated into main menu
                - vertical and horizontal mirroring added to sprite and object editors
                - scratchpad screen load/grab functionality added to sprite editor
                - added >, <=, <> operators
                - added M, N, O and P variables
                - added INV and MENU commands and OPT variable
                - added off-screen protection to print routines to stop overwriting system variables
                - added BEEP command
                - previously, IF A=3 worked while 3=A didn't.  This has been fixed
                - option to create BASIC loader added
                - font editor added
3.1  20.05.2012 - fixed bug in way script compiler handles numbers
3.2  08.06.2012 - added REPEAT, ENDREPEAT, EXIT commands
                - screen editor now includes mark and paste facilities
                - created enemy template for ladders-and-levels games
3.3  21.12.2012 - added MULTIPLY command
                - fixed bug in screen editor mark and paste
                - fixed last two event templates
3.4  17.02.2013 - fixed bug in GETRANDOM
                - fixed bug in text editor whereby text could appear in next message
                - sprite position editor no longer calls sprite initialisation event
                - text editor speeded up
3.5  28.03.2013 - fixed code editor bug by increasing gap between game and editor workspace
4.0  04.05.2013 - added facility to modify engine for particles, effects or puzzles
                - added option to convert sprite engine from 16x16 to 16x24
                - incorporated a particle engine
                - added Q, R and CLOCK variables
                - added DIVIDE, SPRITEINK, SILENCE, REDRAW, CONTROLMENU commands
                - FILL command replaced with PUTBLOCK
                - added LASER, EXPLODE, STAR and TRAIL particle commands
                - added BIGMESSAGE, FADE, TICKER, BIGSCORE effect commands
                - INV and DIG moved to adventure engine
                - water block added to adventure engine
                - sprite position editor highlights selected sprite
                - sprite positions now use less memory
                - events editor moves cursor to first erroneous line
                - maps can now be 11 rooms wide
                - added option to incorporate loading screen in BASIC loader
                - added option to remove sprite ordering and AY sound
                - added several new events
4.1  09.05.2013 - fixed debounce on key refinition
                - sprite clear, grab, copy and paste should now work for 16x24 sprites
4.2  07.07.2013 - fixed 16x24 sprite horizontal flip
                - experimental colour scheme change
4.3  31.08.2013 - fixed compiler COLLISION bug
                - no longer displays trailing digits for screens 0-9 in screen editor
                - now tabulates properly in sound editor
                - added keys 3 and 4 in sound editor to speed up tone setting
4.4  05.01.2014 - check for objects at next sprite position, not previous one
                - store new font correctly when loading an AGD file from tape
                - vertically flip entire 16x24 sprite, not just 16x16
                - removing sprite frame in 16x24 mode no longer corrupts sprites
                - don't overwrite end marker when length of text message changes
                - fixed bug which corrupted sprite position data following window resize
                - set a default sprite in main loop events to fix spawning bugs
4.5  15.02.2014 - don't page out the end of the game code when saving
                - only save a loading screen if one was supplied by the user
                - fix screen corruption when jump table editor reaches limits
                - Added RGB value display to palette editor
4.6  04.10.2014 - fix text buffer corruption when multiple messages are added in one go
                - display screen correctly when positioning objects
4.7  06.03.2017 - added STOPFALL command
                - added S and T variables
                - prevent user creating empty text messages which caused corruption
                - added code templates for pushable blocks and moving platforms
                - COLLISION can now be used to detect sprites of the same type
                - BEEP values over 127 now produce white noise sound effects
                - removed requirement for sprite to be standing on a solid block before a jump
                - stopped text messages corrupting PUTBLOCK
                - temporarily compress sprites to free up memory when editing events
                - water blocks are now working correctly
                - copying and pasting 16x24 pixel sprites now copies the entire image
                - BEEP no longer changes the border colour to black
                - various minor engine changes

