EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Run Time Error

Started by "see...@yahoo.com [rabbit-semi]" October 26, 2016
I tried running the DC v9.62 debugger on an RCM3000 module with a program that has been running for years. DC loads the firmware and when it's done I get the following error message before it closes:

Run Time Error: An RST 38 occurred, but the RST 38 vector is uninitialized. Address 00:e5cf

I've never seen that error before. Anyone know what it means or at least how to solve it?
It's been awhile since I've seen that error, but as I recall it can come up as part of your software crashing. The processor ends up executing random data until it hits an RST 38 opcode.

If you compile to target, but don't run your program (leave the debugger at the first statement in main()), does it happen?

If you compile a simple sample down to the target, do you get that error?

I think that after downloading, the module executes the BIOS, including all #GLOBAL_INIT blocks, and then enters main().

Is this an RCM3000 that you've done lots of development with (like a large number of compile/debug sessions)? I think I had an RCM2200 stop working after years of development with it, and I assumed I had exceeded some flash read/write rating. Or maybe I just gave it a static shock one day...

-Tom
On Oct 26, 2016, at 3:03 PM, s...@yahoo.com [rabbit-semi] wrote:

> I tried running the DC v9.62 debugger on an RCM3000 module with a program that has been running for years. DC loads the firmware and when it's done I get the following error message before it closes:
>
> Run Time Error: An RST 38 occurred, but the RST 38 vector is uninitialized. Address 00:e5cf
>
> I've never seen that error before. Anyone know what it means or at least how to solve it?
>
The debugger never gets to the first line of my code before it crashes. And the RCM3000 module I'm using is a new one, never been programmed before.  I loaded it with an older version of the program and it runs,so the module is good.
I tried compiling the program with v9.25, and it runs. I didn't try the debugger, but since the program runsI didn't need too. Plus, the debugger in v9.25 is problematic. Sometimes it works, sometimes it doesn't. Thev9.62 debugger is a little more reliable.
I have one set of code that I compile either for the RCM3000 or the RCM3900. Since it's been almost a yearsince I did a build for the RCM3000, but have done many for the RCM3900 in the same time frame,  I decided to recompile it to roll in the various changes that have accumulated. Even though it compiles without error, the program won't run. That's when I tried to use the debugger to figure out what was going on.
So it seems as if some change was made to the code that is incompatible with the RCM3000 but not the RCM3900,yet doesn't cause a compiler error.  I can't imagine what that would be.

From: "Tom Collins t...@tomlogic.com [rabbit-semi]"
To: r...
Sent: Thursday, October 27, 2016 3:51 PM
Subject: Re: [rabbit-semi] Run Time Error

  It's been awhile since I've seen that error, but as I recall it can come up as part of your software crashing.  The processor ends up executing random data until it hits an RST 38 opcode.
If you compile to target, but don't run your program (leave the debugger at the first statement in main()), does it happen?
If you compile a simple sample down to the target, do you get that error?
I think that after downloading, the module executes the BIOS, including all #GLOBAL_INIT blocks, and then enters main().
Is this an RCM3000 that you've done lots of development with (like a large number of compile/debug sessions)?  I think I had an RCM2200 stop working after years of development with it, and I assumed I had exceeded some flash read/write rating.  Or maybe I just gave it a static shock one day...
-Tom

On Oct 26, 2016, at 3:03 PM, s...@yahoo.com [rabbit-semi] wrote:

I tried running the DC v9.62 debugger on an RCM3000 module with a program that has been running for years. DC loads the firmware and when it's done I get the following error message before it closes:
Run Time Error: An RST 38 occurred, but the RST 38 vector is uninitialized. Address 00:e5cf
I've never seen that error before. Anyone know what it means or at least how to solve it?

