home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 4: Demo 1 / almathera_demo1.bin / sourcecode / german / test.s < prev   
Text File  |  1995-03-17  |  3KB  |  149 lines

  1. ;
  2. ;        Allgemeine Variablen
  3. ;
  4. Excebase  = 4
  5.  
  6. BitPlane1 = $60000
  7. BitPlane2 = $64000
  8. BitPlane3 = $68000
  9. BitPlane4 = $6c000
  10. BitPlane5 = $70000
  11. ;        Offsets Exec
  12. ;
  13. OldOpenLibrary  = -30 -378
  14. CloseLibrary    = -30 -384
  15. Forbid          = -132
  16. ;
  17. start:
  18.     jsr initlibrarys
  19.      jsr setup
  20.      jsr waitmouse
  21.      jsr restorelibrarys
  22.      illegal
  23.     rts
  24. setup:
  25. ;     move.l execbase,a6
  26.      jsr forbid(a6)                 ; Multitasking verbieten
  27.  
  28.      move.l d0,gfxbase
  29.      move.l d0,a6
  30.      add.l #$32,d0
  31.      move.l d0,copptr
  32.  
  33.     lea bitmap,a0
  34.     move.l #5,d0
  35.      move.l #640,d1
  36.      move.l #200,d2
  37.      jsr initbitmap(a6)
  38.      lea.l rastport,a1
  39.      jsr initrastport(a6)
  40.      move.l #bitmap,r_bitmap
  41.  
  42.     jsr clrbitmap
  43.     rts
  44. ;
  45. waitmouse:
  46.      andi.b #64,$bfe001             ; Bit 7 linke Mousetaste
  47.      bne waitmouse
  48.      rts
  49. ;
  50. initlibrarys:
  51.      move.l execbase,a6
  52.      lea.l gfxname,a1        ; Graphics - Library
  53.      jsr oldopenlibrary(a6) 
  54.      move.l d0,gfxbase
  55.  
  56.     move.l execbase,a6
  57.      lea.l intname,a1               ; Intuition - Library
  58.      jsr oldopenlibrary(a6)
  59.      move.l d0,a6
  60.      move.l d0,intuitionbase
  61.      rts
  62. ;
  63. restorelibrarys:
  64.      move.l execbase,a6
  65.  
  66.     move.l gfxbase,a1              ; Graphic Library 
  67.      jsr closelibrary(a6)           ; schließen
  68.  
  69.      move.l intuitionbase,a1        ; Intuition Library
  70.      jsr closelibrary(a6)           ; scließen
  71.     rts
  72. ;
  73. clrbitmaps:
  74.      move.l #bitplane1,d0    ; Adresse der BitPlane nach d0
  75.      move.l d0,plane1        ; in Plane1
  76.      move.l d0,a0            ; Adr. Register a0
  77.      move.w d0,lo1           ; und in die Copperliste
  78.      swap d0                 ; Hi-Nibble isolieren und wenn
  79.      move.w d0,hi1           ; nötig auch in die Copperliste
  80.      move.l #16000,d0        ; Sowie 8000 Byets für die
  81.      move.b #00,d1           ; Bitplane reservieren und
  82. cl1:     move.b d1,(a0)+         ; löschen.
  83.      dbf d0,cl1              ;
  84.  
  85.     move.l #BitPlane2,d0
  86.     move.l d0,Plane2
  87.     move.l d0,a0
  88.     move.w d0,lo2
  89.     swap d0
  90.     move.w d0,hi2
  91.     move.l #16000,d0
  92.     move.b #00,d1
  93. cl2:    move.b d1,(a0)+
  94.     dbf d0,cl2
  95.  
  96.     move.l #BitPlane3,d0
  97.     move.l d0,Plane3
  98.     move.l d0,a0
  99.     move.w d0,lo3
  100.     swap d0
  101.     move.w d0,hi3
  102.     move.l #16000,d0
  103.     move.b #00,d1
  104. cl3:    move.b d1,(a0)+
  105.     dbf d0,cl3
  106.  
  107.     move.l #BitPlane4,d0
  108.     move.l d0,Plane4
  109.     move.l d0,a0
  110.     move.w d0,lo4
  111.     swap d0
  112.     move.w d0,hi4
  113.     move.l #16000,d0
  114.     move.b #00,d1
  115. cl4:    move.b d1,(a0)+
  116.     dbf d0,cl4
  117.  
  118.     move.l #BitPlane5,d0
  119.     move.l d0,Plane5
  120.     move.w d0,lo5
  121.     swap d0
  122.     move.w d0,hi5
  123.     move.l #16000,d0
  124.      move.b #00,d1
  125. cl5:    move.b d1,(a0)+
  126.     dbf d0,cl5
  127.     rts
  128. ;
  129. Setcopper:
  130.     move.l copptr,a0        ; Adresse der Copperliste
  131.     move.l (a0),oldcop      ; alte Liste speichern
  132.     move.l #Copper,(a0)     ; neue Liste bereitstellen
  133.     rts
  134. ;
  135. ;        Library - Names & Adr.
  136. ;
  137. gfxname: dc.b "graphics.library",0
  138. align 4
  139. intname: dc.b "intuition.library",0
  140. align 4
  141. gfxbase: dc.l 1,0
  142. intuitionbase: dc.l 1,0
  143. ;
  144. ;        Copper - Liste
  145. ;
  146.  
  147.