PDA

View Full Version : Flashing ROM question.


jon_k
27-12-2007, 02:40 AM
Question about ROM flashes.

I'm actually an IT professional in the work related field, so any basics need not be explained. I am still new to Windows Mobile devices and would like to know what this means for my phone.

The way I view a "ROM" is as a firmware, or static programming on a chip. Maybe even a CMOS imprint. In this field, such things are semi-permanent at a component level. For instance, you don't download a .cab file to upgrade your bios (as many "ROMS" seem to come in .cab files), you boot your system on a floppy and run an application that flashes your CMOS with the new image.

What would we assume the "ROM" is on Windows mobile phones? Is it a chip hidden inside of the phone, separate from the primary memory? Is it simply considered all that is in the \windows directory? I don't see why .cab files can flash the ROM.

This leads me to the question, if you do a hard-reset, I assume there's secondary memory on the phone with the \windows folder and all the factory defaults. The memory must serve no other purpose other than to harbor these defaults in the need of a hard-reset. Does flashing your "ROM" also apply changes to this chip containing the default OS image?

bmueller77
27-12-2007, 04:09 AM
Hi, here a short description:

ROM:
The ROM is quite similar to a computers harddisk AND RAM (All-In-One), but the OS has to and additional software can be integrated via flashing and is therefor fixed. All data you flash will stay in the ROM after a Hard-Reset.
Some ROMs also contain a Bootloader-ROM and/or a Radio-ROM

Bootloader-ROM:
This is quite similar to a computer's BIOS

Radio-ROM:
The firmware to your PDA's built-in connection devices (e.g. GSM, Bluetooth, WLAN,...)

Hard-Reset:
A Hard-Reset is similar to a comlete reinstallation. Some computer vendors add a recovery CD/DVD to their products. On a Windows Mobile Device the Recovery-disc is integrated in the ROM and will be automatically installed during a hard reset.

And to complete this one ;-)...

Soft-Reset:
A Soft-Reset is similar to a cold restart of your computer. By the way, there's no possibility to "shutdown" Windows Mobile like you are used to with Windows XP or Vista.

Oh, and you cannot install a ROM using a cab-file. Cab-files are "executables" to install additional software. They can only be installed on the device. ROM's have to be installed from a connected computer (There's also a resolution to install a ROM from a Storage Card, but i am not used to it and cannot give you more information about this. But you'll find it, searching in the forum).

novellite2
27-12-2007, 04:19 AM
Question about ROM flashes.

I'm actually an IT professional in the work related field, so any basics need not be explained. I am still new to Windows Mobile devices and would like to know what this means for my phone.


Me Too.


The way I view a "ROM" is as a firmware, or static programming on a chip. Maybe even a CMOS imprint. In this field, such things are semi-permanent at a component level. For instance, you don't download a .cab file to upgrade your bios (as many "ROMS" seem to come in .cab files), you boot your system on a floppy and run an application that flashes your CMOS with the new image.


Yes, it is firmware on the chip, but like a BIOS, it exists after the phone is off, the battery removed, etc. The stuff in the cab files that you install doesn't. Well, let me retract that. The stuff in the cabs and your data stays there after a soft reset, and removing the battery (at least for a short while, YMMV), but my experience has not been that the data stays there after the battery is out for a while (again, YMMV).


What would we assume the "ROM" is on Windows mobile phones? Is it a chip hidden inside of the phone, separate from the primary memory? Is it simply considered all that is in the \windows directory? I don't see why .cab files can flash the ROM.



Yes, it is a chip. Most of the time, they don't use discreet transistors for these time of things. They are prohibitively large and expensive to solder together to make the memory, not to mention power hungry. :D
To answer your second question, if you peruse the various ROMs here, you will see the following:
Base operating system: This is a common denominator. This is Windows CE/ Mobile edition, WM6, whatever you want to call it.
Additional CABs: This is the flavor the chef uses in his/her kitchen to make the ROM do what appeals to them (and their audience). These can techniclaly be split out and individually installed if the cook puts them as a cab file that you copy to the phone and install from that file downloaded.


