[MDA III, XDA III, PDA2k, 9090 Software Upgrading] Tuatara:
Analysis of the ROM ...

Hi logout ...

First off I have to say ... a nice job on the ROM ... and a very good initial go for ROM editing. There are a number of details in this ROM which you should address though, which would help a lot, and make for a good ROM release.

***

Definitely a 'good' ROM editing job and worthy of testing and debugging. From what I've looked at logout has done a reasonably comprehensive job on this ROM.

For everyone's benefit I'd better qualify what this ROM really is - the ratio of this ROM quoted is not quite right or 'fair' or 'accurate' ... to use those kind of words. There has been a LOT of work done - but the majority of it has been not on the core OS, but only on the added applications. So ... for this, it needs better explanation, so that you know what it's really running 'under the hood':

Core OS: (the bits which make it all go) It's 99% TuMa v1.4 ... the 1% removed from the core is the audio gateway / wave device, which is related to the BT Stack. Otherwise every other core element in the ROM is identical to TuMa v1.4.

Functional OS: (i.e. the programs which are in main use) It's about 80% TuMa v1.4, with about 10% replaced / restored XIP DLL's (unused ones) and about 10% (as CABs) from Ivan's.

Features: (the cool toys) 15% TuMa v1.4, 15% Himalaya, and 70% of Apps/Features Removed from the ROM. Cool!

BT Stack: 100% Widcomm Addition from Acer n300 ROM. MS Stack disabled.

Main Registry: 60% Himalaya, 15% TuMa, 15% Ivan

Boot Registry: 100% Tuma v1.4 (which will OVERRIDE anything which was done in the Main Registry by the way!!!!!)

***

Having the Boot Registry inconsistent with the Main Registry is what (indirectly) is saving this ROM. All of the performance boost elements I'd added into TuMa v1.4 (file system, XIP sections, modules, DDI spec, etc.) are controlled through the boot registry, and this has (luckily) not been changed. Because of this, the ROM is effectively using TuMa v1.4 as it's core for booting, setup, OS, filesystem, and display accelleration, as well as providing for the core OS functionality and speed.

This ROM is (almost) TuMa v1.4 without the baggage. There are a few performance things missing, but they are minor.

Basically ... not to put too fine a point on this - this ROM is TuMa v1.4 at it's core, without all the features which had been added. So, if this is FASTER than TuMa v1.4, it is due to the removal of the 'extra baggage'. If this is the case, then we can start to identify where things are slowing down, and what things slow down the OS for users. This is a VERY good test to have done! :-)

Using this ROM you can see how fast TuMa v1.4 really is underneath! Compare with other ROMs now ... just so you know. 8)

***

There are a number of comments I'd immediately make which would further improve this ROM, and correct a number of mistakes:

1). The display interface elements have been incorrectly specified. This thankfully is not leading to problems, due to the structure and default specifications which have remained in the boot and main registry, which still enable the correct default driver to be loaded. (*)

2). The DDraw, D3D, and D3DM portions rather than being left in the ROM and being left as XIP and only configurable as enabled, have now been used from Ivan's CAB - which is a large degradation in performance. To be honest, I don't know why they were removed?

3). The USSD Services have been removed for some reason. Unstructured Supplementary Service Data (USSD) is a technology unique to GSM. It is a capability built into the GSM standard for support of transmitting information over the signaling channels of the GSM network. USSD provides session-based communication, enabling a variety of applications. This means that the STK service and other direct phone communications services have NO HOPE of ever working on this ROM.

4). The Wireless Monitoring Service has been removed, and replaced with only a WLAN Manager. Not entirely sure why this has been done, but I guess it's a choice.

5). The Camera has been applied and integrated into this ROM. This does however mean that this ROM is NOT recommended for any SX66 users. You will experience the standard 'camera' problems initially, although you would be able to disable the Camera ... eventually as before using the old disabling CAB.

6). The MSN control panel was replaced with the same version, and VGA size bitmaps were used instead. I'm not sure why this has been done. Also, all MSN accounts have to be hotmail.com addresses in this ROM.

7). There is also no RAMDISK in this ROM, so there are no performance benefits from moving the PIE cache or Volatile elements into RAM.

8 ). Additionally the ROM has included the quantum timing improvements from TuMa v1.4, and the configuration fixes, but has not restored the 32Mb lost to the RAMDisk. So only 96Mb of RAM is available instead of 128Mb! Very odd. Was this an oversight?

9). The Widcomm stack has Licencing problems, since it has been integrated not as XIP modules, but as restored DLL's. I get the dreaded "Sorry! Bluetooth can no longer be used because the license is expired." message. *sigh*

10). The Power Applet has been replaced with one which gives a nice checkbox interface ... but the checkboxes are non-functional. Wrong control version (Himalaya has no WiFi, and BA has different Wireless requirements).

11). The 'odd' older incorrect registry settings for the TrueFFS driver have been used. There is no TrueFFS.dll driver available in the ROM, so an entire chunk of configuration is unfortunately still 'irrelevant' in it's own way. It doesn't affect operation though - thanks to the boot registry from TuMa v1.4 being unchanged. This is an ongoing mis-configuration issue in all ROMs since the original.

12). Your "welcomehead.96.png" boot screen/splash is incorrect. It needs to have support for landscape booting. You should fix this!

13). You don't need to include the dogfood provxml, unless you want the MS dogfood certificates installed. They're not required.

