home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Assembler / dse-src5.dms / in.adf / copsamp.S < prev    next >
Encoding:
Text File  |  1990-05-07  |  1.0 KB  |  83 lines

  1.     jmp     start
  2.  
  3. intena=    $9a
  4. dmacon=    $96
  5. color00=    $180
  6. cop1lc=    $80
  7. cop2lc=    $84
  8. copjmp1=    $88
  9. copjmp2=    $8a
  10. ciaapra=    $bfe001
  11. openlibrary=    -30-522
  12. forbid=    -30-102
  13. permit=    -30-108
  14. allocmem=    -30-168
  15. freemem=    -30-180
  16. startlist=    38
  17. execbase=    4
  18. chip=    2
  19.  
  20. cladr:    dc.l    0
  21.  
  22. grname:    dc.b    "graphics.library",0
  23.     even
  24.  
  25. clstart:
  26.     dc.w    color00,$0000
  27.     dc.w    $640f,$fffe
  28.     dc.w    color00,$0f00
  29.     dc.w    $be0f,$fffe
  30.     dc.w    color00,$0fb0
  31.     dc.w    $ffff,$fffe
  32. clend:
  33.  
  34. clsize=    clend - clstart
  35.  
  36. start:
  37.     move.l    execbase,a6
  38.     moveq    #clsize,d0
  39.     moveq    #chip,d1
  40.     jsr    allocmem(a6)
  41.     move.l    d0,cladr
  42.     beq.s    ende
  43.  
  44.     lea    clstart,a0
  45.     move.l    cladr,a1
  46.     moveq    #clsize-1,d0
  47.     
  48. clcopy:
  49.     move.b    (a0)+,(a1)+
  50.     dbf    d0,clcopy
  51.  
  52.     jsr    forbid(a6)
  53.     lea    $dff000,a5
  54.     move.w    #$03a0,dmacon(a5)
  55.     move.l    cladr,cop1lc(a5)
  56.     clr.w    copjmp1(a5)
  57.  
  58.     move.w    #$8280,dmacon(a5)
  59.  
  60. wait:
  61.     btst    #6,ciaapra
  62.     bne.s    wait
  63.  
  64.     move.l    #grname,a1
  65.     clr.l    d0
  66.     jsr    openlibrary(a6)
  67.     move.l    d0,a4
  68.     move.l    startlist(a4),cop1lc(a5)
  69.     clr.w    copjmp1(a5)
  70.     move.w    #$8310,dmacon(a5)
  71.     jsr    permit(a6)
  72.  
  73.     move.l    cladr,a1
  74.     moveq    #clsize,d0
  75.     jsr    freemem(a6)
  76.  
  77. ende:
  78.     clr.l    d0
  79.     rts
  80.  
  81.  
  82.  
  83.