Switch to full style
Post a reply

System Memory Division - questions

Fri Sep 13, 2013 9:44 am

Hello,
Seeing as I had a super (non-)enthusiastic response to my thread about my unit rebooting when using Online Traffic, I've been doing some more research and I'm starting to get a better understanding.

It's definitely a memory issue. I'm glad I've been able to narrow that down. I'm still not sure whether I'm going to be able to keep using the device, or if I'm going to have to sell it and purchase a new one :( I hope not, as it's a pain in the arse and there's always the lottery that the new device you get might not work.

OK, so the issue seems to be something to do with the System Memory Divison? Can someone explain what that is to me? I did a bit of Hex hacking from a working hacked version of Primo and for System Memory Division, the proceeding letters were U.n.k so I took a version of 2.4 which is super buggy and changed the letters from S.e.t -> U.n.k. Surprisingly, it ran very well and for a moment, I thought my problems were solved. After about an hour, it crashed but it confirmed my feelings that it's a memory issue. I may be pushing the device too, especially with the problems I documented in my previous thread. I have everything, terrain, TTS, dem, 3D buildings, so maybe if I scrap the terrain or something, it'll free up some memory and I won't suffer the same problem. I also hex edited a version of Primo 2.0 and changed the letters G.e.t -> U.n.k. the result was that it crashed after just two minutes.

So what other permutations can I use for U.n.k, G.e.t., S.e.t. etc?

The crash logs don't contain much information, just the same map file not found error which is infuriatingly tedious now.

Please please help, otherwise I might have to buy a new unit :(

Fri Sep 13, 2013 10:03 am

This is a new one to us, and I don't have a suitable device to look into it for you, so unless someone has had the same problem...

However the memory division is accessible through the wince control panel/system applet on the memory tab.

It sets the division between ram and temporary storage (held in ram).
With attached flash drives you don't really need temporary storage so the slider needs to be towards the left (I normally allow 512KB for storage.)

There are tools that can set the division from a command line or a mortscript.

Check to see what yours is set to, you might be able to reclaim some ram.

However the "Not enough memory" error also appears when a dll fails to load, so the problem may not be a lack of memory.

Fri Sep 13, 2013 10:38 am

Fatboyfun wrote:This is a new one to us, and I don't have a suitable device to look into it for you, so unless someone has had the same problem...

However the memory division is accessible through the wince control panel/system applet on the memory tab.

It sets the division between ram and temporary storage (held in ram).
With attached flash drives you don't really need temporary storage so the slider needs to be towards the left (I normally allow 512KB for storage.)

There are tools that can set the division from a command line or a mortscript.

Check to see what yours is set to, you might be able to reclaim some ram.

However the "Not enough memory" error also appears when a dll fails to load, so the problem may not be a lack of memory.
Thanks for your reply :)

How would I maximize the memory using mortscript, then execute iGo after? That I guess is the best thing I can do for now, until it crashes again, if it does.

Mine has about 4mb or 5mb storage memory by default. That could be the difference between it working and not me thinks seeing as it worked perfectly for a long time this morning.

It's a shame this bug exists because I really like the device. The screen is bright, although I miss the fade out I got on my old device, it has better SD card integration, and better CD support imo, and because it uses WinCE for the menu, it's super smooth and the transitions work great. On my old device, there was a separate ROM for WinCE so the radio was a China ROM, it was chunky, not very smooth etc, but I might have to switch back to a device like this as it overall worked better :(

More experimenting required I know. I guess if I switched back to a map only, with only POI's no terrain or 3D building, there would be no crashing right? After all, Traffic is my priority really...

Worst comes to the worst, I'll sell it and buy another.

Fri Sep 13, 2013 10:50 am

The tool you are looking for is "SetSystemMemoryDivisionKB.exe"

I use it in most of my device unlocks/shells, also you can find it buried away inside miopocket.

Use...

Run (SystemPath("ScriptPath")\SetSystemMemoryDivisionKB.exe", 512)

...to run it from mortscript, however you can set it from the wince control panel and if your device has persistent registry it might stay set.

Fri Sep 13, 2013 11:06 am

Fatboyfun wrote:The tool you are looking for is "SetSystemMemoryDivisionKB.exe"

I use it in most of my device unlocks/shells, also you can find it buried away inside miopocket.

Use...

Run (SystemPath("ScriptPath")\SetSystemMemoryDivisionKB.exe", 512)

...to run it from mortscript, however you can set it from the wince control panel and if your device has persistent registry it might stay set.


Tried that. Doesn't stay set (setting it from control panel) :(

Will give Mortscript a go :) I feel like I'm getting close to fixing this. If I don't fix it, no matter eh? I can get a newer device with TMC. Does TMC and online work together? or only one?

Fri Sep 13, 2013 11:37 am

I have no idea.

Fri Sep 13, 2013 11:58 am

OK no problem.

Do you have a copy of MortRunner to run my script?

Fri Sep 13, 2013 12:10 pm

Ah, found the attachment ;)

Fri Sep 13, 2013 12:58 pm

Code:
Run (SystemPath("ScriptPath")\SetSystemMemoryDivisionKB.exe", 512)
Sleep(1000)
Run (SystemPath("ScriptPath")\"Primo.exe")


Error when executing that, missing comma? Then something about arguments?

:pray:

Fri Sep 13, 2013 1:16 pm

Put a " before SetSystem...

Also you might have to put them around 512 as well

Fri Sep 13, 2013 2:24 pm

Thanks will give it another go :)

Fri Sep 13, 2013 3:31 pm

OK, that works now, thanks.

Is there any way I can keep the MortRunner running until the Primo.exe exits? The shell attaches to the script.exe I believe.

Fri Sep 13, 2013 4:00 pm

Use RunWait instead of Run

Fri Sep 13, 2013 4:20 pm

Thank you fatboyfun :)

Tue Sep 17, 2013 8:58 am

Spent a shed load of time experimenting and I think this is simply a problem with my device, perhaps an unstable WinCE ROM. What a shame. No matter what I do, even if I rip all the extras out and leave basic map only, it still crashes... eventually, even if it's after an hour.

I'm gutted because I actually like the device and I think it's great for everything else it does, including browser etc.

I have one last test, although I doubt it'll work, I'm going to try a totally brand new Class 10 SD card in it. The SD card supplied is a low quality, low speed, crappy SD card. It writes at roughly 1mb a second, which is easily enough for iGo I suspect, but I'm going to give it the benefit of the doubt and say perhaps it isn't.

I've got a brand new Kingston Class 10 MicroSD. One last roll of the dice!! :girl_cray::girl_cray:
Post a reply