home *** CD-ROM | disk | FTP | other *** search
/ World of Ham Radio 1997 / WOHR97_AmSoft_(1997-02-01).iso / log / contest / con_08 / amsoft.iii next >
Text File  |  1997-02-01  |  27KB  |  515 lines

  1.                          WARNING.
  2.  
  3.      This program is not warranted in any way.  When you use this
  4. program, you accept responsibility for the consequences of it's
  5. use and/or misuse.  The author does not guarantee the
  6. applicability of this program or any of it's outputs to your
  7. situation, or the performance of this program in any way.  The
  8. author is not responsible for any loss, corruption, or
  9. destruction of data, or any real or imagined damage to any
  10. physical equipment.
  11.  
  12. INTRODUCTION.
  13.  
  14.      In order to have a successful Field Day operation, you must
  15. not only "work'em all", but turn in a completed dupesheet or a
  16. sorted log/list of callsigns.  This program will log a callsign
  17. and an associated report to support a Field Day activity.  The
  18. primary intent is to be a real-time logger, but it can be used to
  19. de-dupe the log after the contest if so desired.  Each band and
  20. mode combination are logged as a separate file.  Approximately
  21. 1000 stations with their reports can be logged in one file, with
  22. a duplicate entry detected and rejected in under 2 seconds. 
  23. Sound prompting is used to help the operator know if an entry has
  24. been accepted or rejected.  If desired, a print log of each
  25. contact as it is worked during the contest can be generated,
  26. along with any error corrections.  An associated utility program,
  27. FDAYUTIL, will format a report suitable for submission to the
  28. ARRL.
  29.      Each active transmitter will have to have it's own
  30. computer/printer combination.  This program has run successfully
  31. under Double DOS, allowing two copies of it to run at a time on
  32. one computer.  This technique would work for a properly situated
  33. computer, but care would have to be taken to make sure you have
  34. switched to the proper log for the station you are logging for. 
  35. The running print log would also be confusing, as the printed
  36. contacts would be interspersed for both logs.  In conclusion,
  37. this program is great for operations where the total participants
  38. are at a premium and you have a computer and power available for
  39. each active transmitter.  One person can very easily handle both
  40. logging and operating with this system.
  41.  
  42.                          FIELDAY
  43.  
  44. STARTUP.
  45.  
  46.      To start the program, press your Caps Locks key on, sign on
  47. to the drive containing the program, which is the file
  48. FIELDAY.EXE, and type FIELDAY.  The program will load and display
  49. a brag screen which will remind you to set your Caps Lock on and
  50. make sure your internal date/time clock has been set. If a 
  51. printer is available, you can use it to keep a running print log. 
  52. The program will prompt to see if a printer is available and
  53. online.
  54.      After pressing enter, the prompt asks for the name of the
  55. FIELDAY log file to create or load.  The top of the screen will
  56. show any possible FIELDAY files on the current drive, files which
  57. end with the file extension .DAT.  You may use a legitimate
  58. pathname and/or drive specification letter combination in
  59. addition to the filename.  Do not type in the filename extension 
  60. (.DAT).  If the filename or pathname are invalid, an error
  61. message will be returned.  If the filename is valid and the file
  62. is found, the file will be loaded into memory.  If the filename
  63. is valid but it does not currently exist on the current
  64. drive/path, it will be assumed that you wish to start a log for
  65. this file.  You have up to 8 characters for the filename.  If you
  66. do not enter anything (null entry) and press enter, it will be
  67. interpreted as a desire to end the program and you will exit to
  68. DOS.
  69.      A corresponding index file will be created if a new file
  70. (log) is created and must be present if you load an old file. 
  71. The index file ends with the extension .NDX.  This file is
  72. created when a file is saved and should be kept with the data
  73. file (on the same drive/path).  If the proper index file is not
  74. present, the program will return an error message of invalid
  75. filename.  A file without it's index file cannot be used.
  76.      The filename should be meaningful to the operators of the
  77. computer, probably constructed from the band and mode (40CW,
  78. 80SSB, e.t.c.).  This will enable other operators to know the
  79. filenames at a glance and not have to ask the previous operator
  80. what name was used.  Starting a new log by accident (using a 
  81. wrong filename) instead of using the old one will defeat the
  82. purpose and operation of the logging program.
  83.      If online print logging was selected, the start of log for
  84. filename "X" heading will be sent to the printer.
  85.      The next screen you see will be the main menu.  This is the
  86. screen after the successful file load or a good new filename.  At
  87. this point, any of the options on the screen are valid, but the
  88. next choice used will probably be number 1, start the program
  89. (begin logging).
  90.  
  91. MAIN MENU.
  92.  
  93.      The main menu comes up after you have successfully loaded an
  94. existing file or started a new one and offers 7 choices:
  95.  
  96. 1. Start program
  97. 2. Save files 
  98. 3. Error correction 
  99. 4. Log listing 
  100. 5. Tally of calls (by call area with grand total) 
  101. 6. Change to a new log
  102. 7. Quit the program
  103.  
  104.      The bottom of the screen shows the current loaded filename. 
  105. Select the desired function by entering the number and then press
  106. enter.  The first option will start the logging portion of the
  107. program, which begins with a prompt to enter a callsign.  The
  108. second entry will save the entire log to disk using the filename
  109. you entered at startup time.  The third selection allows editing
  110. or deletion of a defective callsign and/or report.  Entry four
  111. lists the current log to the screen, starting with call area 0
  112. through 9.  Number five shows a tally of stations worked by the
  113. call areas, with a total of how many worked.  The sixth selection
  114. also saves the entire current log and then places you at the
  115. prompt for a filename, allowing you to exit the current log and
  116. load another (or start a new one) without leaving the program. 
  117. Seven is the exit selection, which prompts you to make you sure
  118. you want to exit.  Number 2 or 6 must be performed before you
  119. exit or any stations logged during this session will be lost.
  120.  
  121. MENU OPTION 1.
  122.  
  123.       This selection is the main function of the program, de-
  124. duping and logging contacts and their reports.  After selecting
  125. number 1 from the main menu and pressing enter, the screen will
  126. clear, the 25th line will display the current log filename, and
  127. you will be prompted to enter a callsign.  A null entry caused by
  128. pressing enter without entering anything will return you to the
  129. main menu.  If you enter a callsign without the Caps Lock on or
  130. enter a callsign which is invalid, you will be prompted with a
  131. descriptive error message.  A valid callsign is a callsign which
  132. is between 4 and 6 characters long, has a number in the first 3
  133. characters, and is in caps.  Do not enter a slash (/) for
  134. portable stations, as some stations do not consistently use the
  135. slash for portable operation.  When they change operators, the
  136. new operator may or may not use the slash-portable notation,
  137. causing FIELDAY to assume the entered callsign is a different
  138. station.
  139.      After a valid callsign has been entered, the program checks
  140. the entry against previously logged callsigns.  If the callsign
  141. has not been previously logged, the program prompts you for a
  142. report.  If the callsign has been previously logged (worked), the
  143. program sounds a long, low tone and prompts with the word "Dupe". 
  144. Press enter and the program will return to the prompt to enter a
  145. callsign.
  146.      Once a callsign has been accepted and the program prompts
  147. for a report, enter a report consisting of the Field Day class
  148. and the ARRL Section.  Since the class begins with a number (1A,
  149. 3D, e.t.c.), the program edits the report for a number as it's
  150. first character.  The report is not edited for length or any
  151. other characters, just a number as the first character.  A
  152. typical report is 1AMDC or 2BNNJ.  The uniform use of the ARRL
  153. abbreviations is not necessary, but will make the submitted log
  154. look better.  When a good report is entered, the printer strobes
  155. an entry of the callsign, time, date, report, and the contact
  156. number.  The computer sounds two quick tones, the screen clears,
  157. and the logged report is printed at the top of the screen above
  158. the prompt for the next callsign.
  159.      The report is constructed from the internal date/time clock
  160. and your entered information.  The date and time are not required
  161. to be accurate, but they are useful statistical data for
  162. analyzing later using the utility program FDAYUTIL.  A complete,
  163. accepted report in the file looks like this, "1AMDC06-2512:15". 
  164. This report says a 1A class station in ARRL area MDC was worked
  165. on June 25th at 12:15.  The quotes are added by the system when
  166. the file is written to disk.
  167.      If no report is entered and you press enter (null entry),
  168. the program returns to the enter callsign prompt.  This is the
  169. condition which will occur when a callsign is entered just to
  170. check if it has been worked, the contact was missed and should
  171. not be logged, or you wish to begin to return to the main menu
  172. without logging the current callsign.
  173.      The tendency may be to check a callsign and then forget that
  174. a report was not entered, since the station wasn't worked.  If
  175. another callsign is entered (thinking you are at the enter
  176. callsign prompt), the program will catch the error, as U.S.
  177. callsigns don't begin with a number and the program edits the
  178. report for a leading number.  This check will keep you from
  179. getting 180 degrees out of sync in every case except if you enter
  180. a callsign beginning with a number (foreign callsign).  Not many
  181. foreign stations participate in Field Day.  The proper exit with
  182. no action taken is a null entry, pressing enter without any other
  183. keyboard entries.  This will back the program up one step each
  184. time.  The main exception is at the main menu.  The exit to DOS
  185. is a menu selection to prevent an accidental exit and the loss of
  186. the logged data.    Don't waste time fretting an incorrect entry. 
  187. Take note of the incorrect data (either callsign or report) and
  188. correct it during a slack time with main menu option 3.
  189.      If the amount of callsigns entered exceeds the ceiling
  190. amount (out of string memory), the program logs the entry which
  191. exceeded the maximum, saves the log file to disk, and returns you
  192. to the DOS prompt with a message that the limit was exceeded. 
  193. The utility program, FDAYUTIL, will print a manual dupe sheet
  194. from the full log file.  At this point, the logging can continue
  195. if a new filename is entered to represent the same band/mode,
  196. with the manual dupe sheet assisting the program.  Any duplicates
  197. which are in the continuation log file can be weeded out by the
  198. log print option of the utility program.  Keep in mind, each
  199. Field Day log file is for one band/mode.  A station can be worked
  200. twice on each band, once on voice and once on CW/Digital.   
  201. FIELDAY's capabilities will be more than sufficient for most
  202. Field Day operations.  File saves and loads usually take under a
  203. minute, so changing bands (files) is a minor inconvenience, often
  204. done when you change operators and/or loggers.
  205.  
  206. MENU OPTION 2.
  207.  
  208.      This option will save your complete current log, writing out
  209. the data and a new index file.  These files are standard BASIC
  210. output files, called CSV ( comma separated value) files by some
  211. other programs.  Each record is a line in the file, with the
  212. fields delimited by double quotes and separated by commas.  These
  213. files are usable by any program which can accept CSV files, such
  214. as Lotus 123, Supercalc, and Dbase II and III.  The utility
  215. program FDAYUTIL can use the output file(s) to produce various
  216. reports.
  217.     After the file save is complete, the main menu will
  218. reappear.  An exit can now be performed or logging can resume, as
  219. the log up to this point has been saved.  This and option 6 are
  220. the only disk save of the log, as the log resides in memory
  221. during the rest of the operation.  Do this often whenever you can
  222. spare the time.  Any calls logged since the last save will be
  223. lost if power is lost.  They can be re-entered from the print log
  224. if you selected the running print log option.
  225.  
  226. MENU OPTION 3.
  227.  
  228.      This option allows the deletion of a callsign and it's
  229. report, the changing of a callsign, or the changing of a report. 
  230. The first prompt will be for a callsign to correct, as this is
  231. the primary search element.  Once a callsign has been entered,
  232. the previously logged callsigns are searched for a match.  If a
  233. match is not found, the prompt will state this and ask for
  234. another callsign to correct.  A null entry will cause the program
  235. to return to the main menu.
  236.      If a match is found, the existing callsign and it's
  237. associated report are displayed along with a prompt asking for a
  238. "D" if the entry needs to be deleted.  Entering a "D" will
  239. replace the current entry with a number representing the array it
  240. was stored in and the word "deleted" in the report area.  This
  241. entry will be visible if a log list (option 4) is selected from
  242. the main menu; it will be screened out of the file at the time
  243. the log is saved with an option 2 or 6.  If a null entry is made,
  244. the program will assume the callsign does not need to be changed. 
  245. If a callsign is entered, it is checked for validity and to make
  246. sure it has not been already been worked.  If it has been worked,
  247. the entry to be corrected is deleted, as the entry to replace it
  248. with is a duplicate.  If the replacement callsign is not a
  249. duplicate, it is accepted.  If a callsign is found and you have
  250. changed it or not, the opportunity is presented to change the
  251. elements of the report.  The date, time, and report are all
  252. presented for change.  Any entry not changed remains as it was. 
  253. Any input is accepted as a valid replacement for the entry it is
  254. replacing.  The changed elements are printed on the printer, if
  255. that option was selected in the beginning.  If the computer loses
  256. power before the log is saved, the log can be reconstructed from
  257. the running print log, including any error corrections.
  258.      Any entry can be answered with a null entry to affect no
  259. change and a return to the main menu.  If a callsign is retrieved
  260. and does not need any fixing, just press enter in response to the
  261. questions and the program will return to the main menu.
  262.      Report items can be changed with this option, however, if
  263. the contact rate is running high, the changes can be made after
  264. the contest with this option or any word processor in the non-
  265. document mode.  That would be the time to change items such as
  266. the ARRL section (setting all abbreviations to the same value),
  267. as word processors have powerful search and replace commands. 
  268. This section should be used during the contest to correct
  269. incorrect callsigns as soon as possible, as they need to be
  270. unique and accurate in memory in order to insure no duplicates
  271. are accepted.
  272.  
  273. MENU OPTION 4.
  274.  
  275.      If you type a 4 and press enter, the currently logged
  276. callsigns will be listed on the screen. The display will pause
  277. after one full screen. If just enter is pressed, the log listing
  278. will continue.  If any character is entered and then enter is
  279. pressed, the listing will terminate and return to the main menu. 
  280. The log will list the entries from call area 0 to 9.  This is a
  281. useful method to spot a defective entry.  The defective entry can
  282. be corrected or deleted with main menu option 3.
  283.  
  284. MENU OPTION 5.
  285.  
  286.      This option will show a one screen tally of a stations
  287. worked by call area, with a grand total.  The grand total
  288. represents the total contacts for this log file minus deleted
  289. entries, so it may be less than the total of the call areas added
  290. up.
  291.      The free memory notation is the free string space available. 
  292. This value gives an idea of when the automatic save and program
  293. shutdown will activate (when this value falls under 550 bytes
  294. free).
  295.  
  296. MENU OPTION 6.
  297.  
  298.      If you need to change logs, this option saves the current
  299. log, sends the end of log for filename "X" heading to the printer
  300. (if selected), and presents the prompt to enter a filename.  If a
  301. null entry is made, the program will terminate.  If a valid
  302. filename is entered, the program will load the file and go to the
  303. main menu or start a new file with the entered name and go to the
  304. main menu.  A defective file/pathname will give an error message
  305. and loop back to the enter filename prompt.  This is the normal
  306. method to change log files without exiting the program.
  307.  
  308. MENU OPTION 7.
  309.  
  310.      Choice 7 will clear the screen and ask if you really intend
  311. to leave the program.  The log is not saved by this option and
  312. answering a "Y" to this prompt will exit to DOS without saving
  313. the log.  An option 2 or 6 should be performed before this
  314. selection unless you intentionally want to not save this file. 
  315. Giving a null entry will cause a return to the main menu.
  316.                        FDAYUTIL
  317.  
  318. PURPOSE.
  319.  
  320.      This program is the utility program to use in conjunction
  321. with the Field Day logging program, FIELDAY.  The logging program
  322. produces an ASCII log file in the CSV (Comma Separated Value)
  323. format and an index file.  Each line terminated by a carriage
  324. return is a record, with fields within the record bracketed by
  325. double quotes (") and separated by commas.  Each of the options
  326. offer the ability to do another log file after they complete
  327. before returning to the main menu.
  328.      Sign on the drive/path containing FDAYUTIL.EXE and type
  329. FDAYUTIL.  After the brag screen, the main menu will appear.
  330.  
  331. MENU OPTION 1.
  332.  
  333.      This function will produce a sorted, formatted log print,
  334. suitable for submitting to the ARRL as part of your Field Day
  335. entry.  The only thing you have to produce manually is the
  336. required summary sheet which summarizes the totals per band/mode. 
  337. The totals for each band and mode are printed at the bottom of
  338. each log.  A prompt will appear asking for a heading (up to 54
  339. characters), with the program supplying the page numbers.  You
  340. may also control the total amount of lines per page. 
  341. Approximately 2000 entries from one input file can be sorted and
  342. printed.
  343.      If you continued logging the same band/mode on a second file
  344. (because you exceeded the program's limits during logging), you
  345. should join the two data files with the DOS concatenate technique
  346. and submit that file to the program.  Just type input_file1 +
  347. inputfile2 output_filename, substituting the appropriate
  348. filenames.  Refer to your DOS manual for more information.  The
  349. data files (ending in .DAT) are the only ones needed for the log
  350. print option.  Any duplicates found during the sort are weeded
  351. out and the total dupes eliminated is printed on the screen.
  352.  
  353. MENU OPTION 2.
  354.  
  355.      The FIELDAY log files can be dumped to print in the same
  356. approximate format used by the manual dupe sheets.  This option
  357. will prompt for a filename and offer you the option to issue an
  358. ASCII control string (decimal 15) to your printer.  That is the
  359. code to put Epson control code compatible printers into the
  360. compressed print mode.  If you are going to produce this manual
  361. dupe sheet on narrow (8 inch) paper, this will be necessary.  If
  362. you have wide paper loaded (14 inch), you can produce the report
  363. in normal 10 pitch print without the compressed control code.  A
  364. master printer reset code is issued to your printer before
  365. returning to the main menu.
  366.      Each of the call areas are sorted individually and printed
  367. in column format with the call area number at the top and bottom. 
  368. The report is as long as the longest column, the call area which
  369. has the most contacts in it.  The page will be labeled top and
  370. bottom with the filename.
  371.      This report will allow manual duping to carry on if your
  372. computer or AC power source dies during the contest.  The log
  373. file disk can be taken to a working computer to complete this
  374. report.
  375.      If the report was produced because the program's limit for
  376. total contacts was exceeded, this report can be used along with
  377. the computer to continue logging/de-duping.  Place the report
  378. along side the computer and start a new log file for the
  379. band/mode needed.  Check the callsign to be worked against the
  380. paper dupe sheet and then enter it into the program for a
  381. duplicate check.  The small amount of duplicates that might slip
  382. by can be removed by the log printing function after the contest.
  383.      This function can only handle one FIELDAY data file at a
  384. time.  The data and index file must both be available on the same
  385. drive/pathname.  The index file is necessary because the program
  386. loads the callsigns into arrays according to the call number
  387. areas.  You cannot concatenate log files for input to this
  388. function, as the index files would not be accurate.
  389.  
  390. MENU OPTION 3.
  391.  
  392.      After Field Day is over, you may wish to run this function
  393. to analyze the patterns of contact activity during the contest. 
  394. This option produces a histogram (graph), with the vertical axis
  395. representing total contacts and the horizontal axis representing
  396. time in 15 minute increments.  After selecting number 3 and
  397. pressing enter, a prompt for a filename will appear and then an
  398. offer to issue an ASCII control string (decimal 15) to your
  399. printer.  The graph will need this compressed code to fit on 8
  400. inch wide paper, but will not need the compressed code for 14
  401. inch paper.  A master printer reset code is issued before
  402. returning to the main menu.
  403.      The log file reports are loaded from disk and sorted, then
  404. graphed as a vertical line of asterisks, each asterisk
  405. representing one contact in the labeled 15 minute interval.
  406.      The program prompts for the contest start month, day of the
  407. month, and starting hour (24 hour style).  The time line (X axis)
  408. is labeled, starting with the start hour and continuing for 30
  409. hours.  The longest contest this is intended for is 30 hours
  410. (Field Day is 27 hours long for those who didn't setup prior to
  411. startup), with up to 50 contacts in a 15 minute period.  Log data
  412. files (.DAT) containing up to 2000 contacts total can be DOS
  413. concatenated before input to make very interesting graphs.  For
  414. instance, you can concatenate all of your SSB logs to get the big
  415. picture of SSB activity across the entire contest.  Likewise, you
  416. can combine the SSB and CW logs for a particular band to get an
  417. idea of the activity on a certain band.  If you run a limited
  418. Field Day activity or want to "tune" the amount of operators on
  419. hand for a particular band or mode, this can tell when the
  420. largest amount of contacts per 15 minute period occurred.
  421.  
  422.  
  423.  
  424. MENU OPTION 4.
  425.  
  426.      This option is the program exit.  After returning from any
  427. of the 3 other functions, just type a 4 and press return to
  428. return to DOS.
  429.  
  430. HISTORY.
  431.  
  432.      The logging program, FIELDAY, was first attempted on a Texas
  433. Instruments TI99 computer.  I did not have enough access to the
  434. computer to accomplish the task, so I continued it on a Commodore
  435. C64.  I coded a version successfully on this computer and then
  436. migrated the code to a CPM machine.  When the IBMPC became more
  437. popular and available, I moved the code to this machine and
  438. started compiling it.  A very satisfactory version was developed
  439. with the IBM version 1.0 compiler.  The advent of the Microsoft
  440. QuickBASIC compiler and it's low price encouraged me to re-write
  441. it for this compiler.  This compiler allows structured constructs
  442. and no line numbers, making the code look much like C or Pascal. 
  443. These modules were compiled using version 2.01 of the QuickBASIC
  444. compiler.
  445.      This program could be more powerful with a larger amount of
  446. callsigns internal or searched from disk.  I decided to keep the
  447. entire log in memory at one time, limiting the program's total
  448. number of contacts.  The log is not fetched from disk or checked
  449. from disk for callsign searches.  If I spent enough effort, I'm
  450. sure I could implement multi-segment storage and increase logging
  451. space.  Program development time is at a premium for me and this
  452. program probably has sufficient power and capability for over 90%
  453. of the Field Day operations.
  454.      The utility program, FDAYUTIL, was developed as three
  455. separate programs.  Due to the modular nature of structured code,
  456. I was able to perfect each of these functions as a stand-alone
  457. program, and then cut and paste them into one program.  This
  458. program performs the mundane tasks that would burden the logging
  459. program with seldom used code.
  460.      If you find these programs interesting and use them, I would
  461. appreciate a donation to show your appreciation for my efforts
  462. ($10.00 or more is suggested ).  Even if you do not feel driven
  463. to donate to my effort, I welcome criticism, suggestions for
  464. improvements/changes, and general comments.  Please include the
  465. link date from the brag screen when writing.  A reasonable
  466. donation will entitle you to postcard notification of newer
  467. releases of these programs (bug squashes, upgrades).  I will be
  468. glad to negotiate concerning selling the source code to these
  469. programs.
  470.  
  471. FIELDAY   Version 1.3, link date 06/06/87  21:53:26
  472.  
  473.      fix log list on the screen function (menu item 4) - would
  474. not list callsigns in the 9 call area after letter L, did not
  475. affect any other functions, duping, file output, or error
  476. correction.
  477.  
  478. FIELDAY   Version 1.2, link date 05/22/87  13:05:08
  479.  
  480.      fix problem at main menu - when you have already done some
  481. logging and return to main menu, entering an invalid entry at the
  482. main menu prompt (letter instead of number, number out of 1-7
  483. range) would cause the program to prompt for a new filename,
  484. losing the previous log
  485.      trap for printer not ready error, give you another chance to
  486. put it online (if printer option was selected)
  487.      fix screen flicker during log list and main menu null
  488. selection, due to carriage return and linefeed on INPUT statement
  489.      make error selection callsign entry stay at top of screen
  490. after error messages
  491.      change input callsign edit, edit for non-caps character in
  492. first two positions of inputed callsign, check entire callsign
  493. for character outside of valid range (0-9, A-Z)
  494.      move error code 52 to error handling for error code 64, both
  495. due to invalid filename/pathname
  496.  
  497. FIELDAY   Version 1.1, link date 05/12/87  10:02:22
  498.  
  499.      bug squash for change logs function, menu item 6, program
  500. was not reinitializing arrays, log data from previous log was
  501. retained.
  502.  
  503. FIELDAY   Version 1.0, link date 03/27/87  14:51:42
  504.  
  505. FDAYUTIL  Version 1.0, link date 04/18/87  20:54:39
  506.  
  507. Forrest C. Hudspeth WA3FAE
  508. 5883 Woodbine Road
  509. Woodbine, Maryland 21797
  510.  
  511. Compuserve ID 72126,1173
  512. or drop a message on:
  513. 3-Winks ham BBS 301-258-9044
  514.  
  515. 73's and good luck!