2016-11-17 13 views
1

私が取り組んでいるプロジェクトでは、
PowerPC MPC-8641d、VxWorks6.6で動作します。PowerPC起動シーケンスのVxWorks 6.6 _sysInit()opcode bizarity

別のVIPプロジェクトからVIPイメージを起動する必要があります。ブートローダーであると思わブートシーケンス調査
:画像のバイナリヘッダを読み取る

0x100000
に(HDRなし)二値画像をコピーし0x100000にジャンプする(ここで_sysInit())位置しています。

48 44 01 FC BA AD C0 DE 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
... 
... 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 

だけでなく、0x484401FCは 、関数プロローグのようになります。ブートローダーと同じことをやって

0x100000の内容を読み出すアドレス0x100004h

で私のCPUの凍結は、次のダンプを明らかにしましたしかし、0xBAADC0DEは冗談でなければなりません!

私のVIPはこのアドレスを呼び出すことによってどのように動作しますか?
他に何か不足していますか?

答えて

1

0x484401FCb 0x4401fcあるので、0x4401fcに分岐し、決して0x100004の命令を実行する必要があります(それは返さない限り、しかし、分岐がLRを設定していないので、手動で返さなければならないでしょう)。

+0

ありがとうございます、日曜日にチェックします。それは参考になります。ありがとう。 –

関連する問題