Log in

View Full Version : Windows Mobile and Memory Management - Why is it so Dysfunctional?


Jason Dunn
06-02-2005, 07:30 PM
Sometimes Windows Mobile devices embarrass me. :-( I have a consulting client using an XDA2 and it was in her purse and the record button got pressed (same old problem). I had forgotten to change the "only power button can turn the device on" because it had hard reset randomly on her a few weeks prior. So anyway, she had a voice recording that completely filled up the memory on her device. When a Windows Mobile device gets to where it has 50 KB of memory left, it completely falls apart. In her case, after she plugged it into power, it soft reset over and over (three times apparently), then hard reset. Then she calls me and asks why it happened. And what can I tell her?<br /><br />It kills me that these devices are so fragile, that they have no software measures to free up memory. I've seen this scenario play out over and over where one thing or another, whether it's Notes, PIE, or something else fill up the memory, and there are no tools built into the OS to recognize that there's a low memory situation and do something about it. Why do we have a Disk Cleanup tool in Windows XP, where most of us have 60+ GB hard drives and rarely run out of space, but we lack something so vital on a device that has limited storage space? Equally as important, why doesn't Pocket Internet Explorer have an option to limit the cache size on the device? Why doesn't Notes have an option to keep "x MB memory free" and stop recording when the device starts to run out of memory? To my knowledge, there isn't a single Windows Mobile application that has any options for the preservation and management of memory on the device.<br /><br />Why is there so little attention paid to memory management on these devices? That's a question I have no answer for.

Menneisyys
06-02-2005, 07:43 PM
Yes, to my knowledge, this can only be achieved by constantly polling the available memory size. That is, the operating system doesn't send a message (or "interrupt") your application if the memory becomes full. On the desktop Windows (and other, full-fledged operating systems), because of the virtual memory (swapping to HDD), this will never become an issue.

Very few applications do this on the PPC - for example, Pocket Artist (Tools/Preferences/Memory/X kb reserved for the system) or, speaking of recording sound/voice, NoteM (Tools/Options/Maxmum (sic!) drive usage).

DustyLBottoms
06-02-2005, 07:58 PM
I guess this is fixed in WM 2005. It should write the notes to storage, leaving the RAM intact.

Jason Dunn
06-02-2005, 08:04 PM
I guess this is fixed in WM 2005. It should write the notes to storage, leaving the RAM intact.

But is that really the solution? You'll have RAM to execute programs, which is certainly better, but how well with the OS work where there's no storage room to write data to? That's not truly a fix for this problem.

Tye
06-02-2005, 08:05 PM
You know my big gripe???
No Safe Mode!

Why is there no way to safely soft reset when the new start up app or today plug in I installed causes problems?

Clinton Fitch
06-02-2005, 08:07 PM
Jason, I think a lot of this comes down to theses devices simply needing to catch up to mainstream needs of users.

What I mean is that in my view - and read this as just that, an opinion - Microsoft and Palm both were completely caught off guard by the demand and pressure these devices would be put under by users in day-to-day use. I think I can support this with the continual updating of the CE core and addition of features to make them more and more compatible with their desktop counterparts.

I think that Microsoft just now has gotten back on top of the crest if-you-will with 5.0. This version is built from the ground up with security, multimedia, memory in mind, not as afterthoughts or not thought of at all. Is it the ultimate answer? Of course not, but clearly a step in the right direction.

Memory allocation, from what I've read, is better in 5.0 but the scenario your client has is, I would bet, still going to be an issue.

SteveHoward999
06-02-2005, 08:19 PM
Jason, I think a lot of this comes down to theses devices simply needing to catch up to mainstream needs of users.


What's to catch up on? This sort of storage capacity protection has been around for at least a decade in Windows. Why would PPC not need the same? It should have been there from the start.

Clinton Fitch
06-02-2005, 08:22 PM
Jason, I think a lot of this comes down to theses devices simply needing to catch up to mainstream needs of users.


What's to catch up on? This sort of storage capacity protection has been around for at least a decade in Windows. Why would PPC not need the same? It should have been there from the start.

That's my point Steve. It wasn't thought of as being important in P/PC land until it was too late. That is what I mean by catching up. Realizing that most people use and expect desktop like functions out of these devices and put the same types of demands on them.

Menneisyys
06-02-2005, 08:26 PM
Jason, I think a lot of this comes down to theses devices simply needing to catch up to mainstream needs of users.


What's to catch up on? This sort of storage capacity protection has been around for at least a decade in Windows. Why would PPC not need the same? It should have been there from the start.

Well, with the severely constrained RAM/ROM sizes and CPU's (it must have been a separate thread, or, even worse, a process, taking up system resources), no wonder the creators of WinCE 1.0 (in the era of 2 Mbyte, 44 MHz SH3 devices like the HP 300LX) didn't include this.

Of course, now that there is plenty of RAM and CPU, it really should be included.

QYV
06-02-2005, 08:47 PM
Right on with the need to fix this, but why the dig on Pocket PC specifically? Does another PDA do this better?

Now, something like ActiveSync... that's something to give Microsoft some crap about. :twisted:

Clinton Fitch
06-02-2005, 08:53 PM
Now, something like ActiveSync... that's something to give Microsoft some crap about. :twisted:

:lol:

absofreakinlutely!

Phillip Dyson
06-02-2005, 09:01 PM
I agree with the observations on poor memory management on the pocketpc. But its still a mystery as to why its so bad.

MS obviously thought about memory management. Isn't the whole reason for the "close button does not close" philosphy? :roll:

Kevin Daly
06-02-2005, 09:09 PM
These sort of problems highlight exacty what a sick joke it is that Microsoft is still telling us developers that we shouldn't provide an OK button or Exit option for our applications because the Magical Windows Mobile Memory System will take care of any low memory problems, so why would any right-thinking person ever want to close a program?

Yeah right.

Cybrid
06-02-2005, 09:16 PM
It's just as bad on the bettery with Dell X50v's WiFi button. Thank God for button lock.
possible workarounds

You could remap the button to something harmless.
You could get notes to store directly to SD/CF

Ed Hansberry
06-02-2005, 09:18 PM
You know my big gripe???
No Safe Mode!

Why is there no way to safely soft reset when the new start up app or today plug in I installed causes problems?
No published safe mode. The Jornada 56x had a safe boot that ignored all programs in the STARTUP folder - you soft reset then when the blue screen came up, press UP on the joypad and hold the action button at the same time until the desktop comes up.

That seems to be a ROM thing that HP did. I have no clue if other devices have it. I am not sure I remember how I found out about the Jornada's safe mode. It certainly wasn't in the manual that I recall.

jefito
06-02-2005, 09:19 PM
Yes, to my knowledge, this can only be achieved by constantly polling the available memory size. That is, the operating system doesn't send a message (or "interrupt") your application if the memory becomes full. On the desktop Windows (and other, full-fledged operating systems), because of the virtual memory (swapping to HDD), this will never become an issue.


I find this statement to be somewhat quizzical. Virtual memory can and does run out on the desktop. Whan that happens, you don't necessarily get 'memory low' events, you get memory allocation failures. At that point, you either catch it and abort the operation and free up memory and then try again, or you abort the program, or you don't catch it and eventually crash r otherwise behave wierdly. The main difference here is that with the current versions of PPC's CE, the file storage space and program execution space compete for the physical memory that comprises them both, so when the file system fills up, the amount of memory available for program execution diminishes. That's usually not the case on the desktop (though again, it is possible, if the VM system is unbounded relative to the size of the disk, and can therefore chew up the disk space that it's based on).

The statement that CE is not a full-fledged operating system I also find puzzling. In what way is CE not a full-fledged operating system? In fact, what is a full-fledged operating system, and how does it differ from a regular OS?

GSmith
06-02-2005, 09:42 PM
Why doesn't Notes have an option to keep "x MB memory free" and stop recording when the device starts to run out of memory? To my knowledge, there isn't a single Windows Mobile application that has any options for the preservation and management of memory on the device.

Why is there so little attention paid to memory management on these devices? That's a question I have no answer for.

As a developer, I have struggled with this problem. This is exactly why my podcast downloading tool has integrated memory management.

There is an option in FeederReader for "Minimum RAM/Store (kB)" where you can select both the minimum RAM and the minimum Storage for FeederReader to keep on the device. When downloading podcasts and videocasts and other enclosures, FeederReader will stop downloading enclosures when either RAM or the Storage Card (where the Enclosures are kept, usually different than RAM) has this amount or less remaining.

Some developers do try to pay attention! And you now know of exactly one Windows Mobile application that has options for memory management ;-)

Greg Smith
Author, FeederReader - Pocket PC direct RSS text, audio, video, podcasts
www.FeederReader.com - Download on the Road

jngold_me
06-02-2005, 09:47 PM
I know the solution! Let's put a 4gb internal HD and equip all devices with a measley 32kb of physical ram. Then, let's use part of the HD as a cache area.

Oh, wait....dumb idea. :roll: 8O :lol:

Gerard
06-02-2005, 10:35 PM
Cybrid; he said in the OP that forgetting to re-configure button function during a recent setup of this device was a principal factor. I've lost track of how many times I've set up anew (or restoring from backup, as Sprite seems incapable of this one thing), only forgetting to enable the 'Enter' function of my Dell X5's D-pad in the Settings | Navigator Button applet. It's only when I reflexively press the centre of the D-pad to OK a dialogue somewhere and it doesn't work, usually two or three times in a row, that it again comes back to memory that this function was an after-thought for Dell with this model. So I can well understand forgetting to disable button power-up in suspend mode; though this function is one upon which I depend rather heavily, as I never use a case, so I never forget to set it up.

Sojourner got it right about how Microsoft seems awfully behind the times with their own OS. I started complaining in forums as far back as winter of 2000/2001 that they seemed not to understand the astounding potential of the PPC as a computing/multi-media platform. So many little bugs and omissions, hundreds of them, were patently obvious to anyone who actually used the devices. It seemed plain at the time that no one in a decision-making position at the company was actually a PPC user. And I don't mean just the top guy, who as everyone knows does not use a PPC because he doesn't need one, having umpteen personal assistants of the flesh-and-blood variety (besides a determined bias towards the tablet PC).

By forcing high-end PPC developers to accept the nonsensical, wishful-thinking notion of the "Dynamic Memory Allocation" and the "smart minimize" X, they are deliberately hobbling device functional efficiency. As anyone using a RAM-demanding app such as Pocket Artist knows, things tend to slow down a bit when such things are running in the background. Fortunately with version 3.0 of PA Conduits have introduces a slightly improved close function, which keeping their WM certifiability - tapping OK closes the current image or brings up the save dialogue. Tapping it again brings up an 'are you sure you want to exit?' box with an optional clipboard-clearing checkbox. Nice compromise, though three taps to exit instead of one is still unfortunate and smacks of hand-holding. GigaBar and other tools for closing things cannot overcome this, so for now we're stuck with Microsoft's notions of what's appropriate.

As Menneisyys suggested, I too use NoteM mapped to a button instead of Notes. Notes is a terrible recording application, and awful as a notepad too. And even if I didn't map the button I do to NoteM, it'd not make for this particular memory problem of accidental recording, as the X5's Record button is very difficult to press.... buried as it is under the rubber side grip and too close to the equally hard to press soft reset button. Using one of the front buttons for recording is a lot easier.

snayar
06-02-2005, 10:48 PM
I'm not questioning or anything, but I find this story a little hard to believe... :?

Don't get me wrong, Pocket PCs have some misses, but:

1. Unless the record button was kept pressed on for at least 2 to 3 hours... but in a purse? c'mon! women usually browse their stuff every 30 minutes or so, I think she could have noticed or at least inadvertently moved the PPC and release the record button.

2. I have pushed my MDAII (XDA2) to it's very limits and nothing bad have ever happened! (except slowdowns)... I know there are some devices with some problems, but a simple OS Upgrade sometimes fixes this unexpected Hard Resets... (I went from 1.60.00WWE to 1.72.00WWE to 1.50g.00WWE WM5.0)

3. Find Windows Mobile 5.0 that's rolling on the web and install it. I have yet to see an unexpected hard reset under WM5.0. But the ones performed on purpose by me, left all my data intact!!! :mrgreen:

Peace!

Cybrid
06-02-2005, 11:19 PM
I'm not questioning or anything, but I find this story a little hard to believe... :?

Don't get me wrong, Pocket PCs have some misses, but:

1. Unless the record button was kept pressed on for at least 2 to 3 hours... but in a purse? c'mon! women usually browse their stuff every 30 minutes or so, I think she could have noticed or at least inadvertently moved the PPC and release the record button.

2. I have pushed my MDAII (XDA2) to it's very limits and nothing bad have ever happened! (except slowdowns)... I know there are some devices with some problems, but a simple OS Upgrade sometimes fixes this unexpected Hard Resets... (I went from 1.60.00WWE to 1.72.00WWE to 1.50g.00WWE WM5.0)

3. Find Windows Mobile 5.0 that's rolling on the web and install it. I have yet to see an unexpected hard reset under WM5.0. But the ones performed on purpose by me, left all my data intact!!! :mrgreen:

Peace!
One: you must have a lot of RAM available for 2-3hours...of recording. about 30Mb free or more. Meneisyys could probably give you an accurate figure. A PPC with say 10mb free would consequently run dry in under an hour. Once pressed the recording will continue on it's own.
Two: Considering how I have somehow managed to do the same with older PPC's in my pocket.....It is not unbelievable.
Three. WM 5 is not out for everyone yet. Different devices require different ROM's and also not all devices receive upgrades.



P.S. Gerard, yes I was fully aware of the fact that she forgot to un/re-assign the button and hence the tragedy. My post was simply as a workaround in case anyone reading was not as smart or knowledgeable as many veterans (yourself included) here.
I can only hope she also had sprite and did not in this instance forget to configure it to automatically stop processes and backup when the battery went below a certain level. Mayhap a backup exists and all is not woe.

Been there. Done that. Lived to cry about it. :oops:

snayar
06-02-2005, 11:41 PM
I'm not questioning or anything, but I find this story a little hard to believe... :?

Don't get me wrong, Pocket PCs have some misses, but:

1. Unless the record button was kept pressed on for at least 2 to 3 hours... but in a purse? c'mon! women usually browse their stuff every 30 minutes or so, I think she could have noticed or at least inadvertently moved the PPC and release the record button.

2. I have pushed my MDAII (XDA2) to it's very limits and nothing bad have ever happened! (except slowdowns)... I know there are some devices with some problems, but a simple OS Upgrade sometimes fixes this unexpected Hard Resets... (I went from 1.60.00WWE to 1.72.00WWE to 1.50g.00WWE WM5.0)

3. Find Windows Mobile 5.0 that's rolling on the web and install it. I have yet to see an unexpected hard reset under WM5.0. But the ones performed on purpose by me, left all my data intact!!! :mrgreen:

Peace!
One: you must have a lot of RAM available for 2-3hours...of recording. about 30Mb free or more. Meneisyys could probably give you an accurate figure. A PPC with say 10mb free would consequently run dry in under an hour. Once pressed the recording will continue on it's own.
Two: Considering how I have somehow managed to do the same with older PPC's in my pocket.....It is not unbelievable.
Three. WM 5 is not out for everyone yet. Different devices require different ROM's and also not all devices receive upgrades.



P.S. Gerard, yes I was fully aware of the fact that she forgot to un/re-assign the button and hence the tragedy. My post was simply as a workaround in case anyone reading was not as smart or knowledgeable as many veterans (yourself included) here.
I can only hope she also had sprite and did not in this instance forget to configure it to automatically stop processes and backup when the battery went below a certain level. Mayhap a backup exists and all is not woe.

Been there. Done that. Lived to cry about it. :oops:

1. It depends on the recording format, not sure what's the default, but I always have GSM 6.10 8,000 Hz, Mono and on my ~30+ megs free (internal) I can go for hours. By the way, you do have to keep pressing the record button to keep recording!!! or press it once and then press the on-screen record button. Which can be very difficult (but not impossible) to press the buttons in sequence by accident.

2. On Jason's story he mentions XDA2 (Himlaya) same as mine, which has 128 RAM and it's still considered "recent" model, not old.

3. Even though WM5.0 is not freely available for any device, XDA2 (again, the device Jasons mentions in the initial story) CAN run WM5.0. Just Google it. :wink:

Jason Dunn
06-02-2005, 11:58 PM
I'm not questioning or anything, but I find this story a little hard to believe... :?

Why would I make this up? I have the hard reset XDA2 in front of me, and while I wasn't there when it happened, I can certainly attest to seeing the exact same thing happen in the past with a Pocket PC having a massive voice note and being completely unable to function.

Jason Dunn
06-03-2005, 12:01 AM
I can only hope she also had sprite and did not in this instance forget to configure it to automatically stop processes and backup when the battery went below a certain level. Mayhap a backup exists and all is not woe.

Oh yeah, it gets worse: I didn't have Sprite Backup installed. Know why? Because they have a bug, that seems to ONLY affect the Pocket PCs I look after, whereby after a restore the Exchange ActiveSync no longer functions and can't be fixed - only a hard reset will allow it to start working again after I re-configure it all from scratch. I've brought this up with Sprite Software three times over the past year or two, and they're always unable to duplicate it, even after getting accounts with the same hosted Exchange server that I use...it's utterly bizarre. So that makes the whole situation all the more painful. :(

Jason Dunn
06-03-2005, 12:02 AM
3. Even though WM5.0 is not freely available for any device, XDA2 (again, the device Jasons mentions in the initial story) CAN run WM5.0. Just Google it. :wink:

Why would I put something illegal on my client's Pocket PC? Come on, that's not a valid suggestion and you know it.

Cybrid
06-03-2005, 12:03 AM
[quote="Cybrid"][quote=SNayar]

1. It depends on the recording format, not sure what's the default, but I always have GSM 6.10 8,000 Hz, Mono and on my ~30+ megs free (internal) I can go for hours. By the way, you do have to keep pressing the record button to keep recording!!! or press it once and then press the on-screen record button. Which can be very difficult (but not impossible) to press the buttons in sequence by accident.

2. On Jason's story he mentions XDA2 (Himlaya) same as mine, which has 128 RAM and it's still considered "recent" model, not old.

3. Even though WM5.0 is not freely available for any device, XDA2 (again, the device Jasons mentions in the initial story) CAN run WM5.0. Just Google it. :wink:
1. Somehow I think it was at default. Even with the two button push or screen tap it is well possible.
2. I missed that. I mentioned doing that on older ones....as in once I had a Casio E-125 and had something similar happen. Once upon a time everyone was a newbie. It was a simple reminisce.
3. refer to 2.

snayar
06-03-2005, 12:07 AM
I'm not questioning or anything, but I find this story a little hard to believe... :?

Why would I make this up? I have the hard reset XDA2 in front of me, and while I wasn't there when it happened, I can certainly attest to seeing the exact same thing happen in the past with a Pocket PC having a massive voice note and being completely unable to function.

Sorry Jason, don't get me wrong. Is not that I don't believe that the XDA2 or any Pocket PC for that matter hard resets sometimes.

The only thing that didn't quite understand in the story is the fact that in order to have the PPC record voice until it "crashes" is to keep the record button depressed for quite some time. One click does not leave the recording running forever... :?

But yeah, Pocket PCs sometimes behave much like our desktop counterparts... But hey, even Apples and Palms crash too!!! ;)

