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

  1. org    $60000
  2. load    $60000
  3.  
  4. j:    dc.b    'DOS',0
  5.     dc.l    0
  6.     dc.l    $370
  7.     move.w    #$2,28(A1)
  8.     move.l    #$70000,40(A1)
  9.     move.l    #[$200*79],36(A1)
  10.     move.l    #[$2c00*54],44(A1)
  11.     move.l    4.w,a6
  12.     jsr    -456(a6)
  13.     movem.l    d0-d7/a0-a6,-(a7)
  14.     jsr    $70000
  15.     movem.l    (a7)+,d0-d7/a0-a6
  16.     LEA    $DFF000,A6
  17.     MOVE.W    #$7FFF,D0
  18.     MOVE.W    D0,$96(A6)
  19.     MOVE.W    D0,$9A(A6)
  20.     LEA    C016(PC),A0
  21.     MOVE.L    A0,$80
  22.     TRAP    #0
  23. C016:    MOVE    #$2000,SR
  24.     LEA    $7cd00,SP
  25.     LEA    C04C(PC),A0
  26.     LEA    $75000,A1
  27.     MOVE.W    #$100,D7
  28. C040:    MOVE.L    (A0)+,(A1)+
  29.     DBRA    D7,C040
  30.     JMP    $75000
  31.  
  32. C04C:    CLR.W    $1F6
  33.     ST    $1F8
  34.     CLR.W    $1FA
  35.     MOVE.W    #$83d0,$96(A6)
  36.     LEA    $60000,A0
  37.     MOVE.W    #3,D0
  38.     MOVE.W    #7,D1
  39.     BSR.L    C194
  40.     BMI.S    C08E
  41.     JSR    $60000
  42.     LEA    $800,A0
  43.     MOVE.W    #10,D0
  44.     MOVE.W    #$2C,D1
  45.     BSR.L    C194
  46.     BMI.S    C08E
  47.     JMP    $800
  48.  
  49. C08E:    MOVE.W    #$F00,$DFF180
  50.     MOVE.W    #$F0,$DFF180
  51.     MOVE.W    #15,$DFF180
  52.     BRA.S    C08E
  53.  
  54. C0A8:    LEA    $BFD000,A4
  55.     MOVE.L    #$55555555,D5
  56.     MOVE.W    $1F6,D2
  57.     MOVEQ    #0,D3
  58.     ADD.W    #3,D2
  59.     BSET    D2,D3
  60.     MOVE.W    $1FA,D2
  61.     BEQ.S    C0CA
  62.     BSET    #2,D3
  63. C0CA:    MOVE.B    D3,$1FC
  64.     MOVE.B    #$FF,$100(A4)
  65.     MOVE.B    #$7F,$100(A4)
  66.     OR.B    #$80,D3
  67.     NOT.B    D3
  68.     MOVE.B    D3,$100(A4)
  69.     MOVE.W    #$C000,D2
  70. C0E8:    MOVE.W    D2,D4
  71.     MULU    D4,D4
  72.     MULU    D4,D4
  73.     BTST    #5,$1001(A4)
  74.     DBEQ    D2,C0E8
  75.     BNE.L    C23A
  76.     MOVEQ    #0,D4
  77.     RTS
  78. C100:    MOVE.B    #$FF,$100(A4)
  79.     MOVE.B    #$BF,$100(A4)
  80.     MOVE.B    #$DF,$100(A4)
  81.     MOVE.B    #$EF,$100(A4)
  82.     MOVE.B    #$F7,$100(A4)
  83.     MOVE.B    #$FF,$100(A4)
  84.     RTS
  85. C126:    BTST    #4,$1001(A4)
  86.     BEQ.S    C136
  87.     MOVEQ    #1,D0
  88.     BSR.S    C156
  89.     BRA.S    C126
  90.  
  91. C136:    CLR.W    $1F8
  92.     RTS
  93. C13C:    MOVE.W    D0,D6
  94.     TST.W    $1F8
  95.     BPL.S    C146
  96.     BSR.S    C126
  97. C146:    SUB.W    $1F8,D6
  98.     BEQ.S    C192
  99.     ADD.W    D6,$1F8
  100.     MOVE.W    D6,D0
  101.     BPL.S    C160
  102.     NEG.W    D0
  103. C156:    MOVE.B    $1FC.w,D1
  104.     OR.B    #$80,D1
  105.     BRA.S    C168
  106.  
  107. C160:    MOVE.B    $1FC,D1
  108.     OR.B    #$82,D1
  109. C168:    MOVE.B    D1,D2
  110.     OR.B    #1,D2
  111.     NOT.B    D1
  112.     NOT.B    D2
  113.     SUBQ.W    #1,D0
  114. C174:    MOVE.B    D2,$100(A4)
  115.     nop
  116.     nop
  117. C180:    MOVE.B    D1,$100(A4)
  118.     MOVE.W    #$208,D3
  119. C188:    MULU    D4,D4
  120.     DBRA    D3,C188
  121.     DBRA    D0,C174
  122. C192:    RTS
  123. C194:    SUBQ.W    #1,D1
  124.     BMI.S    C1C8
  125.     BSR.L    C0A8
  126.     BMI.S    C1CA
  127. C19E:    MOVE.W    #10,$1F4
  128. C1A4:    MOVEM.W    D0/D1,-(SP)
  129.     MOVE.L    A0,-(SP)
  130.     BSR.S    C13C
  131.     BSR.S    C1E6
  132.     BMI.S    C1D2
  133.     MOVE.L    A0,A5
  134.     BSR.L    C23E
  135.     BMI.S    C1D2
  136.     MOVE.L    A5,A0
  137.     ADDQ.W    #4,SP
  138.     MOVEM.W    (SP)+,D0/D1
  139.     ADDQ.W    #1,D0
  140.     DBRA    D1,C19E
  141. C1C8:    MOVEQ    #0,D4
  142. C1CA:    BSR.L    C100
  143.     TST.W    D4
  144.     RTS
  145. C1D2:    MOVE.L    (SP)+,A0
  146.     MOVEM.W    (SP)+,D0/D1
  147.     SUBQ.W    #1,$1F4
  148.     BMI.S    C1CA
  149.     BNE.S    C1A4
  150.     ST     $1F8.w
  151.     BRA.S    C1A4
  152.  
  153. C1E6:    MOVE.W    #$4000,$24(A6)
  154.     MOVE.l    #$27f00,$9C(A6)
  155.     MOVE.L    #$7cd00,$20(A6)
  156.     MOVE.W    #$9500,$9E(A6)
  157.     MOVE.W    #$4489,$7E(A6)
  158.     MOVE.W    #$9960,$24(A6)
  159.     MOVE.W    #$9960,$24(A6)
  160.     MOVEQ    #-1,D0
  161. C21A:    MULU    D4,D4
  162.     MOVE.W    $1E(A6),D4
  163.     AND.W    #2,D4
  164.     DBNE    D0,C21A
  165.     BEQ.S    C234
  166.     MOVE.W    #$4000,$24(A6)
  167.     MOVEQ    #0,D4
  168.     RTS
  169. C234:    MOVE.W    #$4000,$24(A6)
  170. C23A:    MOVEQ    #-1,D4
  171.     RTS
  172. C23E:        moveq    #10,d0
  173.         lea    $7cd00,a2
  174. decode_loop1:    cmp.w    #$4489,(a2)+
  175.         bne.s    decode_loop1
  176.         cmp.w    #$4489,(a2)+
  177.         beq.s    cont
  178.         subq.w    #2,a2
  179. cont:        move.w    #$ff,d1
  180.         bsr.S    Checksum
  181.         bne.s    Error
  182.         bsr.S    chkSEC
  183.         bne.s    Error
  184.         lea    $38(a2),a2
  185.         moveq    #$7f,d1
  186. decode_loop2:    move.l    512(a2),d7
  187.         move.l    (a2)+,d2
  188.         bsr.S    convbit
  189.         move.l    d2,(a1)+
  190.         dbf    d1,decode_loop2
  191. noconv:        lea    $1f8(a2),a2
  192.         dbf    d0,decode_loop1
  193.         add.w    #$1400,a5
  194.         moveq    #0,d4
  195. uji:        tst.l    d4
  196.         rts
  197. error:        moveq    #-1,d4
  198.         bra.s    uji
  199. checksum:    lea    48(a2),a1
  200.         movem.l    (A1)+,d2/d7
  201.         bsr.S    convbit
  202.         moveq    #0,d3
  203. checksum_loop:    move.l    (a1)+,d7
  204.         eor.l    d7,d3
  205.         dbf    d1,checksum_loop
  206.         and.l    d5,d3
  207.         cmp.l    d2,d3
  208.         rts
  209. chkSec:        movem.l    (a2),d2/d7
  210.         bsr.S    convbit
  211.         and.w    #$ff00,d2
  212.         cmp.w    #$a00,d2
  213.         bne.s    okh
  214.         add.w    #$238,a2
  215.         addq.w    #4,a7
  216.         bra.s    noconv
  217. okh:        add.w    d2,d2
  218.         move.l    a5,a1
  219.         add.w    d2,a1
  220.         swap    d2
  221.         MOVE.W    $1f8,D1        ;trk
  222.         ADD.W    D1,D1
  223.         MOVE.W    $1fa,D7        ;side
  224.         and.w    #1,d7
  225.         ADD.W    d7,D1
  226.         cmp.b    d2,d1
  227.         rts
  228. convbit:    and.l    d5,d2
  229.         and.l    d5,d7
  230.         asl.l    #1,d2
  231.         or.l    d7,d2
  232.         rts
  233. dc.b    'TIME WARRIOR... CRACKED by Black Hawk of PARADOX',0
  234. dc.b    '...this is NOT a VIRUS!!!!!!!!!!',0
  235. j1:
  236.