[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
jumps to memory - LT1 8051 T side
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@lists.diy-efi.org