#yiv9409632434 #yiv9409632434 -- #yiv9409632434ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9409632434 #yiv9409632434ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9409632434 #yiv9409632434ygrp-mkp #yiv9409632434hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9409632434 #yiv9409632434ygrp-mkp #yiv9409632434ads {margin-bottom:10px;}#yiv9409632434 #yiv9409632434ygrp-mkp .yiv9409632434ad {padding:0 0;}#yiv9409632434 #yiv9409632434ygrp-mkp .yiv9409632434ad p {margin:0;}#yiv9409632434 #yiv9409632434ygrp-mkp .yiv9409632434ad a {color:#0000ff;text-decoration:none;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ygrp-lc {font-family:Arial;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ygrp-lc #yiv9409632434hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ygrp-lc .yiv9409632434ad {margin-bottom:10px;padding:0 0;}#yiv9409632434 #yiv9409632434actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9409632434 #yiv9409632434activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9409632434 #yiv9409632434activity span {font-weight:700;}#yiv9409632434 #yiv9409632434activity span:first-child {text-transform:uppercase;}#yiv9409632434 #yiv9409632434activity span a {color:#5085b6;text-decoration:none;}#yiv9409632434 #yiv9409632434activity span span {color:#ff7900;}#yiv9409632434 #yiv9409632434activity span .yiv9409632434underline {text-decoration:underline;}#yiv9409632434 .yiv9409632434attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv9409632434 .yiv9409632434attach div a {text-decoration:none;}#yiv9409632434 .yiv9409632434attach img {border:none;padding-right:5px;}#yiv9409632434 .yiv9409632434attach label {display:block;margin-bottom:5px;}#yiv9409632434 .yiv9409632434attach label a {text-decoration:none;}#yiv9409632434 blockquote {margin:0 0 0 4px;}#yiv9409632434 .yiv9409632434bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv9409632434 .yiv9409632434bold a {text-decoration:none;}#yiv9409632434 dd.yiv9409632434last p a {font-family:Verdana;font-weight:700;}#yiv9409632434 dd.yiv9409632434last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv9409632434 dd.yiv9409632434last p span.yiv9409632434yshortcuts {margin-right:0;}#yiv9409632434 div.yiv9409632434attach-table div div a {text-decoration:none;}#yiv9409632434 div.yiv9409632434attach-table {width:400px;}#yiv9409632434 div.yiv9409632434file-title a, #yiv9409632434 div.yiv9409632434file-title a:active, #yiv9409632434 div.yiv9409632434file-title a:hover, #yiv9409632434 div.yiv9409632434file-title a:visited {text-decoration:none;}#yiv9409632434 div.yiv9409632434photo-title a, #yiv9409632434 div.yiv9409632434photo-title a:active, #yiv9409632434 div.yiv9409632434photo-title a:hover, #yiv9409632434 div.yiv9409632434photo-title a:visited {text-decoration:none;}#yiv9409632434 div#yiv9409632434ygrp-mlmsg #yiv9409632434ygrp-msg p a span.yiv9409632434yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv9409632434 .yiv9409632434green {color:#628c2a;}#yiv9409632434 .yiv9409632434MsoNormal {margin:0 0 0 0;}#yiv9409632434 o {font-size:0;}#yiv9409632434 #yiv9409632434photos div {float:left;width:72px;}#yiv9409632434 #yiv9409632434photos div div {border:1px solid #666666;height:62px;overflow:hidden;width:62px;}#yiv9409632434 #yiv9409632434photos div label {color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv9409632434 #yiv9409632434reco-category {font-size:77%;}#yiv9409632434 #yiv9409632434reco-desc {font-size:77%;}#yiv9409632434 .yiv9409632434replbq {margin:4px;}#yiv9409632434 #yiv9409632434ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv9409632434 #yiv9409632434ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv9409632434 #yiv9409632434ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv9409632434 #yiv9409632434ygrp-mlmsg select, #yiv9409632434 input, #yiv9409632434 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv9409632434 #yiv9409632434ygrp-mlmsg pre, #yiv9409632434 code {font:115% monospace;}#yiv9409632434 #yiv9409632434ygrp-mlmsg * {line-height:1.22em;}#yiv9409632434 #yiv9409632434ygrp-mlmsg #yiv9409632434logo {padding-bottom:10px;}#yiv9409632434 #yiv9409632434ygrp-msg p a {font-family:Verdana;}#yiv9409632434 #yiv9409632434ygrp-msg p#yiv9409632434attach-count span {color:#1E66AE;font-weight:700;}#yiv9409632434 #yiv9409632434ygrp-reco #yiv9409632434reco-head {color:#ff7900;font-weight:700;}#yiv9409632434 #yiv9409632434ygrp-reco {margin-bottom:20px;padding:0px;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ov li a {font-size:130%;text-decoration:none;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ov li {font-size:77%;list-style-type:square;padding:6px 0;}#yiv9409632434 #yiv9409632434ygrp-sponsor #yiv9409632434ov ul {margin:0;padding:0 0 0 8px;}#yiv9409632434 #yiv9409632434ygrp-text {font-family:Georgia;}#yiv9409632434 #yiv9409632434ygrp-text p {margin:0 0 1em 0;}#yiv9409632434 #yiv9409632434ygrp-text tt {font-size:120%;}#yiv9409632434 #yiv9409632434ygrp-vital ul li:last-child {border-right:none !important;}#yiv9409632434
Maybe your application size broke over some threshold with the new
compiler/bios? Compile it without debug and load up via rfu. In some
instances when I was close to memory constraints, rfu worked and dc9
loading didn't. Also, maybe the userblock config is different on the
new module? Mirroring and size taking up some extra space?

