|
Rockbox mail archiveSubject: RE: checksum field (fwd)RE: checksum field (fwd)
From: Björn Stenberg <bjorn_at_haxx.se>
Date: Sun, 9 Dec 2001 11:07:26 +0100 (CET) ---------- Forwarded message ---------- From: Andy Choi <AndyC_at_CoManage.net> Subject: RE: checksum field Date: Sun, 9 Dec 2001 04:19:49 -0500 > apparantly, this is is just the 16-bit sum of all the bytes > in the unscrambed code, except with the most significant 4 > bits set to 0x4. not sure what the mask is for, but it seems > to work. (i tested this by simply modifying string constants > and seeing that the rescrambled code still passed the > checksum and then correctly displayed the modified strings). it turns out that wasn't quite right; it only worked for f/w version 5.01h. it looks like the checksum is simply the 16-bit sum with an offset, but i can't figure out how the offset is computed. for version 5.03a, the checksum seems to be the 16-bit sum minus 0x2b00; for version 5.02a, the offset is 0x7200; and for 5.01h, the offset is 0x9000. the length of the file doesn't affect these offsets; you can add arbitrary junk data to the end of the file, and you can modify the string constants arbitrarily, and these checksum offsets still work. but i can't figure out how these offsets are being computed from the code.. Received on 2001-12-09 Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy |