Hey cybernet,
I was reverse engineering your reverse engineering
, trying to port your DS4000 firmware hack which is version 00.02.00.00.04 to the latest version 00.02.01.00.03.
I was able to find the 2 magic bytes to modify (0x4899 into 0x2060) in the new firmware and then recalculated the CRC for section 00.
Then I updated the firmware on my DS4014 with my patched firmware. The update worked fine (I know because I had a 00.01.xx firmware), BUT it didn't enable the BW options neither gave me 1ns TB option.
I then went back to your 00.02.00.00.04 firmware and confirmed it enabled the BW options & 1ns TB, so I know it works on my DS4K.
Do you have any idea what the deal is with the latest DS4K firmware? I found the 0x4899 byte at 0x128a3c. It at least matched the nearby bytes almost perfectly when comparing with your firmware.
There's a big chance, of course, I was just changing the wrong bytes
Here's a diff of the hexdumps:
$ diff DS4000Update.00.02.01.00.03.orig.GEL.hex DS4000Update.00.02.01.00.03.modified.GEL.hex
4c4
< 00000030 32 62 77 f0 00 00 00 00 00 00 04 20 01 00 00 00 |2bw........ ....|
---
> 00000030 5d 10 2a 87 00 00 00 00 00 00 04 20 01 00 00 00 |].*........ ....|
75940c75940
< 00128a30 00 e8 00 00 09 e1 2d 0d 49 e1 e7 00 48 99 01 e8 |......-.I...H...|
---
> 00128a30 00 e8 00 00 09 e1 2d 0d 49 e1 e7 00 20 60 01 e8 |......-.I... `..|
Cheers!