/ EXCITATION GENERATORS / EXCGEN USES TRIANGULAR ENVELOPE & SKIPS IF EVENT / DRONE1 GIVES FIXED PERIOD AND AMP = MAX MOD IN LAST PERIOD / DRONE2 GIVES FIXED PERIOD AND FIXED AMP. *PART4 INIT, 0 CLA DCA ENV DCA MOD TAD NUM CIA DCA COUNT TAD HEIGHT DCA HIGH DCA MDEC DCA DEC JMP I INIT CHMOD, 0 SPA CIA DCA MOD TAD MOD CIA CLL TAD ENV SZL SNA CLA JMP I CHMOD TAD MOD DCA ENV ISZ CHMOD JMP I CHMOD EXCGEN, 0 JMS CHMOD JMP I EXCGEN TAD ENV ASR SHIFT, 0 CMA /AT LEAST 1 TO ENSURE DECAY DCA MDEC DCA DEC TAD ENV DCA HIGH ISZ EXCGEN /SKIP IF EVENT JMP I EXCGEN TRIEXC, 0 /LINEAR ENVELOPE DECAY JMS INIT TAD TRICON DCA SHIFT JMS I TRIEXC TREXRA, 0 JMS EXCGEN SKP ISZ TREXRA JMS TRIANG TAD HIGH JMP I TREXRA PAREXC, 0 /PARABOLIC ENVELOPE DECAY JMS INIT TAD PARCON DCA SHIFT JMS I PAREXC PREXRA, 0 JMS EXCGEN SKP ISZ PREXRA JMS PARAB TAD HIGH JMP I PREXRA TAD .-1 DCA EXCGEN JMP EXCGEN+1 TRIANG, 0 TAD MDEC TAD ENV SPA CLA DCA ENV JMP I TRIANG PARAB, 0 TAD DEC TAD ENV SPA CLA DCA ENV TAD DEC TAD MDEC SMA CLA STL RAR DCA DEC JMP I PARAB INDR1, 0 JMS INIT JMS I INDR1 DRONE1, 0 JMS CHMOD NOP ISZ COUNT JMP OUT TAD ENV DCA HIGH DCA ENV TAD NUM CIA DCA COUNT ISZ DRONE1 OUT, TAD HIGH JMP I DRONE1 INDR2, 0 JMS INIT JMS I INDR2 DRONE2, 0 CLA ISZ COUNT JMP OUT2 TAD NUM CIA DCA COUNT ISZ DRONE2 OUT2, TAD HIGH JMP I DRONE2 TRICON, 0 PARCON, 0 HEIGHT, 0 NUM, 0 MOD, 0 ENV, 0 DEC, 0 MDEC, 0 HIGH, 0 COUNT, 0 DECI, 0 $$$$$$$$$$$$$$$$$$$$$$