Jerry Raia
06-03-2005, 12:41 AM
Have you all forgotten the "slider"? They DID put in memory management!
:lol:

snayar
06-03-2005, 12:49 AM
I would add that even though Microsoft didn't include a more robust memory management system on the Pocket PC, there are several commercial and free applications to handle everything, from IE Temporary files size and location to task (application) managers.

However, I agree that Pocket PC needs to have BETTER application/memory management built-in. :roll:

gorkon280
06-03-2005, 01:56 AM
Have you all forgotten the "slider"? They DID put in memory management!
:lol:

Ha hah....very funny.

Phillip Dyson
06-03-2005, 03:37 AM
[quote=SNayar]I'm not questioning or anything, but I find this story a little hard to believe... :?

The only thing that didn't quite understand in the story is the fact that in order to have the PPC record voice until it "crashes" is to keep the record button depressed for quite some time. One click does not leave the recording running forever... :?



I don't know about the XDA2 but my e830 takes 1 press to start recording, then another press to stop it. So I could happen with mine. But that aside, my girlfriend used to have problems with power running down because her PDA was in her purse pressed against something. So its possible.

pocketman
06-03-2005, 05:02 AM
Windows platform's memory management has been always weak. That's not only because Microsoft didn't pay enough attention to it, but also because of other programs which have been written to poorly and inefficiently use the memory.

