+push @out, $self->msg('dx1', $freq) unless $valid;
+
+# check we have a callsign :-)
+if ($spotted le ' ') {
+ push @out, $self->msg('dx2');
+
+ $valid = 0;
+}
+
+return (1, @out) unless $valid;
+
+# change ^ into : for transmission
+$line =~ s/\^/:/og;
+
+# Store it here (but only if it isn't baddx)
+if (grep $_ eq $spotted, @DXProt::baddx) {
+ my $buf = Spot::formatb($freq, $spotted, $main::systime, $line, $spotter);
+ push @out, $buf;
+} else {
+ my @spot = Spot::add($freq, $spotted, $main::systime, $line, $spotter, $main::mycall);
+ if (@spot) {
+ # send orf to the users
+ DXProt::send_dx_spot($self, DXProt::pc11($spotter, $freq, $spotted, $line), @spot);
+
+# my $buf = Spot::formatb($freq, $spotted, $main::systime, $line, $spotter);
+# DXProt::broadcast_users("$buf\a\a", 'dx', $spot[0]);
+
+ # send it orf to the cluster (hang onto your tin helmets)
+# DXProt::broadcast_all_ak1a(DXProt::pc11($spotter, $freq, $spotted, $line), $DXProt::me);
+ }
+}