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

  1.     opt    c-,d+
  2.     incdir    "df0:include/"
  3.     include graphics/gfx.i
  4.     include    graphics/rastport.i
  5.     include graphics/graphics_lib.i
  6.     include exec/memory.i
  7.     include    exec/exec_lib.i
  8.     include    hardware/custom.i
  9.  
  10. custom    equ    $dff000
  11.  
  12. memory    equ    MEMF_CHIP+MEMF_CLEAR
  13.     
  14.     lea    GFXLIB,a1
  15.     MOVEQ    #0,D0
  16.     CALLEXEC OPENLIBRARY
  17.     TST    D0
  18.     BEQ    ERROR
  19.     MOVE.L    D0,_GFXBASE
  20.     
  21.     MOVE.L    #MYPICCY,MEMORY_POINTER
  22.     LEA MYBITMAP,A0
  23.     MOVE.L    #$05,D0
  24.     MOVE.L    #320,D1
  25.     MOVE.L    #256,D2
  26.     CALLGRAF INITBITMAP
  27.     LEA    MYRASTPORT,A1
  28.     CALLGRAF INITRASTPORT
  29.     LEA    MYRASTPORT,A1
  30.     MOVE.L    #MYBITMAP,RP_BITMAP(A1)
  31.     MOVE.L    MEMORY_POINTER,D0
  32.     MOVE.L    D0,D1
  33.     ADD.L    #10240,D1
  34.     MOVE.L    D1,D2
  35.     ADD.L    #10240,D2
  36.     MOVE.L    D2,D3
  37.     add.l    #10240,D3
  38.     move.l    d3,d4
  39.     add.l    #10240,d4
  40.  
  41.  
  42.     
  43.  
  44.     LEA     MYBITMAP,A0
  45.     MOVE.L    D0,BM_PLANES(a0)
  46.     MOVE.L    D1,BM_PLANES+4(a0)
  47.     MOVE.L     D2,BM_PLANES+8(a0)
  48.     MOVE.L    D3,BM_PLANES+12(A0)
  49.     move.l    d4,BM_PLANES+16(a0)
  50.     MOVE.W    D0,PL0L
  51.     MOVE.W    D1,PL1L
  52.     MOVE.W    D2,PL2L
  53.     MOVE.W    D3,PL3L
  54.     move.w    d4,pl4l
  55.     SWAP    D0
  56.     SWAP    D1
  57.     SWAP    D2
  58.     SWAP    D3
  59.     swap    d4
  60.     MOVE.W    D0,PL0H
  61.     MOVE.W    D1,PL1H
  62.     MOVE.W    D2,PL2H
  63.     MOVE.W    D3,PL3H
  64.     move.w    d4,pl4h
  65.     
  66.  
  67.     MOVE.L    _GFXBASE,A6
  68.     ADD.L    #$32,A6
  69.     MOVE.W    #$80,DMACON
  70.     MOVE.L    (A6),OLDCOPPER
  71.     MOVE.L    #NEWCOPPER,(A6)
  72.     MOVE.W    #$8080,DMACON
  73.  
  74.     move.l    #string,spoint
  75.     callexec forbid
  76.  
  77.     moveq    #9,d3    
  78.     moveq    #0,d4
  79.  
  80. zloop
  81.     lea    myfont,a1
  82.     clr.l    d0
  83.     move.l    spoint,a2
  84.     move.b    (a2),d0            ; now has 33
  85.     add.l    #1,spoint
  86.     sub.b    #32,d0            ; now =1
  87.     mulu    #512,d0            ; now =512
  88.     add.l    d0,a1
  89.     
  90.  
  91.     moveq    #4,d0
  92.     lea    mypiccy,a0
  93.     lea    mypiccy,a2
  94.     add.l    d4,a0
  95.     add.l    d4,a0
  96.     add.l    d4,a0
  97.     add.l    d4,a0
  98.     add.l   d4,a2
  99.     add.l    d4,a2
  100.     add.l    d4,a2
  101.     add.l    d4,a2
  102.     add.l    #1,d4
  103. outloop    moveq    #32,d1
  104. inloop    move.l    (a1)+,(a0)
  105.     add.l    #40,a0
  106.     sub.b    #1,d1
  107.     cmp.b    #0,d1
  108.     bne    inloop    
  109.     add.l    #10240,a2
  110.     move.l    a2,a0
  111.     sub.b    #1,d0
  112.     cmp.b    #0,d0
  113.     bne outloop    
  114.  
  115.     sub.b    #1,d3
  116.     cmp.b    #0,d3
  117.     bne zloop
  118.             
  119.     
  120.     
  121.     
  122.     
  123.     
  124.     move.w     #$8010,$dff09a
  125.     move.l    $6c,old
  126.     move.l  #new,$6c
  127.     
  128.     
  129.     
  130.     
  131.     
  132.  
  133.  
  134. WAIT    ANDI.B    #$40,$BFE001
  135.     BNE    WAIT
  136.     move.l    old,$6c
  137.  
  138.     callexec permit
  139.  
  140.     MOVE.L    _GFXBASE,A6
  141.     ADD.L    #$32,A6
  142.     MOVE.W    #$80,DMACON
  143.     MOVE.L    OLDCOPPER,(A6)
  144.     MOVE.W    #$8080,DMACON
  145.     move.w    #$8020,$dff096
  146. ERROR    clr.l    d0
  147.     move.w    #$f,$dff096
  148.     move.w    #$0,$dff0a8
  149.     move.w    #$0,$dff0b8
  150.     move.w    #$0,$dff0c8
  151.     move.w    #$0,$dff0d8
  152.     RTS
  153.  
  154.  
  155.  
  156.  
  157. new:    movem.l d0-d7/a0-a6,-(sp)
  158.     and #$10,$dff01e        
  159.     beq out
  160.     move.w    #$10,$dff09c
  161.  
  162.     
  163.     
  164.     
  165.     
  166.  
  167. out movem.l (sp)+,d0-d7/a0-a6
  168.     dc.w $4ef9
  169. old dc.l 0
  170.  
  171.  
  172. count    dc.b 0
  173. read    dc.l 0
  174. buffy    ds.w 30
  175. falagz    dc.b 0
  176.  
  177. OLDCOPPER    DC.L    0
  178. NEWCOPPER    DC.W    $0100,$5200,$0102,$0000,$0104,$000A
  179.         DC.W    $0108,$0000,$010A,$0000
  180.         DC.W    $0092,$0038,$0094,$00D0
  181.         DC.W    $008E,$2C81,$0090,$2cC1
  182.         dc.w    $0096,$0020
  183.         DC.W    $00E0
  184. PL0H        DC.W    $0000,$00E2
  185. PL0L        DC.W    $0000,$00E4
  186. PL1H        DC.W    $0000,$00E6
  187. PL1L        DC.W    $0000,$00E8
  188. PL2H        DC.W    $0000,$00EA
  189. PL2L        DC.W    $0000,$00EC
  190. PL3H        DC.W    $0000,$00EE
  191. PL3L        DC.W    $0000,$00F0
  192. PL4H        DC.W    $0000,$00F2
  193. PL4L        DC.W    $0000
  194.         DC.W    $009c,$8010
  195.         DC.W    $0180,$0000,$0182,$0000
  196.         DC.W    $0184,$0fff,$0186,$0eee
  197.         DC.W    $0188,$0ddd,$018A,$0bbb
  198.         DC.W    $018C,$0aaa,$018E,$0999
  199.         DC.W    $0190,$0888,$0192,$0777
  200.         DC.W    $0194,$0666,$0196,$0555
  201.         DC.W    $0198,$0333,$019A,$0222
  202.         DC.W    $019C,$0111,$019E,$0000
  203.  
  204.  dc.w    $2c09,$fffe,$186,$000
  205.  dc.w      $2d09,$fffe,$186,$000
  206.  dc.w     $2e09,$fffe,$186,$000
  207.  dc.w     $2f09,$fffe,$186,$010
  208.  dc.w    $3009,$fffe,$186,$020
  209.  dc.w    $3109,$fffe,$186,$030
  210.  dc.w    $3209,$fffe,$186,$040
  211.  dc.w     $3309,$fffe,$186,$050
  212.  dc.w    $3409,$fffe,$186,$060
  213.  dc.w    $3509,$fffe,$186,$070
  214.  dc.w    $3609,$fffe,$186,$080
  215.  dc.w     $3709,$fffe,$186,$090
  216.  dc.w    $3809,$fffe,$186,$0a0
  217.  dc.w    $3909,$fffe,$186,$0b0
  218.  dc.w    $3a09,$fffe,$186,$0c0
  219.  dc.w    $3b09,$fffe,$186,$0d0
  220.  dc.w    $3c09,$fffe,$186,$0e0
  221.  dc.w    $3d09,$fffe,$186,$1e1
  222.  dc.w    $3e09,$fffe,$186,$2e2
  223.  dc.w    $3f09,$fffe,$186,$3e3
  224.  dc.w    $4009,$fffe,$186,$4e4
  225.  dc.w    $4109,$fffe,$186,$5e5
  226.  dc.w    $4209,$fffe,$186,$6e6
  227.  dc.w    $4309,$fffe,$186,$7E7
  228.  DC.W   $4409,$fffe,$186,$8e8
  229.  dc.w    $4509,$fffe,$186,$9e9
  230.  dc.w    $4609,$fffe,$186,$aea
  231.  dc.w    $4709,$fffe,$186,$beb
  232.  dc.w    $4809,$fffe,$186,$cec
  233.  dc.w    $4909,$fffe,$186,$ded
  234.  dc.w    $4a09,$fffe,$186,$eee
  235.  dc.w    $4e09,$fffe,$186,$0f0
  236.         DC.W    $FFFF,$FFFE
  237. gfxlib    dc.b    "graphics.library",0
  238.     EVEN
  239. _gfxbase    dc.l    0
  240. MEMORY_POINTER    dc.l    0
  241. MYRASTPORT    ds.b    RP_Sizeof
  242. MYBITMAP    ds.b    BM_Sizeof
  243. colour    dc.w    0
  244. flagz    dc.b    0
  245.  
  246.  
  247.  
  248. string    dc.b    "SAE 1988!"
  249.  
  250. spoint    dc.l    string
  251. myfont    dc.b    "gof "
  252.     ds.b     33788
  253.     dc.l    0
  254. mypiccy    dc.b    "fog "
  255.     ds.b     51200-4
  256.  
  257.