What can you do about it?.... i guess the only one around it is to get a third party (Memory management) tool that is suitable to your usage and needs. Like, MemMaid, SpriteBackup, or many others.

As for the record button problem, I know that MemMaid can do cleaning on soft-reset. If that works, it would be really a life saver.

twpd
06-03-2005, 12:50 PM
Right on with the need to fix this, but why the dig on Pocket PC specifically? Does another PDA do this better?

Now, something like ActiveSync... that's something to give Microsoft some crap about. :twisted:

Yes. Psions are excellent at memory management. My old 5mx was capable of having upwards of 10 apps running at the same time with anywhere up to 40 odd files/documents open. Memory management on these devices was superb and rarely did I get a warning that RAM was running shrt but, when it did it would warn me and prevent additional apps from being opened. Also, it never crashed due to low memory. In this respect and in many others the Psions were and still are leagues ahead of WM and Palm devices.

Phillip Dyson
06-03-2005, 01:30 PM
Right on with the need to fix this, but why the dig on Pocket PC specifically? Does another PDA do this better?

Now, something like ActiveSync... that's something to give Microsoft some crap about. :twisted:

Yes. Psions are excellent at memory management. My old 5mx was capable of having upwards of 10 apps running at the same time with anywhere up to 40 odd files/documents open. Memory management on these devices was superb and rarely did I get a warning that RAM was running shrt but, when it did it would warn me and prevent additional apps from being opened. Also, it never crashed due to low memory. In this respect and in many others the Psions were and still are leagues ahead of WM and Palm devices.

