X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProtout.pm;h=840c4edec4f9b90213b7f970e3e1ff34e96cf663;hb=a931b090e0be3329bcbf7deddb7c17c30fa0e74a;hp=4194d6c42089a4590311928125cefb367af8202f;hpb=a1fe338de72800232a8623f592c1a62d1f994fad;p=spider.git diff --git a/perl/DXProtout.pm b/perl/DXProtout.pm index 4194d6c4..840c4ede 100644 --- a/perl/DXProtout.pm +++ b/perl/DXProtout.pm @@ -361,20 +361,29 @@ sub pc51 } my $hexlasttime = 0; -my $hexlastlet = '!'; +my $hexlastlet = 'A'; +my $hexoverflow = ''; sub hexstamp { my $t = shift || $main::systime; - if ($hexlastlet gt '>' || $t ne $hexlasttime) { + if ($t ne $hexlasttime) { $hexlasttime = $t; - $hexlastlet = '!'; + $hexoverflow = ''; + $hexlastlet = 'A'; } else { do { $hexlastlet = chr(ord($hexlastlet) + 1); + if ($hexlastlet ge '~') { + $hexlastlet = 'A'; + $hexoverflow ||= '@'; + do { + $hexoverflow = chr(ord($hexoverflow) + 1); + } while ($hexoverflow eq '^'); + } } while ($hexlastlet eq '^'); } - return sprintf "%s%08X", $hexlastlet, $hexlasttime; + return sprintf "%08X%s%s", $hexlasttime, $hexoverflow, $hexlastlet; } sub pc58 @@ -402,7 +411,7 @@ sub pc59 my $ref = $_; my $call = $ref->call; my $here = $ref->here; - $s .= $ref->enc_pc59; + $s .= '^' . $ref->enc_pc59; } push @out, sprintf "$s^%s^", get_hops(59); return @out;