>People...
>
>I'm in trouble. I just want to set the sprites on Screen 6
>and I'm finding some trouble.
>
>I use the BIOS functions to find the Sprites Pattern,
>Attributes and Color addresses, and they return the right
>address. So, I use the following to copy the Pattern Table
>from RAM to VRAM:
>
>
>       LD      DE,(SPRPTR) ; Points to DEstination Address (Pattern Table
on VRAM)
>       LD      HL,SPRITES_PAT ; Points to source Address (Pattern Table on
RAM)
>       LD      BC,8*2 ; 16 bytes (2 sprites, 8 bytes each one)
>       LD      IX,LDIRVM ; Points IX to BIOS function
>       CALL    CALLBIOS ; Call BIOS
>
>The copy actually runs "almost" fine. LDIRVM really writes
>16 bytes starting from SPRPTR (on VRAM), but it doesn't
>write the same bytes on SPRITES_PAT (on RAM). Actually it
>writes JUNK on VRAM. I don't know what to do. Any ideas?
>
>    []'s Daniel Caetano

Hi Daniel,

Actually it has been a long time since I did some serious
programming on my MSX, but it looks to me like a memory slot
problem.

What I mean is that your call to the bios does an interslot
call to the MSX2 bios (the MSX2 bios is put in a slot and called) and the
data (in RAM) you want to write to the VRAM
probably lies in the same slot as the MSX2 bios and is
therefor switched out. What you then see on the screen is
data from the MSX2 bios in stead of the data you wanted.

Hope this helps.

Regards,

Jeroen Smael
FutureDisk

Homepage: http://www.futuredisk.msxnet.org/



****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put
in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the
quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
****

Reply via email to