討論區快速選單
知識庫快速選單
Excel也能做到大數據分析? 討論區最近新進100則主題 政府補助!學嵌入式+物聯網
[ 回上頁 ] [ 討論區發言規則 ]
Real Mode Debug
更改我的閱讀文章字型大小
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/19 下午 12:15:21
目前在Trace一個只能在Real Mode下跑的程式,這程式無法在Protected下執行
所以建立了一個Ms-dos 6.22的VM,想要盡可能減少其它的干擾
不過一旦使用像軟冰,軟冰就會取走Real mode權力轉成Protected
造成程式一執行就Error...Ms-debugger太簡陋,資訊不足、Turbo Debugger已經找不到了...

請問還有甚麼方法能進行除錯嗎?還請各位前輩不吝告知
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/19 下午 08:32:41
嗯...算了,改問另一個好了
請問Dos中的Debug,要如何把U指令所產生的code存到某一個檔案內?
不想每反組譯出16行就抄下來...
作者 : rollboy(roller) 貼文超過200則人氣指數超過10000點
[ 貼文 396 | 人氣 24176 | 評價 370 | 評價/貼文 0.93 | 送出評價 62 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/26 上午 12:20:46

>目前在Trace一個只能在Real Mode下跑的程式,這程式無法在Protected下執行
>所以建立了一個Ms-dos 6.22的VM,想要盡可能減少其它的干擾
>不過一旦使用像軟冰,軟冰就會取走Real mode權力轉成Protected
>造成程式一執行就Error...Ms-debugger太簡陋,資訊不足、Turbo Debugger已經找不到了...
>
>請問還有甚麼方法能進行除錯嗎?還請各位前輩不吝告知

嗯 ... 不能直接在windows上面執行嗎? (命令提示字元)
應該還是可以跑real mode的程式吧?? ...
除非你有作一些硬體相關控制, 否則應該還是可以跑起來吧?
這方面我不清楚 ... 可能需要確認一下!

debugger的話 ... 或許可以找找以前microsoft的一套叫做codeview的工具 ...
可以對real mode porgram進行除錯, 個人認為蠻好用的!

至於你說的反組譯問題, 何不直接找個disassembler來用呢?
不過反組譯的時候記得注意一下是否能指定16bit
不然可能有些opcode會被判斷成不一樣的指令!
作者 : seanchang(H) Assembly卓越專家貼文超過1000則
[ 貼文 1200 | 人氣 773 | 評價 3240 | 評價/貼文 2.7 | 送出評價 43 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/28 上午 09:33:12

>嗯...算了,改問另一個好了
>請問Dos中的Debug,要如何把U指令所產生的code存到某一個檔案內?
>不想每反組譯出16行就抄下來...
你trace的程式是有source code 的?還是沒有source code的?
有source code的直接在組譯時產生lst file即可. 沒有source code的請用反組譯程式. 不是用debug.
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/28 下午 12:18:34
>rollboy(roller)
>seanchang(H)
啊~總算等到有人回了

>嗯 ... 不能直接在windows上面執行嗎? (命令提示字元)
會偵測到目前處於保護模式而強制終止,所以不行
用軟冰就是在保護模式,所以剛啟動想Trace就自動終止了

>可以找找以前microsoft的一套叫做codeview的工具
Codeview嗎?,這倒是還沒試過。會有code翻不出來的情況嗎?
之前用過Ms-Debugger,有些code就顯示像[ ??? ax],完全看不懂在做啥

>你trace的程式是有source code 的?還是沒有source code的?
無Source Code,所以只能自己一行行反組譯...看到Length 8千多,約三萬行就頭開始痛了
目前是靠軟冰2.8慢慢的反組譯再敲到筆記本內...

>至於你說的反組譯問題, 何不直接找個disassembler來用呢?
個人有IDA Pro ADV 5.5(過期物),但程式本身有殼跟Redirect...用IDA Pro打開就只會看到12行組語,其他都翻不出來
殼是試著用IDA反組譯時發現的,Redirect則是軟冰把程式預載入時,看到就分成兩塊

要是知道有甚麼比軟冰更方便的反組譯器或Tracer等,還請不吝告知
作者 : rollboy(roller) 貼文超過200則人氣指數超過10000點
[ 貼文 396 | 人氣 24176 | 評價 370 | 評價/貼文 0.93 | 送出評價 62 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/28 下午 06:49:08
>>嗯 ... 不能直接在windows上面執行嗎? (命令提示字元)
>會偵測到目前處於保護模式而強制終止,所以不行
>用軟冰就是在保護模式,所以剛啟動想Trace就自動終止了

你是說你要trace的program會自己偵測現在的CPU模式
只要在protect 或 Virtual 86 Mode他就會show error嗎??

然後你有個裝在VM上的dos跟SoftICE
只要你call Soft ICE他就會自己幫你把CPU切入到protect mode?
(我不知道debugger會幹這種事 ... 或許可以請熟這tool的高手補充一下)

我比較好奇你想trace的program是什麼 ... 幹什麼用的!

>>可以找找以前microsoft的一套叫做codeview的工具
>Codeview嗎?,這倒是還沒試過。會有code翻不出來的情況嗎?
>之前用過Ms-Debugger,有些code就顯示像[ ??? ax],完全看不懂在做啥
>
>>你trace的程式是有source code 的?還是沒有source code的?
>無Source Code,所以只能自己一行行反組譯...看到Length 8千多,約三萬行就頭開始痛了
>目前是靠軟冰2.8慢慢的反組譯再敲到筆記本內...
>
>>至於你說的反組譯問題, 何不直接找個disassembler來用呢?
>個人有IDA Pro ADV 5.5(過期物),但程式本身有殼跟Redirect...用IDA Pro打開就只會看到12行組語,其他都翻不出來
>殼是試著用IDA反組譯時發現的,Redirect則是軟冰把程式預載入時,看到就分成兩塊
>
>要是知道有甚麼比軟冰更方便的反組譯器或Tracer等,還請不吝告知
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/28 下午 10:22:53
>你是說你要trace的program會自己偵測現在的CPU模式
>只要在protect 或 Virtual 86 Mode他就會show error嗎??
是的,只要處於在Protected/Virtual 86/EMS等模式下就會自動終止


>然後你有個裝在VM上的dos跟SoftICE
>只要你call Soft ICE他就會自己幫你把CPU切入到protect mode?
>(我不知道debugger會幹這種事 ... 或許可以請熟這tool的高手補充一下)
SoftICE本身是啟動後,會建立一個虛擬機器環境並切至Protected以方便追蹤
所以像這種需要使用Real mode的存取硬體的Loader就無法在這環境下Trace


>我比較好奇你想trace的program是什麼 ... 幹什麼用的!
一個私人檢測程式...雖然作者已經關站了,但為防作者哪天心血來潮用狗狗一敲就追到這
搞到要對簿公堂就很...個人是想要研究它裡面一些硬體檢測的方式跟演算法
它裡面的普通模式(還不是極端模式)很慢,想看它是慢的有道理,還是演算法不良這樣
演算法不良的話,就試試能不能改良它,然後跑得比原作者的更快更準就比較爽這樣(被敲頭

目前是用軟冰反組譯後一行行code全抄下來,再慢慢的分析
預估會用上三個月...效率低下而且可能敲到一半就沒熱情了這樣(再被巴頭
不過還是必須要再做Running Trace,防止說有些Code沒有反組譯到
所以還是要一個有效的Trace方式,能完整記錄執行時跑了哪些指令,這也是現在在找的...
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/29 上午 03:55:53
>rollboy(roller)
另外就是去找了您說的CodeView,版本2.6,dxqsoft的
是這個嗎?它是Win32程式,無法於Dos下使用
而且在Win下,把檔案拖進去後還是不行
說[此檔案版本於您的Windows版本不相容]這Common Error
作者 : rollboy(roller) 貼文超過200則人氣指數超過10000點
[ 貼文 396 | 人氣 24176 | 評價 370 | 評價/貼文 0.93 | 送出評價 62 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/29 下午 07:00:15
讓我先把你的環境搞清楚一點 ...

你說你把SoftICE裝在如Windows OS上 ...
然後SoftICE會有個類似VM的功能, 可以讓你把要除錯的程式load進去對嗎?

VM是真的如VMWARE或VirtualBox那般真正模擬一台PC出來?
還是單純只是可以load一般執行檔??

---------------------------------------------

然後你說你的SoftICE可以解你那加密保護過的執行檔
但是IDA pro不行 是嗎??

---------------------------------------------

反組譯別人的code來做改良會比較容易嗎??
直接寫mail去問原作者或者乾脆自己來會不會比較快!
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/29 下午 10:12:47
>你說你把SoftICE裝在如Windows OS上 ...
>然後SoftICE會有個類似VM的功能, 可以讓你把要除錯的程式load進去對嗎?
>
>VM是真的如VMWARE或VirtualBox那般真正模擬一台PC出來?
>還是單純只是可以load一般執行檔??

以VMware建立一虛擬機器,裡頭就只放:command.com(98開機片抽的)、SoftICE、該程式
>---------------------------------------------
>
>然後你說你的SoftICE可以解你那加密保護過的執行檔
>但是IDA pro不行 是嗎??

SoftICE將它預載入記憶體,然後看該記憶體區段的反組譯碼
而IDA Pro則只能解開它Entry Point的一小部分,其它就解不出來了
>---------------------------------------------
>
>反組譯別人的code來做改良會比較容易嗎??
>直接寫mail去問原作者或者乾脆自己來會不會比較快!

原作者關站囉,Mail有試著發了三、四封,毫無音訊,猜想大概也沒在用這Mail了
另外也算純粹想比較自己的測試演算法跟對方演算法的優劣,所以想知道是寫甚麼這樣
因為自己的跑出來跟對方的有一些結果相左
作者 : rollboy(roller) 貼文超過200則人氣指數超過10000點
[ 貼文 396 | 人氣 24176 | 評價 370 | 評價/貼文 0.93 | 送出評價 62 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人sink註記此篇回應為很有道理 2010/11/30 上午 12:31:03
ok ... google了一下, 好像Soft ICE的確是會自己切入protect mode
然後要run的程式都是跑在virtual 86 mode上了 ...

不過既然你要trace的program不能跑在virtual86模式上的話 ...
我猜就算用IDA pro也會遇到這問題 ...
(我指的是windows + IDA pro ... 這樣也算是跑在virtual86 mode吧)

你說你的程式是做一些檢測工作, 那應該會access硬體吧?
那就算真的讓你跑在virtual86 mode, 我看可能也會有問題!

或許試試看vmware + codeview吧 ... 會不會有問題就要請你自己試了
還有你的codeview不是我說的那個 ... 這錯的有點誇裝!
請google 'Micosoft codeview" ...
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/30 下午 12:26:10
>或許試試看vmware + codeview吧 ... 會不會有問題就要請你自己試了
>還有你的codeview不是我說的那個 ... 這錯的有點誇裝!
>請google 'Micosoft codeview' ...
啊~原來是CV啊~
想到以前95時代,那時好像9歲10歲就在玩弄這東西了,就看畫面頗簡單精緻
就亂敲亂敲的玩弄它的命令函數(那時倒是完全不知道那些命令能做啥),曾把OS搞當機過
嗯,以前當死小孩的記憶又被喚起了(點頭

回到正題,這次應該是抓到正確的CV了,總之先測測看再來回報囉
先謝謝了
作者 : sink(sk)
[ 貼文 37 | 人氣 3663 | 評價 0 | 評價/貼文 0 | 送出評價 3 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2010/11/30 下午 11:44:05
嗯,回報來了:
很遺憾,CV也敗陣了,用CV去打開程式會說"No symbol header found"而停下
或是使用方式錯誤?錯誤的話還請指點一下
作者 : ozzy123(ozzy) 資訊類作業求救卓越專家C++卓越專家貼文超過4000則人氣指數超過30000點
[ 貼文 4465 | 人氣 37262 | 評價 10860 | 評價/貼文 2.43 | 送出評價 49 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2013/9/26 上午 09:35:25
hello roller ,

r u familiar with android programming ?
 板主 : 徵求中
 > 組合語言 - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - 組合語言 - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
組合語言
1 H 2220 
2 liaoo 990 
3 青衫 970 
4 牧童哥 940 
5 史努比 920 
6 qq 480 
7 GHOST-JACKY 330 
8 ]CALL-151 310 
9 harrison 300 
10 掌握文武半邊天 280 
組合語言
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.09375