CW with TBDML  : watchpoints don't work

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CW with TBDML  : watchpoints don't work

787 Views
electro
Contributor I

Hello

 

I use CW5.1 special edition, with TBDML (dll v1.4, gdi dll v1.7) and Windows XP (sorry...).

Hiwave is launched directly from Windows, not from the IDE.

The problem was the same with previous versions of CW and TBDML.

The processor of my application is S12XEQ512.

Almost everything works fine, but watchpoints (in particular breakpoints work well).

 

I can set watchpoints and they appear in data and memory windows of Hiwave.

But the program doesn't stop when the corrresponding memory location is read or written.

 

I did some investigations, and it seems that comparator adress registers of the DBG module are not written correctly by Hiwave when I set a watchpoint.

 

Examples:

watchpoint set at address $1450  --> DBGXAH:M:L = $00:04:50              (04 instead of 14)

                                                $2450                                   $00:E4:50               (E4 instead of 24)

                                                $3450                                   $0F:F4:50

DBGXAL is correct, but DBGXAM and sometimes DBGXAH are not.

If I try to manually modify these registers (in data or memory window, or with the Inspector)

they are immediately rewritten with the erroneous values !

 

The RAM of my application extends from $1000 to $3FFF, and the RPAGE register has its reset value : $FD.

The debugging memory map has a range covering from $1000 to $3FFF (physical) with R/W access.

 

I don't see how to investigate more deeply, as the source code for the gdi-dll is not provided by the distribution (not open source).

 

I saw another thread about a similar problem (with PE Multilink target), but only a question two years ago, and no answer.

 

If you have an idea of what is going on, please help. Even if you don't have the solution, some hints could be helpfull.

 

Thanks

 

Alain

Labels (1)
Tags (2)
0 Kudos
4 Replies

512 Views
ZhangJennie
NXP TechSupport
NXP TechSupport

hi,

can you please upload the problem screenshots for your problem?

did you ever test the same with P&E or other interface?

Best Regards,

Zhang Jun

0 Kudos

512 Views
electro
Contributor I

CopieEcran.bmp

Hi Zhang

Here is a screen print showing my problem.

A watchpoint is set on the variable O.mode (address $0x1466) : see Data:1 and Memory:2 windows.

No other watchpoints or breakpoints are set.

You can see in the Inspector window (or in Data:2) that DBGXAH = 0x0, DBGXAM = 0x4 (instead of 0x14), while DBGXAL is correct (0x66).

This is typical : DBGXAM is always incorrect, DBGXAH sometimes incorrect.

I had no opportunity to try another physical target than TBDML. However watchpoints work perfectly well with the simulator.

So I suppose the issue is somewhere in the dll (or gdi dll) used to communicate with the TBDML target.

Regards

Alain

0 Kudos

512 Views
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi coste,

sorry for the late, because no testing result with other interface, can you please send me your project so that i can test it on my side? thanks!


Have a great day,
Zhang Jun

0 Kudos

512 Views
electro
Contributor I

Hello,

anybody listening ?....

0 Kudos