gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > Chishm's exec-stub, devkitARM r22 and up

#158064 - kusma - Wed Jun 04, 2008 2:37 am

Today, while working on a project that uses Chishm's exec-stub, I upgraded devkitARM from r21 to r23 and exec started freezing the hardware. After downgrading step by step, I found out that devkitARM r22 was the earliest release of devkitARM to trigger this issue with my codebase.

Has anyone seen similar behavior? Is there any known fix or work-around? These kinds of issues are a bit hard to debug ;)

#158088 - elhobbs - Wed Jun 04, 2008 5:52 pm

I am not sure but I think I remember something about newlib being a lot bigger in the newer releases and using up all the memory on the arm7... or something along those lines

#158126 - kusma - Thu Jun 05, 2008 11:14 am

elhobbs wrote:
I am not sure but I think I remember something about newlib being a lot bigger in the newer releases and using up all the memory on the arm7... or something along those lines

Hmm, where can I find more information about this? I'm a bit curious, since neither the ARM7 or the ARM9 seems to need much memory. I guess I could try to link r22-object files with the r21-linker and see if it helps...

#158130 - Dwedit - Thu Jun 05, 2008 11:46 am

Post the .map files, those are what matters.
_________________
"We are merely sprites that dance at the beck and call of our button pressing overlord."

#158131 - kusma - Thu Jun 05, 2008 12:13 pm

Good point, I'll have a look at them and post them if I can't find anything suspicious myself.

#158145 - kusma - Thu Jun 05, 2008 7:19 pm

I can't really find anything out of the ordinary with the map-files.

Here's the arm7 map-files:
http://kg.slengpung.com/kussie/arm7_r21.map
http://kg.slengpung.com/kussie/arm7_r22.map

Here's the arm9 map-files:
http://kg.slengpung.com/kussie/arm9_r21.map
http://kg.slengpung.com/kussie/arm9_r22.map

#158810 - Zalo - Wed Jun 18, 2008 1:12 pm

Hi. I have also upgraded to r23 from r20 (yes, I don't like to upgrade because I always have problems with it)

I have discovered that dirnext function has stopped working. Can anybody else try if it works? Basically, this loop

Code:
while(dirnext(dir, filename, &st) == 0)
  {
...
}


never ends :(
_________________
-----
Zalo

#158812 - kusma - Wed Jun 18, 2008 1:30 pm

This works just fine for me with r23. What are the exact conditions for your issue? How many files does the folder you enumerate contain, what filesystem are you using?

#158853 - Zalo - Thu Jun 19, 2008 1:32 pm

Hi,
I am using libfat. Ii doesn't seem to be a problem with the number of files in the folder as I have tried on different folders.

The function iterates on "..", ".", and then freezes.

I patched the app with DLDI for scsd and trying on no$GBA with fcfsr. In booth places I have the same problem

If I downgrade to DevKitArm r20 everything works fine again
_________________
-----
Zalo

#159266 - fluff - Sat Jun 28, 2008 11:43 am

Zalo:

maybe you're running PAlib or some other big invasive lib? libfat's directory functions didn't work for me with r23 and PAlib. Getting rid of the latter solved the problem.

#159429 - Maple - Mon Jun 30, 2008 6:48 pm

fluff wrote:
Zalo:

maybe you're running PAlib or some other big invasive lib? libfat's directory functions didn't work for me with r23 and PAlib. Getting rid of the latter solved the problem.

Well unless you re-wrote a lot of code, then PALib and r23 aren't compatible in the first place, regardless of using libfat or not.

#159430 - fluff - Mon Jun 30, 2008 6:52 pm

Worked decent enough for me, but I wasn't really using much of PAlib's functionality so there were probably things that didn't work correctly.

#159440 - Zalo - Mon Jun 30, 2008 11:35 pm

I am not using palib... this is weird. It only happens to me then?
_________________
-----
Zalo

#159514 - chishm - Wed Jul 02, 2008 4:09 am

Zalo wrote:
Hi. I have also upgraded to r23 from r20 (yes, I don't like to upgrade because I always have problems with it)

I have discovered that dirnext function has stopped working. Can anybody else try if it works? Basically, this loop

Code:
while(dirnext(dir, filename, &st) == 0)
  {
...
}


never ends :(

Make sure filename is at least 768 bytes long, although MAXPATHLEN is safer.
_________________
http://chishm.drunkencoders.com
http://dldi.drunkencoders.com