Using GCC 4.4.3. Getting three compile errors in routine vx7_insert_sum in source file vx7sum.c. The three lines similar to this (first line)
<code>(unsigned char) buf[VX7_ChkSum1_ADR] = vx7_sum_up (buf,VX7_ChkSum1_SRT,VX7_ChkSum1_ADR-1) & 0xff;</code>
cause errors due to assignment to an explicitly type cast object. The solution is to remove the type cast as here:
<code> buf[VX7_ChkSum1_ADR] = vx7_sum_up (buf,VX7_ChkSum1_SRT,VX7_ChkSum1_ADR-1) & 0xff;</code>
and then in source file vx7clone.c change the type of the data buffer from char to unsigned char. FInd line:
<code>char data[VX7_DATA_LEN];</code>
and change it to:
<code>unsigned char data[VX7_DATA_LEN];</code>
In my case it then compiles cleanly and vx7clone executes as expected.
This is not readable anymore.
Quick fix, is to edit ./libvxmngr/vx7sum.c and go to line 82. Starting on that line, move the "(unsigned char)" from the left of the assignment to the right. Do this for the three similar-looking statements (3 edits total).