What is the official devkitARM method to switch heap memory to 8mb when creating applications for the nintendo ds? So far, I just modified the ewram constant in devkitPro\devkitARM\arm-eabi\lib\ds_arm9.ld, but I wonder if there is a makefile switch that I'm missing and if this has any unexpected side-effects when I just change this value (haven't noticed anything yet though)?
I guess it would even more useful when the 4mb debug memory would reside in a seperate section, so you can specify __attribute__'s to explictly move debug-only buffers in to this section.
What's the correct method to switch to 8mb heap
Re: What's the correct method to switch to 8mb heap
a normal nintendo ds only has 4 mb (and the dsi has 16mb, but its currently not easy to run code in dsi mode).
although I do vaguely remember that debug versions of the ds hardware has an extra 4mb for debug purposes, but that is only for officiel developers.
could you tell some more about what you're doing and what kind of hardware you're using (asuming its hardware you want to use).
although I do vaguely remember that debug versions of the ds hardware has an extra 4mb for debug purposes, but that is only for officiel developers.
could you tell some more about what you're doing and what kind of hardware you're using (asuming its hardware you want to use).
-
- Site Admin
- Posts: 1986
- Joined: Tue Aug 09, 2005 3:21 am
- Location: UK
- Contact:
Re: What's the correct method to switch to 8mb heap
I'd need a bit more information on what you're doing. Since you specify 8MiB I'd assume you're working with a debug system? Is this for official code or did you just manage to get one to play with?
There are quite a few changes in the crt0 and libnds that would be required to support 8MiB, I'm currently in the process of making similar changes for DSi support. Essentially we need the crt0 to detect the presence of extra RAM and adjust the mpu setup plus the end of heap address.
There are quite a few changes in the crt0 and libnds that would be required to support 8MiB, I'm currently in the process of making similar changes for DSi support. Essentially we need the crt0 to detect the presence of extra RAM and adjust the mpu setup plus the end of heap address.
Re: What's the correct method to switch to 8mb heap
I want to have extra space for title specific data, debug data and code. With title specific resources I refer to e.g. memory tracking stats, debug font resources, additional debug information in game assets and code that is available in development builds only.WinterMute wrote:I'd need a bit more information on what you're doing.
It also allows me to see how many bytes the title is above the 4mb limit, rather than just getting out-of-mem and halt. Being able to see that game world 5 allocates 10kb more than it should, but still runs, makes development more comfortable. The programmer is not necessarily the one who tweaks assets, when another person tweaks assets and the game crashes afterwards, because it's a few kb too large, makes this process more time consuming than necessary, not to mention additional support requests to the programming team.
Just no$gba.WinterMute wrote: Since you specify 8MiB I'd assume you're working with a debug system?
If this detection code could also handle whether IsDebugger returns 1 would be great. no$gba emulates this SWI instruction.WinterMute wrote: I'm currently in the process of making similar changes for DSi support. Essentially we need the crt0 to detect the presence of extra RAM and adjust the mpu setup plus the end of heap address.
-
- Site Admin
- Posts: 1986
- Joined: Tue Aug 09, 2005 3:21 am
- Location: UK
- Contact:
Re: What's the correct method to switch to 8mb heap
Sorry for taking so long over the release. devkitARM r27 + libnds 1.4.0 now handles 8meg quite happily
http://forums.devkitpro.org/viewtopic.php?p=3658#p3658
http://forums.devkitpro.org/viewtopic.php?p=3658#p3658
Who is online
Users browsing this forum: No registered users and 4 guests