OBD1 GM: Checksum Disable

Introduction

The check sum routine is a piece of the ECU code that checks to make sure the program is valid.  When you use the “Save” or “Save As…” commands in TunerPro, TunerPro updates the checksum automatically.  This is why this is not a concern when burning chips – the checksum is updated when you save the bin.   When you are doing real time tuning with the Ostrich or APU1 Autoprom, it is possible to put the ECM in a “fault mode” by making changes with the vehicle running because the checksum routine interprets the changes you have made as a corrupt chip.  In order to avoid this, you have two choices:

  1. Use “Save” or “Save As…” in TunerPro before pressing the “Upload” button so that the checksum gets updated along with any changes
  2. Disable the checksum routine prior to uploading.  Doing so will allow you to use realtime chip emulation and make changes incrementally.

Checksum Disable Procedure, In General

The general procedure for disabling the checksum is the same for all OBD1 GM computers:

  1. Locate the chip code mask byte. (This byte will be the same as the mask definition you are using in hexadecimal, i.e. $42 for a 1227747, $8D for a 1227730, $0D or $0E for a 16197427, etc.)  This can be called “Code mask” or “Chip code mask” or any number of things in the XDF – there is no standard.  Some XDFs do not even define this byte at all.  It is generally the 9th byte of the ROM for most 28 pin chip ROMs ( address 0x0008h, 04008h ) or the 5th for most 24 pin applications ( 0x0004h )
  2. Change the code mask from its default value to $AA in hex ( 170 in decimal)

Specific Example: TunerPro and $0D

  1. Locate the chip code mask byte, verify that it is $0D in stock form:
    $OD Mask stock
  2. Change the value from “$0D” (hex) to “$AA” (hex) :
    $OD Mask no checksum