14). By restoring the original WMA files for the Ringtones, you're forcing the use of Media Player again, which will result in VERY slow rings - i.e. 3 rings before you hear one yourself.

(*) Tuma v1.4 first implemented this DDI accelleration method, and explicitly did so to achieve greater display performance. This ROM 'by accident' is achieving the same result, whether the 'DDraw_Acceleration.CAB' is used or not. This is because the file "ddi.dll" does not exist in the ROM! So the OS's only recourse during initialization is to use the "ace_ddi.dll" which was (thankfully) still specified as the currently defaulted DDI driver. Otherwise there would be no display!!!

NOTE: Because this ROM is effectively TuMa v1.4 at it's OS Core, the following caveats we identified for the TuMa v1.4 BETA release in using this ROM still apply!

- UPX'd Applications may be causing failures

- Power Manager Bug

- Odd ActiveSync Behaviour & non-communications

- Repllog fills the event reporting

- Interaction of AKU2 elements with AKU0 (repllog.exe Errors / ActiveSync)

- GWES subsystem / IE extensions (may lead to failures)

- Backlight Level/Flickering

- Battery Polling/Timing & Reporting

And the TWO real BIG problems which can lead to PIM data loss ...

- Optimization features to improve speed (Data issues / PIM corruption)

- Filesystem Respecification (FAT instead of TFAT filesystem specification)

I'm still tracking these issues down - but PLEASE if you're testing this ROM, let us know of any of the failures you may experience in the above elements.

***

Also, the Widcomm BT stack has been nicely integrated!!!

This is version 1.7.1.1429 (from a WM5 ROM not 2003SE) which is the one I had extracted from the Acer ROM - although this one used appears to be from a different source. Looking at it briefly it looks like the Widcomm BT elements have been correctly integrated, so I would be _VERY_ interested in hearing how the BT works for others on this ROM!

Obviously the BT shutdown bug is not present by using Widcomm, but I haven't had the chance to test all the profiles (Handsfree, Headset, Wireless Stereo, A2DP, Avrcp integration, Serial/GPS, etc.)

Otherwise, logout has done an excellent job of removing SmartDialer, VoiceDial, ClearVue PDF, Intellipad / T9, Dialpad, POOM, and all of the HTC extensions, Phone Skins/Panels/Controls/etc. and strangely a few other elements which I would consider 'useful' functions and important helpers (SimToolkit, USSD, etc.) ... but everyone has their own preferences. This really is a 'stripped' ROM.

1). The WLAN_MAN.EXE, SoftKey, SMS Alert Fix, Running Programs, file rather than being included in the ROM have been added as CABs.

2). WModem has been taken from Ivan's extraction of TuMa v1.3, and installed as a CAB, which was already contained in v1.4 in an improved form. Not sure why it wasn't just kept?

3). Various media file type support was removed (as per Himalaya types it appears), which eliminates Midi, WML, 3GP, AMR, M4A, M4V, MP4, WMLC and any of the HTC Source Filter extensions available. This means that playback for those file types are not available in WMP10 for this ROM.

4). Ring Tone Plugin Player has been removed which will prevent certain ringtones from being possible to use. However, this is probably a GOOD idea, since using anything other than WAV files will cause your BA to take 3 or more "real" rings before it plays the ringtone for you to hear.

5). WWAN Classes have been removed - not sure why.

6). Contact, notes, PIM integration and support has been removed - again, not sure why.

7). The Himalaya method of using PIE to open images has been used, instead of using the Image Viewer. Personal choice? Not sure.

8 ). SetSecurity was added to the ROM Control Panel, instead of leaving all security elements 'disabled'. The default settings are still 'disabled' by default and properly open, but this panel could serve to confuse users.

9). Strangely, the Widcomm BT settings were not integrated in the same way into the Control Panel ... but not sure - no real comment.

10). Error Reporting (and other annoying things) were left enabled rather than disabled.

11). Strangely the bluetooth context menu has been added everywhere, but of course the actual context menu itself is unregisterable for those applications. I'm not sure what was tried to be achieved here.

12). The Window Classes and hard-coded handles are in the registry for the buttons - I think this was an oversight - but these values are overwritten (thankfully) anyways on startup.

13). The Bluetooth Profile changer is still available in the registry for the Today screen, but the actual DLL isn't present anymore.

The downside to removing these items is that ALL features which were present before will now take up STORAGE SPACE on your device, since you have to install them as additional CAB files!

***

In summary ... to put it quite bluntly ... this ROM is effectively TuMa v1.4 without the features added, and without the extensions. With a bit of fixing as I suggest here, this ROM would be a VERY good 'base' ROM for general usage - by those who want to manually ADD everything to their ROMs.

NOTE: All of the BETA caveats/problems for TuMa v1.4 still apply to this ROM though!!!

A very fine job by logout though ... I think this ROM will be very appreciated by BETA testers! :D

A couple of questions:

1). When will we see a "Rev B" with the fixes I suggest here? You should revert the incorrect registry elements in the main registry to prevent problems though. If you want some help/info on this - just PM me!

2). Would you then be interested in updating / enhancing this ROM with the new TuMa v1.5 base, using the Widcomm Stack and your application / feature removal work? The changes I'm doing now hopefully will address the other issues I'm still researching / fixing from TuMa v1.4.

For any BETA testers ... please keep us up to date on your findings in this thread!