]> thyrsus.com Git - morse-classic.git/commitdiff
Rename qso/ to qso.d/
authorEric S. Raymond <esr@thyrsus.com>
Mon, 24 Jan 2005 19:54:52 +0000 (19:54 +0000)
committerEric S. Raymond <esr@thyrsus.com>
Mon, 24 Jan 2005 19:54:52 +0000 (19:54 +0000)
37 files changed:
Makefile
qso.d/Makefile [new file with mode: 0644]
qso.d/QSO.c [new file with mode: 0644]
qso.d/antenna.h [new file with mode: 0644]
qso.d/callsign.h [new file with mode: 0644]
qso.d/city.h [new file with mode: 0644]
qso.d/cityh.h [new file with mode: 0644]
qso.d/grammar.c [new file with mode: 0644]
qso.d/heights.h [new file with mode: 0644]
qso.d/init_str.c [new file with mode: 0644]
qso.d/jobs.h [new file with mode: 0644]
qso.d/make_fre.c [new file with mode: 0644]
qso.d/misc.h [new file with mode: 0644]
qso.d/names.h [new file with mode: 0644]
qso.d/newcity.h [new file with mode: 0644]
qso.d/put_form.c [new file with mode: 0644]
qso.d/rig.h [new file with mode: 0644]
qso.d/util.c [new file with mode: 0644]
qso.d/weather.h [new file with mode: 0644]
qso/Makefile [deleted file]
qso/QSO.c [deleted file]
qso/antenna.h [deleted file]
qso/callsign.h [deleted file]
qso/city.h [deleted file]
qso/cityh.h [deleted file]
qso/grammar.c [deleted file]
qso/heights.h [deleted file]
qso/init_str.c [deleted file]
qso/jobs.h [deleted file]
qso/make_fre.c [deleted file]
qso/misc.h [deleted file]
qso/names.h [deleted file]
qso/newcity.h [deleted file]
qso/put_form.c [deleted file]
qso/rig.h [deleted file]
qso/util.c [deleted file]
qso/weather.h [deleted file]

index 5af8cbac526c2427a17bd2e016cffbe5ca07664b..707233fe41c818bb03ccf3a995b27511f822fca4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -25,7 +25,7 @@ BEEPERS = beepLinux.c beepOSS.c beepX11.c
 SOURCES = alarm.c  morse.c alarm.h beep.h $(BEEPERS)
 MANPAGES = morse.1 QSO.1 
 DOCS = README HISTORY morse.xml morse.spec $(MANPAGES)
