Trailing-Edge
-
PDP-10 Archives
-
decuslib20-02
-
decus/20-0028/apiapt.sno
There are 2 other files named apiapt.sno in the archive. Click here to see a list.
* WHEN THE OUTPUT ASSOCIATION FOR "SING" IS CHANGED TO
* A DIGITAL-TO-ANALOG COMVERTER WITH PROPER MELODY
* SYNTHESIZER, THIS PROGRAM SINGS THAT OLD CHRISTMASTIME
* FAVORITE, " A PARTIRDGE IN A PEAR TREE."
*
*
* M.D. SHAPIRO
*
* EXAMPLE FROM REFERENCE MANUAL PAGE 213
ACAPPELLA.CHOIR = 6 OR MORE PEOPLE SINGING IN TUNE
*
DAYS = 'FIRST,SECOND,THIRD,FOURTH,FIFTH,SIXTH,'
. 'SEVENTH,EIGHTH,NINTH,TENTH,ELEVENTH,TWELFTH,'
NEXT = BREAK(',') . WHICH LEN(1)
*
TRACE('SING','VALUE',,'SONG')
&TRACE = 1000
*
DEFINE('SONG()') :(NEXT.DAY)
SONG PAUSE IDENT(SING) OUTPUT('SING',ACAPPELLA.CHOIR,
. "(' " PAUSE "',20A5)") = ' ' :(RETURN)
*
NEXT.DAY DAYS NEXT = :F(CODA)
SING = (TAKE A BREATH)
SING = 'ON THE ' WHICH ' DAY OF CHRISTMAS,'
SING = 'MY TRUE LOVE GAVE TO ME,' :($WHICH)
TWELFTH SING = 'TWELVE LORDS A-LEAPING'
ELEVENTH SING = 'ELEVEN LADIES DANCING,'
TENTH SING = 'TEN PIPERS PIPING,'
NINTH SING = 'NINE DRUMMERS DRUMMING,'
EIGHTH SING = 'EIGHT MAIDS A-MILKING,'
SEVENTH SING = 'SEVEN SWANS A-SWIMMING,'
SIXTH SING = 'SIX GEESE A-LAYING,'
FIFTH SING = 'FIVE GOLD RINGS,'
FOURTH SING = 'FOUR COLLY BIRDS,'
THIRD SING = 'THREE FRENCH HENS,'
SECOND SING = 'TWO TURTLEDOVES,'
FIRST SING = AND 'A PARTRDIGE IN A PAIR TREE.'
AND = IDENT(AND) 'AND ' :(NEXT.DAY)
*
CODA SING = INPUT
*
END
---------------