- my $long = _half_qratoll((unpack 'AAAAAA', $qra)[0,2,4]) * 2;
- my $lat = _half_qratoll((unpack 'AAAAAA', $qra)[1,3,5]);
- return (rd($lat), rd($long));
-}
-
-sub _part_lltoqra
-{
- my ($t, $f, $n, $e) = @_;
- $n = $f * ($n - int($n));
- $e = $f * ($e - int($e));
- my $q = chr($t+$e) . chr($t+$n);
- return ($q, $n, $e);
+ my ($p1, $p2, $p3, $p4, $p5, $p6) = unpack 'AAAAAA', $qra;
+ ($p1, $p2, $p3, $p4, $p5, $p6) = (ord($p1)-ord('A'), ord($p2)-ord('A'), ord($p3)-ord('0'), ord($p4)-ord('0'), ord($p5)-ord('A'), ord($p6)-ord('A') );
+
+ my $long = ($p1*20) + ($p3*2) + (($p5+0.5)/12) - 180;
+ my $lat = ($p2*10) + $p4 + (($p6+0.5)/24) - 90;
+ return ($lat, $long);