Greetings.
Thanks for the help.
I can't tell what piece of code is executing that causes the memory
access. It's in the storage heap, so it could well be part of your
program. But there's no embedded function name associated with the
function (you need to enable that option in your development system),
so we can't tell for sure.
How do I enable the option? I'm using CodeWarrior v9.0.
Sincerely,
Lim Lee Wee (Mackey)
R&D Engineer (Software)
Group Sense Technology (Singapore) Pte Ltd
"Palm Developer Forum digest"
<[EMAIL PROTECTED]> To: "palm-dev-forum digest
recipients"
Sent by: <[EMAIL PROTECTED]>
[EMAIL PROTECTED] cc:
palmos.com Subject:
palm-dev-forum digest: April 23, 2004
04/24/2004 03:00 PM
Please respond to "Palm Developer
Forum"
Subject: Re: Memory reallocation problem
From: Keith Rollin <[EMAIL PROTECTED]>
Date: Fri, 23 Apr 2004 11:36:27 -0700
X-Message-Number: 46
Lim,
The information you provide here seems to indicate that you are
accessing a global variable in your application at a time when global
variables are not available.
The line:
> 0014E682 *CMP.L -$1780(A5),A2
|
>B5ED E880
shows a memory access based on register A5. That register contains
the base address for global variables. The value (0x800F0106) in
your case has the high bit set, indicating that the A5 register has
been marked by the OS to indicate that global variables are not
currently available to your application.
I can't tell what piece of code is executing that causes the memory
access. It's in the storage heap, so it could well be part of your
program. But there's no embedded function name associated with the
function (you need to enable that option in your development system),
so we can't tell for sure.
If you can test your application under the Palm OS Emulator, try
doing that, as it will detect such incorrect memory accesses at the
point they occur and give you a better error message.
-- Keith Rollin
-- Development Tools engineer
At 5:50 PM +0800 4/23/04, [EMAIL PROTECTED] wrote:
>Greetings.
>
>Just to add on to my previous e-mail.
>
>The following is the Palm debugger debug message during the exception:
>
>Remote stopped due to: ADDRESS ERROR EXCEPTION
>
> 0014E682 *CMP.L -$1780(A5),A2
|
>B5ED E880
>sc
>*********************************************
>* WARNING: Current app stack may be corrupt *
>*********************************************
>Calling chain using A6 Links:
> A6 Frame Frame Size Caller
> 000EFF0C #0000000324 1013C516 EmsExgGetMsg+005E
> 000EFEE4 #0000000040 1013C5E8 PrvEmsExgGetMessage+00A6
> 000EFEBE #0000000038 1013BEFE DecodingOTA+06D4
> 000EF3C8 #0000002806 10065596 FrmAlert+0012
> 000EF3B2 #0000000022 001096BA MyFrmCustomAlert+006C
> 000EF37E #0000000052 10065BD2 FrmCustomAlert+0022
> 000EF342 #0000000060 1006568E PrvConstructCustomAlert+00E8
> 000EF2CC #0000000118 10066B50 FrmNewForm+0194
> 000EF29C #0000000048 1004B69E WinInitializeWindow+003E
> 000EF288 #0000000020 0014E682
>1013BEFE
>reg
>D0 = 000F2000 A0 = FFFFFFFF USP = 6065EF77
>D1 = 000007F8 A1 = 1004C58A SSP = 000EF284
>D2 = 00002B0A A2 = 0000AD52
>D3 = 00000001 A3 = 0000AD52
>D4 = 00000004 A4 = 0000AD96
>D5 = 1013E06E A5 = 800F0106
>D6 = 800000A0 A6 = 000EF288 PC = 0014E682
>D7 = 000000A0 A7 = 000EF284 SR = tSxnzvc Int = 0
>
>il
> 0014E682 *CMP.L -$1780(A5),A2
|
>B5ED E880
> 0014E686 BNE.S *+$0008 ; 0014E68E
|
>6606
> 0014E688 MOVE.W #$00C9,$0018(A2) ; 'I.'
|
>357C 00C9 0018
> 0014E68E MOVE.L (A7)+,A2
|
>245F
> 0014E690 UNLK A6
|
>4E5E
> 0014E692 RTS
|
>4E75
> 0014E694 LINK A6,-$0008
|
>4E56 FFF8
> 0014E698 MOVE.L A2,-(A7)
|
>2F0A
> 0014E69A MOVE.L D3,-(A7)
|
>2F03
> 0014E69C MOVE.L $0008(A6),A2
|
>246E 0008
--
END OF DIGEST
--
For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/