Is there any way around the WM5/WM6 emulator storage space limitations?!?! - Windows Mobile Development and Hacking General

This has come up many times in many forums, but still cannot find an answer.
We develop commercial apps for windows mobile. We would like to be able to use emulators for testing. I realize we cannot rely totally on emulators for testing and do need to test on real devices as well, but it would be very beneficial to do some testing without having to buy umpteen devices for every developer.
Currently we can only use emulators for PPC2003. The problem is that WM5 and WM6 emulators only allocate 32 MB for storage space on the device, which is ridiculous. My HTC Fuze has over 290 MB for storage.
32MB is not enough to store our application plus the database.
Before someone tries to tell me about MEMSIZE parameters and settings in visual studio to increase memory, that is RAM, not storage space. Microsoft seems to have made no provision for changing the amount of storage space.
You can of course set up a virtual storage card using a folder on your hard drive. The problem is that the driver is buggy and does not work correctly for storing a database. I have seen references to this bug in relation to SQLCE and SQLite and it also affects DB2E (the database we use).
So is there either:
- A way to get more than 32MB storage space (not RAM) in the emulator
- A fix for the virtual storage card bugs
This pretty much renders the emulator useless for serious testing.

Workaround using Ramdisk
I have found sort of a workaround that lets me do testing using an emulator.
If you go to this thread there is a discussion of a Ramdisk driver that allows for large ramdisks.
Unlike the previous ramdisk driver which would only give me 17MB of ram disk, with this one I could get up to a 127MB ram disk.
The original source of this new RamDisk is gone, but go to that thread you can download a zip containing the executable and dll but none of the other files.
I did some work and figured out the lnk files you need and attached them to this post.
The exe and dll go into \Windows
The Ramdisk.lnk goes into \Windows\Startup. The link I provided sets up a 64 MB RAM Disk. You can edit the text in the lnk file to change that.
The Ramdisk-Unload.lnk is used to unload the RamDisk.
The downside is that you lose the contents when soft resetting, but that is not often with an emulator.

I know we had some trouble with the storage size limitation as well because we use a large database, but creating the folder on the hard drive and using that as an "storage card" word. Although ours isn't a sql database, it's a binary one. We have noticed writing a lot to the "storage card" that is on the hard drive, tends to fail every once in a while, not sure why. But if you try again two seconds later, it works.
So beyond doing good try...catches and maybe having a retry method. As far as I know, there isn't a way of changing that.

Related

Please share your experience about using the Storage

