Сообщение от
Валенок
Ход мысли - правильный. Из помех на пути - невозможность обращения проца к слову по нечетному адресу
Т.к. DATA байтовый, он может залечь легко и с нечетного адреса и при первом же HDR.CRC := получим ёк.
Гарантировать лежку DATA с четного адреса можно :
1.
Рукотворно после проверки и внедрения, при необходимости, например лишнего типа DATA :array[ -1...127] of byte
2.
Изначального расположения DATA в FB или в структуре с явными предварительными выравнивающими байтами типа
VAR_INPUT
d : dword;
b1,b2 : byte;
DATA : ..[0..127]
В общем развитие варианта 1.