#149481 - krozen - Sun Jan 20, 2008 10:12 pm
Hi guys,
I have some GBA experience, and have decided to make the move over to DS programming. The one thing that is holding me back at the minute is VRAM memory mapping - I just can't get my head around it, and it's placed a complete road block on my progression with DS programming.
The way I figure it is as follows: The DS doesn't tie memory to specific modes. Rather, you first choose the mode you want, and then choose which memory you would like to use for it. So, you can choose Mode 3 with extended background, and then decide to use VRAM Bank A to store the relevant bitmap data. BUT, all seems to map to 0x06000000 anyway! (from what I can make out from the #defines)
I guess my main issue is understanding why mapping is used, rather than just having dedicated parts of memory to different tasks. Would someone be able to explain the basics of it to me (perhaps using a practical example of how different memory mappings would be used in a game)?
Thanks a million for your help
I have some GBA experience, and have decided to make the move over to DS programming. The one thing that is holding me back at the minute is VRAM memory mapping - I just can't get my head around it, and it's placed a complete road block on my progression with DS programming.
The way I figure it is as follows: The DS doesn't tie memory to specific modes. Rather, you first choose the mode you want, and then choose which memory you would like to use for it. So, you can choose Mode 3 with extended background, and then decide to use VRAM Bank A to store the relevant bitmap data. BUT, all seems to map to 0x06000000 anyway! (from what I can make out from the #defines)
I guess my main issue is understanding why mapping is used, rather than just having dedicated parts of memory to different tasks. Would someone be able to explain the basics of it to me (perhaps using a practical example of how different memory mappings would be used in a game)?
Thanks a million for your help