I use the Storage to store some DLLs to save space. It works, not for all programs though.
Have tried installing programs to storage before (Journal Bar and Avantgo) but system seemed to be unstable afterwards.
Wonder if anyone has any good experience of storing and running other programs from Storage.
Also, has anyone tried installing the cab files from extended rom to Storage??? Is that possible at all???
RE
Yes, you can use Storage to store your cab files for the EXTROM.
BTW, program cab files for Storage and EXTROM are those that don't upgrade frequently otherwise you'll have to hard reset frequently too
Using Storage or Storage Cards should be avoided for anything on the today screen or anything which is bound to a hardware button. This is because the SD drivers take a little time to initialise when the device powers up and can result in files not being found - which can lead to small or big problems, depending on the nature of the 'missing' file.
This is why Pocket Plus cannot be installed in Storage any more and why Pocket Informant recommends installation into main memory. This is documented both by Spb Software House and WebIS.
I was beta testing SpbWeather and had some of the skins installed to Storage - whenever I used those skins, the plug-in was icon-less on power up, but main memory skins were fine.
As mentioned above, be careful selecting where to install Today Screen plug-ins.
As of the Storage, well I am not sure but I recommed you put in SMALL items in there since the storage becomes unstable at times because to OS may use a little of the Storage space to accomodate memory intensive applications like Adobe Acrobat. Correct me if I am wrong but this is what I understand about it.
Mvmajorem said:
As mentioned above, be careful selecting where to install Today Screen plug-ins.
As of the Storage, well I am not sure but I recommed you put in SMALL items in there since the storage becomes unstable at times because to OS may use a little of the Storage space to accomodate memory intensive applications like Adobe Acrobat. Correct me if I am wrong but this is what I understand about it.
Click to expand...
Click to collapse
Ther is so little storage there, why not just ignore it and use SD memory, or main memory where required?
I use storage to store my wma ringtones... haven't have the guts to move the DLLs yet. with regards to this... if i create a folder named Windows in Storage and move all my DLLs there would I need to hack into the apps individually ang make them look at this folder... or will the OS automatically look at both folders? Some people say to use systempath to do this.
bnycastro said:
I use storage to store my wma ringtones... haven't have the guts to move the DLLs yet. with regards to this... if i create a folder named Windows in Storage and move all my DLLs there would I need to hack into the apps individually ang make them look at this folder... or will the OS automatically look at both folders? Some people say to use systempath to do this.
Click to expand...
Click to collapse
As I know U have to hack the registry files of single appz to point in to storage folder instead in the main memory... :roll:
Regards,
Primoz
belfast-biker said:
Ther is so little storage there, why not just ignore it and use SD memory, or main memory where required?
Click to expand...
Click to collapse
It's 10% of the device's memory, that's not insignificant and certainly not worth wasting. I store 13.2Mb of utilities and etc. in Storage so that it frees up the same amount of Main Memory but permits me to use them when swapping cards. I think it's a waste not to use it.
Into my Storage i have install :
Resco keyboard pro
Laplink controller
Handymenu
Hottbutton plus
Phone today
Today phone pro
VIto voice dialer
Used space for all this 3.21 mb
Free space 4.31 mb
I Don't have any problem at all, my JAM works smoothly & stable plus the today plugins run faster than ever...
Try with no doubt ...

WM50 reduce storage memory and increase program memory - how

I have plenty of storage memory, but little program memory left. In prior Ce versions you could adjust the two by way of a slidebar.
How can this be dome on WM50?
Re: WM50 reduce storage memory and increase program memory -
alfazulu said:
I have plenty of storage memory, but little program memory left. In prior Ce versions you could adjust the two by way of a slidebar.
How can this be dome on WM50?
Click to expand...
Click to collapse
I'm assuming it changes as required, hopefully! I can have resco explorer, tcpmp, egress and IE all open with no hassle, and still take calls.
As explained several times in this forum, there is no way of doing this I'm WM 5.
The Universal uses two different ICs for sorage and program memory.
So unless you modify your motherboard, and rewrite the OS; it aint gonna happen!

compare WM03 and WM05: many problems and limitations

