[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to read the anht_hac...



On Wed, Jun 28, 2000 at 09:43:29PM -0400, TRAX wrote:
> I'm trying my best to improve my knowledge of the 730 ECM.  Could someone
> give me a quick dirty lesson on how to read the anht_hac?  I'm looking at it
> and ... I'll admit it ... I can't seem to read it.  For example, the first
> line says:
> 
> L8000:  FDB  $13D9
> 
> What is L8000?
> What is FDB? or FCB?
> What is $13D9?
> 
> When I compare two bins using a compare program it reports differences at
> addresses 00001, 00002, 00003 ... 0021A, 002AF.  But, I can't find these
> addresses in the anht_hac.pdf.  But, I'm sure that they ARE there and it is
> just that I do not know how to read it correctly.  I'm sorry for asking this
> 'stupid' question but I can't seem to find a description for how to read
> this file and I really want to learn it.


The numbers along the left hand side of almost any kind of listing are
usually an memory address (or memory location).  Sometimes people quote 
these with an additional offset because that is how the computer 
actually accesses it.  These numbers are to make it easy for a human
to read the listing.  They won't appear in the final PROM or program 
code.

The second column is basicly a command or instruction.  
Commands like FDB, FCB are really just declaring constants
and ORG and EQU are to make the listing more readable (to humans).
That means that none of these will show up in the final PROM or 
program code either.  Just to make things more complex, instructions
(which you find much further into the document) actually do show 
up in the final PROM, encoded as a pair of hex digits.

The third column is the actual value(s) that the command or instruction
uses.

Enough generalizing.  To answer your questions:

In the case of ANHT, the first line you see is 

ORG $8000

which stands for "origin hex 8000".  Following this statement, 
every address will be offset by hex 8000 - that's why the following
line, which is location 0 in the PROM, actually is listed as
L8000 - it's 8000 + 0.   You won't find this in the final PROM.

GM assigns id codes to their prom's.  This one happens to be id 13D9.
The line following this one is a date code that gm put in, 08BF.  As
a side note, 08BF is "22390" in decimal.  I take that to mean the 223rd
day of 1990.  Anyone know if that prom was issued late in 1990?

If you use a hex editor, and read ANHT.bin, you'd find the first four
bytes of the file would be:

13 D9 08 BF

and as you can see, 08 is at offset 2 (always count from 0 in the
computer world), which matches with the listing that shows 08BF 
starts at L8002.

That's about all you need in order to be able to read the tables.

If you want to understand what the code does (further into the 
listing), it's the same basic concept, except now you have actual
instructions (like LDAA).  You can get an 68HC11 datasheet from the
Motorola web site in .pdf which has all the instructions in the
back.

Have fun!

   Marc

-- 
  Marc Randolph     -    mrand@pobox.com    -     PGP keyID: 0x4C95994D
     If you have any info on the mid-60's car called the Bill Thomas
       Cheetah, or know anyone that might, please contact me.
----------------------------------------------------------------------------
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