Of course, if it worked before without your changes, you might need to
incrementally add until u find issue.
On 10/28/2016 7:31 AM, Steve Trigero s...@yahoo.com [rabbit-semi]
wrote:
> The debugger never gets to the first line of my code before it
> crashes. And the RCM3000 module I'm using
> is a new one, never been programmed before. I loaded it with an older
> version of the program and it runs,
> so the module is good.
>
> I tried compiling the program with v9.25, and it runs. I didn't try
> the debugger, but since the program runs
> I didn't need too. Plus, the debugger in v9.25 is problematic.
> Sometimes it works, sometimes it doesn't. The
> v9.62 debugger is a little more reliable.
>
> I have one set of code that I compile either for the RCM3000 or the
> RCM3900. Since it's been almost a year
> since I did a build for the RCM3000, but have done many for the
> RCM3900 in the same time frame, I decided
> to recompile it to roll in the various changes that have accumulated.
> Even though it compiles without error, the
> program won't run. That's when I tried to use the debugger to figure
> out what was going on.
>
> So it seems as if some change was made to the code that is
> incompatible with the RCM3000 but not the RCM3900,
> yet doesn't cause a compiler error. I can't imagine what that would be.
>
> *From:* "Tom Collins t...@tomlogic.com [rabbit-semi]"
>
> *To:* r...
> *Sent:* Thursday, October 27, 2016 3:51 PM
> *Subject:* Re: [rabbit-semi] Run Time Error
>
> It's been awhile since I've seen that error, but as I recall it can
> come up as part of your software crashing. The processor ends up
> executing random data until it hits an RST 38 opcode.
>
> If you compile to target, but don't run your program (leave the
> debugger at the first statement in main()), does it happen?
>
> If you compile a simple sample down to the target, do you get that error?
>
> I think that after downloading, the module executes the BIOS,
> including all #GLOBAL_INIT blocks, and then enters main().
>
> Is this an RCM3000 that you've done lots of development with (like a
> large number of compile/debug sessions)? I think I had an RCM2200
> stop working after years of development with it, and I assumed I had
> exceeded some flash read/write rating. Or maybe I just gave it a
> static shock one day...
>
> -Tom
> On Oct 26, 2016, at 3:03 PM, s...@yahoo.com
> [rabbit-semi] wrote:
>
>> I tried running the DC v9.62 debugger on an RCM3000 module with a
>> program that has been running for years. DC loads the firmware and
>> when it's done I get the following error message before it closes:
>>
>> Run Time Error: An RST 38 occurred, but the RST 38 vector is
>> uninitialized. Address 00:e5cf
>>
>> I've never seen that error before. Anyone know what it means or at
>> least how to solve it?

The 2024 Embedded Online Conference