Agreed. My first PDA was a Revo and my experience is similar. Unfortunately Psion just wouldn't innovate. :(

twpd
06-03-2005, 01:39 PM
Well you say that but, in 1993 they had a proper word processor package and a decent spreadsheet with excellent graphing functions. Windows Mobile still isn't there yet.

davea0511
06-04-2005, 03:19 AM
MS obviously thought about memory management. Isn't the whole reason for the "close button does not close" philosphy? :roll:

My thoughts exactly. It's form before function. It's a idealistic philosophical approach to design that Microsoft has engendered which precludes them from considering reality. In short, "it rubs them wrong" to add a TSR to manage something that in their mind shouldn't need managing. It's the ugliest face of idealism in the stark madness of bleak reality.

It makes me sick, and I want to puke.
:roll:

But when Microsoft is willing to come down from their ivory tower to provide real solutions for real people in the real world they sure can do amazing things. I wish they would more often.
:)

k1darkknight
06-04-2005, 09:46 PM
Let's put a 4gb internal HD and equip all devices with a measley 32kb of physical ram.
Okay, time for the 'ol standby of all computer quotes:

"No one will EVER need more than 640 kilobytes of RAM!" - Bill Gates

k1darkknight, aka...nahhhh...better give me the 2 TB drive...

k1darkknight
06-04-2005, 10:13 PM
Once upon a time everyone was a newbie.Hey, who you callin' a newbie! (points my walking stick at you) I'll have you know, when I was your age, I could reprogram a TOASTER from scratch!... (hesitating...looking around) Oh...eh...sorry, wrong board...

But hey, even Apples and Palms crash too!!! ;)Apples crash? I thought they just kinda crunched...

It makes me sick, and I want to puke.Okay, just watch where you aim...Bill "Money" Gates' shoes are over there. (pointing)

----------
k1darkknight, aka Old-Time newbie

(sorry folks...just had to toss these comments out there, but didn't want to waste 3 separate posts on 'em...lol)

SlipstreamSolutions
06-06-2005, 08:03 AM
Ok, so this is a blatant product placement...but we think mAutoArchive (http://www.SlipstreamSolutions.co.uk/products/mAutoArchive.htm) might have helped (maybe...a little).

It'll start to archive when the memory runs low (default set to 5 Mb).

Joanne

monocube
06-06-2005, 09:49 PM
You know my big gripe???
No Safe Mode!

Why is there no way to safely soft reset when the new start up app or today plug in I installed causes problems?
Hi guys,

Well I've developed something close to a Safe-Mode on the PC. It disables the Startup programs, allowing you to uninstall the buggy program.
Just do a normal soft-reset and keep pressing the Action key until you see a message saying the PDA is running in Safe Mode. You can then uninstall the buggy program, and perform a normal soft-reset. The Startup programs will be started again.

And of course, it's freeware. Check it out at www.monocube.com

Regards.

Gerard
06-06-2005, 10:09 PM
Okay, I'll bite. But a download link somewhere on your site would help. In Pocket IE and in NetFront I see three frames, one for donations, one with a site banner, and one explaining that you are a Romanian university student and developer and that this is your first public release. But it's not really a release until people can download it.

Or am I missing something because I don't have a connected PC and browser capable of viewing some special coding? I have only the Pocket PC, so perhaps if you're developing for PPC you'd consider making a PPC-friendly version of the site... I'm sure there are others in a similar situation, if not many.

monocube
06-06-2005, 10:14 PM
Well, the download link is there, on the SafeMode project page (where it says "download"). The link is not underlined, though. Anyhow, here it is, for your convenience :)

