home *** CD-ROM | disk | FTP | other *** search
/ 17 Bit Software 2: Collection B / 17Bit_Collection_B.iso / files / 1330.dms / in.adf / Replayer / SonicReplayer.asm < prev   
Encoding:
Assembly Source File  |  1991-06-10  |  19.3 KB  |  1,223 lines

  1.  
  2. **********************************************************************
  3. * Resourced from Replayer.c compiled with SAS/C 5.10a
  4.  
  5.     SECTION testo000000,CODE
  6. ProgStart
  7. start    LEA    Module,A0
  8.     BSR.S    HardCalc
  9.     JSR    @InitReplayer
  10.     MOVEQ    #0,D0
  11.     JSR    _StartSong
  12. lbC000016    BTST    #6,$BFE001
  13.     BNE    lbC000016
  14.     JSR    @StopSong
  15.     JSR    @TermReplayer
  16.     RTS
  17.  
  18. HardCalc    MOVEM.L    D0-D7/A0-A6,-(SP)
  19.     LEA    8(A0),A0
  20.     MOVE.L    4(A0),D0
  21.     MULU    #12,D0
  22.     LEA    8(A0),A0
  23.     LEA    _SongStructs,A1
  24.     MOVE.L    A0,(A1)
  25.     ADD.L    D0,A0
  26.     MOVE.L    4(A0),D0
  27.     ASL.L    #4,D0
  28.     LEA    8(A0),A0
  29.     LEA    _OverTable,A1
  30.     MOVE.L    A0,(A1)
  31.     ADD.L    D0,A0
  32.     MOVE.L    4(A0),D0
  33.     MULU    #4,D0
  34.     LEA    8(A0),A0
  35.     LEA    _NoteTable,A1
  36.     MOVE.L    A0,(A1)
  37.     ADD.L    D0,A0
  38.     MOVE.L    4(A0),D0
  39.     MULU    #$98,D0
  40.     LEA    8(A0),A0
  41.     LEA    _InstrTable,A1
  42.     MOVE.L    A0,(A1)
  43.     ADD.L    D0,A0
  44.     MOVE.L    4(A0),D0
  45.     MOVE.L    D0,D2
  46.     MULU    #$1E,D2
  47.     MOVE.L    D0,D3
  48.     MULU    #4,D3
  49.     MOVE.L    D0,D4
  50.     LEA    8(A0),A0
  51.     ADD.L    D3,A0
  52.     ADD.L    D3,A0
  53.     ADD.L    D2,A0
  54.     MOVE.L    D4,D3
  55.     SUBQ.W    #1,D3
  56.     LEA    _SaList,A1
  57. lbC0000B4    MOVE.L    (A0)+,(A1)+
  58.     DBRA    D3,lbC0000B4
  59.  
  60.     MOVE.L    D4,D3
  61.     LEA    _SaAddr,A1
  62.     LEA    _SaList,A2
  63.     SUBQ.W    #1,D4
  64. lbC0000CA    MOVE.L    A0,(A1)+
  65.     ADD.L    (A2)+,A0
  66.     DBRA    D4,lbC0000CA
  67.  
  68.     MOVE.L    4(A0),D0
  69.     ASL.L    #7,D0
  70.     LEA    8(A0),A0
  71.     LEA    _WaveTable,A1
  72.     MOVE.L    A0,(A1)
  73.     ADD.L    D0,A0
  74.     MOVE.L    4(A0),D0
  75.     ASL.L    #7,D0
  76.     LEA    8(A0),A0
  77.     LEA    _AdsrTable,A1
  78.     MOVE.L    A0,(A1)
  79.     ADD.L    D0,A0
  80.     MOVE.L    4(A0),D0
  81.     ASL.L    #7,D0
  82.     LEA    8(A0),A0
  83.     LEA    _AmfTable,A1
  84.     MOVE.L    A0,(A1)
  85.     ADD.L    D0,A0
  86.     MOVEM.L    (SP)+,D0-D7/A0-A6
  87.     RTS
  88.  
  89.  
  90.     SECTION testo000114,CODE
  91. Init_Song    MOVEM.L    D1/A0/A1,-(SP)
  92.     LEA    $DFF000,A0
  93.     MOVE.W    #15,$96(A0)
  94.     MOVE.W    #$FF,$9E(A0)
  95.     MOVE.W    #$780,$9A(A0)
  96.     MOVE.W    #$780,$9C(A0)
  97.     CLR.W    $A8(A0)
  98.     CLR.W    $B8(A0)
  99.     CLR.W    $C8(A0)
  100.     CLR.W    $D8(A0)
  101.     MOVE.L    _SongStructs,A0
  102.     MULU    #12,D0
  103.     ADD.L    D0,A0
  104.     LEA    _WorkSST,A1
  105.     MOVEQ    #11,D1
  106. lbC00015A    MOVE.B    (A0)+,(A1)+
  107.     DBRA    D1,lbC00015A
  108.  
  109.     LEA    PlayTable0,A0
  110.     MOVE.W    #$2BF,D1
  111. lbC00016A    CLR.B    (A0)+
  112.     DBRA    D1,lbC00016A
  113.  
  114.     LEA    _WhichStep,A0
  115.     MOVE.W    lbW001056,D0
  116.     SUBQ.W    #1,D0
  117.     MOVE.W    D0,(A0)
  118.     LEA    SongSpeedCnt,A0
  119.     MOVE.W    _WorkSST,(A0)
  120.     LEA    _WhereInStep,A0
  121.     MOVE.W    lbW001054,(A0)
  122.     BSR    @ReloadTimer
  123.     MOVEM.L    (SP)+,D1/A0/A1
  124.     RTS
  125.  
  126. myCiaPtr    dc.l    0
  127. myCiaIrq    dcb.l    5,0
  128.     dc.w    0
  129. irqtxt    dc.b    'musicirq',0
  130. ciabtxt    dc.b    'ciab.resource',0,0
  131.  
  132. @InitReplayer    MOVEM.L    A0/A1/A6,-(SP)
  133.     MOVEQ    #0,D0
  134.     BSR    Init_Song
  135.     LEA    _WhichStep,A0
  136.     ADDQ.W    #1,(A0)
  137.     MOVE.L    4,A6
  138.     JSR    -$78(A6)
  139.     LEA    ciabtxt(PC),A1
  140.     JSR    -$1F2(A6)
  141.     MOVE.L    D0,myCiaPtr
  142.     BNE.S    lbC000202
  143.     MOVEQ    #0,D0
  144.     BRA.S    lbC00024A
  145.  
  146. lbC000202    LEA    myCiaIrq(PC),A1
  147.     MOVE.B    #2,8(A1)
  148.     MOVE.B    #0,9(A1)
  149.     MOVE.L    #irqtxt,10(A1)
  150.     CLR.L    14(A1)
  151.     MOVE.L    #IrqRout,$12(A1)
  152.     MOVEQ    #13,D0
  153.     MOVE.L    myCiaPtr,A6
  154.     MOVEQ    #1,D0
  155.     LEA    myCiaIrq(PC),A1
  156.     JSR    -6(A6)
  157.     TST.L    D0
  158.     BEQ.S    lbC000240
  159.     MOVEQ    #0,D0
  160.     BRA.S    lbC00024A
  161.  
  162. lbC000240    MOVE.L    4,A6
  163.     JSR    -$7E(A6)
  164.     MOVEQ    #1,D0
  165. lbC00024A    MOVEM.L    (SP)+,A0/A1/A6
  166.     RTS
  167.  
  168. ReadTimer    MOVE.B    $BFD700,D0
  169.     MOVE.B    $BFD600,D1
  170.     CMP.B    $BFD700,D0
  171.     BNE.S    ReadTimer
  172.     LSL.W    #8,D0
  173.     MOVE.B    D1,D0
  174.     RTS
  175.  
  176. @ReloadTimer    MOVE.L    D1,-(SP)
  177.     MOVE.L    #$AD303,D0
  178.     MOVE.W    lbW00105C,D1
  179.     BEQ.S    lbC00027C
  180.     DIVU    D1,D0
  181. lbC00027C    MOVE.B    #0,$BFDF00
  182.     MOVE.B    D0,$BFD600
  183.     LSR.W    #8,D0
  184.     MOVE.B    D0,$BFD700
  185.     MOVE.B    #$11,$BFDF00
  186.     BSR    ReadTimer
  187.     MOVE.W    D0,timerticks
  188.     MOVE.L    (SP)+,D1
  189.     RTS
  190.  
  191. @VoicesShutDown    MOVEM.L    D0/A0,-(SP)
  192.     LEA    PlayTable0,A0
  193.     MOVE.W    #$2BF,D1
  194. lbC0002B6    CLR.B    (A0)+
  195.     DBRA    D1,lbC0002B6
  196.  
  197.     LEA    $DFF000,A0
  198.     MOVE.W    #15,$96(A0)
  199.     MOVEQ    #0,D0
  200.     MOVE.W    D0,$A8(A0)
  201.     MOVE.W    D0,$A8(A0)
  202.     MOVE.W    D0,$A8(A0)
  203.     MOVE.W    D0,$A8(A0)
  204.     MOVEM.L    (SP)+,D0/A0
  205.     RTS
  206.  
  207. @TermReplayer    MOVEM.L    D0/A1/A6,-(SP)
  208.     MOVE.L    4,A6
  209.     JSR    -$78(A6)
  210.     MOVE.B    #1,$BFDD00
  211.     MOVE.L    myCiaPtr,A6
  212.     MOVEQ    #1,D0
  213.     LEA    myCiaPtr,A1
  214.     JSR    -12(A6)
  215.     MOVE.L    4,A6
  216.     JSR    -$7E(A6)
  217.     BSR.S    @VoicesShutDown
  218.     MOVEM.L    (SP)+,D0/A1/A6
  219.     RTS
  220.  
  221. _StartSong    MOVEM.L    D1-D7/A0-A6,-(SP)
  222.     CLR.W    _PlayOn
  223.     BSR    Init_Song
  224.     MOVE.W    #$FFFF,_PlayOn
  225.     MOVEM.L    (SP)+,D1-D7/A0-A6
  226.     RTS
  227.  
  228. _StartPatternPlay    MOVEM.L    D1-D7/A0-A6,-(SP)
  229.     CLR.W    _PlayOn
  230.     MOVE.W    lbW001054,_WhereInStep
  231.     MOVE.W    D0,_WhichStep
  232.     MOVE.W    #1,_PlayOn
  233.     MOVEM.L    (SP)+,D1-D7/A0-A6
  234.     RTS
  235.  
  236. @StopSong    CLR.W    _PlayOn
  237.     LEA    PlayTable0,A0
  238.     MOVE.W    #$2BF,D1
  239. lbC00036A    CLR.B    (A0)+
  240.     DBRA    D1,lbC00036A
  241.  
  242.     BSR    @VoicesShutDown
  243.     RTS
  244.  
  245. _PlayOn    dc.w    0
  246.  
  247. IrqRout    MOVEM.L    D0-D7/A0-A6,-(SP)
  248.     LEA    _RepeatVoice0,A0
  249.     TST.L    (A0)
  250.     BEQ.S    lbC0003DE
  251.     TST.B    (A0)
  252.     BEQ.S    lbC00039A
  253.     LEA    $DFF0A0,A1
  254.     LEA    PlayTable0,A2
  255.     BSR    Set_repeat
  256. lbC00039A    TST.B    1(A0)
  257.     BEQ.S    lbC0003B0
  258.     LEA    $DFF0B0,A1
  259.     LEA    PlayTable1,A2
  260.     BSR    Set_repeat
  261. lbC0003B0    TST.B    2(A0)
  262.     BEQ.S    lbC0003C6
  263.     LEA    $DFF0C0,A1
  264.     LEA    PlayTable2,A2
  265.     BSR    Set_repeat
  266. lbC0003C6    TST.B    3(A0)
  267.     BEQ.S    lbC0003DC
  268.     LEA    $DFF0D0,A1
  269.     LEA    PlayTable3,A2
  270.     BSR    Set_repeat
  271. lbC0003DC    CLR.L    (A0)
  272. lbC0003DE    LEA    SongSpeedCnt,A0
  273.     ADDQ.W    #1,(A0)
  274.     MOVE.W    (A0),D0
  275.     CMP.W    _WorkSST,D0
  276.     BLT.S    lbC0003FC
  277.     CLR.W    (A0)
  278.     MOVE.W    _PlayOn(PC),D0
  279.     BEQ.S    lbC0003FC
  280.     BSR    SongReplayer
  281. lbC0003FC    BSR    Update_Effects
  282.     LEA    DMAStartMask,A0
  283.     TST.B    1(A0)
  284.     BEQ.S    lbC000414
  285.     MOVE.W    (A0),$DFF096
  286.     CLR.W    (A0)
  287. lbC000414    MOVE.B    $BFDD00,D0
  288.     MOVE.W    #$2000,$DFF09C
  289.     MOVEM.L    (SP)+,D0-D7/A0-A6
  290.     MOVEQ    #0,D0
  291.     RTS
  292.  
  293. Set_repeat    MOVE.L    _InstrTable,A3
  294.     MOVEQ    #0,D0
  295.     MOVE.W    $88(A2),D0
  296.     SUBQ.W    #1,D0
  297.     MULU    #$98,D0
  298.     ADD.L    D0,A3
  299.     TST.W    6(A3)
  300.     BEQ.S    lbC000484
  301.     CMP.W    #1,6(A3)
  302.     BNE.S    lbC00045E
  303.     LEA    ZeroWaveForm,A4
  304.     MOVE.L    A4,0(A1)
  305.     MOVE.W    #1,4(A1)
  306.     RTS
  307.  
  308. lbC00045E    LEA    _SaAddr,A4
  309.     MOVEQ    #0,D0
  310.     MOVE.W    2(A3),D0
  311.     LSL.W    #2,D0
  312.     MOVE.L    0(A4,D0.W),A4
  313.     MOVEQ    #0,D0
  314.     MOVEM.W    4(A3),D0/D1
  315.     LSL.L    #1,D0
  316.     ADD.L    D0,A4
  317.     MOVE.L    A4,0(A1)
  318.     MOVE.W    D1,4(A1)
  319. lbC000484    RTS
  320.  
  321. SongReplayer    BSR    ReadNewOTLine
  322.     BSR    ReadNewNotes
  323.     MOVEQ    #0,D7
  324.     LEA    Voice0On,A0
  325.     TST.W    (A0)+
  326.     BEQ.S    lbC0004BE
  327.     MOVE.L    CurrNote0,D0
  328.     MOVE.L    CurrOtTrk0,D1
  329.     MOVEQ    #1,D2
  330.     LEA    _RepeatVoice0,A1
  331.     LEA    PlayTable0,A2
  332.     LEA    $DFF0A0,A3
  333.     BSR    PlayVoice
  334. lbC0004BE    TST.W    (A0)+
  335.     BEQ.S    lbC0004E6
  336.     MOVE.L    CurrNote1,D0
  337.     MOVE.L    CurrOtTrk1,D1
  338.     MOVEQ    #2,D2
  339.     LEA    _RepeatVoice1,A1
  340.     LEA    PlayTable1,A2
  341.     LEA    $DFF0B0,A3
  342.     BSR    PlayVoice
  343. lbC0004E6    TST.W    (A0)+
  344.     BEQ.S    lbC00050E
  345.     MOVE.L    CurrNote2,D0
  346.     MOVE.L    CurrOtTrk2,D1
  347.     MOVEQ    #4,D2
  348.     LEA    _RepeatVoice2,A1
  349.     LEA    PlayTable2,A2
  350.     LEA    $DFF0C0,A3
  351.     BSR    PlayVoice
  352. lbC00050E    TST.W    (A0)+
  353.     BEQ.S    lbC000536
  354.     MOVE.L    CurrNote3,D0
  355.     MOVE.L    CurrOtTrk3,D1
  356.     MOVEQ    #8,D2
  357.     LEA    _RepeatVoice3,A1
  358.     LEA    PlayTable3,A2
  359.     LEA    $DFF0D0,A3
  360.     BSR    PlayVoice
  361. lbC000536    OR.W    #$8000,D7
  362.     MOVE.W    D7,DMAStartMask
  363.     RTS
  364.  
  365. ReadNewOTLine    LEA    _WhereInStep,A0
  366.     ADDQ.W    #1,(A0)
  367.     MOVE.W    lbW001054,D0
  368.     CMP.W    (A0),D0
  369.     BGT.S    lbC000594
  370.     CLR.W    (A0)
  371.     TST.W    _PlayOn
  372.     BGT.S    lbC000576
  373.     LEA    _WhichStep,A0
  374.     ADDQ.W    #1,(A0)
  375.     MOVE.W    lbW001058,D0
  376.     CMP.W    (A0),D0
  377.     BGE.S    lbC000576
  378.     MOVE.W    lbW00105A,(A0)
  379. lbC000576    MOVE.W    _WhichStep,D0
  380.     LSL.W    #4,D0
  381.     MOVE.L    _OverTable,A0
  382.     MOVEM.L    0(A0,D0.W),D1-D4
  383.     LEA    CurrOtTrk0,A0
  384.     MOVEM.L    D1-D4,(A0)
  385. lbC000594    RTS
  386.  
  387. ReadNewNotes    MOVE.L    _NoteTable,A0
  388.     MOVEQ    #0,D0
  389.     MOVE.W    _WhereInStep,D0
  390.     LSL.W    #2,D0
  391.     ADD.W    D0,A0
  392.     LEA    CurrNote0,A1
  393.     LEA    CurrOtTrk0,A2
  394.     LEA    Voice0On,A3
  395.     TST.W    (A3)+
  396.     BEQ.S    lbC0005C8
  397.     MOVEQ    #0,D0
  398.     MOVE.W    (A2),D0
  399.     LSL.L    #2,D0
  400.     MOVE.L    0(A0,D0.L),(A1)
  401. lbC0005C8    TST.W    (A3)+
  402.     BEQ.S    lbC0005DA
  403.     MOVEQ    #0,D0
  404.     MOVE.W    4(A2),D0
  405.     LSL.L    #2,D0
  406.     MOVE.L    0(A0,D0.L),4(A1)
  407. lbC0005DA    TST.W    (A3)+
  408.     BEQ.S    lbC0005EC
  409.     MOVEQ    #0,D0
  410.     MOVE.W    8(A2),D0
  411.     LSL.L    #2,D0
  412.     MOVE.L    0(A0,D0.L),8(A1)
  413. lbC0005EC    TST.W    (A3)
  414.     BEQ.S    lbC0005FE
  415.     MOVEQ    #0,D0
  416.     MOVE.W    12(A2),D0
  417.     LSL.L    #2,D0
  418.     MOVE.L    0(A0,D0.L),12(A1)
  419. lbC0005FE    RTS
  420.  
  421. EffJumps    dc.l    Eff_Nop
  422.     dc.l    Eff_Slide
  423.     dc.l    Eff_RestartAdsr
  424.     dc.l    Eff_Nop
  425.     dc.l    Eff_SetVib
  426.     dc.l    Eff_Nop
  427.     dc.l    Eff_Nop
  428.     dc.l    Eff_SetPorta
  429.     dc.l    Eff_SkipPorta
  430.     dc.l    Eff_SetTrkLen
  431.     dc.l    Eff_SlideVol
  432.     dc.l    Eff_JmpPattern
  433.     dc.l    Eff_SetVol
  434.     dc.l    Eff_BreakPatt
  435.     dc.l    Eff_SetFilter
  436.     dc.l    Eff_SetSpeed
  437.  
  438. SetEffects    CLR.W    $86(A2)
  439.     CLR.W    $8C(A2)
  440.     MOVE.W    D0,D5
  441.     AND.L    #$F00,D5
  442.     LSR.L    #6,D5
  443.     LEA    EffJumps(PC),A4
  444.     MOVE.L    0(A4,D5.W),A4
  445.     JMP    (A4)
  446.  
  447. Eff_Nop    RTS
  448.  
  449. Eff_Slide    MOVE.B    D0,D5
  450.     EXT.W    D5
  451.     MOVE.W    D5,$86(A2)
  452.     RTS
  453.  
  454. Eff_RestartAdsr    MOVEQ    #0,D5
  455.     MOVE.B    D0,D5
  456.     MOVE.W    D5,$9A(A2)
  457.     RTS
  458.  
  459. Eff_SetVib    CLR.W    $90(A2)
  460.     MOVEQ    #0,D5
  461.     MOVE.B    D0,D5
  462.     AND.W    #$F0,D5
  463.     ASR.W    #3,D5
  464.     MOVE.W    D5,$92(A2)
  465.     MOVE.B    D0,D5
  466.     AND.L    #15,D5
  467.     ASL.L    #4,D5
  468.     NEG.L    D5
  469.     ADD.L    #$A0,D5
  470.     MOVE.W    D5,$94(A2)
  471.     RTS
  472.  
  473. Eff_SetPorta    MOVEQ    #0,D5
  474.     MOVE.B    D0,D5
  475.     MOVE.W    D5,$96(A2)
  476.     MOVE.W    D5,$98(A2)
  477.     RTS
  478.  
  479. Eff_SkipPorta    CLR.W    $96(A2)
  480.     CLR.W    $98(A2)
  481.     RTS
  482.  
  483. Eff_SetTrkLen    TST.B    D0
  484.     BLE.S    Eff_Nop
  485.     CMP.B    #$40,D0
  486.     BHI.S    Eff_Nop
  487.     MOVEQ    #0,D5
  488.     MOVE.B    D0,D5
  489.     MOVE.W    D5,lbW001054
  490.     RTS
  491.  
  492. Eff_SlideVol    MOVE.B    D0,D5
  493.     EXT.W    D5
  494.     MOVE.W    D5,$8C(A2)
  495.     RTS
  496.  
  497. Eff_JmpPattern    MOVEQ    #0,D5
  498.     MOVE.B    D0,D5
  499.     MOVE.W    D3,_WhichStep
  500.     MOVE.W    lbW001054,_WhereInStep
  501.     RTS
  502.  
  503. Eff_SetVol    MOVEQ    #0,D5
  504.     MOVE.B    D0,D5
  505.     CMP.W    #$40,D5
  506.     BLS.S    lbC0006F8
  507.     MOVE.W    #$40,D5
  508. lbC0006F8    MOVE.W    D5,$8A(A2)
  509.     ASL.W    #2,D5
  510.     MOVE.W    D5,$AE(A2)
  511.     RTS
  512.  
  513. Eff_BreakPatt    MOVE.W    lbW001054,_WhereInStep
  514.     RTS
  515.  
  516. Eff_SetFilter    TST.B    D0
  517.     BNE.S    lbC00071E
  518.     BCLR    #1,$BFE001
  519.     RTS
  520.  
  521. lbC00071E    BSET    #1,$BFE001
  522.     RTS
  523.  
  524. Eff_SetSpeed    TST.B    D0
  525.     BLE    Eff_Nop
  526.     CMP.B    #$10,D0
  527.     BGT    Eff_Nop
  528.     MOVEQ    #0,D5
  529.     MOVE.B    D0,D5
  530.     MOVE.W    D5,_WorkSST
  531.     RTS
  532.  
  533. PlayVoice    MOVE.L    D0,D3
  534.     ROL.L    #8,D3
  535.     AND.L    #$FF,D3
  536.     MOVE.L    D0,D4
  537.     SWAP    D4
  538.     AND.L    #$FF,D4
  539.     TST.B    D3
  540.     BNE.S    lbC000768
  541.     TST.B    D4
  542.     BEQ    lbC0007E2
  543.     BSR    RestorePlayTable
  544.     BRA    lbC0007E2
  545.  
  546. lbC000768    CMP.B    #$80,D3
  547.     BEQ.S    lbC0007E2
  548.     CMP.B    #$7F,D3
  549.     BNE.S    lbC00077A
  550.     BSR    ForceQuiet
  551.     BRA.S    lbC0007E2
  552.  
  553. lbC00077A    MOVE.W    D0,D6
  554.     MOVEQ    #12,D5
  555.     LSR.L    D5,D6
  556.     MOVEQ    #12,D5
  557.     AND.L    D5,D6
  558.     BTST    #2,D6
  559.     BNE.S    lbC000790
  560.     MOVE.B    D1,D5
  561.     EXT.W    D5
  562.     ADD.W    D5,D3
  563. lbC000790    TST.W    D4
  564.     BEQ.S    lbC0007A6
  565.     BTST    #3,D6
  566.     BNE.S    lbC0007A6
  567.     MOVE.W    D1,D5
  568.     ROR.W    #8,D5
  569.     EXT.W    D5
  570.     ADD.W    D5,D4
  571.     AND.W    #$FF,D4
  572. lbC0007A6    MOVE.W    $80(A2),$82(A2)
  573.     MOVE.W    D3,$80(A2)
  574.     MOVE.W    D2,$DFF096
  575.     MOVE.W    #1,6(A3)
  576.     TST.W    D4
  577.     BEQ.S    lbC0007E8
  578.     MOVE.W    #$2B,D6
  579.     LEA    $84(A2),A6
  580. lbC0007C8    CLR.B    0(A6,D6.W)
  581.     DBRA    D6,lbC0007C8
  582.  
  583.     BSR.S    RestorePlayTable
  584. lbC0007D2    TST.W    0(A5)
  585.     BNE.S    lbC0007DE
  586.     BSR    SetSampleInstr
  587.     BRA.S    lbC0007E2
  588.  
  589. lbC0007DE    BSR    SetSynthInstr
  590. lbC0007E2    BSR    SetEffects
  591.     RTS
  592.  
  593. lbC0007E8    MOVE.W    $88(A2),D4
  594.     TST.W    D4
  595.     BEQ.S    lbC0007E2
  596.     MOVE.L    _InstrTable,A5
  597.     MOVE.W    $88(A2),D4
  598.     SUBQ.L    #1,D4
  599.     MULU    #$98,D4
  600.     ADD.L    D4,A5
  601.     BRA.S    lbC0007D2
  602.  
  603. RestorePlayTable    MOVE.L    _InstrTable,A5
  604.     AND.L    #$FF,D4
  605.     MOVE.W    D4,$88(A2)
  606.     SUBQ.L    #1,D4
  607.     MULU    #$98,D4
  608.     ADD.L    D4,A5
  609.     MOVE.W    $10(A5),D4
  610.     MOVE.W    D4,$8A(A2)
  611.     ASL.W    #2,D4
  612.     MOVE.W    D4,$AE(A2)
  613.     MOVE.W    $12(A5),D4
  614.     EXT.W    D4
  615.     MOVE.W    D4,$84(A2)
  616.     MOVE.W    $14(A5),$96(A2)
  617.     MOVE.W    $14(A5),$98(A2)
  618.     MOVE.W    $16(A5),$90(A2)
  619.     MOVE.W    $18(A5),$92(A2)
  620.     MOVE.W    $1A(A5),$94(A2)
  621.     MOVE.W    $1E(A5),$A2(A2)
  622.     MOVE.W    $26(A5),$9C(A2)
  623.     MOVE.W    $44(A5),$A4(A2)
  624.     CLR.W    $A6(A2)
  625.     MOVE.W    $48(A5),$A8(A2)
  626.     RTS
  627.  
  628. ForceQuiet    CLR.W    8(A3)
  629.     CLR.W    $8A(A2)
  630.     CLR.W    $AE(A2)
  631.     CLR.W    $88(A2)
  632.     CLR.B    (A1)
  633.     RTS
  634.  
  635. SetSampleInstr    LEA    _SaAddr,A6
  636.     MOVEQ    #0,D4
  637.     MOVE.W    2(A5),D4
  638.     LSL.W    #2,D4
  639.     MOVE.L    0(A6,D4.W),D4
  640.     BNE.S    lbC00089C
  641.     BSR.S    ForceQuiet
  642.     RTS
  643.  
  644. lbC00089C    MOVE.L    D4,0(A3)
  645.     MOVEQ    #0,D6
  646.     MOVE.W    4(A5),D6
  647.     MOVEQ    #0,D4
  648.     CMP.W    #1,6(A5)
  649.     BEQ.S    lbC0008B4
  650.     MOVE.W    6(A5),D4
  651. lbC0008B4    ADD.L    D6,D4
  652.     MOVE.W    D4,4(A3)
  653.     OR.W    D2,D7
  654.     ST     (A1)
  655.     RTS
  656.  
  657. SetSynthInstr    MOVE.L    _WaveTable,A6
  658.     MOVEQ    #0,D4
  659.     MOVE.W    2(A5),D4
  660.     ASL.L    #7,D4
  661.     LEA    0(A6,D4.L),A6
  662.     LEA    0(A2),A4
  663.     MOVE.L    A4,0(A3)
  664.     MOVE.W    4(A5),D4
  665.     MOVE.W    D4,4(A3)
  666. lbC0008E2    MOVE.W    (A6)+,(A4)+
  667.     SUBQ.W    #1,D4
  668.     BNE.S    lbC0008E2
  669.     OR.W    D2,D7
  670.     SF    (A1)
  671.     RTS
  672.  
  673. Update_Effects    MOVE.L    CurrNote0,D0
  674.     MOVE.L    CurrOtTrk0,D1
  675.     LEA    PlayTable0,A2
  676.     LEA    $DFF0A0,A3
  677.     BSR    UpdateVoiceEffects
  678.     MOVE.L    CurrNote1,D0
  679.     MOVE.L    CurrOtTrk1,D1
  680.     LEA    PlayTable1,A2
  681.     LEA    $DFF0B0,A3
  682.     BSR.S    UpdateVoiceEffects
  683.     MOVE.L    CurrNote2,D0
  684.     MOVE.L    CurrOtTrk2,D1
  685.     LEA    PlayTable2,A2
  686.     LEA    $DFF0C0,A3
  687.     BSR.S    UpdateVoiceEffects
  688.     MOVE.L    CurrNote3,D0
  689.     MOVE.L    CurrOtTrk3,D1
  690.     LEA    PlayTable3,A2
  691.     LEA    $DFF0D0,A3
  692.     BSR.S    UpdateVoiceEffects
  693.     RTS
  694.  
  695. UpdateVoiceEffects    TST.W    $88(A2)
  696.     BNE.S    lbC000972
  697.     MOVE.W    #0,8(A3)
  698.     TST.W    $AE(A2)
  699.     BEQ.S    lbC000970
  700.     SUBQ.W    #4,$AE(A2)
  701. lbC000970    RTS
  702.  
  703. lbC000972    MOVEQ    #0,D2
  704.     MOVE.W    $80(A2),D2
  705.     MOVEQ    #0,D3
  706.     MOVE.W    $82(A2),D3
  707.     MOVE.L    _InstrTable,A4
  708.     MOVE.W    $88(A2),D4
  709.     SUBQ.W    #1,D4
  710.     MULU    #$98,D4
  711.     LEA    0(A4,D4.L),A4
  712.     TST.W    0(A4)
  713.     BNE.S    SynthInstUpdate
  714. SampleInstUpdate    BSR    Arpeggio
  715.     BSR    Portamento
  716.     BSR    Vibrato
  717.     BSR    Amf
  718.     BSR    Detune
  719.     MOVE.W    D2,6(A3)
  720.     BSR    SetupAdsr
  721.     RTS
  722.  
  723. SynthInstUpdate    BSR    Arpeggio
  724.     BSR    Portamento
  725.     BSR    Vibrato
  726.     BSR    Amf
  727.     BSR    Detune
  728.     MOVE.W    D2,6(A3)
  729.     BSR.S    SetupSynthEff
  730.     BSR    SetupAdsr
  731.     RTS
  732.  
  733. SetupSynthEff    SUBQ.W    #1,$A8(A2)
  734.     BNE    NoEff
  735.     MOVE.W    $48(A4),$A8(A2)
  736.     MOVEQ    #0,D4
  737.     MOVE.W    $42(A4),D4
  738.     BEQ    NoEff
  739.     SUBQ.W    #1,D4
  740.     ASL.W    #2,D4
  741.     LEA    EffJmpTable(PC),A0
  742.     MOVE.L    0(A0,D4.W),A0
  743.     JMP    (A0)
  744.  
  745. EffNegate    LEA    0(A2),A0
  746.     MOVEQ    #0,D4
  747.     MOVE.W    $A4(A2),D4
  748.     NEG.B    0(A0,D4.W)
  749.     BRA    fineff
  750.  
  751. EffWCNegate    LEA    0(A2),A0
  752.     MOVE.L    _WaveTable,A1
  753.     MOVEQ    #0,D5
  754.     MOVE.W    $40(A4),D5
  755.     ASL.W    #7,D5
  756.     LEA    0(A1,D5.W),A1
  757.     MOVE.W    $A6(A2),D5
  758.     MOVE.B    0(A1,D5.W),D5
  759.     AND.W    #$7F,D5
  760.     MOVE.L    _WaveTable,A1
  761.     MOVEQ    #0,D4
  762.     MOVE.W    2(A4),D4
  763.     ASL.W    #7,D4
  764.     LEA    0(A1,D4.W),A1
  765.     MOVE.W    4(A4),D4
  766.     ASL.W    #1,D4
  767. lbC000A48    TST.W    D4
  768.     BEQ.S    lbC000A6C
  769.     CMP.W    D4,D5
  770.     BGT.S    lbC000A5A
  771.     MOVE.B    -1(A1,D4.W),-1(A0,D4.W)
  772.     SUBQ.W    #1,D4
  773.     BRA.S    lbC000A48
  774.  
  775. lbC000A5A    TST.W    D4
  776.     BEQ.S    lbC000A6C
  777.     MOVE.B    -1(A1,D4.W),D5
  778.     NEG.B    D5
  779.     MOVE.B    D5,-1(A0,D4.W)
  780.     SUBQ.W    #1,D4
  781.     BRA.S    lbC000A5A
  782.  
  783. lbC000A6C    ADDQ.W    #1,$A6(A2)
  784.     MOVE.W    $44(A4),D4
  785.     ADD.W    $46(A4),D4
  786.     MOVE.W    $A6(A2),D5
  787.     CMP.W    D4,D5
  788.     BLS.S    lbC000A86
  789.     MOVE.W    $44(A4),$A6(A2)
  790. lbC000A86    BRA.S    fineff
  791.  
  792. EffRotateV    LEA    0(A2),A0
  793.     MOVEQ    #0,D4
  794.     MOVE.W    $44(A4),D4
  795.     LEA    0(A0,D4.W),A0
  796.     MOVE.W    $46(A4),D4
  797.     SUB.W    $44(A4),D4
  798. lbC000A9E    ADDQ.B    #1,(A0)+
  799.     DBRA    D4,lbC000A9E
  800.  
  801.     BRA.S    fineff
  802.  
  803. EffRotateH    dc.l    $41EA0000
  804.     dc.l    $7800382C
  805.     dc.l    $4441F0
  806.     dc.l    $4000382C
  807.     dc.l    $46986C
  808.     dc.l    $441A10
  809.     dc.l    $534410A8
  810.     dc.l    $15248
  811.     dc.l    $51CCFFF8
  812.     dc.l    $1085602A
  813.  
  814. EffAlien    LEA    0(A2),A0
  815.     MOVE.L    _WaveTable,A1
  816.     MOVEQ    #0,D4
  817.     MOVE.W    $40(A4),D4
  818.     ASL.W    #7,D4
  819.     LEA    0(A1,D4.W),A1
  820.     MOVE.W    $44(A4),D4
  821. lbC000AE8    MOVE.B    0(A1,D4.W),D5
  822.     ADD.B    D5,0(A0,D4.W)
  823.     ADDQ.W    #1,D4
  824.     CMP.W    $46(A4),D4
  825.     BLS.S    lbC000AE8
  826. fineff    ADDQ.W    #1,$A4(A2)
  827.     MOVE.W    $A4(A2),D4
  828.     CMP.W    $46(A4),D4
  829.     BLS.S    NoEff
  830.     MOVE.W    $44(A4),$A4(A2)
  831. NoEff    RTS
  832.  
  833. EffJmpTable    dc.l    EffNegate
  834.     dc.l    EffWCNegate
  835.     dc.l    EffRotateV
  836.     dc.l    EffRotateH
  837.     dc.l    EffAlien
  838.  
  839. Detune    ADD.W    $84(A2),D2
  840.     CMP.W    #$71,D2
  841.     BGE.S    lbC000B30
  842.     MOVE.W    #$71,D2
  843. lbC000B30    TST.W    SongSpeedCnt
  844.     BEQ.S    lbC000B40
  845.     MOVE.W    $86(A2),D5
  846.     SUB.W    D5,$84(A2)
  847. lbC000B40    RTS
  848.  
  849. Amf    MOVEQ    #0,D4
  850.     MOVE.W    $20(A4),D4
  851.     ADD.W    $22(A4),D4
  852.     TST.W    D4
  853.     BEQ.S    lbC000B94
  854.     MOVE.L    _AmfTable,A1
  855.     MOVEQ    #0,D4
  856.     MOVE.W    $1C(A4),D4
  857.     ASL.L    #7,D4
  858.     LEA    0(A1,D4.L),A1
  859.     MOVE.W    $A0(A2),D5
  860.     MOVE.B    0(A1,D5.W),D4
  861.     EXT.W    D4
  862.     SUB.W    D4,D2
  863.     MOVE.W    $20(A4),D4
  864.     ADD.W    $22(A4),D4
  865.     CMP.W    $A0(A2),D4
  866.     BEQ.S    lbC000B8E
  867.     SUBQ.W    #1,$A2(A2)
  868.     BNE.S    lbC000B94
  869.     MOVE.W    $1E(A4),$A2(A2)
  870.     ADDQ.W    #1,$A0(A2)
  871.     BRA.S    lbC000B94
  872.  
  873. lbC000B8E    MOVE.W    $20(A4),$A0(A2)
  874. lbC000B94    RTS
  875.  
  876. Arpeggio    MOVE.W    D0,D4
  877.     MOVEQ    #12,D5
  878.     LSR.W    D5,D4
  879.     AND.W    #3,D4
  880.     TST.W    D4
  881.     BEQ.S    lbC000BDE
  882.     SUBQ.W    #1,D4
  883.     ASL.L    #4,D4
  884.     LEA    $4A(A4,D4.W),A1
  885.     MOVE.W    $AA(A2),D4
  886.     MOVEQ    #0,D5
  887.     MOVE.B    2(A1,D4.W),D5
  888.     ADD.B    D5,D2
  889.     ADD.B    D5,D3
  890.     MOVEQ    #0,D4
  891.     MOVE.B    (A1),D4
  892.     ADD.B    1(A1),D4
  893.     CMP.W    $AA(A2),D4
  894.     BEQ.S    lbC000BCE
  895.     ADDQ.W    #1,$AA(A2)
  896.     BRA.S    lbC000C0A
  897.  
  898. lbC000BCE    MOVE.B    (A1),D4
  899.     AND.L    #$FF,D4
  900.     MOVE.W    D4,$AA(A2)
  901.     BRA    lbC000C0A
  902.  
  903. lbC000BDE    MOVE.W    D0,D4
  904.     AND.W    #$F00,D4
  905.     BNE.S    lbC000C0A
  906.     MOVE.B    D0,D4
  907.     BEQ.S    lbC000C0A
  908.     MOVE.W    SongSpeedCnt,D5
  909.     DIVS    #3,D5
  910.     SWAP    D5
  911.     TST.W    D5
  912.     BEQ.S    lbC000C0A
  913.     CMP.W    #1,D5
  914.     BEQ.S    lbC000C02
  915.     ASR.W    #4,D4
  916. lbC000C02    AND.W    #15,D4
  917.     ADD.W    D4,D2
  918.     ADD.W    D4,D3
  919. lbC000C0A    LEA    _FreqTable,A1
  920.     LSL.L    #1,D2
  921.     LSL.L    #1,D3
  922.     MOVE.W    0(A1,D2.W),D2
  923.     MOVE.W    0(A1,D3.W),D3
  924.     RTS
  925.  
  926. Vibrato    CMP.W    #$FF,$90(A2)
  927.     BEQ.S    lbC000C72
  928.     TST.W    $90(A2)
  929.     BEQ.S    lbC000C32
  930.     SUBQ.W    #1,$90(A2)
  931.     BRA.S    lbC000C72
  932.  
  933. lbC000C32    LEA    VibratoTab,A1
  934.     MOVE.W    $8E(A2),D4
  935.     MOVEQ    #0,D5
  936.     MOVE.B    0(A1,D4.W),D5
  937.     MOVEQ    #0,D4
  938.     MOVE.W    $1A(A4),D4
  939.     TST.B    D5
  940.     BLT.S    lbC000C58
  941.     TST.W    D4
  942.     BEQ.S    lbC000C64
  943.     LSL.L    #2,D5
  944.     DIVU    D4,D5
  945.     ADD.W    D5,D2
  946.     BRA.S    lbC000C64
  947.  
  948. lbC000C58    NEG.B    D5
  949.     TST.W    D4
  950.     BEQ.S    lbC000C64
  951.     LSL.L    #2,D5
  952.     DIVU    D4,D5
  953.     SUB.W    D5,D2
  954. lbC000C64    MOVE.W    $18(A4),D5
  955.     ADD.W    D5,$8E(A2)
  956.     AND.W    #$FF,$8E(A2)
  957. lbC000C72    RTS
  958.  
  959. Portamento    TST.W    $98(A2)
  960.     BEQ.S    lbC000C98
  961.     TST.W    $96(A2)
  962.     BEQ.S    lbC000C98
  963.     CMP.W    D3,D2
  964.     BEQ.S    lbC000C98
  965.     SUBQ.W    #1,$96(A2)
  966.     EXG    D2,D3
  967.     SUB.W    D3,D2
  968.     MULS    $96(A2),D2
  969.     MOVE.W    $98(A2),D4
  970.     DIVS    D4,D2
  971.     ADD.W    D3,D2
  972. lbC000C98    AND.W    #$FFFF,D2
  973.     RTS
  974.  
  975. SetupAdsr    MOVEQ    #0,D4
  976.     MOVE.W    $28(A4),D4
  977.     ADD.W    $2A(A4),D4
  978.     TST.W    D4
  979.     BNE.S    lbC000CC4
  980.     MOVEQ    #0,D4
  981.     MOVE.W    $8A(A2),D4
  982.     MOVE.W    D4,8(A3)
  983.     TST.W    $AE(A2)
  984.     BEQ.S    lbC000CC0
  985.     SUBQ.W    #4,$AE(A2)
  986. lbC000CC0    BRA    lbC000D5E
  987.  
  988. lbC000CC4    MOVE.L    _AdsrTable,A1
  989.     MOVE.W    $24(A4),D4
  990.     ASL.W    #7,D4
  991.     LEA    0(A1,D4.W),A1
  992.     MOVE.W    $9A(A2),D4
  993.     MOVEQ    #0,D5
  994.     MOVE.B    0(A1,D4.W),D5
  995.     MOVEQ    #0,D4
  996.     MOVE.W    $8A(A2),D4
  997.     MULU    D5,D4
  998.     LSR.L    #6,D4
  999.     MOVE.W    D4,8(A3)
  1000.     ASL.W    #2,D4
  1001.     MOVE.W    D4,$AE(A2)
  1002.     MOVEQ    #0,D4
  1003.     MOVEQ    #0,D5
  1004.     MOVE.W    $28(A4),D4
  1005.     ADD.W    $2A(A4),D4
  1006.     MOVE.W    $9A(A2),D5
  1007.     CMP.W    D5,D4
  1008.     BGT.S    lbC000D0E
  1009.     MOVE.W    $28(A4),$9A(A2)
  1010.     BRA.S    lbC000D5E
  1011.  
  1012. lbC000D0E    MOVE.L    D0,D4
  1013.     ROL.L    #8,D4
  1014.     AND.L    #$FF,D4
  1015.     CMP.L    #$80,D4
  1016.     BEQ.S    lbC000D32
  1017. lbC000D20    SUBQ.W    #1,$9C(A2)
  1018.     BNE.S    lbC000D5E
  1019.     MOVE.W    $26(A4),$9C(A2)
  1020.     ADDQ.W    #1,$9A(A2)
  1021.     BRA.S    lbC000D5E
  1022.  
  1023. lbC000D32    CMP.W    #1,$2E(A4)
  1024.     BEQ.S    lbC000D20
  1025.     MOVE.W    $9A(A2),D4
  1026.     CMP.W    $2C(A4),D4
  1027.     BLT.S    lbC000D20
  1028.     TST.W    $2E(A4)
  1029.     BEQ.S    lbC000D5E
  1030.     TST.W    $9E(A2)
  1031.     BEQ.S    lbC000D56
  1032.     SUBQ.W    #1,$9E(A2)
  1033.     BRA.S    lbC000D5E
  1034.  
  1035. lbC000D56    MOVE.W    $2E(A4),$9E(A2)
  1036.     BRA.S    lbC000D20
  1037.  
  1038. lbC000D5E    MOVE.W    $8C(A2),D5
  1039.     MOVE.W    $8A(A2),D4
  1040.     ADD.W    D5,D4
  1041.     TST.W    D4
  1042.     BGE.S    lbC000D70
  1043.     MOVEQ    #0,D4
  1044.     BRA.S    lbC000D7A
  1045.  
  1046. lbC000D70    CMP.W    #$40,D4
  1047.     BLS.S    lbC000D7A
  1048.     MOVE.W    #$40,D4
  1049. lbC000D7A    MOVE.W    D4,$8A(A2)
  1050.     RTS
  1051.  
  1052.  
  1053.     SECTION rep,DATA_C
  1054. PlayTable0    dcb.l    $2C,0
  1055. PlayTable1    dcb.l    $2C,0
  1056. PlayTable2    dcb.l    $2C,0
  1057. PlayTable3    dcb.l    $2C,0
  1058. ZeroWaveForm    dcb.l    2,0
  1059.  
  1060.     SECTION rep,DATA
  1061. DMAStartMask    dc.w    0
  1062. lastticks    dc.w    0
  1063. timerticks    dc.w    0
  1064. _SongStructs    dc.l    0
  1065. _WorkSST    dc.w    0
  1066. lbW001054    dc.w    0
  1067. lbW001056    dc.w    0
  1068. lbW001058    dc.w    0
  1069. lbW00105A    dc.w    0
  1070. lbW00105C    dc.w    0
  1071. _OverTable    dc.l    0
  1072. _NoteTable    dc.l    0
  1073. _InstrTable    dc.l    0
  1074. _WaveTable    dc.l    0
  1075. _AmfTable    dc.l    0
  1076. _AdsrTable    dc.l    0
  1077. _SaAddr    dcb.l    $40,0
  1078. _SaList    dcb.l    $40,0
  1079. _RepeatVoice0    dc.b    0
  1080. _RepeatVoice1    dc.b    0
  1081. _RepeatVoice2    dc.b    0
  1082. _RepeatVoice3    dc.b    0
  1083. Voice0On    dc.w    1
  1084. Voice1On    dc.w    1
  1085. Voice2On    dc.w    1
  1086. Voice3On    dc.w    1
  1087. SongSpeedCnt    dc.w    0
  1088. _WhereInStep    dc.w    0
  1089. _WhichStep    dc.w    0
  1090. CurrOtTrk0    dc.l    0
  1091. CurrOtTrk1    dc.l    0
  1092. CurrOtTrk2    dc.l    0
  1093. CurrOtTrk3    dc.l    0
  1094. CurrNote0    dc.l    0
  1095. CurrNote1    dc.l    0
  1096. CurrNote2    dc.l    0
  1097. CurrNote3    dc.l    0
  1098. VibratoTab    dc.l    $30609
  1099.     dc.l    $C101316
  1100.     dc.l    $191C1F22
  1101.     dc.l    $25282B2E
  1102.     dc.l    $31343639
  1103.     dc.l    $3C3F4244
  1104.     dc.l    $47494C4E
  1105.     dc.l    $51535658
  1106.     dc.l    $5A5C5E60
  1107.     dc.l    $62646668
  1108.     dc.l    $6A6C6D6F
  1109.     dc.l    $70727374
  1110.     dc.l    $76777879
  1111.     dc.l    $7A7B7B7C
  1112.     dc.l    $7D7D7E7E
  1113.     dc.l    $7E7F7F7F
  1114.     dc.l    $7F7F7F7F
  1115.     dc.l    $7E7E7D7D
  1116.     dc.l    $7C7C7B7A
  1117.     dc.l    $79787776
  1118.     dc.l    $75747271
  1119.     dc.l    $706E6C6B
  1120.     dc.l    $69676563
  1121.     dc.l    $615F5D5B
  1122.     dc.l    $59575452
  1123.     dc.l    $504D4B48
  1124.     dc.l    $4543403D
  1125.     dc.l    $3B383532
  1126.     dc.l    $2F2C2927
  1127.     dc.l    $24201D1A
  1128.     dc.l    $1714110E
  1129.     dc.l    $B080502
  1130.     dc.l    $FFFCF9F6
  1131.     dc.l    $F2EFECE9
  1132.     dc.l    $E6E3E0DD
  1133.     dc.l    $DAD7D4D1
  1134.     dc.l    $CECBC9C6
  1135.     dc.l    $C3C0BEBB
  1136.     dc.l    $B8B6B3B1
  1137.     dc.l    $AEACAAA8
  1138.     dc.l    $A5A3A19F
  1139.     dc.l    $9D9B9998
  1140.     dc.l    $96949391
  1141.     dc.l    $908E8D8C
  1142.     dc.l    $8A898887
  1143.     dc.l    $86868584
  1144.     dc.l    $84838382
  1145.     dcb.l    2,$82828282
  1146.     dc.l    $82838384
  1147.     dc.l    $84858687
  1148.     dc.l    $88898A8B
  1149.     dc.l    $8C8D8F90
  1150.     dc.l    $92939597
  1151.     dc.l    $989A9C9E
  1152.     dc.l    $A0A2A4A6
  1153.     dc.l    $A9ABADB0
  1154.     dc.l    $B2B5B7BA
  1155.     dc.l    $BCBFC2C4
  1156.     dc.l    $C7CACDD0
  1157.     dc.l    $D3D6D9DB
  1158.     dc.l    $DEE2E5E8
  1159.     dc.l    $EBEEF1F4
  1160.     dc.l    $F7FAFD00
  1161. _FreqTable    dc.l    $3580
  1162.     dc.l    $32802FA0
  1163.     dc.l    $2D002A60
  1164.     dc.l    $280025C0
  1165.     dc.l    $23A021A0
  1166.     dc.l    $1FC01E00
  1167.     dc.l    $1C501AC0
  1168.     dc.l    $194017D0
  1169.     dc.l    $16801530
  1170.     dc.l    $140012E0
  1171.     dc.l    $11D010D0
  1172.     dc.l    $FE00F00
  1173.     dc.l    $E280D60
  1174.     dc.l    $CA00BE8
  1175.     dc.l    $B400A98
  1176.     dc.l    $A000970
  1177.     dc.l    $8E80868
  1178.     dc.l    $7F00780
  1179.     dc.l    $71406B0
  1180.     dc.l    $65005F4
  1181.     dc.l    $5A0054C
  1182.     dc.l    $50004B8
  1183.     dc.l    $4740434
  1184.     dc.l    $3F803C0
  1185.     dc.l    $38A0358
  1186.     dc.l    $32802FA
  1187.     dc.l    $2D002A6
  1188.     dc.l    $280025C
  1189.     dc.l    $23A021A
  1190.     dc.l    $1FC01E0
  1191.     dc.l    $1C501AC
  1192.     dc.l    $194017D
  1193.     dc.l    $1680153
  1194.     dc.l    $140012E
  1195.     dc.l    $11D010D
  1196.     dc.l    $FE00F0
  1197.     dc.l    $E200D6
  1198.     dc.l    $CA00BE
  1199.     dc.l    $B400AA
  1200.     dc.l    $A00097
  1201.     dc.l    $8F0087
  1202.     dc.l    $7F0078
  1203.     dc.l    $71006B
  1204.     dc.l    $65005F
  1205.     dc.l    $5A0055
  1206.     dc.l    $50004B
  1207.     dc.l    $470043
  1208.     dc.l    $3F003C
  1209.     dc.l    $380035
  1210.     dc.l    $32002F
  1211.     dc.l    $2D002A
  1212.     dc.l    $280025
  1213.     dc.l    $230021
  1214.     dc.l    $1F001E
  1215.     dc.l    $1CFFFF
  1216.  
  1217.     SECTION rep,DATA_C
  1218.     
  1219.     * Load modul beyon this point
  1220. Module    
  1221.     incbin    "???"
  1222.     END
  1223.