This leads me to the question, if you do a hard-reset, I assume there's secondary memory on the phone with the \windows folder and all the factory defaults. The memory must serve no other purpose other than to harbor these defaults in the need of a hard-reset. Does flashing your "ROM" also apply changes to this chip containing the default OS image?

What will happen when you hard reset is the ROM that was flashed to the phone will be as it was when you first burned it to the phone. Here's an example: You buy the Kaiser marketed as an AT&T Tilt on 1/1/08, use if for 6 months, and on 7/1/08, you hard reset it. It will be the same as when you turned it on for the first time.
Another case: You buy the phone on 1/1/08, and download a ROM from Dutty, or whomever, and you carefully follow the noob instructions (like I did), and flash it on 1/2/08. You do a hard reset on 7/1/08, and now the phone is the same as when it was last upgraded, so it will be the 1/2/08 version that it goes to.

Clear? :eek:

Hope this helps, and if there are others that want to correct me, please do so.

jon_k
27-12-2007, 06:33 AM
Fairly good explanations.

It makes a bit more sense now.

I'll post my new understanding of the control structure and functionality based on everyones post above. If you want to confirm, deny, or alter any of my perceived facts I'd appreciate it! I just like to know a basic understanding of the device functions internally so I can be educated when tinkering with things.

The radio ROM = ROM that controls the radio. Contains frequency ranges/broadcast tweaks for different locales, probably if tweaked can also allow illegal higher wattage transmission power. Some interesting (and surely FCC illegal) hacks are probably available here.

The device ROM - the upper level functions of the phone. Probably has support for the type of WIFI and bluetooth adapter you have. Has to have compatibility to interface with the radio ROM for phone functionality to be supported. Also is what interfaces with the GPS radio, probably the phone, links the keyboard to the OS, etc. Probably handles API between radio ROM and Windows mobile?

The Windows Mobile OS, which is the operating system itself. It communicates with the ROM, and is limited by what the ROM is limited by. Any .cab's or software retrieved here will enhance the OS, nothing more. A hard reset will bring the OS back to it's original state. (Though ROM upgrades remain.) Any cabs installed or changes to \windows in general made will be lost during a hard reset. It restores all content under \windows to it's default state.

Sounds about right with my new understanding. I think for now I'll avoid flashing the ROM. I'm pretty content with modifying the Windows registry hive since it can easily be restored with a hard reset if I bork up a registry key. Unlike the registry, a ROM if a member here misses something (I doubt they're working with much device documentation) a small coding mistake by them could ruin the phone.

Maybe I'll be more prone to start flashing ROM's if there's a way to extract the current ROM for my phone. Perhaps I can update the ROM through ATT or HTC, and use a packet sniffer to sniff the location (likely http URL) of the ROM file.

jon_k
27-12-2007, 06:57 AM
One further question though,

Until several minutes ago I thought the ROM simply contained device drivers, etc. Stumbled upon this post however.

Tool worked perfect on my AT&T Tilt. Just installed the HTC ROM. Much nicer than the AT&T ROM.

I'm now assuming the ROM contains the OS that is flashed on to the internal storage card as well, with it's own custom branding on the OS, own default application set, etc. As well as it's normal functioning with device communication etc. Is this safe to say this is how it works?

sirsycho
27-12-2007, 08:28 AM
One further question though,

Until several minutes ago I thought the ROM simply contained device drivers, etc. Stumbled upon this post however.



I'm now assuming the ROM contains the OS that is flashed on to the internal storage card as well, with it's own custom branding on the OS, own default application set, etc. As well as it's normal functioning with device communication etc. Is this safe to say this is how it works?

Yes jon_k,

The ROM contains the WM OS. That is what the cooks are changing primarily (more specifically, most of them change/add/delete the bundled apps that come as part of the shipped OSes). Most now are also expanding the RAM/storage portion of the ROM to allow for more usable storage. More and more cooks are also ripping out some of the MS bloat :).

You should do a hard reset and then force a soft reset before it does the device customization part. You will end up with a Tilt with none of the AT&T bloat (game demos and such). If you don't like it, hard reset again and let it finish.

If you get real adventurous you can install HardSPL and one of the cooked ROMs (or the HTC one).