Quote:
Originally Posted by dcd
ive attempted to boot my titan using the kaiser's and the hermes' xip with no success. My understanding was that we cannot modify the xip or its contents without manual table editing. what is IDA, and if the xip from the kaiser would suffice, why would any modification of it be necessary?
if you can point me in the direction of where to get started with 'moving memory spaces around' i am willing to put the time in to do the editing by hand. glad to see someone respond with more knowledge than myself about porting from another device.
|
If you're interested in messing with the XIP section, check in and around XDA-Developers - if you're cooking your own roms, you've probably done this much already. You should know how to hexedit - and probably know some assembly. x86/CISC type assembly should be enough to get you by, but arm assembler knoweldge would be helpful. (note: ARM is 4-byte word aligned, 32 bit! - LITTLE ENDIAN!)
some background - if the DLL is XIP, CE guarantees it will run at a certain load address, so theres no point in putting the base relocation table in the dll when the image is built. When you extract the XIP sections, the files just contain the actual code - the DLL expects to be run from a certain location. You need to recreate this table and such so the DLL gets loaded at the right addresses (or loads stuff from the right addresses!)
Theres a document that describes this somewhere - i think i can find it for you if you're still interested. Oh yeah, IDA pro is a disassembler.