scene.org File Archive

File download

<root>­/­parties­/­2023­/­vccc23­/­christmas-diamonds/solarbreeze_superpet_apl_vc3-2023.zip

File size:
230 368 bytes (224.97K)
File date:
2024-01-03 14:15:18
Download count:
all-time: 1

Preview

  • solarbreeze_superpet_apl_vc3-2023/file_id.txt 2.31K
  • solarbreeze_superpet_apl_vc3-2023/solarbreeze_superpet_apl_vc3-23-screenshotsource.png 38.55K
  • solarbreeze_superpet_apl_vc3-2023/solarbreeze_superpet_apl_vc3-23-video.mp4 626.33K
  • solarbreeze_superpet_apl_vc3-2023/Waterloo2-Language-No6702-2-vc3-23.d64 170.75K

file_id.diz

Author: solarbreeze
Category: Christmas Challenge 2023
System: Commodore SuperPET
Language: APL - Waterloo microAPL v1.1 interpreter
Len source code: 62 Bytes

Instructions: Run on a real Commodore SuperPET, or use the Vice xpet emulator.   
Be certain to use a modern version of Vice xpet that includes the SuperPET setting.
Place the Waterloo2-Language-No6702-2-vc3-23.d64 file into the Vice bin directory, then launch xpet. Hit F12 for the menu. 
For the Drive, go to Attach disk image to drive 8, then use the arrow keys to select the Waterloo2-Language-No6702-2-vc3-23.d64 disk.
For Drive 8 setting, select Drive Type of 4040.
For Machine settings -> Select PET model -> select the Super PET option.
For Settings management, for the Active keymap select Positional and for Keyboard mapping select American (us).
Exit from settings and type "disk/0.apl" at the Waterloo microSystems prompt and hit return. 
After APL loads, arrow down to clear the screen to give the snowflake room to print nicely, then type  )LOAD VCCC2023
The ) key is the shifted ' key.
The VCCC2023 workspace loads and autoruns the APL one-liner, printing the Christmas challenge object. Since the program is stored as a latent expression that is run when the workspace is loaded, rather than as a function, )FNS will not list it. View the program using QuadLX. Quad is the shifted L key. 

Description: A 62-byte APL one-liner: 
'*'⎕POKE,(480×⍳3)∘.+(6×⍳3)∘.+32772+(79 81∘.×⍳4),480-79 81∘.×⍳3

Read from right to left. Starting from screen memory location 32772, make an array with the screen locations for one snow quilt diamond. Then take its outer product sum with positions offset 0, 6, and 12 horizontal screen locations to the right, then the outer product sum for positions 0, 480, and 960 vertical screen locations lower with a screen length of 80 characters. POKE the '*' character into each screen memory location in this array.
 
Files:
file_id.diz - this file
solarbreeze_superpet_apl_vc3-23-screenshotsource.png (source code and screen shot of object)
solarbreeze_superpet_apl_vc3-23-video (video of loading and running of program)

Waterloo2-Language-No6702-2-vc3-23.d64 (Waterloo microAPL version 1.1 language disk with 
                                        VCCC2023 workspace containing program to print object)