Quote:
Originally Posted by ross
But the sprites data are not consecutive in memory?
|
Maybe I should have mentioned, I'm moving into hardware sprites which are 64 wide by 128 pixels in depth.
Here's how I allocate them.
Code:
SPRITE_BANK_SIZE: equ 128
move.l #(SPRITE_BANK_SIZE*16)*16,d0
move.l #MEMF_CHIP,d1
bsr agdAllocateResource
tst.l d0
bmi .error
move.l d0,a0
move.l (a0),d0
move.l d0,HDL_SPRITE_BUF0BANK0(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK1(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK2(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK3(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK4(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK5(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK6(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF0BANK7(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK0(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK1(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK2(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK3(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK4(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK5(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK6(a6)
add.l #(SPRITE_BANK_SIZE*16),d0
move.l d0,HDL_SPRITE_BUF1BANK7(a6)
bra.s .exit