The table below shows a snippet of block 655 on the “Copy” disk and the “CopyOfCopy” disk (on the right). It’s the dreaded 5 and 7 microseconds. Slap bang in the middle between valid bit cell windows. I did the obvious thing and adjusted my code to accept these values and re-run it. Bingo! I was able to read the sector & the whole disk hash matched.
| ##8 7.625 | ##8 8 | TRUE |
| ##6 5 | ##4 3.875 | FALSE |
| ##6 7 | ##8 8 | FALSE |
| ##4 4.75 | ##4 3.875 | TRUE |
| ##6 5.625 | ##6 6 | TRUE |
| ##4 4.125 | ##4 3.875 | TRUE |
| ##4 4.125 | ##4 4 | TRUE |
| ##4 3.875 | ##4 3.875 | TRUE |
| ##4 4.25 | ##4 4.125 | TRUE |
| ##6 6 | ##6 5.875 | TRUE |
| ##8 7.625 | ##8 8 | TRUE |
| ##8 7.25 | ##8 7.875 | TRUE |
| ##6 5 | ##4 3.875 | FALSE |
| ##4 3.875 | ##4 4 | TRUE |
The success was short-lived however. When running the new logic against the other captures it showed that two disks failed to read. By adjusting my code I’m robbing Peter to pay Paul. In the example above the preceding cell is a fair chunk out, which is causing the following cell’s window to be much larger. Maybe the code should consider this.