home *** CD-ROM | disk | FTP | other *** search
/ Compendium Deluxe 1 / LSD Compendium Deluxe 1.iso / a / programming / assembly / juggle_vb.lha / juggler.s < prev   
Encoding:
Text File  |  1990-09-13  |  26.6 KB  |  1,543 lines

  1.     section shit,code_c
  2.     
  3.  
  4. z_max=-200
  5.  
  6. start:
  7.     move.w #$4000,$dff09a
  8.     lea $dff000,a6
  9.  
  10.     bsr    juggleinit    
  11.     bsr init
  12.  
  13. vbiloop:
  14.     tst.w vbi
  15.     beq.s vbiloop
  16.     bsr prg
  17.     move.w #0,vbi
  18.     btst #6,$bfe001
  19.     bne.s  vbiloop
  20.     bsr    wblt
  21.  
  22. ; System "zurckholen"
  23.     move.l 4.w,a6
  24.     move.l pgsh,a1
  25.     cmp.l  pghi,a1
  26.     blt.s  cpg
  27.     move.l pghi,a1
  28. cpg:
  29.     move.l #$10000,d0
  30.     jsr    -210(a6)
  31.     lea    gfxname(pc),a1
  32.     jsr    -408(a6)
  33.     move.l d0,a1
  34.     move.l 38(a1),$dff080
  35.     move.w #0,$dff088
  36.     jsr    -414(a6)
  37.     move.l oldvbi,$6c.w
  38.     move.w #$7fff,$dff096
  39.     move.w #$83f0,$dff096
  40.     move.w #$7fff,$dff09c
  41.     move.w intena,d0
  42.     or.w   #$c000,d0
  43.     move.w d0,$dff09a
  44.     moveq  #0,d0
  45.     rts
  46.  
  47.  
  48. server:
  49. ; Interrupt-Server
  50.     movem.l d0-d7/a0-a6,-(a7)
  51.     move.l #copperlist,$dff080
  52.     move.w d0,$dff088
  53.     movem.l ci1,d0-d1
  54.     move.l d0,ci2
  55.     move.l d1,ci1
  56.     move.w d1,ColInt1-6
  57.     swap   d1
  58.     move.w d1,ColInt1-10
  59.     tst.w  vbi
  60. ; Mit Darstellung der B„lle fertig?
  61.     bne    noflip
  62. ; Nein ? -> kein Page-Flipping!
  63.     movem.l pgsh,d0-d1
  64. ; BitMap-Adressen ta-uschen ...
  65.     move.l d0,pghi
  66. ; page hidden
  67.     move.l d1,pgsh
  68. ; page shown
  69.     move.l d0,a0
  70.     lea    copperlist,a1
  71.     move.w d1,18(a1)
  72. ; ... und in die Copperlist
  73.     swap   d1
  74.     move.w d1,14(a1)
  75.     swap   d1
  76.     add.l  #40*256,d1
  77.     move.w d1,26(a1)
  78.     swap   d1
  79.     move.w d1,22(a1)
  80.     swap   d1
  81.     add.l  #40*256,d1
  82.     move.w d1,34(a1)
  83.     swap   d1
  84.     move.w d1,30(a1)
  85.     bsr    wblt
  86. ; starten des L”schvorgangs der
  87. ; versteckten Planes.
  88. ; Trotz voller Priorit„t des
  89. ; Blitters kaum Einschr„nkungen
  90. ; des 68000, da nur DMA-Kanal D
  91. ; benutzt wird!
  92. ; Inzwischen gepufferte
  93. ; Joystickbewegungen fr aktuell
  94. ; erkl„ren.
  95.     move.w #0,$66(a6)      
  96.     move.l #$1000000,$40(a6)
  97.     move.l a0,$54(a6)
  98.     move.w #768*64+20,$58(a6)
  99.     movem.l rxb,d0-d1
  100.     movem.l d0-d1,rx
  101. noflip:
  102.     move.w #1,vbi
  103.     bsr    joy
  104. ; Joystick abfragen
  105.     move.w #$20,$dff09c
  106.     movem.l (a7)+,d0-d7/a0-a6
  107.     rte
  108.  
  109. Prg:
  110.  
  111. ; Animation der Arme und der drei B„lle
  112.     bsr    juggle
  113.     lea    $dff000,a6
  114.  
  115.  
  116.     bsr    rotate
  117.  
  118. ; Alle Punkte rotieren u. projizieren
  119.  
  120.     bsr    quicksort
  121.  
  122. ; Punkte sortieren (ziemlich flott)
  123.  
  124.     lea    ptab(pc),a3
  125.     move.w (a3),d7
  126.     subq.w #1,d7
  127.     lea    ttab(pc),a3
  128.  
  129. ; Zeiger auf (nach Sortierung)
  130. ; hintersten Punkt (2D-Koords/z-Koords)
  131.  
  132.     lea    ztab(pc),a4
  133. Prg1P:
  134.     bsr.s  draw
  135.  
  136. ; korrespondierenden Ball zeichnen
  137.  
  138.     addq.l #6,a3
  139.  
  140. ; Zeiger auf Daten
  141. ; des nächstn„heren Punktes
  142.  
  143.     addq.l #2,a4
  144.     dbf    d7,prg1p
  145.     rts
  146.  
  147. draw:
  148.     lea    bob-12(pc),a5
  149.  
  150. ; "Eigengrösse" des Balles
  151. ; lassen
  152.  
  153.     move.w 4(a3),d0
  154. eigenlp:
  155.     lea    12(a5),a5
  156.     dbf    d0,eigenlp
  157.     lea    sizetab(pc),a0
  158.  
  159. ; Bälle der Entfernung
  160.  
  161.     move.w (a0)+,d1
  162. sizelp:
  163.     move.w (a0)+,d0
  164.     cmp.w  (a4),d0
  165.     ble.s  ok
  166.     tst.w  12(a5)
  167.  
  168. ; kleinster Ball schon
  169.  
  170.     bmi.s  ok
  171.     lea    12(a5),a5
  172.     dbf    d1,sizelp
  173. ok:
  174.     movem.w (a3),d3-d4
  175.  
  176. ; 2D-Koordinaten eines
  177.  
  178.  
  179.     movem.w (a5),d5-d6
  180.  
  181. ; Ball-Breite in Worten
  182. ; Pixel
  183.  
  184.     move.w d6,d2
  185.     asr.w  #1,d2
  186.     sub.w  d2,d3
  187.  
  188. ; angegebene Ball-Koordinaten in d3/d@ von
  189. ; "oben rechts" in die Ball-Mitte schieben
  190.  
  191.     sub.w  d2,d4
  192.     tst.w  d3  
  193.  
  194. ; Clipping
  195.  
  196.     blt    nodraw
  197.     tst.w  d4
  198.  
  199. ; Clipping
  200.  
  201.     blt    nodraw
  202.     move.w d6,d2
  203.     add.w  d3,d2
  204.     cmp.w  #320,d2
  205.  
  206. ; Clipping
  207.  
  208.     bgt    nodraw
  209.     move.w d4,d2
  210.     add.w  d6,d2
  211.     cmp.w  #256,d2
  212.  
  213. ; Clipping
  214.  
  215.     bgt    nodraw
  216.     bsr.s  trans
  217.     
  218. ; Umrechnung der Koordinaten
  219.  
  220.     movem.l 4(a5),a0-a1
  221.     
  222. ; Zeiger: BitMap-Dat + Mask-Dat
  223.  
  224.     move.w d6,d2
  225.  
  226. ; Blitter-Fenster berechnen
  227.  
  228.     asl.w  #6,d2
  229.     add.w  d5,d2
  230.     asl.w  #1,d5
  231.     moveq  #40,d0
  232.  
  233. ; Modulo berechnen
  234.  
  235.     sub.w  d5,d0
  236.     moveq  #0,d1
  237.     bsr.s  wblt
  238.     move.l #$ffff0000,$44(a6)
  239.     move.w d0,$60(a6)
  240.     move.w d1,$62(a6)
  241.     move.w d1,$64(a6)
  242.     move.w d0,$66(a6)
  243.     move.l #$0fc20000,d0
  244.  
  245. ; A-Shift u. B-Shift fr Reg. $q0/q2
  246. ; eintragen (in "trans" berechnet!)
  247.  
  248.     swap   d3
  249.     or.w   d3,d0
  250.     swap   d0
  251.     or.w   d3,d0
  252.     swap   d0
  253.     swap   d3
  254.     move.l d0,$40(a6)
  255.     move.l d4,a2
  256.     
  257. ; Startadressen ausrechnen
  258.  
  259.     ext.l  d3
  260.     add.l  d3,a2
  261.     move.l a0,$50(a6)
  262.     moveq  #2,d1
  263.     
  264. ; Blit-Schleife fr
  265.  
  266. blitlp:
  267.     bsr.s  wblt
  268.     move.l a2,$48(a6)
  269.     move.l a1,$4c(a6)
  270.     move.l a2,$54(a6)
  271.     move.w d2,$58(a6)
  272.     lea    256*40(a2),a2
  273.     
  274. ; n„chste Plane
  275.  
  276.     dbf    d1,blitlp
  277. nodraw:
  278.     rts
  279.  
  280. wblt:
  281.     btst   #14,$dff002
  282.     bne.s  wblt
  283.     rts
  284.  
  285. trans:
  286.  
  287. ; Umrechnen der x-/y-Koordinaten
  288. ; in Adressen und Shift-Offsets
  289.  
  290.     move.w d4,d0
  291.     asl.w  #5,d0
  292.     asl.w  #3,d4
  293.     add.w  d0,d4
  294.     ext.l  d4
  295.     add.l  pghi,d4
  296.     move.w d3,d0
  297.     asr.w  #4,d0
  298.     asl.w  #4,d0
  299.     sub.w  d0,d3
  300.     ror.w  #4,d3
  301.     swap   d3
  302.     asr.w  #3,d0
  303.     move.w d0,d3
  304.     rts
  305.  
  306.  
  307. quicksort:
  308.  
  309. ; blicher Quicksort-Algorithmus
  310.  
  311.  move.l a6,-(a7)
  312.  moveq  #0,d4
  313.  move.l #ztab,d5
  314.  lea    Irtab(pc),a0
  315.  lea    ttab(pc),a1
  316.  move.l d5,0(a0,d4.w)
  317.  lea    zend-2(pc),a5
  318.  move.l a5,4(a0,d4.w)
  319. l20:
  320.  move.l 0(a0,d4.w),d5
  321.  move.l 4(a0,d4.w),a5
  322.  subq.w #8,d4
  323. l30:
  324.  move.l d5,a2
  325.  move.l a5,a3
  326.  move.l a2,d1
  327.  sub.l  #ztab,d1
  328.  move.w d1,d0
  329.  asl.w  #1,d1
  330.  add.w  d0,d1
  331.  move.l a3,d2
  332.  sub.l  #ztab,d2
  333.  move.w d2,d0
  334.  asl.w  #1,d2
  335.  add.w  d0,d2
  336.  move.l d5,d0
  337.  add.l  a5,d0
  338.  asr.l  #2,d0
  339.  asl.l  #1,d0
  340.  move.l d0,a6
  341.  move.w (a6),d3
  342. l40:
  343.  cmp.w  (a2),d3
  344.  ble.s l41
  345.  addq.l #2,a2
  346.  addq.w #6,d1
  347.  bra.s  l40
  348. l41:
  349.  cmp.w  (a3),d3
  350.  bge.s  l42
  351.  subq.l #2,a3
  352.  subq.w #6,d2
  353.  bra.s  l41
  354. l42:
  355.  cmp.l  a3,a2
  356.  bgt.s  l50
  357.  move.w (a3),d0
  358.  move.w (a2),(a3)
  359.  move.w d0,(a2)
  360.  move.w 0(a1,d1.w),d0
  361.  move.w 0(a1,d2.w),0(a1,d1.w)
  362.  move.w d0,0(a1,d2.w)
  363.  move.w 2(a1,d1.w),d0
  364.  move.w 2(a1,d2.w),2(a1,d1.w)
  365.  move.w d0,2(a1,d2.w)
  366.  move.w 4(a1,d1.w),d0
  367.  move.w 4(a1,d2.w),4(a1,d1.w)
  368.  move.w d0,4(a1,d2.w)
  369.  addq.l #2,a2
  370.  subq.l #2,a3
  371.  addq.w #6,d1
  372.  subq.w #6,d2
  373.  cmp.l  a3,a2
  374.  ble.s  l40
  375. l50:
  376.  cmp.l  a5,a2
  377.  blt.s  l52
  378. l51:
  379.  move.l a3,a5
  380.  cmp.l  a5,d5
  381.  blt    l30
  382.  tst.w  d4
  383.  bge    l20
  384.  move.l (a7)+,a6
  385.  rts
  386. l52:
  387.  addq.w #8,d4
  388.  move.l a2,0(a0,d4.w)
  389.  move.l a5,4(a0,d4.w)
  390.  bra.s  l51
  391.  
  392. joy:
  393.  
  394. ; Joystick-Abfrage
  395.     move.w $dff00c,d0
  396.     btst   #1,d0
  397.     bne.s  right
  398.     btst   #9,d0
  399.     bne.s  left
  400. testud:
  401.     move.w d0,d1
  402.     lsr.w  #1,d1
  403.     eor.w  d1,d0
  404.     btst   #0,d0
  405.     bne.s  bckw
  406.     btst   #8,d0
  407.     bne    forw
  408.      rts
  409. right:
  410.     btst   #7,$bfe001
  411.     bne.L  nfr1
  412.     addq.w #8,rzb
  413.  
  414. ; z-Winkel-Buffer
  415.  
  416.     cmp.w  #720,rzb
  417.     blt.s  ok1
  418.     move.w #0,rzb
  419. ok1:
  420.     bra.s  testud
  421. nfr1:
  422.     addq.w #8,ryb
  423.  
  424. ; y-Winkel-Buffer
  425.  
  426.     cmp.w  #720,ryb
  427.     blt.s  ok2
  428.     move.w #0,ryb
  429. ok2:
  430.     bra.s  testud
  431. left:
  432.     btst   #7,$bfe001 ; Feuerknopf ?
  433.     bne.s  nfr2
  434.     subq.w #8,rzb
  435.  
  436. ; z-Winkel-Buffer
  437.  
  438.     bge.s  ok3
  439.     add.w  #720,rzb
  440. ok3:
  441.     bra.s  testud
  442. nfr2:
  443.     subq.w #8,ryb
  444.  
  445. ; y-Winkel-Buffer
  446.  
  447.     bge.s  ok4
  448.     add.w  #720,ryb
  449. ok4:
  450.     bra    testud
  451.  
  452. ; wieder zurck, um
  453.  
  454. bckw:
  455.     btst   #7,$bfe001 ; Feuerknopf ?
  456.     bne.s  nfr3
  457.     cmp.w  #z_max,addzb
  458.  
  459. ; Grenze fr N„he
  460.  
  461.     bge.s  ok5
  462.     add.w  #100,addzb
  463.  
  464. ; ja -> B„lle um 100
  465.  
  466. ok5:
  467.     rts
  468.  
  469. nfr3:
  470.     subq.w #8,rxb
  471.  
  472. ; nein -> x-Winkel-Buffer
  473.  
  474.     bge.s  ok6
  475.     add.w  #720,rxb
  476. ok6:
  477.      rts
  478. forw:
  479.     btst   #7,$bfe001 ; Feuerknopf ?
  480.     bne.s  nfr4
  481.     cmp.w  #-18000,addzb
  482. ; Grenze fr Ferne
  483.      ble.s  ok7
  484.     sub.w  #100,addzb
  485.  
  486. ; ja -> B„lle um 100 Punkte entfernen
  487.  
  488. ok7:
  489.      rts
  490.  
  491. nfr4:
  492.     addq.w #8,rxb
  493.  
  494. ; nein -> x-Winkel-Buffer  + 4 Grad
  495.  
  496.     cmp.w  #720,rxb
  497.     blt.s  ok8
  498.     move.w #0,rxb
  499. ok8:
  500.      rts
  501.  
  502.  
  503. ;Init...
  504.  
  505. juggleinit:
  506.     lea jpointers(pc),a0
  507.     lea jongx(pc),a1
  508.     lea jongy(pc),a2
  509.     lea armjong(pc),a3
  510.     lea jongxend(pc),a4
  511.     move.l a1,(a0)
  512.     move.l a2,4(a0)
  513.     move.l a3,8(a0)
  514.     move.l a4,12(a0)
  515.     rts
  516.  
  517. ;Animation...
  518.  
  519. juggle:    lea jpointers(pc),a0
  520.     move.l (a0),a3
  521.     move.l 4(a0),a1
  522.     move.l 8(a0),a4
  523.     lea jon(pc),a2
  524.     lea jon2(pc),a5
  525.     lea jon3(pc),a6
  526. jongl:    move.w (a3),(a2)
  527.     move.w 32(a3),8(a2)
  528.     move.w 62(a3),16(a2)
  529.     move.w 94(a3),24(a2)
  530.     
  531.     move.w (a1),2(a2)
  532.     move.w 32(a1),8+2(a2)
  533.     move.w 62(a1),16+2(a2)
  534.     move.w 94(a1),24+2(a2)
  535.     add.w #10,2(A2)
  536.     add.w #10,8+2(a2)
  537.     add.w #10,16+2(a2)
  538.     add.w #10,24+2(A2)
  539.     neg 2(a2)
  540.     neg 8+2(a2)
  541.     neg 16+2(a2)
  542.     neg 24+2(a2)
  543.     move.w (a4),2(a5)
  544.     move.w (a4)+,2(a6)
  545.     move.w (a4),8+2(a5)
  546.     move.w (a4)+,8+2(a6)
  547.     addq.l #2,a3
  548.     addq.l #2,a1
  549.     move.l a3,(a0)
  550.     move.l a1,4(a0)
  551.     move.l a4,8(a0)
  552.     cmpi.l 12(a0),a3
  553.     beq juggleinit
  554.     rts
  555.  
  556. rotate:
  557.  
  558. ; Rotation-+ Translation
  559.  
  560.  lea    ptab(pc),a2
  561.  lea    ttab(pc),a3
  562.  lea    ztab(pc),a4
  563.  lea    sintab(pc),a0
  564.  lea    costab(pc),a1
  565.  move.w (a2)+,d5
  566.  subq.w #1,d5
  567. r1p:
  568.  movem.w (a2)+,d0-d2
  569.  bsr.s  x_ax
  570.  
  571. ; Die drei Rotations-Formeln
  572.  
  573.  add.w  addz,d2
  574.  
  575. ; Verschiebung hinzuaddieren
  576.  
  577.  move.w d2,(a4)+
  578.  
  579. ; z-Koordinaten zwecks erleichterter
  580. ; Sortierung in gesonderter "ztab" merken
  581.  
  582.  
  583.  bsr    project
  584.  movem.w d0-d1,(a3)
  585.  addq.l #4,a3
  586.  move.w (a2)+,(a3)+
  587.  
  588. ; "Eigengr”sse" der B„lle
  589.  
  590.  dbf    d5,r1p
  591.  rts
  592. x_ax:
  593.  
  594. ; Drehung um x-Achse
  595.  
  596.  
  597.  move.w rx,d3
  598.  move.w d1,d4
  599.  move.w d2,d7
  600.  muls   0(a1,d3.w),d1
  601.  
  602. ; r.eu y=y*cos(al)
  603.  
  604.  muls   0(a0,d3.w),d2
  605.  
  606. ; neu z=z*sin(al)
  607.  
  608.  sub.l  d2,d1
  609.  
  610. ; fertig y=neu y-neu_z
  611.  
  612.  asl.l  #4,d1
  613.  
  614. ; "Heruntertransformieren"
  615.  
  616.  swap   d1
  617.  muls   0(a0,d3.w),d4
  618.  
  619. ; neu y=y*sin(a1)
  620.  
  621.  muls   0(a1,d3.w),d7
  622.  
  623. ; neu z=z*cos(a1)
  624.  
  625.  add.l  d7,d4
  626.  
  627. ; fertig z=neu y-neu z
  628.  
  629.  asl.l  #4,d4   
  630.  swap   d4
  631.  move.w d4,d2
  632.  
  633. ; d2=z
  634.  
  635. y_ax:
  636.  
  637. ; Drehung um y-Achse
  638.  
  639.  move.w ry,d3
  640.  move.w d0,d4
  641.  move.w d2,d7
  642.  muls   0(a1,d3.w),d0
  643.  
  644. ; nx=x*cos(be)
  645.  
  646.  muls   0(a0,d3.w),d2
  647.  
  648. ; nz=z*sin(be)
  649.  
  650.  add.l  d2,d0
  651.  
  652. ; fx=nx+nz
  653.  
  654.  asl.l  #4,d0
  655.  swap   d0
  656.  neg.w  d4
  657.  
  658. ; d4=-x
  659.  
  660.  muls   0(a0,d3.w),d4
  661.  
  662. ; nx=-x*sin(be)
  663.  
  664.  muls   0(a1,d3.w),d7
  665.  
  666. ; ny=y*cos(be)
  667.  
  668.  
  669.  add.l  d7,d4
  670.  
  671. ; fz=nx+ny
  672.  
  673.  asl.l  #4,d4
  674.  swap   d4
  675.  move.w d4,d2
  676. z_ax:
  677.  
  678. ; Drehung z-Achse
  679.  
  680.  move.w rz,d3
  681.  move.w d0,d4
  682.  move.w d1,d7
  683.  muls   0(a1,d3.w),d0
  684.  
  685. ; nx=x*cos(ga)
  686.  
  687.  muls   0(a0,d3.w),d1
  688.  
  689. ; ny=y*sin(ga)
  690.  
  691.  sub.l  d1,d0
  692.  
  693. ; fx=nx-ny
  694.  
  695.  asl.l  #4,d0
  696.  swap   d0
  697.  muls   0(a0,d3.w),d4
  698.  
  699. ; nx=x*sin(ga)
  700.  
  701.  muls   0(a1,d3.w),d7
  702.  
  703. ; ny=y*cos(ga)
  704.  
  705.  add.l  d7,d4
  706.  
  707. ; fy=nx+ny
  708.  
  709.  asl.l  #4,d4
  710.  swap   d4
  711.  move.w d4,d1
  712.  rts
  713.  
  714. project:
  715.  
  716. ; lentral Perspektive
  717.  
  718.  sub.w  #1024,d2
  719.  
  720. ; ball z - Observer z (0z=1014)
  721.  
  722.  beq.s  pjtend
  723.  moveq  #10,d3
  724.  ext.l  d0
  725.  ext.l  d1
  726.  asl.l  d3,d0    ; bx*Oz
  727.  asl.l  d3,d1    ; by*Oz
  728.  divs   d2,d0    ; (bx*Oz)/bz
  729.  divs   d2,d1    ; (by*Oz)/bz
  730.  neg.w  d0
  731.  add.w  #160,d0  ; lentrieren
  732.  add.w  #128,d1
  733. pjtend:
  734.  rts
  735.  
  736.  
  737. init:
  738. ; Initialisierung (CopperList,
  739.     move.w #$7fff,$96(a6)
  740. ; Speicher belegen, ...)
  741.     move.l #0,$144(a6)
  742.     move.l #copperlist,$80(a6)
  743.     move.w #0,$88(a6)
  744.     move.l #$2c812cc1,$8e(a6)
  745.     move.l #$3800d0,$92(a6)
  746.     move.l #0,$102(a6)
  747.     move.l #0,$108(a6)
  748.     move.w #$3200,$100(a6)
  749.     move.l 4.w,a6
  750.     move.l #$10000,d0
  751.     move.l #$10003,d1
  752.     jsr    -198(a6)
  753.     lea    $dff000,a6
  754.     move.l d0,pgsh
  755.     add.l  #$8000,d0
  756.     move.l d0,pghi
  757.     move.l pgsh,d0
  758.     move.w d0,copperlist+18
  759.     swap   d0      
  760.     move.w d0,copperlist+14
  761.     swap   d0
  762.     add.l  #256*40,d0
  763.     move.w d0,copperlist+26
  764.     swap   d0
  765.     move.w d0,copperlist+22
  766.     swap   d0
  767.     add.l  #256*40,d0
  768.     move.w d0,copperlist+34
  769.     swap   d0
  770.     move.w d0,copperlist+30
  771.  
  772.     lea    bob(pc),a2
  773. ; Anlegen der Masken
  774. maskloop:
  775.     move.l 4(a2),a0
  776.     moveq  #2,d2
  777. mout:
  778.     move.l 8(a2),a1
  779.     move.w 2(a2),d1
  780.     mulu   (a2),d1
  781.     subq.w #1,d1
  782. min:
  783.     move.w (a0)+,d0
  784.     or.w   d0,(a1)+
  785.     dbf    d1,min
  786.     dbf    d2,mout
  787.  
  788.     lea    12(a2),a2
  789.     tst.w  (a2)
  790.     bge.s  maskloop
  791.     move.l #$4409fffe,d0
  792. ; Copperlisten fr Colorlnterlace
  793.     move.l #$1800000,d1
  794.     move.w #$660,d2
  795.     move.w #$001,d3
  796.     moveq  #1,d5
  797.     lea    copperlist,a1
  798.     move.w d2,6(a1)
  799.     lea    ColInt1,a1
  800. makecop:
  801.     move.w d2,d1
  802.     move.l d0,(a1)+
  803.     move.l d1,(a1)+
  804.     add.l  #$5000000,d0
  805.     move.l d0,(a1)+
  806.     move.l d1,(a1)+
  807.     add.l  #$5000000,d0
  808.     move.w d2,d4
  809.     and.w  #$f,d4
  810.     cmp.w  #$f,d4
  811.     beq.s  endcop
  812.     move.w d2,d4
  813.     and.w      #$f0,d4
  814.     cmp.w  #$f0,d4
  815.     beq.s  endcop
  816.     move.w d2,d4
  817.     and.w  #$f00,d4
  818.     cmp.w  #$f00,d4
  819.     beq.s  endcop
  820.     add.w  d3,d2
  821.     bra.s  makecop
  822. endcop:
  823.     move.l #$fffffffe,d0
  824.     move.w d2,d1
  825.     move.l d0,(a1)+
  826.     move.l d1,(a1)+
  827.     move.l d0,(a1)+
  828.     move.l d1,(a1)+
  829.     move.l #$4909fffe,d0
  830.     move.l #$1800000,d1
  831.     move.w #$660,d2
  832.     move.w #$001,d3
  833.     lea    ColInt2,a1
  834.     dbf    d5,makecop
  835.     
  836.     move.w $dff01c,intena
  837. ; VBl-Server-Init
  838.     move.w #$7fff,$dff09a
  839.     move.w #$7fff,$dff09c
  840.     move.l $6c.w,oldvbi
  841.     move.l #server,$6c.w
  842.     move.w #$c020,$9a(a6)
  843.     move.w #$87c0,$96(a6)
  844.     rts
  845.  
  846.  
  847. pgsh:     dc.l 0
  848. pghi:     dc.l 0
  849. ci1:      dc.l ColInt1
  850. ci2:      dc.l ColInt2
  851. intena:   dc.w 0
  852. oldvbi:   dc.l 0
  853. vbi:      dc.w 0
  854. cnt:      dc.w 0
  855. rx:       dc.w 0
  856. ry:       dc.w 0
  857. rz:       dc.w 0
  858. addz:     dc.w 0
  859. rxb:      dc.w $170
  860. ryb:      dc.w $170
  861. rzb:      dc.w 0
  862. addzb:    dc.w -200
  863. lace:     dc.l $60016
  864.  
  865. num = 36
  866.  
  867. ptab:
  868. ; Hier stehen die Koordinaten
  869.     dc.w num  ; x,y,z,Eigengr”sse
  870. a=8
  871. ballpoints:    ;Punktstruktur...
  872.     dc.w 0,-100,0,0
  873.     dc.w -9,-103,17,8
  874.     dc.w 5,-103,17,8
  875.     dc.w 0,-80,0,7
  876.     dc.w 0,-55,0,1
  877.     dc.w 0,-20,0,1
  878.  
  879.     dc.w 28,-60,0,2
  880.     dc.w 28,-45,4,3
  881.     dc.w 28,-30,8,3
  882.     dc.w 28,-20,12,4
  883. jon2:
  884.     dc.w 28,-20,22,5
  885.     dc.w 28,-20,32,6
  886.  
  887.     dc.w -28,-60,0,2
  888.     dc.w -28,-45,4,3
  889.     dc.w -28,-30,8,3
  890.     dc.w -28,-20,12,4
  891. jon3:
  892.     dc.w -28,-20,22,5
  893.     dc.w -28,-20,32,6
  894.  
  895.     dc.w 20,-10,0,2
  896.     dc.w 21,5,4,3
  897.     dc.w 22,20,8,3
  898.     dc.w 23,35,10,4
  899.     dc.w 24,48,8,4
  900.     dc.w 25,60,6,4
  901.     dc.w 26,74,4,3
  902.  
  903.     dc.w -20,-10,0,2
  904.     dc.w -21,5,4,3
  905.     dc.w -22,20,8,3
  906.     dc.w -23,35,10,4
  907.     dc.w -24,48,8,4
  908.     dc.w -25,60,6,4
  909.     dc.w -26,74,4,3
  910.  
  911. jon:
  912.     dc.w -28,-60,28,5
  913.     dc.w -28,-50,28,7
  914.     dc.w -28,-30,28,5
  915.     dc.w -28,-20,28,7
  916.  
  917.  
  918. ttab:
  919.  
  920.  
  921. ; Tabelle fr 2D-Ergebnis-Koordinaten
  922.  
  923.     blk.w num*3
  924. tend:
  925.  
  926. ztab:
  927.  
  928. ; z-Koordinaten-Tabelle zum einfacheren
  929.  
  930.     blk.w num
  931. zend:
  932.  
  933. Irtab:
  934.  
  935. ; Array-Tabelle
  936.  
  937.     blk.l 100
  938.  
  939.  
  940. gfxname: dc.b "graphics.library",0
  941.  
  942.     even
  943.  
  944.  
  945. sintab:
  946.     dc.w 0,$47,$8E,$D6
  947.     dc.w $11D,$164,$1AC,$1F3
  948.     dc.w $23A,$280,$2C7,$30D
  949.     dc.w $353,$399,$3DE,$424
  950.     dc.w $469,$4AD,$4F1,$535
  951.     dc.w $578,$5BB,$5FE,$640
  952.     dc.w $681,$6c3,$703,$743
  953.     dc.w $782,$7C1,$7FF,$83D
  954.     dc.w $87A,$8B6,$8F2,$92D
  955.     dc.w $967,$9A1,$9D9,$A11
  956.     dc.w $A48,$A7F,$AB4,$AE9
  957.     dc.w $b1D,$b50,$bB2,$bb3
  958.     dc.w $BE3,$C13,$C41,$C6F
  959.     dc.w $C9B,$CC7,$CF1,$D1B
  960.     dc.w $D43,$D6B,$D91,$DB6
  961.     dc.w $DDB,$DfE,$E20,$E41
  962.     dc.w $E61,$E80,$E9D,$EBA
  963.     dc.w $ED5,$EEF,$F08,$F20
  964.     dc.w $F37,$F4D,$F61,$F74
  965.     dc.w $F86,$F97,$FA6,$FB4
  966.     dc.w $FC1,$FCD,$FD8,$FE1
  967.     dc.w $FE9,$FF0,$FF6,$FFA
  968.     dc.w $FFD,$FFF
  969. costab:
  970.     dc.w $1000,$FFF
  971.     dc.w $FFD,$FFA,$FF6,$FF0
  972.     dc.w $FE9,$FE1,$FD8,$FCD
  973.     dc.w $FC1,$FB4,$FA6,$F97
  974.     dc.w $F86,$F74,$F61,$F4D
  975.     dc.w $F37,$F20,$F08,$EEF
  976.     dc.w $ED5,$EBA,$E9D,$E80
  977.     dc.w $E61,$E41,$E20,$DFE
  978.     dc.w $DDB,$DB6,$D91,$D6B
  979.     dc.w $D43,$D1B,$CF1,$CC7
  980.     dc.w $C9B,$C6F,$C41,$C13
  981.     dc.w $BE3,$BB3,$B82,$B50
  982.     dc.w $B1D,$AE9,$AB4,$A7F
  983.     dc.w $A48,$A11,$9D9,$9A1
  984.     dc.w $967,$92D,$8F2,$8B6
  985.     dc.w $87A,$83D,$800,$7C1
  986.     dc.w $782,$743,$703,$6C3
  987.     dc.w $682,$640,$5FE,$5BB
  988.     dc.w $578,$535,$4f1,$4AD
  989.     dc.w $469,$424,$3DE,$399
  990.     dc.w $353,$30D,$2C7,$280
  991.     dc.w $23A,$1F3,$1AC,$165
  992.     dc.w $11D,$D6,$8E,$47
  993.     dc.w 0,$ffb9,$ff72,$ff2a
  994.     dc.w $FEE3,$FE9C,$FE54,$FE0D
  995.     dc.w $FDC6,$FD80,$FD39,$FCF3
  996.     dc.w $FCAD,$FC67,$FC22,$FBDC
  997.     dc.w $FB98,$FB53,$FB0F,$FACB
  998.     dc.w $FA88,$FA45,$FA02,$F9C0
  999.     dc.w $F97F,$F93D,$F8FD,$F8BD
  1000.     dc.w $F87E,$F83F,$F801,$F7C3
  1001.     dc.w $F786,$F74A,$F70E,$F6D3
  1002.     dc.w $F699,$F65F,$F627,$F5EF
  1003.     dc.w $F5B8,$F581,$F54C,$F517
  1004.     dc.w $F4E3,$F4B0,$F47E,$F44D
  1005.     dc.w $F41D,$F3ED,$F3BF,$F391
  1006.     dc.w $F365,$F339,$F30F,$F2E5
  1007.     dc.w $F2BD,$F295,$F26F,$F24A
  1008.     dc.w $F225,$F202,$F1E0,$F1BF
  1009.     dc.w $F19F,$F180,$F163,$F146
  1010.     dc.w $F12B,$F111,$F0F8,$F0E0
  1011.     dc.w $F0C9,$F0B3,$F09F,$F08C
  1012.     dc.w $F07A,$F069,$F05A,$F04C
  1013.     dc.w $F03F,$F033,$F028,$F01F
  1014.     dc.w $F017,$F010,$F00A,$F006
  1015.     dc.w $F003,$F001,$f000,$F001
  1016.     dc.w $F003,$F006,$F00A,$F010
  1017.     dc.w $F017,$F01F,$F028,$F033
  1018.     dc.w $F03F,$F04C,$F05A,$F069
  1019.     dc.w $f07A,$F08C,$F09F,$F0B3
  1020.     dc.w $F0C9,$f0E0,$f0f7,$F111
  1021.     dc.w $f12B,$F146,$F163,$f180
  1022.     dc.w $F19F,$F1Bf,$F1E0,$F202
  1023.     dc.w $F225,$F24A,$F26F,$F295
  1024.     dc.w $F2BD,$F2E5,$F30F,$F339
  1025.     dc.w $F365,$F391,$F3BF,$F3ED
  1026.     dc.w $F41D,$F44D,$f47E,$f4B0
  1027.     dc.w $F4e3,$F517,$F54C,$F581
  1028.     dc.w $F5B8,$F5Ef,$F627,$F65F
  1029.     dc.w $F699,$F6D3,$F70E,$f74A
  1030.     dc.w $F786,$F7C3,$F800,$F83F
  1031.     dc.w $F87D,$F8BD,$f8FD,$F93D
  1032.     dc.w $F97E,$F9C0,$FA02,$FA45
  1033.     dc.w $FA88,$FACB,$FB0F,$FB53
  1034.     dc.w $FB97,$FBDC,$FC22,$FC67
  1035.     dc.w $FCAD,$FCF3,$FD39,$FD80
  1036.     dc.w $FDC6,$FE0D,$FE54,$FE9B
  1037.     dc.w $FEE3,$fF2A,$fF71,$FFB9
  1038. sinend:
  1039.     dc.w 0,$47,$8E,$D6
  1040.     dc.w $11D,$164,$1AC,$1F3
  1041.     dc.w $23A,$280,$2C7,$30D
  1042.     dc.w $353,$399,$3DE,$424
  1043.     dc.w $469,$4AD,$4F1,$535
  1044.     dc.w $578,$5BB,$5FE,$640
  1045.     dc.w $681,$6c3,$703,$743
  1046.     dc.w $782,$7C1,$7FF,$83D
  1047.     dc.w $87A,$8B6,$8F2,$92D
  1048.     dc.w $967,$9A1,$9D9,$A11
  1049.     dc.w $A48,$A7F,$AB4,$AE9
  1050.     dc.w $b1D,$b50,$bB2,$bb3
  1051.     dc.w $BE3,$C13,$C41,$C6F
  1052.     dc.w $C9B,$CC7,$CF1,$D1B
  1053.     dc.w $D43,$D6B,$D91,$DB6
  1054.     dc.w $DDB,$DfE,$E20,$E41
  1055.     dc.w $E61,$E80,$E9D,$EBA
  1056.     dc.w $ED5,$EEF,$F08,$F20
  1057.     dc.w $F37,$F4D,$F61,$F74
  1058.     dc.w $F86,$F97,$FA6,$FB4
  1059.     dc.w $FC1,$FCD,$FD8,$FE1
  1060.     dc.w $FE9,$FF0,$FF6,$FFA
  1061.     dc.w $FFD,$FFF,$1000
  1062. cosend:
  1063.  
  1064. bob:    dc.w 3,31
  1065.     dc.l b0dat,m0dat
  1066.     dc.w 3,25        ; Breite in Worten +l, Hohe in Zeilen
  1067.     dc.l b1dat,m1dat ; Zeiger bitMap-Daten, Zeiger Maske
  1068.      dc.w 3,19
  1069.      dc.l b2dat,m2dat
  1070.      dc.w 2,15
  1071.      dc.l b3dat,m3dat
  1072.      dc.w 2,13
  1073.      dc.l b4dat,m4dat
  1074.      dc.w 2,11
  1075.      dc.l b5dat,m5dat
  1076.      dc.w 2,9
  1077.      dc.l b6dat,m6dat
  1078.      dc.w 2,7
  1079.      dc.l b7dat,m7dat
  1080.      dc.w 2,5
  1081.      dc.l b8dat,m8dat
  1082.      dc.w -1
  1083.  
  1084. sizetab:
  1085.  
  1086. ; Tabelle zur festlegung, ab wann
  1087. ; welche Ballgr”sse verwendet wird
  1088.  
  1089.  dc.w 8,-300,-1200,-1800,-2600,-3700,-4900,-6200,-7600,-9100
  1090.  
  1091.  
  1092.  
  1093. ;
  1094. ; ball-Bitmap-Daten
  1095. ;
  1096.  
  1097. b0dat:
  1098.     DC.L    $000FE000,$0000007F
  1099.     DC.L    $FC000000,$01E07F00
  1100.     DC.L    $000003BF,$8F800000
  1101.     DC.L    $07C1EAC0,$00000D7C
  1102.     DC.L    $E5600000,$1A8E32F0
  1103.     DC.L    $00003547,$54B80000
  1104.     DC.L    $36EB1958,$00006A46
  1105.     DC.L    $ACAC0000,$620B1A5C
  1106.     DC.L    $00004B56,$ACAC0000
  1107.     DC.L    $D1AF1A5E,$0000B97D
  1108.     DC.L    $2C2E0000,$CEAA1A5E
  1109.     DC.L    $0000B454,$DC2E0000
  1110.     DC.L    $DE81385E,$0000E154
  1111.     DC.L    $F42E0000,$D2EBF05E
  1112.     DC.L    $0000695F,$D0AC0000
  1113.     DC.L    $70B5A2DC,$0000742A
  1114.     DC.L    $857C0000,$28000AF8
  1115.     DC.L    $00003680,$55F80000
  1116.     DC.L    $1D54AAF0,$00000EAB
  1117.     DC.L    $55E00000,$0754ABC0
  1118.     DC.L    $000003EB,$FF800000
  1119.     DC.L    $01FEFF00,$0000007F
  1120.     DC.L    $FC000000,$00000000
  1121.     DC.L    $00000000,$00000000
  1122.     DC.L    $00000000,$0000001F
  1123.     DC.L    $80000000,$007FF000
  1124.     DC.L    $000000C1,$F5000000
  1125.     DC.L    $0300FA80,$00000670
  1126.     DC.L    $3D000000,$0CF85F40
  1127.     DC.L    $00000DF4,$1EA00000
  1128.     DC.L    $19F82F50,$000019F4
  1129.     DC.L    $1FA00000,$38A82F50
  1130.     DC.L    $00003850,$1FA00000
  1131.     DC.L    $58002FD0,$00003E00
  1132.     DC.L    $1FA00000,$5C00DFD0
  1133.     DC.L    $00002E81,$3FA00000
  1134.     DC.L    $1F54FFD0,$00002FEB
  1135.     DC.L    $FFA00000,$17FFFF50
  1136.     DC.L    $00000FFF,$FD200000
  1137.     DC.L    $0BFFFA80,$000017FF
  1138.     DC.L    $F5000000,$097FAA00
  1139.     DC.L    $000002AB,$55000000
  1140.     DC.L    $0154AA00,$000000AB
  1141.     DC.L    $54000000,$00140000
  1142.     DC.L    $00000001,$00000000
  1143.     DC.L    $00000000,$00000000
  1144.     DC.L    $00000000,$00000000
  1145.     DC.L    $00000000,$00000000
  1146.     DC.L    $00000000,$00000000
  1147.     DC.L    $00000000,$003E0000
  1148.     DC.L    $000000FF,$00000000
  1149.     DC.L    $01FFC000,$000003FF
  1150.     DC.L    $A0000000,$03FFE000
  1151.     DC.L    $000007FF,$D0000000
  1152.     DC.L    $07FFE000,$000007FF
  1153.     DC.L    $D0000000,$07FFE000
  1154.     DC.L    $000007FF,$D0000000
  1155.     DC.L    $01FFE000,$000003FF
  1156.     DC.L    $20000000,$017EC000
  1157.     DC.L    $000000AB,$00000000
  1158.     DC.L    $00140000,$00000000
  1159.     DC.L    $00000000,$00000000
  1160.     DC.L    $00000000,$00000000
  1161.     DC.L    $00000000,$00000000
  1162.     DC.L    $00000000,$00000000
  1163.     DC.L    $00000000,$00000000
  1164.     DC.L    $00000000,$00000000
  1165.     DC.L    $00000000,$00000000
  1166.     DC.L    $00000000,$00000000
  1167.     DC.L    $00000000,$00000000
  1168.  
  1169. b1dat:    DC.L    $007F0000,$00000180
  1170.     DC.L    $C0000000,$06FE3000
  1171.     DC.L    $00000B07,$98000000
  1172.     DC.L    $15C1CC00,$00002A70
  1173.     DC.L    $A6000000,$34195200
  1174.     DC.L    $000055CC,$75000000
  1175.     DC.L    $6CCCBB00,$0000AC5E
  1176.     DC.L    $71800000,$A60CAA80
  1177.     DC.L    $0000AB5E,$71800000
  1178.     DC.L    $A7B4BA80,$0000917A
  1179.     DC.L    $71800000,$B4A96A80
  1180.     DC.L    $00009A12,$E5800000
  1181.     DC.L    $4CA1D300,$00004357
  1182.     DC.L    $A5000000,$25FECA00
  1183.     DC.L    $00003B5D,$16000000
  1184.     DC.L    $14AA2C00,$00000A80
  1185.     DC.L    $58000000,$07453000
  1186.     DC.L    $000001AA,$C0000000
  1187.     DC.L    $007F0000,$00000000
  1188.     DC.L    $00000000,$007F0000
  1189.     DC.L    $000001FF,$C0000000
  1190.     DC.L    $0707E000,$00000C01
  1191.     DC.L    $F0000000,$1980F800
  1192.     DC.L    $000013E1,$7C000000
  1193.     DC.L    $33F07A00,$000023F0
  1194.     DC.L    $BC000000,$63E07E00
  1195.     DC.L    $000061F0,$BD000000
  1196.     DC.L    $60A07E00,$00006040
  1197.     DC.L    $BD000000,$70007E00
  1198.     DC.L    $00007401,$7D000000
  1199.     DC.L    $7A02FA00,$00003CA1
  1200.     DC.L    $FC000000,$3F57FA00
  1201.     DC.L    $00001FFF,$F4000000
  1202.     DC.L    $07FFE800,$00000BFF
  1203.     DC.L    $D0000000,$057FA000
  1204.     DC.L    $000000BA,$C0000000
  1205.     DC.L    $00550000,$00000000
  1206.     DC.L    $00000000,$00000000
  1207.     DC.L    $00000000,$00000000
  1208.     DC.L    $00000000,$000000F8
  1209.     DC.L    $00000000,$03FE0000
  1210.     DC.L    $000007FF,$00000000
  1211.     DC.L    $0FFE8000,$00000FFF
  1212.     DC.L    $80000000,$1FFF4000
  1213.     DC.L    $00001FFF,$80000000
  1214.     DC.L    $1FFF4000,$00001FFF
  1215.     DC.L    $80000000,$1FFF4000
  1216.     DC.L    $00000FFF,$80000000
  1217.     DC.L    $0BFE8000,$000005FD
  1218.     DC.L    $00000000,$035E0000
  1219.     DC.L    $000000A8,$00000000
  1220.     DC.L    $00000000,$00000000
  1221.     DC.L    $00000000,$00000000
  1222.     DC.L    $00000000,$00000000
  1223.     DC.L    $00000000,$00000000
  1224.     DC.L    $00000000,$00000000
  1225.     DC.L    $00000000,$00000000
  1226.   
  1227. b2dat:
  1228.     DC.L    $03F80000,$00000806
  1229.     DC.L    $00000000,$17F10000
  1230.     DC.L    $00002A8C,$80000000
  1231.     DC.L    $526B4000,$00004F37
  1232.     DC.L    $40000000,$A273A000
  1233.     DC.L    $0000A8BB,$A0000000
  1234.     DC.L    $A572A000,$0000AEE9
  1235.     DC.L    $A0000000,$A3F2A000
  1236.     DC.L    $0000B547,$A0000000
  1237.     DC.L    $9A8B2000,$0000540F
  1238.     DC.L    $40000000,$4F564000
  1239.     DC.L    $000026BC,$80000000
  1240.     DC.L    $11F10000,$00000C06
  1241.     DC.L    $00000000,$03F80000
  1242.     DC.L    $00000000,$00000000
  1243.     DC.L    $07F80000,$00000FFE
  1244.     DC.L    $00000000,$190F0000
  1245.     DC.L    $0000378B,$80000000
  1246.     DC.L    $27C78000,$00006F83
  1247.     DC.L    $C0000000,$6743C000
  1248.     DC.L    $00006A82,$C0000000
  1249.     DC.L    $6101C000,$00006002
  1250.     DC.L    $C0000000,$7007C000
  1251.     DC.L    $0000780B,$C0000000
  1252.     DC.L    $340F8000,$00003F57
  1253.     DC.L    $80000000,$1EBF0000
  1254.     DC.L    $00000FFE,$00000000
  1255.     DC.L    $03F80000,$00000000
  1256.     DC.L    $00000000,$00000000
  1257.     DC.L    $00000000,$00000000
  1258.     DC.L    $00000000,$000007F0
  1259.     DC.L    $00000000,$0FF40000
  1260.     DC.L    $00001FF8,$00000000
  1261.     DC.L    $1FFC0000,$00001FFC
  1262.     DC.L    $00000000,$1FFD0000
  1263.     DC.L    $00001FFE,$00000000
  1264.     DC.L    $1FFD0000,$00000FF8
  1265.     DC.L    $00000000,$07F40000
  1266.     DC.L    $00000BF0,$00000000
  1267.     DC.L    $00A80000,$00000140
  1268.     DC.L    $00000000,$00000000
  1269.     DC.L    $00000000,$00000000
  1270.     DC.L    $00000000,$00000000
  1271.  
  1272.     
  1273. b3dat:
  1274.     DC.L    $03E00000,$0C180000
  1275.     DC.L    $11C40000,$24720000
  1276.     DC.L    $2A9A0000,$47490000
  1277.     DC.L    $534D0000,$54CD0000
  1278.     DC.L    $538D0000,$48190000
  1279.     DC.L    $2C3A0000,$27F20000
  1280.     DC.L    $11C40000,$0C180000
  1281.     DC.L    $03E00000,$00000000
  1282.     DC.L    $03E00000,$0FF80000
  1283.     DC.L    $1C7C0000,$1B1C0000
  1284.     DC.L    $378E0000,$378E0000
  1285.     DC.L    $330E0000,$300E0000
  1286.     DC.L    $381E0000,$1C3C0000
  1287.     DC.L    $1FFC0000,$0FF80000
  1288.     DC.L    $03E00000,$00000000
  1289.     DC.L    $00000000,$00000000
  1290.     DC.L    $00000000,$03800000
  1291.     DC.L    $07E00000,$0FF00000
  1292.     DC.L    $0FF00000,$0FF00000
  1293.     DC.L    $0FF00000,$07E00000
  1294.     DC.L    $03C00000,$00000000
  1295.     DC.L    $00000000,$00000000
  1296.     DC.L    $00000000,$00000000
  1297.  
  1298.     
  1299. b4dat:
  1300.     DC.L    $0F800000,$30600000
  1301.     DC.L    $6F300000,$46900000
  1302.     DC.L    $BAC80000,$AC680000
  1303.     DC.L    $A0E80000,$B5E80000
  1304.     DC.L    $9AC80000,$4F900000
  1305.     DC.L    $67300000,$30600000
  1306.     DC.L    $0F800000,$00000000
  1307.     DC.L    $0F800000,$1FC00000
  1308.     DC.L    $28E00000,$6CF00000
  1309.     DC.L    $60700000,$60F00000
  1310.     DC.L    $75F00000,$7AF00000
  1311.     DC.L    $3FE00000,$1FC00000
  1312.     DC.L    $0F800000,$00000000
  1313.     DC.L    $00000000,$00000000
  1314.     DC.L    $00000000,$1F000000
  1315.     DC.L    $1F000000,$1F800000
  1316.     DC.L    $1F000000,$0A000000
  1317.     DC.L    $05000000,$00000000
  1318.     DC.L    $00000000,$00000000
  1319.     DC.L    $00000000,$00000000
  1320.  
  1321. b5dat:
  1322.     DC.L    $1F000000,$3E800000
  1323.     DC.L    $7B400000,$EDA00000
  1324.     DC.L    $F5A00000,$DCA00000
  1325.     DC.L    $A1A00000,$ABA00000
  1326.     DC.L    $5F400000,$20800000
  1327.     DC.L    $1F000000,$00000000
  1328.     DC.L    $1F000000,$23800000
  1329.     DC.L    $51C00000,$59C00000
  1330.     DC.L    $40C00000,$61C00000
  1331.     DC.L    $6BC00000,$3F800000
  1332.     DC.L    $1F000000,$00000000
  1333.     DC.L    $00000000,$00000000
  1334.     DC.L    $1C000000,$3E000000
  1335.     DC.L    $3E000000,$3F000000
  1336.     DC.L    $1E000000,$14000000
  1337.     DC.L    $00000000,$00000000
  1338.     DC.L    $00000000,$00000000
  1339.  
  1340. b6dat:  
  1341.     DC.L    $1C000000,$7F000000
  1342.     DC.L    $53000000,$AA800000
  1343.     DC.L    $D3800000,$86800000
  1344.     DC.L    $7F000000,$6B000000
  1345.     DC.L    $1C000000,$00000000
  1346.     DC.L    $1C000000,$02000000
  1347.     DC.L    $53000000,$43000000
  1348.     DC.L    $47000000,$3E000000
  1349.     DC.L    $1C000000,$00000000
  1350.     DC.L    $00000000,$00000000
  1351.     DC.L    $3C000000,$3C000000
  1352.     DC.L    $3C000000,$38000000
  1353.     DC.L    $00000000,$00000000
  1354.     DC.L    $00000000,$00000000
  1355.     
  1356. b7dat:  
  1357.     DC.L    $38000000,$6C000000
  1358.     DC.L    $D2000000,$A6000000
  1359.     DC.L    $CA000000,$54000000
  1360.     DC.L    $38000000,$00000000
  1361.     DC.L    $08000000,$24000000
  1362.     DC.L    $04000000,$4C000000
  1363.     DC.L    $38000000,$00000000
  1364.     DC.L    $00000000,$30000000
  1365.     DC.L    $78000000,$78000000
  1366.     DC.L    $30000000,$00000000
  1367.     DC.L    $00000000,$00000000
  1368.  
  1369.     
  1370. b8dat:  
  1371.     DC.L    $70000000,$D8000000
  1372.     DC.L    $B8000000,$E8000000
  1373.     DC.L    $70000000,$00000000
  1374.     DC.L    $10000000,$30000000
  1375.     DC.L    $70000000,$00000000
  1376.     DC.L    $00000000,$60000000
  1377.     DC.L    $40000000,$00000000
  1378.     DC.L    $00000000,$00000000
  1379.  
  1380.  
  1381. m0dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1382.     dc.w    0,0,0,0,0,0,0,0,0,0
  1383.     dc.w    0,0,0,0,0,0,0,0,0,0
  1384.     dc.w    0,0,0,0,0,0,0,0,0,0
  1385.     dc.w    0,0,0,0,0,0,0,0,0,0
  1386.     dc.w    0,0,0,0,0,0,0,0,0,0
  1387.     dc.w    0,0,0,0,0,0,0,0,0,0
  1388.     dc.w    0,0,0,0,0,0,0,0,0,0
  1389.     dc.w    0,0,0,0,0,0,0,0,0,0
  1390.     dc.w    0,0,0,0,0,0,0,0,0,0
  1391.     dc.w    0,0,0,0,0,0,0,0,0,0
  1392.     dc.w    0,0,0,0,0,0,0,0,0,0
  1393.  
  1394. m1dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1395.     dc.w    0,0,0,0,0,0,0,0,0,0
  1396.     dc.w    0,0,0,0,0,0,0,0,0,0
  1397.     dc.w    0,0,0,0,0,0,0,0,0,0
  1398.     dc.w    0,0,0,0,0,0,0,0,0,0
  1399.     dc.w    0,0,0,0,0,0,0,0,0,0
  1400.     dc.w    0,0,0,0,0,0,0,0,0,0
  1401.     dc.w    0,0,0,0,0,0,0,0,0,0
  1402.  
  1403. ; Masken-Tabelle (Ausmasse wie
  1404.  
  1405. m2dat:  dc.w    0,0,0,0,0,0,0,0,0,0
  1406.     dc.w    0,0,0,0,0,0,0,0,0,0
  1407.     dc.w    0,0,0,0,0,0,0,0,0,0
  1408.     dc.w    0,0,0,0,0,0,0,0,0,0
  1409.     dc.w    0,0,0,0,0,0,0,0,0,0
  1410.     dc.w    0,0,0,0,0,0,0,0,0,0
  1411.  
  1412.  
  1413. ; Ebene der bitMap-Daten).
  1414.  
  1415.  
  1416. m3dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1417.     dc.w    0,0,0,0,0,0,0,0,0,0
  1418.     dc.w    0,0,0,0,0,0,0,0,0,0
  1419.     dc.w    0,0,0,0,0,0,0,0,0,0
  1420.     dc.w    0,0,0,0,0,0,0,0,0,0
  1421.     dc.w    0,0
  1422.  
  1423.  
  1424. ; Wird von init-Routine gefüllt
  1425.  
  1426. m4dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1427.     dc.w    0,0,0,0,0,0,0,0
  1428.     dc.w    0,0,0,0,0,0,0,0,0,0
  1429.     dc.w    0,0,0,0,0,0,0,0,0,0
  1430.     dc.w    0,0,0,0,0,0,0,0,0,0
  1431.  
  1432.  
  1433. m5dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1434.     dc.w    0,0,0,0
  1435.     dc.w    0,0,0,0,0,0,0,0,0,0
  1436.     dc.w    0,0,0,0,0,0,0,0,0,0
  1437.     dc.w    0,0,0,0,0,0,0,0,0,0
  1438.  
  1439. m6dat:     dc.w    0,0,0,0,0,0,0,0,0,0
  1440.     dc.w    0,0,0,0,0,0,0,0,0,0
  1441.     dc.w    0,0,0,0,0,0,0,0,0,0
  1442.     dc.w    0,0,0,0,0,0,0,0,0,0
  1443.  
  1444.  
  1445. m7dat:     dc.w    0,0,0,0,0,0
  1446.     dc.w    0,0,0,0,0,0,0,0,0,0
  1447.     dc.w    0,0,0,0,0,0,0,0,0,0
  1448.     dc.w    0,0,0,0,0,0,0,0,0,0
  1449.  
  1450. m8dat:      dc.w   0,0
  1451.     dc.w    0,0,0,0,0,0,0,0,0,0
  1452.     dc.w    0,0,0,0,0,0,0,0,0,0
  1453.     dc.w    0,0,0,0,0,0,0,0,0,0
  1454.  
  1455.  
  1456. copperlist:
  1457.  dc.w $1901,-2,$180,0
  1458.  dc.w $2a01,-2,$e0,0,$e2,0,$e4,0,$e6,0,$e8,0,$ea,0
  1459.  dc.w $182,$040,$184,$060,$186,$080,$188,$090
  1460.  dc.w $18a,$0b0,$18c,$0f0,$18e,$fff
  1461.  dc.w $80,0,$82,0,$88,0
  1462. ColInt1:
  1463.  blk.l 2*60
  1464. ColInt2:
  1465.  blk.l 2*60
  1466.  
  1467. jpointers:dc.l 0,0,0,0    ;pointer
  1468.  
  1469.  
  1470. ;Sinustabellen fuer Jonglieren...
  1471.     even
  1472. jongx:
  1473.     dc.w 2,5,8,10,13,15,18 
  1474.     dc.w 20,21,23,24,26,26,27,27 
  1475.     dc.w 27,27,27,26,25,24,22,20 
  1476.     dc.w 18,16,14,11,9,6,3,1 
  1477.     dc.w -1,-4,-7,-9,-12,-14,-17,-19 
  1478.     dc.w -21,-22,-24,-25,-26,-27,-27,-27 
  1479.     dc.w -27,-27,-26,-25,-24,-23,-21,-19 
  1480.     dc.w -17,-15,-13,-10,-7,-5,-2 
  1481. jongxend:
  1482.     dc.w 2,5,8,10,13,15,18 
  1483.     dc.w 20,21,23,24,26,26,27,27 
  1484.     dc.w 27,27,27,26,25,24,22,20 
  1485.     dc.w 18,16,14,11,9,6,3,1 
  1486.     dc.w -1,-4,-7,-9,-12,-14,-17,-19 
  1487.     dc.w -21,-22,-24,-25,-26,-27,-27,-27 
  1488.     dc.w -27,-27,-26,-25,-24,-23,-21,-19 
  1489.     dc.w -17,-15,-13,-10,-7,-5,-2 
  1490. jongy:
  1491.     dc.w 59 
  1492.     dc.w 59,59,58,57,56,54,52,49 
  1493.     dc.w 47,43,40,37,33,29,25
  1494.     dc.w 32,40,48,56,63,70,76 
  1495.     dc.w 82,87,92,96,99,102,103,104 
  1496.     dc.w 104,104,102,100,97,94,89,84 
  1497.     dc.w 79,72,66,59,51,44,36,28 
  1498.     dc.w 20,23,27,31,35,39,42,45 
  1499.     dc.w 48,51,53,55,57,58,59
  1500. jongyend:
  1501.     dc.w 59 
  1502.     dc.w 59,59,58,57,56,54,52,49 
  1503.     dc.w 47,43,40,37,33,29,25
  1504.     dc.w 32,40,48,56,63,70,76 
  1505.     dc.w 82,87,92,96,99,102,103,104 
  1506.     dc.w 104,104,102,100,97,94,89,84 
  1507.     dc.w 79,72,66,59,51,44,36,28 
  1508.     dc.w 20,23,27,31,35,39,42,45 
  1509.     dc.w 48,51,53,55,57,58,59
  1510.  
  1511. ;Armbewegung...
  1512.  
  1513. armjong:
  1514.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24
  1515.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1516.  
  1517.     dc.w -20,-20,-20,-20,-20,-20,-20,-20
  1518.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24
  1519.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1520.  
  1521.     dc.w -20,-20,-20,-20,-20,-20,-20,-20
  1522.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24
  1523.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1524.  
  1525.     dc.w -20,-20,-20,-20,-20,-20,-20,-20
  1526.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24
  1527.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1528.  
  1529.     dc.w -20,-20,-20,-20,-20,-20,-20,-20
  1530.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24    
  1531.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1532.  
  1533.     dc.w -20,-20,-20,-20,-20,-20,-20,-20
  1534.     dc.w -20,-20,-22,-24,-24,-28,-28,-32,-24,-28,-22,-24
  1535.     dc.w -20,-20,-20,-20,-20,-20,-20,-20,-20,-20
  1536.     
  1537.  
  1538. ballart:    ;Ballarten...
  1539.     dc.w 44,1,1,2,40,41,25,24,24,23,22,21,25,24,24,23,22,21
  1540.     dc.w 25,24,24,23,23,23,24,25,24,24,23,23,23,24
  1541.     dc.w 7,7,7,7
  1542. end:
  1543.