Xgate debugging - software error interrupt

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Xgate debugging - software error interrupt

ソリューションへジャンプ
2,038件の閲覧回数
nhtshot
Contributor II

I'm having the dreaded software error interrupt on some xgate code. I'm using the MC9s12XDP512 part and codewarrior with all the newest stuff applied.

 

I've managed to assembly step it to the JAL that's throwing the exception.

 

E089d0 LDL R6, #235

E089d2 ORH R6, #128

E089d4 JAL R6

 

At this point, R6 = 80EB which is an odd number.

 

I know what function this is jumping to, but I haven't any clue how I'm supposed to fix this.

 

Why is the compiler putting a function on an odd boundary? Or am I completely missing something here?

 

Should I have some additional options in the compiler settings or some pragmas in that file?

 

I've tried #pragma options align=2 with no success.

ラベル(1)
0 件の賞賛
返信
1 解決策
1,367件の閲覧回数
nhtshot
Contributor II

OK.. I really feel stupid now.

 

#include "xgate.h"

 

 

No more software error interrupt, no more pointers to bad places.

 

That include has to be in every .cxgate file.

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
1,367件の閲覧回数
nhtshot
Contributor II

E080EB also appears to be within the Page_E0_0, XGATE sees registers here, which is obviously bad.

 

 

0 件の賞賛
返信
1,368件の閲覧回数
nhtshot
Contributor II

OK.. I really feel stupid now.

 

#include "xgate.h"

 

 

No more software error interrupt, no more pointers to bad places.

 

That include has to be in every .cxgate file.

0 件の賞賛
返信