Author: solarbreeze
Category: Christmas Challenge
System: Commodore SuperPET
Language: Waterloo microAPL v1.0 interpreter
Length of source code: 162 Bytes

Instructions: Load a Vice xpet session launched as follows:  
xpet +sound -truedrive -superpet -cpu6809 -model SuperPET -drive8type 8050             -9 sp9000lang.d80

Type "APL" at the Waterloo microSystems menu prompt to launch Waterloo microAPL and then load the workspace using
)LOAD DISK/1.VCCC22

The APL workspace variables can be listed with )VARS and array variables inspected by typing their names into the interpreter, such as A, C, or K.


Description of how the code works:
Place a line of data into array A, concatenate the rest of the data and reshape into a 9x9 array as C. D is vertical rotation, the upper half is now built but with an overbuilt middle. Next, horizontal rotation, and to handle the overbuilt centers we twice cut in half while dropping the extra middle lines then catting back together. Evaluation of the expression prints the array. 


Files:
file_id.diz
vccc22superpet1.jpg (code ready to run)
vccc22superpet2.jpg (after hitting return)
sp9000lang.d80 (Waterloo languages disk with APL and saved workspace)
vccc22superpetapl.pdf (documentation of APL code and process)