home *** CD-ROM | disk | FTP | other *** search
/ World of Ham Radio 1997 / WOHR97_AmSoft_(1997-02-01).iso / misc / elmer / amsoft.iii next >
Text File  |  1997-02-01  |  43KB  |  1,161 lines

  1.         ELMER Version 1.00 PAGE 1 
  2.  
  3.  
  4.                    ELMER Copyright (c) 1992 by Joe Kasser
  5.                                All Rights Reserved 
  6.  
  7.                                    Joe Kasser 
  8.                                     POB 3419
  9.                                   Silver Spring
  10.                                Md., 20918, U.S.A.
  11.                                 Voice (301) 593 6136
  12.                              Data BBS (301) 593 9067
  13.                            Compuserve (CIS) 70531,1405
  14.  
  15.                     _______
  16.                ____|__     | (tm)
  17.             --|       |    |-------------------
  18.               |   ____|__  | Association of
  19.               |  |       |_| Shareware
  20.               |__|   o   |   Professionals
  21.             -----|   |   |---------------------
  22.                  |___|___|   MEMBER
  23.  
  24.         ELMER is a tool for demonstrating expert system techniques, or 
  25.         building any any interactive knowledgebase. It is ideal for use 
  26.         in amateur radio, or as a knowledgebase in a software (or any 
  27.         other product) support facility.
  28.  
  29.         The program is distributed as a Shareware product. You may freely 
  30.         copy and share the product for noncommercial use, with your 
  31.         friends and associates. If you decide to use the product, you are 
  32.         asked to become a registered user by completing the registration 
  33.         form and sending it, together with $45.00 or equivalent in 
  34.         foreign currency to the author. All checks should be drawn on US 
  35.         banks. Canadians, please use postal money order. Upon receipt of 
  36.         your registration, you will receive one free update disk, 
  37.         telephone and mail (electronic and regular) support. If you are 
  38.         not satisfied with the program after registering it, your money 
  39.         will be refunded no questions asked, for up to 30 days from the 
  40.         date your registration was acknowledged.
  41.  
  42.         European users may register (30.00 Pounds Sterling, includes VAT) 
  43.         and obtain support from Terry Dansey at ReadyCrest Ltd., PO Box 
  44.         75, Chatham, Kent, ME5 9DL, England. ReadyCrest Ltd. accepts 
  45.         credit cards (Access, Visa, MasterCard and Eurocard). Telephones: 
  46.         Voice 44 (0)634-687168, FAX 44 (0)634-687178, Data (BBS) 44 
  47.         (0)634-200931.
  48.  
  49.         ELMER may not be sold or distributed with another product without 
  50.         the express written permission of Joe Kasser. Joe Kasser, G3ZCZ 
  51.         will only support unmodified copies of this software.
  52.  
  53.         Potential Commercial Users please contact Joe Kasser directly for 
  54.         modifications and/or details of Site licensing.
  55.  
  56.  
  57.  
  58.         ELMER.DOC (c) Joe Kasser 1992
  59.         ELMER Version 1.00 PAGE 2 
  60.  
  61.  
  62.                                 Table of Contents
  63.  
  64.         ELMER: An Expert System Based on a Finite State Machine
  65.  
  66.         1.0 Introduction
  67.              1.1 Expert Systems 
  68.              1.2 The User Interface
  69.              1.3 The Knowledge Base
  70.              1.4 The Inference Engine
  71.              1.5 Features of an expert system
  72.              1.6 Using an Expert System
  73.              1.7 The Semantic Network
  74.              1.8 A State Machine
  75.              1.9 The User Perception
  76.              1.10 ELMER
  77.              1.11 Responses to an Input
  78.              1.12 Syntactic Analysis
  79.              1.13 Programming ELMER
  80.  
  81.         2.0 The State Table (ELMER.QSO) File
  82.             2.1 The directory path to the ELMER text files. 
  83.             2.2 The start up file
  84.             2.3 Window Colors
  85.             2.4 The ELMER initial state. 
  86.             2.5 State Machine Parameters. 
  87.             2.6 Example of Programming the State Table
  88.  
  89.         3.0 The Status Window
  90.  
  91.         4.0 The Menu
  92.              4.1 Change ELMER File
  93.              4.2 Edit Any File
  94.              4.3 Load State Table (ELMER.QSO)
  95.              4.4 Pick File to edit 
  96.              4.5 Edit State Table (ELMER.QSO) 
  97.              4.6 Show State Table  
  98.              4.7 eXit to DOS       
  99.              4.8 Show State Table  
  100.              4.9 Show Colors
  101.  
  102.         APPENDIX 1 How Shareware Works
  103.  
  104.         APPENDIX 2 Other PC Software by Joe Kasser G3ZCZ
  105.  
  106.         APPENDIX 3 Registration Form
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.         ELMER.DOC (c) Joe Kasser 1992
  117.         ELMER Version 1.00 PAGE 3 
  118.  
  119.  
  120.         1.0 Introduction
  121.  
  122.         ELMER is a tool for demonstrating expert system techniques, or 
  123.         building any any interactive knowledgebase. It is ideal for use 
  124.         in amateur radio, or as a knowledgebase in a software (or any 
  125.         other product) support facility.
  126.  
  127.              1.1 Expert Systems 
  128.  
  129.              Before discussing ELMER, here's some information about 
  130.              expert systems. An expert system contains knowledge about a 
  131.              particular field to assist human experts or provide 
  132.              information to people who do not have access to an expert in 
  133.              the particular field. It is an information system that can 
  134.              pose and answer questions relating to information borrowed 
  135.              from human experts and stored in the system's knowledge 
  136.              base. Although they vary in design, most expert systems have 
  137.              a user interface, a knowledge base, and an inference engine.
  138.  
  139.              1.2 The User Interface
  140.  
  141.              The User Interface to the expert system is the way that the 
  142.              user interacts with the system to extract information from 
  143.              the system.
  144.  
  145.              1.3 The Knowledge Base
  146.  
  147.              The Knowledge Base of an expert system contains both 
  148.              declarative and procedural knowledge. The facts describing 
  149.              the situations, events and objects are called declarative 
  150.              knowledge. Procedural knowledge is the information about 
  151.              courses of action and the rules governing the actions. There 
  152.              are various kinds of rules that may be employed.
  153.  
  154.              1.4 The Inference Engine
  155.  
  156.              The Inference Engine controls how and when the information 
  157.              in the knowledge base is applied.  It determines how the 
  158.              rules in the knowledge base are to be applied to the 
  159.              problem.
  160.  
  161.              1.5 Features of an expert system
  162.  
  163.              The following list of features are desirable in any expert 
  164.              system.
  165.  
  166.              Useful: The system should meet a specific need.
  167.  
  168.              Usable: The system should function so that even a novice 
  169.              computer user finds it simple to use.  It should be able to 
  170.              respond to simple questions.
  171.  
  172.  
  173.  
  174.         ELMER.DOC (c) Joe Kasser 1992
  175.         ELMER Version 1.00 PAGE 4 
  176.  
  177.  
  178.              Educational: The system should allow non experts to increase 
  179.              their expertise. In a similar vein, the system should be 
  180.              able to explain the reasoning behind its advice to allow the 
  181.              user to determine the validity of the advice. 
  182.  
  183.              Adaptable: The system should be able to learn new knowledge. 
  184.  
  185.              1.6 Using an Expert System
  186.  
  187.              Expert systems take the form of software packages residing 
  188.              on a hardware platform (computer). The most common use of an 
  189.              expert system is via a man-machine dialogue. The user types 
  190.              something at the keyboard and the system replies. The user 
  191.              interface accepts the input. The input is parsed in some 
  192.              manner, the inference and knowledge engines process the user 
  193.              input in a predetermined manner and an output appears. The 
  194.              parsing function may be a simple pattern matching method 
  195.              commonly called keyword analysis, or a more complicated 
  196.              function using syntactic analysis. Keyword analysis is a 
  197.              logical function in which the presence of various keywords 
  198.              are detected. When a keyword is found, the system responds 
  199.              in the manner in which it has been programmed. For example, 
  200.              if the system detects the words "the wx" in a question, it 
  201.              may respond with " the wx here is sunny".
  202.  
  203.              In syntactic analysis, a sentence is analyzed according 
  204.              rules which allow the system to respond differently to 
  205.              keywords which appear in different sequences. For example, 
  206.              the system may respond differently to the question "what is 
  207.              the wx" and "the wx" if it recognizes those words in a 
  208.              sentence. 
  209.  
  210.              1.7 The Semantic Network
  211.  
  212.              The most general and oldest artificial intelligence scheme 
  213.              for representing knowledge is the semantic network. A 
  214.              semantic network is a collection of objects called nodes. 
  215.              The nodes are connected together by links. Ordinarily, both 
  216.              the links and the nodes are labelled [4]. A drawing of a 
  217.              semantic network contains bubbles to represent the nodes, 
  218.              and lines connecting the nodes to represent the links. Both 
  219.              nodes and links are labelled. The drawing looks just like a 
  220.              PERT or CP/M chart. It is also the drawing used to represent 
  221.              a state machine.
  222.  
  223.              1.8 A State Machine
  224.  
  225.              A state machine is a system that exists in several states. 
  226.              The system makes a transition from one state to another as a 
  227.              result of a stimulus. All states and transitions are defined 
  228.              at the time the system is designed. The links in the 
  229.              semantic network are the transitions in the state diagram.
  230.  
  231.  
  232.         ELMER.DOC (c) Joe Kasser 1992
  233.         ELMER Version 1.00 PAGE 5 
  234.  
  235.  
  236.  
  237.              1.9 The User Perception
  238.  
  239.              The system appears to be in a rest state. It receives an 
  240.              input from the user and enters a transition to a state in 
  241.              which it processes the data it has just received. After 
  242.              processing the input it generates an output and returns to 
  243.              what seems to be a rest state. In reality, the two rest 
  244.              states (initial and final) are different.
  245.  
  246.              1.10 ELMER
  247.  
  248.              ELMER is an expert system based on a finite state machine 
  249.              using table driven software.  The declarative knowledge is 
  250.              stored in the form of separate ASCII text and command files. 
  251.              The procedural knowledge is stored in the state table. The 
  252.              Data files in ELMER correspond to the Knowledge Engine (and 
  253.              the Inference Engine), the State Tables correspond to the 
  254.              Inference Engine. ELMER also contains an ASCII editor for 
  255.              text files, and a tool to view the state table. These tools 
  256.              allow the user to "teach" ELMER new knowledge.
  257.  
  258.              1.11 Responses to an Input
  259.  
  260.              ELMER has three kinds of reaction to a word match.  It can 
  261.              do nothing, output a test file, run a command or overlay a 
  262.              new state table.  ELMER's state table contains four 
  263.              entries:-
  264.  
  265.              Current State: This is the state that the string match is 
  266.              performed in. ELMER can have up to 256 different states.
  267.  
  268.              Next State: This is the state that the ELMER will advance to 
  269.              if a string match is found.
  270.  
  271.              Repeat Flag: This is a flag to allow or disallow repeats. If 
  272.              it is a 0 repeats are allowed, if it is a 1, they are not.
  273.  
  274.              Command Flag: This is a flag to tell the ELMER how to treat 
  275.              the file. If it is a 0, load a text file; a 2, overlay the 
  276.              current state table with the defined one.
  277.  
  278.              Keyword: This is the text string to match in the syntactic 
  279.              analysis of the input text. The text string can be up to 15 
  280.              characters long and can include spaces. The match is case 
  281.              insensitive, i.e. there is no difference between upper and 
  282.              lower case.
  283.  
  284.              Data File: This is a text file to be loaded or a new 
  285.              configuration file.
  286.  
  287.  
  288.  
  289.  
  290.         ELMER.DOC (c) Joe Kasser 1992
  291.         ELMER Version 1.00 PAGE 6 
  292.  
  293.  
  294.              1.12 Syntactic Analysis
  295.  
  296.              ELMER performs syntactic analysis on the input text in the 
  297.              manner described below. ELMER performs a string match on the 
  298.              line of received text against each keyword entry in the 
  299.              state table. ELMER starts with the first entry. If a match 
  300.              is made, ELMER changes state and performs the transient 
  301.              function defined by the Command Flag. All words in the input 
  302.              text including the keyword are then deleted. ELMER then 
  303.              continues the string match until either the input line of 
  304.              text has been reduced to zero length, or, the line of input 
  305.              text has been tested against all keywords in the state 
  306.              table. 
  307.  
  308.              1.13 Programming ELMER
  309.  
  310.              Programming ELMER is simple. The knowledge base is broken 
  311.              out in terms of states and transitions. States can be 
  312.              passive or active. A passive state is one in which ELMER 
  313.              does nothing other than accept/parse further input. An 
  314.              active state is one in which ELMER loads and displays a text 
  315.              file containing information or shells to DOS and runs an 
  316.              external program.
  317.  
  318.              ELMER contains a set of tools for programming and debugging 
  319.              purposes. A state table for the procedural knowledge is 
  320.              drawn up using pencil and paper and a large sheet of graph 
  321.              paper. The built in text editor is then used to enter 
  322.              information into the table. The individual text files 
  323.              containing the knowledge are also created using the editor. 
  324.              The state table viewing tool is used to check the entries. 
  325.              The state table loading capability is used to exercise ELMER 
  326.              and verify the logic. Because the procedural knowledge is 
  327.              contained in the state table, all sorts of rules and 
  328.              linkages may be used.
  329.  
  330.         2.0 The State Table (ELMER.QSO) File
  331.  
  332.         These are the contents of the ELMER.QSO file.
  333.  
  334.             2.1 The directory path to the ELMER text files. 
  335.  
  336.             This item is the directory path to the subdirectory 
  337.             containing the ELMER text files. For example c:\ELMER\ or 
  338.             just c: if you put them in the same subdirectory as 
  339.             ELMER.EXE. If you do use a path you MUST have the last '\' 
  340.             character at the end of the subdirectory name because the 
  341.             program concatenates the directory path to the ELMER.
  342.  
  343.             2.2 The start up file
  344.  
  345.             This line contains the name of the text file to output the 
  346.  
  347.  
  348.         ELMER.DOC (c) Joe Kasser 1992
  349.         ELMER Version 1.00 PAGE 7 
  350.  
  351.  
  352.             first time ELMER is invoked (if present);
  353.  
  354.             2.3 Window Colors
  355.  
  356.             These seven lines are the numbers which correspond to the 
  357.             colors of the seven different windows displayed on the screen 
  358.             in the following order.
  359.             Status Window Color: the window at the top of the screen.
  360.             OutWindow Color    : the window in which the replies are 
  361.                                  displayed.
  362.             InWindow Color     : the window in which your keystrokes are 
  363.                                  displayed.
  364.             BottomWindow Color : the bottom line of the screen.
  365.             Promptwindow Color : the window in which menus are displayed.
  366.             Option color       : the color of the highlights in the menus 
  367.                                  and prompts.
  368.             Alarmwindow color  : the window in which error and alarm 
  369.                                  messages are displayed.
  370.  
  371.             2.4 The ELMER initial state. 
  372.  
  373.             This item is included to allow you to have different state 
  374.             machines, each starting with a different state number.
  375.  
  376.             2.5 State Machine Parameters. 
  377.  
  378.             The next few lines contain the state machine parameters :- 
  379.  
  380.                   2.5.1 Current State
  381.  
  382.                   This is the state that the string match is performed 
  383.                   in. ELMER allows up to 255.
  384.  
  385.                   2.5.2 Next State
  386.  
  387.                   This is the state that the ELMER will advance to if a 
  388.                   string match is found.
  389.  
  390.                   2.5.3 Repeat Flag
  391.  
  392.                   This is a flag to allow or disallow repeats. 
  393.                   0 repeats are allowed, 
  394.                   1, they are not.
  395.  
  396.                   2.5.4 Command Flag
  397.  
  398.                   This is a flag to tell the ELMER how to treat the file.
  399.                   0, load a text file, 
  400.                   1, run a COM, EXE or BAT file.
  401.                   2, overlay the current state table with the defined 
  402.                   one.
  403.  
  404.  
  405.  
  406.         ELMER.DOC (c) Joe Kasser 1992
  407.         ELMER Version 1.00 PAGE 8 
  408.  
  409.  
  410.                   2.5.5 Keyword
  411.  
  412.                   This is the text string to match. It can be up to 15 
  413.                   characters long and can include spaces. The match is 
  414.                   case insensitive, i.e. there is no difference between 
  415.                   upper and lower case.
  416.  
  417.                   2.5.6 Data File
  418.  
  419.                   This is either a text file to be loaded or a command 
  420.                   file to be executed, depending on the state of the 
  421.                   Command File Flag. An * character defines a 'do 
  422.                   nothing' state in which the Data File is ignored.
  423.  
  424.                   The two character sequence #1 will cause ELMER to clear 
  425.                   the screen before displaying the rest of the text in 
  426.                   the data file.
  427.  
  428.                   2.5.7 The State Machine File
  429.  
  430.                   An example of some state machine parameters is shown in 
  431.                   this typical extract from an ELMER.QSO file.
  432.  
  433.                   1, 2,0,0,what,*
  434.                   2, 3,0,0,englishman,*
  435.                   3, 4,0,0,doing,*
  436.                   4, 1,0,0,country,me-usa.txt
  437.                   1, 1,1,0,equipment,pk232com.txt
  438.                   1, 1,0,0,wx,localwx.txt
  439.                   1, 5,0,0,kenwood,kenwood.txt
  440.                   5, 1,0,0,811,811.txt
  441.                   1, 1,0,0,hello,hello.txt
  442.                   0, 1,0,0,name,joe.txt
  443.                   0, 1,0,1,hal,hal.bat
  444.                   0, 1,0,1,log,log11
  445.  
  446.                   An * character defines a 'do nothing' state in which 
  447.                   the Data File is ignored.
  448.  
  449.             2.6 Example of Programming the State Table
  450.  
  451.              Consider a typical question that I get asked.
  452.  
  453.              "what's an englishman like you doing in this country ?"  
  454.              followed by " The equipment here is ....."
  455.  
  456.              Assuming that the ELMER is in state 1, and that the first 
  457.              few lines in the ELMER.QSO file are as shown above. The 
  458.              ELMER recognizes the word 'what' and advances to state 2. 
  459.              Since the file name is an '*' character no file is sent. The 
  460.              ELMER then recognizes the word 'englishman' and advances to 
  461.              state 3. The ELMER machine then recognizes the word 'doing' 
  462.  
  463.  
  464.         ELMER.DOC (c) Joe Kasser 1992
  465.         ELMER Version 1.00 PAGE 9 
  466.  
  467.  
  468.              and advances to state 4. The ELMER then recognizes the word 
  469.              'country' advances to state 1 and transmits the text file 
  470.              'me-usa.txt', because the Command Flag is a 0.  It then 
  471.              recognizes the word 'equipment', remains in state 1 and 
  472.              transmits my bragtape file called pk232com.txt.  Since the 
  473.              Repeat Flag is a 1, the ELMER will not retransmit 
  474.              pk232com.txt should it once again recognize the word 
  475.              equipment while in state 1.
  476.  
  477.              Since the ELMER scans sections of the line, the same effect 
  478.              will be achieved if the incoming text had looked like :-
  479.  
  480.              "what's an englishman like you 
  481.              doing in this country ?
  482.              The equipment here is ....."
  483.  
  484.              Notes:
  485.  
  486.              You can only have 255 lines in any one state machine array.  
  487.              You can define up to 64,000 different states. Each state 
  488.              must be an integer.  State 0 is a wild card state. This 
  489.              means that any word in the array coded for state 0 will be 
  490.              matched against the incoming text whichever state the 
  491.              machine is in.  The entries in the state machine file must 
  492.              end with a line that contains state 666. For example 
  493.  
  494.              666, end of file.
  495.  
  496.              The number of lines in the array and the current state at 
  497.              the end of each line scanned are shown in the status window.
  498.  
  499.  
  500.         3.0 The Status Window
  501.  
  502.         The Status Window provides you with some diagnostic information 
  503.         about the state machine.
  504.  
  505.         A typical display is shown below.
  506.  
  507.         ╔══════════════ELMER 1.0 (C) Joe Kasser 1991═══════╗
  508.         ║[E1][21]  ELMER.QSO                               ║
  509.         ╚══════════════════════════════════════════════════╝
  510.  
  511.             E shows the current state.
  512.             T shows the number of states (lines) in the state table.
  513.             ELMER.QSO represents the name of the current state machine.
  514.  
  515.         4.0 The Menu
  516.  
  517.         You bring up the menu by touching the 'Esc' character. You are 
  518.         then presented with the following options.
  519.  
  520.  
  521.  
  522.         ELMER.DOC (c) Joe Kasser 1992
  523.         ELMER Version 1.00 PAGE 10 
  524.  
  525.  
  526.                                 ╔══════════MENU══════════╗
  527.                                 ║ C Change ELMER File    ║
  528.                                 ║ F Edit Any File        ║
  529.                                 ║ L Load ELMER.QSO       ║
  530.                                 ║ P Pick File to edit    ║
  531.                                 ║ S Edit ELMER.QSO       ║
  532.                                 ║ T Show State Table     ║
  533.                                 ║ X eXit to DOS          ║
  534.                                 ║ Z Show Color           ║
  535.                                 ║ * Show State Table     ║
  536.                                 ╚════════════════════════╝
  537.  
  538.              To activate an option touch the highlighted key.
  539.  
  540.              4.1 Change ELMER File
  541.  
  542.              This option allows you to select another configuration file. 
  543.              You must load it after selecting it.
  544.  
  545.              4.2 Edit Any File
  546.  
  547.              This option allows you to edit text files. The ELMER 
  548.              contains an ASCII text editor. This editor uses Wordstar 
  549.              compatible commands. A summary of the editor commands is 
  550.              shown below. 
  551.  
  552.               F10 Switch Windows (if more than one window open)
  553.  
  554.               Backspace Delete left char
  555.               Del Delete Char
  556.               Enter New line
  557.               Ins Toggle insert mode
  558.               PgUp Move cursor up one page
  559.               PgDn Move cursor down one page
  560.  
  561.               ^A Move cursor left one word
  562.               ^C Move cursor down one page
  563.               ^D Move cursor right one character
  564.               ^E Move cursor up one line
  565.               ^F Move cursor right one word
  566.               ^G Delete one character
  567.               ^H Delete left one character
  568.               ^I Tab
  569.               ^L Find/replace next occurrence
  570.               ^P Insert a control character into the text
  571.               ^M New line
  572.               ^N Insert line
  573.               ^R Move cursor up one page
  574.               ^S Move cursor left one character
  575.               ^T Delete one word after cursor 
  576.               ^V Toggle insert mode
  577.               ^W Scroll up
  578.  
  579.  
  580.         ELMER.DOC (c) Joe Kasser 1992
  581.         ELMER Version 1.00 PAGE 11 
  582.  
  583.  
  584.               ^X Move cursor down one line
  585.               ^Y Delete line at cursor
  586.               ^Z Scroll down
  587.  
  588.               ^K^B Mark beginning of block
  589.               ^K^C Copy block to position of cursor
  590.               ^K^D Save file and exit edit 
  591.               ^K^H Hide block marker
  592.               ^K^K Mark end of block
  593.               ^K^Q Abandon file and exit edit
  594.               ^K^R Read file into screen
  595.               ^K^T Mark single word as block
  596.               ^K^V Move block to position of cursor
  597.               ^K^W Write block to disk file
  598.               ^K^Y Delete block
  599.               ^K 1..9 Set marker 1 .. 9
  600.  
  601.               ^Q^A Find text and replace
  602.               ^Q^B Move to beginning of block
  603.               ^Q^C Move to end of file
  604.               ^Q^D Move to right of line
  605.               ^Q^E Move to top of window
  606.               ^Q^F Find text
  607.               ^Q^I Toggle autoindent mode
  608.               ^Q^K Move to end of block
  609.               ^Q^R Move to top of file
  610.               ^Q^S Move to left of line
  611.               ^Q^X Move to bottom of window
  612.               ^Q^Y Delete to end of line
  613.               ^Q 1..9 Jump to marker 1..9
  614.  
  615.              The following options can be set in the Find/Find and 
  616.              Replace (^Qf and ^Qa) operations.
  617.  
  618.               # locates #th occurrence
  619.               G global replace
  620.               N replace without Y/N question
  621.               U ignore upper case/lower case
  622.               W match whole words only
  623.  
  624.              Notes
  625.  
  626.              1 The ^ key in front of a character identifies that 
  627.                character as a 'control' character. To activate it, hold 
  628.                down the Control key AND the character key. 
  629.  
  630.              2 Some of the commands require two keystrokes.
  631.  
  632.              3 Use ^P to embed a control character in the text. .lm6
  633.  
  634.  
  635.  
  636.  
  637.  
  638.         ELMER.DOC (c) Joe Kasser 1992
  639.         ELMER Version 1.00 PAGE 12 
  640.  
  641.  
  642.              4.3 Load State Table (ELMER.QSO)
  643.  
  644.              This option allows you to reload the state table 
  645.              (ELMER.QSO). If a different state table is loaded, its name 
  646.              will appear in the menu.
  647.  
  648.              4.4 Pick File to edit 
  649.  
  650.              This option allows you to pick a file with the default 
  651.              filetype of 'TXT', and edit it.
  652.  
  653.              4.5 Edit State Table (ELMER.QSO) 
  654.  
  655.              This option allows you to edit the configuration file.
  656.  
  657.              4.6 Show State Table  
  658.  
  659.              This option allows you to see the contents of the state 
  660.              machine. It is used in debugging the logic to ensure that 
  661.              the contents of the table match what you thought you put in.
  662.  
  663.              4.7 eXit to DOS       
  664.  
  665.              This option allows you to exit to DOS.
  666.  
  667.              4.8 Show State Table  
  668.  
  669.              This option allows you to see the contents of the state 
  670.              machine. It is used in debugging the logic to ensure that 
  671.              the contents of the table match what you thought you put in.
  672.  
  673.              4.9 Show Colors
  674.  
  675.              This option shows you the colors selected in the 
  676.              configuration file.
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.         ELMER.DOC (c) Joe Kasser 1992
  697.         Appendix 1 How Shareware Works, Page 13
  698.  
  699.  
  700.         APPENDIX 1 How Shareware Works
  701.  
  702.         The Association of Shareware Professionals (ASP) has established 
  703.         standards for its members and for any organization which has "ASP 
  704.         Approved" status. The ASP wants to make sure the shareware 
  705.         principle works for you. If you are unable to resolve a problem 
  706.         with an ASP member or organization (other than technical 
  707.         support), the ASP may be able to help. Please write to 
  708.  
  709.         The ASP Ombudsman, 545 Grover road, Muskegon, MI. 49442-9427, 
  710.         USA.
  711.  
  712.         You are encouraged to copy the floppy disk and share it freely 
  713.         with others. You have the luxury of trying out the product at 
  714.         your own pace and in the comfort of your own home or workplace. 
  715.  
  716.         After you have used the material for a reasonable evaluation 
  717.         period (30 days), you should either discontinue use of the 
  718.         material or register your copy. Your support is important and 
  719.         greatly appreciated. With it, Shareware authors are encouraged to 
  720.         design and distribute new products. Without it, a great deal of 
  721.         high quality, low cost software will cease to be available.
  722.  
  723.         Why pay at all?
  724.  
  725.          * You receive support from the author.
  726.          * You receive a CURRENT copy of the program.
  727.          * Your input and ideas help shape future products.
  728.          * A sense of pride and ownership in having honestly participated 
  729.            in the Shareware revolution.
  730.          * You help to keep software prices down by supporting a 
  731.            distribution method which doesn't depend on expensive 
  732.            advertising campaigns.
  733.  
  734.         Be aware of the following restrictions, designed to protect the 
  735.         community of Shareware users and to prevent greedy people from 
  736.         taking unfair advantage of the trust, hard work and good will of 
  737.         Shareware authors. 
  738.  
  739.         1. No price or consideration may be charged for the material. 
  740.            However, a distribution cost may be charged for the cost of 
  741.            the diskettes, shipping and handling, not to exceed $6.
  742.  
  743.         2. The files and programs on the disks may not be modified or 
  744.            deleted.
  745.  
  746.         3. The material cannot be sold as part of some other more 
  747.            inclusive package.
  748.  
  749.         4. The material cannot be "rented" or "leased" to others.
  750.  
  751.         5. The end user must be told clearly in writing on the outside of 
  752.  
  753.  
  754.         ELMER.DOC (c) Joe Kasser 1992
  755.         Appendix 1 How Shareware Works, Page 14
  756.  
  757.  
  758.            the package and in all advertising that the diskette(s) are 
  759.            "Shareware."
  760.  
  761.         6. The package must contain a written explanation that the disk 
  762.            is for evaluation purposes, and that an additional 
  763.            "registration fee" is expected by the author, if the material 
  764.            is used beyond an initial evaluation period.
  765.  
  766.         7. In the case of distribution via any telecommunications link, 
  767.            the following must be done:
  768.  
  769.            An error checking protocol must be used.
  770.  
  771.            The individual files must be combined into, and transferred in 
  772.            a library or archive format. 
  773.  
  774.         8. Shareware distribution is permitted only in the United States, 
  775.            Canada, England, and Australia.
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.  
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.  
  810.  
  811.  
  812.         ELMER.DOC (c) Joe Kasser 1992
  813.         Appendix 2 Other PC Software by Joe Kasser G3ZCZ,Page 15
  814.  
  815.  
  816.         APPENDIX 2 Other PC Software by Joe Kasser G3ZCZ
  817.  
  818.         1.0 PC-HAM 3.52 BY G3ZCZ
  819.  
  820.              LOGBOOK
  821.  
  822.         Full blown logging package. With automatic check of logs for 
  823.         awards such as DXCC. Allows you to recall any entry by call sign 
  824.         within seconds. Indexed displays, QSL'ing, Contest mode QSL'ing 
  825.         (prints the lot) and lots more. Although written in dBASE3 the 
  826.         package contains a compiled version (LOGBOOK.EXE), so you don't 
  827.         need dBASE to run it. The source code is ONLY given to registered 
  828.         users. It can convert your exported LAN-LINK.LOG file to LAN-
  829.         LINK.DBF to put this package to work. Ideal for DX-peditions or 
  830.         for DX robot users to handle QSLing and log statistics.
  831.  
  832.              CONTEST
  833.  
  834.         Keeps Dupes in memory, logs QSO's to disk in format which can be 
  835.         processed by the LOGBOOK package. Now compiled in Turbo BASIC, 
  836.         source code is supplied so that you can modify the program to 
  837.         meet your requirements.
  838.  
  839.              CQSS
  840.  
  841.         Sweepstakes game compiled in Turbo BASIC. Work the ARRL 
  842.         Sweepstakes contest on your computer. You are located just 
  843.         outside Washington DC. A propagation model is built in to the 
  844.         program. This program is REQUIRED training for all sweepstakes 
  845.         operators. Earlier version of the program is described in detail 
  846.         in 'Software for Amateur Radio' by Joe Kasser G3ZCZ, published by 
  847.         TAB Books, Blue Ridge Summit, PA. 17214.
  848.  
  849.              WHATSON
  850.  
  851.         Predict HF Propagation for given days. Contest mode with printout 
  852.         to whole world at hourly intervals. Needs BASIC.
  853.  
  854.         2.0 STARTREK The Computer Program
  855.  
  856.         An ideal task for the beginner to learn a language on is a 
  857.         simulation game which is written around the computer that the 
  858.         beginner has available. For in that case, there is complete 
  859.         control of all inputs and outputs, This kind of game in which the 
  860.         player makes decisions based on the information available to him 
  861.         or her available at the time), can be made sufficiently 
  862.         sophisticated and complex so as to make writing it an adequate 
  863.         challenge for anybody.
  864.  
  865.         The techniques used in writing a good game are the same that 
  866.         programmers use in professional activities. Writing a good game 
  867.         poses a challenge that allows you to develop good habits and 
  868.  
  869.  
  870.         ELMER.DOC (c) Joe Kasser 1992
  871.         Appendix 2 Other PC Software by Joe Kasser G3ZCZ,Page 16
  872.  
  873.  
  874.         techniques for programming and also allows you to learn a 
  875.         language in an interesting manner. By taking an orderly approach 
  876.         to the game design, complex operations may be clearly understood 
  877.         and converted to computer code with the aid of a language 
  878.         reference manual, irrespective of the language being used.
  879.  
  880.         This product teaches the techniques for writing such a game using 
  881.         the STARTREK game as an example, and the BASIC language as the 
  882.         programming language in which to write the code.
  883.  
  884.         Registration fees.
  885.  
  886.         Single Copy $15.00
  887.         10 - 50 Copies $12.00 per registered copy.
  888.         50 - 100 Copies $10.00 per registered copy.
  889.         100 + Copies $8.00 per registered copy.
  890.  
  891.         3.0 WHATS-UP 1.20
  892.  
  893.         WHATS-UP is a tool for experimenting with orbital dynamics and 
  894.         Telemetry Decoding and display Program for the UoSAT-OSCAR 11, 
  895.         AMSAT-OSCAR 13, Fuji-OSCAR 20 and the AMSAT Microsat Spacecraft 
  896.         (OSCARs 16, 17, 18 and 19). It is table driven via the 
  897.         configuration files to allow maximum flexibility.
  898.  
  899.         WHATS-UP contains the following features:
  900.  
  901.         * Can automatically set Kenwood Radios to spacecraft beacon 
  902.           frequency when satellite comes over your horizon.
  903.         * Can automatically read the frequency from Kenwood Radios to a 
  904.           disk file for Doppler frequency measurements.
  905.         * Can automatically configure a PK-232 for each spacecraft data 
  906.           format.
  907.         * Reads 2 Line and AMSAT format orbit element data files.
  908.         * Provides antenna azimuth and elevation pointing data.
  909.         * Real time, Playback and Dumb Terminal mode.
  910.         * Automatic Capture-to-disk of raw telemetry.
  911.         * Extracts telemetry channel data to a database or spreadsheet 
  912.           readable file for further analysis.
  913.         * Link quality measurement on packet telemetry.
  914.         * Capability to print the raw telemetry as it is received.
  915.         * Up to 16 user configurable display pages (screens). You set the 
  916.           position on the page (width of engineering unit field, and 
  917.           number of decimal places) that a parameter is displayed at.
  918.         * Wild card page (parameter shows up on all pages).
  919.         * Selectable display of Engineering units or raw byte for each 
  920.           display page.
  921.         * Display of raw packets (i.e. STATUS)
  922.         * Color changes if a parameter value changed between successive 
  923.           frames.
  924.         * Audio and visual alarms if a telemetry value exceeds, falls 
  925.           below or falls outside a preset limit value(s).
  926.  
  927.  
  928.         ELMER.DOC (c) Joe Kasser 1992
  929.         Appendix 2 Other PC Software by Joe Kasser G3ZCZ,Page 17
  930.  
  931.  
  932.         * Dumb split screen terminal mode (a la LAN-LINK).
  933.         * Customizable colors, PC to TNC baud rate, data parity and stop 
  934.           bits.
  935.         * Default spacecraft configuration files.
  936.         * Time of day clock display (in HH:MM:SS format)
  937.  
  938.         Real time analysis requires a receiver and demodulator. Analysis 
  939.         of playback data can be performed with just the computer and 
  940.         WHATS-UP.
  941.  
  942.         If you would like a copy of WHATS-UP and have captured any 
  943.         telemetry to disk, especially daytime or southern hemisphere 
  944.         passes, please put them on a disk and send it in with your 
  945.         request, a mailer and return postage. Don't let the individual 
  946.         data files become too long. I suggest that you rename them every 
  947.         day in the format YYMMDD.SC, such as 900824.D17, 900824.F20, etc.
  948.  
  949.         IF YOU ARE INTERESTED IN OSCAR AND SPACECRAFT TELEMETRY, THEN 
  950.         THIS PROGRAM IS A MUST.
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.         ELMER.DOC (c) Joe Kasser 1992
  987.         APPENDIX 3 ELMER 1.00 REGISTRATION FORM, Page 18
  988.  
  989.  
  990.         APPENDIX 3 ELMER 1.00 REGISTRATION FORM
  991.  
  992.         To: Joe Kasser G3ZCZ, P.O. BOX 3419, SILVER SPRING, MD 20918.
  993.  
  994.         TODAY'S DATE _____________
  995.         NAME ______________________________________________
  996.         ADDRESS ___________________________________________
  997.         ___________________________________________________
  998.         CITY ___________________________________________
  999.         STATE _________ POSTCODE ____________ TELEPHONE ____________
  1000.         TNC TYPE _________ FIRMWARE REV __________ HOME BBS ___________
  1001.         DISK SIZE 5.25 _____ 3.5 ____ 
  1002.  
  1003.         Please register me as a user of ELMER. I am currently using 
  1004.         ELMER Version ______ which I obtained from __________________.  
  1005.         Please send me the latest version of ELMER or if a more recent 
  1006.         one does not exist at this time, acknowledge my registration and 
  1007.         add my name to the list to receive a free update when it becomes 
  1008.         available.
  1009.  
  1010.         Register me as a classroom user for $450.00. This entitles each 
  1011.         of my students to use ELMER both in school and at home.
  1012.  
  1013.         I also enclose an additional amount for evaluation copies of 
  1014.         LAN-LINK __ WHATS-UP _, PC-HAM _ and Startrek TCP _ ($5 for 1 
  1015.         program, $15.00 for the set). If I like them, I plan to register 
  1016.         them in due course. 
  1017.  
  1018.         ELMER Registration ($45.00)    __.__
  1019.         ELMER Classroom   ($450.00)    __.__
  1020.         Evaluation software         $  __.__
  1021.         ____________________________________
  1022.         Total Enclosed              $  __.__    Signature ____________
  1023.  
  1024.  
  1025.         My favorite operating modes are ______________________________.
  1026.  
  1027.         Additional Features I'd like to see in future releases of ELMER.
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.         Comments, likes, dislikes, wish list, etc. (continued on back of 
  1035.         page)
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.         ELMER.DOC (c) Joe Kasser 1992
  1045.         APPENDIX 4 ELMER 1.00 Index, Page 19
  1046.  
  1047.  
  1048.         Abandon, 11
  1049.         Alarmwindow, 7
  1050.         Analysis, 2, 4, 5, 6, 16, 17
  1051.         Autoindent, 11
  1052.  
  1053.         Backspace, 10
  1054.         Beginning, 11
  1055.         Block, 11
  1056.         BottomWindow, 7
  1057.  
  1058.         Char, 10
  1059.         Colors, 2, 7, 12, 17
  1060.         Command, 5, 6, 7, 8, 9
  1061.         Configuration, 5, 10, 12, 16, 17
  1062.         Contents, 2, 6, 12
  1063.         Cursor, 10, 11
  1064.  
  1065.         Debugging, 6, 12
  1066.         Declarative, 3, 5
  1067.         Default, 12, 17
  1068.         Defined, 4, 5, 6, 7
  1069.         Del, 10
  1070.         Delete, 10, 11
  1071.         Different, 4, 5, 7, 9, 12
  1072.         Disk, 1, 11, 13, 14, 15, 16, 17, 18
  1073.  
  1074.         Embed, 11
  1075.         Error, 7, 14
  1076.         Evaluation, 13, 14, 18
  1077.         Example, 2, 4, 6, 8, 9, 16
  1078.         Expert, 1, 2, 3, 4, 5
  1079.  
  1080.         Features, 2, 3, 16, 18
  1081.         File, 2, 5, 6, 7, 8, 9, 10, 11, 12, 15, 16
  1082.         Files, 2, 5, 6, 10, 13, 14, 16, 17
  1083.         Find, 10, 11
  1084.         First, 6, 7, 8
  1085.         Following, 3, 7, 9, 11, 13, 14, 16
  1086.         Front, 11
  1087.  
  1088.         Global, 11
  1089.  
  1090.         Hide, 11
  1091.         Hold, 11
  1092.  
  1093.         Identifies, 11
  1094.         Ignore, 11
  1095.         Inference, 2, 3, 4, 5
  1096.         Information, 3, 6, 9, 15
  1097.         Ins, 10
  1098.         Insert, 10
  1099.         Interface, 2, 3, 4
  1100.  
  1101.  
  1102.         ELMER.DOC (c) Joe Kasser 1992
  1103.         APPENDIX 4 ELMER 1.00 Index, Page 20
  1104.  
  1105.  
  1106.  
  1107.         Jump, 11
  1108.  
  1109.         Knowledge, 2, 3, 4, 5, 6
  1110.         Knowledgebase, 1, 3
  1111.  
  1112.         Left, 10, 11
  1113.         Line, 6, 7, 9, 10, 11, 16
  1114.         Lines, 4, 7, 8, 9
  1115.         Linkages, 6
  1116.         Lm, 11
  1117.         Locates, 11
  1118.         Logic, 6, 12
  1119.  
  1120.         Machine, 2, 4, 5, 7, 8, 9, 12
  1121.         Mark, 11
  1122.         Marker, 11
  1123.         Move, 10, 11
  1124.  
  1125.         Occurrence, 10, 11
  1126.         Ombudsman, 13
  1127.         Open, 10
  1128.  
  1129.         Parameters, 2, 7, 8
  1130.         Perception, 2, 5
  1131.         PgDn, 10
  1132.         PgUp, 10
  1133.         Procedural, 3, 5, 6
  1134.         Programming, 2, 6, 8, 16
  1135.  
  1136.         Qa, 11
  1137.         Qf, 11
  1138.  
  1139.         Registration, 1, 2, 14, 16, 18
  1140.         Replace, 10, 11
  1141.         Require, 11
  1142.         Right, 10, 11
  1143.  
  1144.         Save, 11
  1145.         Scroll, 10, 11
  1146.         Semantic, 2, 4
  1147.         Summary, 10
  1148.         Switch, 10
  1149.  
  1150.         Th, 11
  1151.         Toggle, 10, 11
  1152.         Transient, 6
  1153.  
  1154.         Window, 2, 7, 9, 10, 11
  1155.  
  1156.         Y, 11
  1157.  
  1158.  
  1159.  
  1160.         ELMER.DOC (c) Joe Kasser 1992
  1161.