No sumcheck code in a '95 MEMCAL

Ludis Langens ludis at cruzers.com
Fri Nov 6 08:01:13 GMT 1998


Roger Heflin  <rah at horizon.hit.net> wrote:
> Do we know if the actual checksum program is on the prom (the one
> that sets the code) is actually in the prom?  I would think the that
> code that actually verifies the prom is good would need to be
> elsewhere.

The ECMs with an EPROM bigger than 4K bytes don't have any other ROM in
the system.  There's no place else for it to be.  So, if there is a
checksumming function, it is in the EPROM.

> I was also under the impressions that the checksum code
> was really just a do nothing loop of sorts, maybe they decided to do
> something else there.

It is part of the reset vector function.  The checksum is computed quite
early in the initialization code.  It is easy to spot the checksum loop
because it tickles the watchdog every n bytes.

"John Hess" <johnhess at cris.com> wrote:
> Did you checksum only the data _after_ the checksum in the PROM or check it
> against the PROM checksum.  I don't know about this particular prom;  but,
> bytes 0 through 8 are disregarded in the checksum on the earlier models.

Yup, I computed it without the first 8 bytes.  It doesn't match.  The
checksum field in the 7th and 8th bytes appears to have a placeholder
value: $3535.  The PROM does not self checksum itself, nor does it
invoke any external code that might do a checksum.  The PROM also has no
references to the checksum field, and in fact has no references to any
of the 3rd through 9th bytes.

-- 
Ludis Langens                               ludis (at) cruzers (dot) com
Mac, Fiero, & engine controller goodies:  http://www.cruzers.com/~ludis/




More information about the Diy_efi mailing list