I think it is not the .hex file checksum, but the checksum of the bytes in the programmed flash.
Well actually I did count only the payload inside the HEX file...so all of type "00" except the strange addresses referencing 0x90x0xxxx and so on..
Bootloader datasheet says
Bootloadable Application Checksum:
This is the basic summation checksum that is computed by adding all the bytes of the bootloadable application image (excluding the metadata section)
Well..this is exactly what I mentioned in the beginning...but to no joy (o;
Ah think I got it now...
Although you create a bootloadable file it includes the bootloader as well in the final HEX file...what a waste (o;
Nuc:psoc42xx me$ php checksum.php uart.hex
Final checksum: 160
Which then gives the expected final 0x60 value:
160 $ff xor 1 + hex. 00000060
Ah finally (o;
Was able to make a HEX file under Linux and program it successfully under Linux as well...at least the Blue LED stopped blinking (o;
So now onto debugging why my program doesn't run (o;
Just a quick update...
Patched the original cypress_linux_tools so I can also develop and flash on OS X ;-)