#!/usr/bin/perl while ($s = <>) { chomp($s); chomp($s); $s =~ s/^\$//; $x = 0; for ($i = 0; $i < length($s); $i++) { $x ^= ord(substr($s, $i, 1)) } printf("\$%s*%02X\r\n", $s, $x & 0xff); }