home *** CD-ROM | disk | FTP | other *** search
/ Supremacy 2 / Supremacy-2.iso / Automation / A_199.ST / GHOST.DEG < prev    next >
Text File  |  1985-11-20  |  11KB  |  691 lines

  1.         opt c+,d-
  2.  
  3. ;SET TABS TO 10 FOR DISASSEMBLY
  4.  
  5.     
  6. CHEAT    CLR.L    -(A7)
  7.     MOVE.W    #$20,-(A7)
  8.     TRAP    #$01
  9.     ADDQ.L    #6,A7
  10.     lea $80000,a7
  11.     clr.w -(sp)
  12.     pea $78000
  13.     move.l (a7),-(sp)
  14.     move.w #5,-(sp)
  15.     trap #14
  16.     lea $c(a7),a7
  17.     pea text
  18.     move.w #9,-(sp)
  19.     trap #1
  20.     lea dr(pc),a0
  21.     lea $6a000,a1
  22.     bsr DEPACK
  23.     lea $1000.w,a0
  24.     lea DEPACK(pc),a1
  25.     move.l #$100,d0
  26. xxx    move.l (a1)+,(a0)+
  27.     dbf d0,xxx
  28.     bsr main
  29.     jmp $6a000
  30. DEPACK        adda.l #4,a0
  31.         move.w $ffff8240.w,-(sp)
  32.         move.l a0,$a0.w
  33.         move.l (a0)+,d5
  34.         adda.l d5,a1
  35.         adda.l (a0),a0
  36.         subq.l #4,a0
  37.         tst.w -(a0)
  38.         bpl.s L_1
  39.         subq.l #1,a0
  40. L_1        move.b -(a0),d0
  41. L_2        lsl.b #1,d0
  42.         bne.s L_3
  43.         MOVE.B    -(A0),D0
  44.         ROXL.B    #1,D0
  45. L_3        BCC.S    L_10
  46.         CLR.W    D1
  47.         LSL.B    #1,D0
  48.         BNE.S    L_4
  49.         MOVE.B    -(A0),D0
  50.         ROXL.B    #1,D0
  51. L_4        BCC.S    L_9
  52.         LEA    NUMS(PC),A3
  53.         MOVEQ    #3,D3
  54. L_5        CLR.W    D1
  55.         MOVE.B    0(A3,D3.W),D2
  56.         EXT.W    D2
  57.         MOVEQ    #-1,D4
  58.         LSL.W    D2,D4
  59.         NOT.W    D4
  60.         SUBQ.W    #1,D2
  61. L_6        LSL.B    #1,D0
  62.         BNE.S    L_7
  63.         MOVE.B    -(A0),D0
  64.         ROXL.B    #1,D0
  65. L_7        ROXL.W    #1,D1
  66.         DBF    D2,L_6
  67.         TST.W    D3
  68.         BEQ.S    L_8
  69.         CMP.W    D1,D4
  70.         DBNE    D3,L_5
  71. L_8        MOVE.B    4(A3,D3.W),D2
  72.         EXT.W    D2
  73.         ADD.W    D2,D1
  74.         BRA    L_9
  75.  
  76. NUMS        DC.B    $0A,$03,$02,$02,$0E,$07,$04,$01
  77.  
  78. L_9        MOVE.B    -(A0),-(A1)
  79.         MOVE.W    d0,$FFFF8240.w
  80.         DBF    D1,L_9
  81. L_10        MOVE.L    $a0.w,A3
  82.         ADDQ.L    #$8,A3
  83.         CMPA.L    A3,A0
  84.         BLE    BYENOW
  85.         LEA    NUMS2(PC),A3
  86.         MOVEQ    #3,D2
  87. L_11        LSL.B    #1,D0
  88.         BNE.S    L_12
  89.         MOVE.B    -(A0),D0
  90.         ROXL.B    #1,D0
  91. L_12        BCC.S    L_13
  92.         DBF    D2,L_11
  93. L_13        CLR.W    D1
  94.         ADDQ.W    #1,D2
  95.         MOVE.B    0(A3,D2.W),D3
  96.         BEQ.S    L_16
  97.         EXT.W    D3
  98.         SUBQ.W    #1,D3
  99. L_14        LSL.B    #1,D0
  100.         BNE.S    L_15
  101.         MOVE.B    -(A0),D0
  102.         ROXL.B    #1,D0
  103. L_15        ROXL.W    #1,D1
  104.         DBF    D3,L_14
  105. L_16        MOVE.B    5(A3,D2.W),D3
  106.         EXT.W    D3
  107.         ADD.W    D3,D1
  108.         BRA    L_161
  109.  
  110. NUMS2        DC.B    $0A,$02,$01,$00,$00,$0A,$06,$04,$03,$02
  111.  
  112. L_161        CMPI.W    #2,D1
  113.         BEQ.S    L_22
  114.         LEA    NUMS3(PC),A3
  115.         MOVEQ    #1,D3
  116. L_17        LSL.B    #1,D0
  117.         BNE.S    L_18
  118.         MOVE.B    -(A0),D0
  119.         ROXL.B    #1,D0
  120. L_18        BCC.S    L_19
  121.         DBF    D3,L_17
  122. L_19        ADDQ.W    #1,D3
  123.         CLR.W    D2
  124.         MOVE.B    0(A3,D3.W),D4
  125.         EXT.W    D4
  126. L_20        LSL.B    #1,D0
  127.         BNE.S    L_21
  128.         MOVE.B    -(A0),D0
  129.         ROXL.B    #1,D0
  130. L_21        ROXL.W    #1,D2
  131.         DBF    D4,L_20
  132.         LSL.W    #1,D3
  133.         ADD.W    4(A3,D3.W),D2
  134.         BRA.S    L_26
  135.  
  136. NUMS3        DC.B    $0B,$04,$07,$00,$01,$20,$00,$00
  137.         DC.B    $00,$20,$00,$00
  138.  
  139. L_22        CLR.W    D2
  140.         MOVEQ    #5,D3
  141.         CLR.W    D4
  142.         LSL.b    #1,D0
  143.         BNE.S    L_23
  144.         MOVE.B    -(A0),D0
  145.         ROXL.B    #1,D0
  146. L_23        BCC.S    L_24
  147.         MOVEQ    #8,D3
  148.         MOVEQ    #$40,D4
  149. L_24        LSL.B    #1,D0
  150.         BNE.S    L_25
  151.         MOVE.B    -(A0),D0
  152.         ROXL.B    #1,D0
  153. L_25        ROXL.W    #1,D2
  154.         DBF    D3,L_24
  155.         ADD.W    D4,D2
  156. L_26        LEA    0(A1,D2.W),A2
  157.         EXT.L    D1
  158.         ADDA.L    D1,A2
  159.         SUBQ.W    #1,D1
  160. L_27        MOVE.B    -(A2),-(A1)
  161.         DBF    D1,L_27
  162.         BRA    L_2
  163. BYENOW        move.w (a7)+,$ffff8240.w
  164.         RTS
  165.  
  166. main        lea    wedge(pc),a0
  167.         lea    $7e0d0,a1
  168.         move.w #$4e75,$7e0c2
  169.         move.w    #(wedend-wedge),d0
  170. .loop        move.b    (a0)+,(a1)+
  171.         dbf    d0,.loop
  172.         rts
  173.  
  174.  
  175.  
  176. wedge        movem.l    d0-d7/a0-a6,-(a7)
  177.  
  178. BUFF1    EQU    $55480        ;bmap tables?
  179. BUFF2    EQU    $55a80        ;name table?
  180. BUFF3    EQU    $1400        ;sector list table?
  181.  
  182. emload    MOVE.L    $1090c,-(A7)
  183.     BSR    MAIN1        ;SETUP DIRECTORY TABLES, BUFF 3 IN USE!
  184.     moveq.l #$c,d0
  185.     lea $200.w,a0
  186. xxg    move.b #$20,(a0)+
  187.     dbf d0,xxg
  188.     move.l (a7)+,a0
  189.     lea $200.w,a1
  190. xxc    move.b (a0)+,(a1)+
  191.     cmp.b #$2e,(a0)
  192.     bne.s xxc
  193.     tst.b (a0)+
  194.     move.b (a0)+,$208.w
  195.     move.b (a0)+,$209.w
  196.     move.b (a0),$20a.w
  197.     move.l $10908,a6
  198.     MOVE.L    A6,-(A7)
  199.     MOVE.L    A6,A5        ;POS IN A5
  200.     lea $200.w,a6    ;NAME IN A6
  201.     BSR    MAIN2        ;CALL LOADER
  202.     MOVE.L    (A7)+,A1
  203.     move.l    a5,d0
  204.     sub.l    a1,d0
  205.         
  206. copydown    move.l    a1,a0        ;a1 = load position
  207.         lea    -$40(a1),a2    ;copy to buffer
  208.         lea    buffer(pc),a3
  209.         moveq.w    #$3f,d1
  210. .loop        move.b    (a2)+,(a3)+
  211.         dbf    d1,.loop
  212.         
  213. datadown    lea    -$40(a1),a2    ;copy packed data down 
  214. .loop        move.b    (a0)+,(a2)+    ;20 bytes
  215.         dbf    d0,.loop
  216.         sub.l    #$10000,d0
  217.         bpl.s    .loop
  218.         lea    -$40(a1),a0
  219.         move.l a1,-(sp)
  220.         jsr    $1000.w
  221.         move.l (a7)+,a1        ;depack
  222. repair        lea    buffer(pc),a0    ;repair buffer
  223.         lea    -$40(a1),a1
  224.         moveq.w    #$3f,d0
  225. .loop        move.b    (a0)+,(a1)+
  226.         dbf    d0,.loop
  227.         movem.l    (a7)+,d0-d7/a0-a6
  228.         clr.l    d0
  229.         rts
  230.  
  231. buffer        ds.b    64
  232.  
  233.     EVEN
  234.  
  235. VAR3    DC.B    $ff
  236. VAR19    DC.B    0
  237. VAR1    DC.B    0
  238. VAR12    DC.B    0
  239. VAR31    DC.B    0
  240. VAR8    DC.B    $1
  241. VAR18    DC.B    0
  242. VAR10    DC.B    $a
  243. VAR16    DC.W    $1
  244. VAR13    DC.B    0
  245. VAR9    DC.B    $5
  246. VAR14    DC.B    0
  247. VAR11    DC.B    $7
  248. VAR15    DC.W    $187
  249.  
  250. MAIN1    LEA    VAR1(PC),A0
  251.     ST    (A0)
  252.     LEA    VAR2(PC),A0
  253.     CLR.W    (A0)
  254.     BSR    SUB1
  255.     BSR    SUB2
  256.     BSR    SUB3
  257.     TST.W    D0
  258.     BMI    JMP1
  259.     LEA    VAR3(PC),A0
  260.     TST.B    (A0)
  261.     BEQ    JMP2
  262.     LEA    VAR4(PC),A0
  263.     CLR.W    (A0)
  264.     LEA    VAR5(PC),A0
  265.     MOVE.L    #BUFF1,(A0)
  266.     LEA    VAR6(PC),A0
  267.     MOVE.W    #1,(A0)
  268.     LEA    VAR7(PC),A0
  269.     MOVE.W    #1,(A0)
  270.     BSR    SUB4
  271.     TST.W    D0
  272.     BMI    JMP1
  273.     LEA    BUFF1,A5
  274.     LEA    VAR8(PC),A0
  275.     MOVE.B    $1A(A5),(A0)
  276.     SUBQ.B    #1,(A0)
  277.     LEA    VAR9(PC),A0
  278.     MOVE.B    $16(A5),(A0)
  279.     LEA    VAR10(PC),A0
  280.     MOVE.B    $18(A5),(A0)
  281.     MOVE.B    $11(A5),D0
  282.     LSR.B    #4,D0
  283.     LEA    VAR11(PC),A0
  284.     MOVE.B    D0,(A0)
  285.     LEA    VAR12(PC),A0
  286.     MOVE.B    #1,(A0)
  287.     MOVE.B    $14(A5),D0
  288.     LSL.W    #8,D0
  289.     MOVE.B    $13(A5),D0
  290.     MOVE.W    VAR13(PC),D1
  291.     ADD.W    D1,D1
  292.     ADD.W    VAR14(PC),D1
  293.     ADDQ.W    #1,D1
  294.     SUB.W    D1,D0
  295.     LSR.W    #1,D0
  296.     LEA    VAR15(PC),A0
  297.     MOVE.W    D0,(A0)
  298. JMP2    LEA    BUFF3,A3
  299.     LEA    BUFF1,A5
  300.     MOVE.W    VAR16(PC),D0
  301.     MOVE.W    VAR13(PC),D1
  302.     SUBQ.W    #1,D1
  303.     MOVE.W    VAR18(PC),D3
  304. DBF1    MOVE.W    D0,D2
  305.     EXT.L    D2
  306.     DIVU    D3,D2
  307.     MOVE.B    D2,(A3)+
  308.     SWAP    D2
  309.     ADDQ.B    #1,D2
  310.     MOVE.B    D2,(A3)+
  311.     ADDQ.W    #1,D0
  312.     DBF    D1,DBF1
  313.     MOVE.B    #$FF,(A3)+
  314.     BSR    SUB5
  315.     TST.W    D0
  316.     BMI    JMP1
  317.     LEA    BUFF3,A3
  318.     LEA    BUFF2,A5
  319.     MOVE.W    VAR16(PC),D0
  320.     MOVE.W    VAR13(PC),D1
  321.     ADD.W    D1,D1
  322.     ADD.W    D1,D0
  323.     MOVE.W    VAR14(PC),D1
  324.     SUBQ.W    #1,D1
  325.     MOVE.W    VAR18(PC),D3
  326. DBF2    MOVE.W    D0,D2
  327.     EXT.L    D2
  328.     DIVU    D3,D2
  329.     MOVE.B    D2,(A3)+
  330.     SWAP    D2
  331.     ADDQ.B    #1,D2
  332.     MOVE.B    D2,(A3)+
  333.     ADDQ.W    #1,D0
  334.     DBF    D1,DBF2
  335.     MOVE.B    #$FF,(A3)+
  336.     BSR    SUB5
  337.     TST.W    D0
  338.     BMI    JMP1
  339.     BSR    SUB1
  340.     LEA    VAR1(PC),A0
  341.     SF    (A0)
  342.     BRA    JMP5
  343. JMP1    LEA    BUFF1,A0
  344.     MOVE.W    VAR13(PC),D0
  345.     ADD.W    VAR14(PC),D0
  346.     LSL.W    #7,D0
  347.     SUBQ.W    #1,D0
  348.     MOVE.L    #$45525252,D1
  349. DBF3    MOVE.L    D1,(A0)+
  350.     DBF    D0,DBF3
  351.     RTS
  352.     
  353. MAIN2    BSR    SUB10
  354.     BPL    JMP4
  355.     MOVE.W    #$2700,SR
  356. COLS    ADDI.W    #1,$FffF8240.w
  357.     BRA.S     COLS
  358. JMP4    MOVE.W    D1,-(A7)
  359.     LEA    VAR2(PC),A0
  360.     CLR.W    (A0)
  361.     BSR    SUB2
  362.     MOVE.W    (A7)+,D1
  363.     LEA    BUFF3,A3
  364. JMP3    MOVE.W    VAR18(PC),D3
  365.     MOVE.W    D1,D2
  366.     SUBQ.W    #2,D2
  367.     ADD.W    D2,D2
  368.     ADD.W    VAR13(PC),D2
  369.     ADD.W    VAR13(PC),D2
  370.     ADD.W    VAR14(PC),D2
  371.     ADDQ.W    #1,D2
  372.     EXT.L    D2
  373.     MOVEA.L    D2,A4
  374.     DIVU    D3,D2
  375.     MOVE.B    D2,(A3)+
  376.     SWAP    D2
  377.     ADDQ.B    #1,D2
  378.     MOVE.B    D2,(A3)+
  379.     MOVE.L    A4,D2
  380.     ADDQ.L    #1,D2
  381.     DIVU    D3,D2
  382.     MOVE.B    D2,(A3)+
  383.     SWAP    D2
  384.     ADDQ.B    #1,D2
  385.     MOVE.B    D2,(A3)+
  386.     LEA    BUFF1,A4
  387.     BTST    #0,D1
  388.     BNE    JMP8
  389.     MOVE.W    D1,D2
  390.     LSR.W    #1,D1
  391.     ADD.W    D2,D1
  392.     MOVE.B    1(A4,D1.W),D2
  393.     LSL.W    #8,D2
  394.     MOVE.B    0(A4,D1.W),D2
  395.     ANDI.W    #$FFF,D2
  396.     BRA    JMP6
  397. JMP8    MOVE.W    D1,D2
  398.     LSR.W    #1,D1
  399.     ADD.W    D2,D1
  400.     MOVE.B    1(A4,D1.W),D2
  401.     LSL.W    #8,D2
  402.     MOVE.B    0(A4,D1.W),D2
  403.     LSR.W    #4,D2
  404.     ANDI.W    #$FFF,D2
  405. JMP6    CMP.W    #$FF0,D2
  406.     BCC    JMP12
  407.     MOVE.W    D2,D1
  408.     BRA.S    JMP3
  409. JMP12    MOVE.B    #$FF,(A3)
  410.     BSR    SUB5
  411.     BSR    SUB1
  412. JMP5    LEA    VAR19(PC),A0
  413.     MOVE.B    #$64,(A0)
  414.     RTS
  415.     
  416. SUB5    LEA    BUFF3,A3
  417. JMP10    MOVEQ    #0,D0
  418.     MOVE.B    (A3)+,D1
  419.     CMP.B    #$FF,D1
  420.     BEQ    JMP9
  421.     MOVE.B    (A3)+,D2
  422.     MOVE.B    D2,D5
  423.     LEA    VAR12(PC),A0
  424.     TST.B    (A0)
  425.     BEQ    JMP13
  426.     MOVE.B    #$FF,D5
  427. JMP13    ADDQ.W    #1,D0
  428.     ADDQ.B    #1,D5
  429.     MOVE.B    (A3)+,D3
  430.     CMP.B    #$FF,D3
  431.     BEQ    JMP14
  432.     CMP.B    D1,D3
  433.     BNE    JMP14
  434.     MOVE.B    (A3)+,D4
  435.     CMP.B    D5,D4
  436.     BEQ.S    JMP13
  437.     SUBQ.L    #1,A3
  438. JMP14    SUBQ.L    #1,A3
  439.     ANDI.W    #$FF,D1
  440.     ANDI.W    #$FF,D2
  441.     LEA    VAR4(PC),A0
  442.     MOVE.W    D1,(A0)
  443.     LEA    VAR7(PC),A0
  444.     MOVE.W    D2,(A0)
  445.     LEA    VAR6(PC),A0
  446.     MOVE.W    D0,(A0)
  447.     LEA    VAR5(PC),A0
  448.     MOVE.L    A5,(A0)
  449.     EXT.L    D0
  450.     LSL.L    #8,D0
  451.     ADD.L    D0,D0
  452.     ADDA.L    D0,A5
  453.     MOVEM.L    D0-D7/A0-A6,-(A7)
  454.     LEA    VAR30(PC),A0
  455.     CLR.W    (A0)
  456. JMP16    BSR    SUB4
  457.     TST.W    D0
  458.     BPL    JMP15
  459.     LEA    VAR30(PC),A0
  460.     ADDQ.W    #1,(A0)
  461.     CMPI.W    #$64,(A0)
  462.     BNE.S    JMP16
  463.     BRA    JMP11
  464. JMP15    MOVEM.L    (A7)+,D0-D7/A0-A6
  465.     MOVE.W    VAR6(PC),D0
  466.     BRA    JMP10
  467. JMP9    MOVEQ    #0,D0
  468.     RTS
  469.  
  470. JMP11    LEA    VAR1(PC),A0
  471.     TST.B    (A0)
  472.     BEQ.S    JMP22
  473.     MOVEM.L    (A7)+,D0-D7/A0-A6
  474.     MOVEq.L    #$FF,D0
  475.     RTS
  476. JMP22    MOVE.W    #$2700,SR
  477. STOP    BRA.S    STOP
  478.     
  479. SUB10    LEA    BUFF2,A4
  480.     MOVE.W    VAR14(PC),D0
  481.     LSL.W    #4,D0
  482.     SUBQ.W    #2,D0
  483. JMP18    TST.L    (A4)
  484.     BEQ    JMP17
  485.     MOVE.L    (A6),D1
  486.     CMP.L    (A4),D1
  487.     BNE    JMP17
  488.     MOVE.L    4(A6),D1
  489.     CMP.L    4(A4),D1
  490.     BNE.s    JMP17
  491.     MOVE.B    8(A6),D1
  492.     CMP.B    8(A4),D1
  493.     BNE.s    JMP17
  494.     MOVE.B    9(A6),D1
  495.     CMP.B    9(A4),D1
  496.     BNE.S    JMP17
  497.     MOVE.B    $A(A6),D1
  498.     CMP.B    $A(A4),D1
  499.     BNE.S    JMP17
  500.     MOVE.B    $1B(A4),D1
  501.     LSL.W    #8,D1
  502.     MOVE.B    $1A(A4),D1
  503.     ANDI.W    #$FFF,D1
  504.     BRA.s    JMP19
  505. JMP17    LEA    $20(A4),A4
  506.     DBF    D0,JMP18
  507.     SUBA.L    A4,A4
  508.     MOVEQ    #-1,D1
  509. JMP19    RTS
  510.  
  511. VAR20    DC.W    0
  512. VAR2    DC.W    0
  513.  
  514. SUB2    MOVE.W    VAR20(PC),D0
  515.     ADDQ.B    #1,D0
  516.     LSL.B    #1,D0
  517.     OR.W    VAR2(PC),D0
  518.     EORI.B    #7,D0
  519.     ANDI.B    #7,D0
  520.     LEA    VAR19(PC),A0
  521.     CLR.B    (A0)
  522.     MOVE.W    #$2700,SR
  523.     MOVE.B    #$E,$FFFF8800.W
  524.     MOVE.B    $FFFF8800.W,D1
  525.     ANDI.B    #$F8,D1
  526.     OR.B    D0,D1
  527.     MOVE.B    D1,$FFFF8802.W
  528.     MOVE.W    #$2300,SR
  529.     RTS
  530.     
  531. SUB1    MOVE.W    #$80,$FFFF8606.W
  532.     MOVE.W    #$D0,D6
  533.     BRA    SUB7
  534.     
  535. SUB8    MOVE.W    VAR31(PC),D6
  536.     BEQ.S    JMP20
  537.     MOVE.W    VAR4(PC),D6
  538.     MOVE.W    D6,D7
  539.     ANDI.W    #1,D7
  540.     LSR.W    #1,D6
  541.     LEA    VAR4(PC),A0
  542.     MOVE.W    D6,(A0)
  543.     CMP.W    VAR2(PC),D7
  544.     BEQ.S    JMP20
  545.     LEA    VAR2(PC),A0
  546.     MOVE.W    D7,(A0)
  547.     MOVEM.L    D0-D1,-(A7)
  548.     BSR.S    SUB2
  549.     MOVEM.L    (A7)+,D0-D1
  550. JMP20    MOVE.W    #$82,$FFFF8606.W
  551.     MOVE.W    VAR22(PC),D6
  552.     BSR    SUB7
  553.     MOVE.W    #$86,$FFFF8606.W
  554.     MOVE.W    VAR4(PC),D6
  555.     BSR    SUB7
  556.     MOVE.W    #$80,$FFFF8606.W
  557.     MOVE.W    #$10,D6
  558.     OR.W    VAR21(PC),D6
  559.     BSR    SUB7
  560.     MOVE.L    #$50000,D7
  561. JMP21    SUBQ.L    #1,D7
  562.     BEQ.S    JMP23
  563.     BTST    #5,$FFFFFA01.W
  564.     BNE.S    JMP21
  565.     LEA    VAR22(PC),A0
  566.     MOVE.W    VAR4(PC),(A0)
  567.     MOVEQ    #0,D0
  568.     RTS
  569. JMP23    MOVEQ    #-1,D0
  570.     RTS
  571.     
  572. SUB4    BSR.S    SUB8
  573.     TST.W    D0
  574.     BMI    JMP7
  575.     LEA    VAR23(PC),A0
  576.     CLR.L    (A0)
  577.     MOVE.W    #$90,$FFFF8606.W
  578.     MOVE.W    #$190,$FFFF8606.W
  579.     MOVE.W    #$90,$FFFF8606.W
  580.     MOVE.W    VAR6(PC),D6
  581.     MOVE.W    #$200,D2
  582.     MULU    D6,D2
  583.     MOVE.L    VAR5(PC),D3
  584.     ADD.L    D3,D2
  585.     LEA    VAR24(PC),A0
  586.     MOVE.L    D2,(A0)
  587.     BSR    SUB7
  588.     MOVE.W    #$84,$FFFF8606.W
  589.     MOVE.W    VAR7(PC),$FFFF8604.W
  590.     MOVE.L    VAR5(PC),D0
  591.     MOVE.B    D0,$FFFF860D.W
  592.     LSR.L    #8,D0
  593.     MOVE.B    D0,$FFFF860B.W
  594.     LSR.W    #8,D0
  595.     MOVE.B    D0,$FFFF8609.W
  596.     MOVE.W    #$80,$FFFF8606.W
  597.     MOVE.W    #$90,D6
  598.     BSR    SUB7
  599.     MOVEA.L    VAR5(PC),A4
  600.     MOVEA.L    VAR24(PC),A5
  601.     MOVEQ    #$14,D7
  602. JMP30    MOVE.W    #$4000,D0
  603. JMP24    BTST    #5,$FFFFFA01.W
  604.     BEQ    JMP31
  605.     LEA    VAR26(PC),A0
  606.     MOVE.B    $FFFF8609.w,(A0)
  607.     LEA    VAR27(PC),A0
  608.     MOVE.B    $FFFF860B.w,(A0)
  609.     LEA    VAR28(PC),A0
  610.     MOVE.B    $FFFF860D.w,(A0)
  611.     CMPA.L    VAR23(PC),A5
  612.     BLE    JMP31
  613.     DBF    D0,JMP24
  614.     CMPA.L    VAR23(PC),A4
  615.     BEQ    JMP7
  616.     MOVEA.L    VAR23(PC),A4
  617.     DBF    D7,JMP30
  618.     BRA    JMP7
  619. JMP31    MOVE.W    #$90,$FFFF8606.w
  620.     MOVE.W    $FFFF8606.w,D5
  621.     LEA    VAR29(PC),A0
  622.     MOVE.W    D5,(A0)
  623.     BTST    #0,D5
  624.     BEQ    JMP7
  625.     BTST    #1,D5
  626.     BNE    JMP7
  627.     MOVE.W    #$80,$FFFF8606.w
  628.     BSR    SUB9
  629.     MOVEQ    #0,D0
  630. JMP25    BSR    SUB1
  631.     RTS
  632. JMP7    MOVEQ    #-1,D0
  633.     BRA.S    JMP25
  634.  
  635.  
  636. SUB7    BSR    SUB6
  637.     MOVE.W    D6,$FFFF8604.w
  638.     BSR    SUB6
  639.     RTS
  640.     
  641. SUB6    MOVE    SR,-(A7)
  642.     MOVE.W    D7,-(A7)
  643.     MOVE.W    #$A,D7
  644. JMP26    DBF    D7,JMP26
  645.     MOVE.W    (A7)+,D7
  646.     MOVE.W    (A7)+,SR
  647.     RTS
  648.     
  649. SUB3    MOVEQ    #4,D6
  650.     OR.W    VAR2(PC),D6
  651.     MOVE.L    #$50000,D7
  652.     MOVE.W    #$80,$FFFF8606.w
  653.     BSR.S    SUB7
  654. JMP28    SUBQ.L    #1,D7
  655.     BEQ.S    JMP27
  656.     BTST    #5,$FFFFFA01.W
  657.     BNE.S    JMP28
  658.     LEA    VAR22(PC),A0
  659.     CLR.W    (A0)
  660.     MOVEQ    #0,D0
  661.     RTS
  662. JMP27    MOVEQ    #-1,D0
  663.     RTS
  664.  
  665. SUB9    BSR.S    SUB6
  666.     LEA    VAR32(PC),A0
  667.     MOVE.W    $FFFF8604.w,(A0)
  668.     BSR.S    SUB6
  669.     RTS
  670.  
  671.     EVEN
  672.     
  673. VAR6    DC.W    0
  674. VAR7    DC.W    0
  675. VAR22    DC.W    0
  676. VAR4    DC.W    0
  677. VAR29    DC.W    0
  678. VAR24    DC.L    0
  679. VAR23    DC.B    0
  680. VAR26    DC.B    0
  681. VAR27    DC.B    0
  682. VAR28    DC.B    0
  683. VAR21    DC.W    $3
  684. VAR32    DC.W    0
  685. VAR5    DC.L    BUFF1
  686. VAR30    DC.W    0
  687.  
  688. wedend
  689.  
  690. dr        incbin "g"
  691. text        dc.b "VAPOUR PRESENTS . . .",0