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

  1.     section    code,code_c
  2. start:
  3.     dc.b 'DOS',0
  4. check:    dc.l 0
  5. root:    dc.l $370
  6.  
  7.     movem.l    d0-d7/a0-a6,-(a7)
  8.     move.l    #10*$200,$24(a1)
  9.     move.l    #$70000,$28(a1)
  10.     move.l    #$200,$2c(a1)
  11.     jsr    -$1c8(a6)
  12.     jsr    $70000
  13.     movem.l    (a7)+,d0-d7/a0-a6
  14.     
  15.     lea    dosname(pc),a1
  16.     jsr    -$60(a6)
  17.     move.l    d0,a0
  18.     move.l    $16(a0),a0
  19.     moveq    #0,d0
  20.     rts
  21. dosname:    dc.b 'dos.library',0
  22.         even
  23.         dc.b '    CODING BY DIRECT-LOGO BY ORION-FONT BY VIPER'
  24.     blk.b    379,0 
  25.     dc.b    -1
  26. e:
  27.     lea     ende(pc),A0  
  28.     lea     $00060000,A1        ;decrunched datas
  29.     move.l -(A0),A2
  30.     add.l  A1,A2
  31.     move.l  -(A0),D0
  32. jumpstart:
  33.     moveq   #$03,D1
  34.     bsr     jump1
  35.     tst.b   D2
  36.     beq.s   jump2
  37.     cmpi.w  #$0007,D2
  38.     bne.s   jump3
  39.     lsr.l   #1,D0
  40.     bne.s   jump4
  41.     bsr     jump5
  42. jump4:    bcc.s   jump6
  43.     moveq   #$0A,D1
  44.     bsr     jump1
  45.     tst.w   D2
  46.         bne.s   jump3
  47.         moveq   #$12,D1
  48.         bsr     jump1
  49.         bra.s   jump3
  50. jump6:
  51.         moveq   #$04,D1
  52.         bsr     jump1
  53.         addq.w  #7,D2
  54. jump3:
  55.         subq.w  #1,D2
  56. loop3:
  57.         moveq   #$07,D1
  58. loop2:
  59.         lsr.l   #1,D0
  60.         beq.s   jump7
  61.         roxl.l  #1,D3
  62.         dbf     D1,loop2
  63.         move.b  D3,-(A2)
  64.         dbf     D2,loop3
  65.         bra.s   jump2
  66. jump7:
  67.         move.l  -(A0),D0
  68.         move    #$0010,CCR
  69.         roxr.l  #1,D0
  70.         roxl.l  #1,D3
  71.         dbf     D1,loop2
  72.         move.b  D3,-(A2)
  73.         dbf     D2,loop3
  74. jump2:
  75.         cmp.l  A2,A1
  76.         bge.s   enddecrunch
  77.         moveq   #$02,D1
  78.         bsr     jump1
  79.         moveq   #$02,D3
  80.         moveq   #$08,D1
  81.         tst.w   D2
  82.         beq.s   jump8
  83.         moveq   #$04,D3
  84.         cmpi.w  #$0002,D2
  85.         beq.s   jump9
  86.         moveq   #$03,D3
  87.         cmpi.w  #$0001,D2
  88.         beq.s   jump10
  89.         moveq   #$02,D1
  90.         bsr.s   jump1
  91.         cmpi.w  #$0003,D2
  92.         beq.s   jump11
  93.         cmpi.w  #$0002,D2
  94.         beq.s   jump12
  95.         addq.w  #5,D2
  96.         move.w  D2,D3
  97.         bra.s   jump9
  98. jump12:
  99.         moveq   #$02,D1
  100.         bsr.s   jump1
  101.         addq.w  #7,D2
  102.         move.w  D2,D3
  103.         bra.s   jump9
  104. jump11:
  105.         moveq   #$08,D1
  106.         bsr.s   jump1
  107.         move.w  D2,D3
  108.         bra.s   jump9
  109. jump10:
  110.         moveq   #$08,D1
  111.         lsr.l   #1,D0
  112.         bne.s   jump13
  113.         bsr.s   jump5
  114. jump13:
  115.         bcs.s   jump8
  116.         moveq   #$0E,D1
  117.         bra.s   jump8
  118. jump9:
  119.         moveq   #$10,D1
  120.         lsr.l   #1,D0
  121.         bne.s   jump14
  122.         bsr.s   jump5
  123. jump14:
  124.         bcc.s   jump8
  125.         moveq   #$08,D1
  126.         lsr.l   #1,D0
  127.         bne.s   jump15
  128.         bsr.s   jump5
  129. jump15:
  130.         bcs.s   jump8
  131.         moveq   #$0C,D1
  132. jump8:
  133.         bsr.s   jump1
  134.         subq.w  #1,D3
  135. loop4:  move.b  -$01(A2,D2.l),-(A2)
  136.         dbf     D3,loop4
  137.         bra     jumpstart
  138. enddecrunch:
  139.         jmp     $00060000               ;******
  140. jump5:
  141.         move.l  -(A0),D0
  142.         move    #$0010,CCR
  143.         roxr.l  #1,D0
  144.         rts
  145. jump1:
  146.         subq.w  #1,D1
  147.         moveq #0,d2
  148. loop1:  lsr.l   #1,D0
  149.         beq.s   jumploop
  150.         roxl.l  #1,D2
  151.         dbf     D1,loop1
  152.         rts
  153. jumploop:
  154.         move.l  -(A0),D0
  155.         move.w   #$10,CCR
  156.         roxr.l  #1,D0
  157.         roxl.l  #1,D2
  158.         dbf     D1,loop1
  159.         rts
  160.  
  161. data:    incbin'sys:test'
  162. ende:
  163.