home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 4: Demo 1 / almathera_demo1.bin / sourcecode / text4.s < prev    next >
Text File  |  1995-03-17  |  7KB  |  386 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    #352,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    #11264,D1
  34.     MOVE.L    D1,D2
  35.     ADD.L    #11264,D2
  36.     MOVE.L    D2,D3
  37.     add.l    #11264,D3
  38.     move.l    d3,d4
  39.     add.l    #11264,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.     move.b    #0,cdown
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.             
  85.     
  86.     
  87.     
  88.     
  89.     
  90.     move.w     #$8010,$dff09a
  91.     move.l    $6c,old
  92.     move.l  #new,$6c
  93.     
  94.     
  95.     
  96.     
  97.     
  98.  
  99.  
  100. WAIT    ANDI.B    #$40,$BFE001
  101.     BNE    WAIT
  102.     move.l    old,$6c
  103.  
  104.     callexec permit
  105.  
  106.     MOVE.L    _GFXBASE,A6
  107.     ADD.L    #$32,A6
  108.     MOVE.W    #$80,DMACON
  109.     MOVE.L    OLDCOPPER,(A6)
  110.     MOVE.W    #$8080,DMACON
  111.     move.w    #$8020,$dff096
  112. ERROR    clr.l    d0
  113.     move.w    #$f,$dff096
  114.     move.w    #$0,$dff0a8
  115.     move.w    #$0,$dff0b8
  116.     move.w    #$0,$dff0c8
  117.     move.w    #$0,$dff0d8
  118.     RTS
  119.  
  120.  
  121.  
  122. subrt    lea    myfont,a1
  123.     clr.l    d0
  124.     move.l    spoint,a2
  125.     move.b    (a2),d0            ; now has 33
  126.     cmp.b    #254,d0
  127.     beq    part2y
  128.     add.l    #1,spoint
  129.     sub.b    #32,d0            ; now =1
  130. zza    mulu    #512,d0            ; now =512
  131.     add.l    d0,a1
  132.     
  133.  
  134.     moveq    #4,d0
  135.     lea    mypiccy,a0
  136.     lea    mypiccy,a2
  137.     ADD.l    #9324,a0
  138.     add.l    #9324,a2
  139.     
  140. outloop    moveq    #32,d1
  141. inloop    move.l    (a1)+,(a0)
  142.     add.l    #44,a0
  143.     sub.b    #1,d1
  144.     cmp.b    #0,d1
  145.     bne    inloop    
  146.     add.l    #11264,a2
  147.     move.l    a2,a0
  148.     sub.b    #1,d0
  149.     cmp.b    #0,d0
  150.     bne outloop
  151.     rts    
  152. part2y    add.l #1,spoint
  153.     move.b    #$dc,pauser
  154.     moveq    #0,d0
  155.     
  156.     bra    zza
  157.  
  158.  
  159. new:    movem.l d0-d7/a0-a6,-(sp)
  160.     and #$10,$dff01e        
  161.     beq out
  162.     move.w    #$10,$dff09c
  163.  
  164.     ;    woplist
  165.     
  166. ;    lea    woplist+1,a0
  167. ;    moveq    #12,d0
  168. ;    wpit    move.b    12(a0),(a0)
  169. ;    add.l    #12,a0
  170. ;    subi.b    #1,d0
  171. ;    cmp.b    #0,d0
  172. ;    bne     wpit
  173. ;    move.l    woppt,a2
  174. ;    move.b    (a2),(a0)
  175. ;    add.l    #1,a2
  176. ;    cmp.b    #$fe,(a2)
  177. ;    bne    wopok
  178. ;    move.l    #wopdata,a2
  179. ;wopok    move.l    a2,woppt
  180.  
  181.     cmp.b    #0,pauser
  182.     beq    zxcv
  183.     sub.b    #1,pauser
  184.     bra    out
  185.  
  186. zxcv    cmp.b    #0,cdown
  187.     bne bypass
  188.     move.b    #6,cdown
  189.     bsr    subrt
  190.     move.l    spoint,a6
  191.     cmp.b    #$ff,(a6)
  192.     bne    bypass
  193.     move.l    #string,spoint
  194. bypass    sub.b    #1,cdown
  195.     
  196.  
  197.       
  198.       moveq #4,d0
  199.       lea mypiccy+9324,a0
  200.       lea mypiccy+9326,a1
  201. lp80: btst #14,$dff002            ; Thank's to TBY of FREESTYLE
  202.                     ; for the blitter info.
  203.       bne lp80
  204.       move.l a0,$dff054 ;dest
  205.       move.l a1,$dff050 ;source
  206.       move.w #$ffff,$dff044
  207.       move.w #$ffff,$dff046
  208.       move.w #0,$dff064
  209.       move.w #0,$dff066
  210.       move.w #%1100100111110000,$dff040
  211.       move.w #%0000000000000000,$dff042
  212.       move.w #%0000101000010111,$dff058; was 0000101100010111
  213.       adda.l #11264,a0
  214.       adda.l #11264,a1
  215.       dbf d0,lp80      
  216.  
  217.       
  218.       
  219.  
  220.  
  221.     
  222.     
  223.     
  224.  
  225. out movem.l (sp)+,d0-d7/a0-a6
  226.     dc.w $4ef9
  227. old dc.l 0
  228.  
  229.  
  230. count    dc.b 0
  231. read    dc.l 0
  232. buffy    ds.w 30
  233. falagz    dc.b 0
  234. cdown    dc.b 0
  235. pauser    dc.b 0
  236.  
  237. OLDCOPPER    DC.L    0
  238. NEWCOPPER    DC.W    $0100,$5200,$0102,$0000,$0104,$000A
  239.         DC.W    $0108,$0002,$010A,$0002
  240.         DC.W    $0092,$0038,$0094,$00D4
  241.         DC.W    $008E,$2C81,$0090,$2cC1
  242.         dc.w    $0096,$0020
  243.         DC.W    $00E0
  244. PL0H        DC.W    $0000,$00E2
  245. PL0L        DC.W    $0000,$00E4
  246. PL1H        DC.W    $0000,$00E6
  247. PL1L        DC.W    $0000,$00E8
  248. PL2H        DC.W    $0000,$00EA
  249. PL2L        DC.W    $0000,$00EC
  250. PL3H        DC.W    $0000,$00EE
  251. PL3L        DC.W    $0000,$00F0
  252. PL4H        DC.W    $0000,$00F2
  253. PL4L        DC.W    $0000
  254.         
  255.         
  256.         DC.W    $0180,$0000,$0182,$0fdb
  257.         DC.W    $0184,$0131,$0186,$0c30
  258.         DC.W    $0188,$0eee,$018A,$0121
  259.         DC.W    $018C,$0447,$018E,$0740
  260.         DC.W    $0190,$0db0,$0192,$04a2
  261.         DC.W    $0194,$0242,$0196,$0372
  262.         DC.W    $0198,$0252,$019A,$0444
  263.         DC.W    $019C,$0333,$019E,$04b2
  264.  
  265.         DC.W    $01a0,$0392,$01a2,$05c5
  266.         DC.W    $01a4,$0ccc,$01a6,$0d70
  267.         DC.W    $01a8,$0382,$01aA,$08c8
  268.         DC.W    $01aC,$04d2,$01aE,$06c6
  269.         DC.W    $01b0,$0bcb,$01b2,$0362
  270.         DC.W    $01b4,$0aca,$01b6,$0a50
  271.         DC.W    $01b8,$0f5f,$01bA,$0252
  272.         DC.W    $01bC,$04a2,$01bE,$0210
  273.  
  274.  dc.w    $ff09,$fffe,$ffdd,$fffe
  275.  
  276.  dc.w    $0009,$fffe
  277.  
  278.         DC.W    $0180,$0000,$0182,$0000
  279.         DC.W    $0184,$0fff,$0186,$0000
  280.         DC.W    $0188,$0ddd,$018A,$0bbb
  281.         DC.W    $018C,$0aaa,$018E,$0999
  282.         DC.W    $0190,$0888,$0192,$0777
  283.         DC.W    $0194,$0666,$0196,$0555
  284.         DC.W    $0198,$0333,$019A,$0222
  285.         DC.W    $019C,$0111,$019E,$0000
  286.  
  287.  dc.w      $0109,$fffe,$186,$000
  288.  dc.w     $0209,$fffe,$186,$000
  289.  dc.w     $0309,$fffe,$186,$11
  290.  dc.w    $0409,$fffe,$186,$22
  291.  dc.w    $0509,$fffe,$186,$33
  292.  dc.w    $0609,$fffe,$186,$044
  293.  dc.w     $0709,$fffe,$186,$055
  294.  dc.w    $0809,$fffe,$186,$066
  295.  dc.w    $0909,$fffe,$186,$077
  296.  dc.w    $0a09,$fffe,$186,$088
  297.  dc.w     $0b09,$fffe,$186,$099
  298.  dc.w    $0c09,$fffe,$186,$0aa
  299.  dc.w    $0d09,$fffe,$186,$0bb
  300.  dc.w    $0e09,$fffe,$186,$0cc
  301.  dc.w    $0f09,$fffe,$186,$0dd
  302.  dc.w    $1009,$fffe,$186,$0ee
  303.  dc.w    $1109,$fffe,$186,$1ee
  304.  dc.w    $1209,$fffe,$186,$2ee
  305.  dc.w    $1309,$fffe,$186,$3ee
  306.  dc.w    $1409,$fffe,$186,$4ee
  307.  dc.w    $1509,$fffe,$186,$5ee
  308.  dc.w    $1609,$fffe,$186,$6ee
  309.  dc.w    $1709,$fffe,$186,$7Ee
  310.  DC.W   $1809,$fffe,$186,$8ee,$180,$1,$182,$1
  311.  dc.w    $1909,$fffe,$186,$9ee,$180,$3,$182,$3
  312.  dc.w    $1a09,$fffe,$186,$aee,$180,$5,$182,$5
  313.  dc.w    $1b,$fffe,$186,$bee,$180,$7,$182,$7
  314.  dc.w    $1c09,$fffe,$186,$cee,$180,$9,$182,$9
  315.  dc.w    $1d09,$fffe,$186,$dee,$180,$b,$182,$b
  316.  dc.w    $1e09,$fffe,$186,$eee,$180,$d,$182,$d
  317.  dc.w    $1f09,$fffe,$186,$0f0,$180,$e,$182,$e
  318.  
  319.  dc.w    $2109,$fffe,$108,$ff7e,$10a,$ff7e
  320.  
  321.  dc.w    $2309,$fffe,$186,$ccc
  322. woplist    
  323.  dc.w    $2409,$fffe,$186,$bcc
  324.  dc.w    $2509,$fffe,$186,$acc
  325.  dc.w    $2609,$fffe,$186,$9cc
  326.  dc.w    $2709,$fffe,$186,$8bb
  327.  dc.w    $2809,$fffe,$186,$7bb
  328.  dc.w    $2909,$fffe,$186,$6bb
  329.  dc.w    $2a09,$fffe,$186,$5aa
  330.  dc.w    $2b09,$fffe,$186,$4aa
  331.  dc.w    $2c09,$fffe,$186,$3aa
  332.  dc.w    $2d09,$fffe,$186,$299
  333.  dc.w    $2e09,$fffe,$186,$199
  334.  dc.w    $2f09,$fffe,$186,$099
  335.  dc.w    $3009,$fffe,$186,$088
  336.  dc.w    $3109,$fffe,$108,$8c6,$10a,$8c6
  337.  dc.w    $3209,$fffe,$108,$2,$10a,$2
  338.  dc.w   $3309,$fffe,$180,$0,$182,$0,$184,$e00,$186,$f60,$188,$d60
  339.  dc.w    $18a,$b50,$18c,$a50,$18e,$840
  340.  dc.w    $9c,$8010
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.         DC.W    $FFFF,$FFFE
  348. gfxlib    dc.b    "graphics.library",0
  349.     EVEN
  350. _gfxbase    dc.l    0
  351. MEMORY_POINTER    dc.l    0
  352. MYRASTPORT    ds.b    RP_Sizeof
  353. MYBITMAP    ds.b    BM_Sizeof
  354. colour    dc.w    0
  355. flagz    dc.b    0
  356.  
  357.  
  358.  
  359.  
  360.  
  361. string            ;     *
  362.     dc.b    "  COMRADE J  ",254
  363.     dc.b    "OF SHARE AND ENJOY PRESENTS HIS NEW "
  364.     DC.B     "SCROLLY TEXT ROUTINE, FOR USE IN SAE DEMOS AND "
  365.     DC.B    "INTROS ONLY! ULTRA GREETOIDS TO ALL SAE MEMBERS "
  366.     DC.B    "YEAH HERE IZ ANOTHER    a SAE a   ",254,"  DISK! - GREETS TO "
  367.     DC.B    "EVERYONE. PHONE ME ON 01-668 9605 FOR A CHAT"
  368.     DC.B    "!!!!! NEXT a COPY PARTY @ CBM SHOW!    "
  369.     dc.b    "THIS IS A JOURNEY INTO SCROLLYTEXT WITH A DIP AND A "
  370.     DC.B    "DABBLE OF PURE 68000 FUNTIME GUYZ!?!?! "
  371.     DC.B    "aaaaaaa SHARE AND ENJOY aaaaaaa AND NOW, "
  372.  
  373.  
  374.  
  375.  
  376.     dc.b    255
  377.  
  378. spoint    dc.l    string
  379. myfont    dc.b    "gof "
  380.     ds.b     33788
  381.     dc.l    0
  382. mypiccy    dc.b    "fog "
  383.     ds.b     56316+100
  384.  
  385.  
  386.