Dear All
I am very disattisfied from WM05 compares to my (XDA) WM03. I wish you can share some suggestions and advices.
PROBLEMS with Wizard T-mobile Vario (=Qteck 9100) and Windows Mobile 2005, version 2.17WWE:
1. Memory limitations:
Only 47 MB of Storage and only 44 MB for Program! Total 91MB
At startup, after hard reset, even with pressing soft reset within 3 secs, you have no more that 25MB of storage and 30MB of Program, very little!
It should be 128MB ram to 64MB rom, totale 192MB
Not only we are missing 101MB, what is worst is that the new OS don't let you allocate RAM or ROM
In my case some application (for example Chinese fonts) are heavy (8MB) and cannot be installed on mini-SD card. Simply you cannot choose, they install in main memory.
After a minium batch of required software are installed I end up with a super slow machine, with just 11MB Storage memory and 16MB Program memory
2. Memory cannot be re-allocated
I would be more that glad to get rid of most native applications (like intellidial, skype, etc). But it seems NOT possible.
Nobody was able to cook External ROM
3. TotalCommander
Even cooking external rom, what benefit?
By using TotalCommander it seems that cab istalled to external rom are very little in size.
So my question again: where is all the 192 memory gone? Who uses it, which programs? How can the OS be so large?
4. MS Contacts Problem
If you filter by using categories, the filter is NOT retained!
In wm03 it was (until next software reset, of course).
I mean if you filter using "business" categories, then you (without soft resetting) make calls, or do something else, at next time the filter is gone. You must re-select it
5. Installing application with Active Sync
Very funny: I have tested all my apps and they are ALL compatible with WM05. Also the software house confirmed to me.
Now look at Spb Backup V1.1.2. It is compatible to wm05, right?
Or Lingvosoft dictionaries 2006
Or Slovoed Dictionaries 2006
These sfw are fully compatible and in fact no problem with them.
But if you run low in memory (for example Storage free 15MB and Program free 16MB, like now) what happens is:
5.1 either the program install and then NOTHING appears in startup memu. Simply they are not there, even if no error messages appear.
or
5.2 the desktop active synct installation sees that your internal memory is too short and ask you where to install. You choose STORAGE CARD and INVARIABLY AFTER INSTALLATION THE RESULT IS: INSTALLATION IS UNSYCCESFUL!
Then you can free memory or erase previous software: YOU WON'T BE ABLE TO INSTALL THE FAILED APPS ANYMORE!, UNTIL YOU MAKE A FRESH HARD RESET.
After a fresh hard reset the application can be installaed without problem!
CONCLUSION: IF ACTIVE SYNC ASKS YOU WHERE TO INSTALL, THEN SURELY THE INSTALLATION WILL ABORT.
5.3 Active sync DOES not ask where to install the application.
The installation completes and then a message says: installation unsuccessful, because it WAS NOT digitally signed!?!
If this is the case, NO WAY to install the application, until next HARD RESET
After hard reset, the application may install and work flawlessy!
6. Installing application from mini-SD card
I tried with TomTom 5.21
Don't even start!
7. Zone Alarm
I still have to shut down Zone Alarm 6.1.744 in order to Active Sync to sync with Wizard. No way to accept the virtual LAN network. Do you know a solution?
8. OmapClock
how yo make omapclock to retain the new speed (say 240MHz)?
Sometime it will retain. Sometime after few minutes the speed reverts to 180MHz. I did not make any soft reset in between.
Please let me have your suggestions on some of these strange behaviours
Thanks and waiting
saulo866
any suggestions? Any solutions to these problems I mentioned?
I am c0nsidering to sell out my Wizard with WINDOWS MOBILE 2005, and look for an older WM03 model
Thanks a lot
Saulo
Memory problems: The whole concept of Storage and Program memory is removed in WM5, so most of your moans about memory are not valid when applied to WM5 - especially the part about allocating memory between storage and programs. Basically, now you have RAM, and Storage space - they are seperate, and unrelated. I suggest you read up on this major change in WM5.
4. True - a minor niggle though, in my opinion.
5. When I install by ActiveSync, I do not get asked by AS where I want to install the program (that's a WM03 thing) - I get asked by the device where I want to install it - and it either installs it in \Program Files or \Storage Card\Program Files - which is a major benefit, because before, if I wanted to install to Storage Card, it would often install just in the root of the card, which was invariably messy.
My suggestion to you is to keep a good chunk of your phone storage free so that the .cab files can be copied to the phone in the first place, from there you can decide where to install the program to. I can't believe you have that many programs filling up your phone storage that can't be moved to the storage card.
6. TomTom is a pile of nonsense, which was obviously programmed by idiots. It requires a number of hard-coded paths to be present. Install it to your phone, and the maps to the card, and leave it as it is, and you'll have no problems.
7. Add the ActiveSync network to your Trusted Zone, and make sure the 3 ActiveSync programs have full control in the Program Control section. See the MS website for more info.
8. Dare I say it, RTFM. There is a MASSIVE thread on OmapClock, where I'm sure you downloaded the program from in the first place. Try reading it before asking the same question that's been asked numerous times before.
saulo866 said:
8. OmapClock
how yo make omapclock to retain the new speed (say 240MHz)?
Click to expand...
Click to collapse
Search for "SmartSKey". Freeware. Works great together with OmapClock and does what you want. By switching the device on, it works with e.g. 252 MHz. Switching off = fallback to lower MHz. Great piece of software!
thanks to all for your kind ideas...
Any more suggestions?
Saulo
I suggest you sell your WM5 device and go back to WM2003. It seems most of your issues aren't really issues. I agree, RTFM.
Does anyone know how to:
1. make CC and BCC fields appear in TEXT messages? (SMS)
I found no hint in help file...
2. How to make filter on categories persistent? At the moment when you select filter, on, say, BUSINESS or FRIENDS, the filter disappear after you change focus on aother apps
Thanks and waiting
Saulo866

Using an SD card instead of ROM

As most of you probably know, the ROM of our PDA devices has a limited number of times it can be written to. This theoretical limit is roughly <1 million times. With Windows Mobile 5.0, the ROM of our devices is not only used to store the OS but also some of the more permanent information so that it doesn't get deleted should the battery run out.
I have read that this limit can be reached if the device is used intensely on a daily basis (http://www.eten-users.net/topic70 ) especially for web browsing.
My question is simple : in order to not use up the ROM capital of my Qtek ROM which to my knowledge can't really be changed, can I tell WM5 to use my SD card instead? Is there a program that allows you to do systematically do this? Is there a way of estimating the miles/kilometers of usage left the ROM?
Thanks
D.D.
I haven't really heard about this but there might be an option to store the browser's cache on SD. This would reduce considerably the amount of data that is written in the inbuilt Flash RAM (not ROM).
I read on a M$ blog that they "spread out" the read/writes to avoid this problem. The WM5 code is written to not keep using the same area of memory so that it does not "wear out" too soon. This way your device memory should last for years.
Found the blog entry - it's here: http://blogs.msdn.com/windowsmobile/archive/2006/06/07/621132.aspx
you can put anything related to the browser onto the SD
no option I'm afraid, you have to edit the registry. Search the forum for the keys.
See the wizard thread for a list of keys to change. I used the Mobile registry editor http://www.breaksoft.com/Blog/Utilities/2005/1/Mobile_Registry_Editor.aspx as it does it via Activesync, nothing to install on either device or PC.
There is also a util which will change the path to the SD card for you. I did it manually as I wanted to select the path on my SD card, all done and working lovely.

New reg-hack: MemHack. Pre-Alpha.

I fiddled around with my wm6'd hx4700 (thanks kuzuhara!) and a registry editor and found a way to make it regard SD as ram and xip from it.
This renders my device to achieve usage smooth enough i allow myself to reffer to the device as a mini-umpc^_^
For SD only atm, miniSD may or may not work depending on your devices driver. No MMC for the time being.
I sooooo hope this isn't old news
Here's to me not ****ing any of your devices up, it worked wonders for me.
P.S
IMPORTANT!
Delete the Program Files folder and reset again once you see the SD's been renamed to Program Files2.
On the next boot it'll mount as Program Files and everything will load from it.
Excuse me, my brains are stuck in google translator mode
4.11.2007
It seems i was rather in the wrong and am taking a whole new direction.
One which involves reading more carefully before i charge head into the guts of windows embedded.
Will take me a while until next post, and it might become hx4700 exclusive, but i promise you some cool stuff to come yet.
Anybody wanting to make their SD into Program Files to save space,
just start resco reg editor and change hklm\System\StorageManager\Profiles\SDMemory\Folder: Program Files.
(Originally is SD Card).
You can also try messing with it, making it into diffenent sys folders, just be careful
Mine is currently application cache (Volatile) and [email protected] Files.
(Running sweet with what i got to with the enablement of complete graphics accelaration, except for a minor hang up when returning from sleep).
Sooooooooooo...
ONLY DOWNLOAD AND APPLY THE CURRENT PATCH IF YOU KNOW WHAT YOUR'E DOING AND WANT TO GIVE BEATING ME TO IT A SHOT!
I'm hoping for a next release in a day, but not necessarily of this project but of an off-chute.
BTW, is it just me or is WM real *nix like?^^
anyone tried this ?
ranasrule said:
anyone tried this ?
Click to expand...
Click to collapse
Downloaded, but waiting to see what others think.
Want to know what it does to the SD card and device as the readme does say to move the devices contents of its program files folder to the sd card?????
downloaded it too. but i notice its his forst post.
Lol... it's my first post, sorry..
All it does is make the device call the card drive "Program Files" and set a swap file that's used as most device memory (don't worry, it's faster than most none-nand flash). i had to leave a small buffer in device memory though.
The memory file is unallocated, so just don't forget to leave 528MB free at all times.
Re-read the original post
It is and will be updated with periodic updates should they come.
I've been using it for 72 hours now.
It takes the odd reset to free up memory, but nothing worst than what we had before.
well if all thing got wrong.. anyway to revert it back?.. well ofcourse hard reset is one of it. uhmm.. lets put hardreset aside first..
well.. cant wait to test this.. i made a whole backup of my registry so if thing went wrong.. ill just restore the registry backup..
Good point doube_ofour.
Just export the StorageManager registry key before applying the changes, and if worst comes to worst restore your backed up original.
So, anybody else installed and can connect to tell the tale?
DuperMan said:
So, anybody else installed and can connect to tell the tale?
Click to expand...
Click to collapse
I made a cab with the regs and installed it But I'm still experimenting .. Nothing bad happened so far how do i know the device is faster ?!! how did you measured your device's speed ?
So let me get this straight -- it will use the microSD in my TyTN as RAM -- the icky sticky stuff I run out of because internet explorer, pocket player, and spb mobile shell grab it all for themselves?
Is there any way to specify how much of the SD card is used as RAM -- since I don't really need 1 GB of RAM on my device.
I saw your post about 558 MB free but didn't quite understand it. You also said you need the odd softreset to free memory? but why would you need to free up a few MB when you have access to hundreds?
But thanks for sharing with the community -- if this really does work out well for us, that's pretty freaking amazing.
@DuperMan
Does this hack simply make our "Storage Card" transform into "Program Files"?.. Thats it?.. cant see any speed improvement.. besides my memory usage increased by that means my device will perform slow..
My "Program Memory and Storage Memory" Stays the same as 47mb total on both memory..
Exactly Ragart!
Only it's set to use miniSD, i think you'd have to mess with it a little to make it work on miniSD... if response is good i'll make a mini version.
Remember - It's only been tested on wm6 hx4700!
double_ofour said:
@DuperMan
Does this hack simply make our "Storage Card" transform into "Program Files"?.. Thats it?.. cant see any speed improvement.. besides my memory usage increased by that means my device will perform slow..
My "Program Memory and Storage Memory" Stays the same as 47mb total on both memory..
Click to expand...
Click to collapse
in my case my program memory decreased by something around 10mb ! and I can't see any improvement in speed too ...
miniSD, hmm? Well that's the slightly-larger brother of my 1GB MicroSD. So I guess I'll just watch the thread and see others' reactions before I try anything (though I do have fullbackups)
Thanks for the quick response. So how much RAM does your hx4700 'have' now? and did you set it to 558 extra for a reason? Just curious questions from a person who doesn't understand the intricacies of reg editing
@doube_ofour:
Use it for a while, constant usage should be smoother. Did you free the space up by deleting the old Program Files as well?
Use it to surf for a while, multiple windows style, and you'll notice the difference.
Also, don't be mean to my hack Don't load it to spite, wait for each app to load and keep on starting apps without (majorly) worrying about a system crash.
@hma4:
The age old method of feel
It doesn't boost anything per say, but your device shouldn't be as compaction ridden as it was, so less mem degradation over time=more time between resets under heavy work loads. and i mean heavy. also, multi-tasking is MUCH more usable.
@ragart:
I set it to have a 512Mb paging area on the SD, plus 512kb in main for caching and another 16Mb for caching on SD, so that's a total of 528.5Mb overall mem, 16.5Mb cache and half a gig paging (good for them internet chaches etc..
i check on the registry that u have made in ur reg hack. seems like all the folders etc is the same even for a miniSD card ... so do u think it will work on miniSD too?

Categories

Resources