




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一步:準(zhǔn)備工具,提取 XIP.BIN(假定你已經(jīng)知道如何提取和寫入 XIP.BIN 了)XIPPort 的版本比較,建議用大小是 72,704 字節(jié)的版本。日期是第二步:解開 ATOM 的 XIP,WRITEMAP、BuildPkg(分類 xip):檢查你的 out 目錄,應(yīng)該長(zhǎng)這樣:其中,OEM 開頭的 File 和 Modules 目錄是要保留的。第三步:同樣解開一個(gè)更高版本的 ROM 的 XIP,我用的版 Build19580 的XIP。其中,WinCENLS_WWE 和 LangDB都可以不管(對(duì) ATOM 目前來說,沒用到 SYS 部分已經(jīng)包含了)第四步:文件替換新建文件夾為 at
2、om 19580 作為您的工作目錄將 atom 19900 的所有內(nèi)容拷貝進(jìn)去(Files 和 Modules),將 ATOM XIP 的 Files 和 Modules 目錄的 MSXIPKernel 和 MSXIPKernelLTK 都替換為19580 新的版本。第五步:嘗試 Reloc Slot0 和 Slot15.1檢查地址Undo 的意思是將剛才打好包的 MSXIPKernel、OEMXIPKernel 之類的文件夾里的東西重新直接移回到 Out 里。Realloc P 是重新計(jì)算各模塊的位置。WriteMaps 是將計(jì)算結(jié)果寫入到 MAP.TXT 里。小竅門:很多朋友在 Reall
3、oc P 這里會(huì)報(bào)錯(cuò)解決方法:打開 ROMHDR.txt修改 physlast:說,這樣就不會(huì)報(bào)錯(cuò)了.9AF08100 到 9FF08100 也就是加大物理地址結(jié)束點(diǎn),先加大再現(xiàn)在打開 MAP.TXT,會(huì)發(fā)現(xiàn)很多!,這是的地址。先看頭兩行位于Slot0 里的地址:01f901fd - 01f901fd L00000000 Start:01f901fd - 01fd3000 L00042e03 NULDLL address01fd3000 - 01fd4000 L00001000 initialized data of region_1 ceddk.dll01fd4000 - 01fe3000
4、L0000f000 initialized data of region_1 TrueFFS.dll01fe3000 - 01fe4000 L00001000 initialized data of region_2pr.dll01fe4000 - 01ff1000 L0000d000 initialized data of region_1 stratad_el_l.dll 01fef000 - 01ff1000 L00002000 !01fef000 - 01ff0000 L00001000 initialized data of region_1 regenum.dll 01ff0000
5、 - 01ff1000 L00001000 initialized data of region_1 pm.dll 01ff1000 - 01ff2000 L00001000 initialized data of region_1 mspart.dll意思是:01fe4000 - 01ff1000 L0000d000 initialized data of region_1 stratad_el_l.dll(region_1 stratad_el_l.dll 的 o321.o32_realaddr 從 01fe4000 開始,長(zhǎng)度是d000) 01fef000 - 01ff1000 L000
6、02000 !(這里兩個(gè)DLL 之間,了 2000 長(zhǎng)度的區(qū)域!)01fef000 - 01ff0000 L00001000 initialized data of region_1 regenum.dll(regenum.DLL 的 o321.o32_realaddr 從 01fef000 開始,長(zhǎng)度是 1000)5.2計(jì)算地址因此,SLOT0 里共缺了兩處 2000 的長(zhǎng)度。顯然需要將 regenum.dll 和 pm.dll 的 o321.o32_realaddr 移動(dòng)到合適的地方,可以看到,在 map 的開始01f901fd - 01f901fd L00000000 Start:01f
7、901fd - 01fd3000 L00042e03 NULDLL address這里有 42e03 的空間,完全可以放下regenum.dll 和 pm.dll 的長(zhǎng)度因此把regenum.dll 和 pm.dll 移到最前面.跟我繼續(xù)5.3Reloc 模塊1. 打開 regenum.dll 模塊修改 imageinfo.txt修改為2. 打開 pm.dll 模塊修改 imageinfo.txt修改為IMAGE.TXT 改完以后,還需要用 MReloc 修改模塊S00X:regenum.dll改為pm.dll改為5.4 檢查咱們?cè)儆肵IPPORT,Reloc P,WriteMAP。現(xiàn)在 MA
8、P.TXT 中SLOT0 和 SLOT1 看上去相當(dāng)?shù)暮椭C。沒有!了.第六步:修改 RAM 部分地址:80500000 - 80500000 L00000000 Start: start of RAM80500000 - 80506000 L00006000 uninitialized data of region_2 nk.exe 80506000 - 80561000 L0005b000 initialized data of region_3 nk.exe 80561000 - 80566000 L00005000 NUL80566000 - 80567000 L00001000 ini
9、tialized data of region_1 giisr.dll 80567000 - 80567000 L00000000start of RAM free space80567000 - 84000000 L03a99000 NUL84000000 - 84000000 L00000000 End: end of RAM這里看起來沒有!實(shí)際上有 2 個(gè) dll 被擠出 RAM 區(qū)域了.hd.dllosaxst0.dll要把他們叫回來哦80561000 - 80566000 L00005000 NUL 這里有 5000 的空間,看看 19900 的 map發(fā)現(xiàn)80561000 - 80
10、562000 L00001000 initialized data of region_1 hd.dll 80562000 - 80566000 L00004000 initialized data of region_1 osaxst0.dll這 2 個(gè)的長(zhǎng)度相加剛好 5000,可以放進(jìn)去哦.繼續(xù)修改hd.dll改osaxst0.dll改現(xiàn)在 WriteMAP80500000 - 80500000 L00000000 Start: start of RAM80500000 - 80506000 L00006000 uninitialized data of region_2 nk.exe 8
11、0506000 - 80561000 L0005b000 initialized data of region_3 nk.exe 80561000 - 80562000 L00001000 initialized data of region_1 hd.dll 80562000 - 80566000 L00004000 initialized data of region_1 osaxst0.dll 80566000 - 80567000 L00001000 initialized data of region_1 giisr.dll 80567000 - 80567000 L00000000
12、start of RAM free space80567000 - 84000000 L03a99000 NUL84000000 - 84000000 L00000000 End: end of RAM嘿嘿,他們回來了.這里還要繼續(xù)修改模塊 S000用 ue 或winhex 打開 hd.dll 模塊的S000,在上面的修改中可以看到,原地址是 80472000在 s000 中這些數(shù)值是倒過來排列的如: 00204780修改為 80561000既 00105680同理修改 osaxst0.dll 的 s000現(xiàn)在咱們?cè)儆?XIPPORT,Reloc P,WriteMAP。這 2 部分的修改就算結(jié)
13、束了!繼續(xù)檢查 map9ac00000 - 9ac00000 L00000000 Start:physical address9ac00000 - 9ac01000 L00001000 RomLDR.PARTHDR9ac01000 - 9ac80398 L0007f398 o32 region_0 rva=00001000 vsize=0007f398 real=9ac01000 psize=0007f398 f=60000020 for nk.exe 9ac50000 - 9ac80398 L00030398 !9ac50000 - 9ac5195d L0000195d o32 region
14、_0 rva=00001000 vsize=0000195d real=9ac50000 psize=00001960 f=60000020 for hd.dll 9ac5195d - 9ac52000 L000006a3 NUL9ac52000 - 9ac520a0 L000000a0 o32 region_2 rva=00003000 vsize=000000a0 real=9ac52000 psize=000000a0 f=40000040 for hd.dll 9ac520a0 - 9ac54000 L00001f60 NUL9ac54000 - 9ac5d624 L00009624
15、o32 region_0 rva=00001000 vsize=00009624 real=9ac54000 psize=00009624 f=60000020 for osaxst0.dll 9ac5d624 - 9ac5e000 L000009dc NUL9ac5e000 - 9ac5e2e0 L000002e0 o32 region_2 rva=0000b000 vsize=000002e0 real=9ac5e000 psize=000002e0 f=40000040 for osaxst0.dll 9ac5e2e0 - 9ac81000 L00022d20 NUL9ac81000 -
16、 9ac829d3 L000019d3 o32 region_1 rva=00081000 vsize=000019d3 real=9ac81000 psize=000019d4 f=60000020 for nk.exe 9ac829d3 - 9ac83000 L0000062d NUL9ac83000 - 9ac85448 L00002448 o32 region_4 rva=00083000 vsize=00002448 real=9ac83000 psize=00002448 f=40000040 for nk.exe9ac85448 - 9ac96000 L00010bb8 NUL9
17、ac96000 - 9ac9644e L0000044e o32 region_0 rva=00001000 vsize=0000044e real=9ac96000 psize=00000450 f=60000020 f 9ac9644e - 9ac97000 L00000bb2 NUL9ac97000 - 9ac97040 L00000040 o32 region_2 rva=00002000 vsize=00000040 real=9ac97000 psize=00000040 f=40000040 f 9ac97040 - 9ac98000 L00000fc0 NUL這里出現(xiàn)了錯(cuò)誤.這
18、個(gè)就比較麻煩點(diǎn),自己理解下把iisr.dlliisr.dllL00030398 !這里有 30398 的,現(xiàn)在將 hd.dllosaxst0.dll 下移 跟我繼續(xù),拿出計(jì)算器(16 位)9ac85448 - 9ac96000 L00010bb8 NUL 這里有 10BB8 的空間,計(jì)算 hd.dllosaxst0.dll 的空間195D+A0+2E0=B30110bb8因此可將 4 個(gè)地址移到下面的空位9ac50000 - 9ac5195d L0000195d o32 region_0 rva=00001000 vsize=0000195d real=9ac50000 psize=00001
19、960 f=60000020 for hd.dll長(zhǎng)度 195d9ac85448 - 9ac96000 L00010bb8 NULo320.o32_dataptr: P o320.o32_realaddr: P9ac52000 - 9ac520a0 L000000a0 o32 region_2 rva=00003000 vsize=000000a0 real=9ac52000 psize=000000a0 f=40000040 for hd.dll長(zhǎng)度 a0 9AC85448+195D=9AC86DA5改移到這里 改o322.o32_dataptr:Po322.o32_realaddr: PD
20、A5DA59ac54000 - 9ac5d624 L00009624 o32 region_0 rva=00001000 vsize=00009624 real=9ac54000 psize=00009624 f=60000020 for osaxst0.dll長(zhǎng)度 9624 9AC86DA5+A0=9ac86e45改o320.o32_dataptr:Po320.o32_realaddr: PE45E459ac5e000 - 9ac5e2e0 L000002e0 o32 region_2 rva=0000b000 vsize=000002e0 real=9ac5e000 psize=00000
21、2e0 f=40000040 for osaxst0.dll長(zhǎng)度 2E09AC86E45改=9ac90469o322.o32_dataptr:P o322.o32_realaddr: P現(xiàn)在WriteMAP,檢查 map9ac85448 - 9ac86da5 L0000195d o32 region_0 rva=00001000 vsize=0000195d real=9ac85448 psize=00001960 f=60000020 for hd.dll 9ac86da5 - 9ac86e45 L000000a0 o32 region_2 rva=00003000 vsize=000000
22、a0 real=9ac86da5 psize=000000a0 f=40000040 for hd.dll 9ac86e45 - 9ac90469 L00009624 o32 region_0 rva=00001000 vsize=00009624 real=9ac86e45 psize=00009624 f=60000020 for osaxst0.dll 9ac90469 - 9ac90749 L000002e0 o32 region_2 rva=0000b000 vsize=000002e0 real=9ac90469 psize=000002e0 f=40000040 for osax
23、st0.dll9ac90749 - 9ac96000 L000058b7 NUL可以看到這 4 個(gè)地址已經(jīng)按要求排列好了,呵呵,map 也沒有!了,和諧啊.現(xiàn)在看 map 最后9af07eec - 9af09026 L0000113a filedata 1f23b941-38f8-def5-83a6-b0a8eadaa267.dsm 9af09026 - 9ff08100 L040da NUL9ff08100 - 9ff08100 L00000000 End: highest physical address因?yàn)檎{(diào)大了物理地址結(jié)束點(diǎn) physlast:9FF08100為因此這里有大量的多于空間,要將物理地址結(jié)束點(diǎn) physlast:改為 9af09026+1=9af09027加 1 點(diǎn)點(diǎn)空間現(xiàn)在咱們?cè)儆?XIPPORT,Reloc P,WriteMAP。 9af04544 - 9af07ee9 L000039a5 filedata sysroots.p7b9af07eec - 9af09026 L0000113a filedata 1f23b941-38f8-def5-83a6-b0a8eadaa267.dsm 9af09027 - 9af09027 L00000000 End: highest physical addr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025辦公設(shè)備租賃合同
- 2025年環(huán)境、健康與安全工程合同管理協(xié)議范本
- 2025年馬鈴薯購(gòu)銷合同
- 《觸電事故的急救與防范》課件
- 《綠色建筑節(jié)能技術(shù)》課件
- 《黃斑變性病人的護(hù)理》課件
- 《我國(guó)投資環(huán)境分析》課件
- 《中華人民共和國(guó)勞動(dòng)基準(zhǔn)法》課件
- 《中國(guó)的文化遺產(chǎn)課件》課件
- 2025年百色貨運(yùn)資格證試題及答案
- 統(tǒng)編版語文六年級(jí)下冊(cè)第一單元“民風(fēng)民俗”作業(yè)設(shè)計(jì)
- 改革開放與新時(shí)代知到智慧樹章節(jié)測(cè)試課后答案2024年秋同濟(jì)大學(xué)
- 雙全日培訓(xùn)課件
- 甲油膠行業(yè)報(bào)告
- 醫(yī)務(wù)人員職業(yè)暴露與防護(hù)講課
- 山東省萊西市2024-2025學(xué)年高一語文下學(xué)期3月月考試題含解析
- 康復(fù)科人員崗位考核制度(3篇)
- 實(shí)驗(yàn)動(dòng)物生物樣本質(zhì)量控制規(guī)范
- 智能機(jī)器人配送行業(yè)現(xiàn)狀分析及未來三至五年行業(yè)發(fā)展報(bào)告
- 炎癥性腸病的外科治療
- 復(fù)變函數(shù)與積分變換課程教案講義
評(píng)論
0/150
提交評(píng)論