EasyManua.ls Logo

Commodore Amiga A2000 - Page 92

Commodore Amiga A2000
380 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
MOVE.W #2000,d0 ; 2000 longwords per bit-plane
MOVE.L #$21000,a1 ; Point a1 at bit-plane 1
MOVE.L #$23000,a2 ; Point a2 at bit-plane 2
MOVE.L #$25000,a3 ; Point a3 at bit-plane 3
MOVE.L #$27000,a4 ; Point a4 at bit-plane 4
MOVE.L #$29000,a5 ; Point a5 at bit-plane 5
MOVE.L #$2B000,a6 ; Point a6 at bit-plane 6
FPLLOOP:
MOVE.L #$55555555,(a1)+ ; Fill bit-plane 1 with $55555555
MOVE.L #$33333333,(a2)+ ; Fill bit-plane 2 with $33333333
MOVE.L #$0F0F0F0F,(a3)+ ; Fill bit-plane 3 with $0F0F0F0F
MOVE.L #$00FF00FF,(a4)+ ; Fill bit-plane 4 with $00FF00FF
MOVE.L #$CF3CF3CF,(a5)+ ; Fill bit-plane 5 with $CF3CF3CF
MOVE.L #$3CF3CF3C,(a6)+ ; Fill bit-plane 6 with $3CF3CF3C
DBRA d0,FPLLOOP ; Decrement counter & loop till done
;
; Set up a Copper list at $20000.
;
; NOTE: As with the bit planes, the copper list location should be allocated
; from the system MEMF_CHIP memory pool.
;
MOVE.L #$20000,a1 ; Point al at Copper list dest
LEA COPPERL(pc),a2 ; Point a2 at Copper list image
CLOOP:
MOVE.L (a2),(a1)+ ; Move a long word
CMPI.L #$FFFFFFFE,(a2)+ ; Check for end of Copper list
BNE CLOOP ; Loop until entire Cop list moved
;
;Point Copper at Copper list
;
MOVE.L #$20000,COP1LCH(a0) ; Load Copper jump register
MOVE.W COPJMP1(a0),d0 ; Force load into Copper P.C.
;
; Start DMA.
;
MOVE.W #$8380,DMACON(a0) ; Enable bit-plane and Copper DMA
BRA ....next stuff to do
;
; Copper list for six bit-planes. Bit-plane 1 is at $21000; 2 is at $23000;
; 3 is at $25000; 4 is at $27000; 5 is at $29000; 6 is at $2B000.
;
; NOTE: These bit-plane addresses are for example purposes only.
; See note above.
;
COPPERL:
DC.W BPL1PTH,$0002 ; Bit-plane 1 pointer = $21000
DC.W BPL1PTL,$1000
DC.W BPL2PTH,$0002 ; Bit-plane 2 pointer = $23000
DC.W BPL2PTL,$3000
DC.W BPL3PTH,$0002 ; Bit-plane 3 pointer = $25000
DC.W BPL3PTL,$5000
DC.W BPL4PTH,$0002 ; Bit-plane 4 pointer = $27000
DC.W BPL4PTL,$7000
DC.W BPL5PTH,$0002 ; Bit-plane 5 pointer = $29000
DC.W BPL5PTL,$9000
DC.W BPL6PTH,$0002 ; Bit-plane 6 pointer = $2B000
DC.W BPL6PTL,$B000
DC.W $FFFF,$FFFE ; Wait or the impossible, i.e., quit
- Playfield Hardware 83 -

Table of Contents

Other manuals for Commodore Amiga A2000

Related product manuals