jumps to memory - LT1 8051 T side

Dale Klein daklein at netzero.net
Fri Dec 1 05:32:20 GMT 2000


Hello all,

While I'm busy fumbling about with my new HC11 Spasov textbook, only 
shallowly understanding the HC11 (or any other microcontroller for that 
matter), and learning how to disassemble the program from my car, I wonder 
about the following.......  Does anyone have any hints.....?

 From what I gather from conversation (archives, etc), there are the two 
hc11 processors chugging away in there, each running their own separate 
program from separate flash chips.  They communicate with each other how 
exactly?  Do they use just the SPI interface?  Do they have share the same 
ram space somehow (other than the hc11 register blocks), or just parts, 
writing to a few spots 'common' to both processors?  ie: once the functions 
of various addresses are found for the one side, are any of them common to 
the other?  or do you need to disassemble whatever SPI code there is for 
both processors, like the sci aldl code on the t-side was disassembled to 
give names to some of the t-side memory locations?

When disassembling the T side with dhc11, the disassembler finds that the 
program is trying to jump to an address not in the normal ROM image from 
$2000 & up, meaning trying to jump to an instruction located in ram.
like this:
	Entry point $0D14 outside ROM image (ref. from PC = $759B).
	Entry point $0D24 outside ROM image (ref. from PC = $8924).
	Entry point $0CBA outside ROM image (ref. from PC = $3B3C).

Looking at these addresses in the image downloaded from my car there are 
just 00's there, maybe that would be different when the car is 
running?  And nothing on the T side writes to those addresses, so can I 
assume that E side must write to them?  But the E side doesn't reference 
them either, at least not by the same address.

I found this explanation for this type of disassembly message in the 
documentation for the m6811dis disassembler.
 >Notice the warning messages like "*** Warning: Branch Ref: 0x1803 is 
outside of Loaded Source File.".  These >indicate that a branch or jump 
instruction specified an address that was outside of the memory area loaded 
from the >source file. This is typical in applications that have more than 
one source for the program code. It can result from any >of the following 
"system" reasons:
 >
Is this what's going on?  >A second processor with common dual-port memory 
space
Or this....?  >Dynamic code that is loaded into RAM either by this program 
or some other bootstrap


Thanks, hope this was entertaining....

Dale

_______________________________________________
Why pay for something you could get for free?
NetZero provides FREE Internet Access and Email
http://www.netzero.net/download/index.html
----------------------------------------------------------------------------
To unsubscribe from gmecm, send "unsubscribe gmecm" (without the quotes)
in the body of a message (not the subject) to majordomo at lists.diy-efi.org




More information about the Gmecm mailing list