home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / GXY-INF.LHA / infos / skidzreader.s < prev    next >
Encoding:
Text File  |  1996-03-09  |  8.1 KB  |  539 lines

  1. org    $70000
  2. load    $70000
  3. j:    move.w    #$7fff,$dff09a
  4.     jsr    c040
  5.     move.w    #$9500,$dff09e
  6.     move.w    #$e02c,$dff09a
  7.     move.w    #$83f0,$dff096
  8.     rts
  9.  
  10. C040:    JSR    C518(PC)
  11.     JSR    C05C(PC)
  12.     JSR    C548(PC)
  13.     MOVEQ    #0,D0
  14.     JSR    C720(PC)
  15.     JSR    C518(PC)
  16.     rts
  17. ;    JMP    $00010400
  18.  
  19. C05C:    LEA    $00DFF000,A6
  20.     LEA    $00BFE001,A5
  21.     LEA    $00BFD000,A4
  22.     MOVE.W    #$4000,$0024(A6)
  23.     MOVE.W    #$8210,$0096(A6)
  24.     MOVE.W    #$4489,$007E(A6)
  25.     MOVE.W    #$2000,$009E(A6)
  26.     MOVE.W    #$4000,$009E(A6)
  27.     MOVE.W    #$9000,$009E(A6)
  28.     MOVE.W    #$0800,$009E(A6)
  29.     MOVE.W    #$8400,$009E(A6)
  30.     MOVE.W    #$0200,$009E(A6)
  31.     MOVE.W    #$8100,$009E(A6)
  32.     MOVE.B    #$FF,$0300(A4)
  33.     MOVE.B    #3,$0200(A5)
  34.     JSR    C548(PC)
  35.     JSR    C4CC(PC)
  36.     JSR    C518(PC)
  37.     RTS
  38. L0C4:    dc.l    0
  39. C0C8:    LEA    $00DFF000,A6
  40.     MOVE.L    #0,L0C4
  41.     MOVE.W    #2,W7A2
  42.     MOVE.W    #10,W7A8
  43. C0E8:    JSR    C580(PC)
  44. C0EC:    JSR    C1E2(PC)
  45.     MOVE.W    $0005E004,D0
  46.     JSR    C5B0(PC)
  47.     CMP.W    W7A6(PC),D0
  48.     Beq.S    C110
  49.     SUBQ.W    #1,W7A2
  50.     BMI    C1D2
  51.     JSR    C6EC(PC)
  52.     BRA.S    C0EC
  53.  
  54. C110:    MOVE.W    #2,W7AA
  55.     LEA    $0005E000,A5
  56. C11E:    MOVE.W    6(A5),D0
  57.     JSR    C5B0(PC)
  58.     CMP.W    #2,D0
  59.     BGT    C18A
  60.     LEA    L0C4(PC),A4
  61.     TST.B    0(A4,D0.W)
  62.     BNE.S    C18A
  63.     MOVE.W    D0,D7
  64.     LEA    $0005C006,A0
  65.     MULU    #$07D0,D0
  66.     ADD.L    D0,A0
  67.     MOVE.L    A0,A2
  68.     MOVE.W    $0FA8(A5),D0
  69.     JSR    C5B0(PC)
  70.     MOVE.W    D0,D4
  71.     LSL.W    #8,D4
  72.     MOVE.W    $0FAA(A5),D0
  73.     JSR    C5B0(PC)
  74.     OR.W    D0,D4
  75.     LEA    8(A5),A0
  76.     MOVE.W    #$03E7,D0
  77.     JSR    C70A(PC)
  78.     CMP.W    D1,D4
  79.     BEQ.S    C170
  80.     BRA.S    C18A
  81.  
  82. C170:    MOVE.W    D7,D0
  83.     MOVE.W    #$07CF,D0
  84.     MOVE.L    A2,A0
  85.     LEA    8(A5),A1
  86.     JSR    C598(PC)
  87.     LEA    L0C4(PC),A4
  88.     MOVE.B    #$FF,0(A4,D7.W)
  89. C18A:    LEA    $0FC8(A5),A5
  90.     SUBQ.W    #1,W7AA
  91.     BPL    C11E
  92.     MOVE.L    L0C4(PC),D0
  93.     CMP.L    #$FFFFFF00,D0
  94.     BEQ.S    C1DA
  95.     SUBQ.W    #1,W7A8
  96.     CMP.W    #5,W7A8
  97.     BGT    C0EC
  98.     BPL    C0E8
  99.     SUBQ.W    #1,W7A2
  100.     BMI.S    C1D2
  101.     JSR    C6EC(PC)
  102.     MOVE.W    #10,W7A8
  103.     BRA    C0EC
  104.  
  105. C1D2:    MOVE.L    L0C4(PC),D1
  106.     MOVEQ    #-1,D0
  107.     RTS
  108. C1DA:    MOVE.L    L0C4(PC),D1
  109.     MOVEQ    #0,D0
  110.     RTS
  111. C1E2:    MOVE.W    #2,$009C(A6)
  112.     MOVE.L    #$0005E000,$0020(A6)
  113.     MOVE.W    #$4489,$007E(A6)
  114.     MOVE.W    #$7F00,$009E(A6)
  115.     MOVE.W    #$9d00,$009E(A6)
  116.     MOVE.W    #$4000,$0024(A6)
  117.     MOVE.W    #$97BC,$0024(A6)
  118.     MOVE.W    #$97BC,$0024(A6)
  119.     JSR    C3EA(PC)
  120.     RTS
  121. C21A:    JSR    C580(PC)
  122.     LEA    $00DFF000,A6
  123.     MOVE.W    #2,$009C(A6)
  124.     MOVE.L    #$0005E000,$0020(A6)
  125.     MOVE.W    #$4124,$007E(A6)
  126.     MOVE.W    #$7F00,$009E(A6)
  127.     MOVE.W    #$9D00,$009E(A6)
  128.     MOVE.W    #$4000,$0024(A6)
  129.     MOVE.W    #$9B58,$0024(A6)
  130.     MOVE.W    #$9B58,$0024(A6)
  131.     JSR    C3EA(PC)
  132.     RTS
  133.  
  134.     MOVE.L    A0,-(SP)
  135.     MOVE.W    W7A6(PC),D0
  136.     JSR    C678(PC)
  137.     MOVE.L    (SP),A0
  138.     LEA    $0005C012,A1
  139.     MOVE.W    #$01F3,D0
  140.     JSR    C2A2(PC)
  141.     LEA    $0005C7F6,A1
  142.     MOVE.W    #$01F3,D0
  143.     JSR    C2A2(PC)
  144.     LEA    $0005CFDA,A1
  145.     MOVE.W    #$01F3,D0
  146.     JSR    C2A2(PC)
  147.     JSR    C6AC(PC)
  148.     JSR    C2AA(PC)
  149.     JSR    C31C(PC)
  150.     MOVE.L    (SP)+,A0
  151.     RTS
  152.  
  153.  
  154.  
  155. C2A2:    MOVE.L    (A0)+,(A1)+
  156.     DBRA    D0,C2A2
  157.     RTS
  158. C2AA:    LEA    $0005E024,A0
  159.     MOVE.W    #$03E7,D0
  160.     JSR    C70A(PC)
  161.     MOVE.W    D1,D0
  162.     LEA    $0005EFC4,A4
  163.     JSR    C5E8(PC)
  164.     MOVE.L    D1,(A4)
  165.     JSR    C30C(PC)
  166.     LEA    $0005EFEC,A0
  167.     MOVE.W    #$03E7,D0
  168.     JSR    C70A(PC)
  169.     MOVE.W    D1,D0
  170.     LEA    $0005FF8C,A4
  171.     JSR    C5E8(PC)
  172.     MOVE.L    D1,(A4)
  173.     JSR    C30C(PC)
  174.     LEA    $0005FFB4,A0
  175.     MOVE.W    #$03E7,D0
  176.     JSR    C70A(PC)
  177.     MOVE.W    D1,D0
  178.     LEA    $00060F54,A4
  179.     JSR    C5E8(PC)
  180.     MOVE.L    D1,(A4)
  181.     JSR    C30C(PC)
  182.     RTS
  183. C30C:    BTST    #0,3(A4)
  184.     BEQ.S    C31A
  185.     BCLR    #7,4(A4)
  186. C31A:    RTS
  187. C31C:    LEA    $00DFF000,A6
  188.     LEA    $00BFE001,A5
  189.     BTST    #3,0(A5)
  190.     BEQ.S    C380
  191.     MOVE    SR,-(SP)
  192.     OR.W    #$0700,SR
  193.     JSR    C580(PC)
  194.     MOVE.W    #$03E8,D0
  195. C33E:    DBRA    D0,C33E
  196.     MOVE.W    #2,$009C(A6)
  197.     MOVE.L    #$0005E000,$0020(A6)
  198.     MOVE.W    #$7F00,$009E(A6)
  199.     MOVE.W    #$9900,D0
  200.     MOVE.W    D0,$009E(A6)
  201.     MOVE.W    #$4000,$0024(A6)
  202.     MOVE.W    #$D7BC,$0024(A6)
  203.     MOVE.W    #$D7BC,$0024(A6)
  204.     JSR    C3EA(PC)
  205.     MOVE.W    #$4000,$0024(A6)
  206.     MOVE    (SP)+,SR
  207.     MOVEQ    #0,D0
  208.     RTS
  209. C380:    MOVEQ    #-1,D0
  210.     RTS
  211. C384:    LEA    $00DFF000,A6
  212.     LEA    $00BFE001,A5
  213.     BTST    #3,0(A5)
  214.     BEQ.S    C3E6
  215.     MOVE    SR,-(SP)
  216.     OR.W    #$0700,SR
  217.     JSR    C580(PC)
  218.     MOVE.W    #2,$009C(A6)
  219.     MOVE.L    #$0005E000,$0020(A6)
  220.     MOVE.W    #$7F00,$009E(A6)
  221.     MOVE.W    #$7FFF,$009E(A6)
  222.     MOVE.W    #$9900,D0
  223.     MOVE.W    D0,$009E(A6)
  224.     MOVE.W    #$4000,$0024(A6)
  225.     MOVE.W    #$DB58,$0024(A6)
  226.     MOVE.W    #$DB58,$0024(A6)
  227.     JSR    C3EA(PC)
  228.     MOVE.W    #$4000,$0024(A6)
  229.     MOVE    (SP)+,SR
  230.     MOVEQ    #-1,D0
  231.     RTS
  232. C3E6:    MOVEQ    #0,D0
  233.     RTS
  234. C3EA:    LEA    $00DFF000,A6
  235. C3F0:    MOVE.W    $001E(A6),D0
  236.     AND.W    #2,D0
  237.     BEQ.S    C3F0
  238.     MOVE.W    #2,$009C(A6)
  239.     RTS
  240. C402:    MOVE.W    D0,D1
  241.     LEA    $00BFE001,A5
  242.     LEA    $00BFD000,A4
  243.     BCLR    #2,$0100(A4)
  244.     BTST    #0,D1
  245.     BEQ.S    C422
  246.     BSET    #2,$0100(A4)
  247. C422:    CMP.W    #$00A0,D1
  248.     BGE.S    C476
  249.     MOVE.W    D1,D2
  250.     MOVE.W    W7A6(PC),D0
  251.     LSR.W    #1,D0
  252.     LSR.W    #1,D1
  253.     SUB.W    D0,D1
  254.     BEQ.S    C470
  255.     BMI.S    C440
  256.     BCLR    #1,$0100(A4)
  257.     BRA.S    C448
  258.  
  259. C440:    BSET    #1,$0100(A4)
  260.     NEG.W    D1
  261. C448:    SUBQ.W    #1,D1
  262. C44A:    BSET    #0,$0100(A4)
  263.     BCLR    #0,$0100(A4)
  264.     NOP
  265.     NOP
  266.     NOP
  267.     NOP
  268.     BSET    #0,$0100(A4)
  269.     MOVE.W    #$0FA0,D0
  270. C468:    DBRA    D0,C468
  271.     DBRA    D1,C44A
  272. C470:    LEA    W7A6(PC),A4
  273.     MOVE.W    D2,(A4)
  274. C476:    RTS
  275. C478:    LEA    $00BFD000,A4
  276.     BCLR    #1,$0100(A4)
  277.     MOVE.W    W7A6(PC),D0
  278.     ADDQ.W    #1,D0
  279.     CMP.W    #$00A0,D0
  280.     BEQ.S    C4CA
  281.     LEA    W7A6(PC),A0
  282.     MOVE.W    D0,(A0)
  283.     BCLR    #2,$0100(A4)
  284.     LSR.W    #1,D0
  285.     BCC.S    C4A8
  286.     BSET    #2,$0100(A4)
  287.     BRA.S    C4CA
  288.  
  289. C4A8:    BSET    #0,$0100(A4)
  290.     BCLR    #0,$0100(A4)
  291.     NOP
  292.     NOP
  293.     NOP
  294.     NOP
  295.     BSET    #0,$0100(A4)
  296.     MOVE.W    #$0FA0,D0
  297. C4C6:    DBRA    D0,C4C6
  298. C4CA:    RTS
  299. C4CC:    LEA    $00BFE001,A5
  300.     LEA    $00BFD000,A4
  301.     BSET    #1,$0100(A4)
  302. C4DE:    BTST    #4,0(A5)
  303.     BEQ.S    C50A
  304.     BSET    #0,$0100(A4)
  305.     BCLR    #0,$0100(A4)
  306.     NOP
  307.     NOP
  308.     NOP
  309.     NOP
  310.     BSET    #0,$0100(A4)
  311.     MOVE.W    #$0FA0,D0
  312. C504:    DBRA    D0,C504
  313.     BRA.S    C4DE
  314.  
  315. C50A:    LEA    W7A6(PC),A4
  316.     CLR.W    (A4)
  317.     BCLR    #2,$0100(A4)
  318.     RTS
  319. C518:    LEA    $00BFD000,A4
  320.     MOVE.W    W7A0,D0
  321.     BSET    D0,$0100(A4)
  322.     BSET    #7,$0100(A4)
  323.     NOP
  324.     NOP
  325.     NOP
  326.     BCLR    D0,$0100(A4)
  327.     NOP
  328.     NOP
  329.     NOP
  330.     NOP
  331.     NOP
  332.     BSET    D0,$0100(A4)
  333.     RTS
  334. C548:    LEA    $00BFD000,A4
  335.     MOVE.W    W7A0,D0
  336.     BSET    D0,$0100(A4)
  337.     BCLR    #7,$0100(A4)
  338.     BCLR    D0,$0100(A4)
  339.     JSR    C568(PC)
  340.     RTS
  341. C568:    MOVE.W    #$0BB8,D0
  342. C56C:    DBRA    D0,C56C
  343.     LEA    $00BFE001,A4
  344. C576:    BTST    #5,0(A4)
  345.     BNE.S    C576
  346.     RTS
  347. C580:    LEA    $00BFD000,A4
  348. C586:    BTST    #4,$0D00(A4)
  349.     BNE.S    C586
  350. C58E:    BTST    #4,$0D00(A4)
  351.     BEQ.S    C58E
  352.     RTS
  353. C598:    MOVEQ    #0,D1
  354.     MOVEQ    #7,D2
  355.     MOVE.W    (A1)+,D3
  356. C59E:    LSL.W    #1,D3
  357.     LSL.L    #1,D3
  358.     DBRA    D2,C59E
  359.     SWAP    D3
  360.     MOVE.B    D3,(A0)+
  361.     DBRA    D0,C598
  362.     RTS
  363. C5B0:    MOVEQ    #7,D2
  364. C5B2:    LSL.W    #1,D0
  365.     LSL.L    #1,D0
  366.     DBRA    D2,C5B2
  367.     SWAP    D0
  368.     AND.W    #$00FF,D0
  369.     RTS
  370. C5C2:    MOVEQ    #0,D2
  371.     MOVEQ    #-1,D3
  372.     MOVEQ    #5,D6
  373.     MOVEQ    #2,D7
  374. C5CA:    MOVE.B    (A0)+,D2
  375.     MOVEQ    #7,D1
  376. C5CE:    LSL.L    #1,D3
  377.     ROXL.B    #1,D2
  378.     ROXL.L    #1,D3
  379.     MOVE.W    D3,D5
  380.     AND.W    D6,D5
  381.     BNE.S    C5DC
  382.     OR.W    D7,D3
  383. C5DC:    DBRA    D1,C5CE
  384.     MOVE.W    D3,(A1)+
  385.     DBRA    D0,C5CA
  386.     RTS
  387. C5E8:    MOVE.W    D0,D4
  388.     MOVEQ    #0,D2
  389.     MOVE.L    -4(A4),D3
  390.     MOVEQ    #5,D6
  391.     MOVEQ    #2,D7
  392.     MOVE.W    D0,D2
  393.     LSR.W    #8,D2
  394.     MOVEQ    #7,D1
  395. C5FA:    LSL.L    #1,D3
  396.     ROXL.B    #1,D2
  397.     ROXL.L    #1,D3
  398.     MOVE.W    D3,D5
  399.     AND.W    D6,D5
  400.     BNE.S    C608
  401.     OR.W    D7,D3
  402. C608:    DBRA    D1,C5FA
  403.     MOVE.B    D4,D2
  404.     MOVE.W    D3,D4
  405.     SWAP    D4
  406.     AND.W    #$00FF,D2
  407.     MOVEQ    #7,D1
  408. C618:    LSL.L    #1,D3
  409.     ROXL.B    #1,D2
  410.     ROXL.L    #1,D3
  411.     MOVE.W    D3,D5
  412.     AND.W    D6,D5
  413.     BNE.S    C626
  414.     OR.W    D7,D3
  415. C626:    DBRA    D1,C618
  416.     MOVE.W    D3,D4
  417.     MOVE.L    D4,D1
  418.     RTS
  419.  
  420.     MOVE.W    D0,-(SP)
  421.     JSR    C402(PC)
  422.     JSR    C660(PC)
  423.     JSR    C384(PC)
  424.     MOVE.W    (SP),D0
  425.     JSR    C678(PC)
  426.     JSR    C6AC(PC)
  427.     JSR    C2AA(PC)
  428.     JSR    C31C(PC)
  429.     TST.W    D0
  430.     BEQ    C65C
  431.     CLR.W    D1
  432.     MOVE.W    (SP)+,D0
  433.     RTS
  434. C65C:    MOVE.W    (SP)+,D0
  435.     RTS
  436.  
  437. C660:    LEA    $0005E000,A0
  438.     MOVE.L    #$AAAAAAAA,D0
  439.     MOVE.W    #$0F9F,D1
  440. C670:    MOVE.L    D0,(A0)+
  441.     DBRA    D1,C670
  442.     RTS
  443. C678:    LEA    $0005C000,A0
  444.     MOVEQ    #0,D1
  445.     MOVE.W    #$06D5,D2
  446. C684:    MOVE.L    D1,(A0)+
  447.     DBRA    D2,C684
  448.     MOVE.L    #$00FF0000,D1
  449.     LEA    $0005C000,A0
  450.     LSL.W    #8,D0
  451.     OR.W    D0,D1
  452.     MOVE.L    D1,14(A0)
  453.     ADDQ.W    #1,D1
  454.     MOVE.L    D1,$07F2(A0)
  455.     ADDQ.W    #1,D1
  456.     MOVE.L    D1,$0FD6(A0)
  457.     RTS
  458. C6AC:    LEA    $0005C000,A0
  459.     LEA    $0005E000,A1
  460.     MOVE.W    #$1869,D0
  461.     JSR    C5C2(PC)
  462.     LEA    $0005E000,A1
  463.     MOVE.W    #$4489,$001A(A1)
  464.     MOVE.W    #$4489,$001C(A1)
  465.     MOVE.W    #$4489,$0FE2(A1)
  466.     MOVE.W    #$4489,$0FE4(A1)
  467.     MOVE.W    #$4489,$1FAA(A1)
  468.     MOVE.W    #$4489,$1FAC(A1)
  469.     RTS
  470. C6EC:    MOVE.W    W7A6(PC),W7A4
  471.     JSR    C4CC(PC)
  472.     JSR    C518(PC)
  473.     JSR    C548(PC)
  474.     MOVE.W    W7A4(PC),D0
  475.     JSR    C402(PC)
  476.     RTS
  477. C70A:    MOVE.W    D2,-(SP)
  478.     MOVEQ    #0,D1
  479.     MOVE.W    D1,D2
  480. C710:    MOVE.W    (A0)+,D2
  481.     EOR.W    D2,D1
  482.     MOVE.W    (A0)+,D2
  483.     EOR.W    D2,D1
  484.     DBRA    D0,C710
  485.     MOVE.W    (SP)+,D2
  486.     RTS
  487. C720:    LEA    B7BC(PC),A0
  488.     LEA    L7AC(PC),A1
  489.     MOVE.L    A1,A3
  490.     MULU    #$0010,D0
  491.     LEA    0(A0,D0.W),A0
  492.     MOVEQ    #15,D1
  493. C734:    MOVE.B    (A0)+,(A1)+
  494.     DBRA    D1,C734
  495.     MOVE.L    4(A3),D0
  496.     JSR    C402(PC)
  497. C742:    JSR    C0C8(PC)
  498.     TST.W    D0
  499.     BMI.S    C790
  500.     MOVE.L    #$00001770,D0
  501.     SUB.L    8(A3),D0
  502.     CMP.L    12(A3),D0
  503.     BLE.S    C75E
  504.     MOVE.L    12(A3),D0
  505. C75E:    LEA    $0005C006,A0
  506.     ADD.L    8(A3),A0
  507.     MOVE.L    D0,D1
  508.     SUBQ.W    #1,D0
  509.     MOVE.L    0(A3),A1
  510. C770:    MOVE.B    (A0)+,(A1)+
  511.     DBRA    D0,C770
  512.     MOVE.L    A1,0(A3)
  513.     JSR    C478(PC)
  514.     ADDQ.L    #1,4(A3)
  515.     CLR.L    8(A3)
  516.     SUB.L    D1,12(A3)
  517.     BEQ.S    C78E
  518.     BPL.S    C742
  519. C78E:    RTS
  520. C790:    JSR    C518(PC)
  521. C794:    moveq    #-1,d0
  522.     rts
  523.  
  524. W7A0:    dc.w    3
  525. W7A2:    dc.w    0
  526. W7A4:    dc.w    0
  527. W7A6:    dc.w    0
  528. W7A8:    dc.w    0
  529. W7AA:    dc.w    0
  530. L7AC:    dc.l    0
  531.     dc.l    0
  532.     dc.l    0
  533.     dc.l    0
  534.     ;dc.l    $10400
  535. B7BC:    dc.l    $c90400        ;load addr
  536.     dc.l    $89        ;st trk
  537.     dc.l    0        ;loaded data
  538.     dc.l    $1bd50        ;size
  539.