→ q0212908:從3/9就一直說只剩破解sysmem.prx 現在卻還沒破QQ 05/06 16:01
※ 編輯: q0212908 來自: 112.104.80.50 (05/06 16:03)
推 superprada:先破 GOD EATER吧 05/06 17:48
推 ninjaxin:先破6.20吧 05/06 19:01
推 andyleeyuan:GOD EATER+1 05/06 19:10
推 p587868:GOD EATER+1 05/06 19:19
→ pocketwolf:the show 10辣,我已經被umd的讀取搞瘋了 太慢了 05/06 19:46
推 kocw:THE SHOW 10 +1 05/06 19:47
2010-05-06 22:25更新
=================================================
所有函數都被解析,記憶棒保護也被解除,可就是進不了游戲…………
山窮水盡疑無路?
如果一直不能破解,我將把全部的研究成果公開,希望下一個勇者能繼續挑戰。
=================================================
※ 編輯: q0212908 來自: 112.105.217.128 (05/07 05:50)
推 mimicMouse:說真的 不出PSN真是高招 看看隔壁棚MGSPW就知道了 05/07 13:21
推 JOKERMA:真的呢 沒出PSN 還沒破解 有出PSN版 馬上就被破解 05/07 15:15
→ JOKERMA:真為MGSPW遺憾www 05/07 15:15
推 hitsukix:先破KHBBS!!! 05/07 23:24
國人破解王國之心最後文件解決 禁止記憶卡仍在作祟
http://psp.duowan.com/1005/137248131606.html
昨天為大家報道了國人liquidzigong(同時也是讀書軟件xReader的作者hrimfaxi)
已經將《王國之心 夢中降生》的破解進行到了最後一步,
而今天又有了最新的進展!
昨天說的sysmem.prx問題已經得到解決,
然而目前發現游戲還是不能正常運行,
最終作者確定了這個問題果然還是因為「禁止讀取記憶卡」功能所導致,
而前面日本人放出針對該機能的補丁其實是沒有用處的,
這意味著需要重新對該功能下功夫,現在看來距離我們玩到這款大作,
還需要更多的一點耐心。
--
結果.....又回到原點................什麼阿~ 翻桌
2010-05-08 14:23更新
=================================================
其實破解就像抓罪犯:
現在我的5.03FW:
缺失函數補完了
記憶卡保護解除了
哪還有什麼馬腳會可能洩露呢?
唯一的犯人就是:解密后BBS1/2/3.dat文件比源文件更小。
如果SE把文件大小檢查一下的話,就有可能發現有馬腳!
果然!
看了下DiscInfoBind程序發現SE有記錄BBS1/2/3.dat文件的
真實大小和文件創建時間,說不定就是這裡有鬼!
=================================================
恩,還保存了BBS1/2/3/.dat 的第一個LBA地址
=================================================
已經寫出程序獲得BBS1/2/3.dat的SceIoStat信息了,
已經獲得破解版的信息,正在復製原版到ISO目錄,準備對比下有什麼不同
慘劇,還是老樣子
插件欺騙程序工作正常,連我的測試程序都能騙過,可還是老樣子- -
myIoGetstat: disc0:/PSP_GAME/USRDIR/BBS0.DAT
myIoGetstat: disc0:/PSP_GAME/USRDIR/BBS1.DAT
Cheat BBS1
myIoGetstat: disc0:/PSP_GAME/USRDIR/BBS2.DAT
Cheat BBS2
myIoGetstat: disc0:/PSP_GAME/USRDIR/BBS3.DAT
Cheat BBS3
myIoGetstat: disc0:/PSP_GAME/USRDIR/BBS4.DAT
可以看到BBS1/2/3.DAT已經在欺騙了。
如果大家發現了能進游戲主界面的EBOOT.BIN請務必傳我一個
=================================================
一些新的懷疑:
是不是用到了sceIoOpenAsync?
sceIoOpen的標志是否都正確?
還有個疑點: Kernel_Library_37431849這個函數。
在YSF中沒有用到,在KHBBS中被用到。
YSF和KHBBS都有用它所在的PRX:
usersystemlib.prx,
然而YSF只用到比較簡單的:
Kernel_Library_A089ECA4,
Kernel_Library_1839852A,
Kernel_Library_293B45B8。
這幾個函數只用幾行指令,非常簡單,當然沒有它們的話是不要想玩游戲的。
YSF補丁就是用620的PRX補全了這三個函數,才讓大家開始游戲的。
而Kernel_Library_37431849,在KHBBS的0x088c2cbc被調用,
奇怪的是0x088c2cbc這個地址卻沒被任何靜態地址所調用。
值得注意的是,
出錯線程AsyncFileAccess主要使用函數指針數組而不是靜態地址調用函數。
看來要多加關注。
會不會是Kernel_Library_37431849不能用簡單的PRX替換法?
還是usersystemlib_620.prx必須先與usersystemlib_5XX.prx運行?
提示:
Kernel_Library_37431849和503裡的Kernel_Library_DC692EE3,很相似。
我現在在加班,下班後才能開幹。
===================================================
我明白了!
Kernel_Library_37431849是個嘗試信號量是否可用的函數,
SE的判斷是只要返回不是0x800201c4就認為信號量可用。
然而可能Kernel_Library_37431849並沒能成功,
返回了不是0x800201c4的其他錯誤值。
結果程序就錯誤認為信號量可用,所以在多線程環境中就出錯了……
晚上回家去試試看。
================================================
現狀:
KHBBS缺失的函數所在的PRX:
usersystemlib.prx (在懷疑這裡...)
utility.prx(這個已搞定)
sysmem.prx(已經確定沒影響?相似的鋼鐵俠2同樣能運行)
記憶棒封堵問題應該是解決了
思路:
如果我們讓5.XX固件和6.20固件一樣,擁有完全一樣的API接口,
完全一樣的功能,各種程序內外環境完全一樣,
並且想辦法讓SE察覺不出資源數據文件發生了變化。
那一定不用到處修改游戲程序而成功運行。
因為6.20畢竟也要兼容老游戲,API接口一樣,功能卻發生變化的情況畢竟很少。
比如YSF只缺了三個簡單的函數,經過補全6.20 PRX后就可運行了。
現在就要關注下
usersystemlib620.prx的最后一個函數Kernel_Library_37431849是否真的可用。
liquidzigong在2010-05-08 14:23重新編輯
--
不要問我 我也看不懂作者在說什麼.....
簡單說遇到貧井了
※ 編輯: q0212908 來自: 112.104.211.173 (05/09 03:53)
===================================================
[ 此貼被liquidzigong在2010-05-09 22:59重新編輯 ]
我寫的usersystemlib補丁甚至能讓YSF正常運行。
然而KHBBS出錯還是如故。
不過我還是成功修復了一些函數,
已經不需要userlibsystem620.prx了。
輕量級信號量已經正常了。
但是AsyncFileAccess線程還是會出錯。
===================================================
經過艱苦調試後發現,
AsyncFileAccess線程在讀取已解密文件BBS3.DAT後,馬上死機。
這是說明解密文件不正確嗎?
還是有其他的問題?
===================================================
缺失NID已經完全被修復:
0x180F7B62 [0x08B249BC] - sceUtility_180F7B62
0x24AC31EB [0x08B249C4] - sceUtility_24AC31EB
0x32E32DCB [0x08B249DC] - sceUtility_32E32DCB
0x4AECD179 [0x08B249F4] - sceUtility_4AECD179
0xB57E95D9 [0x08B24A4C] - sceUtility_B57E95D9
0xA089ECA4 [0x08B24E0C] - Kernel_Library_A089ECA4
0x1839852A [0x08B24E24] - Kernel_Library_1839852A
0x293B45B8 [0x08B24E34] - Kernel_Library_293B45B8
0x37431849 [0x08B24E3C] - Kernel_Library_37431849
0x35669D4C [0x08B24EB4] - SysMemUserForUser_35669D4C
這些NID已經完全被解析,如果GEN隊沒有保留什麼我們應該已經玩上游戲了啊?
===================================================
看了看噬神者的情況:
1. 缺失NID
2. 數據文件加密
3. 自修改代碼,有許多Sync Break指令像地雷一樣多
4. 真正的模塊藏數據文件裡
算了吧,我們還是回到破解KHBBS上吧。我靠你NAMCO!
===================================================
已經在聯系國內外破解高手一起攻關KHBBS。
[ 此貼被liquidzigong在2010-05-09 22:59重新編輯 ]
※ 編輯: q0212908 來自: 112.104.136.231 (05/10 01:44)
推 coffee1205:只能說...太厲害了!加油~ 05/10 10:40
推 enix625:已經進intro畫面了!! 05/10 23:18
[ 此貼被liquidzigong在2010-05-10 23:49重新編輯 ]
===================================================
1. 解密文件是否解密正確?
2. 解密文件打入ISO的方法是否合適?
3. 能不能更接近死機現場?
===================================================
能進Intro了,但在主菜單顯示之前死機
===================================================
Exception - Bus error (data)
Thread ID - 0x0473071D
Th Name - user_main
Module ID - 0x032BE735
Mod Name - MainApp
EPC - 0x088DE868
Cause - 0x1000001C
BadVAddr - 0xFFFBF5FF
Status - 0x60088613
zr:0x00000000 at:0xDEADBEEF v0:0x00000000 v1:0x00000000
a0:0x00000000 a1:0x000000FF a2:0x08B09C08 a3:0x00000000
t0:0xDEADBEEF t1:0xDEADBEEF t2:0xDEADBEEF t3:0xDEADBEEF
t4:0xDEADBEEF t5:0xDEADBEEF t6:0xDEADBEEF t7:0xDEADBEEF
s0:0x00000000 s1:0x000000FF s2:0x00000000 s3:0x09BEFCF0
s4:0x09F20000 s5:0x08B20000 s6:0xDEADBEEF s7:0xDEADBEEF
t8:0xDEADBEEF t9:0xDEADBEEF k0:0x09FFFB00 k1:0x00000000
gp:0x08BCA930 sp:0x09FFF530 fp:0x09FFFA90 ra:0x088DE78C
0x088DE868: 0x8C840000 '....' - lw $a0, 0($a0)
高度懷疑sceKernelCreateLwMutex是不是元凶。
[ 此貼被liquidzigong在2010-05-10 23:49重新編輯 ]
※ 編輯: q0212908 來自: 112.104.4.160 (05/11 02:22)
→ q0212908:感覺真的再重走一遍破解bbs的路 05/11 03:14
→ q0212908:之前明明也可以進入了阿 只是不能玩...... 05/11 03:14
推 iomk0525:要看懂他破解的東西 需要具備什麼知識呀..我完全看不懂@ 05/11 09:55