http://www.monocube.com/mCubeSafeMode.cab

EDIT:
I will work on a PDA version of the site tomorrow. I'm sorry, I'm not used to browsing from the PDA so I totally forgot about that.

Gerard
06-06-2005, 10:36 PM
I am sorry, and thank you for the extra effort. On looking at the home of the site I stupidly neglected to note the 'products' link in what I now see is the menu frame. The non-underlined link was not too hard to find once I got to the right frame.

Tapping the CAB link in Pocket IE gets me raw text, so I used MultiIE's tap&amp;hold and Copy Link Address, then EZDownload to grab the file. I'll do a fresh backup and try this out this afternoon. Thank you for offering this new freeware. Other programs, though not many, have offered things like holding the stylus on the screen during soft resets to disable, but to my knowledge no one has offered a button-mapped safe mode. This could be very handy when testing new Today or other system plugins!

monocube
06-06-2005, 10:56 PM
That's no problem. I'll also make a separate Download link in the menu for easier access.
The raw text could be due to the hosting's configuration. I'll look into that. At the moment, the Today plugins are not disabled in Safe Mode, but good idea, I'll make that feature tomorrow.

Thanks.

Jason Dunn
06-06-2005, 11:09 PM
The link is not underlined, though.

A hyperlink that isn't underlined?? I think Tim Berners-Lee would be very mad at you. :lol:

But thanks for making the cool app for the Pocket PC community. Feel free to email the news team (use CONTACT > SUBMIT NEWS) once you're app has evolved a little and you want to share it on a broad scale.

monocube
06-06-2005, 11:15 PM
:D
I don't like them underlined. But perhaps I will make a big-red-flashing image that says "download me now" (like in the old days, where you could see all sorts of animated gifs with "under construction".

I will submit it, once I have more feedback from you guys with further ideas.

Thanks for the support.

Gerard
06-07-2005, 12:57 AM
I did my backup and installed the CAB. Installed very fast, left no shortcuts nor other obvious traces. I then soft reset and within 0.5seconds pressed and held the Action button - first time this was with the centre of the D-pad of my Dell X5 running WM2003 (first edition). Didn't work. Wireless apps (in Startup, for my Symbol CF card) launched. So did GigaBar, another member of the \Windows\Startup group of shortcuts. And after the usual precautionary 10second delay SuperAlertSE also launched.

So apparently this did nothing. I then soft reset again, and this time engaged the Action function pressing the centre of the side toggle or scroll button firmly, also within 0.5seconds of the soft reset button press. Again, failed to do anything. A full minute pressing that, long after everything loaded, still no message pop-ups and everything launched as usual.

So I am guessing that this does nothing on a Dell X5 under WM2003, generally, though I could be mistaken. How about other devices? Anyone else trying this?

monocube
06-07-2005, 12:46 PM
I've updated SafeMode to version 0.2. I've added disabling of Today plugins. Instead it shows a blue "Safe Mode" screen. Please check the "How it works" notes on www.monocube.com for updated info.

Regards.

Jason Lee
06-07-2005, 02:50 PM
Wow, today plugins is just what i needed. Some times pocket plus decides it wants to have infinant hight. My ppc locks up as soon as the today screen loads. The onlything that has saved me has been the password screen. If i leave it at the password screen then sync it, explore the device and copy a shortcut for resco file explorer into the startup folder, then reboot. Then resco is displayed before the today page and everything is just fine. I can then open pocket plus settings and restore them from my settings back up and all is well after the next reboot.

I wish they'd fix what ever causes that.

Anyway this program will allow me to fix it on the go now! YAY!

How do you disable the today stuff and start up apps? Does the program just disable them in the registry and remove the shortcuts from startup folder or can you just block those things from loading without changing the settings? I won't install stuff on my ppc unless i know what it is doing. :) saftey first.

Gerard
06-07-2005, 04:56 PM
From an email while doing some debug version testing last night:

"The service DLLs should start earlier in the boot process than the links in the Startup folder."

No, it does not delete \Windows\Startup items. I've seen no damage so far with a couple.of versions. I'll test 0.2 now...

Jason Lee
06-07-2005, 05:01 PM
Thanks. I'll see if it works on my sx66 then. :)

If something like this could be done it makes me wonder why it is not built in by default. I dunno how many times i've had to hard reset or find strange work arounds to save my ppc.

Thank you for this app!! :mrgreen:

Gerard
06-07-2005, 05:14 PM
Okay, it's quite a bit different in v0.2. The main problem I experienced last night with a few versions was that pressing Action too soon on reset failed, usually but not always. To be sure of full safe mode, I had to count off a full 7 seconds, then press &amp; hold action.

That still applies. With my various startup items and plugins my X5/2003 takes just a little more than 14 seconds to reboot. Pressing action (either side or D-pad) and holding it down any time between 7 and 13 seconds works.

Now there's a blue screen notification instead of a Today screen, after a second reset triggered by the Nanocube app. Resetting normally now causes a second reset again to eventually return things to normal.

I don't mind having to count to 7, but it is not exactly intuitive. I'd like to see this universally installed, everyone should have it just in case of problems or a malware attack using startup loops or somesuch evil. In fact, I'd like to see Microsoft license it for the OS. But it'd have to be dead simple, without some devices needing specially timed delayed button presses.

Jason Lee
06-07-2005, 05:20 PM
eep. so that's 4 resets to get in and out of safe mode? hmm..
I can see rebooting after disableing the today plugins but they should be able to enable them without a reboot.. maybe not.. probably works better rebooting. :)

