home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: Railroad Tycoon Amiga Music FX / Lowe_RailroadTycoonAmigaMusicFX.adf / jagmusic.s < prev    next >
Encoding:
Text File  |  1978-09-12  |  49.0 KB  |  2,851 lines

  1.  
  2.     ;    DRIVER AND MUSIC REMAIN COPYRIGHT D.LOWE 
  3.  
  4.     ;    LINE OF FIRE LOADING MUSIC+INGAME TUNES
  5.  
  6.  
  7.  
  8.     ; I think I have commented everything you need to know
  9.     ; to get it running but dont hesitate to ring if something
  10.     ; is unclear.
  11.  
  12.  
  13.     ;        DAVE LOWE.....0723  870648
  14.  
  15.  
  16. ;        **************************
  17.  
  18.     section issA,code_c    ;must be in low memory for dma access
  19.                 ;DEVPAC PSEUDO OP ..CAN BE DELETED
  20.  
  21.  
  22. ;*****************************************
  23.  
  24.         ;  ALL EQUs
  25.  
  26. a00  equ  508*2
  27. bb00  equ  480*2
  28. b00  equ  453*2
  29.  
  30. c01  equ  428*2
  31. db01  equ  404*2
  32. d01 equ  381*2
  33. eb01  equ  360*2
  34. e01  equ  339*2
  35. f01  equ  320*2
  36. gb01  equ  302*2
  37. g01  equ  285*2
  38. ab01 equ 269*2
  39. a01  equ  508
  40. bb01  equ  480
  41. b01  equ  453
  42.  
  43. c02  equ  428
  44. db02  equ  404
  45. d02  equ  381
  46. eb02  equ  360
  47. e02  equ  339
  48. f02  equ  320
  49. gb02  equ  302
  50. g02  equ  285
  51. ab02 equ 269
  52. a02  equ  254
  53. bb02  equ  240
  54. b02  equ  226
  55.  
  56. c03  equ  214
  57. db03  equ  202
  58. d03  equ  190
  59. eb03  equ  180
  60. e03  equ  170
  61. f03  equ  160
  62. gb03  equ  151
  63. g03  equ  143
  64. ab03 equ 135
  65. a03  equ  127
  66.  
  67. bb03  equ  480*2
  68. b03  equ  453*2
  69.  
  70. c04  equ  428*2
  71. db04  equ  404*2
  72. d04 equ  381*2
  73. eb04  equ  360*2
  74. e04  equ  339*2
  75. f04  equ  320*2
  76. gb04  equ  302*2
  77. g04  equ  285*2
  78. ab04 equ 269*2
  79. a04  equ  508
  80. bb04  equ  480
  81. b04  equ  453
  82.  
  83. c05  equ  428
  84. db05  equ  404
  85. d05  equ  381
  86. eb05  equ  360
  87. e05  equ  339
  88. f05  equ  320
  89. gb05  equ  302
  90. g05  equ  285
  91. ab05 equ 269
  92. a05  equ  254
  93. bb05  equ  240
  94. b05  equ  226
  95.  
  96. c06  equ  214
  97. db06  equ  202
  98. d06  equ  190
  99. eb06  equ  180
  100. e06  equ  170
  101. f06  equ  160
  102. gb06  equ  151
  103. g06  equ  143
  104. ab06 equ 135
  105. a06  equ  127
  106. bb06  equ  480*2
  107. b06  equ  453*2
  108.  
  109. c07  equ  428*2
  110. db07  equ  404*2
  111. d07 equ  381*2
  112. eb07  equ  360*2
  113. e07  equ  339*2
  114. f07  equ  320*2
  115. gb07  equ  302*2
  116. g07  equ  285*2
  117. ab07 equ 269*2
  118. a07  equ  508
  119. bb07  equ  480
  120. b07  equ  453
  121.  
  122. c08  equ  428
  123. db08  equ  404
  124. d08  equ  381
  125. eb08  equ  360
  126. e08  equ  339
  127. f08  equ  320
  128. gb08  equ  302
  129. g08  equ  285
  130. ab08 equ 269
  131. a08  equ  254
  132. bb08  equ  240
  133. b08  equ  226
  134.  
  135.  
  136. v equ 0
  137.  
  138. no_loop equ 0
  139. loop equ 0
  140. chann1reg   equ $dff0a0    
  141. chann2reg   equ $dff0b0
  142. chann3reg   equ $dff0c0
  143. chann4reg   equ $dff0d0
  144. dmacon     equ $dff096
  145. int_bf_int   equ   $dff01e
  146. int_bf_w    equ   $dff09a
  147. vhposr     equ   $dff006
  148. in_line    equ   0
  149. new_snd    equ   4
  150. end_song     equ   1
  151. end_patt    equ   8
  152. new_env    equ   12
  153. pbend     equ   16
  154.  
  155. cr  equ   20
  156. q equ cr/2
  157. sq equ q/2
  158. dsq equ sq/2
  159. m  equ cr*2
  160. sb equ cr*4
  161. dcr equ cr+q
  162. dq  equ q+sq
  163. r14 equ 264
  164.  
  165. dm  equ m+cr
  166.  
  167. hi: equ 223
  168. lo:  equ 446
  169.  
  170. r22    equ 134
  171. r20    equ 179        ;correctum
  172. r19    equ 150
  173. r18    equ 178
  174. r17    equ 200
  175. r16:    equ 227        ;correctum
  176. r15:    equ 249
  177. r13:    equ 305
  178. r12:    equ 333
  179. r11:    equ 361
  180. r10:    equ 389
  181. r9:    equ 419
  182. r8:    equ 446
  183. r7:    equ 446+112
  184. r6:    equ 446+223
  185. r5:    equ 446+223+112
  186. r4:    equ 446*2
  187. r3:    equ 446*3
  188. r2:    equ 446*4
  189. r1:    equ 446*8
  190.  
  191.  
  192. filter: equ $bfe001
  193. filter_on equ 44
  194. filter_off equ 48
  195.  
  196. modon     equ   20
  197. pboff     equ   24
  198. modoff     equ   28
  199. rest     equ 32
  200. end_fxp  equ 36
  201. end_fx3  equ 36
  202. end_fx4  equ 40
  203. acc    equ 52
  204. repeat    equ 56
  205. down      equ   1
  206. up       equ   2
  207.  
  208. ;***************************************************************
  209. ;***************************************************************
  210.  
  211.  ;    THIS IS THE CONTROL SECTION FOR TESTING AS A STAND ALONE PRG. 
  212.  
  213.     ;       AND CAN BE DELETED WHEN NOT REQUIRED
  214.  
  215.  
  216.     jsr select_new_song
  217.  
  218. testloop:
  219.     tst.w kill_flag
  220.  
  221.     ;     fudge to kill sound when developing
  222.     beq no_kill
  223.     move.w #1,music_disable
  224.     jsr kill_chip
  225.  
  226.  
  227. no_kill
  228.     jsr delay    ;wait for scan line  at 50hz on pal
  229.  
  230.     jsr driver
  231.  
  232.         bra testloop
  233.  
  234.  
  235. delay:
  236.     tst.w fxtimer
  237.     bne no_test
  238.     clr.l d0
  239.     move.b $bfe001,d0
  240.     btst #6,d0
  241.     bne no_test1
  242.  
  243.     
  244.     move.w #1,kill_flag
  245.  
  246.  
  247.  
  248.     move.w #10,fxtimer
  249.     bra testfx4
  250. no_test
  251.     
  252.     subq #1,fxtimer
  253. no_test1
  254.     clr.l d0
  255.         move.w vhposr,d0
  256.         andi.w #%1111111100000000,d0
  257.         cmpi.w #%1111111100000000,d0
  258.  
  259.     bne no_test1
  260.     rts
  261.  
  262. testfx4:  
  263.  
  264.     clr.l d0
  265.     move.b $bfe001,d0
  266.     btst #6,d0
  267.     beq testfx4
  268.  
  269.  
  270.     move.l fx_last,d0
  271.     move.l d0,fx_kill
  272.  
  273.     jsr kill_loopfx        ;only one fx at a time
  274.  
  275.  
  276. no_k
  277.         move.l fx_no,fx_number
  278.     move.l fx_no,fx_last
  279.     addq.l #1,fx_no
  280.     ;move.l    max_fx,d0
  281.         cmp.l fx_no,d0
  282.     bne noreset
  283.     move.l #1,fx_no    
  284. noreset: 
  285.     jsr set_up_fx
  286.     bra no_test    
  287.  
  288. fxtc:          dc.w 10
  289. fx_no:         dc.l  1
  290. fx_last        dc.l  0
  291.  
  292.  
  293. ;        END OF CONTROL (DELETABLE) SECTION
  294.  
  295. ;**********************************************************
  296. ;**********************************************************
  297.  
  298. ; --------------------------------------------------------------
  299.  
  300. ;    MAIN VARIABLES TO BE ACCESSED BY PROGRAMMER DURING RUNTIME
  301.  
  302.  
  303. fx_number:     dc.l 0 ;     number of fx required here...see list
  304. fx_kill        dc.l 0 ;     number of fx to kill/only needed for looped fx
  305.  
  306. song_buffer     dc.l 1 ;     number of piece of music required here ie.1 to 3
  307.                ;     1 = loading tune/2 = hi_score jingle
  308.                ;     3 = win jingle
  309.  
  310. music_disable:  dc.w 0 ;     1 = disable music
  311. fx_disable:     dc.w 1 ;     1 = disable fx  (currently disabled)
  312.  
  313. ;    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  314.  
  315. ;  THESE VARIABLES ARE USED INTERNALLY BY THE DRIVER
  316. fxr1         dc.l 0  
  317. fxr2         dc.l 0  
  318. fxr3         dc.l 0  
  319. fxr4         dc.l 0  
  320. fxc1        dc.l 0
  321. fxc2          dc.l 0
  322. fxc3        dc.l 0
  323. fxc4          dc.l 0
  324. fx1_flag    dc.w 0
  325. fx2_flag    dc.w 0
  326. fx3_flag    dc.w 0
  327. fx4_flag    dc.w 0
  328. fxtimer        dc.w 0
  329. gen        dc.w 0
  330. int_disable    dc.w 0
  331. altpf         dc.w 0
  332. kill_flag    dc.w 0
  333. ;  *******************************************************
  334.  
  335. ;  CALL THIS SUBROUTINE TO SET UP THE REQIURED FX
  336. ;  on entry it requires the fx number to be in "fx_number"(see above)
  337. ;  
  338.  
  339. set_up_fx
  340.     movem.l d5/a2,-(a7)    ;save used registers
  341.     tst.l fxc4
  342.     bne check3
  343. use4:    
  344.     move.w #%0000000000001000,d5
  345.     lea chann4reg,a2
  346.     jsr end_fx4p
  347.     move.l fx_number,fxr4
  348.     move.l fx_number,fxc4
  349.     move.l #0,fx_number
  350.     bra no_fx
  351. check3:    tst.l fxc3
  352.     bne check2
  353. use3:
  354.     move.w #%0000000000000100,d5
  355.     lea chann3reg,a2
  356.     jsr end_fx3p
  357.     move.l fx_number,fxr3
  358.     move.l fx_number,fxc3
  359.     move.l #0,fx_number
  360.     bra no_fx
  361. check2:    tst.l fxc2
  362.     bne check1
  363. use2:
  364.     move.w #%0000000000000010,d5
  365.     lea chann2reg,a2
  366.     jsr end_fx2p
  367.     move.l fx_number,fxr2
  368.     move.l fx_number,fxc2
  369.     move.l #0,fx_number
  370.     bra no_fx
  371. check1:    tst.l fxc1
  372.     bne use4
  373. use1:
  374.     move.w #%0000000000000001,d5
  375.     lea chann1reg,a2
  376.     jsr end_fx1p
  377.     move.l fx_number,fxr1
  378.     move.l fx_number,fxc1
  379.     move.l #0,fx_number
  380. no_fx
  381.     movem.l (a7)+,d5/a2    ;restore registers
  382.     rts
  383.  
  384. ;*************************************************
  385. ;          CALL HERE TO KILL ANY LOOPED FX...
  386. ;       after putting the number of the fx you want to kill
  387. ;            into fx_kill
  388.  
  389. kill_loopfx
  390.  
  391.     movem.l d5/a2,-(a7)    ;save used registers
  392.     move.l fx_kill,d5
  393.     cmp.l fxc1,d5
  394.     bne k2
  395.     move.w #%0000000000000001,d5
  396.     lea chann1reg,a2
  397.     jsr end_fx1p
  398.     bra error
  399. k2    cmp.l fxc2,d5
  400.     bne k3
  401.     move.w #%0000000000000010,d5
  402.     lea chann2reg,a2
  403.     jsr end_fx2p
  404.     bra error
  405. k3    cmp.l fxc3,d5
  406.     bne k4
  407.     move.w #%0000000000000100,d5
  408.     lea chann3reg,a2
  409.     jsr end_fx3p
  410.     bra error
  411. k4    cmp.l fxc4,d5
  412.     bne error
  413.     move.w #%0000000000001000,d5
  414.     lea chann2reg,a2
  415.     jsr end_fx4p
  416. error
  417.     clr.l fx_kill
  418.     movem.l (a7)+,d5/a2    ;restore registers
  419.     rts
  420. ;*************************************************
  421.  
  422.     ; CALL HERE TO KILL ANY SOUND for whatever reason
  423.  
  424. kill_chip:
  425.     move.w #%0000000000001111,dmacon
  426.     move.l rest_data,chann1reg
  427.     move.l rest_data,chann2reg
  428.     move.l rest_data,chann3reg
  429.     move.l rest_data,chann4reg
  430.     move.w #16,chann1reg+4    
  431.     move.w #16,chann2reg+4    
  432.     move.w #16,chann3reg+4    
  433.     move.w #16,chann4reg+4    
  434.     move.w #0,chann1reg+8
  435.     move.w #0,chann2reg+8
  436.     move.w #0,chann3reg+8
  437.     move.w #0,chann4reg+8
  438.     move.w #1,chann1reg+6
  439.     move.w #1,chann2reg+6
  440.     move.w #1,chann3reg+6
  441.     move.w #1,chann4reg+6
  442.     move.l #0,fxr1
  443.     move.l #0,fxr2
  444.     move.l #0,fxr3
  445.     move.l #0,fxr4
  446.     move.w #0,fx1_flag
  447.     move.w #0,fx2_flag
  448.     move.w #0,fx3_flag
  449.     move.w #0,fx4_flag
  450.     move.l #0,fxc1
  451.     move.l #0,fxc2
  452.     move.l #0,fxc3
  453.     move.l #0,fxc4
  454.     rts
  455. ;****************************************
  456.  
  457. ;  CALL HERE TO SELECT WHICH PIECE OF MUSIC TO PLAY
  458. ;  AFTER PLACING NUMBER (1 to 3) IN "SONG_BUFFER"..see above
  459. ;  a call to this routine will initiliase the driver/kill any sound etc.      
  460. ;  make sure this routine has been called before running the interrupt
  461. ;  driven section....see below
  462.  
  463. select_new_song:
  464.  
  465.     move.w #1,int_disable
  466.     movem.l d0/d1/a0/a1,-(a7)    ;save used registers
  467.     move.w music_disable,gen
  468.     move.w #1,music_disable
  469.         jsr kill_chip           
  470.     clr.l d0
  471.         move.w #204,d0
  472.         lea gvars,a0
  473. clloop: clr.w (a0)+        
  474.         dbra  d0,clloop
  475.     tst.l song_buffer
  476.     beq no_song
  477.         move.l song_buffer,d1
  478.     add.l d1,d1
  479.      add.l d1,d1
  480.      add.l d1,d1
  481.      add.l d1,d1
  482.         LEA  SONG_TABLE-16,A1
  483.         add.l d1,a1      
  484.         MOVE.L (A1)+,WSONG1    
  485.         move.l (a1)+,wsong2    
  486.         move.l (a1)+,wsong3
  487.     move.l (a1),wsong4
  488.         MOVE.L #pstart,PATTR1
  489.         MOVE.L #pstart,PATTR2
  490.         MOVE.L #pstart,PATTR3
  491.     move.l #pstart,pattr4
  492.         move.l #sstart,songr1
  493.         MOVE.L #sstart,SONGR2
  494.         MOVE.L #sstart,SONGR3
  495.     move.l #sstart,songr4
  496. no_song
  497.     move.w #1,ch1vars
  498.     move.w #2,ch2vars
  499.     move.w #3,ch3vars
  500.     move.w #4,ch4vars
  501.     move.w #6,ch4fxvars
  502.     move.w #5,ch3fxvars
  503.     move.w #7,ch2fxvars
  504.     move.w #8,ch1fxvars
  505.     move.w gen,music_disable
  506.     clr.w int_disable
  507.     movem.l (a7)+,d0/d1/a0/a1    ;restore registers
  508.         rts
  509.  
  510. ;**************************************************
  511.  
  512. ;  CALL HERE ON A 50hz INTERRUPT DURING RUNTIME
  513. ;  TO PLAY FX AND TUNES
  514.  
  515. driver:  
  516.     tst.w int_disable
  517.     beq process_data
  518.     rts        
  519. process_data
  520.     movem.l d0-d6/a0-a6,-(a7)    ;save used registers
  521.  
  522.  
  523. ch1:
  524.     tst.w fx_disable
  525.     bne test_music1
  526.     tst.l fxr1
  527.     bne   ch1j1
  528.     tst.l fxc1
  529.     beq test_music1
  530.     bra ch1j3
  531. ch1j2    jsr run_dummy1
  532.     jsr run_fx1
  533.     bra ch2
  534. ch1j1
  535.     jsr set_up1
  536. ch1j3    tst.w music_disable    
  537.     beq ch1j2
  538.     jsr run_fx1
  539.     bra ch2
  540. test_music1
  541.     tst.w music_disable
  542.     bne ch2
  543.     jsr run_music1
  544.     bra ch2
  545.     ;***********************
  546.  
  547.     ; channel 1 subroutines
  548.  
  549. run_dummy1    
  550.      lea ch1vars,a0
  551.      lea dummy_reg,a2 
  552.      move.w #0,d5 
  553.      jsr sect1    
  554.     rts
  555.  
  556. set_up1    
  557.          move.l fxr1,d0
  558.          add d0,d0
  559.          add d0,d0
  560.          lea  fxjump_table-4,A1
  561.      add.l d0,a1
  562.          move.l (a1),currfx1
  563.       clr.l fxr1
  564.      clr.w fxintc1
  565.       rts
  566.   
  567.      
  568. run_fx1
  569.     lea ch1fxvars,a0
  570.        lea chann1reg,a2
  571.       move.w #%0000000000000001,d5 
  572.      move.w #%1000001000000001,d1 
  573.      jsr sect1
  574.     rts
  575.  
  576. run_music1
  577.     lea ch1vars,a0
  578.        lea chann1reg,a2
  579.       move.w #%0000000000000001,d5 
  580.       move.w #%1000001000000001,d1 
  581.       jsr sect1     
  582.     rts
  583.  
  584.     ;  **************************
  585. ch2
  586.     tst.w fx_disable
  587.     bne test_music2
  588.     tst.l fxr2
  589.     bne   ch2j1
  590.     tst.l fxc2
  591.     beq test_music2
  592.     bra ch2j3
  593. ch2j2    jsr run_dummy2
  594.     jsr run_fx2
  595.     bra ch3
  596. ch2j1
  597.     jsr set_up2
  598. ch2j3    tst.w music_disable    
  599.     beq ch2j2
  600.     jsr run_fx2
  601.     bra ch3
  602.  
  603. test_music2
  604.     tst.w music_disable
  605.     bne ch3
  606.     jsr run_music2
  607.     bra ch3
  608.     ;***********************
  609.     ; channel 2 subroutines
  610. run_dummy2    
  611.      lea ch2vars,a0
  612.      lea dummy_reg,a2 
  613.      move.w #0,d5 
  614.      jsr sect1    
  615.     rts
  616.  
  617. set_up2    
  618.          move.l fxr2,d0
  619.          add d0,d0
  620.          add d0,d0
  621.          lea  fxjump_table-4,A1
  622.      add.l d0,a1
  623.          move.l (a1),currfx2
  624.       clr.l fxr2
  625.      clr.w fxintc2
  626.       rts
  627.   
  628.      
  629. run_fx2
  630.     lea ch2fxvars,a0
  631.        lea chann2reg,a2
  632.       move.w #%0000000000000010,d5 
  633.      move.w #%1000001000000010,d1 
  634.      jsr sect1
  635.     rts
  636.  
  637. run_music2
  638.     lea ch2vars,a0
  639.        lea chann2reg,a2
  640.       move.w #%0000000000000010,d5 
  641.       move.w #%1000001000000010,d1 
  642.       jsr sect1     
  643.     rts
  644.  
  645.     ;  **************************
  646.  
  647. ch3:
  648.     tst.w fx_disable
  649.     bne test_music3
  650.     tst.l fxr3
  651.     bne   ch3j1
  652.     tst.l fxc3
  653.     beq test_music3
  654.     bra ch3j3
  655. ch3j2    jsr run_dummy3
  656.     jsr run_fx3
  657.     bra ch4
  658. ch3j1
  659.     jsr set_up3
  660. ch3j3    tst.w music_disable    
  661.     beq ch3j2
  662.     jsr run_fx3
  663.     bra ch4
  664.  
  665. test_music3
  666.     tst.w music_disable
  667.     bne ch4
  668.     jsr run_music3
  669.     bra ch4
  670.  
  671.     ;***********************
  672.  
  673.     ; channel 3 subroutines
  674.  
  675. run_dummy3    
  676.      lea ch3vars,a0
  677.      lea dummy_reg,a2 
  678.      move.w #0,d5 
  679.      jsr sect1    
  680.     rts
  681.  
  682. set_up3    
  683.          move.l fxr3,d0
  684.          add d0,d0
  685.          add d0,d0
  686.          lea  fxjump_table-4,A1
  687.      add.l d0,a1
  688.          move.l (a1),currfx3
  689.       clr.l fxr3
  690.      clr.w fxintc3
  691.       rts
  692.   
  693.      
  694. run_fx3
  695.     lea ch3fxvars,a0
  696.        lea chann3reg,a2
  697.       move.w #%0000000000000100,d5 
  698.      move.w #%1000001000000100,d1 
  699.      jsr sect1
  700.     rts
  701.  
  702. run_music3
  703.     lea ch3vars,a0
  704.        lea chann3reg,a2
  705.       move.w #%0000000000000100,d5 
  706.       move.w #%1000001000000100,d1 
  707.       jsr sect1     
  708.     rts
  709.  
  710.     ;  **************************
  711.  
  712. ch4:
  713.     tst.w fx_disable
  714.     bne test_music4
  715.     tst.l fxr4
  716.     bne   ch4j1
  717.     tst.l fxc4
  718.     beq test_music4
  719.     bra ch4j3
  720. ch4j2    jsr run_dummy4
  721.     jsr run_fx4
  722.     bra no4
  723. ch4j1
  724.     jsr set_up4
  725. ch4j3    tst.w music_disable    
  726.     beq ch4j2
  727.     jsr run_fx4
  728.     bra no4
  729.  
  730. test_music4
  731.     tst.w music_disable
  732.     bne no4
  733.     jsr run_music4
  734. no4    
  735.     movem.l (a7)+,d0-d6/a0-a6    ;restore registers
  736.     rts
  737.  
  738.     ;***********************
  739.  
  740.     ; channel 4 subroutines
  741.  
  742. run_dummy4    
  743.      lea ch4vars,a0
  744.      lea dummy_reg,a2 
  745.      move.w #0,d5 
  746.      jsr sect1    
  747.     rts
  748.  
  749. set_up4    
  750.          move.l fxr4,d0
  751.          add d0,d0
  752.          add d0,d0
  753.          lea  fxjump_table-4,A1
  754.      add.l d0,a1
  755.          move.l (a1),currfx4
  756.       clr.l fxr4
  757.      clr.w fxintc4
  758.       rts
  759.   
  760.      
  761. run_fx4
  762.     lea ch4fxvars,a0
  763.        lea chann4reg,a2
  764.       move.w #%0000000000001000,d5 
  765.      move.w #%1000001000001000,d1 
  766.      jsr sect1
  767.     rts
  768.  
  769. run_music4
  770.     lea ch4vars,a0
  771.        lea chann4reg,a2
  772.       move.w #%0000000000001000,d5 
  773.       move.w #%1000001000001000,d1 
  774.       jsr sect1     
  775.     rts
  776.     ;  **************************
  777.  
  778. sect1: tst.w 0(a0)
  779.     bne s1j1
  780.     rts
  781.  
  782. s1j1:    tst.w 2(a0)
  783.         beq sect3       
  784.         cmpi.w #1,2(a0)
  785.         beq sect4
  786.  
  787.         cmpi.w #3,4(a0)    
  788.         beq part2       
  789.     
  790. mode_switch:  subq.w #1,2(a0)     
  791.  
  792. check_effects: clr.w altpf      
  793.         move.w 6(a0),d2    
  794.         tst.w 8(a0)      
  795.         beq check_mod
  796.         tst.w 14(a0)      
  797.         beq cont_bend
  798.         subq.w #1,14(a0)
  799.         bra check_mod
  800. cont_bend:   addq.w #1,altpf    
  801.         move.w 10(a0),d3    
  802.         move.w 12(a0),d4    
  803.         cmpi.w #1,8(a0)
  804.         beq pbup
  805.     
  806.         sub.w d3,d2
  807.         cmp.w d2,d4
  808.         bcs check_mod
  809.         bra fbend
  810.  
  811. pbup:     add.w d3,d2
  812.         cmp.w d2,d4
  813.         bcc check_mod
  814. fbend:     move.w d4,d2
  815.         clr.w 8(a0)      
  816. check_mod:   tst.w 16(a0)
  817.         beq send_alt_pitch
  818.    
  819.  
  820.     tst.w  58(a0)
  821.     beq st_ok
  822.     subq.w #1,58(a0)
  823.     bra send_alt_pitch
  824. st_ok:
  825.         tst.w 50(a0)
  826.         beq cont_mod
  827.         subq #1,50(a0)
  828.         bra send_alt_pitch
  829. cont_mod:    move.w 52(a0),50(a0)  
  830.         addq #1,altpf
  831.         cmpi #3,16(a0)
  832.         bcc addmod
  833.     
  834.         move.w 56(a0),d3 
  835.         sub.w d3,d2
  836.         addq.w #1,16(a0)  
  837.         bra send_alt_pitch
  838. addmod:
  839.  
  840.         move.w 54(a0),d3 
  841.         add.w d3,d2
  842.         addq.w #1,16(a0)
  843.         cmpi.w #5,16(a0)
  844.        bne send_alt_pitch
  845.         move.w #1,16(a0)  
  846.  
  847. send_alt_pitch: tst.w altpf
  848.         beq send_env
  849.         move.w d2,6(a0)  
  850.         move.w d2,6(a2)  
  851.  
  852. send_env: 
  853.  
  854.     cmpi #6,(a0)
  855.     beq norm_env    
  856.     cmpi #5,(a0)
  857.     bne do_env_check
  858.  
  859.     tst.w fx4_flag
  860.     beq norm_env
  861.     bra low_vol
  862.  
  863. do_env_check:
  864.     move.w fx3_flag,d0
  865.     or.w fx4_flag,d0
  866.     cmpi.w  #0,d0
  867.     beq norm_env
  868. low_vol:    
  869.     move.l 18(a0),a1    
  870.         cmpi.w #255,(a1)
  871.         beq evj1
  872.     move.w (a1)+,d0
  873. evj2:    sub.w  62(a0),d0
  874.     bcc no_over
  875.     move.w 0,d0
  876. no_over:
  877.         move.w d0,8(a2) 
  878.     bra fint        
  879.  
  880. evj1:   subq.l #2,a1
  881.     move.w (a1)+,d0
  882.     bra evj2
  883.  
  884. norm_env:
  885.     move.l 18(a0),a1    
  886.         cmpi.w #255,(a1)
  887.         beq env_finished
  888.     cmpi.w #1,66(a0)    
  889.     bne    no_acc 
  890.  
  891.     clr.l d0
  892.     move.w (a1)+,d0
  893.     add.w 64(a0),d0    
  894.     move.w d0,8(a2)    
  895.     move.l a1,18(a0)
  896.     rts        
  897.  
  898. no_acc:
  899. resu:   move.w (a1)+,8(a2)   
  900. fint:   move.l a1,18(a0)    
  901.     rts
  902.  
  903. env_finished:
  904.      subq.l #2,a1    
  905.      bra resu
  906.  
  907.  
  908. one_shot_note: move.w #3,4(a0)     
  909.         move.l 38(a0),(a2)
  910.         move.w 42(a0),4(a2)
  911.         move.w d1,dmacon     
  912.         bra send_env
  913.  
  914.  
  915. part2:                         
  916.         move.l 44(a0),(a2)
  917.         move.w 48(a0),4(a2)
  918.         subq.w #1,2(a0)      
  919.         move.w #1,4(a0)
  920.         bra check_effects
  921.  
  922. sect3:
  923.     move.w 0,66(a0)    
  924.  
  925.     move.l 22(a0),a1  
  926. control_ret: move.w (a1)+,d0  
  927.     cmpi.w #100,d0   
  928.     bls sect5   
  929.   
  930. acc_note:
  931.     move.w d0,6(a0)  
  932.     move.w d0,6(a2)  
  933.     move.w (a1)+,2(a0) 
  934.     subq.w #1,2(a0)  
  935.     move.l a1,22(a0)  
  936.     move.l 34(a0),18(a0) 
  937.     move.w 60(a0),58(a0) 
  938.  
  939.  
  940.     tst.w 16(a0)
  941.     beq no_mod_res
  942.     move.w #1,16(a0)
  943. no_mod_res:
  944.     cmpi.w #0,4(a0)
  945.     beq do_loop
  946.     bra one_shot_note    
  947.  
  948.  
  949. do_loop:    move.w d1,dmacon   
  950.         bra send_env
  951.  
  952. do_rest:
  953.     move.w (a1)+,2(a0) 
  954.     subq.w #1,2(a0)  
  955.     move.l a1,22(a0)  
  956.     move.l  #rest_env,18(a0)
  957.  
  958.         move.w #0,8(a2)
  959.         bra send_env
  960.    
  961. sect4:
  962.         cmpi.w #0,4(a0)
  963.         beq noof
  964.         move.w d5,dmacon   
  965. noof:     subq.w #1,2(a0)
  966.         bra check_effects
  967.    
  968. sect5:     move.l #jump_table,a3
  969.         move.l (a3,d0),a4
  970.         jmp (a4)
  971.  
  972. jump_table: 
  973.     dc.l  in_line_data
  974.         dc.l  nsound
  975.         dc.l  patt_end
  976.         dc.l  get_env
  977.         dc.l  check_pbend
  978.         dc.l  do_mod
  979.         dc.l  bend_off
  980.         dc.l  mod_off
  981.         dc.l  do_rest
  982.         dc.l  end_fx
  983.         dc.l  end_fx
  984.     dc.l  s_f_on
  985.     dc.l  s_f_off
  986.     dc.l  set_acc
  987.     dc.l  rept
  988.  
  989. in_line_data:
  990.  
  991.         nop
  992.         rts
  993.  
  994. rept:
  995.     move.l (a1),a1
  996.     bra control_ret
  997.  
  998. s_f_on: 
  999.     bclr #1,filter
  1000.     bra control_ret
  1001. s_f_off:
  1002.     bset #1,filter
  1003.     bra control_ret
  1004.  
  1005. nsound:    move.l (a1)+,a3     
  1006.         cmpi.w #0,(a3)
  1007.         bne one_shot_sound
  1008.         move.w (a3)+,4(a0)    
  1009.         move.l (a3)+,(a2)     
  1010.         move.w (a3),4(a2)    
  1011.         jmp control_ret
  1012.  
  1013. one_shot_sound:
  1014.         move.w (a3)+,4(a0)
  1015.         move.l (a3)+,38(a0)   
  1016.         move.l (a3)+,42(a0)
  1017.         move.l (a3),46(a0)
  1018.         jmp control_ret
  1019.  
  1020. patt_end:
  1021.  
  1022.         move.l 26(a0),a1    
  1023.         cmpi.l #0,(a1)     
  1024.         beq song_control
  1025.         addq.l #4,26(a0)    
  1026.         move.l (a1),a1     
  1027.         jmp control_ret
  1028. get_env: 
  1029.        move.l (a1)+,a4 
  1030.     move.l (a4)+,62(a0)    
  1031.     
  1032.     move.l  a4,34(a0)    
  1033.     
  1034.         bra control_ret
  1035.  
  1036. check_pbend:
  1037.      move.l (a1)+,8(a0)
  1038.         move.l (a1)+,12(a0)
  1039.         bra control_ret
  1040.  
  1041. do_mod:    move.w #1,16(a0)  
  1042.         move.l (a1)+,50(a0)
  1043.         move.l (a1)+,54(a0)
  1044.         move.l (a1)+,58(a0)
  1045.         bra control_ret
  1046.  
  1047. bend_off:   clr.w 8(a0)
  1048.         bra control_ret
  1049.  
  1050. mod_off:    clr.w 16(a0)
  1051.         bra control_ret
  1052.  
  1053.  
  1054. end_fx:    
  1055.     cmpi.w #6,(a0)
  1056.     beq end_fx4p
  1057.     cmpi.w #5,(a0)
  1058.     beq end_fx3p
  1059.     cmpi.w #7,(a0)
  1060.     beq end_fx2p
  1061.  
  1062. end_fx1p:
  1063.         move.w d5,dmacon   
  1064.     move.w  #1,chann1reg+6
  1065.     move.w #0,8(a2)
  1066.     move.l #0,fxc1
  1067.     rts
  1068.  
  1069. end_fx2p:
  1070.     move.w d5,dmacon 
  1071.     move.w  #1,chann2reg+6
  1072.         move.w #0,8(a2) 
  1073.     move.l #0,fxc2
  1074.         rts
  1075.  
  1076.  
  1077. end_fx3p:
  1078.         move.w d5,dmacon   
  1079.     move.w  #1,chann3reg+6
  1080.     move.w #0,8(a2)
  1081.     move.l #0,fxc3
  1082.     rts
  1083.  
  1084. end_fx4p:
  1085.     move.w d5,dmacon 
  1086.     move.w  #1,chann4reg+6
  1087.         move.w #0,8(a2) 
  1088.     move.l #0,fxc4
  1089.         rts
  1090.  
  1091. set_acc: move.w #1,66(a0) 
  1092.     bra control_ret
  1093.  
  1094. song_control:
  1095.         addq.l #4,a1
  1096.         move.l 30(a0),26(a0)
  1097.         move.l 26(a0),a1
  1098.         addq.l #4,26(a0)
  1099.         move.l (a1),a1
  1100.         jmp control_ret
  1101.  
  1102.  
  1103.     ;"""""""""""""""""""""""""""""""""""""""""""""""""
  1104.  
  1105.     ;;; DATA
  1106.  
  1107. song_table:
  1108.               dc.l s1,s2,s3,s4
  1109.  
  1110. ;************************************************************
  1111. gvars:
  1112. ch1vars     
  1113.     dc.w 0     
  1114.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1115. pattr1: dc.l 0    
  1116. songr1: dc.l 0    
  1117. wsong1: dc.l 0   
  1118.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1119.  
  1120. ch2vars     
  1121.     dc.w 0     
  1122.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1123. pattr2: dc.l 0    
  1124. songr2: dc.l 0    
  1125. wsong2: dc.l 0    
  1126.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1127.  
  1128. ch3vars 
  1129.     dc.w 0     
  1130.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1131. pattr3: dc.l 0    
  1132. songr3: dc.l 0    
  1133. wsong3: dc.l 0    
  1134.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1135.  
  1136. ch4vars 
  1137.     dc.w 0     
  1138.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1139. pattr4: dc.l 0    
  1140. songr4: dc.l 0    
  1141. wsong4: dc.l 0    
  1142.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1143.  
  1144.  
  1145. ch1fxvars 
  1146.     dc.w 0     
  1147. fxintc1:
  1148.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1149. currfx1:
  1150.     dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0    
  1151.  
  1152. ch2fxvars 
  1153.     dc.w 0     
  1154. fxintc2:
  1155.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1156. currfx2:
  1157.     dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0    
  1158.  
  1159.  
  1160. ch3fxvars
  1161.     dc.w 0     
  1162. fxintc3:
  1163.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1164. currfx3:
  1165.     dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0    
  1166.  
  1167. ch4fxvars 
  1168.     dc.w 0     
  1169. fxintc4:
  1170.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1171. currfx4:
  1172.     dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0    
  1173. ;************************************************************
  1174.  
  1175. dummy_reg dc.l 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1176.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1177.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1178.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1179. ;************************************************************
  1180.  
  1181. ;       fx patterns here
  1182.  
  1183. fxjump_table:  
  1184.  
  1185.  
  1186. sstart: dc.l 0,end_song
  1187.  
  1188. pstart: dc.w end_patt
  1189.  
  1190.  
  1191. ;----------------------------------
  1192. ;s1:
  1193.     dc.l    pr,pr,pr,pr,pr,pr,pr,p3            ;intro
  1194.  
  1195.     dc.l    plp,plp                    ;tune (loop)
  1196.     dc.l    plp,plp
  1197.  
  1198.     dc.l    pcra4b,p1a,p1a,ap1a,ap1a        ;middle
  1199.     dc.l    p1a,p1a,p1a,p1a,ap1a,ap1a,ap1a,ap1a
  1200.     dc.l    p1aaa,ptom
  1201.  
  1202.     dc.l    plp,plp                    ;tune (loop)
  1203.  
  1204.     dc.l    plpg,plpg,plpeb,plpeb            ;solo
  1205.     dc.l    plpg,plpg,plpeb,plpeb
  1206.     dc.l    plpg,plpg,plpeb,plpeb
  1207.     dc.l    plpg,plpg,plpeb,plpeb
  1208.  
  1209.     dc.l    ap1a,ap1a            ;end rivum
  1210.     dc.l    ap1a,ap1a,ap1a,ap1a        ; for suvuner
  1211.  
  1212.     dc.l    0,end_song
  1213. ;---------------------
  1214. ;s2:    
  1215.     dc.l     pr,pr,pr,pr,pr,pr,pr,paag        ;intro
  1216.  
  1217.     dc.l     pr,pr,pr,pr,pr,pr,pr,p3aa        ;tune (rests + back guit)
  1218.     dc.l     pcra,pr,pr,pcra,pr,pr,pr,pr,p3aa
  1219.  
  1220.     dc.l    p3abb                    ;middle
  1221.  
  1222.     dc.l    pjet
  1223.  
  1224.     dc.l     pls,pr,pr,pcra,pr,pr,pr,pr,p3aa    ;tune (rests + back guit)
  1225.  
  1226.     dc.l    pcra,pr,pr,pra,pcra2,pr,pr,pr        ;solo
  1227.     dc.l    pcra3,pcra,pr,pcra3,pcra4,pr
  1228.                     
  1229.     dc.l    pr,ptom2            ;end rivum
  1230.     dc.l    pcra,pr,pr,ptom2
  1231.     dc.l    0,end_song
  1232. ;-------------------------------
  1233. ;s3:    
  1234.     dc.l    p3aa                    ;guit intro
  1235.  
  1236.     dc.l    p3a                    ;main tune
  1237.     dc.l     p3a
  1238.  
  1239.     dc.l    p3ab                    ;middle tune
  1240.  
  1241.     dc.l    pls,pr,pvoi
  1242.     dc.l    p3abe                    ;laa,laa,laa,laa
  1243.  
  1244.     dc.l    p3a                    ;main tune
  1245.  
  1246.     dc.l    p6,p6                    ;solo (lead)
  1247.     dc.l    p9,p9,p6a
  1248.     dc.l    p9,p9,p6b
  1249.  
  1250.     dc.l    pr,pr                    ;end rivum
  1251.     dc.l    p7,pr,p7,pr
  1252.     dc.l       0,end_song
  1253.  
  1254. ;------------------------------
  1255. ;s4:
  1256.     dc.l    pza                    ;intro (drums)
  1257.  
  1258.     dc.l    pr,pr,pr,pr,pr,pr,pr,pr
  1259.     dc.l    pr,pr,pr,pr,pr,pr,pr,pr
  1260.  
  1261.     dc.l    ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom2
  1262.     dc.l    ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom2
  1263.  
  1264.     dc.l     p3abc,p3abd                ;middle
  1265.  
  1266.     dc.l    pjet2                    ;tune rests
  1267.     dc.l    ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom3,ptom2
  1268.  
  1269.     dc.l    px,px,px,px,px,px,px,px            ;solo (rests)
  1270.     dc.l    px,px,px,px,px,px,px,px
  1271.  
  1272.     dc.l    p5                    ;end rivum
  1273.     dc.l    pr,pr,pr,pr
  1274.     dc.l       0,end_song
  1275. ;------------------------------
  1276.  
  1277. ;pr: 
  1278.       dc.w rest,cr*4
  1279.       dc.w end_patt
  1280. ;pra: 
  1281.       dc.w rest,q*7
  1282.       dc.w end_patt
  1283.  
  1284. ;pvoi:         
  1285.         dc.w  new_env
  1286.         dc.l  kick_env
  1287.     dc.w    new_snd
  1288.     dc.l  secfto    
  1289.     dc.w rest,cr,r16,cr*7
  1290.       dc.w end_patt
  1291. ;px:         
  1292.         dc.w  new_env
  1293.         dc.l  x_env
  1294.     dc.w    new_snd
  1295.     dc.l  tom1
  1296.     dc.w r10,sq,r9,sq,r8,sq,r7,sq
  1297.     dc.w r10,sq,r9,sq,r8,sq,r7,sq
  1298.     dc.w r10,sq,r9,sq,r8,sq,r7,sq
  1299.     dc.w r10,sq,r9,sq,r8,sq,r7,sq
  1300.       dc.w end_patt
  1301. ;pjet:         
  1302.         dc.w  new_env
  1303.         dc.l  jet_env
  1304.     dc.w    new_snd
  1305.     dc.l  jet    
  1306.     dc.w pbend,up,1
  1307.     dc.w 130,cr*5
  1308.     dc.w r6,cr*40
  1309.     dc.w pboff
  1310.       dc.w end_patt
  1311. ;pjet2:         
  1312.         dc.w  new_env
  1313.         dc.l  jet_env
  1314.     dc.w    new_snd
  1315.     dc.l  jet    
  1316.     dc.w pbend,down,1
  1317.     dc.w 65000,0
  1318.     dc.w r22,cr*32
  1319.     dc.w pboff
  1320.       dc.w end_patt
  1321. ;pls:         
  1322.         dc.w  new_env
  1323.         dc.l  kick_env
  1324.     dc.w    new_snd
  1325.     dc.l  snare
  1326.     dc.w r4,cr*4
  1327.       dc.w end_patt
  1328. ;plpg:         
  1329.         dc.w  new_env
  1330.         dc.l  kick_env
  1331.     dc.w    new_snd
  1332.     dc.l  gbig    
  1333.     dc.w filter_off
  1334.     dc.w r20,cr*4
  1335.       dc.w end_patt
  1336. ;plpeb:         
  1337.         dc.w  new_env
  1338.         dc.l  kick_env
  1339.     dc.w    new_snd
  1340.     dc.l  ebbigb    
  1341.     dc.w filter_off
  1342.     dc.w r20,cr*4
  1343.       dc.w end_patt
  1344. ;plp:         
  1345.     dc.w    new_snd
  1346.     dc.l  gbig    
  1347.     dc.w filter_off
  1348.     dc.w r20,cr*4,r20,cr*4,r20,cr*4
  1349.     dc.w    new_snd
  1350.     dc.l  ebbig    
  1351.     dc.w r20,cr*4
  1352.     dc.w    new_snd
  1353.     dc.l  dbig    
  1354.     dc.w r20,cr*4,r20,cr*4
  1355.     dc.w    new_snd
  1356.     dc.l  dbbig    
  1357.     dc.w r20,cr*4
  1358.     dc.w r20,cr*4
  1359.       dc.w end_patt
  1360.  
  1361. ;pcra:             
  1362.         dc.w  new_env
  1363.         dc.l  kick_env
  1364.     dc.w    new_snd
  1365.     dc.l  crash
  1366.     dc.w  r20,cr*4
  1367.       dc.w end_patt
  1368. ;pcra2:             
  1369.         dc.w  new_env
  1370.         dc.l  kick_env
  1371.     dc.w    new_snd
  1372.     dc.l  crash
  1373.     dc.w  r20,q,r20,cr*4
  1374.       dc.w end_patt
  1375. ;pcra3:             
  1376.         dc.w  new_env
  1377.         dc.l  kick_env
  1378.     dc.w    new_snd
  1379.     dc.l  crash
  1380.     dc.w  rest,cr,r20,cr*2,r19,cr*2
  1381.     dc.w r20,cr*2,r19,cr
  1382.       dc.w end_patt
  1383. ;pcra4:             
  1384.         dc.w  new_env
  1385.         dc.l  kick_env
  1386.     dc.w    new_snd
  1387.     dc.l  crash
  1388.     dc.w  r15,cr*4
  1389.       dc.w end_patt
  1390. ;pcra4b:             
  1391.         dc.w  new_env
  1392.         dc.l  kick_env
  1393.     dc.w    new_snd
  1394.     dc.l  crash
  1395.     dc.w  r15,cr*8
  1396.       dc.w end_patt
  1397. ;p1a:             
  1398.         dc.w  new_env
  1399.         dc.l  kick_env
  1400.     dc.w    new_snd
  1401.     dc.l  kick
  1402.     dc.w  r8,q*2
  1403.     dc.w    new_snd
  1404.     dc.l  cow
  1405.     dc.w r20,q
  1406.     dc.w    new_snd
  1407.     dc.l  kick
  1408.     dc.w  r8,q*3
  1409.     dc.w    new_snd
  1410.     dc.l  cow
  1411.     dc.w r20,cr
  1412.       dc.w end_patt
  1413.  
  1414. ;a;p1a:             
  1415.         dc.w  new_env
  1416.         dc.l  kick_env
  1417.     dc.w    new_snd
  1418.     dc.l  kick
  1419.     dc.w  r8,q*2
  1420.     dc.w    new_snd
  1421.     dc.l  cow
  1422.     dc.w r20,q
  1423.     dc.w    new_snd
  1424.     dc.l  kick
  1425.     dc.w  r8,q
  1426.     dc.w    new_snd
  1427.     dc.l  cow
  1428.     dc.w r20,q
  1429.     dc.w    new_snd
  1430.     dc.l  kick
  1431.     dc.w  r8,q
  1432.     dc.w    new_snd
  1433.     dc.l  cow
  1434.     dc.w r20,q,r20,sq,r20,sq
  1435.       dc.w end_patt
  1436.  
  1437. ;pza:             
  1438.         dc.w  new_env
  1439.         dc.l  kick_env
  1440.     dc.w    new_snd
  1441.     dc.l  kick
  1442.     dc.w  r8,cr,rest,cr*3
  1443.     dc.w  r8,cr,rest,cr*3
  1444.     dc.w  r8,cr,rest,cr*3
  1445.     dc.w  r8,cr,rest,cr*3
  1446.     dc.w r8,cr,rest,cr,r8,cr,rest,cr
  1447.     dc.w r8,cr,rest,cr,r8,cr,rest,cr
  1448.     dc.w r8,cr,r8,cr,r8,cr,r8,cr
  1449.     dc.w r8,cr,r8,cr
  1450.     dc.w    new_snd
  1451.     dc.l  snare
  1452.     dc.w r16,q,rest,cr+q
  1453.       dc.w end_patt
  1454. ;p1aa:             
  1455.         dc.w  new_env
  1456.         dc.l  kick_env
  1457.     dc.w    new_snd
  1458.     dc.l  kick
  1459.     dc.w  r8,q*2
  1460.     dc.w    new_snd
  1461.     dc.l  snare
  1462.     dc.w r8,q
  1463.     dc.w    new_snd
  1464.     dc.l  kick
  1465.     dc.w  r8,q*2,r8,q
  1466.     dc.w    new_snd
  1467.     dc.l  snare
  1468.     dc.w r10,q
  1469.     dc.w    new_snd
  1470.     dc.l  kick
  1471.     dc.w  r8,q
  1472. ;p1aaa:    dc.w    new_snd
  1473.     dc.l  kick
  1474.     dc.w r8,q,r8,sq,r8,sq
  1475.     dc.w    new_snd
  1476.     dc.l  snare
  1477.     dc.w r8,q
  1478.     dc.w    new_snd
  1479.     dc.l  kick
  1480.     dc.w  r8,q*2,r8,q
  1481.     dc.w    new_snd
  1482.     dc.l  snare
  1483.     dc.w r9,cr
  1484.       dc.w end_patt
  1485. ;p3:
  1486.         dc.w  new_env
  1487.         dc.l  kick_env
  1488.     dc.w    new_snd
  1489.     dc.l  kick
  1490.     dc.w rest,q*5
  1491.     dc.w  r8,q
  1492.     dc.w  new_snd
  1493.     dc.l  snare
  1494.     dc.w  r8,cr
  1495.     dc.w     end_patt
  1496. ;paag:
  1497.         dc.w  new_env
  1498.         dc.l  kick_env
  1499.     dc.w    new_snd
  1500.     dc.l  kick
  1501.     dc.w rest,q*6
  1502.     dc.w  new_snd
  1503.     dc.l  crash
  1504.     dc.w  r20,cr*5
  1505.     dc.w     end_patt
  1506. ;ptom:
  1507.         dc.w  new_env
  1508.         dc.l  kick_env
  1509.     dc.w    new_snd
  1510.     dc.l  tom1
  1511.     dc.w  r12,sq,r12,sq,r12,sq,r12,sq
  1512.     dc.w  r10,sq,r10,sq,r10,sq,r10,sq
  1513.     dc.w  r8,sq,r8,sq,r8,sq,r8,sq
  1514.     dc.w  r6,sq,r6,sq,r6,sq,r6,sq
  1515.     dc.w     end_patt
  1516. ;ptom2:
  1517.         dc.w  new_env
  1518.         dc.l  kick_env
  1519.     dc.w    new_snd
  1520.     dc.l  cow
  1521.     dc.w  r12,sq,r12,sq
  1522.     dc.w    new_snd
  1523.     dc.l  tom1
  1524.     dc.w r10,q
  1525.     dc.w    new_snd
  1526.     dc.l  crash
  1527.     dc.w  r10,q
  1528.     dc.w    new_snd
  1529.     dc.l  snare
  1530.     dc.w    r10,sq
  1531.     dc.w r10,sq
  1532.     dc.w    new_snd
  1533.     dc.l  cow
  1534.     dc.w  r8,q
  1535.     dc.w    new_snd
  1536.     dc.l  tom1
  1537.     dc.w  r10,sq,r6,sq
  1538.     dc.w    new_snd
  1539.     dc.l  crash
  1540.     dc.w  r10,q
  1541.     dc.w    new_snd
  1542.     dc.l  snare
  1543.     dc.w    r10,q
  1544.     dc.w     end_patt
  1545. ;ptom3:
  1546.         dc.w  new_env
  1547.         dc.l  og
  1548.     dc.w    new_snd
  1549.     dc.l  cow
  1550.     dc.w  r13,sq,r13,q
  1551.     dc.w r9,sq
  1552.     dc.w  r15,q
  1553.     dc.w    r17,sq
  1554.     dc.w r12,sq
  1555.     dc.w  r15,sq
  1556.     dc.w  r13,q,r9,sq
  1557.     dc.w  r17,sq
  1558.     dc.w    r14,sq,r15,q
  1559.     dc.w     end_patt
  1560. ;p3aa:
  1561.  
  1562.         dc.w  new_env
  1563.         dc.l  flt1_env
  1564.     dc.w    new_snd
  1565.     dc.l    guit     
  1566.      dc.w  Bb05,q*3,A05,q*5
  1567.      dc.w  Bb05,q*3,A05,q*5
  1568.      dc.w  Bb05,q*3,C06,q*5
  1569.      dc.w  C06,q*3,D06,q*5
  1570.      dc.w  F06,q*3,E06,q*5
  1571.     dc.w    F06,q*3,G06,q*5
  1572.     dc.w    F06,q*3,Gb06,q*5
  1573.     dc.w    Ab06,q*3,Bb05/2,q*5
  1574.       dc.w end_patt
  1575. ;p3a:
  1576.  
  1577.         dc.w  new_env
  1578.         dc.l  guit_env
  1579.     dc.w    new_snd
  1580.     dc.l    guit     
  1581.      dc.w  Bb05,q*3,A05,q*5
  1582.      dc.w  Bb05,q*3,A05,q*5
  1583.      dc.w  Bb05,q*3,C06,q*5
  1584.      dc.w  C06,q*3,D06,q*5
  1585.      dc.w  F06,q*3,E06,q*5
  1586.     dc.w    F06,q*3,G06,q*5
  1587.     dc.w    F06,q*3,Gb06,q*5
  1588.     dc.w    Ab06,q*3,Bb05/2,q*5
  1589.     dc.w    new_snd
  1590.     dc.l    slur1      
  1591.      dc.w  Bb05,q*3,A05,q*5
  1592.      dc.w  Bb05,q*3,A05,q*5
  1593.      dc.w  Bb05,q*3,C06,q*5
  1594.      dc.w  C06,q*3,D06,q*5
  1595.      dc.w  F06,q*3,E06,q*5
  1596.     dc.w    F06,q*3,G06,q*5
  1597.     dc.w    F06,q*3,Gb06,q*5
  1598.     dc.w    Ab06,q*3,Bb05/2,q*5
  1599.       dc.w end_patt
  1600. ;p7:
  1601.  
  1602.         dc.w  new_env
  1603.         dc.l  guit_env
  1604.     dc.w    new_snd
  1605.     dc.l    guit     
  1606.      dc.w  Bb05,q*3,A05,q*5
  1607.       dc.w end_patt
  1608.  
  1609. ;p3ab:
  1610.         dc.w  new_env
  1611.         dc.l  flt1_env
  1612.     dc.w    new_snd
  1613.     dc.l    chrlp     
  1614.     dc.w B05,sq+3,rest,2,B05,sq+3,rest,2,B05,sq+3,rest,2
  1615.     dc.w Bb05,sq+3,rest,2,Bb05,sq+3,rest,2,Bb05,sq+3,rest,2
  1616.     dc.w Bb05,sq+3,rest,2,Bb05,sq+3,rest,2
  1617.     dc.w B05,sq+3,rest,2,B05,sq+3,rest,2,B05,sq+3,rest,2
  1618.     dc.w Bb05,sq+3,rest,2,Bb05,sq+3,rest,2,Bb05,sq+3,rest,2
  1619.     dc.w Bb05,sq+3,rest,2,Bb05,sq+3,rest,2
  1620.     dc.w B05,sq+3,rest,2,B05,sq+3,rest,2,B05,sq+3,rest,2
  1621.     dc.w C06,sq+3,rest,2,C06,sq+3,rest,2,C06,sq+3,rest,2
  1622.     dc.w C06,sq+3,rest,2,C06,sq+3,rest,2
  1623.     dc.w Db06,sq+3,rest,2,Db06,sq+3,rest,2
  1624.     dc.w Db06,sq+3,rest,2,Db06,sq+3,rest,2
  1625.     dc.w Db06,sq+3,rest,2,Db06,sq+3,rest,2
  1626.     dc.w A05,sq+3,rest,2,A05,sq+3,rest,2
  1627.     dc.w D06,cr*8
  1628.       dc.w end_patt
  1629.  
  1630. ;p3abb:
  1631.         dc.w  new_env
  1632.         dc.l  flt1_env
  1633.     dc.w    new_snd
  1634.     dc.l    chrlp     
  1635.     dc.w D05,sq+3,rest,2,D05,sq+3,rest,2,D05,sq+3,rest,2
  1636.     dc.w D05,sq+3,rest,2,D05,sq+3,rest,2,D05,sq+3,rest,2
  1637.     dc.w D05,sq+3,rest,2,D05,sq+3,rest,2
  1638.     dc.w D05,sq+3,rest,2,D05,sq+3,rest,2,D05,sq+3,rest,2
  1639.     dc.w Eb05,sq+3,rest,2,Eb05,sq+3,rest,2,Eb05,sq+3,rest,2
  1640.     dc.w Eb05,sq+3,rest,2,Eb05,sq+3,rest,2
  1641.     dc.w Eb05,sq+3,rest,2,Eb05,sq+3,rest,2,Eb05,sq+3,rest,2
  1642.     dc.w Eb05,sq+3,rest,2,Eb05,sq+3,rest,2,Eb05,sq+3,rest,2
  1643.     dc.w Eb05,sq+3,rest,2,Eb05,sq+3,rest,2
  1644.     dc.w E05,sq+3,rest,2,E05,sq+3,rest,2
  1645.     dc.w E05,sq+3,rest,2,E05,sq+3,rest,2
  1646.     dc.w E05,sq+3,rest,2,E05,sq+3,rest,2
  1647.     dc.w E05,sq+3,rest,2,A05,sq+3,rest,2
  1648.     dc.w Gb05,cr*8
  1649.       dc.w end_patt
  1650. ;p3abc:
  1651.         dc.w  new_env
  1652.         dc.l  flt1_env
  1653.     dc.w    new_snd
  1654.     dc.l    fingbl     
  1655.     dc.w F05,cr
  1656.     dc.w    new_snd
  1657.     dc.l  cow
  1658.     dc.w r20,q
  1659.     dc.w    new_snd
  1660.     dc.l    fingbl
  1661.     dc.w F05,q*3
  1662.     dc.w    new_snd
  1663.     dc.l  cow
  1664.     dc.w r20,q,r20,sq,r20,sq
  1665.         dc.w  new_env
  1666.         dc.l  flt1_env
  1667.     dc.w    new_snd
  1668.     dc.l    fingbl     
  1669.     dc.w Gb05,cr
  1670.     dc.w    new_snd
  1671.     dc.l  cow
  1672.     dc.w r20,q
  1673.     dc.w    new_snd
  1674.     dc.l    fingbl
  1675.     dc.w Gb05,q*3
  1676.     dc.w    new_snd
  1677.     dc.l  cow
  1678.     dc.w r20,q,r20,sq,r20,sq
  1679.     dc.w    new_snd
  1680.     dc.l    fingbl
  1681.     dc.w G05,q*3,Ab05,q*5
  1682.     dc.w A05,q*3,A05,q*5
  1683.     dc.w D06,cr*8
  1684.       dc.w end_patt
  1685. ;p3abd:
  1686.         dc.w  new_env
  1687.         dc.l  flt1_env
  1688.     dc.w    new_snd
  1689.     dc.l    chrlp     
  1690.     dc.w A05,cr*4,C06,cr*4,Ab05,cr*4,B05,cr*4
  1691.     dc.w A05,cr*4,C06,cr*4,Ab05,cr*4,B05,cr*4
  1692.     dc.w D06,cr*8
  1693.       dc.w end_patt
  1694. ;p3abe:
  1695.         dc.w  new_env
  1696.         dc.l  flt1_env
  1697.     dc.w    new_snd
  1698.     dc.l    chrlp 
  1699.     dc.w E05,cr*4,G05,cr*4,Eb05,cr*4,Gb05,cr*4
  1700.     dc.w D05,cr*8
  1701.       dc.w end_patt
  1702. ;p5:
  1703.         dc.w  new_env
  1704.         dc.l  kick_env
  1705.     dc.w    new_snd
  1706.     dc.l    slur1      
  1707.     dc.w  G04,cr*8
  1708.       dc.w end_patt
  1709. ;p6:
  1710.         dc.w  new_env
  1711.         dc.l  kick_env
  1712.     dc.w    new_snd
  1713.     dc.l    slur1
  1714.     dc.w  G05,q,D05,q,B05,q,A05,cr,G05,q,D05,q,G05,q
  1715.     dc.w  A05,q,G05,sq,A05,sq,B05,q,A05,cr,G05,q,D05,q,G05,q
  1716. ;p6a:    dc.w  Bb05,q,G05,q,Eb05,q,Bb04,cr,G05,q,F05,q,Eb05,q
  1717.     dc.w  Bb05,q,G05,q,Eb05,q,Bb04,cr,G05,q,F05,q,Eb05,q
  1718.       dc.w end_patt
  1719. ;p9:
  1720.     dc.w  rest,q,G05,3,rest,2,G05,3,rest,2
  1721.     dc.w  D06,q,G05,3,rest,2,G05,3,rest,2
  1722.     dc.w  G06,q,G05,3,rest,2,G05,3,rest,2
  1723.     dc.w  D06,q,G05,3,rest,2,G05,3,rest,2
  1724.       dc.w end_patt
  1725. ;p6b:
  1726.     dc.w  Bb05,q,G05,q,Eb05,q,Bb04,cr,G05,q,F05,q,Eb05,q
  1727.     dc.w  Bb05,sq,A05,sq,Ab05,sq,G05,sq
  1728.     dc.w  Gb05,sq,F05,sq,E05,sq,Eb05,sq
  1729.     dc.w  D05,sq,Db05,sq,C05,sq,B04,sq
  1730.     dc.w  Bb04,sq,A04,sq,Ab04,sq,G04,sq
  1731.       dc.w end_patt
  1732. ;**************************************
  1733. ;**************************************************************************
  1734.  
  1735.  
  1736. ;;;;;;;;;;;;;;;;;;;;;    JAGGED  Music Data ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1737.  
  1738. s1:
  1739.     dc.l    p10,p10,p10,p10,p10,p10,p10,p10,p10,p10,p10
  1740.     dc.l    p10,p10,p10,p11
  1741.     dc.l    p9,p9,p9,p9,p9,p9,p9,p9,p12,p13
  1742.     dc.l    p10,p10,p10,p10,p10,p10,p10
  1743.     dc.l    p10,p10,p10,p11
  1744.     dc.l    p9,p9,p9,p9,p9,p9,p9,p9,p12,p13
  1745.       dc.l     0,end_song
  1746.  
  1747. s2:
  1748.     dc.l    p1,p1,p1,p1,p1,p1,p2,p2,p1,p1,p2,p2
  1749.     dc.l    p3,p3,p3,p4,p5,p6,p6,p6,p6
  1750.     dc.l    p7,p7,p7,p7,p6,p6,p6,p6
  1751.     dc.l    p7,p7,p7,p7,p8
  1752.     dc.l    p1,p1,p2,p2,p1,p1,p2,p2
  1753.     dc.l    p3,p3,p3,p4,p5,p6,p6,p6,p6
  1754.     dc.l    p7,p7,p7,p7,p6,p6,p6,p6
  1755.     dc.l    p7,p7,p7,p7,p8
  1756.         DC.L     0,end_song
  1757.  
  1758. s3:
  1759.         
  1760.     dc.l    pr,pr,pr,pr,p20,p20a,p21,p22
  1761.     dc.l    p20,p20a,p21,p22
  1762.     dc.l     0,end_song
  1763.  
  1764. s4:
  1765.         
  1766.     dc.l    pr,pr,pr,pr
  1767.     dc.l     0,end_song
  1768.  
  1769.  
  1770.  
  1771. pcr:
  1772.       dc.w rest,cr
  1773.       dc.w end_patt
  1774. pr:
  1775.       dc.w rest,cr*4
  1776.       dc.w end_patt
  1777. pra:
  1778.     dc.w rest,q*7
  1779.     dc.w end_patt
  1780. pqr:
  1781.       dc.w rest,q
  1782.       dc.w end_patt
  1783.  
  1784. p1:
  1785.       dc.w new_env
  1786.       dc.l bass_env
  1787.     dc.w    new_snd
  1788.     dc.l    slur1
  1789.       dc.w a01,q,c02,q,E02,q,a01,q
  1790.       dc.w g02,q,a01,q,E02,q,g02,q
  1791.       dc.w end_patt
  1792.  
  1793.  
  1794. p2:
  1795.       dc.w new_env
  1796.       dc.l bass_env
  1797.     dc.w    new_snd
  1798.     dc.l    slur1
  1799.       dc.w f01,q,a01,q,c02,q,f01,q
  1800.       dc.w d02,q,f01,q,c02,q,f01,q
  1801.       dc.w end_patt
  1802.  
  1803.  
  1804.  
  1805. p3:
  1806.       dc.w new_env
  1807.       dc.l bass_env
  1808.     dc.w    new_snd
  1809.     dc.l    slur1
  1810.       dc.w g01,q,g02,q,g01,q,g02,q
  1811.       dc.w end_patt
  1812.  
  1813.  
  1814. p4:
  1815.       dc.w new_env
  1816.       dc.l bass_env
  1817.     dc.w    new_snd
  1818.     dc.l    slur1
  1819.       dc.w f01,q,f02,q,f01,q,f02,q
  1820.       dc.w end_patt
  1821.  
  1822.  
  1823.  
  1824. p5:
  1825.       dc.w new_env
  1826.       dc.l bass_env
  1827.     dc.w    new_snd
  1828.     dc.l    slur1
  1829.       dc.w e01,q,gb01,q,ab01,q,ab01,q
  1830.       dc.w b01,q,db02,q,d02,q,e02,q
  1831.       dc.w end_patt
  1832.  
  1833.  
  1834. p6:
  1835.       dc.w new_env
  1836.       dc.l bass_envs
  1837.     dc.w    new_snd
  1838.     dc.l    slur1
  1839.       dc.w a02,sq,a02,sq,db03,sq,db03,sq
  1840.       dc.w a02,sq,a02,sq,E03,sq,e03,sq
  1841.       dc.w end_patt
  1842.  
  1843.  
  1844. p7:
  1845.     dc.w new_env
  1846.       dc.l bass_envs
  1847.     dc.w    new_snd
  1848.     dc.l    slur1
  1849.       dc.w e02,sq,e02,sq,ab02,sq,ab02,sq
  1850.       dc.w e02,sq,e02,sq,b03,sq,b03,sq
  1851.       dc.w end_patt
  1852.  
  1853.  
  1854. p8:
  1855.     dc.w new_env
  1856.       dc.l long_sus2
  1857.     dc.w    new_snd
  1858.     dc.l    slur1
  1859.       dc.w d03,q,d02,sq,rest,sq,d02,q,d03,q
  1860.       dc.w d03,sq,rest,sq,d02,q,d02,q,d03,sq
  1861.     dc.w rest,sq,d02,sq,rest,sq,d02,sq*5,rest,sq
  1862.     dc.w e02,sq*7,rest,sq
  1863.       dc.w end_patt
  1864.  
  1865.  
  1866.               
  1867.  
  1868. p9:     
  1869.       dc.w new_env
  1870.       dc.l bassde
  1871.     dc.w    new_snd
  1872.     dc.l    slur1
  1873.       dc.w e04,sQ
  1874.       dc.w new_env
  1875.       dc.l hate
  1876.     dc.w    new_snd
  1877.     dc.l    slur1
  1878.       dc.w g06,sQ,g06,sQ,g06,sQ
  1879.       dc.w new_env
  1880.       dc.l qCLAPE
  1881.     dc.w    new_snd
  1882.     dc.l    slur1
  1883.       dc.w c04,sQ
  1884.       dc.w new_env
  1885.       dc.l hate
  1886.     dc.w    new_snd
  1887.     dc.l    slur1
  1888.       dc.w g06,sQ,g06,sQ,g06,sQ
  1889.       dc.w new_env
  1890.       dc.l bassde
  1891.     dc.w    new_snd
  1892.     dc.l    slur1
  1893.       dc.w e04,sQ
  1894.       dc.w new_env
  1895.       dc.l hate
  1896.     dc.w    new_snd
  1897.     dc.l    slur1
  1898.       dc.w g06,sQ,g06,sQ,g06,sQ
  1899.       dc.w new_env
  1900.       dc.l QCLAPE
  1901.     dc.w    new_snd
  1902.     dc.l    slur1
  1903.       dc.w c05,sQ
  1904.       dc.w new_env
  1905.       dc.l hate
  1906.     dc.w    new_snd
  1907.     dc.l    slur1
  1908.       dc.w g06,sQ,g06,sQ,g06,sq
  1909.       dc.w end_patt
  1910.  
  1911.  
  1912. p10:     
  1913.       dc.w new_env
  1914.       dc.l bassde
  1915.     dc.w    new_snd
  1916.     dc.l    slur1
  1917.       dc.w e04,sQ
  1918.       dc.w new_env
  1919.       dc.l hate
  1920.     dc.w    new_snd
  1921.     dc.l    slur1
  1922.       dc.w g06,sQ,g06,sQ,g06,sQ,g05,sq
  1923.       dc.w g06,sQ,g06,sQ,g06,sQ
  1924.       dc.w new_env
  1925.       dc.l bassde
  1926.     dc.w    new_snd
  1927.     dc.l    slur1
  1928.       dc.w e04,sQ
  1929.       dc.w new_env
  1930.       dc.l hate
  1931.     dc.w    new_snd
  1932.     dc.l    slur1
  1933.       dc.w g06,sQ,g06,sQ,g06,sQ
  1934.       dc.w new_env
  1935.       dc.l snaree
  1936.     dc.w    new_snd
  1937.     dc.l    slur1
  1938.       dc.w c05,sQ
  1939.       dc.w new_env
  1940.       dc.l hate
  1941.     dc.w    new_snd
  1942.     dc.l    slur1
  1943.       dc.w g06,sQ,g05,sQ,g04,sq
  1944.       dc.w end_patt
  1945.  
  1946.  
  1947. p11:     
  1948.       dc.w new_env
  1949.       dc.l bassde
  1950.     dc.w    new_snd
  1951.     dc.l    slur1
  1952.       dc.w e04,sQ
  1953.       dc.w new_env
  1954.       dc.l hate
  1955.     dc.w    new_snd
  1956.     dc.l    slur1
  1957.       dc.w g06,sQ,g06,sQ,g06,sQ,g05,sq
  1958.       dc.w g06,sQ,g06,sQ,g06,sQ
  1959.       dc.w new_env
  1960.       dc.l bassde
  1961.     dc.w    new_snd
  1962.     dc.l    slur1
  1963.       dc.w e04,sQ
  1964.       dc.w new_env
  1965.       dc.l hate
  1966.     dc.w    new_snd
  1967.     dc.l    slur1
  1968.       dc.w g06,sQ,g06,sQ,g06,sQ
  1969.       dc.w new_env
  1970.       dc.l snaree
  1971.     dc.w    new_snd
  1972.     dc.l    slur1
  1973.       dc.w c05,sQ
  1974.       dc.w new_env
  1975.       dc.l rota1
  1976.     dc.w    new_snd
  1977.     dc.l    slur1
  1978.       dc.w g04,sQ,c04,sQ,g03,sq
  1979.       dc.w end_patt
  1980.      
  1981. p12:
  1982.       dc.w new_env
  1983.       dc.l QCLAPE
  1984.     dc.w    new_snd
  1985.     dc.l    slur1
  1986.       dc.w c05,q,c05,q,c05,q,c05,q
  1987.       dc.w c05,q,c05,q,c05,q,c05,q
  1988.       dc.w end_patt
  1989.  
  1990.      
  1991. p13:
  1992.       dc.w new_env
  1993.       dc.l bassde
  1994.     dc.w    new_snd
  1995.     dc.l    slur1
  1996.       dc.w c04,cr
  1997.       dc.w c04,cr
  1998.       dc.w c04,cr
  1999.       dc.w c04,cr
  2000.       dc.w end_patt
  2001. p20:
  2002.       dc.w new_env
  2003.       dc.l apaiano_env
  2004.     dc.w    new_snd
  2005.     dc.l    slur1
  2006. ;      dc.w modon,1,1
  2007. ;      dc.w 3,3,8
  2008.       dc.w c04,q,d04,q,e04,q,d04,q
  2009.       dc.w new_env
  2010.       dc.l mono_env
  2011.     dc.w    new_snd
  2012.     dc.l    slur1
  2013.     dc.w c04,cr*2
  2014.       dc.w new_env
  2015.       dc.l apaiano_env
  2016.     dc.w    new_snd
  2017.     dc.l    slur1
  2018.       dc.w c04,q,d04,q,e04,q,f04,q,e04,q
  2019.       dc.w d04,q,c04,q,rest,q,a03,q,b03,q,c04,q,b03,q
  2020.       dc.w new_env
  2021.       dc.l mono_env
  2022.     dc.w    new_snd
  2023.     dc.l    slur1
  2024.     dc.w a03,cr*3
  2025.       dc.w new_env
  2026.       dc.l apaiano_env
  2027.     dc.w    new_snd
  2028.     dc.l    slur1
  2029.       dc.w a03,q,b03,q,c04,q,b03,q,a03,cr
  2030.       dc.w end_patt
  2031.  
  2032. p20a:
  2033.       dc.w new_env
  2034.       dc.l apaiano_env
  2035.     dc.w    new_snd
  2036.     dc.l    slur1
  2037. ;      dc.w modon,1,1
  2038. ;      dc.w 3,3,8
  2039.       dc.w c04,sq,c04,sq,d04,sq,c04,sq,e04,sq,c04,sq,d04,sq,g04,sq
  2040.       dc.w new_env
  2041.       dc.l mono_env
  2042.     dc.w    new_snd
  2043.     dc.l    slur1
  2044.     dc.w c04,cr*2
  2045.       dc.w new_env
  2046.       dc.l apaiano_env
  2047.     dc.w    new_snd
  2048.     dc.l    slur1
  2049.       dc.w c04,q,d04,q,e04,q,f04,q,e04,q
  2050.       dc.w d04,q,c04,q,rest,q,a03,q,b03,q,c04,q,b03,q
  2051.       dc.w new_env
  2052.       dc.l mono_env
  2053.     dc.w    new_snd
  2054.     dc.l    slur1
  2055.     dc.w a03,cr*3
  2056.       dc.w new_env
  2057.       dc.l apaiano_env
  2058.     dc.w    new_snd
  2059.     dc.l    slur1
  2060.       dc.w a03,q,b03,q,c04,q,b03,q,a03,cr
  2061.       dc.w end_patt
  2062.  
  2063.  
  2064.  
  2065. p21:
  2066.       dc.w new_env
  2067.       dc.l marx_env
  2068.     dc.w    new_snd
  2069.     dc.l    slur1
  2070.       dc.w modon,1,1
  2071.       dc.w 3,3,8
  2072.       dc.w c04,q,b03,q,a03,q,b03,q,e04,q
  2073.       dc.w d04,q,c04,q,d04,q,g04,q,f04,q
  2074.       dc.w e04,q,f04,q,a04,q,g04,q,f04,q,g04,q,b04,cr+q
  2075.       dc.w new_env
  2076.       dc.l mono_env
  2077.     dc.w    new_snd
  2078.     dc.l    slur1
  2079.     dc.w pbend,up,20
  2080.       dc.w e05,0
  2081.       dc.w e04,cr*2+q
  2082.       dc.w end_patt
  2083.  
  2084.  
  2085.  
  2086.  
  2087. p22:
  2088.       dc.w new_env
  2089.       dc.l marx_env
  2090.     dc.w    new_snd
  2091.     dc.l    slur1
  2092.       dc.w modon,1,1
  2093.       dc.w 3,3,8
  2094.       dc.w a04,cr,a04,q,b04,q
  2095.       dc.w new_env
  2096.       dc.l mono_env
  2097.     dc.w    new_snd
  2098.     dc.l    slur1
  2099.     dc.w a04,cr*3
  2100.       dc.w new_env
  2101.       dc.l marx_env
  2102.     dc.w    new_snd
  2103.     dc.l    slur1
  2104.       dc.w a04,q,b04,q,db05,q,b04,q,a04,cr
  2105.       dc.w b04,cr,b04,q,db05,q
  2106.       dc.w new_env
  2107.       dc.l mono_env
  2108.     dc.w    new_snd
  2109.     dc.l    slur1
  2110.     dc.w b04,cr*3
  2111.       dc.w new_env
  2112.       dc.l marx_env
  2113.     dc.w    new_snd
  2114.     dc.l    slur1
  2115.       dc.w a04,q,b04,q,db05,q,b04,q,a04,cr
  2116.         dc.w a04,q,rest,q,a04,q,b04,q
  2117.       dc.w new_env
  2118.       dc.l mono_env
  2119.     dc.w    new_snd
  2120.     dc.l    slur1
  2121.     dc.w a04,cr*3
  2122.       dc.w new_env
  2123.       dc.l marx_env
  2124.     dc.w    new_snd
  2125.     dc.l    slur1
  2126.       dc.w a04,q,b04,q,db05,q,b04,q,a04,cr
  2127.  
  2128.         dc.w b04,q,b04,q,b04,q,db05,q,b04,q,b04,q,b04,q
  2129.     dc.w db05,q,b04,q,b04,q,b04,q,db05,q,d05,q,db05,q
  2130.     dc.w b04,q,rest,q,c05,q,b04,q,a04,q,c05,q,b04,q,a04,q
  2131.     dc.w c05,q,b04,q,a04,q,c05,cr+q
  2132.       dc.w new_env
  2133.       dc.l mono_env
  2134.     dc.w    new_snd
  2135.     dc.l    slur1
  2136.     dc.w e04,cr*2
  2137.       dc.w end_patt
  2138. ;****************************************************************
  2139.  
  2140.  
  2141. CR      set 16
  2142. tcr1     set 9
  2143. tcr2     set 8
  2144. Q       set 8
  2145. tq1      set 4
  2146. tq2      set 5
  2147. ;tsq     set 3
  2148. ;tsq2     set 2
  2149. SQ      set 4
  2150. ;m       set 254
  2151. ;rest     set $fd00
  2152. ;dcr      set cr+q
  2153. ;dq      set q+sq
  2154. ;dsq      set sq+(sq/2)
  2155. ;sb      set cr*4
  2156. ;min      set cr*2
  2157. ;dm      set min+cr
  2158.  
  2159.  
  2160. pcr16:
  2161.       dc.w rest,cr
  2162.       dc.w end_patt
  2163. pr16:
  2164.       dc.w rest,cr*4
  2165.       dc.w end_patt
  2166. pqr16:
  2167.       dc.w rest,q
  2168.       dc.w end_patt
  2169.  
  2170.  
  2171.  
  2172. s5:
  2173.   dc.l pr16,pr16,pr16,pr16,pr16,pr16,p111b
  2174.   dc.l P7b,P7b,P7b,P7b
  2175.  
  2176.   dc.l p7b,p7b,p7b,p7b
  2177.   dc.l p7b,p7b,p7b,p7b
  2178.   dc.l p7b,p7b,p7b,p7b
  2179.   dc.l P7ab,P7ab,P7ab,P7ab
  2180.   dc.l p7ab,p7ab,p7ab,p7ab,p7cb
  2181.   dc.l p7b,p7b,p7b,p7b
  2182.   dc.l p7b,p7b,p7b,p7b
  2183.   dc.l pr16,pr16,pr16,pr16
  2184.   dc.l p13ab,p13ab,p13ab,p13ab
  2185.   dc.l p7b,p7b,p7b,p7bb,p7bb
  2186.   dc.l P7ab,P7ab,P7ab,P7ab
  2187.   dc.l p7ab,p7ab,p7ab,p7ab,p7cb
  2188.   dc.l p7b,p7b,p7b,p7b
  2189.   dc.l p7b,p7b,p7b,p7b,p22b
  2190.   dc.l pr16,pr16,pr16,pr16
  2191.   dc.l 0,end_song
  2192.  
  2193. s6:
  2194.   dc.l p14b,p14b,p14b,p14b,p14b,p14b,p14b,p14b
  2195.   dc.l p1b,p1b,p2b,p2b
  2196.   dc.l p3b,p3b,p4b,p5b
  2197.   dc.l p1b,p1b,p2b,p2b
  2198.   dc.l p3b,p3b,p4b,p5b
  2199.   dc.l p3b,p3b,p2b,p2b
  2200.   dc.l p3b,p3b,p2b,p9b,p9b
  2201.   dc.l p1b,p1b,p2b,p2b
  2202.   dc.l p3b,p3b,p4b,p5b
  2203.   dc.l p11b,p11b,p11b,p12b
  2204.   dc.l p14b,p11b,p14b,p11b
  2205.   dc.l p14b,p11b,p14b,pr16,pr16
  2206.   dc.l p3b,p3b,p2b,p2b
  2207.   dc.l p3b,p3b,p2b,p9b,p9b
  2208.   dc.l p1b,p1b,p2b,p2b
  2209.   dc.l p3b,p3b,p4b,p5b,p20b
  2210.   dc.l pr16,pr16,pr16,pr16
  2211.   dc.l 0,end_song
  2212.  
  2213. s7:
  2214.   dc.l p222b,p222b,p222b,p222b,p222b,p222b,p222b,p222b
  2215.   dc.l p6b,p6b,p8b,p10b
  2216.   dc.l p13b,p13b,p13b,p13b
  2217.   dc.l p17b,p8b,p10b,p21b
  2218.   dc.l pr16,pr16,pr16,pr16
  2219.   dc.l 0,end_song
  2220.  
  2221. s8:
  2222.   dc.l pr,pr,pr,pr
  2223.   dc.l 0,end_song
  2224.  
  2225. p1b:
  2226.   dc.w new_env
  2227.   dc.l bass_env
  2228.     dc.w    new_snd
  2229.     dc.l    slur1
  2230.   dc.w D03,q,D03,q,D04,q,D03,q
  2231.   dc.w D03,q,C04,q,D03,q,A03,q
  2232.   dc.w end_patt
  2233. p2b:
  2234.   dc.w new_env
  2235.   dc.l bass_env
  2236.     dc.w    new_snd
  2237.     dc.l    slur1
  2238.   dc.w C03,q,C03,q,C04,q,C03,q
  2239.   dc.w C03,q,Bb03,q,C03,q,G03,q
  2240.   dc.w end_patt
  2241. p3b:
  2242.   dc.w new_env
  2243.   dc.l bass_env
  2244.     dc.w    new_snd
  2245.     dc.l    slur1
  2246.   dc.w Bb02,q,Bb02,q,Bb03,q,Bb02,q
  2247.   dc.w Bb02,q,A03,q,Bb02,q,F03,q
  2248.   dc.w end_patt
  2249. p4b:
  2250.   dc.w new_env
  2251.   dc.l bass_env
  2252.     dc.w    new_snd
  2253.     dc.l    slur1
  2254.   dc.w F02,q,F02,q,F03,q,F02,q
  2255.   dc.w F02,q,Eb03,q,F02,q,C03,q
  2256.   dc.w end_patt
  2257. p5b:
  2258.   dc.w new_env
  2259.   dc.l bass_env
  2260.     dc.w    new_snd
  2261.     dc.l    slur1
  2262.   dc.w G02,q,G02,q,G03,q,G02,q
  2263.   dc.w G02,q,F03,q,G02,q,G03,q
  2264.   dc.w end_patt
  2265. p6b:
  2266.   dc.w new_env
  2267.   dc.l mono_env
  2268.     dc.w    new_snd
  2269.     dc.l    slur1
  2270. ;  dc.w modon,1,1
  2271. ;  dc.w 3,3,8
  2272.   dc.w F04,cr+q,E04,cr+q,C04,cr
  2273.   dc.w F04,cr+q,E04,cr+q,C04,cr
  2274.   dc.w F04,cr+q,E04,cr+q,C04,cr
  2275.   dc.w F04,cr+q,E04,cr+q,C04,cr
  2276.   dc.w F04,cr+q,E04,cr+q,F04,cr
  2277.   dc.w G04,cr+q,F04,cr+q,G04,cr
  2278.   dc.w A04,q*5,Bb04,q,A04,q,G04,q*9
  2279.   dc.w end_patt
  2280.  
  2281. p8b:
  2282.   dc.w new_env
  2283.   dc.l apaiano_env
  2284.     dc.w    new_snd
  2285.     dc.l    slur1 
  2286.  dc.w Bb04,cr+q,Bb04,cr+q,C05,cr
  2287.   dc.w D05,cr+q,C05,cr+q,Bb04,cr
  2288.   dc.w C05,cr+q,C05,cr+q,Bb04,cr
  2289.   dc.w G04,cr*3
  2290.   dc.w F04,cr
  2291.   dc.w Bb04,cr+q,Bb04,cr+q,C05,cr
  2292.   dc.w D05,cr+q,C05,cr+q,Bb04,cr
  2293.   dc.w C05,cr+q,C05,cr+q,D05,cr
  2294.   dc.w E05,cr*4
  2295.   dc.w end_patt
  2296.  
  2297. p9b:
  2298.   dc.w new_env
  2299.   dc.l bass_env
  2300.     dc.w    new_snd
  2301.     dc.l    slur1
  2302.   dc.w C04,q,C04,q,Bb03,q,Bb03,q
  2303.   dc.w G03,q,G03,q,E03,q,E03,q
  2304.   dc.w end_patt
  2305.  
  2306. p10b:
  2307.   dc.w new_env
  2308.   dc.l mono_env
  2309.     dc.w    new_snd
  2310.     dc.l    slur1
  2311. ;  dc.w modon,1,1
  2312. ;  dc.w 2,2,8
  2313. ;  dc.w pbend,up,10
  2314. ;  dc.w F05,1
  2315.   dc.w F03,q*11
  2316.   dc.w pboff
  2317.   dc.w E05,cr+q,C05,cr
  2318.   dc.w F05,cr+q,E05,cr+q,C05,cr
  2319.   dc.w F05,cr+q,E05,cr+q,C05,cr
  2320.   dc.w F05,cr+q,E05,cr+q,C05,cr
  2321.   dc.w F05,cr+q,E05,cr+q,F05,cr
  2322.   dc.w G05,cr+q,F05,cr+q,G05,cr
  2323.   dc.w A05,q*5,Bb05,q,A05,q,G05,q*9
  2324.   dc.w end_patt
  2325.  
  2326. p11b:
  2327.   dc.w new_env
  2328.   dc.l bass_env
  2329.     dc.w    new_snd
  2330.     dc.l    slur1
  2331.   dc.w D02,q,D03,q,D02,q,D03,q
  2332.   dc.w D02,q,D03,q,C02,q,C03,q
  2333.   dc.w end_patt
  2334.  
  2335. p12b:
  2336.   dc.w new_env
  2337.   dc.l bass_env
  2338.     dc.w    new_snd
  2339.     dc.l    slur1
  2340.   dc.w D02,q,D03,q,F02,q,F03,q
  2341.   dc.w E02,q,E03,q,Eb02,q,Eb03,q
  2342.   dc.w end_patt
  2343.  
  2344. p13b:
  2345.   dc.w new_env
  2346.   dc.l mono_env
  2347.     dc.w    new_snd
  2348.     dc.l    slur1
  2349.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2350.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2351.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2352.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2353.   dc.w end_patt
  2354.  
  2355. p13ab:
  2356.   dc.w new_env
  2357.   dc.l mono_envt1
  2358.     dc.w    new_snd
  2359.     dc.l    slur1
  2360.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2361.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2362.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2363.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2364.   dc.w end_patt
  2365.  
  2366. p222b:
  2367.   dc.w new_env
  2368.   dc.l mono_env
  2369.     dc.w    new_snd
  2370.     dc.l    slur1
  2371.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2372.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2373.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2374.   dc.w D05,sq,A05,sq,D06,sq,A04,sq
  2375.   dc.w end_patt
  2376.  
  2377. p14b:
  2378.   dc.w new_env
  2379.   dc.l bass_env
  2380.     dc.w    new_snd
  2381.     dc.l    slur1
  2382.   dc.w D02,q,D03,q,D02,q,D03,q
  2383.   dc.w D02,q,D03,q,D02,q,D03,q
  2384.   dc.w end_patt
  2385.  
  2386. p15b:
  2387.   dc.w new_env
  2388.   dc.l bass_env
  2389.     dc.w    new_snd
  2390.     dc.l    slur1
  2391.   dc.w D02,q,D03,q,D02,q,D03,q
  2392.   dc.w C02,q,C03,q,C02,q,C03,q
  2393.   dc.w end_patt
  2394.  
  2395. p16b:
  2396.   dc.w new_env
  2397.   dc.l bass_env
  2398.     dc.w    new_snd
  2399.     dc.l    slur1
  2400.   dc.w D02,q,D03,q,D02,q,D03,q
  2401.   dc.w C02,q,C03,q,Db02,q,Db03,q
  2402.   dc.w end_patt
  2403.  
  2404. p17b:
  2405.   dc.w new_env
  2406.   dc.l apaiano_envt
  2407.     dc.w    new_snd
  2408.     dc.l    slur1
  2409.   dc.w rest,q,D04,q,D04,cr
  2410.   dc.w D04,sq,D04,q,D04,sq
  2411.   dc.w D04,q,C04,q
  2412.   dc.w rest,q,D04,q,D04,q
  2413.   dc.w D04,q,F04,q,D04,q
  2414.   dc.w E04,q,C04,q
  2415.   dc.w rest,q,D04,q,D04,cr
  2416.   dc.w D04,sq,D04,q,D04,sq
  2417.   dc.w D04,q,C04,q
  2418.   dc.w rest,q,A04,q,G04,q
  2419.   dc.w F04,q,E04,q,F04,q
  2420.   dc.w E04,q,C04,q
  2421.  
  2422.   dc.w rest,q,D04,q,D04,cr
  2423.   dc.w D04,sq,D04,q,D04,sq
  2424.   dc.w D04,q,C04,q
  2425.   dc.w rest,q,D04,q,D04,q
  2426.   dc.w D04,q,F04,q,D04,q
  2427.   dc.w E04,q,C04,q
  2428.   dc.w rest,q,D04,q,D04,cr
  2429.   dc.w D04,sq,D04,q,D04,sq
  2430.   dc.w D04,q,C04,q
  2431.   dc.w D05,sq,C05,sq,A04,sq,Ab04,sq
  2432.   dc.w G04,sq,F04,sq,D04,sq,C04,sq
  2433.   dc.w D04,sq,C04,sq,A03,sq,Ab03,sq
  2434.   dc.w G03,sq,F03,sq,D03,sq,C03,sq
  2435.   dc.w D03,sq,A02,sq,C03,sq,D03,sq
  2436.   dc.w F03,sq,D03,sq,F03,sq,G03,sq
  2437.   dc.w Ab03,sq,A03,sq,C04,sq,D04,sq
  2438.   dc.w F04,sq,G04,sq,Ab04,sq,A04,sq
  2439.   dc.w end_patt
  2440.  
  2441. p111b:
  2442.   dc.w new_env
  2443.   dc.l mono_envt1
  2444.     dc.w    new_snd
  2445.     dc.l    slur1
  2446.   dc.w D05,sq,C05,sq,A04,sq,Ab04,sq
  2447.   dc.w G04,sq,F04,sq,D04,sq,C04,sq
  2448.   dc.w D04,sq,C04,sq,A03,sq,Ab03,sq
  2449.   dc.w G03,sq,F03,sq,D03,sq,C03,sq
  2450.   dc.w D03,sq,A02,sq,C03,sq,D03,sq
  2451.   dc.w F03,sq,D03,sq,F03,sq,G03,sq
  2452.   dc.w Ab03,sq,A03,sq,C04,sq,D04,sq
  2453.   dc.w F04,sq,G04,sq,Ab04,sq,A04,sq
  2454.   dc.w end_patt
  2455.  
  2456. p18b:
  2457.   dc.w new_env
  2458.   dc.l mono_env
  2459.     dc.w    new_snd
  2460.     dc.l    slur1
  2461.   dc.w D05,q,C05,q,A04,q,Ab04,q
  2462.   dc.w G04,q,F04,q,D04,q,C04,cr
  2463.   dc.w D04,q,A03,q,C04,q,F04,cr,D04,cr
  2464.   dc.w D05,q,C05,q,A04,q,Ab04,q
  2465.   dc.w G04,q,F04,q,D04,q,C04,cr
  2466.   dc.w D04,q,A03,q,C04,q,D04,cr,rest,cr
  2467.   dc.w end_patt
  2468.  
  2469. p19b:
  2470.   dc.w new_env
  2471.   dc.l mono_envt2
  2472.     dc.w    new_snd
  2473.     dc.l    slur1
  2474.   dc.w D01,q,F01,q,G01,q,Ab01,q
  2475.   dc.w A01,q,C02,q,D02,q,F02,cr
  2476.   dc.w D02,q,G02,q,F02,q,C02,cr,D02,cr
  2477.   dc.w D01,q,F01,q,G01,q,Ab01,q
  2478.   dc.w A01,q,C02,q,D02,q,F02,cr
  2479.   dc.w D02,q,G02,q,F02,q,D02,cr,rest,cr
  2480.   dc.w end_patt
  2481.  
  2482. p20b:
  2483.   dc.w new_env
  2484.   dc.l mono_envt2
  2485.     dc.w    new_snd
  2486.     dc.l    slur1
  2487.   dc.w rest,q,D02,sq,C02,sq,A01,sq
  2488.   dc.w G01,sq,F01,q
  2489.   dc.w rest,q,D02,sq,C02,sq,A01,sq
  2490.   dc.w G01,sq,F01,q
  2491.   dc.w rest,q,D02,sq,C02,sq,A01,sq
  2492.   dc.w G01,sq,F01,q
  2493.   dc.w D01,q,rest,q*7
  2494.   dc.w end_patt
  2495.  
  2496. p21b:
  2497.   dc.w new_env
  2498.   dc.l mono_env
  2499.     dc.w    new_snd
  2500.     dc.l    slur1
  2501.   dc.w rest,q,D05,sq,C05,sq,A04,sq
  2502.   dc.w G04,sq,F04,q
  2503.   dc.w rest,q,D05,sq,C05,sq,A04,sq
  2504.   dc.w G04,sq,F04,q
  2505.   dc.w rest,q,D05,sq,C05,sq,A04,sq
  2506.   dc.w G04,sq,F04,q
  2507.   dc.w D04,q,rest,q*7
  2508.   dc.w end_patt
  2509.  
  2510. p22b:
  2511.   dc.w new_env
  2512.   dc.l hate
  2513.     dc.w    new_snd
  2514.     dc.l    slur1
  2515.   dc.w rest,q,C04,sq,C04,sq,C04,sq
  2516.   dc.w C04,sq,C04,q
  2517.   dc.w rest,q,C04,sq,C04,sq,C04,sq
  2518.   dc.w C04,sq,C04,q
  2519.   dc.w rest,q,C04,sq,C04,sq,C04,sq
  2520.   dc.w C04,sq,C04,sq,rest,sq
  2521.   dc.w C04,sq,rest,sq*3
  2522.   dc.w rest,cr*3
  2523.   dc.w end_patt
  2524.  
  2525. p7b:     
  2526.   dc.w new_env
  2527.   dc.l bassde
  2528.     dc.w    new_snd
  2529.     dc.l    slur1
  2530.   dc.w e04,sQ
  2531.   dc.w new_env
  2532.   dc.l hate
  2533.     dc.w    new_snd
  2534.     dc.l    slur1
  2535.   dc.w g06,sQ,g06,sQ,g06,sQ
  2536.   dc.w new_env
  2537.   dc.l qCLAPE
  2538.     dc.w    new_snd
  2539.     dc.l    slur1
  2540.   dc.w c04,sQ
  2541.   dc.w new_env
  2542.   dc.l hate
  2543.     dc.w    new_snd
  2544.     dc.l    slur1
  2545.   dc.w g06,sQ,g06,sQ,g06,sQ
  2546.   dc.w new_env
  2547.   dc.l bassde
  2548.     dc.w    new_snd
  2549.     dc.l    slur1
  2550.   dc.w e04,sQ
  2551.   dc.w new_env
  2552.   dc.l hate
  2553.     dc.w    new_snd
  2554.     dc.l    slur1
  2555.   dc.w g06,sQ,g06,sQ,g06,sQ
  2556.   dc.w new_env
  2557.   dc.l QCLAPE
  2558.     dc.w    new_snd
  2559.     dc.l    slur1
  2560.   dc.w c05,sQ
  2561.   dc.w new_env
  2562.   dc.l hate
  2563.     dc.w    new_snd
  2564.     dc.l    slur1
  2565.   dc.w g06,sQ,g06,sQ,g06,sq
  2566.   dc.w end_patt
  2567.  
  2568. p7ab:     
  2569.   dc.w new_env
  2570.   dc.l bassde
  2571.     dc.w    new_snd
  2572.     dc.l    slur1
  2573.   dc.w e04,sq
  2574.   dc.w new_env
  2575.   dc.l hate
  2576.     dc.w    new_snd
  2577.     dc.l    slur1
  2578.   dc.w g06,sQ,g06,sQ,g06,sQ
  2579.   dc.w new_env
  2580.   dc.l qCLAPE
  2581.     dc.w    new_snd
  2582.     dc.l    slur1
  2583.   dc.w c04,sq
  2584.   dc.w new_env
  2585.   dc.l hate
  2586.     dc.w    new_snd
  2587.     dc.l    slur1
  2588.   dc.w g06,sQ
  2589.   dc.w new_env
  2590.   dc.l bassde
  2591.     dc.w    new_snd
  2592.     dc.l    slur1
  2593.   dc.w e04,sq
  2594.   dc.w new_env
  2595.   dc.l hate
  2596.     dc.w    new_snd
  2597.     dc.l    slur1
  2598.   dc.w g06,sQ,g06,sQ,g06,sQ
  2599.   dc.w new_env
  2600.   dc.l bassde
  2601.     dc.w    new_snd
  2602.     dc.l    slur1
  2603.   dc.w e04,sq
  2604.   dc.w new_env
  2605.   dc.l hate
  2606.     dc.w    new_snd
  2607.     dc.l    slur1
  2608.   dc.w g06,sQ
  2609.   dc.w new_env
  2610.   dc.l QCLAPE
  2611.     dc.w    new_snd
  2612.     dc.l    slur1
  2613.   dc.w c05,sq
  2614.   dc.w new_env
  2615.   dc.l hate
  2616.     dc.w    new_snd
  2617.     dc.l    slur1
  2618.   dc.w g06,sQ,g06,sQ,g06,sq
  2619.   dc.w end_patt
  2620.  
  2621. p7bb:
  2622.   dc.w new_env
  2623.   dc.l bassde
  2624.     dc.w    new_snd
  2625.     dc.l    slur1
  2626.   dc.w e04,cr,e04,cr,e04,cr,e04,cr
  2627.   dc.w end_patt
  2628.  
  2629. p7cb:     
  2630.   dc.w new_env
  2631.   dc.l QCLAPE
  2632.     dc.w    new_snd
  2633.     dc.l    slur1
  2634.   dc.w c05,Q
  2635.   dc.w new_env
  2636.   dc.l bassde
  2637.     dc.w    new_snd
  2638.     dc.l    slur1
  2639.   dc.w e04,Q
  2640.   dc.w new_env
  2641.   dc.l qCLAPE
  2642.     dc.w    new_snd
  2643.     dc.l    slur1
  2644.   dc.w c04,Q
  2645.   dc.w new_env
  2646.   dc.l bassde
  2647.     dc.w    new_snd
  2648.     dc.l    slur1
  2649.   dc.w e04,Q
  2650.   dc.w new_env
  2651.   dc.l QCLAPE
  2652.     dc.w    new_snd
  2653.     dc.l    slur1
  2654.   dc.w c05,Q
  2655.   dc.w new_env
  2656.   dc.l bassde
  2657.     dc.w    new_snd
  2658.     dc.l    slur1
  2659.   dc.w e04,Q
  2660.   dc.w new_env
  2661.   dc.l qCLAPE
  2662.     dc.w    new_snd
  2663.     dc.l    slur1
  2664.   dc.w c04,Q
  2665.   dc.w new_env
  2666.   dc.l bassde
  2667.     dc.w    new_snd
  2668.     dc.l    slur1
  2669.   dc.w e04,Q
  2670.   dc.w end_patt
  2671.  
  2672. p7db:
  2673.   dc.w new_env
  2674.   dc.l bassde
  2675.     dc.w    new_snd
  2676.     dc.l    slur1
  2677.   dc.w e04,cr,rest,cr
  2678.     dc.w    new_snd
  2679.     dc.l    slur1
  2680.   dc.w e04,cr,rest,cr
  2681.   dc.w end_patt
  2682.  
  2683. p7eb:
  2684.   dc.w new_env
  2685.   dc.l bassde
  2686.     dc.w    new_snd
  2687.     dc.l    slur1
  2688.   dc.w e04,cr,rest,cr
  2689.     dc.w    new_snd
  2690.     dc.l    slur1
  2691.   dc.w e04,cr
  2692.   dc.w new_env
  2693.   dc.l qCLAPE
  2694.     dc.w    new_snd
  2695.     dc.l    slur1
  2696.   dc.w c04,cr
  2697.   dc.w end_patt
  2698.  
  2699.  
  2700. **************************************************************
  2701.  
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.     ; sample parameters
  2708.  
  2709.  
  2710. kick
  2711.         dc.w 1  
  2712.              dc.l kickd
  2713.              dc.w 1916/2 
  2714.              dc.l restd
  2715.              dc.w 16/2 
  2716.  
  2717. snare
  2718.         dc.w 1  
  2719.              dc.l snared
  2720.              dc.w 3577/2 
  2721.              dc.l restd
  2722.              dc.w 16/2 
  2723.  
  2724. tom1        dc.w 1  
  2725.              dc.l tom1d
  2726.              dc.w 3739/2 
  2727.              dc.l restd
  2728.              dc.w 16/2 
  2729.  
  2730.  
  2731. guit        dc.w 1  
  2732.              dc.l guitd
  2733.              dc.w 27144/2 
  2734.              dc.l restd
  2735.              dc.w 16/2 
  2736. slur1
  2737.         dc.w 1  
  2738.              dc.l slur1d
  2739.              dc.w  15384/2 
  2740.              dc.l restd
  2741.              dc.w 16/2 
  2742. fingbl
  2743.         dc.w 1  
  2744.              dc.l fingbld
  2745.              dc.w 12896/2 
  2746.              dc.l restd
  2747.              dc.w 16/2 
  2748. cow
  2749.         dc.w 1  
  2750.              dc.l cowd
  2751.              dc.w 1938/2 
  2752.              dc.l restd
  2753.              dc.w 16/2 
  2754. crash
  2755.         dc.w 1  
  2756.              dc.l crashd
  2757.              dc.w 17174/2 
  2758.              dc.l restd
  2759.              dc.w 16/2
  2760. secfto
  2761.         dc.w 1  
  2762.              dc.l secftod
  2763.              dc.w 22736/2 
  2764.              dc.l restd
  2765.              dc.w 16/2
  2766. chrlp
  2767.         dc.w 1  
  2768.              dc.l chrlpd
  2769.              dc.w 12630/2 
  2770.              dc.l chrlpd
  2771.              dc.w 12630/2
  2772. gbig
  2773.         dc.w 1  
  2774.              dc.l bigd+700
  2775.              dc.w 31600/2 
  2776.              dc.l restd
  2777.              dc.w 16/2 
  2778. ebbig
  2779.         dc.w 1  
  2780.              dc.l bigd+32100+100
  2781.              dc.w 31600/2
  2782.              dc.l restd
  2783.              dc.w 16/2 
  2784. ebbigb
  2785.         dc.w 1  
  2786.              dc.l bigd+32100+200
  2787.              dc.w 32000/2
  2788.              dc.l restd
  2789.              dc.w 16/2 
  2790. dbig
  2791.         dc.w 1  
  2792.              dc.l bigd+63700+400
  2793.              dc.w 31600/2 
  2794.              dc.l restd
  2795.              dc.w 16/2 
  2796. dbbig
  2797.         dc.w 1  
  2798.              dc.l bigd+94500+700+500
  2799.              dc.w 31700/2 
  2800.              dc.l restd
  2801.              dc.w 16/2 
  2802. jet
  2803.         dc.w 1  
  2804.              dc.l jetd
  2805.              dc.w 5590/2 
  2806.              dc.l jetd
  2807.              dc.w 5590/2 
  2808. restd:
  2809. rest_data:
  2810.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  2811.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  2812.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  2813.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  2814.  
  2815.  
  2816. og        dc.w 0,35,255
  2817. kick_env        dc.w 0,64,255
  2818. x_env:            dc.w 0,54,255
  2819. guit_env        dc.w 0,44,255
  2820. flt1_env:        dc.w 0,35,255
  2821. jet_env        dc.w 0,64,64,59,59,54,54,49,49,44,44,40,40
  2822.         dc.w 35,35,30,30,25,25,20,20,15,15,10
  2823.         dc.w 10,10,10,10,10,11,12,13
  2824.         dc.w 14,15,15,15,15,15,15,15,16,17,18,19
  2825.         dc.w 20,20,20,20,22,24,25,25,25,25,26,27,28,29
  2826.         dc.w 30,30,30,30,30,30,30,30,31,32,33,34
  2827.         dc.w 35,35,35,35,35,35,35,35,35,36,37,38,39,40,255
  2828. rest_env:    dc.w     0,0,0,0,0,0,0,0,255
  2829.  
  2830. ;**************************************************
  2831.  
  2832.  
  2833.  
  2834. chrlpd            incbin df1:nchrlp1.sam
  2835. crashd            incbin df1:ncrash1.sam
  2836. kickd            incbin df1:kick18.sam
  2837. snared            incbin df1:snare18.sam
  2838. tom1d:            incbin    df1:tom18.sam
  2839. guitd            incbin df1:nguit.sam
  2840. slur1d             incbin df1:nslur1.sam
  2841. fingbld               incbin df1:fingbh.sam
  2842. bigd            incbin df1:f15amiga.sam
  2843. cowd            incbin df1:ncow1.sam
  2844. secftod            incbin df1:secfto.con
  2845. jetd            incbin df1:jetlp1.sam
  2846.  
  2847.  
  2848. ;*************************************************
  2849.  
  2850.  
  2851.