home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: Midwin Amiga / Lowe_MidwinAmiga.adf / midfin.s < prev    next >
Encoding:
Text File  |  1978-05-02  |  72.1 KB  |  3,937 lines

  1.  
  2.     ;    DRIVER AND MUSIC REMAIN COPYRIGHT D.LOWE 
  3.  
  4.     ;         F15II INGAME TUNES and FX
  5.  
  6.  
  7.     ; MIKE
  8.     ; 
  9.     ; I think I have commented everything you need to know
  10.     ; to get it running but dont hesitate to ring if something
  11.     ; is unclear.
  12.  
  13.  
  14.     ;        DAVE LOWE.....0723  870648
  15.  
  16.  
  17. ;        **************************
  18.  
  19.     section issA,code_c    ;must be in low memory for dma access
  20.                 ;DEVPAC PSEUDO OP ..CAN BE DELETED
  21.  
  22.  
  23. ;*****************************************
  24.  
  25.         ;  ALL EQUs
  26.  
  27. a00  equ  508*2
  28. bb00  equ  480*2
  29. b00  equ  453*2
  30.  
  31. c01  equ  428*2
  32. db01  equ  404*2
  33. d01 equ  381*2
  34. eb01  equ  360*2
  35. e01  equ  339*2
  36. f01  equ  320*2
  37. gb01  equ  302*2
  38. g01  equ  285*2
  39. ab01 equ 269*2
  40. a01  equ  508
  41. bb01  equ  480
  42. b01  equ  453
  43.  
  44. c02  equ  428
  45. db02  equ  404
  46. d02  equ  381
  47. eb02  equ  360
  48. e02  equ  339
  49. f02  equ  320
  50. gb02  equ  302
  51. g02  equ  285
  52. ab02 equ 269
  53. a02  equ  254
  54. bb02  equ  240
  55. b02  equ  226
  56.  
  57. c03  equ  214
  58. db03  equ  202
  59. d03  equ  190
  60. eb03  equ  180
  61. e03  equ  170
  62. f03  equ  160
  63. gb03  equ  151
  64. g03  equ  143
  65. ab03 equ 135
  66. a03  equ  127
  67.  
  68. bb03  equ  480*2
  69. b03  equ  453*2
  70.  
  71. c04  equ  428*2
  72. db04  equ  404*2
  73. d04 equ  381*2
  74. eb04  equ  360*2
  75. e04  equ  339*2
  76. f04  equ  320*2
  77. gb04  equ  302*2
  78. g04  equ  285*2
  79. ab04 equ 269*2
  80. a04  equ  508
  81. bb04  equ  480
  82. b04  equ  453
  83.  
  84. c05  equ  428
  85. db05  equ  404
  86. d05  equ  381
  87. eb05  equ  360
  88. e05  equ  339
  89. f05  equ  320
  90. gb05  equ  302
  91. g05  equ  285
  92. ab05 equ 269
  93. a05  equ  254
  94. bb05  equ  240
  95. b05  equ  226
  96.  
  97. c06  equ  214
  98. db06  equ  202
  99. d06  equ  190
  100. eb06  equ  180
  101. e06  equ  170
  102. f06  equ  160
  103. gb06  equ  151
  104. g06  equ  143
  105. ab06 equ 135
  106. a06  equ  127
  107. bb06  equ  480*2
  108. b06  equ  453*2
  109.  
  110. c07  equ  428*2
  111. db07  equ  404*2
  112. d07 equ  381*2
  113. eb07  equ  360*2
  114. e07  equ  339*2
  115. f07  equ  320*2
  116. gb07  equ  302*2
  117. g07  equ  285*2
  118. ab07 equ 269*2
  119. a07  equ  508
  120. bb07  equ  480
  121. b07  equ  453
  122.  
  123. c08  equ  428
  124. db08  equ  404
  125. d08  equ  381
  126. eb08  equ  360
  127. e08  equ  339
  128. f08  equ  320
  129. gb08  equ  302
  130. g08  equ  285
  131. ab08 equ 269
  132. a08  equ  254
  133. bb08  equ  240
  134. b08  equ  226
  135.  
  136.  
  137. v equ 0
  138.  
  139. no_loop equ 0
  140. loop equ 0
  141. chann1reg   equ $dff0a0    
  142. chann2reg   equ $dff0b0
  143. chann3reg   equ $dff0c0
  144. chann4reg   equ $dff0d0
  145. dmacon     equ $dff096
  146. int_bf_int   equ   $dff01e
  147. int_bf_w    equ   $dff09a
  148. vhposr     equ   $dff006
  149. in_line    equ   0
  150. new_snd    equ   4
  151. end_song     equ   1
  152. end_patt    equ   8
  153. new_env    equ   12
  154. pbend     equ   16
  155.  
  156. ;cr  equ   16
  157. ;tq1 equ 7
  158. ;tq2 equ 6
  159. ;tq equ 8
  160. ;q equ cr/2
  161. ;sq equ q/2
  162.  
  163. hi: equ 223
  164. lo:  equ 446
  165.  
  166. r22    equ 134
  167. r20    equ 179        ;correctum
  168. r19    equ 150
  169. r18    equ 178
  170. r17    equ 200
  171. r16:    equ 227        ;correctum
  172. r15:    equ 249
  173. r13:    equ 305
  174. r12:    equ 333
  175. r11:    equ 361
  176. r10:    equ 389
  177. r9:    equ 419
  178. r8:    equ 446
  179. r7:    equ 446+112
  180. r6:    equ 446+223
  181. r5:    equ 446+223+112
  182. r4:    equ 446*2
  183. r3:    equ 446*3
  184. r2:    equ 446*4
  185. r1:    equ 446*8
  186.  
  187.  
  188. filter: equ $bfe001
  189. filter_on equ 44
  190. filter_off equ 48
  191.  
  192. modon     equ   20
  193. pboff     equ   24
  194. modoff     equ   28
  195. rest     equ 32
  196. end_fxp  equ 36
  197. end_fx3  equ 36
  198. end_fx4  equ 40
  199. acc    equ 52
  200. repeat    equ 56
  201. down      equ   1
  202. up       equ   2
  203.  
  204. ;***************************************************************
  205.  
  206.  
  207.  ;    THIS IS THE CONTROL SECTION FOR TESTING AS A STAND ALONE PRG. 
  208.  
  209.     ;       AND CAN BE DELETED WHEN NOT REQUIRED
  210.  
  211.  
  212.     jsr select_new_song
  213.  
  214. testloop:
  215.     jsr delay    ;wait for scan line  at 50hz on pal
  216.  
  217.     jsr driver
  218.  
  219.         bra testloop
  220.  
  221.  
  222. delay:
  223.     tst.w fxtimer
  224.     bne no_test
  225.     clr.l d0
  226.     move.b $bfe001,d0
  227.     btst #6,d0
  228.     bne no_test1
  229.     move.w #10,fxtimer
  230.     bra testfx4
  231. no_test
  232.     subq #1,fxtimer
  233. no_test1
  234.     clr.l d0
  235.         move.w vhposr,d0
  236.         andi.w #%1111111100000000,d0
  237.         cmpi.w #%1111111100000000,d0
  238.  
  239.     bne no_test1
  240.     rts
  241.  
  242. testfx4:  
  243.  
  244.     jsr    kill_chip
  245.     move.w #1,int_disable
  246.     clr.l d0
  247.     move.b $bfe001,d0
  248.     btst #6,d0
  249.     beq testfx4
  250.  
  251.     move.l song_buffer,d0
  252.     addq.l #1,d0
  253.     cmp.l    #18,d0
  254.     bne nores
  255.     move.l #1,d0
  256. nores    move.l d0,song_buffer
  257.     jsr    select_new_song
  258.  
  259.  
  260.     ;move.l fx_last,d0
  261.     ;move.l d0,fx_kill
  262.  
  263.     ;jsr kill_loopfx        ;only one fx at a time
  264.  
  265.  
  266. no_k
  267.         move.l fx_no,fx_number
  268.     move.l fx_no,fx_last
  269.     addq.l #1,fx_no
  270.     move.l    max_fx,d0
  271.         cmp.l fx_no,d0
  272.     bne noreset
  273.     move.l #1,fx_no    
  274. noreset: 
  275.     jsr set_up_fx
  276.     bra no_test    
  277.  
  278. fxtc:          dc.w 10
  279. fx_no:         dc.l  1
  280. fx_last        dc.l  0
  281.  
  282.  
  283. ;        END OF CONTROL (DELETABLE) SECTION
  284.  
  285. ;**********************************************************
  286.  
  287. ; --------------------------------------------------------------
  288.  
  289. ;    MAIN VARIABLES TO BE ACCESSED BY PROGRAMMER DURING RUNTIME
  290.  
  291.  
  292. fx_number:     dc.l 0 ;     number of fx required here...see list
  293. fx_kill        dc.l 0 ;     number of fx to kill/only needed for looped fx
  294.  
  295. song_buffer     dc.l 1 ;     number of piece of music required here ie.1 to 5
  296.  
  297. music_disable:  dc.w 0 ;     1 = disable music
  298. fx_disable:     dc.w 1 ;     1 = disable fx  (currently disabled)
  299.  
  300.             ;These flags disable the individual channels
  301.             ;when set to 1.
  302.             ;the music driver uses channel 4 least
  303.             ;3 next least etc...
  304.  
  305.  
  306. fxc1        dc.l 0    ;1=disable 0 to re-enable/channel 1
  307. fxc2          dc.l 0    ;1=disable 0 to re-enable/channel 2
  308. fxc3        dc.l 0    ;1=disable 0 to re-enable/channel 3
  309. fxc4          dc.l 0    ;1=disable 0 to re-enable/channel 4
  310.  
  311.  
  312.  
  313.  
  314.  
  315. ;    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  316.  
  317. ;  THESE VARIABLES ARE USED INTERNALLY BY THE DRIVER
  318. fxr1         dc.l 0  
  319. fxr2         dc.l 0  
  320. fxr3         dc.l 0  
  321. fxr4         dc.l 0  
  322. fx1_flag    dc.w 0
  323. fx2_flag    dc.w 0
  324. fx3_flag    dc.w 0
  325. fx4_flag    dc.w 0
  326. fxtimer        dc.w 0
  327. gen        dc.w 0
  328. int_disable    dc.w 0
  329. altpf         dc.w 0
  330. kill_flag    dc.w 0
  331. ;  *******************************************************
  332.  
  333. ;  CALL THIS SUBROUTINE TO SET UP THE REQIURED FX
  334. ;  on entry it requires the fx number to be in "fx_number"(see above)
  335. ;  
  336.  
  337. set_up_fx
  338.     movem.l d5/a2,-(a7)    ;save used registers
  339.     move.l #1,d0
  340.     cmp fx_number,d0
  341.     bne check3        ;engine to 4
  342.  
  343.     tst.l fxc4
  344.     bne check3
  345. use4:    
  346.     move.w #%0000000000001000,d5
  347.     lea chann4reg,a2
  348.     jsr end_fx4p
  349.     move.l fx_number,fxr4
  350.     move.l fx_number,fxc4
  351.     move.l #0,fx_number
  352.     bra no_fx
  353. check3:    tst.l fxc3
  354.     bne check2
  355. use3:
  356.     move.w #%0000000000000100,d5
  357.     lea chann3reg,a2
  358.     jsr end_fx3p
  359.     move.l fx_number,fxr3
  360.     move.l fx_number,fxc3
  361.     move.l #0,fx_number
  362.     bra no_fx
  363. check2:    tst.l fxc2
  364.     bne check1
  365. use2:
  366.     move.w #%0000000000000010,d5
  367.     lea chann2reg,a2
  368.     jsr end_fx2p
  369.     move.l fx_number,fxr2
  370.     move.l fx_number,fxc2
  371.     move.l #0,fx_number
  372.     bra no_fx
  373. check1:    tst.l fxc1
  374.     bne use3
  375. use1:
  376.     move.w #%0000000000000001,d5
  377.     lea chann1reg,a2
  378.     jsr end_fx1p
  379.     move.l fx_number,fxr1
  380.     move.l fx_number,fxc1
  381.     move.l #0,fx_number
  382. no_fx
  383.     movem.l (a7)+,d5/a2    ;restore registers
  384.     rts
  385.  
  386. ;*************************************************
  387. ;          CALL HERE TO KILL ANY LOOPED FX...
  388. ;       after putting the number of the fx you want to kill
  389. ;            into fx_kill
  390.  
  391. kill_loopfx
  392.  
  393.     movem.l d5/a2,-(a7)    ;save used registers
  394.     move.l fx_kill,d5
  395.     cmp.l fxc1,d5
  396.     bne k2
  397.     move.w #%0000000000000001,d5
  398.     lea chann1reg,a2
  399.     jsr end_fx1p
  400.     bra error
  401. k2    cmp.l fxc2,d5
  402.     bne k3
  403.     move.w #%0000000000000010,d5
  404.     lea chann2reg,a2
  405.     jsr end_fx2p
  406.     bra error
  407. k3    cmp.l fxc3,d5
  408.     bne k4
  409.     move.w #%0000000000000100,d5
  410.     lea chann3reg,a2
  411.     jsr end_fx3p
  412.     bra error
  413. k4    cmp.l fxc4,d5
  414.     bne error
  415.     move.w #%0000000000001000,d5
  416.     lea chann2reg,a2
  417.     jsr end_fx4p
  418. error
  419.     clr.l fx_kill
  420.     movem.l (a7)+,d5/a2    ;restore registers
  421.     rts
  422. ;*************************************************
  423.  
  424.     ; CALL HERE TO KILL ANY SOUND for whatever reason
  425.  
  426. kill_chip:
  427.     move.w #%0000000000001111,dmacon
  428.     move.l rest_data,chann1reg
  429.     move.l rest_data,chann2reg
  430.     move.l rest_data,chann3reg
  431.     move.l rest_data,chann4reg
  432.     move.w #16,chann1reg+4    
  433.     move.w #16,chann2reg+4    
  434.     move.w #16,chann3reg+4    
  435.     move.w #16,chann4reg+4    
  436.     move.w #0,chann1reg+8
  437.     move.w #0,chann2reg+8
  438.     move.w #0,chann3reg+8
  439.     move.w #0,chann4reg+8
  440.     move.w #1,chann1reg+6
  441.     move.w #1,chann2reg+6
  442.     move.w #1,chann3reg+6
  443.     move.w #1,chann4reg+6
  444.     move.l #0,fxr1
  445.     move.l #0,fxr2
  446.     move.l #0,fxr3
  447.     move.l #0,fxr4
  448.     move.w #0,fx1_flag
  449.     move.w #0,fx2_flag
  450.     move.w #0,fx3_flag
  451.     move.w #0,fx4_flag
  452.     move.l #0,fxc1
  453.     move.l #0,fxc2
  454.     move.l #0,fxc3
  455.     move.l #0,fxc4
  456.     rts
  457. ;****************************************
  458.  
  459. ;  CALL HERE TO SELECT WHICH PIECE OF MUSIC TO PLAY
  460. ;  AFTER PLACING NUMBER (1 to 3) IN "SONG_BUFFER"..see above
  461. ;  a call to this routine will initiliase the driver/kill any sound etc.      
  462. ;  make sure this routine has been called before running the interrupt
  463. ;  driven section....see below
  464.  
  465. select_new_song:
  466.  
  467.     move.w #1,int_disable
  468.     movem.l d0/d1/a0/a1,-(a7)    ;save used registers
  469.     move.w music_disable,gen
  470.     move.w #1,music_disable
  471.         jsr kill_chip           
  472.     clr.l d0
  473.         move.w #204,d0
  474.         lea gvars,a0
  475. clloop: clr.w (a0)+        
  476.         dbra  d0,clloop
  477.     tst.l song_buffer
  478.     beq no_song
  479.         move.l song_buffer,d1
  480.     add.l d1,d1
  481.      add.l d1,d1
  482.      add.l d1,d1
  483.      add.l d1,d1
  484.         LEA  SONG_TABLE-16,A1
  485.         add.l d1,a1      
  486.         MOVE.L (A1)+,WSONG1    
  487.         move.l (a1)+,wsong2    
  488.         move.l (a1)+,wsong3
  489.     move.l (a1),wsong4
  490.         MOVE.L #pstart,PATTR1
  491.         MOVE.L #pstart,PATTR2
  492.         MOVE.L #pstart,PATTR3
  493.     move.l #pstart,pattr4
  494.         move.l #sstart,songr1
  495.         MOVE.L #sstart,SONGR2
  496.         MOVE.L #sstart,SONGR3
  497.     move.l #sstart,songr4
  498. no_song
  499.     move.w #1,ch1vars
  500.     move.w #2,ch2vars
  501.     move.w #3,ch3vars
  502.     move.w #4,ch4vars
  503.     move.w #6,ch4fxvars
  504.     move.w #5,ch3fxvars
  505.     move.w #7,ch2fxvars
  506.     move.w #8,ch1fxvars
  507.     move.w gen,music_disable
  508.     clr.w int_disable
  509.     movem.l (a7)+,d0/d1/a0/a1    ;restore registers
  510.         rts
  511.  
  512. ;**************************************************
  513.  
  514. ;  CALL HERE ON A 50hz INTERRUPT DURING RUNTIME
  515. ;  TO PLAY FX AND TUNES
  516.  
  517. driver:  
  518.     tst.w int_disable
  519.     beq process_data
  520.     rts        
  521. process_data
  522.     movem.l d0-d6/a0-a6,-(a7)    ;save used registers
  523.  
  524.  
  525. ch1:
  526.     tst.w fx_disable
  527.     bne test_music1
  528.     tst.l fxr1
  529.     bne   ch1j1
  530.     tst.l fxc1
  531.     beq test_music1
  532.     bra ch1j3
  533. ch1j2    jsr run_dummy1
  534.     jsr run_fx1
  535.     bra ch2
  536. ch1j1
  537.     jsr set_up1
  538. ch1j3    tst.w music_disable    
  539.     beq ch1j2
  540.     jsr run_fx1
  541.     bra ch2
  542. test_music1
  543.     tst.w music_disable
  544.     bne ch2
  545.     jsr run_music1
  546.     bra ch2
  547.     ;***********************
  548.  
  549.     ; channel 1 subroutines
  550.  
  551. run_dummy1    
  552.      lea ch1vars,a0
  553.      lea dummy_reg,a2 
  554.      move.w #0,d5 
  555.      jsr sect1    
  556.     rts
  557.  
  558. set_up1    
  559.          move.l fxr1,d0
  560.          add d0,d0
  561.          add d0,d0
  562.          lea  fxjump_table-4,A1
  563.      add.l d0,a1
  564.          move.l (a1),currfx1
  565.       clr.l fxr1
  566.      clr.w fxintc1
  567.       rts
  568.   
  569.      
  570. run_fx1
  571.     lea ch1fxvars,a0
  572.        lea chann1reg,a2
  573.       move.w #%0000000000000001,d5 
  574.      move.w #%1000001000000001,d1 
  575.      jsr sect1
  576.     rts
  577.  
  578. run_music1
  579.     lea ch1vars,a0
  580.        lea chann1reg,a2
  581.       move.w #%0000000000000001,d5 
  582.       move.w #%1000001000000001,d1 
  583.       jsr sect1     
  584.     rts
  585.  
  586.     ;  **************************
  587. ch2
  588.     tst.w fx_disable
  589.     bne test_music2
  590.     tst.l fxr2
  591.     bne   ch2j1
  592.     tst.l fxc2
  593.     beq test_music2
  594.     bra ch2j3
  595. ch2j2    jsr run_dummy2
  596.     jsr run_fx2
  597.     bra ch3
  598. ch2j1
  599.     jsr set_up2
  600. ch2j3    tst.w music_disable    
  601.     beq ch2j2
  602.     jsr run_fx2
  603.     bra ch3
  604.  
  605. test_music2
  606.     tst.w music_disable
  607.     bne ch3
  608.     jsr run_music2
  609.     bra ch3
  610.     ;***********************
  611.     ; channel 2 subroutines
  612. run_dummy2    
  613.      lea ch2vars,a0
  614.      lea dummy_reg,a2 
  615.      move.w #0,d5 
  616.      jsr sect1    
  617.     rts
  618.  
  619. set_up2    
  620.          move.l fxr2,d0
  621.          add d0,d0
  622.          add d0,d0
  623.          lea  fxjump_table-4,A1
  624.      add.l d0,a1
  625.          move.l (a1),currfx2
  626.       clr.l fxr2
  627.      clr.w fxintc2
  628.       rts
  629.   
  630.      
  631. run_fx2
  632.     lea ch2fxvars,a0
  633.        lea chann2reg,a2
  634.       move.w #%0000000000000010,d5 
  635.      move.w #%1000001000000010,d1 
  636.      jsr sect1
  637.     rts
  638.  
  639. run_music2
  640.     lea ch2vars,a0
  641.        lea chann2reg,a2
  642.       move.w #%0000000000000010,d5 
  643.       move.w #%1000001000000010,d1 
  644.       jsr sect1     
  645.     rts
  646.  
  647.     ;  **************************
  648.  
  649. ch3:
  650.     tst.w fx_disable
  651.     bne test_music3
  652.     tst.l fxr3
  653.     bne   ch3j1
  654.     tst.l fxc3
  655.     beq test_music3
  656.     bra ch3j3
  657. ch3j2    jsr run_dummy3
  658.     jsr run_fx3
  659.     bra ch4
  660. ch3j1
  661.     jsr set_up3
  662. ch3j3    tst.w music_disable    
  663.     beq ch3j2
  664.     jsr run_fx3
  665.     bra ch4
  666.  
  667. test_music3
  668.     tst.w music_disable
  669.     bne ch4
  670.     jsr run_music3
  671.     bra ch4
  672.  
  673.     ;***********************
  674.  
  675.     ; channel 3 subroutines
  676.  
  677. run_dummy3    
  678.      lea ch3vars,a0
  679.      lea dummy_reg,a2 
  680.      move.w #0,d5 
  681.      jsr sect1    
  682.     rts
  683.  
  684. set_up3    
  685.          move.l fxr3,d0
  686.          add d0,d0
  687.          add d0,d0
  688.          lea  fxjump_table-4,A1
  689.      add.l d0,a1
  690.          move.l (a1),currfx3
  691.       clr.l fxr3
  692.      clr.w fxintc3
  693.       rts
  694.   
  695.      
  696. run_fx3
  697.     lea ch3fxvars,a0
  698.        lea chann3reg,a2
  699.       move.w #%0000000000000100,d5 
  700.      move.w #%1000001000000100,d1 
  701.      jsr sect1
  702.     rts
  703.  
  704. run_music3
  705.     lea ch3vars,a0
  706.        lea chann3reg,a2
  707.       move.w #%0000000000000100,d5 
  708.       move.w #%1000001000000100,d1 
  709.       jsr sect1     
  710.     rts
  711.  
  712.     ;  **************************
  713.  
  714. ch4:
  715.     tst.w fx_disable
  716.     bne test_music4
  717.     tst.l fxr4
  718.     bne   ch4j1
  719.     tst.l fxc4
  720.     beq test_music4
  721.     bra ch4j3
  722. ch4j2    jsr run_dummy4
  723.     jsr run_fx4
  724.     bra no4
  725. ch4j1
  726.     jsr set_up4
  727. ch4j3    tst.w music_disable    
  728.     beq ch4j2
  729.     jsr run_fx4
  730.     bra no4
  731.  
  732. test_music4
  733.     tst.w music_disable
  734.     bne no4
  735.     jsr run_music4
  736. no4    
  737.     movem.l (a7)+,d0-d6/a0-a6    ;restore registers
  738.     rts
  739.  
  740.     ;***********************
  741.  
  742.     ; channel 4 subroutines
  743.  
  744. run_dummy4    
  745.      lea ch4vars,a0
  746.      lea dummy_reg,a2 
  747.      move.w #0,d5 
  748.      jsr sect1    
  749.     rts
  750.  
  751. set_up4    
  752.          move.l fxr4,d0
  753.          add d0,d0
  754.          add d0,d0
  755.          lea  fxjump_table-4,A1
  756.      add.l d0,a1
  757.          move.l (a1),currfx4
  758.       clr.l fxr4
  759.      clr.w fxintc4
  760.       rts
  761.   
  762.      
  763. run_fx4
  764.     lea ch4fxvars,a0
  765.        lea chann4reg,a2
  766.       move.w #%0000000000001000,d5 
  767.      move.w #%1000001000001000,d1 
  768.      jsr sect1
  769.     rts
  770.  
  771. run_music4
  772.     lea ch4vars,a0
  773.        lea chann4reg,a2
  774.       move.w #%0000000000001000,d5 
  775.       move.w #%1000001000001000,d1 
  776.       jsr sect1     
  777.     rts
  778.     ;  **************************
  779.  
  780. sect1: tst.w 0(a0)
  781.     bne s1j1
  782.     rts
  783.  
  784. s1j1:    tst.w 2(a0)
  785.         beq sect3       
  786.         cmpi.w #1,2(a0)
  787.         beq sect4
  788.  
  789.         cmpi.w #3,4(a0)    
  790.         beq part2       
  791.     
  792. mode_switch:  subq.w #1,2(a0)     
  793.  
  794. check_effects: clr.w altpf      
  795.         move.w 6(a0),d2    
  796.         tst.w 8(a0)      
  797.         beq check_mod
  798.         tst.w 14(a0)      
  799.         beq cont_bend
  800.         subq.w #1,14(a0)
  801.         bra check_mod
  802. cont_bend:   addq.w #1,altpf    
  803.         move.w 10(a0),d3    
  804.         move.w 12(a0),d4    
  805.         cmpi.w #1,8(a0)
  806.         beq pbup
  807.     
  808.         sub.w d3,d2
  809.         cmp.w d2,d4
  810.         bcs check_mod
  811.         bra fbend
  812.  
  813. pbup:     add.w d3,d2
  814.         cmp.w d2,d4
  815.         bcc check_mod
  816. fbend:     move.w d4,d2
  817.         clr.w 8(a0)      
  818. check_mod:   tst.w 16(a0)
  819.         beq send_alt_pitch
  820.    
  821.  
  822.     tst.w  58(a0)
  823.     beq st_ok
  824.     subq.w #1,58(a0)
  825.     bra send_alt_pitch
  826. st_ok:
  827.         tst.w 50(a0)
  828.         beq cont_mod
  829.         subq #1,50(a0)
  830.         bra send_alt_pitch
  831. cont_mod:    move.w 52(a0),50(a0)  
  832.         addq #1,altpf
  833.         cmpi #3,16(a0)
  834.         bcc addmod
  835.     
  836.         move.w 56(a0),d3 
  837.         sub.w d3,d2
  838.         addq.w #1,16(a0)  
  839.         bra send_alt_pitch
  840. addmod:
  841.  
  842.         move.w 54(a0),d3 
  843.         add.w d3,d2
  844.         addq.w #1,16(a0)
  845.         cmpi.w #5,16(a0)
  846.        bne send_alt_pitch
  847.         move.w #1,16(a0)  
  848.  
  849. send_alt_pitch: tst.w altpf
  850.         beq send_env
  851.         move.w d2,6(a0)  
  852.         move.w d2,6(a2)  
  853.  
  854. send_env: 
  855.  
  856.     cmpi #6,(a0)
  857.     beq norm_env    
  858.     cmpi #5,(a0)
  859.     bne do_env_check
  860.  
  861.     tst.w fx4_flag
  862.     beq norm_env
  863.     bra low_vol
  864.  
  865. do_env_check:
  866.     move.w fx3_flag,d0
  867.     or.w fx4_flag,d0
  868.     cmpi.w  #0,d0
  869.     beq norm_env
  870. low_vol:    
  871.     move.l 18(a0),a1    
  872.         cmpi.w #255,(a1)
  873.         beq evj1
  874.     move.w (a1)+,d0
  875. evj2:    sub.w  62(a0),d0
  876.     bcc no_over
  877.     move.w 0,d0
  878. no_over:
  879.         move.w d0,8(a2) 
  880.     bra fint        
  881.  
  882. evj1:   subq.l #2,a1
  883.     move.w (a1)+,d0
  884.     bra evj2
  885.  
  886. norm_env:
  887.     move.l 18(a0),a1    
  888.         cmpi.w #255,(a1)
  889.         beq env_finished
  890.     cmpi.w #1,66(a0)    
  891.     bne    no_acc 
  892.  
  893.     clr.l d0
  894.     move.w (a1)+,d0
  895.     add.w 64(a0),d0    
  896.     move.w d0,8(a2)    
  897.     move.l a1,18(a0)
  898.     rts        
  899.  
  900. no_acc:
  901. resu:   move.w (a1)+,8(a2)   
  902. fint:   move.l a1,18(a0)    
  903.     rts
  904.  
  905. env_finished:
  906.      subq.l #2,a1    
  907.      bra resu
  908.  
  909.  
  910. one_shot_note: move.w #3,4(a0)     
  911.         move.l 38(a0),(a2)
  912.         move.w 42(a0),4(a2)
  913.         move.w d1,dmacon     
  914.         bra send_env
  915.  
  916.  
  917. part2:                         
  918.         move.l 44(a0),(a2)
  919.         move.w 48(a0),4(a2)
  920.         subq.w #1,2(a0)      
  921.         move.w #1,4(a0)
  922.         bra check_effects
  923.  
  924. sect3:
  925.     move.w 0,66(a0)    
  926.  
  927.     move.l 22(a0),a1  
  928. control_ret: move.w (a1)+,d0  
  929.     cmpi.w #100,d0   
  930.     bls sect5   
  931.   
  932. acc_note:
  933.     move.w d0,6(a0)  
  934.     move.w d0,6(a2)  
  935.     move.w (a1)+,2(a0) 
  936.     subq.w #1,2(a0)  
  937.     move.l a1,22(a0)  
  938.     move.l 34(a0),18(a0) 
  939.     move.w 60(a0),58(a0) 
  940.  
  941.  
  942.     tst.w 16(a0)
  943.     beq no_mod_res
  944.     move.w #1,16(a0)
  945. no_mod_res:
  946.     cmpi.w #0,4(a0)
  947.     beq do_loop
  948.     bra one_shot_note    
  949.  
  950.  
  951. do_loop:    move.w d1,dmacon   
  952.         bra send_env
  953.  
  954. do_rest:
  955.     move.w (a1)+,2(a0) 
  956.     subq.w #1,2(a0)  
  957.     move.l a1,22(a0)  
  958.     move.l  #rest_env,18(a0)
  959.  
  960.         move.w #0,8(a2)
  961.         bra send_env
  962.    
  963. sect4:
  964.         cmpi.w #0,4(a0)
  965.         beq noof
  966.         move.w d5,dmacon   
  967. noof:     subq.w #1,2(a0)
  968.         bra check_effects
  969.    
  970. sect5:     move.l #jump_table,a3
  971.         move.l (a3,d0),a4
  972.         jmp (a4)
  973.  
  974. jump_table: 
  975.     dc.l  in_line_data
  976.         dc.l  nsound
  977.         dc.l  patt_end
  978.         dc.l  get_env
  979.         dc.l  check_pbend
  980.         dc.l  do_mod
  981.         dc.l  bend_off
  982.         dc.l  mod_off
  983.         dc.l  do_rest
  984.         dc.l  end_fx
  985.         dc.l  end_fx
  986.     dc.l  s_f_on
  987.     dc.l  s_f_off
  988.     dc.l  set_acc
  989.     dc.l  rept
  990.  
  991. in_line_data:
  992.  
  993.         nop
  994.         rts
  995.  
  996. rept:
  997.     move.l (a1),a1
  998.     bra control_ret
  999.  
  1000. s_f_on: 
  1001.     bclr #1,filter
  1002.     bra control_ret
  1003. s_f_off:
  1004.     bset #1,filter
  1005.     bra control_ret
  1006.  
  1007. nsound:    move.l (a1)+,a3     
  1008.         cmpi.w #0,(a3)
  1009.         bne one_shot_sound
  1010.         move.w (a3)+,4(a0)    
  1011.         move.l (a3)+,(a2)     
  1012.         move.w (a3),4(a2)    
  1013.         jmp control_ret
  1014.  
  1015. one_shot_sound:
  1016.         move.w (a3)+,4(a0)
  1017.         move.l (a3)+,38(a0)   
  1018.         move.l (a3)+,42(a0)
  1019.         move.l (a3),46(a0)
  1020.         jmp control_ret
  1021.  
  1022. patt_end:
  1023.  
  1024.         move.l 26(a0),a1    
  1025.         cmpi.l #0,(a1)     
  1026.         beq song_control
  1027.         addq.l #4,26(a0)    
  1028.         move.l (a1),a1     
  1029.         jmp control_ret
  1030. get_env: 
  1031.        move.l (a1)+,a4 
  1032.     move.l (a4)+,62(a0)    
  1033.     
  1034.     move.l  a4,34(a0)    
  1035.     
  1036.         bra control_ret
  1037.  
  1038. check_pbend:
  1039.      move.l (a1)+,8(a0)
  1040.         move.l (a1)+,12(a0)
  1041.         bra control_ret
  1042.  
  1043. do_mod:    move.w #1,16(a0)  
  1044.         move.l (a1)+,50(a0)
  1045.         move.l (a1)+,54(a0)
  1046.         move.l (a1)+,58(a0)
  1047.         bra control_ret
  1048.  
  1049. bend_off:   clr.w 8(a0)
  1050.         bra control_ret
  1051.  
  1052. mod_off:    clr.w 16(a0)
  1053.         bra control_ret
  1054.  
  1055.  
  1056. end_fx:    
  1057.     cmpi.w #6,(a0)
  1058.     beq end_fx4p
  1059.     cmpi.w #5,(a0)
  1060.     beq end_fx3p
  1061.     cmpi.w #7,(a0)
  1062.     beq end_fx2p
  1063.  
  1064. end_fx1p:
  1065.         move.w d5,dmacon   
  1066.     move.w  #1,chann1reg+6
  1067.     move.w #0,8(a2)
  1068.     move.l #0,fxc1
  1069.     rts
  1070.  
  1071. end_fx2p:
  1072.     move.w d5,dmacon 
  1073.     move.w  #1,chann2reg+6
  1074.         move.w #0,8(a2) 
  1075.     move.l #0,fxc2
  1076.         rts
  1077.  
  1078.  
  1079. end_fx3p:
  1080.         move.w d5,dmacon   
  1081.     move.w  #1,chann3reg+6
  1082.     move.w #0,8(a2)
  1083.     move.l #0,fxc3
  1084.     rts
  1085.  
  1086. end_fx4p:
  1087.     move.w d5,dmacon 
  1088.     move.w  #1,chann4reg+6
  1089.         move.w #0,8(a2) 
  1090.     move.l #0,fxc4
  1091.         rts
  1092.  
  1093. set_acc: move.w #1,66(a0) 
  1094.     bra control_ret
  1095.  
  1096. song_control:
  1097.         addq.l #4,a1
  1098.         move.l 30(a0),26(a0)
  1099.         move.l 26(a0),a1
  1100.         addq.l #4,26(a0)
  1101.         move.l (a1),a1
  1102.         jmp control_ret
  1103.  
  1104.  
  1105.     ;"""""""""""""""""""""""""""""""""""""""""""""""""
  1106.  
  1107.     ;;; DATA
  1108.  
  1109. song_table:
  1110.     dc.l s65,s66,s67,s68    ;1  Main theme        L    done
  1111.     dc.l s1,s2,s3,s4    ;2  restful loop    L    done    
  1112.     dc.l s41,s42,s43,s44    ;3  threatening        S    done
  1113.     dc.l s5,s6,s7,s8    ;4  celebration scene   L    done
  1114.     dc.l s9,s10,s11,s12    ;5  journey        S    done
  1115.     dc.l s13,s14,s15,s16    ;6  anticipation    S    done
  1116.     dc.l s17,s18,s19,s20    ;7  pastoral loop    L    done
  1117.     dc.l s21,s22,s23,s24    ;8  fast + dangerous    S    done
  1118.     dc.l s25,s26,s27,s28    ;9  dramatic loop    L    done
  1119.     dc.l s37,s38,s39,s40    ;10  minor anticlimax    L    done
  1120.     dc.l s29,s30,s31,s32    ;11  a few bars of danger music  S done
  1121.     dc.l s33,s34,s35,s36    ;12  minor triumph    S    done
  1122.     dc.l s45,s46,s47,s48    ;13  high drama        S    done
  1123.     dc.l s49,s50,s51,s52    ;14  nostalgia        S    done
  1124.     dc.l s53,s54,s55,s56    ;15  Great triumph scene L     done
  1125.     dc.l s57,s58,s59,s60    ;16  secretive        S    done
  1126.     dc.l s61,s62,s63,s64    ;17  Great disaster scene  S    done
  1127.  
  1128.  
  1129.  
  1130. ;************************************************************
  1131. gvars:
  1132. ch1vars     
  1133.     dc.w 0     
  1134.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1135. pattr1: dc.l 0    
  1136. songr1: dc.l 0    
  1137. wsong1: dc.l 0   
  1138.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1139.  
  1140. ch2vars     
  1141.     dc.w 0     
  1142.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1143. pattr2: dc.l 0    
  1144. songr2: dc.l 0    
  1145. wsong2: dc.l 0    
  1146.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1147.  
  1148. ch3vars 
  1149.     dc.w 0     
  1150.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1151. pattr3: dc.l 0    
  1152. songr3: dc.l 0    
  1153. wsong3: dc.l 0    
  1154.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1155.  
  1156. ch4vars 
  1157.     dc.w 0     
  1158.         dc.w 0,0,0,0,0,0,0,0,0,0     
  1159. pattr4: dc.l 0    
  1160. songr4: dc.l 0    
  1161. wsong4: dc.l 0    
  1162.         dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0   
  1163.  
  1164.  
  1165. ch1fxvars 
  1166.     dc.w 0     
  1167. fxintc1:
  1168.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1169. currfx1:
  1170.     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    
  1171.  
  1172. ch2fxvars 
  1173.     dc.w 0     
  1174. fxintc2:
  1175.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1176. currfx2:
  1177.     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    
  1178.  
  1179.  
  1180. ch3fxvars
  1181.     dc.w 0     
  1182. fxintc3:
  1183.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1184. currfx3:
  1185.     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    
  1186.  
  1187. ch4fxvars 
  1188.     dc.w 0     
  1189. fxintc4:
  1190.     dc.w 0,0,0,0,0,0,0,0,0,0     
  1191. currfx4:
  1192.     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    
  1193. ;************************************************************
  1194.  
  1195. dummy_reg dc.l 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1196.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1197.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1198.         dc.l  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  1199. ;************************************************************
  1200.  
  1201.  
  1202.  
  1203. ;       fx patterns here
  1204.  
  1205. fxjump_table:  
  1206.  
  1207. max_fx    dc.l    0
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213. ;*******************************************************************
  1214.  
  1215. sstart: dc.l 0,end_song
  1216.  
  1217. pstart: dc.w filter_on,pboff,modoff,end_patt
  1218.  
  1219.  
  1220.  
  1221. ;;;;;;;;;;;;;;;;;;;;;    MIDWINTER II  Music Data ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  1222.  
  1223. ;restful loop
  1224.  
  1225. CR      set 24
  1226. tcr1     set 13
  1227. tcr2     set 14
  1228. Q       set cr/2
  1229. tq1      set 4
  1230. tq2      set 5
  1231. SQ      set cr/4
  1232.  
  1233. s1:
  1234.     dc.l    p20
  1235.       dc.l     0,end_song
  1236. s2:
  1237.     dc.l    p1,p2,p3,p4
  1238.         DC.L    0,end_song
  1239. s3:
  1240.     dc.l    p5
  1241.     dc.l     0,end_song
  1242. s4:
  1243.     dc.l    pr,pr,pr,pr
  1244.     dc.l     0,end_song
  1245.  
  1246. pcr:
  1247.       dc.w rest,cr
  1248.       dc.w end_patt
  1249. pr:
  1250.       dc.w rest,cr*4
  1251.       dc.w end_patt
  1252. prf:
  1253.       dc.w rest,cr*1000
  1254.       dc.w end_patt
  1255. pr35:
  1256.     dc.w rest,35
  1257.     dc.w end_patt
  1258. pra:
  1259.     dc.w rest,q*7
  1260.     dc.w end_patt
  1261. pqr:
  1262.       dc.w rest,q
  1263.       dc.w end_patt
  1264. p1:
  1265.       dc.w new_env
  1266.     dc.l org_env
  1267.       dc.w new_snd
  1268.       dc.l sax2
  1269.       dc.w f01,cr,a01,cr,c02,cr,a01,cr
  1270.       dc.w f02,cr,a01,cr
  1271.       dc.w end_patt
  1272. p2:
  1273.       dc.w d01,cr,f01,cr,a01,cr,f01,cr
  1274.       dc.w d02,cr,f01,cr
  1275.       dc.w end_patt
  1276. p4:
  1277.       dc.w c01,cr,e01,cr,g01,cr,e01,cr
  1278.       dc.w c02,cr,e01,cr
  1279.       dc.w end_patt
  1280. p3:
  1281.       dc.w Bb00,cr,d01,cr,f01,cr,d01,cr
  1282.       dc.w Bb01,cr,d01,cr
  1283.       dc.w end_patt
  1284. p5:
  1285.       dc.w new_env
  1286.     dc.l org_env
  1287.       dc.w new_snd
  1288.       dc.l orglp2
  1289.       dc.w F02,cr*6,D02,cr*6,Bb01,cr*6,C02,cr*6
  1290.       dc.w end_patt
  1291. p20:
  1292.       dc.w new_env
  1293.     dc.l org_env
  1294.       dc.w new_snd
  1295.       dc.l sax2
  1296.       dc.w A05,cr*3,G05,cr,A05,cr,C06,cr 
  1297.       dc.w A05,cr*3,G05,cr,A05,cr,C06,cr 
  1298.       dc.w A05,cr*3,G05,cr,A05,cr,C06,cr 
  1299.       dc.w A05,cr*2,G05,cr*4
  1300.       dc.w A05,cr*3,G05,cr,A05,cr,C06,cr 
  1301.       dc.w D06,cr*3,A05,cr,G05,cr,A05,cr 
  1302.       dc.w C06,cr*3,Bb05,cr,A05,cr,Bb05,cr 
  1303.       dc.w A05,cr*2,G05,cr*4
  1304.     dc.w end_patt
  1305. ;****************************************************************
  1306. CR      set 20
  1307. tcr1     set 13
  1308. tcr2     set 14
  1309. Q       set cr/2
  1310. tq1      set 4
  1311. tq2      set 5
  1312. ;tsq     set 3
  1313. ;tsq2     set 2
  1314. SQ      set cr/4
  1315. ;m       set 254
  1316. ;rest     set $fd00
  1317. ;dcr      set cr+q
  1318. ;dq      set q+sq
  1319. ;dsq      set sq+(sq/2)
  1320. ;sb      set cr*4
  1321. ;min      set cr*2
  1322. ;dm      set min+cr
  1323. pcr16:
  1324.       dc.w rest,cr
  1325.       dc.w end_patt
  1326. pr16:
  1327.       dc.w rest,cr*4
  1328.       dc.w end_patt
  1329. pqr16:
  1330.       dc.w rest,q
  1331.       dc.w end_patt
  1332.  
  1333.     EVEN
  1334.  
  1335. ;celebration scene
  1336.  
  1337. s5:
  1338.     dc.l    p1a
  1339.       dc.l     0,end_song
  1340. s6:
  1341.     dc.l    p4a,p5a,p6a,p7a,p8a,p9a,p8a,p5a
  1342.         DC.L     0,end_song
  1343. s7:
  1344.     dc.l    p10q,p10qa,p10q,p10qa
  1345.     dc.l    p10q,p10q,p10q,p10q
  1346. ;    dc.l    p10a,p10a,p10a,p10a,p10a
  1347. ;    dc.l    p10a,p10a,p10a,p10a,p10a
  1348.     dc.l     0,end_song
  1349. s8:
  1350.     dc.l    p99a,p99a,p99a,p99a
  1351.     dc.l    p99b,p99b,p99b,p99b,p99b,p99b,p99b,p99b
  1352.     dc.l     0,end_song
  1353. p1a:
  1354.       dc.w new_env
  1355.     dc.l org_env
  1356.       dc.w new_snd
  1357.       dc.l sax2
  1358.       dc.w rest,cr*2
  1359.     dc.w F05,tcr1,E05,tcr2,D05,tcr1,C05,sq*7
  1360.       dc.w new_snd
  1361.       dc.l shak
  1362.     dc.w G05,2,A05,3,C06,sq,rest,sq*15
  1363.       dc.w new_snd
  1364.       dc.l sax2
  1365.     dc.w F05,tcr1,E05,tcr2,D05,tcr1,C05,sq*7
  1366.       dc.w new_snd
  1367.       dc.l shak
  1368.     dc.w G05,2,A05,3,C06,sq,rest,q,G05,2,A05,3,C06,sq,rest,sq*11
  1369.       dc.w new_snd
  1370.       dc.l sax2
  1371.     dc.w D05,tcr1,C05,tcr2,Bb04,tcr1,C05,cr*2,F04,cr*2
  1372.     dc.w G04,q*3
  1373. ;    dc.w G04,3,A04,2,G04,3,A04,2,G04,3,A04,2
  1374. ;    dc.w G04,3,A04,2,G04,3,A04,2,G04,sq
  1375.     dc.w Bb04,q*3,D05,cr
  1376.     dc.w C05,q*3
  1377. ;    dc.w C05,3,D05,2,C05,3,D05,2,C05,3,D05,2
  1378. ;    dc.w C05,3,D05,2,C05,3,D05,2,C05,sq
  1379.     dc.w D05,q*3,E05,cr
  1380.       dc.w end_patt
  1381. p2a:
  1382.       dc.w f05,q*3
  1383.     dc.w c05,q
  1384.     dc.w f05,q,a05,q,g05,q,f05,q
  1385.     dc.w g05,q*2,e05,q*2,c05,q*4
  1386.       dc.w end_patt
  1387. p3a:
  1388.       dc.w Bb05,q*3
  1389.     dc.w f05,q
  1390.       dc.w Bb05,q,d06,q,c06,q,Bb05,q
  1391.       dc.w a05,q*3
  1392.     dc.w f05,q
  1393.       dc.w a05,q,c06,q,Bb05,q,a05,q
  1394.       dc.w g05,q*3
  1395.     dc.w gb05,q
  1396.       dc.w g05,q,Bb05,q,a05,q,g05,q
  1397.       dc.w f05,q,a05,q,g05,q,a05,q
  1398.     dc.w f05,q
  1399.       dc.w end_patt
  1400. p4a:
  1401.       dc.w new_env
  1402.     dc.l kick_env
  1403.       dc.w new_snd
  1404.       dc.l bas5
  1405.       dc.w F02,sq,rest,sq,F02,sq,A02,sq
  1406.       dc.w C03,sq,D03,sq,F03,sq,D02,sq
  1407.       dc.w F02,sq,rest,sq,F02,sq,A02,sq
  1408.       dc.w C03,sq,D03,sq,F03,sq,D02,sq
  1409.       dc.w end_patt
  1410. p5a:
  1411.       dc.w C02,sq,rest,sq,C02,sq,E02,sq
  1412.       dc.w G02,sq,A02,sq,C03,sq,A02,sq
  1413.       dc.w C02,sq,rest,sq,C02,sq,E02,sq
  1414.       dc.w G02,sq,A02,sq,C03,sq,A02,sq
  1415.       dc.w end_patt
  1416. p6a:
  1417.       dc.w D02,sq,rest,sq,D02,sq,F02,sq
  1418.       dc.w A02,sq,C03,sq,D03,sq,C03,sq
  1419.       dc.w D02,sq,rest,sq,D02,sq,F02,sq
  1420.       dc.w A02,sq,C03,sq,D03,sq,C03,sq
  1421.       dc.w end_patt
  1422. p7a:
  1423.       dc.w A01,sq,rest,sq,A01,sq,C02,sq
  1424.       dc.w E02,sq,G02,sq,A02,sq,G02,sq
  1425.       dc.w A01,sq,rest,sq,A01,sq,C02,sq
  1426.       dc.w E02,sq,G02,sq,A02,sq,G02,sq
  1427.       dc.w end_patt
  1428. p8a:
  1429.       dc.w Bb01,sq,rest,sq,Bb01,sq,D02,sq
  1430.       dc.w F02,sq,G02,sq,Bb02,sq,G02,sq
  1431.       dc.w Bb01,sq,rest,sq,Bb01,sq,D02,sq
  1432.       dc.w F02,sq,G02,sq,Bb02,sq,G02,sq
  1433.       dc.w end_patt
  1434. p9a:
  1435.       dc.w F01,sq,rest,sq,F01,sq,A01,sq
  1436.       dc.w C02,sq,D02,sq,F02,sq,D01,sq
  1437.       dc.w F01,sq,rest,sq,F01,sq,A01,sq
  1438.       dc.w C02,sq,D02,sq,F02,sq,D01,sq
  1439.       dc.w end_patt
  1440. p10a:     
  1441.       dc.w new_env
  1442.     dc.l kick_env
  1443.       dc.w new_snd
  1444.       dc.l kik1
  1445.       dc.w r16,q
  1446.       dc.w new_snd
  1447.       dc.l snr1
  1448.       dc.w r16,q
  1449.       dc.w new_snd
  1450.       dc.l kik1
  1451.       dc.w r16,q
  1452. p11a:      dc.w new_snd
  1453.       dc.l snr1
  1454.       dc.w r16,q
  1455.       dc.w end_patt
  1456. p10q:     
  1457.       dc.w new_env
  1458.     dc.l kick_env
  1459.       dc.w new_snd
  1460.       dc.l kik1
  1461.       dc.w r16,q
  1462.       dc.w new_snd
  1463.       dc.l hatcl
  1464.       dc.w r16,sq,r16,sq
  1465.       dc.w r16,q
  1466.       dc.w r16,sq,r16,sq
  1467.       dc.w new_snd
  1468.       dc.l kik1
  1469.       dc.w r16,q
  1470.       dc.w new_snd
  1471.       dc.l hatcl
  1472.       dc.w r16,sq,r16,sq
  1473.       dc.w new_snd
  1474.       dc.l kik1
  1475.       dc.w r16,q
  1476.       dc.w r16,q
  1477.       dc.w end_patt
  1478. p10qa:     
  1479.       dc.w new_env
  1480.     dc.l kick_env
  1481.       dc.w new_snd
  1482.       dc.l kik1
  1483.       dc.w r16,q
  1484.       dc.w new_snd
  1485.       dc.l hatcl
  1486.       dc.w r16,sq,r16,sq
  1487.       dc.w r16,q
  1488.       dc.w r16,sq,r16,sq
  1489.       dc.w new_snd
  1490.       dc.l kik1
  1491.       dc.w r16,q
  1492.       dc.w r16,sq
  1493.       dc.w new_snd
  1494.       dc.l kik1
  1495.       dc.w r16,2
  1496.     dc.w r16,3
  1497.       dc.w r16,q
  1498.       dc.w new_snd
  1499.       dc.l hatcl
  1500.       dc.w r16,sq,r16,sq
  1501.       dc.w end_patt
  1502.  
  1503. p99a:
  1504.       dc.w new_env
  1505.     dc.l q_env
  1506.       dc.w new_snd
  1507.       dc.l cow
  1508.     dc.w r8,q,r8,q,r8,sq,r8,q,r8,sq,r8,cr,rest,cr
  1509.     dc.w r8,q,r8,cr,r8,q,r8,cr,r8,cr 
  1510.       dc.w end_patt
  1511. p99b:
  1512.       dc.w new_env
  1513.     dc.l kick_env
  1514.       dc.w new_snd
  1515.       dc.l snr1
  1516.     dc.w rest,cr,r19,cr
  1517.     dc.w rest,cr,r19,cr
  1518.       dc.w end_patt
  1519. ;****************************************************************
  1520. CR      set 20
  1521. tcr1     set 9
  1522. tcr2     set 8
  1523. Q       set cr/2
  1524. tq1      set 4
  1525. tq2      set 5
  1526. ;tsq     set 3
  1527. ;tsq2     set 2
  1528. SQ      set cr/4
  1529. ;m       set 254
  1530. ;rest     set $fd00
  1531. ;dcr      set cr+q
  1532. ;dq      set q+sq
  1533. ;dsq      set sq+(sq/2)
  1534. ;sb      set cr*4
  1535. ;min      set cr*2
  1536. ;dm      set min+cr
  1537.  
  1538. ;journey
  1539.  
  1540.     EVEN
  1541. s9:
  1542.     dc.l    p1b,p1b,p1b,p1b,p2b,p2b,p2bb
  1543.     dc.l    pt2,pt
  1544.       dc.l     0,end_song
  1545. s10:
  1546.     dc.l    p4b,p5b,p6b,p5b
  1547.     dc.l    p4b,p7b,p9b,p8b
  1548.     dc.l    p4b,p7b,p9b,p8b,p3b
  1549.     dc.l    pt2,pt
  1550.         DC.L     0,end_song
  1551. s11:
  1552.     dc.l    p10b,p10b,p10b,p10b,p10b
  1553.     dc.l    p10b,p10b,p10b,p10b,p10b
  1554.     dc.l    p10b,p10b,p10b,p10b,p10b
  1555.     dc.l    p10b,p10b,p10b,p10b,p11b
  1556.     dc.l    pt2,pt
  1557.     dc.l     0,end_song
  1558. s12:
  1559.     dc.l    p4yb,p5yb,p6yb,p5yb
  1560.     dc.l    p4yb,p7yb,p9yb,p8yb
  1561.     dc.l    p4yb,p7yb,p9yb,p8yb,p3yb
  1562.     dc.l    pt2,pt
  1563.     dc.l     0,end_song
  1564. pt:
  1565.     dc.w rest,cr*2
  1566.       dc.w end_patt
  1567. pt2:
  1568.     dc.w rest,q*3
  1569.       dc.w end_patt
  1570. p1b:
  1571.       dc.w new_env
  1572.     dc.l org_env
  1573.       dc.w new_snd
  1574.       dc.l sax2
  1575.       dc.w c05,q*7,rest,q,c05,q,d05,q,e05,q
  1576.     dc.w f05,cr,e05,q,d05,q,e05,q
  1577.       dc.w end_patt
  1578. p2b:
  1579.     dc.w c05,q*13,d05,q,e05,q,f05,q
  1580.     dc.w g05,cr*4,f05,q,d05,q,Bb04,q
  1581.     dc.w f05,q,d05,q,Bb04,q,f05,q,d05,q
  1582.     dc.w f05,q,db05,q,ab04,q
  1583.     dc.w f05,q,db05,q,ab04,q,f05,q,db05,q
  1584.       dc.w end_patt
  1585. p2bb:
  1586.     dc.w c05,q*9
  1587.       dc.w end_patt
  1588. p4b:
  1589.       dc.w new_env
  1590.     dc.l og
  1591.       dc.w new_snd
  1592.       dc.l clv2
  1593.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1594.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1595.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1596.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1597.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1598.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1599.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1600.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1601.       dc.w end_patt
  1602. p3b:
  1603.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1604.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1605.       dc.w c02,sq,e02,sq,g02,sq,c03,sq
  1606.       dc.w e03,sq,c03,sq,g02,sq,e02,sq
  1607.     dc.w c02,q
  1608.       dc.w end_patt
  1609. p5b:
  1610.       dc.w Bb01,sq,D02,sq,F02,sq,Bb02,sq
  1611.       dc.w D02,sq,Bb02,sq,F02,sq,D02,sq
  1612.       dc.w Bb01,sq,D02,sq,F02,sq,Bb02,sq
  1613.       dc.w D02,sq,Bb02,sq,F02,sq,D02,sq
  1614. p9b:      dc.w Bb01,sq,D02,sq,F02,sq,Bb02,sq
  1615.       dc.w D02,sq,Bb02,sq,F02,sq,D02,sq
  1616.       dc.w Bb01,sq,D02,sq,F02,sq,Bb02,sq
  1617.       dc.w D02,sq,Bb02,sq,F02,sq,D02,sq
  1618.       dc.w end_patt
  1619. p6b:
  1620.       dc.w Ab01,sq,C02,sq,Eb02,sq,Ab02,sq
  1621.       dc.w C02,sq,Ab02,sq,Eb02,sq,C02,sq
  1622.       dc.w Ab01,sq,C02,sq,Eb02,sq,Ab02,sq
  1623.       dc.w C02,sq,Ab02,sq,Eb02,sq,C02,sq
  1624.       dc.w Ab01,sq,C02,sq,Eb02,sq,Ab02,sq
  1625.       dc.w C02,sq,Ab02,sq,Eb02,sq,C02,sq
  1626.       dc.w Ab01,sq,C02,sq,Eb02,sq,Ab02,sq
  1627.       dc.w C02,sq,Ab02,sq,Eb02,sq,C02,sq
  1628.       dc.w end_patt
  1629. p7b:
  1630.       dc.w G01,sq,B01,sq,D02,sq,G02,sq
  1631.       dc.w B02,sq,G02,sq,D02,sq,B01,sq
  1632.       dc.w G01,sq,B01,sq,D02,sq,G02,sq
  1633.       dc.w B02,sq,G02,sq,D02,sq,B01,sq
  1634.       dc.w end_patt
  1635. p8b:
  1636.       dc.w Db02,sq,F02,sq,Ab02,sq,Db03,sq
  1637.       dc.w F03,sq,Db03,sq,Ab02,sq,F02,sq
  1638.       dc.w Db02,sq,F02,sq,Ab02,sq,Db03,sq
  1639.       dc.w F03,sq,Db03,sq,Ab02,sq,F02,sq
  1640.       dc.w end_patt
  1641.  
  1642. p4yb:
  1643.       dc.w new_env
  1644.     dc.l bas5_env2
  1645.       dc.w new_snd
  1646.       dc.l bas5
  1647.       dc.w c03,q,c03,q,c03,q,c03,q
  1648.       dc.w c03,q,c03,q,c03,q,c03,q
  1649.       dc.w c03,q,c03,q,c03,q,c03,q
  1650.       dc.w c03,q,c03,q,c03,q,c03,q
  1651.       dc.w end_patt
  1652. p3yb:
  1653.       dc.w c03,q,c03,q,c03,q,c03,q
  1654.       dc.w c03,q,c03,q,c03,q,c03,q
  1655.       dc.w c03,q
  1656.       dc.w end_patt
  1657. p5yb:
  1658.       dc.w Bb02,q,Bb02,q,Bb02,q,Bb02,q
  1659.       dc.w Bb02,q,Bb02,q,Bb02,q,Bb02,q
  1660. p9yb:      dc.w Bb02,q,Bb02,q,Bb02,q,Bb02,q
  1661.       dc.w Bb02,q,Bb02,q,Bb02,q,Bb02,q
  1662.       dc.w end_patt
  1663. p6yb:
  1664.       dc.w Ab02,q,Ab02,q,Ab02,q,Ab02,q
  1665.       dc.w Ab02,q,Ab02,q,Ab02,q,Ab02,q
  1666.       dc.w Ab02,q,Ab02,q,Ab02,q,Ab02,q
  1667.       dc.w Ab02,q,Ab02,q,Ab02,q,Ab02,q
  1668.       dc.w end_patt
  1669. p7yb:
  1670.       dc.w G02,q,G02,q,G02,q,G02,q
  1671.       dc.w G02,q,G02,q,G02,q,G02,q
  1672.       dc.w end_patt
  1673. p8yb:
  1674.       dc.w Db03,q,Db03,q,Db03,q,Db03,q
  1675.       dc.w Db03,q,Db03,q,Db03,q,Db03,q
  1676.       dc.w end_patt
  1677.  
  1678. p10b:     
  1679.       dc.w new_env
  1680.     dc.l kick_env
  1681.       dc.w new_snd
  1682.       dc.l kik1
  1683.       dc.w r16,sQ
  1684.       dc.w new_snd
  1685.       dc.l hatcl
  1686.       dc.w r16,sQ,r16,sQ,r16,sQ
  1687.       dc.w new_snd
  1688.       dc.l snr1
  1689.       dc.w r19,Q
  1690.       dc.w new_snd
  1691.       dc.l hatcl
  1692.       dc.w r16,sQ,r16,sQ
  1693.       dc.w new_snd
  1694.       dc.l kik1
  1695.       dc.w r16,sQ
  1696.       dc.w new_snd
  1697.       dc.l hatcl
  1698.       dc.w r16,sQ,r16,sQ,r16,sQ
  1699.       dc.w new_snd
  1700.       dc.l snr1
  1701.       dc.w r18,Q
  1702.       dc.w new_snd
  1703.       dc.l hatcl
  1704.       dc.w r16,sQ,r16,sq
  1705.       dc.w end_patt
  1706. p11b:     
  1707.       dc.w new_env
  1708.     dc.l kick_env
  1709.       dc.w new_snd
  1710.       dc.l kik1
  1711.       dc.w r16,q
  1712.       dc.w end_patt
  1713. p111b:     
  1714.       dc.w new_env
  1715.     dc.l kick_env
  1716.       dc.w new_snd
  1717.       dc.l kik1
  1718.       dc.w r16,cr
  1719.       dc.w r16,cr
  1720.       dc.w end_patt
  1721.  
  1722. ;****************************************************************
  1723.  
  1724.  
  1725. CR      set 24
  1726. tcr1     set 9
  1727. tcr2     set 8
  1728. Q       set cr/2
  1729. tq1      set 4
  1730. tq2      set 5
  1731. ;tsq     set 3
  1732. ;tsq2     set 2
  1733. SQ      set cr/4
  1734. ;m       set 254
  1735. ;rest     set $fd00
  1736. ;dcr      set cr+q
  1737. ;dq      set q+sq
  1738. ;dsq      set sq+(sq/2)
  1739. ;sb      set cr*4
  1740. ;min      set cr*2
  1741. ;dm      set min+cr
  1742.  
  1743. ;anticipation
  1744.  
  1745. s13:
  1746.     dc.l    p2c
  1747.       dc.l     0,end_song
  1748.  
  1749. s14:
  1750.     dc.l    p1c
  1751.         DC.L     0,end_song
  1752.  
  1753. s15:
  1754.     dc.l    p3c
  1755.     dc.l     0,end_song
  1756. s16:
  1757.     dc.l    p22c
  1758.     dc.l     0,end_song
  1759.  
  1760. p1c:
  1761.       dc.w new_env
  1762.     dc.l bas5_env
  1763.       dc.w new_snd
  1764.       dc.l bas5
  1765.     dc.w C03,q,Db03,q,C03,q,Db03,q
  1766.     dc.w C03,q,Db03,q,C03,q,Db03,q
  1767.       dc.w end_patt
  1768. p2c:
  1769.       dc.w new_env
  1770.     dc.l org_env
  1771.       dc.w new_snd
  1772.       dc.l shak
  1773.     dc.w modon,4,4,15,15,4,4
  1774.       dc.w Db04,q,C04,q,Gb04,q,F04,q,Bb04,q,A04,q
  1775.     dc.w modon,4,4,7,7,4,4
  1776.       dc.w Db05,q,C05,q,Gb05,q,F05,q,Bb05,q,A05,q
  1777.     dc.w modon,4,4,3,3,4,4
  1778.       dc.w Db06,q,C06,q,Gb06,q,F06,q
  1779.       dc.w end_patt
  1780. p22c:
  1781.       dc.w new_env
  1782.     dc.l kick_env
  1783.       dc.w new_snd
  1784.       dc.l tom1
  1785.     dc.w r8,cr*2,r8,cr*2,r8,cr*2
  1786.     dc.w rest,q,r5,q,r8,q,r5,q
  1787.       dc.w end_patt
  1788. p3c:
  1789.       dc.w new_env
  1790.     dc.l org_env
  1791.       dc.w new_snd
  1792.       dc.l orglp2
  1793.     dc.w C06,q*3,Db06,q*3,D06,cr
  1794.     dc.w Eb06,q*3,D06,q*3,Db06,cr
  1795.     dc.w C06,q*3,Db06,q*3,D06,cr
  1796.     dc.w Eb06,q,D06,q,Db06,q,C06,q
  1797.     dc.w end_patt
  1798.  
  1799. ;****************************************************************
  1800.  
  1801. CR      set 40
  1802. tcr1     set 9
  1803. tcr2     set 8
  1804. Q       set cr/2
  1805. tq1      set 4
  1806. tq2      set 5
  1807. ;tsq     set 3
  1808. ;tsq2     set 2
  1809. SQ      set cr/4
  1810. ;m       set 254
  1811. ;rest     set $fd00
  1812. ;dcr      set cr+q
  1813. ;dq      set q+sq
  1814. ;dsq      set sq+(sq/2)
  1815. ;sb      set cr*4
  1816. ;min      set cr*2
  1817. ;dm      set min+cr
  1818.  
  1819. ;pastoral loop
  1820.  
  1821. s17:
  1822.     dc.l    p2d
  1823.       dc.l     0,end_song
  1824.  
  1825. s18:
  1826.     dc.l    p1d
  1827.         DC.L     0,end_song
  1828.  
  1829. s19:
  1830.     dc.l    p3da,p3d
  1831.     dc.l     0,end_song
  1832. s20:
  1833.     dc.l    p22d
  1834.     dc.l     0,end_song
  1835.  
  1836. p1d:
  1837.       dc.w new_env
  1838.     dc.l org_env
  1839.       dc.w new_snd
  1840.       dc.l sax2
  1841.     dc.w Ab02,cr*2,G02,cr*2,Gb02,cr*2,F02,cr*2
  1842.     dc.w E02,cr*2,Eb02,cr*2,D02,cr*2,Db02,cr,Eb02,cr
  1843.       dc.w end_patt
  1844. p3d:
  1845.       dc.w new_env
  1846.     dc.l org_env
  1847.       dc.w new_snd
  1848.       dc.l sax2
  1849.     dc.w Ab04,cr*2,Eb05,cr*2,Ab05,cr*2,Eb05,cr*2
  1850.     dc.w Bb05,cr*2,Ab05,cr,C05,cr
  1851.     dc.w Eb05,cr,Ab05,cr,C06,cr,Bb05,cr
  1852.       dc.w end_patt
  1853. p3da:
  1854.       dc.w new_env
  1855.     dc.l org_env
  1856.       dc.w new_snd
  1857.       dc.l sax2
  1858.     dc.w rest,cr*16
  1859.       dc.w end_patt
  1860. p2d:
  1861.       dc.w new_env
  1862.     dc.l org_env
  1863.       dc.w new_snd
  1864.       dc.l sax2
  1865.     dc.w Eb05,q,Db05,q,C05,q,Db05,q
  1866.     dc.w Eb05,cr,Db05,q,C05,q,Eb05,cr
  1867.     dc.w Db05,q,C05,q,Db05,q,C05,q,Bb04,cr
  1868.     dc.w Db05,q,C05,q,Bb04,cr,C05,cr,Ab04,cr
  1869.     dc.w Bb04,cr,F04,cr,Ab04,cr,G04,cr
  1870.     dc.w end_patt
  1871. p22d:
  1872.       dc.w new_env
  1873.     dc.l sax_env
  1874.       dc.w new_snd
  1875.       dc.l shak
  1876.     dc.w Eb05,q,Db05,q,C05,q,Db05,q
  1877.     dc.w Eb05,cr,Db05,q,C05,q,Eb05,cr
  1878.     dc.w Db05,q,C05,q,Db05,q,C05,q,Bb04,cr
  1879.     dc.w Db05,q,C05,q,Bb04,cr,C05,cr,Ab04,cr
  1880.     dc.w Bb04,cr,F04,cr,Ab04,cr,G04,cr
  1881.     dc.w end_patt
  1882.  
  1883. ;****************************************************************
  1884.  
  1885. CR      set 16
  1886. tcr1     set 9
  1887. tcr2     set 8
  1888. Q       set cr/2
  1889. tq1      set 4
  1890. tq2      set 5
  1891. ;tsq     set 3
  1892. ;tsq2     set 2
  1893. SQ      set cr/4
  1894. ;m       set 254
  1895. ;rest     set $fd00
  1896. ;dcr      set cr+q
  1897. ;dq      set q+sq
  1898. ;dsq      set sq+(sq/2)
  1899. ;sb      set cr*4
  1900. ;min      set cr*2
  1901. ;dm      set min+cr
  1902.  
  1903. ;fast and dangerous
  1904.  
  1905. s21:
  1906.     dc.l    p1e,p1e,p2e,p1e,p3e,p4e
  1907.       dc.l     0,end_song
  1908.  
  1909. s22:
  1910.     dc.l    p5e,p5e,p6e,p5e,p7e
  1911.         DC.L     0,end_song
  1912.  
  1913. s23:
  1914.         
  1915.     dc.l    p10e,p10e,p10e
  1916.     dc.l    p10e,p10e,p10e,p11e2
  1917.     dc.l     0,end_song
  1918. s24:
  1919.     dc.l    p10ze,p10ze,p10ze,p10ze
  1920.     dc.l    p10ze,p10ze,p10ze,p10ze
  1921.     dc.l    p10ze,p10ze,p10ze,p10ze,p11e2
  1922.     dc.l     0,end_song
  1923.  
  1924. p1e:
  1925.       dc.w new_env
  1926.     dc.l org_env
  1927.       dc.w new_snd
  1928.       dc.l orglp2
  1929.       dc.w G05,q,Eb06,q,D06,q,C06,q
  1930.       dc.w G05,q,Eb06,q,D06,q,C06,q
  1931.       dc.w G05,q,Eb06,q,D06,q,C06,q,rest,q,C06,q,Bb05,cr
  1932.       dc.w end_patt
  1933.  
  1934. p2e:
  1935.       dc.w C06,q,Ab06,q,G06,q,F06,q
  1936.       dc.w C06,q,Ab06,q,G06,q,F06,q
  1937.       dc.w C06,q,Ab06,q,G06,q,F06,q,rest,q,F06,q,Eb06,cr
  1938.       dc.w end_patt
  1939. p3e:
  1940.       dc.w D06,q,G06,q,A06,q,G06,q*5
  1941.       dc.w C06,q,Ab06,q,G06,q,F06,q*5
  1942.       dc.w end_patt
  1943. p4e:
  1944.       dc.w new_snd
  1945.       dc.l sax2
  1946.       dc.w E04*2,sq,F04*2,sq,Gb04*2,sq,G04*2,sq
  1947.     dc.w Ab04*2,sq,A04*2,sq,Bb04*2,sq,B03,sq
  1948.     dc.w C04,sq,Db04,sq,D04,sq,Eb04,sq
  1949.     dc.w E04,sq,F04,sq,Gb04,sq,G04,sq
  1950.     dc.w Ab04,sq,A04,sq,Bb04,sq,B04,sq
  1951.     dc.w C05,sq,Db05,sq,D05,sq,Eb05,sq
  1952.     dc.w E05,sq,F05,sq,Gb05,sq,G05,sq
  1953.     dc.w Ab05,sq,A05,sq,Bb05,sq,B05,sq
  1954.     dc.w C06,sq,rest,sq*15
  1955.       dc.w end_patt
  1956. p5e:
  1957.       dc.w new_env
  1958.     dc.l bas5_env
  1959.       dc.w new_snd
  1960.       dc.l bas5
  1961.       dc.w C03,q,C03,q,G02,q,Bb02,q
  1962.       dc.w C03,q,C03,q,G02,q,Bb02,q
  1963.       dc.w C03,q,C03,q,Bb02,q,C03,q,rest,q,C03,q
  1964.     dc.w Bb02,cr
  1965.       dc.w end_patt
  1966. p6e:
  1967.      dc.w new_snd
  1968.       dc.l bas5
  1969.       dc.w F03,q,F03,q,C03,q,Eb03,q
  1970.       dc.w F03,q,F03,q,C03,q,Eb03,q
  1971.       dc.w F03,q,F03,q,Eb03,q,F03,q,rest,q,F03,q
  1972.     dc.w Eb03,cr
  1973.       dc.w end_patt
  1974. p7e:
  1975.      dc.w new_snd
  1976.       dc.l bas5
  1977.       dc.w G03,q,G03,cr,G03,cr,G03,cr,Gb03,q
  1978.       dc.w F03,q,F03,cr,F03,cr,F03,cr,Eb03,q
  1979.       dc.w C03,q,C03,q,G02,q,Bb02,q
  1980.       dc.w C03,q,C03,q,G02,q,Bb02,q
  1981.       dc.w C03,q,C03,q,G02,q,Bb02,q
  1982.       dc.w C03,q,C03,q,G02,q,Bb02,q,C03,q,rest,q*7
  1983.       dc.w end_patt
  1984. p10e:     
  1985.       dc.w new_env
  1986.     dc.l kick_env
  1987.       dc.w new_snd
  1988.       dc.l kik1
  1989.       dc.w r16,Q,r16,q
  1990.       dc.w new_snd
  1991.       dc.l snr1
  1992.       dc.w r19,Q,r19,q
  1993.       dc.w new_snd
  1994.       dc.l kik1
  1995.       dc.w r16,Q,r16,q
  1996.       dc.w new_snd
  1997.       dc.l snr1
  1998.       dc.w r19,Q,r19,q
  1999.       dc.w new_snd
  2000.       dc.l kik1
  2001.       dc.w r16,Q,r16,q
  2002.       dc.w new_snd
  2003.       dc.l snr1
  2004.       dc.w r19,Q
  2005.       dc.w new_snd
  2006.       dc.l kik1
  2007.       dc.w r16,cr,r16,q
  2008.       dc.w new_snd
  2009.       dc.l snr1
  2010.       dc.w r15,cr
  2011.       dc.w end_patt
  2012. p10ze:
  2013.       dc.w new_snd
  2014.       dc.l hatcl
  2015.       dc.w new_env
  2016.     dc.l org_env
  2017.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  2018.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  2019.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  2020.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  2021.       dc.w end_patt
  2022. p11e:     
  2023.       dc.w new_env
  2024.     dc.l kick_env
  2025.       dc.w new_snd
  2026.       dc.l kik1
  2027.       dc.w r16,q
  2028.       dc.w end_patt
  2029. p11e2:     
  2030.       dc.w new_env
  2031.     dc.l kick_env
  2032.       dc.w new_snd
  2033.       dc.l kik1
  2034.       dc.w r16,q,rest,q*7
  2035.       dc.w end_patt
  2036. ;****************************************************************
  2037.  
  2038.  
  2039. CR      set 16
  2040. tcr1     set 9
  2041. tcr2     set 8
  2042. Q       set cr/2
  2043. tq1      set 4
  2044. tq2      set 5
  2045. ;tsq     set 3
  2046. ;tsq2     set 2
  2047. SQ      set cr/4
  2048. ;m       set 254
  2049. ;rest     set $fd00
  2050. ;dcr      set cr+q
  2051. ;dq      set q+sq
  2052. ;dsq      set sq+(sq/2)
  2053. ;sb      set cr*4
  2054. ;min      set cr*2
  2055. ;dm      set min+cr
  2056.  
  2057. ;dramatic loop
  2058.  
  2059. s25:
  2060.     dc.l    p1f
  2061.       dc.l     0,end_song
  2062.  
  2063. s26:
  2064.     dc.l    p5f,p5f,p5f,p5f,p5f
  2065.     dc.l    p6f,p6f,p6f,p6f,p6f
  2066.     dc.l    p7f,p7f,p7f,p7f,p7f
  2067.     dc.l    p8f,p8f,p8f,p8f,p8f
  2068.         DC.L     0,end_song
  2069.  
  2070. s27:
  2071.     dc.l    p10ee,p10ee,p10ee,p10ee,p10ee
  2072.     dc.l    p10f,p10f
  2073.     dc.l     0,end_song
  2074. s28:
  2075.     dc.l    p10ze,p10ze,p10ze,p10ze,p10ze
  2076.     dc.l    prxf
  2077.     dc.l     0,end_song
  2078.  
  2079. prxf
  2080.     dc.w rest,cr*10
  2081.       dc.w end_patt
  2082.  
  2083. p1f:
  2084.       dc.w new_env
  2085.     dc.l org_env
  2086.       dc.w new_snd
  2087.       dc.l orglp2
  2088.       dc.w F02,cr,G02,cr,Ab02,cr,F02,cr
  2089.     dc.w G02,cr,Ab02,cr,bb02,cr,G02,cr
  2090.     dc.w Ab02,cr,Bb02,cr,C03,cr,Ab02,cr
  2091.     dc.w Bb02,cr,G02,cr,Ab02,cr,F02,cr
  2092.     dc.w G02,cr,Eb02,cr,F02,cr,Db02,cr
  2093.       dc.w new_snd
  2094.       dc.l clv2
  2095.       dc.w C03,q,D03,q,Eb03,q,C03,q
  2096.     dc.w D03,q,Eb03,q,F03,q,D03,q
  2097.     dc.w Eb03,q,F03,q,G03,q,Eb03,q
  2098.     dc.w F03,q,D03,q,Eb03,q,C03,q
  2099.     dc.w D03,q,Bb02,q,C03,q,Ab02,q
  2100.       dc.w new_snd
  2101.       dc.l orglp2
  2102.       dc.w G02,cr,A02,cr,Bb02,cr,G02,cr
  2103.     dc.w A02,cr,Bb02,cr,C03,cr,A02,cr
  2104.     dc.w Bb02,cr,C03,cr,D03,cr,Bb02,cr
  2105.     dc.w C03,cr,A02,cr,Bb02,cr,G02,cr
  2106.     dc.w A02,cr,F02,cr,G02,cr,Eb02,cr
  2107.       dc.w new_snd
  2108.       dc.l clv2
  2109.       dc.w D03,q,E03,q,F03,q,D03,q
  2110.     dc.w E03,q,F03,q,G03,q,E03,q
  2111.     dc.w F03,q,G03,q,A03,q,F03,q
  2112.     dc.w G03,q,E03,q,F03,q,D03,q
  2113.     dc.w E03,q,C03,q,D03,q,Bb02,q
  2114.       dc.w end_patt
  2115. p5f:
  2116.       dc.w new_env
  2117.     dc.l bas5_env
  2118.       dc.w new_snd
  2119.       dc.l bas5
  2120.       dc.w F02,q,F03,q,F02,q,F03,q
  2121.       dc.w F02,q,F03,q,F02,q,F03,q
  2122.       dc.w end_patt
  2123. p6f:
  2124.       dc.w C03,q,Db03,q,C03,q,Db03,q      
  2125.       dc.w end_patt
  2126. p7f:
  2127.       dc.w G02,q,G03,q,G02,q,G03,q
  2128.       dc.w G02,q,G03,q,G02,q,G03,q
  2129.       dc.w end_patt
  2130. p8f:
  2131.       dc.w D03,q,Eb03,q,D03,q,Eb03,q      
  2132.       dc.w end_patt
  2133. p10f:     
  2134.       dc.w new_env
  2135.     dc.l kick_env
  2136.       dc.w new_snd
  2137.       dc.l kik1
  2138.       dc.w r16,cr
  2139.       dc.w r16,cr
  2140.       dc.w r16,cr
  2141.       dc.w r16,cr
  2142.       dc.w new_snd
  2143.       dc.l snr1
  2144.       dc.w r16,Q,r16,q
  2145.       dc.w end_patt
  2146.  
  2147. p10ee:     
  2148.       dc.w new_env
  2149.     dc.l kick_env
  2150.       dc.w new_snd
  2151.       dc.l kik1
  2152.       dc.w r16,Q,r16,q
  2153.       dc.w new_snd
  2154.       dc.l snr1
  2155.       dc.w r19,Q,r19,q
  2156.       dc.w new_snd
  2157.       dc.l kik1
  2158.       dc.w r16,Q,r16,q
  2159.       dc.w new_snd
  2160.       dc.l snr1
  2161.       dc.w r15,cr
  2162.       dc.w end_patt
  2163.  
  2164. CR      set 16
  2165. tcr1     set 9
  2166. tcr2     set 8
  2167. Q       set cr/2
  2168. tq1      set 4
  2169. tq2      set 5
  2170. ;tsq     set 3
  2171. ;tsq2     set 2
  2172. SQ      set cr/4
  2173. ;m       set 254
  2174. ;rest     set $fd00
  2175. ;dcr      set cr+q
  2176. ;dq      set q+sq
  2177. ;dsq      set sq+(sq/2)
  2178. ;sb      set cr*4
  2179. ;min      set cr*2
  2180. ;dm      set min+cr
  2181.  
  2182.  
  2183.  
  2184. ; a few bars of danger music
  2185.  
  2186. s29:
  2187.     dc.l    p1g,pra
  2188.       dc.l     0,end_song
  2189.  
  2190. s30:
  2191.     dc.l    p5g,pra
  2192.         DC.L     0,end_song
  2193.  
  2194. s31:
  2195.         
  2196.     dc.l    p10ee,p10ee,p10ee,p10ee
  2197.     dc.l    p10g,p10g,p11e,pra
  2198.     dc.l     0,end_song
  2199. s32:
  2200.     dc.l    pr,pr,pr,pr
  2201.     dc.l     0,end_song
  2202.  
  2203. p1g:
  2204.       dc.w new_env
  2205.     dc.l org_env
  2206.       dc.w new_snd
  2207.       dc.l orglp2
  2208.     dc.w Eb06,q,D06,q,C06,q,F06,cr
  2209.     dc.w Eb06,q,D06,q,G06,cr,F06,q,Eb06,q
  2210.     dc.w F06,cr,Eb06,q,D06,q,Eb06,sq,rest,sq
  2211.     dc.w Eb06,q,D06,q,C06,q,F06,cr
  2212.     dc.w Eb06,q,D06,q,G06,cr,F06,q,Eb06,q
  2213.     dc.w F06,cr,Eb06,q,D06,q,Eb06,q
  2214.     dc.w G06,q*13,F06,q,Eb06,q,D06,q,C06,q
  2215.       dc.w end_patt
  2216. p5g:
  2217.       dc.w new_snd
  2218.       dc.l bas4
  2219.       dc.w C02,q*3,D02,cr*2,Eb02,cr*2,D02,q*5
  2220.       dc.w C02,q*3,D02,cr*2,Eb02,cr*2,F02,q*5
  2221.       dc.w new_snd
  2222.       dc.l bas4
  2223.     dc.w G02,q,G02,q,G02,q,G02,q
  2224.     dc.w G02,q,G02,q,G02,q,G02,q
  2225.     dc.w G02,q,G02,q,G02,q,G02,q
  2226.     dc.w G02,q,F02,q,Eb02,q,D02,q,C02,q
  2227.       dc.w end_patt
  2228. p10G:     
  2229.       dc.w new_env
  2230.     dc.l kick_env
  2231.       dc.w new_snd
  2232.       dc.l kik1
  2233.       dc.w r16,cr
  2234.       dc.w r16,cr
  2235.       dc.w r16,cr
  2236.       dc.w r16,cr
  2237.       dc.w end_patt
  2238.  
  2239. CR      set 24
  2240. tcr1     set 9
  2241. tcr2     set 8
  2242. Q       set cr/2
  2243. tq1      set 4
  2244. tq2      set 5
  2245. ;tsq     set 3
  2246. ;tsq2     set 2
  2247. SQ      set cr/4
  2248. ;m       set 254
  2249. ;rest     set $fd00
  2250. ;dcr      set cr+q
  2251. ;dq      set q+sq
  2252. ;dsq      set sq+(sq/2)
  2253. ;sb      set cr*4
  2254. ;min      set cr*2
  2255. ;dm      set min+cr
  2256.  
  2257.  
  2258. ;minor triumph
  2259.  
  2260. s33:
  2261.     dc.l    p1h
  2262.       dc.l     0,end_song
  2263.  
  2264. s34:
  2265.     dc.l    p2h,p2h,p2ha,p2ha
  2266.         DC.L     0,end_song
  2267.  
  2268. s35:
  2269.         
  2270.     dc.l    p3h
  2271.     dc.l     0,end_song
  2272. s36:
  2273.     dc.l    p1bh
  2274.     dc.l     0,end_song
  2275.  
  2276. p1h:
  2277.       dc.w new_env
  2278.     dc.l org_env
  2279.       dc.w new_snd
  2280.       dc.l sax2
  2281.     dc.w G04,sq*5,rest,sq,G04,sq-2,rest,2,G04,sq-2,rest,2
  2282.     dc.w G04,sq,rest,sq,E04,sq,rest,sq,G04,sq,rest,sq,C05,sq,rest,sq
  2283.     dc.w G04,cr,E04,cr,C04,cr,E04,sq*3,G04,sq
  2284.     dc.w C05,sq*5,rest,sq,C05,sq-2,rest,2,C05,sq-2,rest,2
  2285.     dc.w C05,sq,rest,sq,Ab04,sq,rest,sq,C05,sq,rest,sq,Eb05,sq,rest,sq
  2286.     dc.w D05,cr*4
  2287.     dc.w G04,sq*5,rest,sq,G04,sq-2,rest,2,G04,sq-2,rest,2
  2288.     dc.w G04,sq,rest,sq,E04,sq,rest,sq,G04,sq,rest,sq,C05,sq,rest,sq
  2289.     dc.w G04,cr,E04,cr,C04,cr,G04,sq*3,C05,sq
  2290.     dc.w Eb05,sq*5,rest,sq,Eb05,sq-2,rest,2,Eb05,sq-2,rest,2
  2291.     dc.w Eb05,sq,rest,sq,C05,sq,rest,sq,Eb05,sq,rest,sq,Ab05,sq,rest,sq
  2292.     dc.w G05,q*5,rest,q,G05,cr
  2293.     dc.w Ab05,sq*5,rest,sq,Ab05,sq-2,rest,2,Ab05,sq-2,rest,2
  2294.     dc.w Ab05,sq,rest,sq,Eb05,sq,rest,sq,C06,sq,rest,sq,Ab05,sq,rest,sq
  2295.     dc.w G05,q*5,rest,q,G05,cr
  2296.     dc.w Ab05,sq*5,rest,sq,Ab05,sq-2,rest,2,Ab05,sq-2,rest,2
  2297.     dc.w Ab05,sq,rest,sq,C06,sq,rest,sq,Eb06,sq,rest,sq,Ab06,sq,rest,sq
  2298.     dc.w G06,cr*4
  2299.       dc.w end_patt
  2300. p1bh:
  2301.       dc.w new_env
  2302.     dc.l org_env
  2303.       dc.w new_snd
  2304.       dc.l sax2
  2305.     dc.w E04,sq*5,rest,sq,E04,sq-2,rest,2,E04,sq-2,rest,2
  2306.     dc.w E04,sq,rest,sq,C04,sq,rest,sq,E04,sq,rest,sq,G04,sq,rest,sq
  2307.     dc.w E04,cr,C04,cr,G04*2,cr,C04,sq*3,E04,sq
  2308.     dc.w Ab04,sq*5,rest,sq,Ab04,sq-2,rest,2,Ab04,sq-2,rest,2
  2309.     dc.w Ab04,sq,rest,sq,Eb04,sq,rest,sq,Ab04,sq,rest,sq,C05,sq,rest,sq
  2310.     dc.w B04,cr*4
  2311.     dc.w E04,sq*5,rest,sq,E04,sq-2,rest,2,E04,sq-2,rest,2
  2312.     dc.w E04,sq,rest,sq,C04,sq,rest,sq,E04,sq,rest,sq,G04,sq,rest,sq
  2313.     dc.w E04,cr,C04,cr,G04*2,cr,E04,sq*3,G04,sq
  2314.     dc.w C05,sq*5,rest,sq,C05,sq-2,rest,2,C05,sq-2,rest,2
  2315.     dc.w C05,sq,rest,sq,Ab05,sq,rest,sq,C05,sq,rest,sq,Eb05,sq,rest,sq
  2316.  
  2317.     dc.w D05,q*5,rest,q,D05,cr
  2318.     dc.w Eb05,sq*5,rest,sq,Eb05,sq-2,rest,2,Eb05,sq-2,rest,2
  2319.     dc.w Eb05,sq,rest,sq,C05,sq,rest,sq,Ab05,sq,rest,sq,Eb05,sq,rest,sq
  2320.     dc.w D05,q*5,rest,q,D05,cr
  2321.     dc.w Eb05,sq*5,rest,sq,Eb05,sq-2,rest,2,Eb05,sq-2,rest,2
  2322.     dc.w Eb05,sq,rest,sq,Ab05,sq,rest,sq,C06,sq,rest,sq,Eb06,sq,rest,sq
  2323.     dc.w D06,cr*4
  2324.       dc.w end_patt
  2325. p2h:
  2326.       dc.w new_env
  2327.     dc.l org_env
  2328.       dc.w new_snd
  2329.       dc.l orglp2
  2330.     dc.w C03,sq*5,rest,sq,C03,sq,rest,sq,C03,sq*7,rest,sq
  2331.     dc.w C03,sq*5,rest,sq,C03,sq,rest,sq
  2332.     dc.w C03,sq*3,rest,sq,C03,sq*3,rest,sq
  2333. p2ha:    dc.w Ab02,sq*5,rest,sq,Ab02,sq-2,rest,2,Ab02,sq-2,rest,2
  2334.     dc.w Ab02,sq*3,rest,sq,Ab02,sq*3,rest,sq
  2335.     dc.w G02,sq*5,rest,sq,G02,sq,rest,sq,G02,cr*2
  2336.       dc.w end_patt
  2337.  
  2338. p3h:     
  2339.       dc.w new_env
  2340.     dc.l kick_env
  2341.       dc.w new_snd
  2342.       dc.l kik1
  2343.       dc.w r16,Q
  2344.       dc.w new_snd
  2345.       dc.l hatcl
  2346.       dc.w r16,sQ,r16,sQ
  2347.       dc.w new_snd
  2348.       dc.l snr1
  2349.       dc.w r16,Q
  2350.       dc.w new_snd
  2351.       dc.l hatcl
  2352.       dc.w r16,Q,r16,sQ,r16,sq,r16,sQ,r16,sq
  2353.       dc.w new_snd
  2354.       dc.l kik1
  2355.       dc.w r16,Q
  2356.       dc.w new_snd
  2357.       dc.l hatcl
  2358.       dc.w r16,sQ,r16,sQ
  2359.       dc.w end_patt
  2360.  
  2361. CR      set 16
  2362. tcr1     set 9
  2363. tcr2     set 8
  2364. Q       set cr/2
  2365. tq1      set 4
  2366. tq2      set 5
  2367. ;tsq     set 3
  2368. ;tsq2     set 2
  2369. SQ      set cr/4
  2370. ;m       set 254
  2371. ;rest     set $fd00
  2372. ;dcr      set cr+q
  2373. ;dq      set q+sq
  2374. ;dsq      set sq+(sq/2)
  2375. ;sb      set cr*4
  2376. ;min      set cr*2
  2377. ;dm      set min+cr
  2378.  
  2379.  
  2380. ;minor anticlimax
  2381.  
  2382. s37:
  2383.     dc.l    p1i,p1i,p1ia,p1ia
  2384.       dc.l     0,end_song
  2385.  
  2386. s38:
  2387.     dc.l    p2i,p2i,p4i,p4i,p4i,p4ia
  2388.         DC.L     0,end_song
  2389.  
  2390. s39:
  2391.         
  2392.     dc.l    p3i
  2393.     dc.l     0,end_song
  2394. s40:
  2395.     dc.l    pr,pr,pr,pr
  2396.     dc.l     0,end_song
  2397.  
  2398. p1i:
  2399.       dc.w new_env
  2400.     dc.l org_env
  2401.       dc.w new_snd
  2402.       dc.l sax2
  2403.     dc.w Bb04,cr,G04,cr,Eb05,cr,D05,cr*5
  2404.     dc.w Bb04,cr,G04,cr,Eb05,cr,D05,cr*5
  2405.     dc.w Bb04,cr,G04,cr,Eb05,cr,D05,cr*3
  2406.     dc.w C05,cr,Bb04,cr*8,rest,cr
  2407.       dc.w end_patt
  2408. p1ia:
  2409.       dc.w new_env
  2410.     dc.l org_env
  2411.       dc.w new_snd
  2412.       dc.l orglp2
  2413.     dc.w Db06,cr,Bb05,cr,Eb06,cr,Bb05,cr
  2414.     dc.w Db06,cr,Bb05,cr,Eb06,cr,Bb05,cr
  2415.     dc.w Db06,cr,Bb05,cr,Eb06,cr,Bb05,cr
  2416.     dc.w Db06,cr,Bb05,cr,Eb06,cr,Bb05,cr
  2417.       dc.w end_patt
  2418. p2i:
  2419.       dc.w new_env
  2420.     dc.l kick_env
  2421.       dc.w new_snd
  2422.       dc.l kik1
  2423.     dc.w r16,q
  2424.       dc.w r16,q
  2425.       dc.w new_env
  2426.     dc.l bas5_env
  2427.       dc.w new_snd
  2428.       dc.l bas5
  2429.     dc.w C02,cr,Eb02,cr,Eb02,cr
  2430.     dc.w F02,cr,F02,cr,Ab02,cr,G02,cr
  2431.       dc.w new_env
  2432.     dc.l kick_env
  2433.       dc.w new_snd
  2434.       dc.l kik1
  2435.     dc.w r16,q
  2436.       dc.w r16,q
  2437.       dc.w new_env
  2438.     dc.l bas5_env
  2439.       dc.w new_snd
  2440.       dc.l bas5
  2441.     dc.w C02,cr,Eb02,cr,Eb02,cr
  2442.     dc.w F02,cr,F02,cr,Ab02,cr,G02,cr
  2443.       dc.w new_env
  2444.     dc.l kick_env
  2445.       dc.w new_snd
  2446.       dc.l kik1
  2447.     dc.w r16,q
  2448.       dc.w r16,q
  2449.       dc.w new_env
  2450.     dc.l bas5_env
  2451.       dc.w new_snd
  2452.       dc.l bas5
  2453.     dc.w C02,cr,Eb02,cr,Eb02,cr
  2454.     dc.w F02,cr,F02,cr,Ab02,cr,G02,cr
  2455.     dc.w G02,cr,G02,cr,A02,cr,A02,cr
  2456.     dc.w Bb02,cr,Bb02,cr,Db03,cr,C03,cr
  2457.       dc.w end_patt
  2458. p2ia:
  2459.     dc.w rest,cr*16
  2460.       dc.w end_patt
  2461.  
  2462. p3i:
  2463.       dc.w new_env
  2464.     dc.l org_env
  2465.       dc.w new_snd
  2466.       dc.l orglp2
  2467.     dc.w G02,cr*32
  2468.     dc.w G02,cr*32
  2469.       dc.w new_env
  2470.     dc.l org_env
  2471.       dc.w new_snd
  2472.       dc.l orglp2
  2473.     dc.w Bb01,cr*12
  2474.     dc.w Bb01,cr*16
  2475.     dc.w Ab02,cr*4
  2476.       dc.w end_patt
  2477. p4i:     
  2478.       dc.w new_env
  2479.     dc.l kick_env
  2480.       dc.w new_snd
  2481.       dc.l kik1
  2482.       dc.w r16,cr*2
  2483.       dc.w r16,cr*2
  2484.       dc.w r16,cr*2
  2485.       dc.w r16,cr*2
  2486.       dc.w end_patt
  2487. p4ia:                 ; LINE MISSING (2nd note)
  2488.       dc.w new_env
  2489.     dc.l kick_env
  2490.       dc.w new_snd
  2491.       dc.l kik1
  2492.       dc.w r16,cr*2
  2493.       dc.w r16,cr*2
  2494.       dc.w r16,cr
  2495.       dc.w r16,cr
  2496.       dc.w r16,cr
  2497.       dc.w r16,cr
  2498.       dc.w end_patt
  2499.  
  2500. CR      set 20
  2501. tcr1     set 9
  2502. tcr2     set 8
  2503. Q       set cr/2
  2504. tq1      set 4
  2505. tq2      set 5
  2506. ;tsq     set 3
  2507. ;tsq2     set 2
  2508. SQ      set cr/4
  2509. ;m       set 254
  2510. ;rest     set $fd00
  2511. ;dcr      set cr+q
  2512. ;dq      set q+sq
  2513. ;dsq      set sq+(sq/2)
  2514. ;sb      set cr*4
  2515. ;min      set cr*2
  2516. ;dm      set min+cr
  2517.  
  2518. ;threatening
  2519.  
  2520. s41:
  2521.     dc.l    p1j,p1j,p2j
  2522.       dc.l     0,end_song
  2523.  
  2524. s42:
  2525.     dc.l    p3j,p3j,p3j,p3j,p4j
  2526.         DC.L     0,end_song
  2527.  
  2528. s43:
  2529.         
  2530.     dc.l    p10j,p10j,p10j,p10j,p5j
  2531.     dc.l     0,end_song
  2532. s44:
  2533.     dc.l    pr,pr,pr,pr
  2534.     dc.l     0,end_song
  2535.  
  2536. p1j:
  2537.       dc.w new_env
  2538.     dc.l org_env
  2539.       dc.w new_snd
  2540.       dc.l orglp2
  2541.     dc.w C05,cr,Bb05,q,Db05,cr,Gb05,q,B05,q
  2542.     dc.w D05,cr,G05,q,C06,q,Eb05,cr,Ab05,q,Db06,q,Eb06,q
  2543.       dc.w end_patt
  2544. p2j:
  2545.     dc.w E05,cr*4
  2546.       dc.w end_patt
  2547. p3j:
  2548.       dc.w new_snd
  2549.       dc.l bas4
  2550.     dc.w C02,q,Db02,q,B01,q,C02,q
  2551.     dc.w C02,q,Db02,q,B01,q,C02,q
  2552.       dc.w end_patt
  2553. p4j:
  2554.       dc.w new_env
  2555.     dc.l org_env
  2556.       dc.w new_snd
  2557.       dc.l orglp2
  2558.     dc.w Eb05,cr*4
  2559.       dc.w end_patt
  2560. p5j:
  2561.       dc.w new_env
  2562.     dc.l org_env
  2563.       dc.w new_snd
  2564.       dc.l orglp2
  2565.     dc.w F05,cr*4
  2566.       dc.w end_patt
  2567.  
  2568. p10j:     
  2569.       dc.w new_env
  2570.     dc.l kick_env
  2571.       dc.w new_snd
  2572.       dc.l kik1
  2573.       dc.w r16,cr
  2574.       dc.w r16,cr
  2575.       dc.w new_snd
  2576.       dc.l snr1
  2577.       dc.w r16,Q,r16,q,r16,q
  2578.       dc.w new_snd
  2579.       dc.l kik1
  2580.       dc.w r16,q
  2581.       dc.w end_patt
  2582.  
  2583. CR      set 20
  2584. tcr1     set 9
  2585. tcr2     set 8
  2586. Q       set cr/2
  2587. tq1      set 4
  2588. tq2      set 5
  2589. ;tsq     set 3
  2590. ;tsq2     set 2
  2591. SQ      set cr/4
  2592. ;m       set 254
  2593. ;rest     set $fd00
  2594. ;dcr      set cr+q
  2595. ;dq      set q+sq
  2596. ;dsq      set sq+(sq/2)
  2597. ;sb      set cr*4
  2598. ;min      set cr*2
  2599. ;dm      set min+cr
  2600.  
  2601.  
  2602. ;high drama
  2603.  
  2604. s45:
  2605.     dc.l    p1k,p1k,p2k,p2k
  2606.       dc.l     0,end_song
  2607.  
  2608. s46:
  2609.     dc.l    p3k,p3k,p3k,p3k,p3k
  2610.         DC.L     0,end_song
  2611.  
  2612. s47:
  2613.         
  2614.     dc.l    p10k,p10k,p10k,p10k,p10k
  2615.     dc.l     0,end_song
  2616. s48:
  2617.     dc.l    pr,pr,pr,pr
  2618.     dc.l     0,end_song
  2619.  
  2620. p1k:
  2621.       dc.w new_env
  2622.     dc.l x_env
  2623.       dc.w new_snd
  2624.       dc.l sine
  2625.     dc.w C06,3,rest,2,C06,3,rest,2,C06,3,rest,7
  2626.     dc.w c06,3,rest,7,c06,3,rest,2,c06,3,rest,2
  2627.     dc.w C06,3,rest,7,c06,3,rest,7,c06,3,rest,2
  2628.     dc.w c06,3,rest,2,C06,3,rest,2,C06,3,rest,2
  2629.     dc.w c06,3,rest,7,c06,3,rest,2,c06,3,rest,2
  2630.     dc.w C06,3,rest,2,C06,3,rest,7,C06,3,rest,2
  2631.     dc.w C06,3,rest,7,c06,3,rest,7,c06,3,rest,2
  2632.     dc.w c06,3,rest,2,C06,3,rest,2,C06,3,rest,2
  2633.       dc.w end_patt
  2634. p2k:
  2635.       dc.w new_env
  2636.     dc.l org_env
  2637.       dc.w new_snd
  2638.       dc.l sax2
  2639.     dc.w E05,sq,F05,sq,Gb05,sq,G05,sq
  2640.     dc.w Ab05,sq,A05,sq,Bb05,sq,B05,sq
  2641.       dc.w end_patt
  2642. p2ak:
  2643.     dc.w C05,q,rest,q*7
  2644.       dc.w end_patt
  2645. p3k:
  2646.       dc.w new_snd
  2647.       dc.l bas4
  2648.     dc.w C02,q,C02,q,C03,q,Eb02,sq,Bb02,q
  2649.     dc.w F02,sq,C03,q,G02,q,Gb02,q
  2650.       dc.w end_patt
  2651. p3ak:
  2652.     dc.w C02,q,rest,q*7
  2653.       dc.w end_patt
  2654. p10k:     
  2655.       dc.w new_env
  2656.     dc.l kick_env
  2657.       dc.w new_snd
  2658.       dc.l kik1
  2659.       dc.w r16,sq
  2660.       dc.w new_snd
  2661.       dc.l hatcl
  2662.       dc.w r16,sQ,r16,sQ,r16,sQ
  2663.       dc.w new_snd
  2664.       dc.l snr1
  2665.       dc.w r19,Q
  2666.       dc.w new_snd
  2667.       dc.l kik1
  2668.       dc.w r16,sQ
  2669.       dc.w new_snd
  2670.       dc.l snr1
  2671.       dc.w r18,Q
  2672.       dc.w new_snd
  2673.       dc.l kik1
  2674.       dc.w r16,sQ
  2675.       dc.w new_snd
  2676.       dc.l snr1
  2677.       dc.w r10,Q,r17,q,r18,q
  2678.       dc.w end_patt
  2679.  
  2680. CR      set 24
  2681. tcr1     set 9
  2682. tcr2     set 8
  2683. Q       set cr/2
  2684. tq1      set 4
  2685. tq2      set 5
  2686. ;tsq     set 3
  2687. ;tsq2     set 2
  2688. SQ      set cr/4
  2689. ;m       set 254
  2690. ;rest     set $fd00
  2691. ;dcr      set cr+q
  2692. ;dq      set q+sq
  2693. ;dsq      set sq+(sq/2)
  2694. ;sb      set cr*4
  2695. ;min      set cr*2
  2696. ;dm      set min+cr
  2697.  
  2698. ;nostalgic
  2699.  
  2700. s49:
  2701.     dc.l    p1l
  2702.       dc.l     0,end_song
  2703.  
  2704. s50:
  2705.     dc.l    p4l
  2706.         DC.L     0,end_song
  2707.  
  2708. s51:
  2709.         
  2710.     dc.l    p2l,p2l,p3l
  2711.     dc.l     0,end_song
  2712. s52:
  2713.     dc.l    pr,pr,pr,pr
  2714.     dc.l     0,end_song
  2715.  
  2716. p1l:
  2717.       dc.w new_env
  2718.     dc.l flt1_env
  2719.       dc.w new_snd
  2720.       dc.l sax2
  2721.     dc.w C06,cr*3,B05,cr*2,C06,q,D06,q,A05,cr*6
  2722.     dc.w C06,cr*3,B05,cr*2,C06,q,D06,q,A05,cr*6
  2723.     dc.w E06,cr*3,D06,q*5,E06,q,C06,q*11,rest,q
  2724.     dc.w C06,cr*3,B05,cr*2,C06,q,D06,q,C06,cr*3,E05,cr,D05,cr,C05,cr
  2725.       dc.w end_patt
  2726. p2l:
  2727.       dc.w new_env
  2728.     dc.l org_env
  2729.       dc.w new_snd
  2730.       dc.l sax2
  2731.     dc.w rest,q,G01,q,C02,q,G01,q,E02,q,G01,q
  2732.     dc.w rest,q,G01,q,C02,q,G01,q,E02,q,G01,q
  2733.     dc.w rest,q,C02,q,F02,q,C02,q,A02,q,C02,q
  2734.     dc.w rest,q,C02,q,F02,q,C02,q,A02,q,C02,q
  2735.       dc.w end_patt
  2736. p3l:
  2737.     dc.w rest,q,B01,q,E02,q,B01,q,Ab02,q,B01,q
  2738.     dc.w rest,q,B01,q,E02,q,B01,q,Ab02,q,B01,q
  2739.     dc.w rest,q,E02,q,A02,q,E02,q,C03,q,E02,q
  2740.     dc.w rest,q,E02,q,A02,q,E02,q,C03,q,E02,q
  2741.     dc.w rest,q,C02,q,F02,q,C02,q,A02,q,C02,q
  2742.     dc.w rest,q,D02,q,G02,q,D02,q,B02,q,D02,q
  2743.     dc.w rest,q,G01,q,C02,q,G01,q,E02,q,G01,q
  2744.     dc.w rest,q,G01,q,C02,q,G01,q,E02,q,G01,q
  2745.       dc.w end_patt
  2746. p4l:
  2747.       dc.w new_env
  2748.     dc.l org_env
  2749.       dc.w new_snd
  2750.       dc.l orglp2
  2751.     dc.w C03,q*5,rest,q,C03,cr,D03,cr,E03,cr
  2752.     dc.w F03,q*5,rest,q,F03,cr,E03,cr,D03,cr
  2753.     dc.w C03,q*5,rest,q,C03,cr,D03,cr,E03,cr
  2754.     dc.w F03,q*5,rest,q,F03,cr,E03,cr,D03,cr
  2755.     dc.w E03,q*5,rest,q,E03,cr*3,A03,cr*3,A03,cr*3
  2756.     dc.w F03,q*5,rest,q,G03,cr*3,C03,cr*3,C03,cr*3
  2757.       dc.w end_patt
  2758.  
  2759.  
  2760. CR      set 24
  2761. tcr1     set 9
  2762. tcr2     set 8
  2763. Q       set cr/2
  2764. tq      set 8
  2765. tq2      set 6
  2766. tsq     set 4
  2767. ;tsq2     set 2
  2768. SQ      set cr/4
  2769. ;m       set 254
  2770. ;rest     set $fd00
  2771. ;dcr      set cr+q
  2772. ;dq      set q+sq
  2773. ;dsq      set sq+(sq/2)
  2774. ;sb      set cr*4
  2775. ;min      set cr*2
  2776. ;dm      set min+cr
  2777.  
  2778.  
  2779. ;Great triumph scene
  2780.  
  2781. s53:
  2782.     dc.l    p1m,p1mma,p1mmb,p1mmb,p1mmc,p1mmc
  2783.       dc.l     0,end_song
  2784. s54:
  2785.     dc.l    p2int,p2m,p2m,p2m,p2m,p2m,p2m,p2m,p2mma
  2786.     dc.l    p2m,p2m,p2m,p2m,p2m,p2m
  2787.         DC.L     0,end_song
  2788. s55:
  2789.     dc.l    p44m,p44m,p44m,p44m
  2790.     dc.l    p33ma,p33me,p33mb,p33mc
  2791.     dc.l    p33ma,p33me,p33mb,p33mc
  2792.     dc.l    p33m,p33m,p33m,p33m,p33m,p33m
  2793.     dc.l    p33m,p33m,p33m,p33m
  2794.     dc.l    p33ma,p33ma,p33ma,p33mb
  2795.     dc.l    p33ma,p33ma,p33ma,p33mc
  2796.     dc.l    p33m,p33m,p33m,p33m,p33m
  2797.     dc.l    p33m,p33m,p33m,p33m,p33m,p33m,p33m
  2798.     dc.l     0,end_song
  2799. s56:
  2800.     dc.l    pfzf,pfzg,pr,pfzg,pr,pr,pr,pr
  2801.     dc.l    pr,pr,pr,pr,pr,pr,pr,pr
  2802.     dc.l    pr,pr,pr,pr,pr,pr,pr,pr
  2803.     dc.l    pr,pr,pr,pr,pr,pr,pr,pr,pr,pr
  2804.     dc.l     0,end_song
  2805. p1m:
  2806.       dc.w new_env
  2807.     dc.l org_env
  2808.       dc.w new_snd
  2809.       dc.l sax2
  2810.     dc.w D05,cr*4,B04,cr*2,Db05,cr*2
  2811.     dc.w D05,cr*4,B04,cr*2,Db05,cr*2
  2812.     dc.w D04,cr*4,B03,cr*2,Db04,cr*2
  2813.     dc.w D05,cr*4,B04,cr*2,Db05,cr*2
  2814.     dc.w F05,tq,D06,tq,D05,tq
  2815.     dc.w A05,tq,A04,tq,F05,tq
  2816.     dc.w F04,tq,D05,tq,D04,tq
  2817.     dc.w A04,tq,A04*2,tq,F04,tq
  2818.     dc.w G04*2,tq,E04,tq,B03,tq
  2819.     dc.w G04,tq,E04,tq,B04,tq
  2820.     dc.w Db05,cr*2
  2821.     dc.w F05,tq,D06,tq,D05,tq
  2822.     dc.w A05,tq,A04,tq,F05,tq
  2823.     dc.w F04,tq,D05,tq,D04,tq
  2824.     dc.w A04,tq,A04*2,tq,F04,tq
  2825.     dc.w B03,tq,G04,tq,E04,tq
  2826.     dc.w B04,tq,G04,tq,D05,tq
  2827.     dc.w Db05,cr*2
  2828.     dc.w D05,cr*4,B04,cr*2,Db05,tq*5
  2829. ;      dc.w new_env
  2830. ;    dc.l org_env
  2831. ;      dc.w new_snd
  2832. ;      dc.l orglp2
  2833.     dc.w G05,tsq,Ab05,tsq,A05,tq,D05,tq,A05,tq
  2834.     dc.w G05,tq,D05,tq,G05,tq
  2835.     dc.w F05,tq,D05,tq,F05,tq
  2836.     dc.w E05,tq,A04,tq,D05,tq 
  2837.     dc.w E05,tq,B04,tq,E05,tq
  2838.     dc.w D05,tq,B04,tq,D05,tq
  2839.     dc.w Db05,tq*5
  2840. ;     dc.w new_env
  2841. ;    dc.l org_env
  2842. ;    dc.w new_snd
  2843. ;      dc.l orglp2
  2844.     dc.w G05,tsq,Ab05,tsq,A05,tq,D05,tq,A05,tq
  2845.     dc.w G05,tq,D05,tq,G05,tq
  2846.     dc.w F05,tq,D05,tq,F05,tq
  2847.     dc.w E05,tq,A04,tq,D05,tq 
  2848.     dc.w E05,tq,B04,tsq,E05,tsq,Ab05,tq
  2849.     dc.w B05,tq,Ab05,tq,B05,tq
  2850. ;      dc.w new_env
  2851. ;    dc.l org_env
  2852. ;      dc.w new_snd
  2853. ;      dc.l orglp2
  2854.     dc.w A06,cr*2
  2855.       dc.w end_patt
  2856. p1mma:
  2857.     dc.w Bb05,tq*2,F05,tq*2,D05,tq,F05,tq
  2858.     dc.w D06,tq*2,Bb05,tq*2,F05,tq,D05,tq
  2859.     dc.w Db06,tq*2,A05,tq*2,E05,tq,A05,tq
  2860.     dc.w E06,cr*2
  2861.     dc.w Bb05,tq*2,F05,tq*2,D05,tq,F05,tq
  2862.     dc.w D06,tq*2,Bb05,tq*2,F05,tq,D05,tq
  2863.     dc.w B05,tq*2,Gb05,tq*2,E05,tq,Gb05,tq
  2864.     dc.w Db06,cr*2
  2865.     dc.w D04,cr*4,B03,cr*2,Db04,cr*2
  2866.     dc.w D05,cr*4,B04,cr*2,Db05,cr*2
  2867.       dc.w end_patt
  2868. p1mmb:
  2869.     dc.w D04,tq,F04,tq,A04,tq
  2870.     dc.w D05,tq,F05,tq,A05,tq
  2871.     dc.w D06,tq,A05,tq,F05,tq
  2872.     dc.w D05,tq,A04,tq,F04,tq
  2873.     dc.w E04,tq,G04,tq,B04,tq
  2874.     dc.w E05,tq,B04,tq,E05,tq
  2875.     dc.w A04,tq,Db05,tq,E05,tq
  2876.     dc.w A05,tq,E05,tq,A05,tq
  2877.       dc.w end_patt
  2878. p1mmc:
  2879.     dc.w D04,tsq,F04,tsq,A04,tsq
  2880.     dc.w D05,tsq,F05,tsq,A05,tsq
  2881.     dc.w D06,tsq,A05,tsq,F05,tsq
  2882.     dc.w D05,tsq,A04,tsq,F04,tsq
  2883.     dc.w D04,tsq,F04,tsq,A04,tsq
  2884.     dc.w D05,tsq,F05,tsq,A05,tsq
  2885.     dc.w D06,tsq,A05,tsq,F05,tsq
  2886.     dc.w D05,tsq,A04,tsq,F04,tsq
  2887.  
  2888.     dc.w E04,tsq,G04,tsq,B04,tsq
  2889.     dc.w E05,tsq,B04,tsq,E05,tsq
  2890.     dc.w E04,tsq,G04,tsq,B04,tsq
  2891.     dc.w E05,tsq,B04,tsq,E05,tsq
  2892.  
  2893.     dc.w A04,tsq,Db05,tsq,E05,tsq
  2894.     dc.w A05,tsq,E05,tsq,A05,tsq
  2895.     dc.w A04,tsq,Db05,tsq,E05,tsq
  2896.     dc.w A05,tsq,E05,tsq,A05,tsq
  2897.  
  2898.       dc.w end_patt
  2899. p2int:
  2900.       dc.w new_env
  2901.     dc.l org_env
  2902.       dc.w new_snd
  2903.     dc.l sax2
  2904.     dc.w F04,cr*4,E04,cr*2,A04,cr*2
  2905.     dc.w F04,cr*4,E04,cr*2,A04,cr*2
  2906.       dc.w end_patt
  2907. p2m:
  2908.       dc.w new_env
  2909.     dc.l org_env
  2910.       dc.w new_snd
  2911.     dc.l orglp2
  2912.     dc.w D02,(tq*2)-tsq,rest,tsq,D02,tq*2,F01,tq,A01,tq
  2913.     dc.w D02,(tq*2)-tsq,rest,tsq,D02,tq*2,F01,tq,A01,tq
  2914.     dc.w E02,(tq*2)-tsq,rest,tsq,E02,tq*2,D02,tq,B01,tq,A01,cr,Db02,cr
  2915.      dc.w end_patt
  2916. ;p2m:
  2917.       dc.w new_env
  2918.     dc.l org_env
  2919.       dc.w new_snd
  2920.     dc.l orglp2
  2921.     dc.w D02,tq*4,F01,tq,A01,tq,D02,tq*4,F01,tq,A01,tq
  2922.     dc.w E02,tq*4,D02,tq,B01,tq,A01,cr,Db02,cr
  2923.      dc.w end_patt
  2924. p2mma:
  2925.       dc.w new_env
  2926.     dc.l org_env
  2927.       dc.w new_snd
  2928.     dc.l orglp2
  2929.     dc.w Bb02,(tq*2)-tsq,rest,tsq,Bb02,tq*2,F02,tq,G02,tq
  2930.     dc.w Bb02,(tq*2)-tsq,rest,tsq,Bb02,tq*2,F02,tq,G02,tq
  2931.     dc.w A02,(tq*2)-tsq,rest,tsq,A02,tq*2,E02,tq,G02,tq,A02,cr*2
  2932.     dc.w Bb02,(tq*2)-tsq,rest,tsq,Bb02,tq*2,F02,tq,G02,tq
  2933.     dc.w Bb02,(tq*2)-tsq,rest,tsq,Bb02,tq*2,F02,tq,G02,tq
  2934.     dc.w E03,(tq*2)-tsq,rest,tsq,E03,tq*2,D03,tq,B02,tq,A02,cr*2
  2935.      dc.w end_patt
  2936. p33m:     
  2937.       dc.w new_env
  2938.     dc.l kick_env
  2939.       dc.w new_snd
  2940.       dc.l kik1
  2941.       dc.w r16,tQ
  2942.       dc.w new_snd
  2943.       dc.l hatcl
  2944.       dc.w r16,tQ,r16,tQ
  2945.       dc.w new_snd
  2946.       dc.l snr1
  2947.       dc.w r16,cr    ;tQ
  2948. ;      dc.w new_snd
  2949. ;      dc.l hatcl
  2950. ;      dc.w r16,tQ,r16,tQ
  2951. p33mb:  dc.w new_snd
  2952.       dc.l hatcl
  2953.     dc.w r16,tQ,r16,tsq,r16,tsQ,r16,tq
  2954.       dc.w new_snd
  2955.       dc.l kik1
  2956.       dc.w r16,tQ
  2957.       dc.w new_snd
  2958.       dc.l hatcl
  2959.       dc.w r16,tQ,r16,tQ
  2960.       dc.w end_patt
  2961. p44m:     
  2962.       dc.w new_env
  2963.     dc.l kick_env
  2964.       dc.w new_snd
  2965.       dc.l hatcl
  2966.       dc.w r16,tQ
  2967.       dc.w r16,tQ,r16,tQ
  2968.       dc.w r16,tQ
  2969.       dc.w r16,tsQ,r16,tsQ,r16,tq
  2970.     dc.w r16,tq,r16,tsq,r16,tsQ,r16,tq
  2971.       dc.w r16,tQ
  2972.       dc.w r16,tQ,r16,tQ
  2973.       dc.w end_patt
  2974. p33ma:     
  2975.       dc.w new_env
  2976.     dc.l kick_env
  2977.       dc.w new_snd
  2978.       dc.l kik1
  2979.       dc.w r16,tQ
  2980.       dc.w new_snd
  2981.       dc.l hatcl
  2982.       dc.w r16,tQ
  2983.       dc.w new_snd
  2984.       dc.l kik1
  2985.       dc.w r16,tQ
  2986.       dc.w new_snd
  2987.       dc.l hatcl
  2988.       dc.w r16,tsQ,r16,tsQ
  2989.       dc.w new_snd
  2990.       dc.l snr1
  2991.       dc.w r16,tQ,r16,tq
  2992.       dc.w end_patt
  2993. pfzf:
  2994.       dc.w new_env
  2995.     dc.l kick_env
  2996.       dc.w new_snd
  2997.       dc.l snr1
  2998.       dc.w r4,cr*4
  2999.       dc.w end_patt
  3000. pfzg:
  3001.       dc.w new_env
  3002.     dc.l kick_env
  3003.       dc.w new_snd
  3004.       dc.l cow
  3005.     dc.w r15,cr,r15,cr,r15,tq*2
  3006.       dc.w new_snd
  3007.       dc.l tom1
  3008.       dc.w r12,tq,r10,tq,r8,tq,r6,tq
  3009.       dc.w end_patt
  3010. p33mc:     
  3011.       dc.w new_env
  3012.     dc.l kick_env
  3013.       dc.w new_snd
  3014.       dc.l kik1
  3015.       dc.w r16,tQ
  3016.       dc.w r16,tQ
  3017.       dc.w r16,tQ
  3018.       dc.w r16,tQ
  3019.       dc.w r16,tQ
  3020.       dc.w r16,tQ
  3021.       dc.w end_patt
  3022. p33me:     
  3023.       dc.w new_env
  3024.     dc.l kick_env
  3025.       dc.w new_snd
  3026.       dc.l kik1
  3027.       dc.w r16,tQ
  3028.       dc.w r16,tQ
  3029.       dc.w r16,tQ
  3030.       dc.w r16,tQ
  3031.       dc.w new_snd
  3032.       dc.l hatcl
  3033.       dc.w r16,tsQ,r16,tsQ
  3034.       dc.w new_snd
  3035.       dc.l kik1
  3036.       dc.w r16,tQ
  3037.       dc.w end_patt
  3038.  
  3039. CR      set 20
  3040. tcr1     set 9
  3041. tcr2     set 8
  3042. Q       set cr/2
  3043. tq1      set 4
  3044. tq2      set 5
  3045. ;tsq     set 3
  3046. ;tsq2     set 2
  3047. SQ      set cr/4
  3048. ;m       set 254
  3049. ;rest     set $fd00
  3050. ;dcr      set cr+q
  3051. ;dq      set q+sq
  3052. ;dsq      set sq+(sq/2)
  3053. ;sb      set cr*4
  3054. ;min      set cr*2
  3055. ;dm      set min+cr0
  3056.  
  3057.  
  3058. ;secretive
  3059.  
  3060. s57:
  3061.     dc.l    p1n,p1n
  3062.       dc.l     0,end_song
  3063.  
  3064. s58:
  3065.     dc.l    p2n,p2n
  3066.         DC.L     0,end_song
  3067.  
  3068. s59:
  3069.         
  3070.     dc.l    p10n,p10n
  3071.     dc.l     0,end_song
  3072. s60:
  3073.     dc.l    pr,pr,pr,pr
  3074.     dc.l     0,end_song
  3075.  
  3076. p1n:
  3077.       dc.w new_env
  3078.     dc.l org_env
  3079.       dc.w new_snd
  3080.       dc.l shak
  3081.     dc.w F05,cr,Eb05,cr,Bb04,cr,G04,cr*2,Bb04,cr,Eb05,cr,F05,q,rest,q
  3082.     dc.w F05,cr,Eb05,cr,Bb04,cr,Ab04,cr*2,Bb04,cr,Eb05,cr,F05,q,rest,q
  3083.     dc.w F05,cr,Eb05,cr,Bb04,cr,Gb04,cr*2,Bb04,cr,Eb05,cr,F05,q,rest,q
  3084.     dc.w F05,cr,Eb05,cr,Bb04,cr,Gb04,cr*2,Bb04,cr,Eb05,cr,F05,q,rest,q
  3085.       dc.w end_patt
  3086. p2n:
  3087.       dc.w new_env
  3088.     dc.l org_env
  3089.       dc.w new_snd
  3090.       dc.l orglp2
  3091.     dc.w Eb02,cr*3,Db02,cr*5,Gb01,cr*3,Ab01,cr*5
  3092.     dc.w Eb01,cr*16
  3093.       dc.w end_patt
  3094. p10n:     
  3095.       dc.w new_env
  3096.     dc.l kick_env
  3097.       dc.w new_snd
  3098.       dc.l kik1
  3099.       dc.w r16,cr*3
  3100.       dc.w r16,cr*2
  3101.       dc.w r16,cr*1
  3102.       dc.w new_snd
  3103.       dc.l snr1
  3104.       dc.w r16,cr*2
  3105.       dc.w new_snd
  3106.       dc.l kik1
  3107.       dc.w r16,cr*3
  3108.       dc.w r16,cr*2
  3109.       dc.w r16,cr
  3110.       dc.w new_snd
  3111.       dc.l snr1
  3112.       dc.w r16,cr
  3113.       dc.w new_snd
  3114.       dc.l kik1
  3115.       dc.w r16,cr
  3116.     dc.w r16,cr*3
  3117.       dc.w r16,cr*2
  3118.       dc.w new_snd
  3119.       dc.l snr1
  3120.       dc.w r16,cr
  3121.     dc.w r16,cr*2
  3122.       dc.w new_snd
  3123.       dc.l kik1
  3124.       dc.w r16,cr*3
  3125.       dc.w r16,cr*2
  3126.       dc.w new_snd
  3127.       dc.l snr1
  3128.       dc.w r16,cr
  3129.     dc.w r16,cr,r16,cr
  3130.       dc.w end_patt
  3131.  
  3132. ;Great disaster scene
  3133.  
  3134. s61:
  3135.     dc.l    qpr,qpr,qpr,qpr,p1o
  3136.       dc.l     0,end_song
  3137.  
  3138. s62:
  3139.     dc.l    p2o,p2o,p2o,p2o,p2o,p2o,p2o,p2o,p2o,p2o
  3140.     dc.l    p2o,p2o,p2o,p2o,p2o,p2o,p2o,p2o,p2ao
  3141.         DC.L     0,end_song
  3142.  
  3143. s63:
  3144.         
  3145.     dc.l    qpr,qpr,p3o,p3o,p3o,p3o,p3o,p3o,p3o,p3o,p3o
  3146.     dc.l    p3o,p3o,p3o,p3o,p3o,p3o,p3o,p3o,p3ao
  3147.     dc.l     0,end_song
  3148. s64:
  3149.     dc.l    pbb,pbb,pbb,pbb
  3150.     dc.l     0,end_song
  3151. qpr:
  3152.     dc.w rest,cr*4
  3153.       dc.w end_patt
  3154. p1o:
  3155.       dc.w new_env
  3156.     dc.l org_env
  3157.       dc.w new_snd
  3158.       dc.l sax2
  3159.     dc.w C05,cr*6,Bb04,cr*2,G04,cr*8
  3160.     dc.w C05,cr*6,Eb05,cr*2,Gb05,cr*8
  3161.     dc.w C05,cr*6,Bb04,cr*2,G04,cr*8
  3162.     dc.w C05,cr*6,Eb05,cr*2,Gb05,cr*8
  3163.     dc.w G05,cr*6,F05,cr*2,C05,cr*8
  3164.     dc.w G05,cr*6,Db06,cr*2
  3165.     dc.w C06,cr*8
  3166.     dc.w C05,cr*6,Bb04,cr*2,G04,cr*8
  3167.     dc.w C05,cr*6,Eb05,cr*2,Gb05,cr*4,F05,cr*4,C05,cr*8
  3168.       dc.w end_patt
  3169. p2o:
  3170.       dc.w new_env
  3171.     dc.l org_env
  3172.       dc.w new_snd
  3173.       dc.l orglp2
  3174.     dc.w C02,cr*2,Eb02,cr*2,Bb01,cr*2,Db02,cr*2
  3175.       dc.w end_patt
  3176. p2ao:
  3177.       dc.w new_env
  3178.     dc.l org_env
  3179.       dc.w new_snd
  3180.       dc.l orglp2
  3181.     dc.w C02,cr*8
  3182.       dc.w end_patt
  3183. p3o:
  3184.       dc.w new_env
  3185.     dc.l org_env
  3186.       dc.w new_snd
  3187.       dc.l orglp2
  3188.     dc.w C03,cr,Eb03,cr,Bb02,cr,Db03,cr
  3189.     dc.w C03,cr,Eb03,cr,Bb02,cr,Db03,cr
  3190.       dc.w end_patt
  3191. p3ao:
  3192.       dc.w new_env
  3193.     dc.l org_env
  3194.       dc.w new_snd
  3195.       dc.l orglp2
  3196.     dc.w C03,cr*8
  3197.       dc.w end_patt
  3198. pbb:
  3199.       dc.w new_env
  3200.     dc.l kick_env
  3201.       dc.w new_snd
  3202.       dc.l tom1
  3203.     dc.w pbend,down,50,r3,2
  3204.     dc.w r8,cr*4
  3205.       dc.w end_patt
  3206.  
  3207.  
  3208. CR      set 16
  3209. tcr1     set 9
  3210. tcr2     set 8
  3211. Q       set cr/2
  3212. tq1      set 4
  3213. tq2      set 5
  3214. SQ      set cr/4
  3215.  
  3216.  
  3217. ;Main theme tune
  3218.  
  3219.  
  3220. s65:
  3221. ;    dc.l    p13p,p14p,p15p,p14p,p13p,p14p,p15p,p14p
  3222.     dc.l    p                    ; intro 4
  3223.     dc.l    p1p                    ;part a 16
  3224.     dc.l    p1ap                    ;part a 16oct
  3225.     dc.l    p2p,p2ap                ;part b 16
  3226.     dc.l    p1p                    ;part a 16
  3227.     dc.l    p13p,p14p,p15p,p14p,p13p,p14p,p15p,p14p    ;solo 16
  3228.     dc.l    p13p,p14p,p15p,p14p,p13p,p14p,p15p,p14p
  3229.     dc.l    p16p
  3230.       dc.l     0,end_song
  3231.  
  3232. s66:
  3233.     dc.l    prp                    ;intro4
  3234.     dc.l    p3p,p4p,p5p,p4p,p3p,p4p,p6p,p6ap    ;part a 16
  3235.     dc.l    p3p,p4p,p5p,p4p,p5p,p4p,p3p,p3p
  3236.     dc.l    p3p,p4p,p5p,p4p,p3p,p4p,p6p,p6ap    ;part a 16
  3237.     dc.l    p3p,p4p,p5p,p4p,p5p,p4p,p3p,p3p
  3238.     dc.l    p7p,p8p,p9p,p7ap,p12p            ;part b 16
  3239.     dc.l    p7p,p8p,p9p,p7ap,p12ap
  3240.     dc.l    p3p,p4p,p5p,p4p,p3p,p4p,p6p,p6ap    ;part a 16
  3241.     dc.l    p3p,p4p,p5p,p4p,p5p,p4p,p3p,p3p
  3242.     dc.l    p3p,p4p,p5p,p4p,p3p,p4p,p5p,p4p        ;solo 16
  3243.     dc.l    p3p,p4p,p5p,p4p,p3p,p4p,p5p,p4p
  3244.     dc.l    p6p,p6ap                
  3245.     dc.l    p3p,p4p,p5p,p4p
  3246.     dc.l    p3p,p4p,p5p,p4p
  3247.     dc.l    p3p,p4p,p5p,p4p
  3248.     dc.l    p3p,p4p,p5p,p4p
  3249.     dc.l    p3p,p4p,p5p,p4p
  3250.         DC.L     0,end_song
  3251.  
  3252. s67:
  3253.     dc.l    prp                    ;intro 4 
  3254.     dc.l    p11p,p11p,p11p,p11ap,p11p,p11p,p11p,p11p    ;part a 16
  3255.     dc.l    p11p,p11p,p11p,p11ap,p11p,p11p,p11p,p11bp    ;part a 16
  3256.     dc.l    p10p,p10p,p10p,p10zp,p10p,p10p,p122p     ;part b 16
  3257.     dc.l    p10p,p10p,p10p,p10zp,p10p,p10p,p122p
  3258.     dc.l    p11p,p11p,p11p,p11ap,p11p,p11p,p11p,p11p    ;part a 16
  3259.     dc.l    p11p,p11p,p11p,p11ap,p11p,p11p,p11p,p11p    ;solo 16
  3260.     dc.l     p11p,p11p,p11p,p11p,p11p
  3261.     dc.l     p11p,p11p,p11p,p11p,p11p,p11p
  3262.     dc.l     0,end_song
  3263. s68:
  3264.     dc.l    prp
  3265.     dc.l    pq3p,pq4p,pq3p,pq5p
  3266.     dc.l    pq3p,pq4p,pq4p,pq6p
  3267.     dc.l    pq3p,pq4p,pq3p,pq5p
  3268.     dc.l    pq3p,pq4p,pq4p,pq6p
  3269.     dc.l    pq2p,pq2ap
  3270.     dc.l    pq3p,pq4p,pq3p,pq5p
  3271.     dc.l    pq3p,pq4p,pq4p,pq6p
  3272.     dc.l    pq3p,pq4p,pq3p,pq4p
  3273.     dc.l    pq3p,pq4p,pq3p,pq4p
  3274.     dc.l    prp,prp
  3275.     dc.l    pq3p,pq4p,pq3p,pq4p
  3276.     dc.l    pq3p,pq4p,pq3p,pq4p
  3277.     dc.l    pq3p,pq4p
  3278.     dc.l     0,end_song
  3279.  
  3280. prp:
  3281.       dc.w rest,cr*4
  3282.       dc.w end_patt
  3283.  
  3284. p1pz:
  3285.       dc.w new_env
  3286.     dc.l org_env
  3287.       dc.w new_snd
  3288.       dc.l shak
  3289.     dc.w A03,q*3,E04,q*3,D04,cr*5
  3290.     dc.w A03,q*3,E04,q*3,D04,cr*5
  3291.       dc.w end_patt
  3292. p2pz:
  3293.       dc.w new_env
  3294.     dc.l org_env
  3295.       dc.w new_snd
  3296.       dc.l shak
  3297.     dc.w E04,q*3,A04,q*3,G04,cr*5
  3298.     dc.w E04,q*3,A04,q*3,G04,cr*5
  3299.       dc.w end_patt
  3300. p1p:
  3301.       dc.w new_env
  3302.     dc.l org_env
  3303.       dc.w new_snd
  3304.       dc.l orglp2
  3305.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,B05,q
  3306.     dc.w C06,q*3,A05,q*3,B05,cr*4
  3307.       dc.w new_snd
  3308.       dc.l cow
  3309.       dc.w new_env
  3310.     dc.l og
  3311.     dc.w r12,q,r12,q
  3312.       dc.w new_snd
  3313.       dc.l orglp2
  3314.       dc.w new_env
  3315.     dc.l org_env
  3316.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,D06,q
  3317.     dc.w E06,q*13
  3318.       dc.w new_snd
  3319.       dc.l cow
  3320.       dc.w new_env
  3321.     dc.l og
  3322.     dc.w r12,q,r12,q,r12,q
  3323.       dc.w new_snd
  3324.       dc.l orglp2
  3325.       dc.w new_env
  3326.     dc.l org_env
  3327.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,B05,q
  3328.     dc.w C06,q*3,A05,q*3,B05,cr*5
  3329.     dc.w C06,q*3,A05,q*3,C06,cr
  3330.     dc.w D06,q*3,B05,q*3,D06,cr,E06,cr*8
  3331.       dc.w end_patt
  3332. p2p:
  3333.       dc.w new_env
  3334.     dc.l org_env
  3335.     dc.w pbend,up,10,f05,2
  3336.     dc.w f04,cr*4
  3337.     dc.w E05,cr,D05,q,E05,q*7,Gb05,q,G05,q
  3338.     dc.w A05,cr*2,G05,cr,Gb05,q,G05,q*3
  3339.     dc.w F04,sq,Gb04,sq,G04,sq,Ab04,sq
  3340.     dc.w A04,sq,Bb04,sq,B04,sq,C05,sq
  3341.     dc.w Db05,sq,D05,sq,Eb05,sq,E05,sq
  3342.     dc.w F05,cr*2,C06,cr*2,A05,cr*2,F05,cr*2,A05,cr*7
  3343.      dc.w end_patt
  3344. pq2p:
  3345.       dc.w new_env
  3346.     dc.l org_env
  3347.       dc.w new_snd
  3348.       dc.l sax2
  3349.     dc.w D04,cr*2
  3350.     dc.w C05,cr,A04,q,B04,q*7,Db05,q,D05,q
  3351.     dc.w E05,cr*2,D05,cr,C05,q,D05,q*3
  3352.     dc.w C04,sq,Db04,sq,D04,sq,Eb04,sq
  3353.     dc.w E04,sq,F04,sq,Gb04,sq,G04,sq
  3354.     dc.w Ab04,sq,A04,sq,Bb04,sq,B04,sq
  3355.     dc.w A04,cr*2,F05,cr*2,C05,cr*2,A04,cr*2,F05,cr*7
  3356.      dc.w end_patt
  3357. p1ap:
  3358.       dc.w new_env
  3359.     dc.l org_env
  3360.       dc.w new_snd
  3361.       dc.l sax2
  3362.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,B05,q
  3363.     dc.w C06,q*3,A05,q*3,B05,cr*5
  3364.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,D06,q
  3365.     dc.w E06,cr*8
  3366.     dc.w A05,q*3,E06,q*3,D06,cr*4,C06,q,B05,q
  3367.     dc.w C06,q*3,A05,q*3,B05,cr*5
  3368.     dc.w C06,q*3,A05,q*3,C06,cr
  3369.     dc.w D06,q*3,B05,q*3,D06,cr,E06,cr*6
  3370.       dc.w end_patt
  3371. p2ap:
  3372.     dc.w pbend,up,13,f05,2
  3373.     dc.w f04,cr*3
  3374.     dc.w E05,cr,D05,q,E05,q*7,Gb05,q,G05,q
  3375.     dc.w A05,cr*2,G05,cr,Gb05,q,G05,q*9
  3376.     dc.w F05,cr*2,C06,cr*2,A05,cr*2,F05,cr*2,A05,cr*8
  3377.      dc.w end_patt
  3378. pq2ap:
  3379.     dc.w pbend,up,13,D05,2
  3380.     dc.w D04,cr*3
  3381.     dc.w C05,cr,A04,q,B04,q*7,Db05,q,D05,q
  3382.     dc.w E05,cr*2,D05,cr,C05,q,D05,q*9
  3383.     dc.w A04,cr*2,F05,cr*2,C05,cr*2,A04,cr*2,F05,cr*8
  3384.      dc.w end_patt
  3385. p3p:
  3386.       dc.w new_env
  3387.     dc.l bas5_env
  3388.       dc.w new_snd
  3389.       dc.l fingbl
  3390.     dc.w A02,q,A02,q,G03,q,A03,q
  3391.     dc.w A02,q,A02,q,Db03,q,E03,q
  3392.       dc.w end_patt
  3393. p4p:
  3394.     dc.w G02,q,G02,q,F03,q,G03,q
  3395.     dc.w G02,q,G02,q,B02,q,D03,q
  3396.       dc.w end_patt
  3397. p5p:
  3398.     dc.w F02,q,F02,q,Eb03,q,F03,q
  3399.     dc.w F02,q,F02,q,A02,q,C03,q
  3400.       dc.w end_patt
  3401. p6p:
  3402.       dc.w new_snd
  3403.       dc.l fingbl
  3404.     dc.w E03,q,E03,q,E03,q,E03,q
  3405.     dc.w E03,q,E03,q,E03,q,E03,q
  3406.       dc.w end_patt
  3407. p6ap:
  3408.     dc.w E03,q,E03,q,D03,q,D03,q
  3409.     dc.w C03,q,C03,q,B02,q,B02,q
  3410.       dc.w end_patt
  3411. p7p:
  3412.     dc.w D03,q,D03,q,F03,q,F03,q
  3413.     dc.w G03,q,G03,q,A03,q,A03,q
  3414.       dc.w end_patt
  3415. p7ap:
  3416.     dc.w D03,q,D03,q,Gb03,q,F03,q
  3417.     dc.w G03,q,G03,q,A03,q,A03,q
  3418.       dc.w end_patt
  3419. p8p:
  3420.     dc.w E03,q,E03,q,G03,q,G03,q
  3421.     dc.w A03,q,A03,q,B03,q,B03,q
  3422.       dc.w end_patt
  3423. p9p:
  3424.     dc.w A02,q,A02,q,C03,q,C03,q
  3425.     dc.w D03,q,D03,q,E03,q,E03,q
  3426.       dc.w end_patt
  3427. p9ap:
  3428.     dc.w A02,q,A02,q,C03,q,C03,q
  3429.     dc.w D03,q,D03,q,E03,q,E03,q
  3430.       dc.w end_patt
  3431. p12p:
  3432.     dc.w F02,q,F02,q,G02,q,G02,q
  3433.     dc.w A02,q,A02,q,C03,q,C03,q
  3434.     dc.w D03,q,D03,q,E03,q,E03,q
  3435.     dc.w F03,q,F03,q,G03,q,G03,q
  3436.     dc.w D04,q,D03,q,D03,q,D04,q
  3437.     dc.w D03,q,D03,q,D04,q,D03,q
  3438.     dc.w D03,q,D04,q,D03,q,D03,q
  3439.     dc.w D04,q,D03,q,D04,q,D04,q
  3440.       dc.w end_patt
  3441. p12ap:
  3442.     dc.w F02,q,F02,q,G02,q,G02,q
  3443.     dc.w A02,q,A02,q,C03,q,C03,q
  3444.     dc.w D03,q,D03,q,E03,q,E03,q
  3445.     dc.w F03,q,F03,q,G03,q,G03,q
  3446.     dc.w D03,q,D02,q,D02,q,D03,q
  3447.     dc.w A03,sq,Ab03,sq,G03,sq,Gb03,sq
  3448.     dc.w F03,sq,E03,sq,Eb03,sq,D03,sq
  3449.     dc.w Db03,sq,C03,sq,B02,sq,Bb02,sq
  3450.     dc.w A02,sq,Ab02,sq,G02,sq,Gb02,sq
  3451.     dc.w F02,sq,E02,sq,Eb02,sq,D02,sq
  3452.     dc.w Db02,sq,C01,sq,B01,sq,Bb01,sq
  3453.       dc.w end_patt
  3454. pq3p:
  3455.       dc.w new_env
  3456.     dc.l q_env
  3457.       dc.w new_snd
  3458.       dc.l chord1
  3459.     dc.w A02,cr
  3460.       dc.w new_snd
  3461.       dc.l chord2
  3462.     dc.w A02,q,A02,q
  3463.       dc.w new_snd
  3464.       dc.l chord1
  3465.     dc.w A02,cr
  3466.       dc.w new_snd
  3467.       dc.l chord2
  3468.     dc.w A02,q
  3469.       dc.w new_snd
  3470.       dc.l chord1
  3471.     dc.w G02,cr,G02,cr
  3472.       dc.w new_snd
  3473.       dc.l chord2
  3474.     dc.w G02,q
  3475.       dc.w new_snd
  3476.       dc.l chord1
  3477.     dc.w G02,cr
  3478.       dc.w new_snd
  3479.       dc.l chord2
  3480.     dc.w G02,q,G02,q
  3481.       dc.w end_patt
  3482. pq4p:
  3483.       dc.w new_snd
  3484.       dc.l chord1
  3485.     dc.w F02,cr
  3486.       dc.w new_snd
  3487.       dc.l chord2
  3488.     dc.w F02,q,f02,q
  3489.       dc.w new_snd
  3490.       dc.l chord1
  3491.     dc.w F02,cr
  3492.       dc.w new_snd
  3493.       dc.l chord2
  3494.     dc.w F02,q
  3495.       dc.w new_snd
  3496.       dc.l chord1
  3497.     dc.w G02,cr,G02,cr
  3498.       dc.w new_snd
  3499.       dc.l chord2
  3500.     dc.w G02,q
  3501.       dc.w new_snd
  3502.       dc.l chord1
  3503.     dc.w G02,cr
  3504.       dc.w new_snd
  3505.       dc.l chord2
  3506.     dc.w G02,q,G02,q
  3507.       dc.w end_patt
  3508. pq5p:
  3509.       dc.w new_snd
  3510.       dc.l chord1
  3511.     dc.w E02,cr
  3512.       dc.w new_snd
  3513.       dc.l chord2
  3514.     dc.w E02,q,E02,q
  3515.       dc.w new_snd
  3516.       dc.l chord1
  3517.     dc.w E02,cr
  3518.       dc.w new_snd
  3519.       dc.l chord2
  3520.     dc.w E02,q
  3521.       dc.w new_snd
  3522.       dc.l chord1
  3523.     dc.w E02,cr,E02,cr
  3524.       dc.w new_snd
  3525.       dc.l chord2
  3526.     dc.w E02,q
  3527.     dc.w E02,q,E02,q
  3528.     dc.w E02,q,E02,q
  3529.       dc.w end_patt
  3530. pq6p:
  3531.       dc.w new_env
  3532.     dc.l q_env
  3533.       dc.w new_snd
  3534.       dc.l chord1
  3535.     dc.w A02,cr
  3536.       dc.w new_snd
  3537.       dc.l chord2
  3538.     dc.w A02,q,A02,q
  3539.       dc.w new_snd
  3540.       dc.l chord1
  3541.     dc.w A02,cr
  3542.       dc.w new_snd
  3543.       dc.l chord2
  3544.     dc.w A02,q
  3545.       dc.w new_snd
  3546.       dc.l chord1
  3547.     dc.w A02,cr,A02,cr
  3548.       dc.w new_snd
  3549.       dc.l chord2
  3550.     dc.w A02,q
  3551.       dc.w new_snd
  3552.       dc.l chord1
  3553.     dc.w A02,cr
  3554.       dc.w new_snd
  3555.       dc.l chord2
  3556.     dc.w A02,q,A02,q
  3557.       dc.w end_patt
  3558. p13p:
  3559.       dc.w new_env
  3560.     dc.l shak_env
  3561.       dc.w new_snd
  3562.       dc.l shak
  3563.     dc.w A02,q,A02,q,G03,q,A03,q
  3564.     dc.w A02,q,A02,q,Db03,q,D03,sq,E03,sq
  3565.       dc.w end_patt
  3566. p14p:
  3567.     dc.w G02,q,G02,q,F03,sq,F03,sq,G03,q
  3568.     dc.w G02,q,G02,q,B02,q,D03,q
  3569.       dc.w end_patt
  3570. p15p:
  3571.     dc.w F02,q,F02,q,Eb03,q,F03,q
  3572.     dc.w F02,q,F02,q,A02,q,C03,sq,C02,sq
  3573.       dc.w end_patt
  3574. p16p:
  3575.       dc.w new_env
  3576.     dc.l org_env
  3577.       dc.w new_snd
  3578.       dc.l orglp2
  3579.     dc.w Db04,sq,D04,sq,Eb04,sq,E04,sq
  3580.     dc.w F04,sq,Gb04,sq,G04,sq,Ab04,sq
  3581.     dc.w A04,sq,Bb04,sq,B04,sq,C05,sq
  3582.     dc.w Db05,sq,D05,sq,Eb05,sq,E05,sq
  3583.     dc.w F05,sq,Gb05,sq,G05,sq,Ab05,sq
  3584.     dc.w A05,sq,Bb05,sq,B05,sq,C06,sq
  3585.     dc.w Db06,sq,D06,sq,Eb06,sq,E06,sq
  3586.     dc.w F06,sq,Gb06,sq,G06,sq,Ab06,sq
  3587.       dc.w new_env
  3588.     dc.l org_env
  3589.       dc.w new_snd
  3590.       dc.l sax2
  3591.     dc.w A05,cr*7,G05,q,E05,q,G05,q,A05,q*11,C06,cr,B05,cr
  3592.     dc.w A05,cr*7,G05,q,E05,q,G05,q,A05,q*11,C06,cr,B05,cr
  3593.     dc.w C06,q,B05,q,A05,q,E06,cr,D06,q,C06,q,A05,q
  3594.     dc.w B05,q,A05,q,G05,q,D06,cr,C06,q,B05,q,G05,q    
  3595.     dc.w A05,q,G05,q,F05,q,C06,cr,B05,q,C06,q,E06,q
  3596.     dc.w D06,cr*4
  3597.     dc.w C06,q,B05,q,A05,q,E06,cr,D06,q,C06,q,A05,q
  3598.     dc.w B05,q,A05,q,G05,q,D06,cr,C06,q,B05,q,G05,q    
  3599.     dc.w A05,q,C06,q,D06,q,F06,cr,A05,sq,C06,sq,D06,q,F06,q
  3600.     dc.w E06,sq,Eb06,sq,D06,sq,Db06,sq
  3601.     dc.w C06,sq,B05,sq,Bb05,sq,A05,sq
  3602.     dc.w Ab05,sq,G05,sq,Gb05,sq,F05,sq
  3603.     dc.w E05,sq,Eb05,sq,D05,sq,Db05,sq
  3604.     dc.w A04,sq,C05,sq,E05,sq,A05,sq
  3605.     dc.w C06,sq,E06,sq,A06,sq,C07,sq
  3606.     dc.w E07,sq,C07,sq,A06,sq,E06,sq
  3607.     dc.w C06,sq,A05,sq,E05,sq,C05,sq
  3608.     dc.w G04,sq,B04,sq,D05,sq,G05,sq
  3609.     dc.w B05,sq,D06,sq,G06,sq,B06,sq
  3610.     dc.w D07,sq,B06,sq,G06,sq,D06,sq
  3611.     dc.w B05,sq,G05,sq,D05,sq,B04,sq
  3612.     dc.w F04,sq,A04,sq,C05,sq,F05,sq
  3613.     dc.w A05,sq,C06,sq,F06,sq,A06,sq
  3614.     dc.w C07,sq,A06,sq,F06,sq,C06,sq
  3615.     dc.w A05,sq,F05,sq,C05,sq,A04,sq
  3616.       dc.w new_env
  3617.     dc.l org_env
  3618.       dc.w new_snd
  3619.       dc.l orglp2
  3620.     dc.w F04,sq,Gb04,sq,G04,sq,Ab04,sq
  3621.     dc.w A04,sq,Bb04,sq,B04,sq,C05,sq
  3622.     dc.w Db05,sq,D05,sq,Eb05,sq,E05,sq
  3623.     dc.w F05,sq,Gb05,sq,G05,sq,Ab05,sq
  3624.      dc.w end_patt
  3625.  
  3626. p:      
  3627.       dc.w new_env
  3628.     dc.l org_env
  3629.     dc.w new_snd
  3630.       dc.l orglp2
  3631.     dc.w F02,sq,Gb02,sq,G02,sq,Ab02,sq
  3632.     dc.w A02,sq,Bb02,sq,B02,sq,C03,sq
  3633.     dc.w Db03,sq,D03,sq,Eb03,sq,E03,sq
  3634.     dc.w F03,sq,Gb03,sq,G03,sq,Ab03,sq
  3635.      dc.w end_patt
  3636. p11p:     
  3637.       dc.w new_env
  3638.     dc.l kick_env
  3639.       dc.w new_snd
  3640.       dc.l kik1
  3641.       dc.w r16,Q,r16,q,rest,q
  3642.     dc.w r16,q
  3643.       dc.w new_snd
  3644.       dc.l snr1
  3645.       dc.w r16,Q*3
  3646.       dc.w new_snd
  3647.       dc.l kik1
  3648.       dc.w r16,cr
  3649.       dc.w r16,cr
  3650.       dc.w r16,q
  3651.       dc.w new_snd
  3652.       dc.l snr1
  3653.       dc.w r16,cr
  3654.       dc.w r16,cr
  3655.       dc.w end_patt
  3656. p11ap:     
  3657.       dc.w new_env
  3658.     dc.l kick_env
  3659.       dc.w new_snd
  3660.       dc.l kik1
  3661.       dc.w r16,Q,r16,q,rest,q
  3662.     dc.w r16,q
  3663.       dc.w new_snd
  3664.       dc.l snr1
  3665.       dc.w r16,Q*3
  3666.       dc.w new_snd
  3667.       dc.l kik1
  3668.       dc.w r16,cr
  3669.       dc.w r16,cr
  3670.       dc.w r16,q
  3671.       dc.w new_snd
  3672.       dc.l snr1
  3673.       dc.w r17,q,r17,q
  3674.       dc.w r17,q,r17,q
  3675.       dc.w end_patt
  3676. p11bp:     
  3677.       dc.w new_env
  3678.     dc.l kick_env
  3679.       dc.w new_snd
  3680.       dc.l kik1
  3681.       dc.w r16,Q,r16,q,rest,q
  3682.     dc.w r16,q
  3683.       dc.w new_snd
  3684.       dc.l snr1
  3685.       dc.w r16,Q*3
  3686.       dc.w new_snd
  3687.       dc.l kik1
  3688.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  3689.       dc.w r16,sq,r16,sq 
  3690.       dc.w new_snd
  3691.       dc.l snr1
  3692.       dc.w r19,Q
  3693.       dc.w new_snd
  3694.       dc.l kik1
  3695.       dc.w r16,cr
  3696.       dc.w  r16,sq,r16,sq
  3697.       dc.w new_snd
  3698.       dc.l snr1
  3699.       dc.w r16,cr
  3700.       dc.w end_patt
  3701. p10p:     
  3702.       dc.w new_env
  3703.     dc.l kick_env
  3704.       dc.w new_snd
  3705.       dc.l kik1
  3706.       dc.w r16,cr
  3707.       dc.w new_snd
  3708.       dc.l snr1
  3709.       dc.w r19,cr
  3710.       dc.w new_snd
  3711.       dc.l kik1
  3712.       dc.w r16,q
  3713.       dc.w r16,q
  3714.       dc.w new_snd
  3715.       dc.l snr1
  3716.       dc.w r19,q
  3717.       dc.w new_snd
  3718.       dc.l kik1
  3719.       dc.w r16,q
  3720.       dc.w end_patt
  3721. p10zp:     
  3722.       dc.w new_env
  3723.     dc.l kick_env
  3724.       dc.w new_snd
  3725.       dc.l kik1
  3726.       dc.w r16,sq,r16,sq,r16,sq,r16,sq
  3727.       dc.w new_snd
  3728.       dc.l snr1
  3729.       dc.w r19,q
  3730.       dc.w new_snd
  3731.       dc.l kik1
  3732.       dc.w r16,q
  3733.       dc.w new_snd
  3734.       dc.l snr1
  3735.       dc.w r19,q
  3736.       dc.w new_snd
  3737.       dc.l kik1
  3738.       dc.w r16,q
  3739.       dc.w new_snd
  3740.       dc.l tom1
  3741.       dc.w r10,sq,r8,sq,r6,q
  3742.       dc.w end_patt
  3743.  
  3744.  
  3745. p122p:     
  3746.       dc.w new_env
  3747.     dc.l kick_env
  3748.       dc.w new_snd
  3749.       dc.l snr1
  3750.       dc.w r19,Q
  3751.       dc.w new_snd
  3752.       dc.l kik1
  3753.       dc.w r16,Q,r16,q
  3754.       dc.w new_env
  3755.     dc.l kick_env
  3756.       dc.w new_snd
  3757.       dc.l snr1
  3758.       dc.w r19,Q
  3759.       dc.w new_snd
  3760.       dc.l kik1
  3761.       dc.w r16,Q,r16,q
  3762.       dc.w new_env
  3763.     dc.l kick_env
  3764.       dc.w new_snd
  3765.       dc.l snr1
  3766.       dc.w r19,Q
  3767.       dc.w new_snd
  3768.       dc.l kik1
  3769.       dc.w r16,Q,r16,q
  3770.       dc.w new_env
  3771.     dc.l kick_env
  3772.       dc.w new_snd
  3773.       dc.l snr1
  3774.       dc.w r19,Q
  3775.       dc.w new_snd
  3776.       dc.l kik1
  3777.       dc.w r16,Q,r16,q
  3778.       dc.w new_snd
  3779.       dc.l snr1
  3780.       dc.w r16,Q
  3781.       dc.w new_snd
  3782.       dc.l tom1
  3783.       dc.w r11,q
  3784.       dc.w r9,q,r7,q
  3785.       dc.w end_patt
  3786.  
  3787.     ; sample parameters
  3788. hatcl        dc.w 1
  3789.              dc.l hatcd
  3790.              dc.w 665/2 
  3791.              dc.l restd
  3792.              dc.w 16/2
  3793. cow
  3794.         dc.w 1  
  3795.              dc.l cowd
  3796.              dc.w 355/2    ;;;1938/2 
  3797.              dc.l restd
  3798.              dc.w 16/2 
  3799. clv2
  3800.         dc.w 1  
  3801.              dc.l clv2d
  3802.              dc.w 1632/2 
  3803.              dc.l restd
  3804.              dc.w 16/2
  3805. bas4
  3806.         dc.w 1  
  3807.              dc.l bas4d
  3808.              dc.w 1801/2 
  3809.              dc.l restd
  3810.              dc.w 16/2
  3811. kik1
  3812.         dc.w 1  
  3813.              dc.l kik1d
  3814.              dc.w 3801/2 
  3815.              dc.l restd
  3816.              dc.w 16/2
  3817. snr1
  3818.         dc.w 1  
  3819.              dc.l snr1d
  3820.              dc.w 6325/2 
  3821.              dc.l restd
  3822.              dc.w 16/2
  3823. tom1
  3824.         dc.w 1  
  3825.              dc.l tom1d
  3826.              dc.w 2630/2 
  3827.              dc.l restd
  3828.              dc.w 16/2
  3829. orglp2
  3830.         dc.w 1  
  3831.              dc.l orglp2d
  3832.              dc.w 5408/2 
  3833.         dc.l orglp2d
  3834.              dc.w 5408/2 
  3835. shak
  3836.         dc.w 1  
  3837.              dc.l shakd
  3838.              dc.w 6237/2 
  3839.         dc.l shakd
  3840.              dc.w 6237/2 
  3841. fingbl
  3842.         dc.w 1  
  3843.              dc.l fingbld
  3844.              dc.w 12896/2 
  3845.              dc.l restd
  3846.              dc.w 16/2
  3847. chord1
  3848.         dc.w 1  
  3849.              dc.l chord1d
  3850.              dc.w 3394/2 
  3851.              dc.l restd
  3852.              dc.w 16/2
  3853. chord2
  3854.         dc.w 1  
  3855.              dc.l chord2d
  3856.              dc.w 2037/2 
  3857.              dc.l restd
  3858.              dc.w 16/2
  3859. sax2
  3860.         dc.w 1  
  3861.              dc.l sax2d
  3862.              dc.w 6073/2 
  3863.         dc.l sax2d
  3864.              dc.w 6073/2 
  3865. bas5
  3866.         dc.w 1  
  3867.              dc.l bas5d
  3868.              dc.w 3394/2 
  3869.              dc.l restd
  3870.              dc.w 16/2
  3871.  
  3872. sine
  3873.         dc.w 1  
  3874.              dc.l sine_datad
  3875.              dc.w 18/2 
  3876.              dc.l sine_datad
  3877.              dc.w 18/2
  3878.  
  3879.  
  3880. restd:
  3881. rest_data:
  3882.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3883.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3884.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3885.              dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  3886.  
  3887. sine_datad:
  3888.              dc.w 127,100,50,25,0,-25,-50,-100,-127
  3889.              dc.w -127,-100,-50,-25,0,25,50,100,127
  3890.  
  3891. bas5_env        dc.w 0,45,255
  3892. bas5_env2        dc.w 0,45,45,45,45,45,45,40,35,0,255
  3893. og            dc.w 0,35,255
  3894. kick_env        dc.w 0,64,255
  3895. x_env:            dc.w 0,54,255
  3896. q_env:            dc.w 0,20,255
  3897. guit_env        dc.w 0,44,255
  3898. shak_env:        dc.w 0,25,25,25,0,0,0,25,25,255
  3899. flt1_env:        dc.w 0,35,255
  3900. org_env:        dc.w 0,25,255
  3901. jet_env            dc.w 0,64,64,59,54,49,44,40
  3902.             dc.w 35,30,25,20,15,255
  3903.             dc.w 10,10,11,12,13,255
  3904. sax_env            dc.w 0,34,34,29,29,24,24
  3905.             dc.w 20,20,17,15
  3906.             dc.w 10,10,9,8,7,0,255
  3907. rest_env:        dc.w 0,0,0,0,0,0,0,0,255
  3908.  
  3909.  
  3910. ;**************************************************
  3911. hatcd            incbin df1:hatc124.sam
  3912. orglp2d            incbin df1:orglp2.sam
  3913. kik1d            incbin df1:kik1.sam
  3914. snr1d            incbin df1:snr1.sam
  3915. tom1d:            incbin df1:tom1.sam
  3916. cowd            incbin df1:cow2.sam  
  3917. clv2d            incbin df1:clv2.sam
  3918. bas4d            incbin df1:bas4.sam
  3919. fingbld            incbin df1:fingbl.sam
  3920. bas5d            incbin df1:bas5.sam
  3921. sax2d            incbin df1:sax2.sam
  3922. chord1d            incbin df1:chord1.sam
  3923. chord2d            incbin df1:chord2.sam
  3924. shakd            incbin df1:shakuhac.sam
  3925.  
  3926. ;*************************************************
  3927.  
  3928.  
  3929.  
  3930.     end
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.