home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Assembler / dse-src6.dms / in.adf / BOUNCHSRCS.LZH / snurr.s < prev    next >
Encoding:
Text File  |  1990-10-12  |  1.3 KB  |  87 lines

  1.  
  2.     wait=32000
  3.     Bars=5
  4. borjan:
  5.     move.l $4.w,a6
  6.     lea gfxname(pc),a1
  7.     jsr -408(a6)
  8.     move.l d0,a6
  9.     move.b #255,d0
  10.     clr.l d1
  11.     move.l #$60000,a0
  12. loop:
  13.     move.b d1,(a0)+
  14.     move.b #$01,(a0)+
  15.     move.l #$fffe0180,(a0)+
  16.     move.w #$0000,(a0)+
  17.     add.l #1,d1
  18.     dbf d0,loop
  19.     move.l #$fffffffe,(a0)+
  20.     move.l #$60000,50(a6)
  21. astart:
  22.     lea blank(pc),a5
  23.     bsr.s draw
  24.     lea sincount(pc),a0
  25.     lea Linje(pc),a1
  26.     moveq #bars-1,d0
  27. loop4:
  28.     move.l (a0),a2
  29.     move.w (a2),d3
  30.     add.w d3,(a1)
  31.     add.l #2,a1
  32.     add.l #2,(a0)
  33.     cmp.l #sinusend,(a0)
  34.     bne.s continue
  35.     move.l #sin,(a0)
  36. continue:
  37.     add.l #4,a0
  38.     dbf d0,loop4
  39.     lea Cbar(pc),a5
  40.     bsr.s draw
  41.     move.l #wait,d5
  42. wait2:
  43.     dbf d5,wait2
  44. wait3:
  45.     btst #$f0,$dff006
  46.     bne.s wait3
  47.     btst #6,$bfe001
  48.     bne.s astart
  49.     rts
  50. Draw:
  51.     lea Linje(pc),a2
  52.     moveq #bars-1,d0
  53. loop3:
  54.     lea $60006,a1
  55.     move.w (a2),d3
  56.     mulu #8,d3
  57.     add.l d3,a1
  58.     move.l a5,a0
  59.     moveq #10,d1
  60. loop2:
  61.     move.w (a0)+,(a1)
  62.     add.l #8,a1
  63.     dbf d1,loop2
  64.     add.l #2,a2
  65.     dbf d0,loop3
  66.     rts
  67. gfxname:
  68.     dc.b "graphics.library",0
  69.     even
  70. Linje:
  71.     dc.w 100,120,133,138,138,133,120,100,80,67
  72. Cbar:
  73.     dc.w $222,$666,$999,$ccc,$eee,$fff
  74.     dc.w $eee,$ccc,$999,$666,$222
  75. Blank:
  76.     blk.w 11,0
  77. sincount:
  78.     dc.l sin,sin+8,sin+16,sin+24,sin+32,sin+40
  79.     dc.l sin+48,sin+56,sin+64,sin+72
  80. sin:
  81.     dc.w 6,6,4,4,4,3,3,3,3,1,0,1,0,0,0,0
  82.     dc.w -1,0,-1,-3,-3,-3,-3,-4,-4,-4,-6,-6
  83.     dc.w -6,-6,-4,-4,-4,-3,-3,-3,-3,-1,0,-1,0,0,0,0
  84.     dc.w 1,0,1,3,3,3,3,4,4,4,6,6
  85. sinusend:
  86.  
  87.