Gerard
06-07-2005, 05:28 PM
I'll take 4 soft resets over 1 hard reset in a blink. If one has a fresh Sprite backup in EXE format, a restore takes 2 or 3 minutes. If none, then it's a disaster to have a forced hard reset, especially if away from 'mother' - imagine a Today item or other plugin going strange while 3 days' travel from home!

This safe mode app is a lifesaver, period. Arrived late in the game, but I am grateful it has finally got here.

monocube
06-07-2005, 05:54 PM
Hello again.

First of all,
I would like to thank Gerard for debugging the app for me last night ;)

Now to respond to the questions:
- The SafeMode service is loaded by the system at "some point" - depends on system configuration. At the time it's loaded, it checks for the state of the Action key..if it's depressed, it initiates a second soft-reset, if not, everything goes on as usual. That's why it's impossible for me to know exactly WHEN should you press the Action key. Just keep it pressed until you notice the PDA rebooting again.
- SafeMode does not delete the links/programs in Startup. It just moves them temporary so they won't be launched by the OS.
- The Today plugins are just disabled from Registry.
- The "blue screen" - I'll change that to your preffered color if you want ;) - is then parented to Today window.
- Unfortunately I needed to make the "4 reboots" stuff, since the Today items are somehow loaded before SafeMode tries to disable them.

And now I've just updated it to v0.3...added some cosmetics...like on-the-fly-Landscape/VGA support.

Regards ;)

Gerard
06-07-2005, 06:18 PM
Pressing and holding earlier results in failure, no matter how long I hold, as this methods allows all items to load. 7 seconds is the minimum delay *before* pressing action. Pressing action and holding it starting anywhere between 7 and 13 seconds works for my Dell.

It seems that your app, or the device generally, is ignoring a too-early action button press. I don't know a way to confirm whether this applies in other circumstances. I'll test on my old iPAQ 3835 now... though it's PPC2002...

Nope, doesn't work at all there. The 3835 has a lot less installed and boots in 6 seconds. Tests from under 1/2 second to 5 seconds failed. But you don't claim PPC2002 compatibility, so no worries.

monocube
06-07-2005, 06:34 PM
That's correct, I didn't do it for PPC2002, for one reason: it doesn't have Services :)

Well...you could install a 3rd party Services manager, but I didn't do it yet. I'll leave that for later versions.

monocube
06-07-2005, 08:48 PM
Hello again,

I've made some changes to fix the timing issue. It now displays a message:
"Press Action to enter Safe Mode".
If you press it within 3 seconds, the device will perform a soft-reboot and enter Safe Mode.

check www.monocube.com for version 0.41

Take care all and thanks for support :)

Gerard
06-07-2005, 09:02 PM
NO more timing problem, no more press-and-hold required. Just a simple message on every soft reset, which the user can ignore or use as needed. This version brings Safe Mode to a 'finished' version in my opinion; all the functionality one needs and no-brainer operability. Very sweet. Takes me back to WordCommands in terms of both simplicity and small scale. Very nice. And so far no reports of serious bugs? No data lost because of this program? Wonderful.

It happens that a contract programmer for Microsoft joined our local user group last month... and I think he's showing up to the next meeting, next Wednesday. I wonder, should I ask if he can put a bug in the WM development team's collective ear and see about getting this licensed into WM5? Seems another obvious step, but perhaps my enthusiasm is not the popular sentiment. Opinions?

Jason Lee
06-07-2005, 11:00 PM
great idea. I have been playing with it on some new dell x30s we just got in here at work. I could not get it to go into safe mode. Never got the timming right. Now it is sooo easy! :mrgreen:

monocube
06-07-2005, 11:04 PM
So you first tested the version with the "timing" issue ;)
well, I couldn't have done it without Gerard, since I don't have an Axim, and it used to work from the first time on XDA2. But even better, now it looks geekish :P

monocube
06-07-2005, 11:08 PM
Could anyone submit this to News please? I'm not so good in publishing :(

Gerard
06-07-2005, 11:34 PM
I wrote up an overview and posted it in Brighthand's news and announcements forum, and also submitted it via PocketPCFAQ's 'submit' link. I suppose it'll be posted there later today once Chris gets time to have a look. I'd submit the same text here, only there doesn't seem any obvious way to do so...

monocube
06-07-2005, 11:38 PM
Thanks, Gerard. One small note. It's monocube not nanocube :D

Gerard
06-08-2005, 12:03 AM
YIKES! I have corrected the mistakes on Brighthand and emailed Chris DeHerrera about the same in my news submission. What a silly mistake. My apologies. I'd better get back to making mistakes in curly maple... a doublebass I'm making and can take full responsibility for when things go wrong.

Tye
06-08-2005, 01:32 AM
Boy, I step away from this thread for a few days and, BOOM!

Monocube, THANK YOU. Great app! And much needed by the PPC community.

I have tested it with my hx4705 and it works, but I just wanted to add a couple of comments/questions:
1. On the 4705, the text is cut off at the bottom. This is no big deal, but I thought you would like to know.
2. If used on a hx4705 with cursor mode on, I don't think there's anyway a user could use SafeMode because there's no way to press select. Reassign would be nice.
3. Could you get it to disable all but the stock SIPs too?
4. Will this program use any resources once it's done with the normal boot cycle? Or does the PPC not "clean its memory?"

Thanks, again!

Gerard
06-08-2005, 01:40 AM
Oh, an SIP question. That reminds me; has anyone tried this with password protection active? I've tried using a password, but find it just too annoying no matter how long I set the delay. Does Safe Mode cause any password issues for QVGA or VGA devices?

Jason Lee
06-08-2005, 05:34 AM
i have my sx66 set with a password. works just fine.

i like that it disables the sip. i have had those, or more so changing the default one, lock my ppc. stopping it from loading is good. there will be language issues if you try to selectively disabe all but defaults. i like it this way.

Gerard
06-08-2005, 05:56 AM
Ah yes, the old SIP swap hard reset. That one's fun. Did it to myself with Transcriber on a Casio E-115 back in the fall of 2000, playing with my first registry editor - Tascal's. I changed the default, then soft reset to test it, then found that the screen and buttons would not respond. Cute, especially considering that Activesync wouldn't let me synch databases so I had none on the PC to restore and the native Casio Backup application reported a corrupt backup file... Manually re-entering over 150 contacts is not fun.

monocube
06-08-2005, 09:00 AM
Hello all,

