Author: Jonathan Harston
Category: Christmas Challenge
System: Any system that can run BBC BASIC
Language: BBC BASIC
Source length: 94 bytes
File length: 94 bytes
Executable length: 94 bytes
Instructions:
On any system that can run BBC BASIC, CHAIN "xmas2024a".
Description:
Changes MODE to a 1x1 display, and centres the display. Simple enough
to be a one-line program. The image shows the program running on a
BBC B.
The code leverages the STRING$() function to make multiple copies
of the strings needed to be displayed. Each half of the parcel is
created with STRING$(), and then each half is then doubled with
STRING$() to create the whole line. The final character has to be
output manually.
Each line is generated from a loop from 0 to 5, with even lines
outputting a single 'string', and odd lines outputting eight lines
of 'wrapping paper'. The AND to determine odd/even is written
backwards to stop the tokeniser running the variable into the AND.
The only difference from the 'version A' program is the initial
switch to MODE 4 to clear the screen and select "square" characters,
and outputting padding to centre the display.