ElizabethD wrote:Checksum read in, 6D 92 above, matches what IR sees, but does not match what RawData in RMIR shows. Must be due to rearranging of keymoves and protocols, both of which did occur, what else could it be.
Start of RMIR file
0000=2F D0 43 50 54 30 43 50 78 31 07 EA 17 EC 60 00
Start of IR file
0000: 6D 92 43 50 54 30 43 50 78 31 07 EA 17 EC 60 00
mathdon wrote:Rearranging should not alter the checksum
My absence from the forums seems to have addled my brain! When I wrote that, I forgot that rearranging upgrades will alter the pointer tables and so may change a checksum that includes these tables.
That is what is happening in your case, Liz. The only rearrangement that affects the checksum is that two protocol upgrades have exchanged their positions, resulting in one table entry changing. The address at 03D7 is 02D6 in the IR download (which has a first checksum byte 6D) and is 0294 in the RMIR download (which has a first checksum byte 2F). The checksum is an XOR of all the bytes in its range, so the effect of this address change is to XOR the checksum byte with D6 and with 94. So the 6D of IR changes to
6D ^ D6 ^ 94 = 2F
which is indeed the checksum byte from RMIR. The second checksum byte is just the complement of the first.
I take your point that a download indicator is needed. I'll look into this if and when I get back to development, unless Greg has done it by then.
I can't open your .rmir files either, but I haven't yet looked into that.