Thanks for suggestions. Plans for v0.5 include:
-disabling 3rd party services
-including a help file, for some users ;)
-look into the password/"MY INFO" issue

the SIP is not disabled yet, just hidden. plans for 0.6:
-disabling 3rd party SIP plugins
-reasigning the default key for safe mode, and add support for tapping with the stylus
-unload from memory in normal boot operations (thanks Tye)

Take care all

monocube
06-08-2005, 07:35 PM
v0.5 is done. check it out at my website :)

yankeejeep
06-09-2005, 07:40 PM
I have tried the latest release on my Toshiba e805 with no operating glitches at all. The 'blue' screen now fully occupies the VGA display and the only thing I noticed is that some of the text lines overprint each other. However, function is great and I tested it by removing an app I knew I could easily reinstall. This app is going to save so much frustration when a device gets locked into a start-up loop and we have an option other than a hard reset. Great work!

monocube
06-09-2005, 08:01 PM
Unfortunately I can't get the 2003SE emulator to work, so I just made the VGA version blind. By the way, how come you still have a blue screen? It should be the current theme background

k1darkknight
10-09-2005, 06:19 AM
Okay, I know this thread has been idle for a while, but...I just upgraded to the newest version of SBP Pocket Plus, and if I recall (I haven't had to use this feature yet, so I don't remember 100% for sure, but) it seems like they've added a 'safe mode' functionality with their software. But correct me if I'm wrong, and anyone knows for sure.

ctmagnus
10-09-2005, 06:26 AM
Okay, I know this thread has been idle for a while, but...I just upgraded to the newest version of SBP Pocket Plus, and if I recall (I haven't had to use this feature yet, so I don't remember 100% for sure, but) it seems like they've added a 'safe mode' functionality with their software. But correct me if I'm wrong, and anyone knows for sure.

That was added with version 3, which was released (according to my records) on or before July 19. It's kinda nifty; if you soft-reset twice within a set period of time, a safe mode pop-up pops up asking if you want to enter safe mode.

Darius Wey
10-09-2005, 11:41 AM
Okay, I know this thread has been idle for a while, but...I just upgraded to the newest version of SBP Pocket Plus, and if I recall (I haven't had to use this feature yet, so I don't remember 100% for sure, but) it seems like they've added a 'safe mode' functionality with their software. But correct me if I'm wrong, and anyone knows for sure.

To add to ctmagnus' comments, you can modify the Safe Mode settings by navigating to Start > Settings > System > Spb Pocket Plus > Safe Mode > Feature Options. From there, you can enable how Safe Mode should act, as well as disabling the feature altogether.

I suggest leaving it enabled though. It works great. :)

alextfish
02-26-2006, 02:29 AM
Sorry to resurrect this thread, but I have a problem. I installed this application on my WM2005 Phone Edition device, although it didn't seem to do anything. Then recently trying out a beta release of some other software (a SIP), I wanted to do a Safe Mode reboot, but naturally the option on reset has never been there. So I did it manually from the Programs item "Reboot in Safe Mode".

Now I have real problems, and repeatedly soft-resetting fails to deal with them. My device is unable to load the builtin Phone or Messaging apps, and unable to connect to the mobile phone network (the start bar status icon displays an exclamation mark indicating no service found). Also, MS Word won't start, none of the SIPs will display (even the default Keyboard), and selecting Start -> Programs doesn't do anything.

Thankfully I have Total Commander on my start menu, and using that, can navigate to the Windows Start menu. Most applications seem to start happily, just not MS Word or the phone, and the SIPs won't work (although the hardware keyboard does still work).

It seems to me that the Services must have got disabled, and aren't being re-enabled by resetting again. Can anyone tell me how I can confirm this? And if it is the case, how I can know what they should be, and how to restore them? Thanks for any insight at all - I'm feeling pretty helpless here!

Jason Lee
02-26-2006, 08:19 AM
Sorry to resurrect this thread, but I have a problem. I installed this application on my WM2005 Phone Edition device, although it didn't seem to do anything. Then recently trying out a beta release of some other software (a SIP), I wanted to do a Safe Mode reboot, but naturally the option on reset has never been there. So I did it manually from the Programs item "Reboot in Safe Mode".

Now I have real problems, and repeatedly soft-resetting fails to deal with them. My device is unable to load the builtin Phone or Messaging apps, and unable to connect to the mobile phone network (the start bar status icon displays an exclamation mark indicating no service found). Also, MS Word won't start, none of the SIPs will display (even the default Keyboard), and selecting Start -> Programs doesn't do anything.

Thankfully I have Total Commander on my start menu, and using that, can navigate to the Windows Start menu. Most applications seem to start happily, just not MS Word or the phone, and the SIPs won't work (although the hardware keyboard does still work).

It seems to me that the Services must have got disabled, and aren't being re-enabled by resetting again. Can anyone tell me how I can confirm this? And if it is the case, how I can know what they should be, and how to restore them? Thanks for any insight at all - I'm feeling pretty helpless here!

It sounds like you installed monocube's safemode and not Spb pocket plus, spb does not have a program shortcut to reboot to safemode while monocube's does. I do not believe monocube's version is wm5 compatible so it will probably really mess up your device.
Do you have a backup to restore from? I don't think there is a fix other than a hard reset. if you had a backup of your registry you might be able to restore just that. it kinda depends on how bad it really messed things up. it obviously disabled things and didn't get them back correctly. these safemode things scare me. they do things to your ppc that really shouldn't be done and if one little bitty thing goes wrong you are in big trouble. I know, i had a similar problem with an earlier version of monocubes safemode. had to hardreset and restore.

if you could find out what was actually changed in your registry you might even be able to manually reconstruct it... maybe find someone with the same device and compare the registries.

Gerard
02-26-2006, 08:55 AM
Monocube's SafeMode yanks all your \Windows\Startup shortcuts and puts them into a new folder at \Windows\DisStartup. Look in there, using TotalCommander since that's working for you. Select All then Cut the shortcuts and Paste them back into the Startup folder, then soft reset. If all is normal, great. You'll probably want to delete SafeMode.dll, SafeSettings.exe, then whatever else is left over like the .unload file, help stuff, whatever. That is, unless you can simply uninstall it, after copying out your startup items.

Jason Lee
02-26-2006, 06:57 PM
it also disables everything in \HKLM\services and all the SIPs. It sounds like none of the services or SIPs were reenabled. I'm not sure of the method used to do that, if the registry keys are copied, deleted, altered or what.

