Main Challenge (Compo)

Author: Greg Nancarrow
Category: Christmas Challenge
System:   Sinclair ZX Spectrum (all models)
Language: BASIC
Len source code: 114 bytes
Instructions:
I have supplied the program in plain text format (source.txt) and in one loadable file format (vccc2023.tap).
The code may be run in any of the many ZX Spectrum emulators, such as Spectaculator, Speccy or Fuse, on any of the Spectrum models being emulated.
For example, using Spectaculator, Open the .tap file and enter LOAD "" and then enter RUN.
If using Speccy, Open the .tap file, enter LOAD "", then select "Rewind and Start Tape", then enter RUN.
Of course, since it is quite short, you can always just type it in.
Description:
The object can be viewed as being composed of a set of 6 diagonal lines sloping at 45 degrees to the right (of length 4,10,16,16,10,4) and a corresponding intersecting set of 6 diagonal lines sloping to the left.
The code prints each point (asterisk) of these sets of lines, top-down, starting with the top-left and top-right points, using the fact that, horizontally, on each set of diagonal lines, the next point on the next line is 6 characters away, including the case of wrapping to the next line.
Comments:
Boolean (1/0) expressions (e.g. in assigned values and GO TO) are used to avoid lengthy conditional syntax, to minimize code size.