-ALL=  $(DOCS) Makefile $(SOURCES) test_input qso/*.[ch] qso/Makefile
+ALL=  $(DOCS) Makefile $(SOURCES) test_input qso.d/*.[ch] qso.d/Makefile
 
 # The flags necessary to link with the X11 libraries.
 X11LIBS = -L/usr/X11/lib -lX11
@@ -52,8 +52,8 @@ morseOSS:     morse.o beepOSS.o
        $(CC) $(CFLAGS) -o $@ morse.o beepOSS.o -lm
 
 QSO:
-       cd qso && make
-       ln qso/QSO ./QSO
+       cd qso.d && make
+       ln qso.d/QSO ./QSO
 
 #
 # "Jocks find quartz glyph, vex BMW." is my attempt to win Stephen J. Gould's
@@ -64,16 +64,16 @@ QSO:
 # he did say it's the closest he's seen so far. - Joe Dellinger
 #
 test:  morse QSO
-       (cat test_input; qso/QSO) | morse -w 24 -l -e
+       (cat test_input; qso.d/QSO) | morse -w 24 -l -e
 
 testqso:       morse QSO
-       qso/QSO | ./morse -w 20 -l -e
+       qso.d/QSO | ./morse -w 20 -l -e
 
 all:   morse QSO
 
 clean:
        rm -f *.o morse QSO morseX11 morseLinux morseOSS
-       cd qso; make clean
+       cd qso.d; make clean
 
 pristine: clean
        rm -f $(MANPAGES)
diff --git a/qso.d/Makefile b/qso.d/Makefile
new file mode 100644 (file)
index 0000000..7368520
--- /dev/null
@@ -0,0 +1,15 @@
+CFLAGS  = -O3
+
+OBJECTS = QSO.o put_form.o make_fre.o grammar.o util.o init_str.o
+INCLUDES = antenna.h callsign.h city.h cityh.h heights.h jobs.h misc.h \
+           names.h newcity.h rig.h weather.h
+
+all:   QSO
+
+QSO:   $(OBJECTS)
+       $(CC) -o $@ $(OBJECTS)
+
+init_str.o:    $(INCLUDES)
+
+clean:
+       rm -f *.o QSO
diff --git a/qso.d/QSO.c b/qso.d/QSO.c
new file mode 100644 (file)
index 0000000..764d53a
--- /dev/null
@@ -0,0 +1,753 @@
+/*
+ * Copyright (c) 1991 Paul J. Drongowski.
+ * Copyright (c) 1992 Joe Dellinger.
+ * Copyright (c) 2005 Eric S. Raymond.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+/*
+ * Return-Path: <pjd@cadillac.siemens.com>
+ * Received: from cadillac.siemens.com by montebello.soest.hawaii.edu (4.1/montebello-MX-1.9)
+ *      id AA01487; Mon, 10 Aug 92 03:21:41 HST
+ * Received: from kevin.siemens.com by cadillac.siemens.com (4.1/SMI-4.0)
+ *      id AA25847; Mon, 10 Aug 92 09:21:37 EDT
+ * Date: Mon, 10 Aug 92 09:21:37 EDT
+ * From: pjd@cadillac.siemens.com (paul j. drongowski)
+ * Message-Id: <9208101321.AA25847@cadillac.siemens.com>
+ * To: joe@montebello.soest.hawaii.edu
+ * Status: RO
+ */
+
+/*
+ * This copy is slightly hacked by Joe Dellinger, August 1992
+ * And some more... November 1992
+ *
+ * Partially re-written by "murray@vs6.scri.fsu.edu"
+ * to use better grammar and to avoid some nonsensical
+ * responses (like claiming to be a person who's been licensed
+ * longer than they've been alive!), Jan 1994
+ *
+ * Those improvements merged with others by Joe Dellinger, Oct 1994
+ */
+
+/*
+ * Generate QSO
+ */
+
+/*
+ * When run, this program generates a single QSO. The form of the
+ * QSO is similar to QSO's one would expect to hear at a code test.
+ * It begins with a series of V's (commented out in this version),
+ * callsigns of the receiver and
+ * sender, followed by a few sentences about weather, name,
+ * occupation, etc. The QSO ends with the callsigns of the receiver
+ * and sender.
+ *
+ * All output is produced using "printf." This should make the
+ * program easy to port. Output can be piped into another program
+ * such as sparc-morse on the Sun or it can be redirected into
+ * a file (without viewing the contents of course!)
+ *
+ * The program design is similar to a "random poetry generator"
+ * or "mad-libs." Each QSO form is generated by its own C function,
+ * such as "PutForm1." Each function calls other C functions to
+ * produce the sentences in the QSO. The sentence forms are
+ * selected somewhat randomly as well as any blanks to be filled.
+ * Words and phrases are selected from several lists such as
+ * "Transceiver," "Antenna," "Job," etc. Sometimes this scheme is
+ * clever as in the formation of city names. Sometimes it is
+ * stupidly simple-minded and grammatical agreement is lost.
+ * By the way, the callsigns are real and were picked from
+ * rec.radio.amateur.misc on USENET.
+ *
+ * The program was constructed in C for Sun workstations. It uses
+ * the library function "drand48" in function "Roll" to produce
+ * pseudo-random numbers. The library function "srand48" and "time"
+ * in "main" are used to set the pseudo-random number seed.
+ *
+ * Known problems and caveats? Hey, it`s software! All Morse
+ * training programs handle the procedural signs (e.g., AR, SK)
+ * differently. The function "PutQSO" currently prints "+ %"
+ * for the AR and SK at the end of the QSO. These may be ignored,
+ * mapped into something else, or just plain cause your training
+ * program to roll over and play dead. I don`t know. This is a
+ * cheap hack.
+ *
+ * And speaking of cheap... The program will not generate all
+ * characters and pro-signs that are found on an "official" code
+ * test. This program is for practice only and should be supplemented
+ * with lots of random code.
+ *
+ * Always have fun!
+ */
+
+
+#include <sys/types.h>
+#include <time.h>
+
+char *A_Or_An (char *);
+char *Choose (char *Words[], int Number);
+int License_Seed (void);
+
+int their_age;                 /* PERSON'S AGE, SO THEY AREN'T LICENSED MORE
+                                 * THAN THEIR AGE */
+
+extern char *Transceiver[];
+extern char *Antenna[];
+extern char *UpFeet[];
+extern char *Weather1[];
+extern char *Weather2[];
+extern char *Power[];
+extern char *Job[];
+extern char *Name[];
+extern char *CallSign[];
+extern char *License[];
+extern char *City[];
+extern char *NewCity[];
+extern char *CityHeights[];
+extern char *New[];
+extern char *Heights[];
+extern char *State[];
+extern char *Frqmisc[];
+extern char *Callmisc[];
+extern char *NumMisc[];
+extern char *Miscellaneous[];
+extern char *RST[];
+
+int NXCVR;
+int NANTENNA;
+int NUPFEET;
+int NWX1;
+int NWX2;
+int NPOWER;
+int NJOB;
+int NNAME;
+int NCALLSIGN;
+char *Sender, *Receiver;
+int NLICENSE;
+int NCITY;
+int NNEWCITY;
+int NCITYHTS;
+int NNEW;
+int NHEIGHTS;
+int NSTATE;
+int NFRQMISC;
+int NFRQCALLMISC;
+
+char *FrqCallmisc[] =
+{
+    "QRW %s %d",
+    "QRZ %s %d",
+    "QSN %s %d",
+    "QSX %s %d",
+    "QRW %s %d?",
+    "QRZ %s %d?",
+    "QSN %s %d?",
+    "QSX %s %d?",
+    0
+};
+
+int NCALLMISC;
+int NNUMMISC;
+int NMISC;
+int NRST;
+
+
+/*
+ *************************************
+ * Routines to put sentences/clauses *
+ *************************************
+  */
+
+void
+PutMisc (void)
+{
+    printf ("%s\n", Choose (Miscellaneous, NMISC));
+}
+
+void
+PutThanks (void)
+{
+    switch (Roll (6))
+      {
+      case 2:
+         printf ("Thanks for your call.\n");
+         break;
+
+      case 3:
+         printf ("Tnx for ur call.\n");
+         break;
+
+      case 4:
+         printf ("Tnx for the call.\n");
+         break;
+
+      case 5:
+         printf ("Thanks for the call.\n");
+         break;
+
+      default:
+         printf ("Thanks %s for the call.\n", Choose (Name, NNAME));
+         break;
+      }
+}
+
+void
+PutName (void)
+{
+    switch (Roll (6))
+      {
+      case 2:
+         printf ("Name is %s.\n", Choose (Name, NNAME));
+         break;
+
+      case 4:
+         printf ("This is %s.\n", Choose (Name, NNAME));
+         break;
+
+      case 5:
+         printf ("%s here.\n", Choose (Name, NNAME));
+         break;
+
+      default:
+         printf ("My name is %s.\n", Choose (Name, NNAME));
+         break;
+      }
+}
+
+void
+PutJob (void)
+{
+    switch (Roll (20))
+      {
+      case 2:
+      case 3:
+         printf ("My occupation is %s.\n", Choose (Job, NJOB));
+         break;
+
+      case 4:
+      case 5:
+         printf ("I work as %s.\n", A_Or_An (Choose (Job, NJOB)));
+         break;
+
+      case 6:
+         printf ("I was %s, now unemployed.\n", A_Or_An (Choose (Job, NJOB)));
+         break;
+
+      case 11:
+      case 12:
+         printf ("Occupation is %s.\n", Choose (Job, NJOB));
+         break;
+
+      default:
+         printf ("I am %s.\n", A_Or_An (Choose (Job, NJOB)));
+         break;
+      }
+}
+
+void
+PutAge (void)
+{
+
+    their_age = Roll (60) + 16;
+
+    switch (Roll (5))
+      {
+      case 3:
+         printf ("My age is %d.\n", their_age);
+         break;
+
+      case 4:
+         printf ("I am %d years old.\n", their_age);
+         break;
+
+      default:
+         printf ("Age is %d.\n", their_age);
+         break;
+      }
+}
+
+void
+PutLicense (void)
+{
+int get_years_licence;
+
+    get_years_licence = Roll (License_Seed ());
+    if (get_years_licence < 2)
+       get_years_licence = 2;
+
+    switch (Roll (12))
+      {
+      case 1:
+         printf ("I have %s class licence.\n",
+                 A_Or_An (Choose (License, NLICENSE)));
+         break;
+
+      case 2:
+         printf ("I am %s license ham.\n",
+                 A_Or_An (Choose (License, NLICENSE)));
+         break;
+
+      case 3:
+         printf ("I am %s licence ham.\n",
+                 A_Or_An (Choose (License, NLICENSE)));
+         break;
+
+      case 4:
+         printf ("I have been licenced %d years as %s class.\n",
+                 get_years_licence, Choose (License, NLICENSE));
+         break;
+
+      case 5:
+         printf ("I have %s class license.\n",
+                 A_Or_An (Choose (License, NLICENSE)));
+         break;
+
+      case 6:
+         printf ("I am %s class ham.\n",
+                 A_Or_An (Choose (License, NLICENSE)));
+         break;
+
+      case 7:
+         printf ("I have been licensed %d years as %s class.\n",
+                 get_years_licence, Choose (License, NLICENSE));
+         break;
+
+      default:
+         printf ("I have been %s class ham for %d years.\n",
+                 A_Or_An (Choose (License, NLICENSE)), get_years_licence);
+         break;
+      }
+}
+
+void
+PutTemperature (void)
+{
+    printf ("Temperature is %d.\n", Roll (80) + 10);
+}
+
+void
+PutWeather1 (void)
+{
+    switch (Roll (17))
+      {
+      case 2:
+         printf ("WX is %s.\n", Choose (Weather1, NWX1));
+         PutTemperature ();
+         break;
+
+      case 3:
+         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 4:
+         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 5:
+         printf ("WX is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 6:
+         PutTemperature ();
+         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 7:
+         PutTemperature ();
+         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 8:
+         PutTemperature ();
+         printf ("WX is %s.\n", Choose (Weather1, NWX1));
+         break;
+
+      case 9:
+         printf ("Weather here is %s and temperature is %d.\n",
+                 Choose (Weather1, NWX1), Roll (80) + 10);
+         break;
+
+      case 10:
+         printf ("Weather is %s, temperature %d.\n",
+                 Choose (Weather1, NWX1), Roll (80) + 10);
+         break;
+
+      case 11:
+         printf ("WX is %d degrees and %s.\n",
+                 Roll (80) + 10, Choose (Weather1, NWX1));
+         break;
+
+      case 12:
+         printf ("The WX is %s and the temp is %d degrees.\n",
+                 Choose (Weather1, NWX1), Roll (80) + 10);
+         break;
+
+      case 14:
+         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
+         PutTemperature ();
+         break;
+
+      case 15:
+         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
+         PutTemperature ();
+         break;
+
+      default:
+         printf ("WX is %s and %d degrees.\n",
+                 Choose (Weather1, NWX1), Roll (80) + 10);
+      }
+}
+
+void
+PutWeather2 (void)
+{
+
+    switch (Roll (10))
+      {
+      case 0:
+         printf ("It is %s.\n", Choose (Weather2, NWX2));
+         break;
+
+      case 1:
+         printf ("It is %s and %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (80) + 10);
+         break;
+
+      case 2:
+         printf ("The WX is %s and the temp is %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (80) + 10);
+         break;
+
+      case 3:
+         printf ("WX is %s and the temp is %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (80) + 10);
+         break;
+
+      case 4:
+         printf ("It is %s today.\n", Choose (Weather2, NWX2));
+         break;
+
+      case 5:
+         printf ("It is %s and %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (100) + 3);
+         break;
+
+      case 6:
+         printf ("The WX is %s and the temp is %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (90) + 10);
+         break;
+
+      case 7:
+         printf ("WX is %s and the temp is %d degrees.\n",
+                 Choose (Weather2, NWX2), Roll (80) + 10);
+         break;
+
+      default:
+         printf ("It is %s here.\n", Choose (Weather2, NWX2));
+         break;
+      }
+}
+
+void
+PutWeather (void)
+{
+    switch (Roll (4))
+      {
+      case 3:
+         PutWeather1 ();
+         break;
+
+      default:
+         PutWeather2 ();
+         break;
+      }
+}
+
+void
+PutCityState (void)
+{
+    switch (Roll (6))
+      {
+      case 4:
+         printf ("%s %s, ",
+               Choose (CityHeights, NCITYHTS), Choose (Heights, NHEIGHTS));
+         break;
+
+      case 5:
+         printf ("%s %s, ", Choose (New, NNEW), Choose (NewCity, NNEWCITY));
+         break;
+
+      default:
+         printf ("%s, ", Choose (City, NCITY));
+         break;
+      }
+    printf ("%s.\n", Choose (State, NSTATE));
+}
+
+void
+PutLocation (void)
+{
+
+    switch (Roll (5))
+      {
+      case 3:
+         printf ("My QTH is ");
+         break;
+
+      case 4:
+         printf ("My location is ");
+         break;
+
+      default:
+         printf ("QTH is ");
+         break;
+
+      }
+    PutCityState ();
+}
+
+void
+PutRig (void)
+
+{
+    switch (Roll (19))
+      {
+      case 0:
+      case 1:
+         printf ("My rig runs %s watts into %s up %s feet.\n",
+              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+
+      case 2:
+      case 3:
+         printf ("Rig is a %s watt %s and antenna is %s.\n",
+                 Choose (Power, NPOWER), Choose (Transceiver, NXCVR),
+                 A_Or_An (Choose (Antenna, NANTENNA)));
+         break;
+
+      case 4:
+      case 5:
+         printf ("My transceiver is %s.\n", A_Or_An (Choose (Transceiver, NXCVR)));
+         printf ("It runs %s watts into %s.\n",
+             Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)));
+         break;
+
+      case 6:
+      case 7:
+         printf ("The rig is %s running %s watts.\n",
+            A_Or_An (Choose (Transceiver, NXCVR)), Choose (Power, NPOWER));
+         printf ("Antenna is %s up %s m.\n",
+           A_Or_An (Choose (Antenna, NANTENNA)), Choose (UpFeet, NUPFEET));
+         break;
+
+      case 8:
+      case 9:
+      case 10:
+      case 11:
+         printf ("My rig runs %s watts into %s up %s meters.\n",
+              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+
+      case 12:
+         printf ("My rig runs %s watts into %s up %s feet, but\nthe antenna has partly fallen.\n",
+              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+
+      case 13:
+         printf ("Rig is %s running %s watts into %s up %s ft.\n",
+             A_Or_An (Choose (Transceiver, NXCVR)), Choose (Power, NPOWER),
+           A_Or_An (Choose (Antenna, NANTENNA)), Choose (UpFeet, NUPFEET));
+         break;
+
+      case 14:
+         printf ("My rig runs %s watts into %s up %s feet.\n",
+              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+
+      case 15:
+         printf ("Rig is %s watt %s and antenna is %s.\n",
+                 A_Or_An (Choose (Power, NPOWER)),
+                 Choose (Transceiver, NXCVR),
+                 Choose (Antenna, NANTENNA));
+         break;
+
+      case 16:
+         printf ("My transceiver is %s.\n",
+                 A_Or_An (Choose (Transceiver, NXCVR)));
+         printf ("It runs %s watts into %s.\n",
+                 Choose (Power, NPOWER),
+                 A_Or_An (Choose (Antenna, NANTENNA)));
+         break;
+
+      case 17:
+         printf ("The rig is %s running %s watts.\n",
+                 A_Or_An (Choose (Transceiver, NXCVR)),
+                 Choose (Power, NPOWER));
+         printf ("Antenna is %s up %s feet.\n",
+                 A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+
+      default:
+         printf ("Rig is %s ",
+                 A_Or_An (Choose (Transceiver, NXCVR)));
+         printf ("running %s watts into %s up %s feet.\n",
+                 Choose (Power, NPOWER),
+                 A_Or_An (Choose (Antenna, NANTENNA)),
+                 Choose (UpFeet, NUPFEET));
+         break;
+      }
+}
+
+void
+PutRST (void)
+{
+register char *TheRST;
+
+    TheRST = Choose (RST, NRST);
+
+    switch (Roll (8))
+      {
+      case 0:
+         printf ("UR RST %s=%s.\n", TheRST, TheRST);
+         break;
+
+      case 1:
+         printf ("RST is %s=%s.\n", TheRST, TheRST);
+         break;
+
+      case 2:
+         printf ("RST %s=%s.\n", TheRST, TheRST);
+         break;
+
+      case 3:
+         printf ("Your RST %s=%s.\n", TheRST, TheRST);
+         break;
+
+      case 4:
+         printf ("Your RST is %s=%s.\n", TheRST, TheRST);
+         break;
+
+      case 5:
+         printf ("Your signal is RST %s/%s.\n", TheRST, TheRST);
+         break;
+
+      case 6:
+         printf ("UR signal is RST %s,%s.\n", TheRST, TheRST);
+         break;
+
+      default:
+         printf ("Your RST is %s/%s.\n", TheRST, TheRST);
+         break;
+      }
+}
+
+
+void
+PutQ_And_Freq (void)
+{
+    switch (Roll (8))
+      {
+      case 2:
+         printf (Frqmisc[Roll (NFRQMISC)], make_freq ());
+         printf ("\n");
+         break;
+
+      case 3:
+         printf (Callmisc[Roll (NFRQMISC)],
+                 Choose (CallSign, NCALLSIGN));
+         printf ("\n");
+         break;
+
+      case 4:
+         printf (FrqCallmisc[Roll (NFRQCALLMISC)],
+                 Choose (CallSign, NCALLSIGN),
+                 make_freq ());
+         printf ("\n");
+         break;
+
+      case 5:
+         printf (NumMisc[Roll (NNUMMISC)],
+                 Roll (3) + Roll (2) + 1);
+         printf ("\n");
+         break;
+
+      default:
+         break;
+
+      }
+}
+
+void
+PutFirstCallsign (void)
+{
+    Sender = Choose (CallSign, NCALLSIGN);
+    Receiver = Choose (CallSign, NCALLSIGN);
+    printf ("%s de %s\n", Receiver, Sender);
+}
+
+void
+PutLastCallsign (void)
+{
+    printf ("%s de %s\n", Receiver, Sender);
+}
+
+main (int argc, char **argv)
+{
+
+    NXCVR = CountStrings (Transceiver);
+    NANTENNA = CountStrings (Antenna);
+    NUPFEET = CountStrings (UpFeet);
+    NPOWER = CountStrings (Power);
+    NRST = CountStrings (RST);
+    NWX1 = CountStrings (Weather1);
+    NWX2 = CountStrings (Weather2);
+    NJOB = CountStrings (Job);
+    NNAME = CountStrings (Name);
+    NSTATE = CountStrings (State);
+    NCITY = CountStrings (City);
+    NCITYHTS = CountStrings (CityHeights);
+    NNEW = CountStrings (New);
+    NHEIGHTS = CountStrings (Heights);
+    NNEWCITY = CountStrings (NewCity);
+    NLICENSE = CountStrings (License);
+    NMISC = CountStrings (Miscellaneous);
+    NCALLSIGN = CountStrings (CallSign);
+    NFRQMISC = CountStrings (Frqmisc);
+    NFRQCALLMISC = CountStrings (FrqCallmisc);
+    NCALLMISC = CountStrings (Callmisc);
+    NNUMMISC = CountStrings (NumMisc);
+
+    srand48 ((long) time (0));
+
+    PutQSO ();
+
+    return 0;
+}
diff --git a/qso.d/antenna.h b/qso.d/antenna.h
new file mode 100644 (file)
index 0000000..1452605
--- /dev/null
@@ -0,0 +1,33 @@
+"10 meter dipole",
+"10 meter whip",
+"3 element beam",
+"5 band vertical",
+"5 element loop",
+"7 band beam",
+"beam",
+"delta loop",
+"dipole",
+"doublet zepp",
+"dummy load",
+"ground=plane",
+"half wave dipole",
+"inverted V",
+"light bulb",
+"log periodic",
+"long=wire",
+"monobander",
+"parasitic beam",
+"quad loop",
+"quad vertical",
+"quagi",
+"quarter wave vertical",
+"random wire up 2 kite",
+"random wire up to kite",
+"random wire",
+"rhombic",
+"symmetrical delta loop",
+"trap doublet",
+"tribander",
+"whip",
+"yagi",
+"zepp",
diff --git a/qso.d/callsign.h b/qso.d/callsign.h
new file mode 100644 (file)
index 0000000..ed69af0
--- /dev/null
@@ -0,0 +1,108 @@
+"AA0ET",
+"AA4LR",
+"AA5BT",
+"AA6NP",
+"AA6YD",
+"AA9BK",
+"AB5AP",
+"AB6FI",
+"AC4HF",
+"G0GWA",
+"GM4ZNX",
+"I5FLN",
+"IK5AAX",
+"JA1BLV",
+"JY1",
+"K2WK",
+"K5RC",
+"K6OCK",
+"K6XO",
+"K9ALD",
+"KA0WCH",
+"KA1AXY",
+"KA1CV",
+"KA1UTU",
+"KA1ZGC",
+"KA2RAF",
+"KA6S",
+"KB0CY",
+"KB2NRH",
+"KB6CSP",
+"KB6JXT",
+"KC6SKV",
+"KC6SSS",
+"KC6TDR",
+"KC6VWV",
+"KD3FU",
+"KD4AUS",
+"KD4CPL",
+"KE2TP",
+"KE4ZV",
+"KF6BZF",
+"KF8NH",
+"KJ6NN",
+"KJ9U",
+"KJ9U/KH6",
+"KK6JQ",
+"KM3T",
+"KT7H",
+"N1AL",
+"N1JCX",
+"N4PBK",
+"N4VRN",
+"N5IAL",
+"N5OP",
+"N6BIS",
+"N6MWC",
+"N6TTO",
+"N8EMR",
+"N9FZX",
+"N9JRV",
+"N9LFF",
+"N9MYI",
+"NE3X",
+"NH6EG",
+"NH6EG/5",
+"NH6ZW",
+"NJ7E",
+"NR3Z",
+"NT1G",
+"OD5NG",
+"OH3BK",
+"OH8NUP",
+"TG9VT",
+"UT5RP",
+"VE6MGS",
+"VE7EMD",
+"VK2BQS",
+"VK2EG",
+"W0PBV",
+"W0RIJ",
+"W0RSB",
+"W2FG",
+"W2JGR",
+"W3GRG",
+"W3OTC",
+"WA1UXA",
+"WA2AGE",
+"WA3EEC",
+"WA3TBL",
+"WA3UQV",
+"WA5RPF",
+"WA6DGX",
+"WA7VYJ",
+"WA8ZGO",
+"WB2CJL",
+"WB4JCM",
+"WB5FDP",
+"WB5FKH",
+"WB5NRN",
+"WB7CJO",
+"WB7EEL",
+"WB7TZA",
+"WB8EOH",
+"WB9IVR",
+"WD0EIB",
+"WH6UR",
+"WH6UR/5",
+"WX9T",
diff --git a/qso.d/city.h b/qso.d/city.h
new file mode 100644 (file)
index 0000000..b3c74b9
--- /dev/null
@@ -0,0 +1,179 @@
+"Agassiz",
+"Aiea",
+"Alexander",
+"Asbury",
+"Baker",
+"Bayaney",
+"Beckley",
+"Bedford",
+"Bixby",
+"Branyan",
+"Brazoria",
+"Broken Arrow",
+"Brunswick",
+"Bryan",
+"Burnsville",
+"Buzzard",
+"Cambridge",
+"Carrizo",
+"Catoosa",
+"Chamizal",
+"Charleston",
+"Chepiwanoxet",
+"Chesuncook",
+"Chinquapin",
+"Circleville",
+"Claquato",
+"Clarksburg",
+"Clarksville",
+"Clear Lake",
+"Cleveland",
+"College",
+"Crystal",
+"Duncanville",
+"Elizabeth",
+"Enid",
+"Ewa",
+"Faalaaga",
+"Fairbanks",
+"Fairfax",
+"Fairfield",
+"Flamboyant Gardens",
+"Flint",
+"Gahanna",
+"Gappas",
+"Glenpool",
+"Grant",
+"Greensburg",
+"Guyandotte",
+"Guyanoga",
+"Harper Valley",
+"Harper",
+"Harquahala",
+"Hells Crossing",
+"Hill Valley",
+"Hillsdale",
+"Honolulu",
+"Hyannis",
+"Iraan",
+"Iyanbito",
+"Jamestown",
+"Jefferson",
+"Jenks",
+"Juncos",
+"Kaaawa",
+"Kohlsaat",
+"Kona",
+"Laager",
+"Lakewood",
+"Lancaster",
+"Lawrenceville",
+"Leyan",
+"Lincoln",
+"Litchfield",
+"London",
+"Long Branch",
+"Luxello",
+"Lyndale",
+"Lyndhurst",
+"Lynnville",
+"Maaloon",
+"Maitwan",
+"Manasquan",
+"Mansfield",
+"Maple",
+"Meadows",
+"Melbourne",
+"Mentor",
+"Mercer",
+"Mesquite",
+"Midland",
+"Milldale",
+"Milltown",
+"Moorestown",
+"Moscow",
+"Mountain View",
+"Moxee",
+"Murray",
+"Muskogee",
+"Musquiz",
+"Naxera",
+"New London",
+"Newfield",
+"Newport",
+"Nipgen",
+"Nisqually",
+"Nome",
+"Noname",
+"Noxubee",
+"Nutzotin",
+"Oak",
+"Occoquan",
+"Olmstead",
+"Owasso",
+"Oxford",
+"Oxnard",
+"Paradise",
+"Paris",
+"Pattaquattic",
+"Pawtuxet",
+"Perry",
+"Piscataquis",
+"Potter",
+"Pottsville",
+"Praag",
+"Quanah",
+"Quebec",
+"Redwood",
+"Rueechayaam",
+"Russellville",
+"Salem",
+"San Pasqual",
+"Sandy",
+"Sapulpa",
+"Saratoga",
+"Sequatchie",
+"Smithville",
+"Snoqualmie",
+"Springdale",
+"Springfield",
+"Squaxin",
+"Starkville",
+"Sunnyvale",
+"Sunset Valley",
+"Suquamish",
+"Tahlequah",
+"Tahquamenon",
+"Texoma",
+"Texum",
+"Tinker",
+"Trenton",
+"Tulsa",
+"Twisp",
+"Umpqua",
+"Union",
+"Uruguay",
+"Utica",
+"Vancouver",
+"Verona",
+"Viroqua",
+"Vista",
+"Waldberggaard",
+"Walnut",
+"Warners Landing",
+"Warren",
+"Warsaw",
+"Washington",
+"Wesleyanna",
+"Weston",
+"Wheatfield",
+"Williamson",
+"Worchester",
+"Wyandanch",
+"Xanthus",
+"Xenia",
+"Yangtze",
+"Yellowstone",
+"Yreka",
+"Zolton",
+"Zuni",
diff --git a/qso.d/cityh.h b/qso.d/cityh.h
new file mode 100644 (file)
index 0000000..fa1979b
--- /dev/null
@@ -0,0 +1,46 @@
+"Apple",
+"Ashford",
+"Baker",
+"Baldwin",
+"Banner",
+"Barnard",
+"Benton",
+"Cabbot",
+"Carson",
+"Chester",
+"College",
+"Conway",
+"Cornwall",
+"Crystal",
+"Duxbury",
+"Fletcher",
+"Franklin",
+"Granite",
+"Grant",
+"Guyan",
+"Hamilton",
+"Harper",
+"Hickory",
+"Hoosick",
+"Jefferson",
+"Lincoln",
+"Maple",
+"Mercer",
+"Morgan",
+"Morris",
+"Murray",
+"Oak",
+"Orwell",
+"Oswego",
+"Perry",
+"Potter",
+"Quail",
+"Salem",
+"Stafford",
+"Stone",
+"Tinker",
+"Walnut",
+"Warren",
+"Washington",
+"Weston",
+"Wilton",
diff --git a/qso.d/grammar.c b/qso.d/grammar.c
new file mode 100644 (file)
index 0000000..173309d
--- /dev/null
@@ -0,0 +1,32 @@
+int
+is_vowel (first_char)
+     char first_char;
+{
+    if (
+          first_char == 'A' ||
+          first_char == 'E' ||
+          first_char == 'I' ||
+          first_char == 'O' ||
+          first_char == 'U' ||
+          first_char == 'a' ||
+          first_char == 'e' ||
+          first_char == 'i' ||
+          first_char == 'o' ||
+          first_char == 'u'
+     )
+       return (1);
+    return (0);
+}
+
+char buffer[200];
+
+char *
+A_Or_An (string)
+     char *string;
+{
+    if (is_vowel (string[0]) == 1)
+       sprintf (buffer, "an %s", string);
+    else
+       sprintf (buffer, "a %s", string);
+    return ((char *) buffer);
+}
diff --git a/qso.d/heights.h b/qso.d/heights.h
new file mode 100644 (file)
index 0000000..5b7788c
--- /dev/null
@@ -0,0 +1,37 @@
+"Beach",
+"Canyon",
+"Castle",
+"City",
+"Corner",
+"Cove",
+"Creek",
+"Estates",
+"Forest",
+"Gardens",
+"Glen",
+"Grove",
+"Harbor",
+"Heights",
+"Hill",
+"Hills",
+"Hole",
+"Island",
+"Knob",
+"Lake",
+"Meadow",
+"Meadows",
+"Mill",
+"Mountain",
+"Neck",
+"Palisades",
+"Park",
+"Pass",
+"Plantation",
+"Ridge",
+"River",
+"Springs",
+"Station",
+"Swale",
+"Terrace",
+"Valley",
+"Wood",
diff --git a/qso.d/init_str.c b/qso.d/init_str.c
new file mode 100644 (file)
index 0000000..ae69660
--- /dev/null
@@ -0,0 +1,266 @@
+char *Transceiver[] =
+{
+#include "rig.h"
+    0
+};
+
+char *Antenna[] =
+{
+#include "antenna.h"
+    0
+};
+
+char *UpFeet[] =
+{
+    "10", "15", "20", "25", "30", "35", "40", "45",
+    "50", "55", "60", "65", "70", "75", "80", "85",
+    "90", "95", "100",
+    "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20",
+    "10 1/2", "11 1/2", "25", "29 1/2", "30", "35", "40", "42",
+    "45", "45 1/2", "45.5",
+    "50", "55", "60", "62", "65", "70", "75", "80", "85", "87 1/3",
+    "90", "95", "100", "103", "137", "189 1/2", "210", "246", "250",
+    0
+};
+
+char *Weather1[] =
+{
+    "sunny",
+    "rain",
+    "freezing rain",
+    "sleet",
+    "snow",
+    "cloudy",
+    "partly cloudy",
+    "partly sunny",
+    "clear",
+    0
+};
+
+char *Weather2[] =
+{
+#include "weather.h"
+    0
+};
+
+char *Power[] =
+{
+    "2", "5", "10", "20", "25", "40", "50", "80", "100",
+    "125", "140", "150", "170", "200", "250", "270", "300",
+    0
+};
+
+char *Job[] =
+{
+#include "jobs.h"
+    0
+};
+
+char *Name[] =
+{
+#include "names.h"
+    0
+};
+
+char *CallSign[] =
+{
+#include "callsign.h"
+    0
+};
+
+char *License[] =
+{
+    "Novice",
+    "Technician",
+    "Tech",
+    "Tech plus",
+    "Tech plus",
+    "Tech plus",
+    "Tech plus",
+    "Tech no code",
+    "General",
+    "Advanced",
+    "Extra",
+    "Extra",
+    "Extra",
+    0
+};
+
+char *City[] =
+{
+#include "city.h"
+    0
+};
+
+char *NewCity[] =
+{
+#include "newcity.h"
+    0
+};
+
+char *CityHeights[] =
+{
+#include "cityh.h"
+    0
+};
+
+char *New[] =
+{
+    "New",
+    "Old",
+    "North",
+    "South",
+    "East",
+    "West",
+    "New",
+    "Old",
+    "North",
+    "Northeast",
+    "Northwest",
+    "South",
+    "Southwest",
+    "Southeast",
+    "East",
+    "West",
+    "Upper",
+    "Lower",
+    0
+};
+
+char *Heights[] =
+{
+#include "heights.h"
+    0
+};
+
+char *State[] =
+{
+    "Alabama",
+    "Alaska",
+    "Arizona",
+    "Arkansas",
+    "California",
+    "Colorado",
+    "Connecticut",
+    "District of Columbia",
+    "Delaware",
+    "Florida",
+    "Georgia",
+    "Guam",
+    "Hawaii",
+    "Idaho",
+    "Illinois",
+    "Indiana",
+    "Iowa",
+    "Kansas",
+    "Kentucky",
+    "Louisiana",
+    "Maine",
+    "Maryland",
+    "Massachusetts",
+    "Michigan",
+    "Midway",
+    "Minnesota",
+    "Mississippi",
+    "Missouri",
+    "Montana",
+    "Nebraska",
+    "Nevada",
+    "New Hampshire",
+    "New Jersey",
+    "New Mexico",
+    "New York",
+    "North Carolina",
+    "North Dakota",
+    "Ohio",
+    "Oklahoma",
+    "Oregon",
+    "Pennsylvania",
+    "Puerto Rico",
+    "Rhode Island",
+    "Saipan",
+    "American Samoa",
+    "South Carolina",
+    "South Dakota",
+    "Tennessee",
+    "Texas",
+    "Utah",
+    "Vermont",
+    "Virginia",
+    "Virgin Islands",
+    "Wake Island",
+    "Washington",
+    "West Virginia",
+    "Wisconsin",
+    "Wyoming",
+    0
+};
+
+char *Frqmisc[] =
+{
+    "QSN %d?",
+    "QSU %d?",
+    "QSW %d?",
+    "QSN %d",
+    "QSU %d",
+    "QSW %d",
+    0
+};
+
+char *Callmisc[] =
+{
+    "QRK %s",
+    "QRL %s",
+    "QRZ %s",
+    "QSP %s",
+    "QRK %s?",
+    "QRL %s?",
+    "QRZ %s?",
+    "QSP %s?",
+    0
+};
+
+char *NumMisc[] =
+{
+    "QRI %d",
+    "QRK %d",
+    "QRM %d",
+    "QRN %d",
+    "QRS %d",
+    "QRY %d",
+    "QSG %d",
+    "QTA %d",
+    "QTC %d",
+    "QRI %d?",
+    "QRK %d?",
+    "QRM %d?",
+    "QRN %d?",
+    "QRS %d?",
+    "QRY %d?",
+    "QSG %d?",
+    "QTA %d?",
+    "QTC %d?",
+    0
+};
+
+char *Miscellaneous[] =
+{
+#include "misc.h"
+    0
+};
+
+char *RST[] =
+{
+    "555",
+    "577",
+    "578",
+    "579",
+    "588",
+    "589",
+    "599",
+    "478",
+    "354",
+    "248",
+    "126",
+    0
+};
diff --git a/qso.d/jobs.h b/qso.d/jobs.h
new file mode 100644 (file)
index 0000000..6605174
--- /dev/null
@@ -0,0 +1,71 @@
+"administrator",
+"airline pilot",
+"artist",
+"attorney",
+"bricklayer",
+"bus driver",
+"carpenter",
+"chemist",
+"clerk",
+"clown",
+"college student",
+"consultant",
+"cook",
+"corporate liquidator",
+"curator",
+"dentist",
+"designer",
+"director",
+"doctor",
+"driver",
+"electrician",
+"engineer",
+"farmer",
+"fireman",
+"gardener",
+"geophysicist",
+"guard",
+"high school student",
+"hs student",
+"human resource consultant",
+"investment banker",
+"janitor",
+"jr college student",
+"juggler and unicyclist",
+"junior college student",
+"lawyer",
+"letter carrier",
+"librarian",
+"mafia killer",
+"mathematician",
+"mechanic",
+"midwife",
+"milkman",
+"nurse",
+"orthodontist",
+"pacifist",
+"painter",
+"petroleum engineer",
+"physician",
+"physicist",
+"police officer",
+"politician",
+"prison guard",
+"professor",
+"programmer",
+"researcher",
+"sailor",
+"sanitation worker",
+"sculptor",
+"secretary",
+"security guard",
+"semiotician",
+"soldier",
+"sql programmer",
+"stock broker",
+"student",
+"systems analyst",
+"teacher",
+"teller",
+"vulcanologist",
+"writer",
diff --git a/qso.d/make_fre.c b/qso.d/make_fre.c
new file mode 100644 (file)
index 0000000..412a463
--- /dev/null
@@ -0,0 +1,28 @@
+#define M80 2
+#define M40 3
+#define M15 4
+#define M10 5
+#define NUM_BAND 4
+
+int
+make_freq (void)
+{
+    switch (Roll (NUM_BAND + 2))
+      {
+      case M80:
+         return (3675 + Roll (50));
+         break;
+      case M40:
+         return (7100 + Roll (50));
+         break;
+      case M15:
+         return (21100 + Roll (100));
+         break;
+      case M10:
+         return (28100 + Roll (200));
+         break;
+      default:
+         return (7100 + Roll (50));
+         break;
+      }
+}
diff --git a/qso.d/misc.h b/qso.d/misc.h
new file mode 100644 (file)
index 0000000..e10b2ce
--- /dev/null
@@ -0,0 +1,293 @@
+"+%=x/,? 73 just testing you.",
+",?/=+9% 73 just testing you.",
+",?/=q+% 73 just testing u.",
+"8y67fvgb oops cat on keyboard.",
+"9p0ojgbhnw23 oops cat on keyboard.",
+"%w=+/,? 73 just testing you.",
+"A clumsy gecko just fell on my hand.",
+"Are you a communist?",
+"Are you a democrat?",
+"Are you a libertarian?",
+"Are you a republican?",
+"Are you divorced?",
+"Are you good at auto repair?",
+"Are you good at calculus? I have a question for you.",
+"Are you good at car repair? I have a question for you.",
+"Are you good at group theory? I have a question for you.",
+"Are you good at summing infinite series?",
+"Are you married?",
+"Are you on daylight savings time?",
+"Are you single?",
+"Are you using a linear amplifier?",
+"Are you using an iambic key?",
+"Are you widowed?",
+"Aye, laddie, have you ever been to sea?",
+"Can you pick kryptonite locks? Those are tricky.",
+"Can you pick kryptonite locks?",
+"Can you pick master locks? Those are supposed to be easy.",
+"Can you think of something else interesting to say?",
+"Copy?",
+"Cpy?",
+"Did you attend ORU?",
+"Did you hear news?",
+"Did you hear the news?",
+"Do u understand English?",
+"Do you have a baby?",
+"Do you have a cat?",
+"Do you have a dog?",
+"Do you have a ferret?",
+"Do you have a gecko?",
+"Do you have a horse?",
+"Do you know morse code?",
+"Do you know the word copacetic?",
+"Do you know the word garrulous?",
+"Do you know the word prosy?",
+"Do you know what a pangram is?",
+"Do you like bach?",
+"Do you like bernstein?",
+"Do you like c and w music?",
+"Do you like classical music?",
+"Do you like country music?",
+"Do you like hawaiian music?",
+"Do you like jawaiian music?",
+"Do you like modern rock?",
+"Do you like mozart?",
+"Do you like pop music?",
+"Do you like reggae music?",
+"Do you like rock music?",
+"Do you like swing music?",
+"Do you listen to Deutsche Welle?",
+"Do you listen to Radio Australia?",
+"Do you listen to Radio Moscow?",
+"Do you listen to Radio New Zealand Intl?",
+"Do you listen to Radio Peace Peoples Republic of Korea?",
+"Do you listen to VOA?",
+"Do you listen to click and clack on PBS?",
+"Do you listen to the BBC?",
+"Do you prefer metric units?",
+"Do you recycle often?",
+"Do you understand English?",
+"Do you watch Quantum Leap?",
+"Do you watch STTNG?",
+"Do you watch Simpsons?",
+"Gaverete Ruskie?",
+"Habla espanol?",
+"Has the war started yet?",
+"Have a nice T day.",
+"Have a nice thanksgiving.",
+"Have you been to Hawaii recently?",
+"Have you been to Kauai since Iniki?",
+"Have you ever been to New Madrid, Missouri?",
+"Have you ever been to the Chatham islands?",
+"Have you ever contacted Kalawao county, Molokai?",
+"Have you ever contacted Loving county, Texas?",
+"Have you ever played lemmings?",
+"Have you ever played tetris?",
+"Have you ever seen a computer virus?",
+"How copy so far?",
+"How copy?",
+"How did you learn morse code?",
+"How is my signal?",
+"How is the weather?",
+"How long have you been a radio amateur?",
+"How old is your rig?",
+"Hows my signal?",
+"Hows the weather?",
+"I am mobile and am going to the office.",
+"I am mobile and am going to work.",
+"I am mobile and driving to work.",
+"I am mobile, driving cross country.",
+"I am mobile, driving home from work.",
+"I am mobile, riding a Peruvian Paso Fino horse.",
+"I am mobile, riding a Peruvian Paso horse.",
+"I am mobile, stuck in traffic.",
+"I am using a linear amplifier.",
+"I am using an iambic key.",
+"I just saw a bolide.",
+"I live at 10 Downing.",
+"I live at 1010 Springwood.",
+"I live at 1620 Keeaumoku.",
+"I live at 2500 Pennsylvania.",
+"I live at 61C Escondido.",
+"I sometimes monitor ULF for earthquake precursors.",
+"I sometimes monitor ulf for earthquake precursors.",
+"I sometimes work packet on vhf.",
+"Is it green there or brown?",
+"Is the bad news true?",
+"Is your state the one that doesnt have any city governments?",
+"Is your state the one that has a unicameral legislature?",
+"Is your state the one that has boroughs instead of counties?",
+"Is your state the one that has parishes instead of counties?",
+"Is your state the one that has townships instead of counties?",
+"Ive fallen and I cant get up.",
+"Jocks find quartz glyph, vex BMW.",
+"Jocks find quartz glyph, vex BMW.",
+"Jocks find quartz glyph, vex BMW.",
+"Lots of QRM.",
+"Mele kelikimaka and hauoli makahiki hou 1995.",
+"Must QRT for Babylon V.",
+"Must QRT for Star Trek.",
+"Must QRT for bathroom break.",
+"Must QRT for breakfast.",
+"Must QRT for cold breakfast.",
+"Must QRT for cold dinner.",
+"Must QRT for cold supper.",
+"Must QRT for diarreah break.",
+"Must QRT for dinner.",
+"Must QRT for hot breakfast.",
+"Must QRT for hot dinner.",
+"Must QRT for hot lunch.",
+"Must QRT for hot supper.",
+"Must QRT for lunch.",
+"Must QRT for sleep.",
+"Must QRT for some sleep.",
+"Must QRT for supper.",
+"Must QRT invading tanks making too much noise outside to hear you.",
+"Must QRT occupation forces knocking at door.",
+"Must QRT to hear news about approaching hurricane.",
+"Must QRT wind has blown door open again.",
+"Must QRT, lightning storm has started.",
+"Must QRT, lightning threatens.",
+"Must QRT, nuclear attack?",
+"Must QRT, tornado sirens sounding.",
+"Must QRT, tsunami sirens sounding.",
+"Must QRT, weather radio warbling.",
+"Our neighbors have a horse named morse code.",
+"Our neighbors have a horse named morse.",
+"Please QRS.",
+"Propagation is good.",
+"Propagation is poor.",
+"Propagation is very good.",
+"Propagation is very poor.",
+"QLF?",
+"QRG",
+"QRH",
+"QRI 1",
+"QRI 2",
+"QRI 3",
+"QRI",
+"QRJ",
+"QRK 1",
+"QRK 2",
+"QRK 3",
+"QRK 4",
+"QRK 5",
+"QRK",
+"QRL",
+"QRM",
+"QRM?",
+"QRN 1",
+"QRN 2",
+"QRN 3",
+"QRN 4",
+"QRN 5",
+"QRN",
+"QRO",
+"QRP",
+"QRP?",
+"QRQ 10",
+"QRQ 15",
+"QRQ 20",
+"QRQ 5",
+"QRQ",
+"QRS 10",
+"QRS 15",
+"QRS 20",
+"QRS 5",
+"QRS",
+"QRS?",
+"QRU",
+"QRV",
+"QRW",
+"QRX 0300",
+"QRX 0500",
+"QRX 2000",
+"QRX 2300",
+"QRX",
+"QRX?",
+"QRY 1",
+"QRY 2",
+"QRY 3",
+"QRY",
+"QRZ",
+"QSA 1",
+"QSA 2",
+"QSA 3",
+"QSA 4",
+"QSA 5",
+"QSA",
+"QSB",
+"QSD",
+"QSG 1",
+"QSG 2",
+"QSG",
+"QSK",
+"QSK?",
+"QSL",
+"QSM",
+"QSN",
+"QSO",
+"QSP",
+"QST",
+"QSU",
+"QSW",
+"QSX",
+"QSY",
+"QSY?",
+"QSZ",
+"QTB",
+"QTC",
+"QTH?",
+"QTR",
+"QTR?",
+"Should we QSY?",
+"So how is the weather?",
+"Sorry, stack of books just fell over.",
+"Sprechen Sie Deutsch?",
+"Thanks for the call.",
+"There is a rainbow outside the window.",
+"There is an eclipse of the moon right now.",
+"Tnx for the call.",
+"Tnx for the report.",
+"Tnx for ur call.",
+"We are on vacation and I am mobile.",
+"We just felt a small quake here.",
+"What are your hobbies?",
+"What is the air pressure there?",
+"What is the air quality there?",
+"What is the air temperature there?",
+"What is the humidity there?",
+"What is your QTH?",
+"What is your elevation?",
+"What is your hobby?",
+"What is your job?",
+"What is your sign? I am a cancer.",
+"What is your sign? I am a centaur.",
+"What is your sign? I am a fish.",
+"What time zone are you in?",
+"Whats your job?",
+"When did you start to learn morse code?",
+"Where do you live now?",
+"Where do you live?",
+"Where is Hollister, California anyway?",
+"Where is Parkfield, California anyway?",
+"Whoa, we are having an earthquake here. A real roller.",
+"Would you have given Morse a Nobel prize?",
+"You are my first contact today.",
+"You are my last contact today.",
+"You are my second contact today.",
+"You are using a nonlinear amplifier?",
+"You are using an iambic key?",
+"Your contest sequence no is 1035.",
+"Your contest sequence no is 12.",
+"Your contest sequence no is 17.",
+"Your contest sequence no is 479.",
+"Your contest sequence no is 73.",
+"Your contest sequence no is 7v.",
+"Your contest sequence no is 826.",
+"Your contest sequence no is 99.",
+"Your job is?",
+"Your signal is chirpy.",
+"am using a linear amplifier.",
+"ewsqgbhjolpi oops cat on keyboard.",
+"ru using linear amplifier?",
diff --git a/qso.d/names.h b/qso.d/names.h
new file mode 100644 (file)
index 0000000..125a1c3
--- /dev/null
@@ -0,0 +1,170 @@
+"Al",
+"Alan",
+"Alen",
+"Alex",
+"Alexander",
+"Alexandra",
+"Alexeev",
+"Alice",
+"Allen",
+"Alma",
+"Amber",
+"Angel",
+"Anne",
+"Art",
+"Barbara",
+"Barbie",
+"Bart",
+"Bea",
+"Betty",
+"Bill",
+"Bob",
+"Bruce",
+"Bryant",
+"Bud",
+"Carl",
+"Carol",
+"Cathy",
+"Cheryl",
+"Chris",
+"Christy",
+"Chuck",
+"Dale",
+"Dan",
+"Dave",
+"David",
+"Dennis",
+"Diane",
+"Dick",
+"Don",
+"Ed",
+"Edmund",
+"Edward",
+"Elaine",
+"Eleuterio",
+"Ellen",
+"Francie",
+"Frank",
+"Fred",
+"Gary",
+"George",
+"Gilda",
+"Gus",
+"Hadassah",
+"Harry",
+"Hedwig",
+"Heika",
+"Helen",
+"Helmut",
+"Henry",
+"Heriberto",
+"Ingrid",
+"Isaac",
+"Israel",
+"Jack",
+"Jacob",
+"Jake",
+"Jakob",
+"James",
+"Janae",
+"Jane",
+"Janet",
+"Jeff",
+"Jenni",
+"Jessica",
+"Jill",
+"Jim",
+"JimBob",
+"Joan",
+"Joe",
+"John",
+"Jon",
+"Kaahumanu",
+"Karen",
+"Karl",
+"Kathy",
+"Keith",
+"Ken",
+"Kent",
+"Kevin",
+"Kristen",
+"Kurt",
+"Larry",
+"Lauren",
+"Liholiho",
+"Linda",
+"Lou",
+"Lourdes",
+"Lynda",
+"Lynn",
+"Marc",
+"Margaret",
+"Maria",
+"Mariam",
+"Mark",
+"Marty",
+"Marv",
+"Mary",
+"Mike",
+"Monica",
+"Moses",
+"Mosha",
+"Nancy",
+"Nathan",
+"Neil",
+"Noelani",
+"Oliver",
+"Olivia",
+"Pal",
+"Pat",
+"Patrick",
+"Paul",
+"Paula",
+"Peter",
+"Peto",
+"Phil",
+"Pieter",
+"Quimby",
+"Rachel",
+"Ralph",
+"Ray",
+"Rebekkah",
+"Reiko",
+"Rex",
+"Reza",
+"Rich",
+"Rick",
+"Ron",
+"Roy",
+"Sally",
+"Sam",
+"Sara",
+"Sarah",
+"Scott",
+"Scottie",
+"Spencer",
+"Steve",
+"Stew",
+"Stu",
+"Sue",
+"Tello",
+"Terry",
+"Thomas",
+"Tim",
+"Timothy",
+"Todd",
+"Tom",
+"Tony",
+"Umberto",
+"Vicente",
+"Victor",
+"Wallace",
+"Wally",
+"Walt",
+"Walter",
+"Wendy",
+"William",
+"Xavier",
+"Yaohui",
+"Yolanda",
+"Zelda",
diff --git a/qso.d/newcity.h b/qso.d/newcity.h
new file mode 100644 (file)
index 0000000..b2c6634
--- /dev/null
@@ -0,0 +1,29 @@
+"Albany",
+"Avalon",
+"Barnard",
+"Bedford",
+"Bethel",
+"Boston",
+"Brunswick",
+"Canaan",
+"Chester",
+"Conway",
+"Dime Box",
+"Franklin",
+"Granville",
+"Hamilton",
+"London",
+"Morris",
+"Oxford",
+"Salisbury",
+"Scarborough",
+"Stafford",
+"Stanton",
+"Trenton",
+"Troy",
+"Walpole",
+"Warren",
+"Weston",
+"Wilton",
+"Windsor",
+"Zulch",
diff --git a/qso.d/put_form.c b/qso.d/put_form.c
new file mode 100644 (file)
index 0000000..f38fc60
--- /dev/null
@@ -0,0 +1,130 @@
+#include <stdio.h>
+
+void
+PutForm0 (void)
+{
+    PutRST ();
+    PutName ();
+    PutLocation ();
+    PutMisc ();
+    PutRig ();
+    PutWeather ();
+    PutJob ();
+    PutAge ();
+    PutMisc ();
+    PutQ_And_Freq ();
+    PutLicense ();
+}
+
+void
+PutForm1 (void)
+{
+    PutLocation ();
+    PutRST ();
+    PutRig ();
+    PutWeather ();
+    PutMisc ();
+    PutName ();
+    PutLicense ();
+    PutMisc ();
+    PutQ_And_Freq ();
+    PutAge ();
+    PutJob ();
+}
+
+void
+PutForm2 (void)
+{
+    PutThanks ();
+    PutRST ();
+    PutName ();
+    PutWeather ();
+    PutLocation ();
+    PutJob ();
+    PutLicense ();
+    PutRig ();
+    PutAge ();
+    PutQ_And_Freq ();
+}
+
+void
+PutForm3 (void)
+{
+    PutLocation ();
+    PutRST ();
+    PutRig ();
+    PutMisc ();
+    PutName ();
+    PutMisc ();
+    PutAge ();
+    PutJob ();
+    PutLicense ();
+    PutMisc ();
+    PutWeather ();
+    PutMisc ();
+    PutQ_And_Freq ();
+}
+
+void
+PutForm4 (void)
+
+{
+    PutThanks ();
+    PutRST ();
+    PutJob ();
+    PutMisc ();
+    PutMisc ();
+    PutName ();
+    PutAge ();
+    PutLicense ();
+    PutRig ();
+    PutLocation ();
+    PutWeather ();
+    PutMisc ();
+}
+
+void
+PutForm5 (void)
+{
+    PutLocation ();
+    PutRST ();
+    PutRig ();
+    PutName ();
+    PutJob ();
+    PutAge ();
+    PutMisc ();
+    PutLicense ();
+    PutWeather ();
+    PutMisc ();
+    PutQ_And_Freq ();
+}
+
+PutQSO (void)
+{
+    /*  printf("VVV VVV\n") ; */
+    PutFirstCallsign ();
+    switch (Roll (6))
+      {
+      case 0:
+         PutForm0 ();
+         break;
+      case 1:
+         PutForm1 ();
+         break;
+      case 2:
+         PutForm2 ();
+         break;
+      case 3:
+         PutForm3 ();
+         break;
+      case 4:
+         PutForm4 ();
+         break;
+      default:
+         PutForm5 ();
+         break;
+      }
+    printf ("+ %%\n");
+    PutLastCallsign ();
+    printf ("\n");
+}
diff --git a/qso.d/rig.h b/qso.d/rig.h
new file mode 100644 (file)
index 0000000..29646d6
--- /dev/null
@@ -0,0 +1,69 @@
+"Collins 75S=3",
+"Collins KWM=2",
+"Drake T=4XB",
+"Drake TR3",
+"Drake TR4",
+"Eico 753",
+"Hallicrafters SR150",
+"Hallicrafters SR160",
+"Hallicrafters SR2000",
+"Hallicrafters SR400",
+"Hallicrafters SR500",
+"Heathkit DX=660B",
+"Heathkit HG=10B",
+"Heathkit HR=10",
+"Heathkit HW100",
+"Heathkit HW12",
+"Heathkit HW12A",
+"Heathkit HW22",
+"Heathkit HW22A",
+"Heathkit HW32",
+"Heathkit HW32A",
+"Heathkit HW8",
+"Heathkit SB100",
+"Homebrew",
+"Icom IC=1275",
+"Icom IC=275",
+"Icom IC=475",
+"Icom IC=575",
+"Icom IC=725",
+"Icom IC=726",
+"Icom IC=730",
+"Icom IC=735",
+"Icom IC=751",
+"Icom IC=751A",
+"Icom IC=765",
+"Icom IC=781",
+"Kenwood TR=450",
+"Kenwood TR=751",
+"Kenwood TR=850",
+"Kenwood TR=851",
+"Kenwood TS=140",
+"Kenwood TS=440",
+"Kenwood TS=680",
+"Kenwood TS=711",
+"Kenwood TS=77",
+"Kenwood TS=850",
+"National NCL 200",
+"National NCX3",
+"National NCX5",
+"RS HTX=100",
+"Radio Shack HTX=100",
+"Swan 120",
+"Swan 140",
+"Swan 180",
+"Swan 240",
+"Swan 350",
+"Ten Tec 562",
+"Ten Tec 585",
+"Ten Tec Argonaut",
+"Ten Tec Delta",
+"Ten Tec Omni",
+"Yaesu FT=1000",
+"Yaesu FT=101",
+"Yaesu FT=736",
+"Yaesu FT=747",
+"Yaesu FT=757",
+"Yaesu FT=767",
+"Yaesu FT=840",
+"Yaesu FT=990",
diff --git a/qso.d/util.c b/qso.d/util.c
new file mode 100644 (file)
index 0000000..4fde89f
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ ********************
+ * Utility routines *
+ ********************
+ */
+extern int their_age;
+
+int
+CountStrings (char *StringVector[])
+     /*
+      * Count the number of string values in the supplied vector
+      * of pointers. Start with the first pointer and stop when
+      * NIL (0) is encountered.
+      */
+{
+register char **SV;
+register int Count;
+
+    Count = 0;
+
+    for (SV = StringVector; *SV; SV++)
+      {
+         Count++;
+      }
+    return (Count);
+}
+
+int
+Roll (int Number)
+{
+int new_tmp;
+double tmp_val;
+double drand48 ();
+    tmp_val = ((int) (drand48 () * (Number /*-1*/ )));
+    new_tmp = (int) tmp_val % 32767;
+    if (new_tmp < 2)
+       tmp_val = 2;
+    return ((int) new_tmp);
+}
+
+int
+License_Seed (void)
+{
+    if (their_age > 20)
+       return (20);
+    if (their_age < 10)
+       return (10);
+    return (their_age - 8);
+}
+
+char *
+Choose (char *Words[], int Number)
+{
+    return (Words[Roll (Number)]);
+}
diff --git a/qso.d/weather.h b/qso.d/weather.h
new file mode 100644 (file)
index 0000000..757e798
--- /dev/null
@@ -0,0 +1,48 @@
+"a blue norther",
+"a noreaster",
+"a siberia express",
+"chinook winds",
+"cloudy",
+"cold and windy",
+"cold/dry",
+"cool/windy",
+"damp",
+"drizzling",
+"fog/drizzle",
+"foggy",
+"gale force winds",
+"gentle rain",
+"gusting trade winds",
+"hailing",
+"horizontal rain",
+"hot and humid",
+"hot and windy",
+"hot",
+"hot/dry",
+"hot/humid",
+"hot/muggy",
+"hot/smoggy",
+"humid",
+"kona winds",
+"pleasantly cool",
+"pleasantly warm",
+"raining cats and dogs",
+"raining",
+"santa anna winds",
+"sleeting",
+"smoggy",
+"snowing",
+"spitting rain",
+"sunny",
+"tornadic winds",
+"trade winds",
+"uncomfortably hot",
+"very cold",
+"very hot",
+"very windy",
+"warm",
+"wet",
+"wet/foggy",
+"wet/windy",
+"windy and warm",
+"windy",
diff --git a/qso/Makefile b/qso/Makefile
deleted file mode 100644 (file)
index 7368520..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-CFLAGS  = -O3
-
-OBJECTS = QSO.o put_form.o make_fre.o grammar.o util.o init_str.o
-INCLUDES = antenna.h callsign.h city.h cityh.h heights.h jobs.h misc.h \
-           names.h newcity.h rig.h weather.h
-
-all:   QSO
-
-QSO:   $(OBJECTS)
-       $(CC) -o $@ $(OBJECTS)
-
-init_str.o:    $(INCLUDES)
-
-clean:
-       rm -f *.o QSO
diff --git a/qso/QSO.c b/qso/QSO.c
deleted file mode 100644 (file)
index 764d53a..0000000
--- a/qso/QSO.c
+++ /dev/null
@@ -1,753 +0,0 @@
-/*
- * Copyright (c) 1991 Paul J. Drongowski.
- * Copyright (c) 1992 Joe Dellinger.
- * Copyright (c) 2005 Eric S. Raymond.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-/*
- * Return-Path: <pjd@cadillac.siemens.com>
- * Received: from cadillac.siemens.com by montebello.soest.hawaii.edu (4.1/montebello-MX-1.9)
- *      id AA01487; Mon, 10 Aug 92 03:21:41 HST
- * Received: from kevin.siemens.com by cadillac.siemens.com (4.1/SMI-4.0)
- *      id AA25847; Mon, 10 Aug 92 09:21:37 EDT
- * Date: Mon, 10 Aug 92 09:21:37 EDT
- * From: pjd@cadillac.siemens.com (paul j. drongowski)
- * Message-Id: <9208101321.AA25847@cadillac.siemens.com>
- * To: joe@montebello.soest.hawaii.edu
- * Status: RO
- */
-
-/*
- * This copy is slightly hacked by Joe Dellinger, August 1992
- * And some more... November 1992
- *
- * Partially re-written by "murray@vs6.scri.fsu.edu"
- * to use better grammar and to avoid some nonsensical
- * responses (like claiming to be a person who's been licensed
- * longer than they've been alive!), Jan 1994
- *
- * Those improvements merged with others by Joe Dellinger, Oct 1994
- */
-
-/*
- * Generate QSO
- */
-
-/*
- * When run, this program generates a single QSO. The form of the
- * QSO is similar to QSO's one would expect to hear at a code test.
- * It begins with a series of V's (commented out in this version),
- * callsigns of the receiver and
- * sender, followed by a few sentences about weather, name,
- * occupation, etc. The QSO ends with the callsigns of the receiver
- * and sender.
- *
- * All output is produced using "printf." This should make the
- * program easy to port. Output can be piped into another program
- * such as sparc-morse on the Sun or it can be redirected into
- * a file (without viewing the contents of course!)
- *
- * The program design is similar to a "random poetry generator"
- * or "mad-libs." Each QSO form is generated by its own C function,
- * such as "PutForm1." Each function calls other C functions to
- * produce the sentences in the QSO. The sentence forms are
- * selected somewhat randomly as well as any blanks to be filled.
- * Words and phrases are selected from several lists such as
- * "Transceiver," "Antenna," "Job," etc. Sometimes this scheme is
- * clever as in the formation of city names. Sometimes it is
- * stupidly simple-minded and grammatical agreement is lost.
- * By the way, the callsigns are real and were picked from
- * rec.radio.amateur.misc on USENET.
- *
- * The program was constructed in C for Sun workstations. It uses
- * the library function "drand48" in function "Roll" to produce
- * pseudo-random numbers. The library function "srand48" and "time"
- * in "main" are used to set the pseudo-random number seed.
- *
- * Known problems and caveats? Hey, it`s software! All Morse
- * training programs handle the procedural signs (e.g., AR, SK)
- * differently. The function "PutQSO" currently prints "+ %"
- * for the AR and SK at the end of the QSO. These may be ignored,
- * mapped into something else, or just plain cause your training
- * program to roll over and play dead. I don`t know. This is a
- * cheap hack.
- *
- * And speaking of cheap... The program will not generate all
- * characters and pro-signs that are found on an "official" code
- * test. This program is for practice only and should be supplemented
- * with lots of random code.
- *
- * Always have fun!
- */
-
-
-#include <sys/types.h>
-#include <time.h>
-
-char *A_Or_An (char *);
-char *Choose (char *Words[], int Number);
-int License_Seed (void);
-
-int their_age;                 /* PERSON'S AGE, SO THEY AREN'T LICENSED MORE
-                                 * THAN THEIR AGE */
-
-extern char *Transceiver[];
-extern char *Antenna[];
-extern char *UpFeet[];
-extern char *Weather1[];
-extern char *Weather2[];
-extern char *Power[];
-extern char *Job[];
-extern char *Name[];
-extern char *CallSign[];
-extern char *License[];
-extern char *City[];
-extern char *NewCity[];
-extern char *CityHeights[];
-extern char *New[];
-extern char *Heights[];
-extern char *State[];
-extern char *Frqmisc[];
-extern char *Callmisc[];
-extern char *NumMisc[];
-extern char *Miscellaneous[];
-extern char *RST[];
-
-int NXCVR;
-int NANTENNA;
-int NUPFEET;
-int NWX1;
-int NWX2;
-int NPOWER;
-int NJOB;
-int NNAME;
-int NCALLSIGN;
-char *Sender, *Receiver;
-int NLICENSE;
-int NCITY;
-int NNEWCITY;
-int NCITYHTS;
-int NNEW;
-int NHEIGHTS;
-int NSTATE;
-int NFRQMISC;
-int NFRQCALLMISC;
-
-char *FrqCallmisc[] =
-{
-    "QRW %s %d",
-    "QRZ %s %d",
-    "QSN %s %d",
-    "QSX %s %d",
-    "QRW %s %d?",
-    "QRZ %s %d?",
-    "QSN %s %d?",
-    "QSX %s %d?",
-    0
-};
-
-int NCALLMISC;
-int NNUMMISC;
-int NMISC;
-int NRST;
-
-
-/*
- *************************************
- * Routines to put sentences/clauses *
- *************************************
-  */
-
-void
-PutMisc (void)
-{
-    printf ("%s\n", Choose (Miscellaneous, NMISC));
-}
-
-void
-PutThanks (void)
-{
-    switch (Roll (6))
-      {
-      case 2:
-         printf ("Thanks for your call.\n");
-         break;
-
-      case 3:
-         printf ("Tnx for ur call.\n");
-         break;
-
-      case 4:
-         printf ("Tnx for the call.\n");
-         break;
-
-      case 5:
-         printf ("Thanks for the call.\n");
-         break;
-
-      default:
-         printf ("Thanks %s for the call.\n", Choose (Name, NNAME));
-         break;
-      }
-}
-
-void
-PutName (void)
-{
-    switch (Roll (6))
-      {
-      case 2:
-         printf ("Name is %s.\n", Choose (Name, NNAME));
-         break;
-
-      case 4:
-         printf ("This is %s.\n", Choose (Name, NNAME));
-         break;
-
-      case 5:
-         printf ("%s here.\n", Choose (Name, NNAME));
-         break;
-
-      default:
-         printf ("My name is %s.\n", Choose (Name, NNAME));
-         break;
-      }
-}
-
-void
-PutJob (void)
-{
-    switch (Roll (20))
-      {
-      case 2:
-      case 3:
-         printf ("My occupation is %s.\n", Choose (Job, NJOB));
-         break;
-
-      case 4:
-      case 5:
-         printf ("I work as %s.\n", A_Or_An (Choose (Job, NJOB)));
-         break;
-
-      case 6:
-         printf ("I was %s, now unemployed.\n", A_Or_An (Choose (Job, NJOB)));
-         break;
-
-      case 11:
-      case 12:
-         printf ("Occupation is %s.\n", Choose (Job, NJOB));
-         break;
-
-      default:
-         printf ("I am %s.\n", A_Or_An (Choose (Job, NJOB)));
-         break;
-      }
-}
-
-void
-PutAge (void)
-{
-
-    their_age = Roll (60) + 16;
-
-    switch (Roll (5))
-      {
-      case 3:
-         printf ("My age is %d.\n", their_age);
-         break;
-
-      case 4:
-         printf ("I am %d years old.\n", their_age);
-         break;
-
-      default:
-         printf ("Age is %d.\n", their_age);
-         break;
-      }
-}
-
-void
-PutLicense (void)
-{
-int get_years_licence;
-
-    get_years_licence = Roll (License_Seed ());
-    if (get_years_licence < 2)
-       get_years_licence = 2;
-
-    switch (Roll (12))
-      {
-      case 1:
-         printf ("I have %s class licence.\n",
-                 A_Or_An (Choose (License, NLICENSE)));
-         break;
-
-      case 2:
-         printf ("I am %s license ham.\n",
-                 A_Or_An (Choose (License, NLICENSE)));
-         break;
-
-      case 3:
-         printf ("I am %s licence ham.\n",
-                 A_Or_An (Choose (License, NLICENSE)));
-         break;
-
-      case 4:
-         printf ("I have been licenced %d years as %s class.\n",
-                 get_years_licence, Choose (License, NLICENSE));
-         break;
-
-      case 5:
-         printf ("I have %s class license.\n",
-                 A_Or_An (Choose (License, NLICENSE)));
-         break;
-
-      case 6:
-         printf ("I am %s class ham.\n",
-                 A_Or_An (Choose (License, NLICENSE)));
-         break;
-
-      case 7:
-         printf ("I have been licensed %d years as %s class.\n",
-                 get_years_licence, Choose (License, NLICENSE));
-         break;
-
-      default:
-         printf ("I have been %s class ham for %d years.\n",
-                 A_Or_An (Choose (License, NLICENSE)), get_years_licence);
-         break;
-      }
-}
-
-void
-PutTemperature (void)
-{
-    printf ("Temperature is %d.\n", Roll (80) + 10);
-}
-
-void
-PutWeather1 (void)
-{
-    switch (Roll (17))
-      {
-      case 2:
-         printf ("WX is %s.\n", Choose (Weather1, NWX1));
-         PutTemperature ();
-         break;
-
-      case 3:
-         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 4:
-         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 5:
-         printf ("WX is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 6:
-         PutTemperature ();
-         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 7:
-         PutTemperature ();
-         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 8:
-         PutTemperature ();
-         printf ("WX is %s.\n", Choose (Weather1, NWX1));
-         break;
-
-      case 9:
-         printf ("Weather here is %s and temperature is %d.\n",
-                 Choose (Weather1, NWX1), Roll (80) + 10);
-         break;
-
-      case 10:
-         printf ("Weather is %s, temperature %d.\n",
-                 Choose (Weather1, NWX1), Roll (80) + 10);
-         break;
-
-      case 11:
-         printf ("WX is %d degrees and %s.\n",
-                 Roll (80) + 10, Choose (Weather1, NWX1));
-         break;
-
-      case 12:
-         printf ("The WX is %s and the temp is %d degrees.\n",
-                 Choose (Weather1, NWX1), Roll (80) + 10);
-         break;
-
-      case 14:
-         printf ("Weather is %s.\n", Choose (Weather1, NWX1));
-         PutTemperature ();
-         break;
-
-      case 15:
-         printf ("Weather here is %s.\n", Choose (Weather1, NWX1));
-         PutTemperature ();
-         break;
-
-      default:
-         printf ("WX is %s and %d degrees.\n",
-                 Choose (Weather1, NWX1), Roll (80) + 10);
-      }
-}
-
-void
-PutWeather2 (void)
-{
-
-    switch (Roll (10))
-      {
-      case 0:
-         printf ("It is %s.\n", Choose (Weather2, NWX2));
-         break;
-
-      case 1:
-         printf ("It is %s and %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (80) + 10);
-         break;
-
-      case 2:
-         printf ("The WX is %s and the temp is %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (80) + 10);
-         break;
-
-      case 3:
-         printf ("WX is %s and the temp is %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (80) + 10);
-         break;
-
-      case 4:
-         printf ("It is %s today.\n", Choose (Weather2, NWX2));
-         break;
-
-      case 5:
-         printf ("It is %s and %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (100) + 3);
-         break;
-
-      case 6:
-         printf ("The WX is %s and the temp is %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (90) + 10);
-         break;
-
-      case 7:
-         printf ("WX is %s and the temp is %d degrees.\n",
-                 Choose (Weather2, NWX2), Roll (80) + 10);
-         break;
-
-      default:
-         printf ("It is %s here.\n", Choose (Weather2, NWX2));
-         break;
-      }
-}
-
-void
-PutWeather (void)
-{
-    switch (Roll (4))
-      {
-      case 3:
-         PutWeather1 ();
-         break;
-
-      default:
-         PutWeather2 ();
-         break;
-      }
-}
-
-void
-PutCityState (void)
-{
-    switch (Roll (6))
-      {
-      case 4:
-         printf ("%s %s, ",
-               Choose (CityHeights, NCITYHTS), Choose (Heights, NHEIGHTS));
-         break;
-
-      case 5:
-         printf ("%s %s, ", Choose (New, NNEW), Choose (NewCity, NNEWCITY));
-         break;
-
-      default:
-         printf ("%s, ", Choose (City, NCITY));
-         break;
-      }
-    printf ("%s.\n", Choose (State, NSTATE));
-}
-
-void
-PutLocation (void)
-{
-
-    switch (Roll (5))
-      {
-      case 3:
-         printf ("My QTH is ");
-         break;
-
-      case 4:
-         printf ("My location is ");
-         break;
-
-      default:
-         printf ("QTH is ");
-         break;
-
-      }
-    PutCityState ();
-}
-
-void
-PutRig (void)
-
-{
-    switch (Roll (19))
-      {
-      case 0:
-      case 1:
-         printf ("My rig runs %s watts into %s up %s feet.\n",
-              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-
-      case 2:
-      case 3:
-         printf ("Rig is a %s watt %s and antenna is %s.\n",
-                 Choose (Power, NPOWER), Choose (Transceiver, NXCVR),
-                 A_Or_An (Choose (Antenna, NANTENNA)));
-         break;
-
-      case 4:
-      case 5:
-         printf ("My transceiver is %s.\n", A_Or_An (Choose (Transceiver, NXCVR)));
-         printf ("It runs %s watts into %s.\n",
-             Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)));
-         break;
-
-      case 6:
-      case 7:
-         printf ("The rig is %s running %s watts.\n",
-            A_Or_An (Choose (Transceiver, NXCVR)), Choose (Power, NPOWER));
-         printf ("Antenna is %s up %s m.\n",
-           A_Or_An (Choose (Antenna, NANTENNA)), Choose (UpFeet, NUPFEET));
-         break;
-
-      case 8:
-      case 9:
-      case 10:
-      case 11:
-         printf ("My rig runs %s watts into %s up %s meters.\n",
-              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-
-      case 12:
-         printf ("My rig runs %s watts into %s up %s feet, but\nthe antenna has partly fallen.\n",
-              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-
-      case 13:
-         printf ("Rig is %s running %s watts into %s up %s ft.\n",
-             A_Or_An (Choose (Transceiver, NXCVR)), Choose (Power, NPOWER),
-           A_Or_An (Choose (Antenna, NANTENNA)), Choose (UpFeet, NUPFEET));
-         break;
-
-      case 14:
-         printf ("My rig runs %s watts into %s up %s feet.\n",
-              Choose (Power, NPOWER), A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-
-      case 15:
-         printf ("Rig is %s watt %s and antenna is %s.\n",
-                 A_Or_An (Choose (Power, NPOWER)),
-                 Choose (Transceiver, NXCVR),
-                 Choose (Antenna, NANTENNA));
-         break;
-
-      case 16:
-         printf ("My transceiver is %s.\n",
-                 A_Or_An (Choose (Transceiver, NXCVR)));
-         printf ("It runs %s watts into %s.\n",
-                 Choose (Power, NPOWER),
-                 A_Or_An (Choose (Antenna, NANTENNA)));
-         break;
-
-      case 17:
-         printf ("The rig is %s running %s watts.\n",
-                 A_Or_An (Choose (Transceiver, NXCVR)),
-                 Choose (Power, NPOWER));
-         printf ("Antenna is %s up %s feet.\n",
-                 A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-
-      default:
-         printf ("Rig is %s ",
-                 A_Or_An (Choose (Transceiver, NXCVR)));
-         printf ("running %s watts into %s up %s feet.\n",
-                 Choose (Power, NPOWER),
-                 A_Or_An (Choose (Antenna, NANTENNA)),
-                 Choose (UpFeet, NUPFEET));
-         break;
-      }
-}
-
-void
-PutRST (void)
-{
-register char *TheRST;
-
-    TheRST = Choose (RST, NRST);
-
-    switch (Roll (8))
-      {
-      case 0:
-         printf ("UR RST %s=%s.\n", TheRST, TheRST);
-         break;
-
-      case 1:
-         printf ("RST is %s=%s.\n", TheRST, TheRST);
-         break;
-
-      case 2:
-         printf ("RST %s=%s.\n", TheRST, TheRST);
-         break;
-
-      case 3:
-         printf ("Your RST %s=%s.\n", TheRST, TheRST);
-         break;
-
-      case 4:
-         printf ("Your RST is %s=%s.\n", TheRST, TheRST);
-         break;
-
-      case 5:
-         printf ("Your signal is RST %s/%s.\n", TheRST, TheRST);
-         break;
-
-      case 6:
-         printf ("UR signal is RST %s,%s.\n", TheRST, TheRST);
-         break;
-
-      default:
-         printf ("Your RST is %s/%s.\n", TheRST, TheRST);
-         break;
-      }
-}
-
-
-void
-PutQ_And_Freq (void)
-{
-    switch (Roll (8))
-      {
-      case 2:
-         printf (Frqmisc[Roll (NFRQMISC)], make_freq ());
-         printf ("\n");
-         break;
-
-      case 3:
-         printf (Callmisc[Roll (NFRQMISC)],
-                 Choose (CallSign, NCALLSIGN));
-         printf ("\n");
-         break;
-
-      case 4:
-         printf (FrqCallmisc[Roll (NFRQCALLMISC)],
-                 Choose (CallSign, NCALLSIGN),
-                 make_freq ());
-         printf ("\n");
-         break;
-
-      case 5:
-         printf (NumMisc[Roll (NNUMMISC)],
-                 Roll (3) + Roll (2) + 1);
-         printf ("\n");
-         break;
-
-      default:
-         break;
-
-      }
-}
-
-void
-PutFirstCallsign (void)
-{
-    Sender = Choose (CallSign, NCALLSIGN);
-    Receiver = Choose (CallSign, NCALLSIGN);
-    printf ("%s de %s\n", Receiver, Sender);
-}
-
-void
-PutLastCallsign (void)
-{
-    printf ("%s de %s\n", Receiver, Sender);
-}
-
-main (int argc, char **argv)
-{
-
-    NXCVR = CountStrings (Transceiver);
-    NANTENNA = CountStrings (Antenna);
-    NUPFEET = CountStrings (UpFeet);
-    NPOWER = CountStrings (Power);
-    NRST = CountStrings (RST);
-    NWX1 = CountStrings (Weather1);
-    NWX2 = CountStrings (Weather2);
-    NJOB = CountStrings (Job);
-    NNAME = CountStrings (Name);
-    NSTATE = CountStrings (State);
-    NCITY = CountStrings (City);
-    NCITYHTS = CountStrings (CityHeights);
-    NNEW = CountStrings (New);
-    NHEIGHTS = CountStrings (Heights);
-    NNEWCITY = CountStrings (NewCity);
-    NLICENSE = CountStrings (License);
-    NMISC = CountStrings (Miscellaneous);
-    NCALLSIGN = CountStrings (CallSign);
-    NFRQMISC = CountStrings (Frqmisc);
-    NFRQCALLMISC = CountStrings (FrqCallmisc);
-    NCALLMISC = CountStrings (Callmisc);
-    NNUMMISC = CountStrings (NumMisc);
-
-    srand48 ((long) time (0));
-
-    PutQSO ();
-
-    return 0;
-}
diff --git a/qso/antenna.h b/qso/antenna.h
deleted file mode 100644 (file)
index 1452605..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-"10 meter dipole",
-"10 meter whip",
-"3 element beam",
-"5 band vertical",
-"5 element loop",
-"7 band beam",
-"beam",
-"delta loop",
-"dipole",
-"doublet zepp",
-"dummy load",
-"ground=plane",
-"half wave dipole",
-"inverted V",
-"light bulb",
-"log periodic",
-"long=wire",
-"monobander",
-"parasitic beam",
-"quad loop",
-"quad vertical",
-"quagi",
-"quarter wave vertical",
-"random wire up 2 kite",
-"random wire up to kite",
-"random wire",
-"rhombic",
-"symmetrical delta loop",
-"trap doublet",
-"tribander",
-"whip",
-"yagi",
-"zepp",
diff --git a/qso/callsign.h b/qso/callsign.h
deleted file mode 100644 (file)
index ed69af0..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-"AA0ET",
-"AA4LR",
-"AA5BT",
-"AA6NP",
-"AA6YD",
-"AA9BK",
-"AB5AP",
-"AB6FI",
-"AC4HF",
-"G0GWA",
-"GM4ZNX",
-"I5FLN",
-"IK5AAX",
-"JA1BLV",
-"JY1",
-"K2WK",
-"K5RC",
-"K6OCK",
-"K6XO",
-"K9ALD",
-"KA0WCH",
-"KA1AXY",
-"KA1CV",
-"KA1UTU",
-"KA1ZGC",
-"KA2RAF",
-"KA6S",
-"KB0CY",
-"KB2NRH",
-"KB6CSP",
-"KB6JXT",
-"KC6SKV",
-"KC6SSS",
-"KC6TDR",
-"KC6VWV",
-"KD3FU",
-"KD4AUS",
-"KD4CPL",
-"KE2TP",
-"KE4ZV",
-"KF6BZF",
-"KF8NH",
-"KJ6NN",
-"KJ9U",
-"KJ9U/KH6",
-"KK6JQ",
-"KM3T",
-"KT7H",
-"N1AL",
-"N1JCX",
-"N4PBK",
-"N4VRN",
-"N5IAL",
-"N5OP",
-"N6BIS",
-"N6MWC",
-"N6TTO",
-"N8EMR",
-"N9FZX",
-"N9JRV",
-"N9LFF",
-"N9MYI",
-"NE3X",
-"NH6EG",
-"NH6EG/5",
-"NH6ZW",
-"NJ7E",
-"NR3Z",
-"NT1G",
-"OD5NG",
-"OH3BK",
-"OH8NUP",
-"TG9VT",
-"UT5RP",
-"VE6MGS",
-"VE7EMD",
-"VK2BQS",
-"VK2EG",
-"W0PBV",
-"W0RIJ",
-"W0RSB",
-"W2FG",
-"W2JGR",
-"W3GRG",
-"W3OTC",
-"WA1UXA",
-"WA2AGE",
-"WA3EEC",
-"WA3TBL",
-"WA3UQV",
-"WA5RPF",
-"WA6DGX",
-"WA7VYJ",
-"WA8ZGO",
-"WB2CJL",
-"WB4JCM",
-"WB5FDP",
-"WB5FKH",
-"WB5NRN",
-"WB7CJO",
-"WB7EEL",
-"WB7TZA",
-"WB8EOH",
-"WB9IVR",
-"WD0EIB",
-"WH6UR",
-"WH6UR/5",
-"WX9T",
diff --git a/qso/city.h b/qso/city.h
deleted file mode 100644 (file)
index b3c74b9..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-"Agassiz",
-"Aiea",
-"Alexander",
-"Asbury",
-"Baker",
-"Bayaney",
-"Beckley",
-"Bedford",
-"Bixby",
-"Branyan",
-"Brazoria",
-"Broken Arrow",
-"Brunswick",
-"Bryan",
-"Burnsville",
-"Buzzard",
-"Cambridge",
-"Carrizo",
-"Catoosa",
-"Chamizal",
-"Charleston",
-"Chepiwanoxet",
-"Chesuncook",
-"Chinquapin",
-"Circleville",
-"Claquato",
-"Clarksburg",
-"Clarksville",
-"Clear Lake",
-"Cleveland",
-"College",
-"Crystal",
-"Duncanville",
-"Elizabeth",
-"Enid",
-"Ewa",
-"Faalaaga",
-"Fairbanks",
-"Fairfax",
-"Fairfield",
-"Flamboyant Gardens",
-"Flint",
-"Gahanna",
-"Gappas",
-"Glenpool",
-"Grant",
-"Greensburg",
-"Guyandotte",
-"Guyanoga",
-"Harper Valley",
-"Harper",
-"Harquahala",
-"Hells Crossing",
-"Hill Valley",
-"Hillsdale",
-"Honolulu",
-"Hyannis",
-"Iraan",
-"Iyanbito",
-"Jamestown",
-"Jefferson",
-"Jenks",
-"Juncos",
-"Kaaawa",
-"Kohlsaat",
-"Kona",
-"Laager",
-"Lakewood",
-"Lancaster",
-"Lawrenceville",
-"Leyan",
-"Lincoln",
-"Litchfield",
-"London",
-"Long Branch",
-"Luxello",
-"Lyndale",
-"Lyndhurst",
-"Lynnville",
-"Maaloon",
-"Maitwan",
-"Manasquan",
-"Mansfield",
-"Maple",
-"Meadows",
-"Melbourne",
-"Mentor",
-"Mercer",
-"Mesquite",
-"Midland",
-"Milldale",
-"Milltown",
-"Moorestown",
-"Moscow",
-"Mountain View",
-"Moxee",
-"Murray",
-"Muskogee",
-"Musquiz",
-"Naxera",
-"New London",
-"Newfield",
-"Newport",
-"Nipgen",
-"Nisqually",
-"Nome",
-"Noname",
-"Noxubee",
-"Nutzotin",
-"Oak",
-"Occoquan",
-"Olmstead",
-"Owasso",
-"Oxford",
-"Oxnard",
-"Paradise",
-"Paris",
-"Pattaquattic",
-"Pawtuxet",
-"Perry",
-"Piscataquis",
-"Potter",
-"Pottsville",
-"Praag",
-"Quanah",
-"Quebec",
-"Redwood",
-"Rueechayaam",
-"Russellville",
-"Salem",
-"San Pasqual",
-"Sandy",
-"Sapulpa",
-"Saratoga",
-"Sequatchie",
-"Smithville",
-"Snoqualmie",
-"Springdale",
-"Springfield",
-"Squaxin",
-"Starkville",
-"Sunnyvale",
-"Sunset Valley",
-"Suquamish",
-"Tahlequah",
-"Tahquamenon",
-"Texoma",
-"Texum",
-"Tinker",
-"Trenton",
-"Tulsa",
-"Twisp",
-"Umpqua",
-"Union",
-"Uruguay",
-"Utica",
-"Vancouver",
-"Verona",
-"Viroqua",
-"Vista",
-"Waldberggaard",
-"Walnut",
-"Warners Landing",
-"Warren",
-"Warsaw",
-"Washington",
-"Wesleyanna",
-"Weston",
-"Wheatfield",
-"Williamson",
-"Worchester",
-"Wyandanch",
-"Xanthus",
-"Xenia",
-"Yangtze",
-"Yellowstone",
-"Yreka",
-"Zolton",
-"Zuni",
diff --git a/qso/cityh.h b/qso/cityh.h
deleted file mode 100644 (file)
index fa1979b..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-"Apple",
-"Ashford",
-"Baker",
-"Baldwin",
-"Banner",
-"Barnard",
-"Benton",
-"Cabbot",
-"Carson",
-"Chester",
-"College",
-"Conway",
-"Cornwall",
-"Crystal",
-"Duxbury",
-"Fletcher",
-"Franklin",
-"Granite",
-"Grant",
-"Guyan",
-"Hamilton",
-"Harper",
-"Hickory",
-"Hoosick",
-"Jefferson",
-"Lincoln",
-"Maple",
-"Mercer",
-"Morgan",
-"Morris",
-"Murray",
-"Oak",
-"Orwell",
-"Oswego",
-"Perry",
-"Potter",
-"Quail",
-"Salem",
-"Stafford",
-"Stone",
-"Tinker",
-"Walnut",
-"Warren",
-"Washington",
-"Weston",
-"Wilton",
diff --git a/qso/grammar.c b/qso/grammar.c
deleted file mode 100644 (file)
index 173309d..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-int
-is_vowel (first_char)
-     char first_char;
-{
-    if (
-          first_char == 'A' ||
-          first_char == 'E' ||
-          first_char == 'I' ||
-          first_char == 'O' ||
-          first_char == 'U' ||
-          first_char == 'a' ||
-          first_char == 'e' ||
-          first_char == 'i' ||
-          first_char == 'o' ||
-          first_char == 'u'
-     )
-       return (1);
-    return (0);
-}
-
-char buffer[200];
-
-char *
-A_Or_An (string)
-     char *string;
-{
-    if (is_vowel (string[0]) == 1)
-       sprintf (buffer, "an %s", string);
-    else
-       sprintf (buffer, "a %s", string);
-    return ((char *) buffer);
-}
diff --git a/qso/heights.h b/qso/heights.h
deleted file mode 100644 (file)
index 5b7788c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-"Beach",
-"Canyon",
-"Castle",
-"City",
-"Corner",
-"Cove",
-"Creek",
-"Estates",
-"Forest",
-"Gardens",
-"Glen",
-"Grove",
-"Harbor",
-"Heights",
-"Hill",
-"Hills",
-"Hole",
-"Island",
-"Knob",
-"Lake",
-"Meadow",
-"Meadows",
-"Mill",
-"Mountain",
-"Neck",
-"Palisades",
-"Park",
-"Pass",
-"Plantation",
-"Ridge",
-"River",
-"Springs",
-"Station",
-"Swale",
-"Terrace",
-"Valley",
-"Wood",
diff --git a/qso/init_str.c b/qso/init_str.c
deleted file mode 100644 (file)
index ae69660..0000000
+++ /dev/null
@@ -1,266 +0,0 @@
-char *Transceiver[] =
-{
-#include "rig.h"
-    0
-};
-
-char *Antenna[] =
-{
-#include "antenna.h"
-    0
-};
-
-char *UpFeet[] =
-{
-    "10", "15", "20", "25", "30", "35", "40", "45",
-    "50", "55", "60", "65", "70", "75", "80", "85",
-    "90", "95", "100",
-    "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20",
-    "10 1/2", "11 1/2", "25", "29 1/2", "30", "35", "40", "42",
-    "45", "45 1/2", "45.5",
-    "50", "55", "60", "62", "65", "70", "75", "80", "85", "87 1/3",
-    "90", "95", "100", "103", "137", "189 1/2", "210", "246", "250",
-    0
-};
-
-char *Weather1[] =
-{
-    "sunny",
-    "rain",
-    "freezing rain",
-    "sleet",
-    "snow",
-    "cloudy",
-    "partly cloudy",
-    "partly sunny",
-    "clear",
-    0
-};
-
-char *Weather2[] =
-{
-#include "weather.h"
-    0
-};
-
-char *Power[] =
-{
-    "2", "5", "10", "20", "25", "40", "50", "80", "100",
-    "125", "140", "150", "170", "200", "250", "270", "300",
-    0
-};
-
-char *Job[] =
-{
-#include "jobs.h"
-    0
-};
-
-char *Name[] =
-{
-#include "names.h"
-    0
-};
-
-char *CallSign[] =
-{
-#include "callsign.h"
-    0
-};
-
-char *License[] =
-{
-    "Novice",
-    "Technician",
-    "Tech",
-    "Tech plus",
-    "Tech plus",
-    "Tech plus",
-    "Tech plus",
-    "Tech no code",
-    "General",
-    "Advanced",
-    "Extra",
-    "Extra",
-    "Extra",
-    0
-};
-
-char *City[] =
-{
-#include "city.h"
-    0
-};
-
-char *NewCity[] =
-{
-#include "newcity.h"
-    0
-};
-
-char *CityHeights[] =
-{
-#include "cityh.h"
-    0
-};
-
-char *New[] =
-{
-    "New",
-    "Old",
-    "North",
-    "South",
-    "East",
-    "West",
-    "New",
-    "Old",
-    "North",
-    "Northeast",
-    "Northwest",
-    "South",
-    "Southwest",
-    "Southeast",
-    "East",
-    "West",
-    "Upper",
-    "Lower",
-    0
-};
-
-char *Heights[] =
-{
-#include "heights.h"
-    0
-};
-
-char *State[] =
-{
-    "Alabama",
-    "Alaska",
-    "Arizona",
-    "Arkansas",
-    "California",
-    "Colorado",
-    "Connecticut",
-    "District of Columbia",
-    "Delaware",
-    "Florida",
-    "Georgia",
-    "Guam",
-    "Hawaii",
-    "Idaho",
-    "Illinois",
-    "Indiana",
-    "Iowa",
-    "Kansas",
-    "Kentucky",
-    "Louisiana",
-    "Maine",
-    "Maryland",
-    "Massachusetts",
-    "Michigan",
-    "Midway",
-    "Minnesota",
-    "Mississippi",
-    "Missouri",
-    "Montana",
-    "Nebraska",
-    "Nevada",
-    "New Hampshire",
-    "New Jersey",
-    "New Mexico",
-    "New York",
-    "North Carolina",
-    "North Dakota",
-    "Ohio",
-    "Oklahoma",
-    "Oregon",
-    "Pennsylvania",
-    "Puerto Rico",
-    "Rhode Island",
-    "Saipan",
-    "American Samoa",
-    "South Carolina",
-    "South Dakota",
-    "Tennessee",
-    "Texas",
-    "Utah",
-    "Vermont",
-    "Virginia",
-    "Virgin Islands",
-    "Wake Island",
-    "Washington",
-    "West Virginia",
-    "Wisconsin",
-    "Wyoming",
-    0
-};
-
-char *Frqmisc[] =
-{
-    "QSN %d?",
-    "QSU %d?",
-    "QSW %d?",
-    "QSN %d",
-    "QSU %d",
-    "QSW %d",
-    0
-};
-
-char *Callmisc[] =
-{
-    "QRK %s",
-    "QRL %s",
-    "QRZ %s",
-    "QSP %s",
-    "QRK %s?",
-    "QRL %s?",
-    "QRZ %s?",
-    "QSP %s?",
-    0
-};
-
-char *NumMisc[] =
-{
-    "QRI %d",
-    "QRK %d",
-    "QRM %d",
-    "QRN %d",
-    "QRS %d",
-    "QRY %d",
-    "QSG %d",
-    "QTA %d",
-    "QTC %d",
-    "QRI %d?",
-    "QRK %d?",
-    "QRM %d?",
-    "QRN %d?",
-    "QRS %d?",
-    "QRY %d?",
-    "QSG %d?",
-    "QTA %d?",
-    "QTC %d?",
-    0
-};
-
-char *Miscellaneous[] =
-{
-#include "misc.h"
-    0
-};
-
-char *RST[] =
-{
-    "555",
-    "577",
-    "578",
-    "579",
-    "588",
-    "589",
-    "599",
-    "478",
-    "354",
-    "248",
-    "126",
-    0
-};
diff --git a/qso/jobs.h b/qso/jobs.h
deleted file mode 100644 (file)
index 6605174..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-"administrator",
-"airline pilot",
-"artist",
-"attorney",
-"bricklayer",
-"bus driver",
-"carpenter",
-"chemist",
-"clerk",
-"clown",
-"college student",
-"consultant",
-"cook",
-"corporate liquidator",
-"curator",
-"dentist",
-"designer",
-"director",
-"doctor",
-"driver",
-"electrician",
-"engineer",
-"farmer",
-"fireman",
-"gardener",
-"geophysicist",
-"guard",
-"high school student",
-"hs student",
-"human resource consultant",
-"investment banker",
-"janitor",
-"jr college student",
-"juggler and unicyclist",
-"junior college student",
-"lawyer",
-"letter carrier",
-"librarian",
-"mafia killer",
-"mathematician",
-"mechanic",
-"midwife",
-"milkman",
-"nurse",
-"orthodontist",
-"pacifist",
-"painter",
-"petroleum engineer",
-"physician",
-"physicist",
-"police officer",
-"politician",
-"prison guard",
-"professor",
-"programmer",
-"researcher",
-"sailor",
-"sanitation worker",
-"sculptor",
-"secretary",
-"security guard",
-"semiotician",
-"soldier",
-"sql programmer",
-"stock broker",
-"student",
-"systems analyst",
-"teacher",
-"teller",
-"vulcanologist",
-"writer",
diff --git a/qso/make_fre.c b/qso/make_fre.c
deleted file mode 100644 (file)
index 412a463..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#define M80 2
-#define M40 3
-#define M15 4
-#define M10 5
-#define NUM_BAND 4
-
-int
-make_freq (void)
-{
-    switch (Roll (NUM_BAND + 2))
-      {
-      case M80:
-         return (3675 + Roll (50));
-         break;
-      case M40:
-         return (7100 + Roll (50));
-         break;
-      case M15:
-         return (21100 + Roll (100));
-         break;
-      case M10:
-         return (28100 + Roll (200));
-         break;
-      default:
-         return (7100 + Roll (50));
-         break;
-      }
-}
diff --git a/qso/misc.h b/qso/misc.h
deleted file mode 100644 (file)
index e10b2ce..0000000
+++ /dev/null
@@ -1,293 +0,0 @@
-"+%=x/,? 73 just testing you.",
-",?/=+9% 73 just testing you.",
-",?/=q+% 73 just testing u.",
-"8y67fvgb oops cat on keyboard.",
-"9p0ojgbhnw23 oops cat on keyboard.",
-"%w=+/,? 73 just testing you.",
-"A clumsy gecko just fell on my hand.",
-"Are you a communist?",
-"Are you a democrat?",
-"Are you a libertarian?",
-"Are you a republican?",
-"Are you divorced?",
-"Are you good at auto repair?",
-"Are you good at calculus? I have a question for you.",
-"Are you good at car repair? I have a question for you.",
-"Are you good at group theory? I have a question for you.",
-"Are you good at summing infinite series?",
-"Are you married?",
-"Are you on daylight savings time?",
-"Are you single?",
-"Are you using a linear amplifier?",
-"Are you using an iambic key?",
-"Are you widowed?",
-"Aye, laddie, have you ever been to sea?",
-"Can you pick kryptonite locks? Those are tricky.",
-"Can you pick kryptonite locks?",
-"Can you pick master locks? Those are supposed to be easy.",
-"Can you think of something else interesting to say?",
-"Copy?",
-"Cpy?",
-"Did you attend ORU?",
-"Did you hear news?",
-"Did you hear the news?",
-"Do u understand English?",
-"Do you have a baby?",
-"Do you have a cat?",
-"Do you have a dog?",
-"Do you have a ferret?",
-"Do you have a gecko?",
-"Do you have a horse?",
-"Do you know morse code?",
-"Do you know the word copacetic?",
-"Do you know the word garrulous?",
-"Do you know the word prosy?",
-"Do you know what a pangram is?",
-"Do you like bach?",
-"Do you like bernstein?",
-"Do you like c and w music?",
-"Do you like classical music?",
-"Do you like country music?",
-"Do you like hawaiian music?",
-"Do you like jawaiian music?",
-"Do you like modern rock?",
-"Do you like mozart?",
-"Do you like pop music?",
-"Do you like reggae music?",
-"Do you like rock music?",
-"Do you like swing music?",
-"Do you listen to Deutsche Welle?",
-"Do you listen to Radio Australia?",
-"Do you listen to Radio Moscow?",
-"Do you listen to Radio New Zealand Intl?",
-"Do you listen to Radio Peace Peoples Republic of Korea?",
-"Do you listen to VOA?",
-"Do you listen to click and clack on PBS?",
-"Do you listen to the BBC?",
-"Do you prefer metric units?",
-"Do you recycle often?",
-"Do you understand English?",
-"Do you watch Quantum Leap?",
-"Do you watch STTNG?",
-"Do you watch Simpsons?",
-"Gaverete Ruskie?",
-"Habla espanol?",
-"Has the war started yet?",
-"Have a nice T day.",
-"Have a nice thanksgiving.",
-"Have you been to Hawaii recently?",
-"Have you been to Kauai since Iniki?",
-"Have you ever been to New Madrid, Missouri?",
-"Have you ever been to the Chatham islands?",
-"Have you ever contacted Kalawao county, Molokai?",
-"Have you ever contacted Loving county, Texas?",
-"Have you ever played lemmings?",
-"Have you ever played tetris?",
-"Have you ever seen a computer virus?",
-"How copy so far?",
-"How copy?",
-"How did you learn morse code?",
-"How is my signal?",
-"How is the weather?",
-"How long have you been a radio amateur?",
-"How old is your rig?",
-"Hows my signal?",
-"Hows the weather?",
-"I am mobile and am going to the office.",
-"I am mobile and am going to work.",
-"I am mobile and driving to work.",
-"I am mobile, driving cross country.",
-"I am mobile, driving home from work.",
-"I am mobile, riding a Peruvian Paso Fino horse.",
-"I am mobile, riding a Peruvian Paso horse.",
-"I am mobile, stuck in traffic.",
-"I am using a linear amplifier.",
-"I am using an iambic key.",
-"I just saw a bolide.",
-"I live at 10 Downing.",
-"I live at 1010 Springwood.",
-"I live at 1620 Keeaumoku.",
-"I live at 2500 Pennsylvania.",
-"I live at 61C Escondido.",
-"I sometimes monitor ULF for earthquake precursors.",
-"I sometimes monitor ulf for earthquake precursors.",
-"I sometimes work packet on vhf.",
-"Is it green there or brown?",
-"Is the bad news true?",
-"Is your state the one that doesnt have any city governments?",
-"Is your state the one that has a unicameral legislature?",
-"Is your state the one that has boroughs instead of counties?",
-"Is your state the one that has parishes instead of counties?",
-"Is your state the one that has townships instead of counties?",
-"Ive fallen and I cant get up.",
-"Jocks find quartz glyph, vex BMW.",
-"Jocks find quartz glyph, vex BMW.",
-"Jocks find quartz glyph, vex BMW.",
-"Lots of QRM.",
-"Mele kelikimaka and hauoli makahiki hou 1995.",
-"Must QRT for Babylon V.",
-"Must QRT for Star Trek.",
-"Must QRT for bathroom break.",
-"Must QRT for breakfast.",
-"Must QRT for cold breakfast.",
-"Must QRT for cold dinner.",
-"Must QRT for cold supper.",
-"Must QRT for diarreah break.",
-"Must QRT for dinner.",
-"Must QRT for hot breakfast.",
-"Must QRT for hot dinner.",
-"Must QRT for hot lunch.",
-"Must QRT for hot supper.",
-"Must QRT for lunch.",
-"Must QRT for sleep.",
-"Must QRT for some sleep.",
-"Must QRT for supper.",
-"Must QRT invading tanks making too much noise outside to hear you.",
-"Must QRT occupation forces knocking at door.",
-"Must QRT to hear news about approaching hurricane.",
-"Must QRT wind has blown door open again.",
-"Must QRT, lightning storm has started.",
-"Must QRT, lightning threatens.",
-"Must QRT, nuclear attack?",
-"Must QRT, tornado sirens sounding.",
-"Must QRT, tsunami sirens sounding.",
-"Must QRT, weather radio warbling.",
-"Our neighbors have a horse named morse code.",
-"Our neighbors have a horse named morse.",
-"Please QRS.",
-"Propagation is good.",
-"Propagation is poor.",
-"Propagation is very good.",
-"Propagation is very poor.",
-"QLF?",
-"QRG",
-"QRH",
-"QRI 1",
-"QRI 2",
-"QRI 3",
-"QRI",
-"QRJ",
-"QRK 1",
-"QRK 2",
-"QRK 3",
-"QRK 4",
-"QRK 5",
-"QRK",
-"QRL",
-"QRM",
-"QRM?",
-"QRN 1",
-"QRN 2",
-"QRN 3",
-"QRN 4",
-"QRN 5",
-"QRN",
-"QRO",
-"QRP",
-"QRP?",
-"QRQ 10",
-"QRQ 15",
-"QRQ 20",
-"QRQ 5",
-"QRQ",
-"QRS 10",
-"QRS 15",
-"QRS 20",
-"QRS 5",
-"QRS",
-"QRS?",
-"QRU",
-"QRV",
-"QRW",
-"QRX 0300",
-"QRX 0500",
-"QRX 2000",
-"QRX 2300",
-"QRX",
-"QRX?",
-"QRY 1",
-"QRY 2",
-"QRY 3",
-"QRY",
-"QRZ",
-"QSA 1",
-"QSA 2",
-"QSA 3",
-"QSA 4",
-"QSA 5",
-"QSA",
-"QSB",
-"QSD",
-"QSG 1",
-"QSG 2",
-"QSG",
-"QSK",
-"QSK?",
-"QSL",
-"QSM",
-"QSN",
-"QSO",
-"QSP",
-"QST",
-"QSU",
-"QSW",
-"QSX",
-"QSY",
-"QSY?",
-"QSZ",
-"QTB",
-"QTC",
-"QTH?",
-"QTR",
-"QTR?",
-"Should we QSY?",
-"So how is the weather?",
-"Sorry, stack of books just fell over.",
-"Sprechen Sie Deutsch?",
-"Thanks for the call.",
-"There is a rainbow outside the window.",
-"There is an eclipse of the moon right now.",
-"Tnx for the call.",
-"Tnx for the report.",
-"Tnx for ur call.",
-"We are on vacation and I am mobile.",
-"We just felt a small quake here.",
-"What are your hobbies?",
-"What is the air pressure there?",
-"What is the air quality there?",
-"What is the air temperature there?",
-"What is the humidity there?",
-"What is your QTH?",
-"What is your elevation?",
-"What is your hobby?",
-"What is your job?",
-"What is your sign? I am a cancer.",
-"What is your sign? I am a centaur.",
-"What is your sign? I am a fish.",
-"What time zone are you in?",
-"Whats your job?",
-"When did you start to learn morse code?",
-"Where do you live now?",
-"Where do you live?",
-"Where is Hollister, California anyway?",
-"Where is Parkfield, California anyway?",
-"Whoa, we are having an earthquake here. A real roller.",
-"Would you have given Morse a Nobel prize?",
-"You are my first contact today.",
-"You are my last contact today.",
-"You are my second contact today.",
-"You are using a nonlinear amplifier?",
-"You are using an iambic key?",
-"Your contest sequence no is 1035.",
-"Your contest sequence no is 12.",
-"Your contest sequence no is 17.",
-"Your contest sequence no is 479.",
-"Your contest sequence no is 73.",
-"Your contest sequence no is 7v.",
-"Your contest sequence no is 826.",
-"Your contest sequence no is 99.",
-"Your job is?",
-"Your signal is chirpy.",
-"am using a linear amplifier.",
-"ewsqgbhjolpi oops cat on keyboard.",
-"ru using linear amplifier?",
diff --git a/qso/names.h b/qso/names.h
deleted file mode 100644 (file)
index 125a1c3..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-"Al",
-"Alan",
-"Alen",
-"Alex",
-"Alexander",
-"Alexandra",
-"Alexeev",
-"Alice",
-"Allen",
-"Alma",
-"Amber",
-"Angel",
-"Anne",
-"Art",
-"Barbara",
-"Barbie",
-"Bart",
-"Bea",
-"Betty",
-"Bill",
-"Bob",
-"Bruce",
-"Bryant",
-"Bud",
-"Carl",
-"Carol",
-"Cathy",
-"Cheryl",
-"Chris",
-"Christy",
-"Chuck",
-"Dale",
-"Dan",
-"Dave",
-"David",
-"Dennis",
-"Diane",
-"Dick",
-"Don",
-"Ed",
-"Edmund",
-"Edward",
-"Elaine",
-"Eleuterio",
-"Ellen",
-"Francie",
-"Frank",
-"Fred",
-"Gary",
-"George",
-"Gilda",
-"Gus",
-"Hadassah",
-"Harry",
-"Hedwig",
-"Heika",
-"Helen",
-"Helmut",
-"Henry",
-"Heriberto",
-"Ingrid",
-"Isaac",
-"Israel",
-"Jack",
-"Jacob",
-"Jake",
-"Jakob",
-"James",
-"Janae",
-"Jane",
-"Janet",
-"Jeff",
-"Jenni",
-"Jessica",
-"Jill",
-"Jim",
-"JimBob",
-"Joan",
-"Joe",
-"John",
-"Jon",
-"Kaahumanu",
-"Karen",
-"Karl",
-"Kathy",
-"Keith",
-"Ken",
-"Kent",
-"Kevin",
-"Kristen",
-"Kurt",
-"Larry",
-"Lauren",
-"Liholiho",
-"Linda",
-"Lou",
-"Lourdes",
-"Lynda",
-"Lynn",
-"Marc",
-"Margaret",
-"Maria",
-"Mariam",
-"Mark",
-"Marty",
-"Marv",
-"Mary",
-"Mike",
-"Monica",
-"Moses",
-"Mosha",
-"Nancy",
-"Nathan",
-"Neil",
-"Noelani",
-"Oliver",
-"Olivia",
-"Pal",
-"Pat",
-"Patrick",
-"Paul",
-"Paula",
-"Peter",
-"Peto",
-"Phil",
-"Pieter",
-"Quimby",
-"Rachel",
-"Ralph",
-"Ray",
-"Rebekkah",
-"Reiko",
-"Rex",
-"Reza",
-"Rich",
-"Rick",
-"Ron",
-"Roy",
-"Sally",
-"Sam",
-"Sara",
-"Sarah",
-"Scott",
-"Scottie",
-"Spencer",
-"Steve",
-"Stew",
-"Stu",
-"Sue",
-"Tello",
-"Terry",
-"Thomas",
-"Tim",
-"Timothy",
-"Todd",
-"Tom",
-"Tony",
-"Umberto",
-"Vicente",
-"Victor",
-"Wallace",
-"Wally",
-"Walt",
-"Walter",
-"Wendy",
-"William",
-"Xavier",
-"Yaohui",
-"Yolanda",
-"Zelda",
diff --git a/qso/newcity.h b/qso/newcity.h
deleted file mode 100644 (file)
index b2c6634..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-"Albany",
-"Avalon",
-"Barnard",
-"Bedford",
-"Bethel",
-"Boston",
-"Brunswick",
-"Canaan",
-"Chester",
-"Conway",
-"Dime Box",
-"Franklin",
-"Granville",
-"Hamilton",
-"London",
-"Morris",
-"Oxford",
-"Salisbury",
-"Scarborough",
-"Stafford",
-"Stanton",
-"Trenton",
-"Troy",
-"Walpole",
-"Warren",
-"Weston",
-"Wilton",
-"Windsor",
-"Zulch",
diff --git a/qso/put_form.c b/qso/put_form.c
deleted file mode 100644 (file)
index f38fc60..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-#include <stdio.h>
-
-void
-PutForm0 (void)
-{
-    PutRST ();
-    PutName ();
-    PutLocation ();
-    PutMisc ();
-    PutRig ();
-    PutWeather ();
-    PutJob ();
-    PutAge ();
-    PutMisc ();
-    PutQ_And_Freq ();
-    PutLicense ();
-}
-
-void
-PutForm1 (void)
-{
-    PutLocation ();
-    PutRST ();
-    PutRig ();
-    PutWeather ();
-    PutMisc ();
-    PutName ();
-    PutLicense ();
-    PutMisc ();
-    PutQ_And_Freq ();
-    PutAge ();
-    PutJob ();
-}
-
-void
-PutForm2 (void)
-{
-    PutThanks ();
-    PutRST ();
-    PutName ();
-    PutWeather ();
-    PutLocation ();
-    PutJob ();
-    PutLicense ();
-    PutRig ();
-    PutAge ();
-    PutQ_And_Freq ();
-}
-
-void
-PutForm3 (void)
-{
-    PutLocation ();
-    PutRST ();
-    PutRig ();
-    PutMisc ();
-    PutName ();
-    PutMisc ();
-    PutAge ();
-    PutJob ();
-    PutLicense ();
-    PutMisc ();
-    PutWeather ();
-    PutMisc ();
-    PutQ_And_Freq ();
-}
-
-void
-PutForm4 (void)
-
-{
-    PutThanks ();
-    PutRST ();
-    PutJob ();
-    PutMisc ();
-    PutMisc ();
-    PutName ();
-    PutAge ();
-    PutLicense ();
-    PutRig ();
-    PutLocation ();
-    PutWeather ();
-    PutMisc ();
-}
-
-void
-PutForm5 (void)
-{
-    PutLocation ();
-    PutRST ();
-    PutRig ();
-    PutName ();
-    PutJob ();
-    PutAge ();
-    PutMisc ();
-    PutLicense ();
-    PutWeather ();
-    PutMisc ();
-    PutQ_And_Freq ();
-}
-
-PutQSO (void)
-{
-    /*  printf("VVV VVV\n") ; */
-    PutFirstCallsign ();
-    switch (Roll (6))
-      {
-      case 0:
-         PutForm0 ();
-         break;
-      case 1:
-         PutForm1 ();
-         break;
-      case 2:
-         PutForm2 ();
-         break;
-      case 3:
-         PutForm3 ();
-         break;
-      case 4:
-         PutForm4 ();
-         break;
-      default:
-         PutForm5 ();
-         break;
-      }
-    printf ("+ %%\n");
-    PutLastCallsign ();
-    printf ("\n");
-}
diff --git a/qso/rig.h b/qso/rig.h
deleted file mode 100644 (file)
index 29646d6..0000000
--- a/qso/rig.h
+++ /dev/null
@@ -1,69 +0,0 @@
-"Collins 75S=3",
-"Collins KWM=2",
-"Drake T=4XB",
-"Drake TR3",
-"Drake TR4",
-"Eico 753",
-"Hallicrafters SR150",
-"Hallicrafters SR160",
-"Hallicrafters SR2000",
-"Hallicrafters SR400",
-"Hallicrafters SR500",
-"Heathkit DX=660B",
-"Heathkit HG=10B",
-"Heathkit HR=10",
-"Heathkit HW100",
-"Heathkit HW12",
-"Heathkit HW12A",
-"Heathkit HW22",
-"Heathkit HW22A",
-"Heathkit HW32",
-"Heathkit HW32A",
-"Heathkit HW8",
-"Heathkit SB100",
-"Homebrew",
-"Icom IC=1275",
-"Icom IC=275",
-"Icom IC=475",
-"Icom IC=575",
-"Icom IC=725",
-"Icom IC=726",
-"Icom IC=730",
-"Icom IC=735",
-"Icom IC=751",
-"Icom IC=751A",
-"Icom IC=765",
-"Icom IC=781",
-"Kenwood TR=450",
-"Kenwood TR=751",
-"Kenwood TR=850",
-"Kenwood TR=851",
-"Kenwood TS=140",
-"Kenwood TS=440",
-"Kenwood TS=680",
-"Kenwood TS=711",
-"Kenwood TS=77",
-"Kenwood TS=850",
-"National NCL 200",
-"National NCX3",
-"National NCX5",
-"RS HTX=100",
-"Radio Shack HTX=100",
-"Swan 120",
-"Swan 140",
-"Swan 180",
-"Swan 240",
-"Swan 350",
-"Ten Tec 562",
-"Ten Tec 585",
-"Ten Tec Argonaut",
-"Ten Tec Delta",
-"Ten Tec Omni",
-"Yaesu FT=1000",
-"Yaesu FT=101",
-"Yaesu FT=736",
-"Yaesu FT=747",
-"Yaesu FT=757",
-"Yaesu FT=767",
-"Yaesu FT=840",
-"Yaesu FT=990",
diff --git a/qso/util.c b/qso/util.c
deleted file mode 100644 (file)
index 4fde89f..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- ********************
- * Utility routines *
- ********************
- */
-extern int their_age;
-
-int
-CountStrings (char *StringVector[])
-     /*
-      * Count the number of string values in the supplied vector
-      * of pointers. Start with the first pointer and stop when
-      * NIL (0) is encountered.
-      */
-{
-register char **SV;
-register int Count;
-
-    Count = 0;
-
-    for (SV = StringVector; *SV; SV++)
-      {
-         Count++;
-      }
-    return (Count);
-}
-
-int
-Roll (int Number)
-{
-int new_tmp;
-double tmp_val;
-double drand48 ();
-    tmp_val = ((int) (drand48 () * (Number /*-1*/ )));
-    new_tmp = (int) tmp_val % 32767;
-    if (new_tmp < 2)
-       tmp_val = 2;
-    return ((int) new_tmp);
-}
-
-int
-License_Seed (void)
-{
-    if (their_age > 20)
-       return (20);
-    if (their_age < 10)
-       return (10);
-    return (their_age - 8);
-}
-
-char *
-Choose (char *Words[], int Number)
-{
-    return (Words[Roll (Number)]);
-}
diff --git a/qso/weather.h b/qso/weather.h
deleted file mode 100644 (file)
index 757e798..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-"a blue norther",
-"a noreaster",
-"a siberia express",
-"chinook winds",
-"cloudy",
-"cold and windy",
-"cold/dry",
-"cool/windy",
-"damp",
-"drizzling",
-"fog/drizzle",
-"foggy",
-"gale force winds",
-"gentle rain",
-"gusting trade winds",
-"hailing",
-"horizontal rain",
-"hot and humid",
-"hot and windy",
-"hot",
-"hot/dry",
-"hot/humid",
-"hot/muggy",
-"hot/smoggy",
-"humid",
-"kona winds",
-"pleasantly cool",
-"pleasantly warm",
-"raining cats and dogs",
-"raining",
-"santa anna winds",
-"sleeting",
-"smoggy",
-"snowing",
-"spitting rain",
-"sunny",
-"tornadic winds",
-"trade winds",
-"uncomfortably hot",
-"very cold",
-"very hot",
-"very windy",
-"warm",
-"wet",
-"wet/foggy",
-"wet/windy",
-"windy and warm",
-"windy",