Library> CheckSum Destinations: Home | Library | Change Log | Index
Search | Go

A Checksum is a very basic form of error checking. A checksum is calculated by adding the values of a ROM together, without any form of carry or overflow checking. Checksums can vary in size - 8bit, 16bit, 32bit checksums are all common. OBD0 and OBD1 honda ECUs use exclusively 8 bit checksums i.e. checksums from 0 -> 255 decimal, 00-FF hex.

There is a program called check8 (also available attached to this page) that can calculate 8bit checksums.

You can update the rom so the checksum stays 00 even after editing it. Here is how to (using Win Hex in this example, but you can use the program posted below, but only to find checksum, not to edit the ROM) :

Open Win Hex and select Tools Menu -> Calculate Hash (Select 8 bit). Write down the number it gives you. This is the current Checksum.

Open Windows Calculator (Start -> Run -> Calc then press enter) View -> Scientific Select Hex Mode (or press F5)

Do this : FF - Current_checksum ( FF - AB for example) The number it gives you is tu be written in a memory location, toward the bottom, where no code is present, and where the value FF is already there.

Example : (FF - AB = 54)

lets say I go to memory location 7FFF, value is FF. I replace FF by 54.

if you dont have an address with a free FF value, but another value (lets say 00), use 00 in calc instead (00 - AB) and replace the free 00 with the result.

Attachment?: Modify: Size: Date: Who: Comment:
Check8.exe mod 10308 05 Mar 2004 - 18:29 blundar Keil's 8 bit checksum utility

Revision: r1.3 - 12 Jul 2004 - 14:08 GMT - synoptic { Edit | Attach | History | More }
Copyright © 2002-present by the contributing authors. All material on this collaboration platform is the property of the
contributing authors, and is covered by the Non-Commercial Share-Alike License unless explicitly stated otherwise.
Ideas, requests, problems regarding the PGMFI TWiki? E-Mail the WikiAdmin
Site Designed By: Digital Fusion   Need a website? - Powered by