[Upgrading, Modifying and Unlocking] RayeR:
Here's some info from Oliver, maybe interesting for others:

> Did you analyze WM6 ROM? I'l like to try to customize it for me. Is it some way encrypted or packed?

I have some info on this. Windows divides the flash it uses into two parts (not

like normal partitions) one area for the main virtual block device (which it

calls DSK1) and one for the iPAQ file store virtual device (which it calls IPQ1)

. These areas of the flash are managed by a wear-leveling driver system which

does the erase, reading and writing and presents them to the rest of windows as

the virtual DSK1 and IPQ1 linear block devices. What gets written to these

virtual devices always goes within that area on the flash but the blocks are

reordered any amount by the wear leveling, so the data on the flash isn't in

the right order within either of the two block devices. There are some blocks

in the middle of the areas on the real flash which don't even appear in the

virtual devices, they are either for the ordering info or just unused (

presumably if bad blocks are detected there needs some spare space to put the

data. There is a program for winCE called WMStorage which will let turn the

iPAQ into a USB mass storage device and you can get the images of the virtual

devices from this. Be careful - people often think this is a flash backup.

The virtual blocks devices are then be divided into normal partitions. IPQ1

normally just has a single FAT partition but DSK1 has four. The first three are

something called ROMFS which appears to be read-only and compressed. The first

two appear to be winCE boot/kernel related and the third seems to contain the

winCE system files. The last is a FAT16 partition which contains all the files

you put on the system. The last ROMFS and the FAT16 partitions are kind of

mixed to form the file system you see in winCE, just with the read-only system

on the ROMFS and the read/write user stuff on the FAT. This is why you can't

copy/edit the system files under winCE. When you do the 'clean boot' operation

to windows, it just erases the FAT16 partition.

> BTW do you know anout the CF battery draw problem?

>...

The CF isn't driven by the CPUs onboard CF driver (which is odd, since it has

one) but by a seperate QuickLogic chip (see the wiki h/w page). I historically

had very little info on this compared to the main CPU so it was hard to write

the driver for. I do now have most of that info. The problems with power drain

are almost certainly due to the way that chip manages it's own power and power

to the CF slot. In linux I turn the chip off completely since I don't use it

but the whole system still drains about the rate of power you're describing

here while in standby (even without a CF card in). It is probably possible to

use the winCE HaRET code to put the QL chip in the correct state for low power

before suspending the iPAQ. Best way to figure it out would be to get a

voltmeter connected to CF power pin and play with the GPIOs and QL chip

registers in HaRET until you see the voltage drop. I can help with info here

but I don't have any CF cards or the time to do it myself.

RayeR is online now Report Post	Edit/Delete Message