Closed robmcmullen closed 7 years ago
If two data ranges are consecutive, i.e. one ends and the next one starts at the next byte, if the split doesn't happen to be on a boundary it can throw off the alignment. The following is a regulat data block followed by a jumpman harvest block:
hex 0001a00a hex c001a6 hex 01a6510a550a51 ; enc=$01 x=$a6 y=$51 take=$550a paint=$510a hex 0a4c0a510a4c0a ; enc=$0a x=$4c y=$0a take=$0a51 paint=$0a4c
the split should be after the 01a6 in the 2nd line, and that's where the harvest table starts, but the 01a6 is included in the first data block
Fixed with https://github.com/robmcmullen/udis/commit/51eae062fddaade3c60302fb04acb58c04189f63
If two data ranges are consecutive, i.e. one ends and the next one starts at the next byte, if the split doesn't happen to be on a boundary it can throw off the alignment. The following is a regulat data block followed by a jumpman harvest block:
the split should be after the 01a6 in the 2nd line, and that's where the harvest table starts, but the 01a6 is included in the first data block