[Touch GSM ROM Development] dcd1182:
the source xip:

01f901fd - 01f901fd L00000000 Start: first DLL address
01f901fd - 01fdd000 L0004ce03 NUL
01fdd000 - 01feb000 L0000e000 initialized data of region_1 TrueFFS.dll
01feb000 - 01fec000 L00001000 initialized data of region_1 regenum.dll
01fec000 - 01fed000 L00001000 initialized data of region_1 pm.dll
01fed000 - 01fee000 L00001000 initialized data of region_1 mspart.dll
01fee000 - 01fef000 L00001000 initialized data of region_1 mencfilt.dll
01fef000 - 01ff0000 L00001000 initialized data of region_1 imgfs.dll
01ff0000 - 01ff1000 L00001000 initialized data of region_1 HtcFsdspy.dll
01ff1000 - 01ff2000 L00001000 initialized data of region_1 fsreplxfilt.dll
01ff2000 - 01ff3000 L00001000 initialized data of region_1 fsdmgr.dll
01ff3000 - 01ff4000 L00001000 initialized data of region_1 fatutilmdoc.dll
01ff4000 - 01ff5000 L00001000 initialized data of region_1 fatutil.dll
01ff5000 - 01ff6000 L00001000 initialized data of region_1 fatfsd.dll
01ff6000 - 01ff7000 L00001000 initialized data of region_1 diskcache.dll
01ff7000 - 01ff8000 L00001000 initialized data of region_1 devmgr.dll
01ff8000 - 01ffa000 L00002000 initialized data of region_1 crypt32.dll
01ffa000 - 01ffb000 L00001000 initialized data of region_1 coredll.dll
01ffb000 - 01ffc000 L00001000 initialized data of region_1 certmod.dll
01ffc000 - 01ffd000 L00001000 initialized data of region_1 ceddk.dll
01ffd000 - 01ffe000 L00001000 initialized data of region_1 cecompr.dll
01ffe000 - 01fff000 L00001000 initialized data of region_1 cachefilt.dll
01fff000 - 02000000 L00001000 initialized data of region_1 busenum.dll
02000000 - 02000000 L00000000 End: last DLL address

02000000 - 03df7000 L01df7000 NUL
03df7000 - 03e3e000 L00047000 Virtual base address of TrueFFS.dll
03e3e000 - 03e42000 L00004000 Virtual base address of regenum.dll
03e42000 - 03e51000 L0000f000 Virtual base address of pm.dll
03e51000 - 03e59000 L00008000 Virtual base address of mspart.dll
03e59000 - 03e69000 L00010000 Virtual base address of mencfilt.dll
03e69000 - 03e75000 L0000c000 Virtual base address of imgfs.dll
03e75000 - 03e7c000 L00007000 Virtual base address of HtcFsdspy.dll
03e7c000 - 03e86000 L0000a000 Virtual base address of fsreplxfilt.dll
03e86000 - 03e9c000 L00016000 Virtual base address of fsdmgr.dll
03e9c000 - 03ea0000 L00004000 Virtual base address of fatutilmdoc.dll
03ea0000 - 03ea9000 L00009000 Virtual base address of fatutil.dll
03ea9000 - 03ebc000 L00013000 Virtual base address of fatfsd.dll
03ebc000 - 03ec2000 L00006000 Virtual base address of diskcache.dll
03ec2000 - 03ece000 L0000c000 Virtual base address of devmgr.dll
03ece000 - 03f40000 L00072000 Virtual base address of crypt32.dll
03f40000 - 03fd7000 L00097000 Virtual base address of coredll.dll
03fd7000 - 03fe5000 L0000e000 Virtual base address of certmod.dll
03fe5000 - 03feb000 L00006000 Virtual base address of ceddk.dll
03feb000 - 03fef000 L00004000 Virtual base address of cecompr.dll
03fef000 - 03ffa000 L0000b000 Virtual base address of cachefilt.dll
03ffa000 - 04000000 L00006000 Virtual base address of busenum.dll
04000000 - 8c100000 L88100000 NUL

msxipkernel probably takes more space now and you need to make room for it.

also most of our xips have oem and ms nicely segregated, this one doesnt, so youll have to account for new modules sitting in weird spots initially. you need to move the new modules out of the way of your existing (oem) ones. xipport is erroring because you have a module at an address that one you inserted also sits at.

in the end youll save yourself future time if you arrange modules:

oem

oem

oem

oem

ms

ms

ms

ms

ms

it might be easier to visualize if you move the oemxipkernel folders out while you reloc msxipkernel modules. once you have them aligned at the end of the space, move oemxipkernel back in, and you might have to then back those modules off a little bit if there is overlap.