I've attached 2 archives - make_hv.rar, a tool from Platform Builder that can be used to recreate .HV files (they contain default and boot registry), and imgfs_tools.rar - these tools should be used to edit WM5 IMGFS partition.
With these tools and http://forum.xda-developers.com/viewtopic.php?t=33321 (it can edit WM5 boot XIP partition) it is possible to replace/add/delete any file in WM5 ROM.
prepare_imgfs.exe Splits nk.nba into imgfs_raw_data.bin and imgfs_removed_data.bin. imgfs_raw_data.bin - contains raw IMGFS data imgfs_removed_data.bin - contains extra data (something like FAT table). Usage: prepare_imgfs.exe nk.nba [-nosplit] [-mpx200] [-acer] Use "-nosplit" for HTC Wizard and Universal ROMs that don't contain extra blocks of data. In this case imgfs_removed_data.bin would be empty. make_imgfs.exe Reverse of prepare_imgfs. Combines imgfs_raw_data.bin and imgfs_removed_data.bin into nk.nba file. Use -nosplit if it was specified for prepare_imgfs.exe. Usage: make_imgfs.exe nk.nba [-nosplit] The nk.nba file would be used as a template, its contents would be overwritten. viewimgfs.exe Dumps the contents of imgfs_raw_data.bin to "dump" subdirectory. Files are dumped as is, modules as directories. File time and attributes are preserved. If RecMod.exe is present in the current directory, all modules are reconstructed as working DLLs/EXEs and placed in the corresponding subdirectory. Tool creates dump_MemoryMap.txt with address ranges occupied by modules. Usage: viewimgfs.exe imgfs_raw_data.bin RecMod.exe Reconstructs a module dumped as directory to a working state. Rebuilds relocations information, and tries to guess section names. Usage: RecMod.exe [path to module directory] BuildImgfs.exe Reverse of viewimgfs. Reconstructs imgfs_raw_data.bin and imgfs_removed_data.bin from files in "dump" directory. Overwrites contents of imgfs_raw_data.bin/imgfs_removed_data.bin files. Does not check for errors or end of free space. Approximate free space left is displayed when program is finished. In case of error contents of bin files is undefined. Usage: BuildImgfs.exe It would overwrite imgfs_raw_data.bin/imgfs_removed_data.bin in current directory. DelFile.exe Deletes one file or module from imgfs_raw_data.bin. Wildcards are not supported. Usage: DelFile.exe filename.ext Uses imgfs_raw_data.bin from current directory. Does not check for errors. AddFile.exe Adds one file to imgfs_raw_data.bin. Would reuse space freed by DelFile. Usage: AddFile.exe filename.ext Uses imgfs_raw_data.bin from current directory. Does not check for errors. The typical process should be: prepare_imgfs.exe nk.nba viewimgfs.exe imgfs_raw_data.bin ...modify "dump" directory as you need... BuildImgfs.exe make_imgfs.exe nk.nba or prepare_imgfs.exe nk.nba DelFile.exe filename.ext AddFile.exe filename.ext ...you may add/delete as many files as you need... make_imgfs.exe nk.nba Of cause you'll need a tool to convert NBF<->NBA files. SD-card images can be also used instead of NK.NBA file, but this was not tested!
In case of invalid ROM the tools would crash without saying anything. In this case they may destroy the contents of input files.
Use these tools at your own risk! They may make your device completely unusable! Always make an SD-card backup of your ROM and Extrom!
The worst case I had during tests was complete destroying of DOC partition on my device. I had to flash WM2003 OS, repartition DOC from there and this fixed the device. Of cause this method cannot be used on Wizard or Universal.
I've published these tools so that someone could integrate BA patches into a ROM or play with cooking own ROMs.
edited 12.12.2005. AddFile/BuildImgfs should work on Universal/Wizard ROMS (i.e. roms with empty imgfs_removed_data.bin file).
edited 15.01.2005. Fixed a major bug found by TofClock. Short name of files with filename length 24 chars or longer (like "instmsgrresources.96.dll") was incorrectly generated and in some cases they were inaccessible by OS.
edited 05.02.2005. Added several checks so that viewimgfs.exe does not crash on incorrectly patched ROMs (MPX200). Don't use buildimgfs.exe on such ROMs.
edited 30.03.2006. Added RecMod tool that reconstructs modules dumped as directories to a working DLL. So reusing modules from other ROMs is now much easier. Added updated prepare_imgfs.exe with support of ACER N300 ROM (thanks to Tuatara).
edited 12.07.2006. Added source code of prepare_imgfs/make_imgfs tools, so anyone can add the support of new devices.
edited 25.10.2006. Published the source code on my site. The code is ugly and is not commented at all. Don't ask me how to compile or use it!
I've stopped working on this project. There would be no updates.
Complete source code is available on my site.