- 142 名前:名前は開発中のものです。 mailto:sage [2008/05/21(水) 11:39:45 ID:dwc8/njx]
- 完全に推測でしかないんですが
メインRAMで使える領域は、正確には4Mじゃなくて 後ろの方をシステムが使用してるから(4M - 4k)だよね /devkitPRO/devkitARM/arm-eabi/lib/ds_arm9.ld を見ると # MEMORY { # rom : ORIGIN = 0x08000000, LENGTH = 32M # ewram : ORIGIN = 0x02000000, LENGTH = 4M - 4k # dtcm : ORIGIN = 0x0b000000, LENGTH = 16K # itcm : ORIGIN = 0x01000000, LENGTH = 32K # } # __ewram_end = ORIGIN(ewram) + LENGTH(ewram); # __eheap_end = ORIGIN(ewram) + LENGTH(ewram); 実際に、こう書いてあるし。 だから、2000000h 〜 3FFF800がmalloc()で確保される空間なんだろうが /libnds/include/ipc.h をみると # static inline # TransferRegion volatile * getIPC() { # return (TransferRegion volatile *)(0x027FF000); # } ヒープの後ろ4096kを、なんか無断でつかっちょる 前々から、これってmalloc()で27FF000h〜が確保されたら ぐちゃぐちゃになるんじゃないかってヒヤヒヤしてるんだけど どうなのこれ? 大丈夫なの?
|

|