D-Bug12 BREAKPOINTS IN PAGED MEMORY - 9S12C32

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

D-Bug12 BREAKPOINTS IN PAGED MEMORY - 9S12C32

1,019 Views
admin
Specialist II

  Device MC9S12C32 has 2 pages of paged memory at 8000.
  Hardware breakpoints.

D-Bug12
  1. When I enter br 00:8000, I get "Bad extended address".

  2. When I enter br 8000 and run my program at 8000, it never breaks.

  3. If I set 002A to 00 before running, it breaks ok.  However it reports "Target stopped for unknown reason".

  4. I can only enter br 3e:8000 and br 3f:8000 without the error message however neither breaks.


Questions:
  1.  Am I missing something?
  2.  What is the procedure for setting a breakpoint in paged memory?
  3.  What is the range of ppage to be entered with a breakpoint?
  4.  Is there a bug in v4.0.0b32?  Will it be fixed?

 

Added p/n to subject

Message Edited by NLFSJ on 2009-07-21 12:43 PM
Labels (1)
0 Kudos
1 Reply

270 Views
mculater
Contributor III

1.  Valid PPAGE values for 9S12C32 are 3e and 3f

2.  8000 is the paged memory window, so you need to set a valid PPAGE value (the default is 0):

here's an example D-Bug12 pod session:

S>rd

PP  PC    SP    X     Y    D = A:B   CCR = SXHI NZVC
00 C042  3F80  C094  0000     00:00        1100 0100
xx:C042  B63806        LDAA  $3806

S>md 8000

8000  FF FF FF FF - FF FF FF FF - FF FF FF FF - FF FF FF FF    ................
S>pp 3f

PP  PC    SP    X     Y    D = A:B   CCR = SXHI NZVC
3F C059  3F80  C135  0000     00:00        1100 0000
xx:C059  20E4          BRA   $C03F
S>md 8000

8000  14 10 18 0B - 00 00 11 18 - 0B 39 00 10 - CF 3F 80 4D    .........9...?.M

S>asm 3f:8000
3F:8000  1410          SEI                        >
3F:8002  180B000011    MOVB  #$00,$0011           >.

S>br 3f:8000
Breakpoints: 8000
S>g 3f:8000

User Bkpt Encountered

PP  PC    SP    X     Y    D = A:B   CCR = SXHI NZVC
3F 8000  3F80  C094  0000     00:00        1100 0100
3F:8000  1410          SEI

S>

Note that you could instead do everything without pages at all, by recognizing that page 3f appears at c000 and page 3e appears at 4000, and avoid the paged memory window at 8000 altogether.

then you would use something like this:

S>nobr
All Breakpoints Removed
S>br c000
Breakpoints: C000
S>g c000

User Bkpt Encountered

PP  PC    SP    X     Y    D = A:B   CCR = SXHI NZVC
00 C000  3F80  C094  0000     00:00        1100 1000
xx:C000  1410          SEI

S>

Best regarrds,

Carl Barnes

www.technologicalarts.com

Evaluate * Educate * Embed