I’ve written a New Year’s poem each year this millennium. This one is a one-line Commodore 64 BASIC program. Although the text of the programs runs across more than one line of the screen, there is only one logical line in the program, and only one line number: 0. The program runs until interrupted by the STOP key or until the power is turned off. In case you would like to read some of the output aloud, I’ll mention that, personally, I pronounce CA as “California,” ER as the hesitant interjection, TH as if it were the ordinal suffix (“eighth,” “nth,” “cantoth” and so on) and SE as “southeast.”
This is my first one-line C64 BASIC poetry generator, although this poem is fairly closely related to two projects of mine from the past year. One is Programs at an Exhibition, put on with Páll Thayer and incorporating five of his Perl programs. My contribution consisted of five one-line Commodore 64 BASIC programs that implement and play upon contemporary artworks. The other is the poetry generator Round, first published by New Binary Press in 2013 and, in 2014, appearing as the first poem in my book #! from Counterpath Press. Round maps the digits of pi to bits of langauge; this program does something similar with a pseudorandom sequence generated by the Commodore 64’s RND function. The words used in this mapping, in “The Era Canto,” are constrained by the way they are stored in the string, as prefixes to longer words and overlapping one another.
A text version of this program’s code follows. {down}
indicates a press of the DOWN-ARROW key, while {orng}
indicates holding down the COMMODORE key and pressing 1. If you type this into a Commodore 64 or emulator, the line should wrap on its own after the ‘a’ — you should not press return until the end. Where lowercase letters are shown, they should be typed unshifted; they will appear as capital letters on the C64. Where capital letters are shown below, they should be typed while holding down SHIFT; they will appear as special, graphical characters. After typing the last character (SHIFT-O), press LEFT-ARROW once to back up onto the end of the 80-character logical line and then press RETURN.
0?rI("{down}{orng} ",rN(1)+2.5)mI("cantoothemetera
sextone",1+3*int(rN(1)*7),2+4*rN(1));:gO
Instead of typing the code in, you may download “The Era Canto” as a PRG file for use in a Commodore 64 emualtor (or on an actual C64).
The program produces the phrase THE ERA CANTO for the first time at the point when 20850 words have been generated.