Gerard
02-26-2006, 08:03 PM
Okay, I reset into safe mode and had a peek into HKLM_Services, using PHM's regedit. I exported the entire Servvces key, in safe mode, then again back in normal mode, and put the text of both together in one file. I then moved blocks around so as to make comparison easy. The vafues are identical down to the last hex character, not a space nor a letter different. Services are not changed in the registry.

I didn't bother going into the SIPs. It's probably a simple thing like toggling the IsSIP values from 1 to 0. If removal of SafeMode stuff and reboot don't restore them, I'd just use Tillanosoft's Pocket Tweak to re-check them, or use any registry editor with a Find feature and search them out by name, then the up arrow to go from 0 to 1 in the value edit dialogue.

alextfish
02-27-2006, 12:44 AM
Thanks very much for your replies, Jasson Lee, Gerard. Yes, you're right, I installed monocube's Safe Mode, not realising it doesn't work on WM2005. Thankfully I have the WM2005 Total Commander, and so I can examine and edit the registry with that. I don't have a proper backup to restore from after a hard reset, because last time I looked neither Sprite nor the other PPC backup company had a working version for WM2005. I do have backups of the Outlook calendar data and all of My Documents, so restoring from a hard reset wouldn't be a total disaster, but it would be a big pain to go reinstalling everything.

My \Windows\Startup folder seems fully intact. I've taken a look in HKLM\Services and there are a bunch of things, but nothing that seems to relate to the phone mode. I don't suppose you happen to know where it puts the disabled Services? That doesn't matter quite so much, actually, because there is a guy I work with who has the same device and I can find out from him what the HKLM\Services registry tree should look like.

More vexing is the absence of SIPs. Do you know where they're defined and enabled? Is it a registry key somewhere?

Once again, many thanks!

EDIT: Hmm, I see, so the services aren't moved or changed in the HKLM\Services registry key. But they're definitely disabled somehow. Perhaps a different key somewhere? I don't suppose monocube described how it disables these things somewhere? I can't find it by googling. Maybe I'll have to get my workmate to send me a copy of his entire registry... :(

clbsvi
02-27-2006, 01:17 AM
This is a long and fruitful post. Good job, guys !!

This entry adresses one single problem.

Some of the writers above have listed complaints about their PPC's being inadvertently powered-on by having a button pressed by accident, in a pocket, purse or belt-case. On my HP iPAQ 2495 w/ WM5, there is a stylus-operated "Device Locked-Unlocked" icon which disables, via software, all pushbuttons except the "Power-on" button. According to the Today Screen Help menu, this is the exact purpose of this function.

Gerard
02-27-2006, 01:53 AM
This is from a WM2003SE device, so it may be different for your WM5.0 registry. Here are my SIPs, active and disabled:

Resco Keyboard Pro:
HKEY_CLASSES_ROOT\CLSID\{A070BE16-AD56-11d3-BC77-00C06C512035}

Microsoft's native keyboard:
HKEY_CLASSES_ROOT\CLSID\{42429667-ae04-11d0-a4f8-00aa00a749b9}

Letter Recognizer:
HKEY_CLASSES_ROOT\CLSID\{42429690-ae04-11d0-a4f8-00aa00a749b9}

Block Recognizer:
HKEY_CLASSES_ROOT\CLSID\{42429691-ae04-11d0-a4f8-00aa00a749b9}

Transcriber:
HKEY_CLASSES_ROOT\CLSID\{F0034DD0-2AD4-11d1-9CB0-E84BE8000000}

Here's what one looks like as a whole (pardon my edit). In this case it's disabled. Toggling the IsSIPInputMethod Default value to 1 would activate it.

[ H K E Y _ C L A S S E S _ R O O T \ C L S I D \ { 4 2 4 2 9 6 9 1 - a e 0 4 - 1 1 d 0 - a 4 f 8 - 0 0 a a 0 0 a 7 4 9 b 9 } ]
" D e s c " = " c r a p p y P a l m i n p u t m e t h o d "
@ = " B l o c k R e c o g n i z e r "
" A c c e n t s " = d w o r d : 0 0 0 0 0 0 0 0

[ H K E Y _ C L A S S E S _ R O O T \ C L S I D \ { 4 2 4 2 9 6 9 1 - a e 0 4 - 1 1 d 0 - a 4 f 8 - 0 0 a a 0 0 a 7 4 9 b 9 } \ I n p r o c S e r v e r 3 2 ]
@ = " m s i m . d l l "

[ H K E Y _ C L A S S E S _ R O O T \ C L S I D \ { 4 2 4 2 9 6 9 1 - a e 0 4 - 1 1 d 0 - a 4 f 8 - 0 0 a a 0 0 a 7 4 9 b 9 } \ I s S I P I n p u t M e t h o d ]
@ = " 0 "

[ H K E Y _ C L A S S E S _ R O O T \ C L S I D \ { 4 2 4 2 9 6 9 1 - a e 0 4 - 1 1 d 0 - a 4 f 8 - 0 0 a a 0 0 a 7 4 9 b 9 } \ D e f a u l t I c o n ]
@ = " m s i m . d l l , 0 "

Gerard
02-27-2006, 02:07 AM
Some of the writers above have listed complaints about their PPC's being inadvertently powered-on by having a button pressed by accident, in a pocket, purse or belt-case.

Just one more of the many reasons to love my Toshiba e800. Like any properly designed pocketable electronic device should have, it has a conveniently located harware switch on the side for locking all but the power button. No wasted battery power through accidentally and repeatedly launching applications, no damage to data through inadvertent deletions while in a bag or pocket. It's just so nice to at last be using suh a practical and well made PPC.

ctmagnus
02-27-2006, 07:07 AM
Some of the writers above have listed complaints about their PPC's being inadvertently powered-on by having a button pressed by accident, in a pocket, purse or belt-case.

Just one more of the many reasons to love my Toshiba e800. Like any properly designed pocketable electronic device should have, it has a conveniently located harware switch on the side for locking all but the power button.

My iPaq doesn't have the switch, but there's a software setting that does the same thing. I have no idea how I used my 3670 for so long without it.

Gerard
02-27-2006, 09:07 AM
My old Dell X5 had a Settings applet option for button disabling as well. I never used the function buttons to power on that device either. It'd be like starting a car by opening the trunk.