
Re: how to trace a microcontroller running it's app ?
In article <vOMij.47141$745.31820@newsfe1-win.ntli.net>,
Someone@ntlworld.com says...
> >
> > one treats the (02096f) in the first 3 bytes as a (long jump to
> > 096F) where the other disassembles the (02096f) into something
> > else like this ...
> >
> > 0000 : 02 " " db 002H
> > ;
> > 0001 L0001:
> > 0001 : 09 " " inc r1
> > ;
> > 0002 L0002:
> > 0002 : 6F "o" xrl a,r7
> >
> 02 09 5F is LJMP to 096F. dump the other disassembler.!
>
>
>
I ran into quite a number of problems of that sort in
APPLE II assembly code where whatever system
generated the code would intersperse defined constants
with the generated code. The disassembler would
try to disassemble string constants and debugging
data (such as function names, etc.) and would then
miss the first instruction of the next function.
Sometimes you may have to look at instructions
such as LJMP 096F and make sure that the
bytes at 096F really are executable code.
It's little things like that which make disassembling
and reverse engineering a non-trivial excercise.
Which is OK by me as it paid the bills for almost
half a year back in the '80s.
Mark Borgerson