DataMuseum.dk

Presents historical artifacts from the history of:

CP/M

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CP/M

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦28ca1e8ee⟧ TextFile

    Length: 99840 (0x18600)
    Types: TextFile
    Names: »D22«

Derivation

└─⟦3d57f1d87⟧ Bits:30005867/disk03.imd Dokumenter (RCSL m.m.)
    └─⟦this⟧ »D22« 

TextFile

                                                 i 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
          1.  GENERAL ...............................................   1 
           
          2.  OPERATING OF MCS-85 ...................................   2 
              2.1  What It Does .....................................   2 
              2.2  The Buttons and Displays .........................   2 
           
          3.  USING TCP702 FOR A SYSTEM WITHOUT DMA .................  16 
           
          4.  USING TCP702 FOR A SYSTEM WITH DMA ....................  19 
           
          5.  DIAGRAMS ..............................................  21 
           
           \f

                                                 ii 
           \f

         1_._ _ _ _ _ _ _ _ _G_E_N_E_R_A_L_ 1.
           
          TCP702 is a Technician Control Panel, which may be used for RC700
          or RC850 micro computer systems. The unit is build around INTEL's
          MCS-85 System Design Kit. This description consists of the
          following parts: 
           
             1. OPERATING OF MCS-85. 
              
             2. USING TCP702 for a system without DMA. 
              
             3. USING TCP702 for a system with DMA. 
              
             4. CIRCUIT DIAGRAMS for TCP702. 
              
             5. CIRCUIT DIAGRAM for MIC702, when the DMA controller is
                replaced. 
              
             6. TIMING DIAGRAMS. 
              \f

F_       2_._ _ _ _ _ _ _ _ _O_P_E_R_A_T_I_N_G_ _O_F_ _M_C_S_-_8_5_                                              2.
           
2_._1_ _ _ _ _ _ _ _W_h_a_t_ _I_t_ _D_o_e_s_ 2.1
           
          The things you can do with the basic SDK-85 kit are: 
           
             Examine the contents of all memory and register locations 
              
             Deposit program steps or data in RAM or register locations 
              
             Execute programs or subroutines upon command 
              
             Reset (start) the monitor upon command 
              
             Interrupt and start operation at a location you specify upon
             command 
              
             The keyboard and display on the board are selected by a jumper
             wire. Keyboard/display operation are described separately in
             the following paragraphs. 
              
              
2_._2_ _ _ _ _ _ _ _ _ _ _T_h_e_ _B_u_t_t_o_n_s_ _a_n_d_ _D_i_s_p_l_a_y_s_                                         2.2
              
             Keyboard/display operation is done by pressing keys on the
             keypad. Responses are displayed either by echoing the key
             pressed or by prompting you with a message or prompt. When the
             RESET button is pressed, the monitor is ready to accept com-
             mands. For numeric arguments, the valid range is from 1 to 4
             hexadecimal digits for address information and 1 to 2 hex
             digits for register and memory data.  
              
M_                 Longer numbers may be entered, but such numbers will be
M_m_                                 16     8 
P_P_p_               evaluated modulo 2   or 2  respectively, i.e., only the last
             four or the last two digits entered will be accepted.  
              \f

                   As noted, the number system being used in the SDK-85 is the hex-
          adecimal, or base-16 number system. Fig. 1 lists the hexadecimal,
          decimal (base 10), and binary (base two) equivalents. The table
          also shows how each hex digit will appear in the sevensegment LED
          displays. 
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
          Figure 1: Number systems. 
           
          Whenever the monitor expects a command, the display shows a dash
          ("-") at the left edge of the address field (possibly along with
          an error message). When the monitor expects a parameter, a deci-
          mal point will be displayed at the right edge of the field into
          which the argument will be placed. A parameter will be either an
          address or a byte of data which is used during the execution of a
          command.  
           \f

                   In the descriptions of the command modes, upper case letters and
          numbers enclosed in boxes represent keyboard keys. Words or phra-
          ses in lower case enclosed in brackets "<'" describe the nature
          of the command parameters you may input.  
           
          The () in the Format Statement indicates an optional argument.  
           
          R_E_S_E_T_: 
           
          The RESET key causes a hardware reset, and starts the monitor.
          The message "-80 85" will be displayed across the address and
          data field of the display if you are in display-keyboard mode.
          The monitor is ready to accept a command after a reset, and saves
          no information about the state of any user program before the
          reset.  
           
          S_U_B_S_T_I_T_U_T_E_ _M_E_M_O_R_Y_: 
           
M_m_m_          SUBST           NEXT          NEXT              EXEC 
                <address>      (<data>)      (<data>) ...   
P_p_p_          MEM 
           
          The substitute memory command allows you to read the contents of
          ROM memory and to examine and modify the contents of RAM memory
          locations.  
           
          The address argument denotes the contents of the memory address
          to be examined, and may be from 1 to 4 hex digits. If you enter
          longer numbers, only the last 4 digits entered are used). As soon
          as the number is terminated by the NEXT key, the contents of that
          location are shown in the data field, along with a decimal point
          at the right edge of the field. Entering a new number will cause
          that number to be displayed in the data field; however, the con-
          tents of the memory location will not be changed until an EXEC or
          NEXT key is pressed. 
           \f

                   Pressing NEXT will place the contents displayed in the datafield
          into the displayed memory address. Then the address and contents
          of the next higher memory location will automatically be shown.
          Pressing EXEC will place the contents displayed in the data field
          into the memory address displayed in the address field, and will
          also terminate the command. 
           
          Pressing NEXT while the address FFFF is being displayed will
          cause address 0000 to be displayed.  
           
          Whenever the command changes the contents of a memory location,
          it also verifies that the change has occurred correctly. If the
          contents of the location do not agree with what the new value
          should be (i.e., if the memory location is in ROM or is non-
          existent), an error message is generated.  
           \f

F_\f

                   E_X_A_M_I_N_E_ _R_E_G_I_S_T_E_R_S_: 
           
M_m_m_          EXAM       NEXT          NEXT              EXEC 
               <reg>      (<data>)      (<data>) ...  
P_p_p_          REG 
           
          The examine command allows you to display and modify the contents
          of the 8085 CPU registers. Pressing the EXAM REG key blanks both
          the address and data fields, and displays a decimal point at the
          right edge of the address field. At this point, you must press a
          register key (register names are denoted by legends on the key-
          board). Any other key will generate an error response.  
           
          If a register key is pressed, the name of the register will
          appear in the address field, and the contents of the register
          will appear in the data field, along with a decimal point at the
          right hand edge. Entering a number will cause the number to be
          displayed in the data field; however, the contents of the re-
          gister will not be changed until an EXEC or NEXT key is pressed.
           
           
          Pressing NEXT will place the contents displayed in the data field
          into the register named in the address field, then will display
          the name and contents of the next register in sequence (See Table
          2). Pressing EXEC will place the contents displayed in the data
          field in the register named in the address field, and will also
          terminate the command.  
           
          Pressing NEXT while register PCL is being displayed has the same
          effect as pressing EXEC. 
           
          The format for the I register is the lower 4 bits of the accumu-
          lator following execution of a RIM instruction. A "1" in an
          interrupt mask field denotes a masked condition. A "0" must be
          entered to use that interrupt.  
           \f

                   The format for the I register is: 
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
          Figure 2: Register display sequence. 
           
          The flag byte contains the 8085 CPU's condition flags. 
           \f

                   The format for the flag byte is: 
           
           
           
           
           
           
           
           
           
           
          For more information about the 8085>s flags and interrupt mask
          feature, consult the MCS-85 User>s Manual. 
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           \f

                   G_O_: 
           
          GO (<address>) EXEC 
           
          Pressing the GO key causes the contents of the program counter
          (PCH and PCL) to be displayed in the addressed field, along with
          a decimal point at the right edge of the field. The program coun-
          ter is available for change, and any number entered (a number is
          optional) becomes the new contents of the program counter.  
           
          Pressing the EXEC key transfers control of the CPU to the address
          in the address field (contents of the program counter). Before
          the transfer of control, the address and data display fields are
          cleared, and an >E> is displayed at the left edge of the address
          field.  
           
          Pressing any other key but EXEC generates an error message.  
           
          The monitor regains control of the CPU only after a RESET or
          after execution of an RST 0, REST 1, or JMP 0 instruction in
          program.  
           
          I_M_P_O_R_T_A_N_T_: 
           
          Note that because of the way the GO and SINGLE STEP commands are
          implemented in the Monitor, GO and SINGLE STEP will not work
          unless the 8085>s stack pointer is pointing to an existing
          portion of RAM memory. If at any time these two commands don>t
          seem to be working, set SPH to 20 and SPL to C2 using EXAM REG,
          then try it again. (Locations 20C2 to 20FF are reserved for the
          monitor program, therefore the stack pointer must be set to 20C2
          or lower so as not to interfere with the monitor.) 
           \f

                   GO COMMAND EXAMPLE 
           \f

                   S_I_N_G_L_E_ _S_T_E_P_: 
           
M_m_m_          SINGLE             NEXT  NEXT     EXEC 
                 (<address>)            ...  
P_p_p_          STEP 
           
          Pressing the SINGLE STEP key causes the contents of the program
          counter (PCH and PCL) to be displayed in the address field of the
          display along with a decimal point at the right hand edge of the
          field. The data field contains the contents of the address deno-
          ted by the contents of the program counter. The program counter
          is made available for change, and any number entered (a number is
          optional) becomes the new contents of the program counter.  
           
          Pressing the NEXT key causes the CPU to execute the one instruc-
          tion pointed to by the program counter. After execution the moni-
          tor regains control of the CPU, and the address and data fields
          show the new contents of the program counter (address of next
          instruction to execute) and contentes of the byte addressed by
          the program counter, respectively. The decimal point is turned on
          at the right hand edge of the address field, indicating that the
          program counter is available again.  
           
          If the EXEC key is pressed, no instruction is executed. The ad-
          dress displayed in the address field is made the contents of the
          program counter and the single step command is terminated. You
          may now examine or modify registers and memory locations to ver-
          ify program execution. Pressing the SINGLE STEP key takes you
          back to the single step mode, and subsequent pressing of the NEXT
          key allows you to continue, instruction by instruction, through
          your program.  
           
          Single stepping is implemented in the SDK-85 hardware by re-
          peatedly interrupting the processor. Since interrupts cannot be
          recognized during the E1 and D1 instructions of the 8085, single
          step will not stop at either of these instructions.  
           \f

                   SINGLE STEP EXAMPLE 
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
           
          V_E_C_T_O_R_ _I_N_T_E_R_R_U_P_T_: 
           
          The VECT INTR key is similar to the GO key in the respect that it
          takes control away from the monitor and gives it to another pro-
          gram. The interrupt key causes immediate recognition of RST 7.5
          interrupt and control passes to location 3C in the monitor. This
          location contains an unconditional branch to instruction location
          20CE in user RAM. You may place any instruction you wish in Loca-
          tions 20CE thru 20DO (e.g., a branch to a keyboard interrupt rou-
          tine). The monitor does not regain control without specific ac-
          tion (a RESET command, or a RST 0, RST 1, or JMP 0 program in-
          struction). In branching back to the monitor, unless the RST 1
          instruction is executed, the monitor loses all past information
          about the user program.  
           \f

                   Since an interrupt is recognized by the hardware, the monitor
          cannot clear the display; thus the display may remain unchanged
          after interrupt.  
           
          I_M_P_O_R_T_A_N_T_: Two conditions must be satisfied for the Vector Inter-
          rupt feature to be enabled: 
           
          1. Interrupts must be enabled (by executing an EI instruction). 
           
          2. RST 7.5 must be unmasked (mask reset by the SIM instruction or
             by modifying the I-Register). 
           
          P_R_O_G_R_A_M_ _D_E_B_U_G_G_I_N_G_ _-_ _T_h_e_ _U_s_e_ _o_f_ _B_r_e_a_k_p_o_i_n_t_s_ 
           
          Along with the "cold start" reset caused when the RESET button is
          pressed, the monitor also implements a "warm start" procedure.
          Execution of an RST 1 instruction will cause the monitor to enter
          this "warm start" routine. The monitor will display the same mes-
          sage as a RESET (>-80 85>), but all registers and user memory
          will be preserved in the state they were in at the time of execu-
          tion of the RST 1. No system reset or initialization will be per-
          formed.  
           
          By placing RST 1 instructions at key RAM locations where you want
          to examine the CPU status, you can break from your program and
          then examine and set memory locations and registers, or single-
          step a portion of your program.  
           
          To resume execution of the user program, press GO. The PC value
          of the next instruction appears in the address field of the
          display. Then press EXEC to continue execution.  
           \f

                   E_r_r_o_r_ _C_o_n_d_i_t_i_o_n_s_ _-_ _I_l_l_e_g_a_l_ _K_e_y_ 
           
          If a key is pressed which is illegal in its context (e.g., a
          command key is pressed when the monitor is expecting a number),
          the command is aborted and an error message is generated. This
          message takes the form "-Err", displayed in the address field.
          The monitor is then ready to accept a command. The error message
          will be cleared when a command key is pressed. Therefore, you can
          cancel a command before you press NEXT or EXEC by pressing any
          illegal key instead.  
           
          M_e_m_o_r_y_ _S_u_b_s_t_i_t_u_t_i_o_n_ _E_r_r_o_r_s_ 
           
          If the substitute memory command determines that the contents of
          a memory location were not changed correctly (i.e. location is in
          ROM or is nonexistent), the command is aborted and an error
          message is generated. This message also takes the form "-Err",
          displayed in the address field. The monitor is then ready to
          accept a new command. The error message will be cleared when a
          command key is pressed.  
           \f

F_       3_._ _ _ _ _ _ _ _ _U_S_I_N_G_ _T_C_P_7_0_2_ _F_O_R_ _A_ _S_Y_S_T_E_M_ _W_I_T_H_O_U_T_ _D_M_A_ 3.
           
          You may want to use TCP702 to troubleshoot a system, where the
          DMA controller is not installed.  
           
          Before turning the power on, the following actions have to be
          done: 
           
          1. The addressing of the RAM-memory (for the system under test)
             is changed, so that the area goes from 16K to 64K. In case of
             RC702 this may be done by replacing the DIL circuit in POS25
             with "DMA ADDR STRAP" shown below.  
              
          2. The DMA controller AM9517A-4 is replaced with the >DMA STRAP>,
             shown below. In case of RC702 the DMA controller is situated
             in POS68. 
              
          3. The DMA controller has a aid register of the type SN74LS373N,
             which is removed. In case of RC702 this circuit is in POS56.  
              
          4. The cable from TCP702 is connected. In case of RC702 to J8 and
             to the reset connecter, which may be connected to the switch
             on the front of RC702. In case of RC850 a special connection
             board is used.  
              
          AID TOOL TO TCP702.  
           \f

                   After switching on the power do: 
           
          1. Push the RESET KEY two or three times. The display will now
             show - 8085. 
           
          2. Inset the value 01 into address 2009. 
           
          3. Using the GO KEY start the TCP702 from address 1000. The
             display will now show E. 
           
          The TCP702 is now started in the program, which makes it a
          technician panel to RC702 or RC850. The computer in the system
          under test is now stopped. 
           
          TCP702 has the following functions (to systems without DMA): 
           
                                         Pressing this key sends a reset pulse to
                                the system. 
                                 
                                 
                                 
                                Stops the system and shows address and data
                                of last executed instruction. 
                                 
                                 
                                 
                                Starts the CPU in the system from the
                                address shown on the display. 
                                 
                                 
                                 
                                The CPU in the system has to be stopped.
                                When pressing this key the system makes a
                                M_e_m_o_r_y_ _S_t_e_p_. 
                                 
                                 \f

                                The CPU in the system has to be stopped.
                                When pressing this key the system makes an
                                I_n_s_t_r_u_c_t_i_o_n_ _S_t_e_p_. The steps are from one M1
                                cycle to the next. Two-bytes OP-code
                                instructions, starting with CB, DD, ED, or
                                FD make a M1 cycle for each byte fetched.  
                                 
                                This key may be used as described in
                                chapter 1. Now the memory sensed or written
                                in is the memory of the system under test. 
                                 
                                 \f

F_       4_._ _ _ _ _ _ _ _ _U_S_I_N_G_ _T_C_P_7_0_2_ _F_O_R_ _A_ _S_Y_S_T_E_M_ _W_I_T_H_ _D_M_A_ 4.
           
          When TCP702 is used to a system with the DMA in function, one of
          the DMA channels are used, when reading or writing in the systems
          memory. 
           
          Connect TCP702 as described in section 2. After switching on the
          power do: 
           
          1. Push the RESET KEY two or three times, the display will now
             show - 8085. 
           
          2. Inset the value 00 in address 2009. 
           
          3. Using the GO KEY start the TCP702 from address 1000. The
             display will now show E. 
           
          The TCP702 is now started in the program which makes it a
          technician panel to RC702 or RC850. The computer in the system
          under test is now stopped. 
           
          TCP 702 is now used the following way: 
           
                                Pressing this key sends a reset pulse to
                                the system. 
                                 
                                 
                                 
                                Pressing this key starts the CPU in the
                                system. Now the CPU in the system may work
                                with the TCP702 connected as a supervisor. 
                                 
                                Errors in the system may result in a HALT
                                instruction, which generates an interrupt
                                request to the TCP702. Upon this interrupt
                                the TCP702 senses the contents of address
                                8003 in the system and shows this byte on
                                the data display. This is described more in
                                detail in the manual for the testprogram. \f

                   The following two functions may also be used: 
           
                                Pressing this switch stops the system and
                                shows address and data of the last executed
                                instruction. 
                                 
                                 
                                This key is used as described in chapter 1.
                                 
                                 
                                 
                                 \f

F_       5_._ _ _ _ _ _ _ _ _D_I_A_G_R_A_M_S_ 5.
           
           \f

F_\f

F_\f

F_\f

F_\f

F_\f

F_\f

F_\f

F_\f

F_\f

















COMPUTERISED TELEPHONE 

DIRECTORY ENQUIRY SYSTEM























 First Edition
A/S REGNECENTRALEN                                April 1978
Information Department                      RCSL 42-i 0792\f

Author:             N.K. Butler 
         Text Editor:        Inga Marcussen
                     

 
 
 
KEY WORDS:          RC 8000, RC Computer Network, Telephone Directory 
                    Enquiry System. 
                     
                     
                     

 
ABSTRACT:           This manual describes a computerised Telephone
                    Directory Enquiry System, based on twin RC 8000s and a
                    Data Network of RC mini computers. 
                     
                     


















   Users of this manual ...





Copyright   A/S Regnecentralen, 1978.
Printed by A/S Regnecentralen, Copenhagen.\f

          Table of contents 
 
 
1  INTRODUCTION                                           page 5
   1.1 A flexible system5
   1.2 Background5
   1.3 Benefits6
 
2  MODE OF OPERATION AT A TELEPHONE OPERATOR"S STATION9
   2.1 Search10
   2.2 Identification13
       2.2.1 The paging Process14
   2.3 Examples of Search and Identification enquiries16
 
3  THE STRUCTURE OF THE COMPUTER SYSTEM22
   3.1 Data Network22
 
4  COMPUTER FILES REQUIRED IN A DIRECTORY ENQUIRY SYSTEM25
   4.1 Phoneticisation File25
   4.2 Place Table25
   4.3 Search Files26
       4.3.1 Main Divisions26
       4.3.2 Sub Divisions26
       4.3.3 Indexes26
       4.3.4 Subfiles26
   4.4 Subscriber File27
 
5  THE SEARCH PROCESS28
   5.1 The Programs used in the Search Process29
 
6  UPDATING OF THE FILES30
 
7  CAPACITY OF THE ENQUIRY SYSTEM32\f

1         Introduction 
 
 
1.1      A Flexible System 
 
A/S Regnecentralen (RC) is a Danish computer manufacturer which
has gained extensive knowledge in the design and implementation
of a computerised Telephone Directory Enquiry System, called the
DQ system. The basic concept of the DQ system, namely: 
 
a) High performance through tailor-made operating systems with
   virtually zero overhead; 
 
b) Modularity in the construction of the application software
   system; 
 
c) Randomised subscriber access keys and 
 
d) Phoneticised access key tables
 
makes the system adaptable to almost any telephone enquiry
environment. 
 
Clearly there will be many differences from company to company,
both in organisation of the telephone number system and distri-
bution of subscribers, but the system can be tailored to meet
various requirements. 
 

         1.2      Background 
 
A pilot study was carried out at the Aalborg office of the
Jutland Telephone Company (JTAS) from the middle of 1973 until
September 1974. 
 
The company"s large mainframe computer was used, but the short
response times required placed a relatively large strain on the
system. In other respects the results were encouraging and so
the company decided to invite tenders for a computer-based
Directory Enquiry System for the whole area. 
 
Following a two-stage selection process the contract for the
supply of the hardware and software was awarded to RC in April
1975. 
 \f

         A working group, made up of members of both companies, prepared a
detailed description of the software system required. 
 
The computer configuration supplied by RC consists of twin RC  
8000 medium-range computers with on-line disc storage at the
central site, connected through a data network to each of the
local enquiry offices. The data network is controlled by a dupli-
cated RC mini-computer at the central site with further RC mini-
computers at the nodes serving the local enquiry offices. 
 
The first RC 8000 was delivered in the summer of 1976 together
with the software and the second RC 8000 was delivered in Novem-
ber 1976. The change-over from the manual look-up system to the
computer-based system was accomplished at each of the four local
offices by February 1977. 
 
 
      1.3      Benefits 
 
The computerised Telephone Directory Enquiry System, which is not
just an automation of the manual listing system, will bring many
benefits, not only to the subscribers who will find that more of
their enquiries can be answered in a shorter time and to the
telephone operators who will find the system easy to use, but
also to the Telephone Company itself which could make substantial
savings by doing away with the conventional telephone directories
 
-         For the subscriber there will be a marked reduction in
          the overall time taken to handle an enquiry and enqui-
          ries which were impossible to answer before can be
          answered by the DQ system. 
           
-         At JTAS the total time taken per enquiry, (i.e. from
          the time a caller is first connected to the enquiry
          office until he is disconnected), has decreased by
          almost a third, while the number of enquiries which
          cannot be answered successfully has been halved. 
           
-         For the telephone operator the system will prove less
          frustrating and tiring to use than manual look-up
          methods and automated listing systems. 
           \f

                  Because the DQ system is designed specifically to suit the local
environment, the problems of defining such search parameters as
place name or correctly spelling a surname are reduced to a
minimum. 
 
Any number of parameters can be entered in any order and may be
abbreviated or spelled fully for refined searches in large
geographical search areas. Due to the structuring of the files in
the DQ system it is not usually necessary to enter more than two
other paramete besides locality to enable the system to select
the required subscriber. 
 
The format of the response screen can be arranged according to
the wishes of the telephone company but in any event the operators
will find the presentation of the subscriber details both clear
and easy to read so that the columns can be scanned quickly to
make the final selection. 
 
           Potential savings in Annual Expenditure are enormous
since the DQ system can completely replace the normal
telephone directories. 
           
          Studies have shown that on average a subscriber refers
          to the telephone directories only 8 times a year. 
           
          The cost of printing and distributing the directories
          each year is an ever-increasing expense. Trade Direc-
          tories (Yellow Pages), - on the other hand - which are
          paid for by the subscribers, are referred to more often
          and should continue to be produced each year.\f

























Fig. 1  Layout of the RC 810 Keyboard\f

2         Mode of operation at a Telephone Operator"s Station 
 
 
As has just been mentioned the DQ system can be designed to meet
almost any Telephone Company"s specific requirements. 
 
Within any company the bulk of the enquiries will be of two
types, either  
 
a) a SEARCH for a subscriber"s telephone number, or 
b) an enquiry about a subscriber having a particular number. 
 
The latter type of enquiry is called an IDENTIFICATION. 
 
However, the system can also be designed to allow the operators
to cope with other kinds of enquiries such as a simple request
for an area code or the provision of special numbers, e.g.
emergency numbers. 
 
The successful implementation of a computerised Directory
Enquiry System depends on the operators being able to use the
system with ease. The following section describes the way in
which enquiries are handled at an operator"s position and shows
that the procedure is relatively simple. 
 
Each operator sits in front of a Visual Display terminal which
has an attached keyboard. Directory enquiries are received in
the normal way by the operator who wears a conventional headphone
set. 
 
In a SEARCH the operator keys in the search parameters as the
caller gives the information. These may be entered in any order
and are shown on the first line of the screen. The only stipu-
lationis that the town, place or area must be entered and at
least one of name or address or occupation. 
 
On the keyboard is a set of function keys for entering each
search parameter. (Fig. 1). For example, if the number of JOHN
GREY in SMALLFORD is requested the operator first presses the
function key marked F for first name and then types in JOHN,
next the function key marked N for Name (or Surname) is pressed
and GREY is typed in and finally the function key marked D for
district is pressed and SMALLFORD is typed in. The entry on the
first line of the screen looks like this: 
 
          * F JOHN *N GREY * D SMALLFORD \f

Depending upon the size and complexity of the file structure,
the system may search upon shortened versions of each name. (At
JTAS it is the first 4 letters). 
 
In the IDENTIFICATION type of enquiry where the telephone number
is supplied, the operator presses the function key marked T for
Telephone and types in the number. The entry on the first line
would look like this: 
 
          * T 6963624 
 
In general, superfluous elements of the search criteria are
stripped away before a search is executed on meaningful elements.
Superfluous elements could be 
 
-         The first 0 in a telephone enquiry. 
-         "Street", "East", "West" etc. in an address 
-         Characters exceeding a certain threshold, say four. 
 
The basic idea of the system is that if the total data supplied
by the subscriber can possibly lead to a successful search it
will do so, regardless of how incomplete the individual criteria
may be,e.g. 
 
-         missing surname, 
-         missing or poorly defined address,
-         uncertainty about district or even geographical
          whereabouts.
 
 
        2.1       Search 
 
The full set of special function keys which may be used in a
SEARCH are as follows: 
 
D         District - Place/Town/Area Name. M_a_n_d_a_t_o_r_y_. 
N         Surname (s) 
F         First Name (s) 
S         Street Name 
H         House number - only when street name is present.
Two numbers entered means that all houses in that
          range will be searched. 
C         Company or Institution 
T         Area Code - May be given to clarify the place name. 
O         Occupation 
E         Exact spelling of Surname.\f

When the input line is complete the operator presses the SEND
function key and the contents of the line are transmitted to the
computer. Before a search of the files can be made the software
must first decode the string of characters into meaningful
search parameters and then, where relevant, pre-process then by
using Place Table references and Phoneticisation tables. 
 
F_i_g_ _2_ 
 
L_a_y_o_u_t_ _o_f_ _t_h_e_ _r_e_s_p_o_n_s_e_ _i_t_e_m_s_ _t_o_ _a_ _s_e_a_r_c_h_ _e_n_q_u_i_r_y_ 
(One line per subscriber) 
 
Field 1   Field 2  Field 3  Field 4  Field 5  Field 6  Field 7
 
Area No.  Surname  First    Occupa-  Street   Place    Remarks 
+ Tele-            Name     tion     Name +   Name 
phone                                House 
Number                               Number 
 
(7Chars) (15Chars) (7Chars) (7Chars) (14Chars) (7Chars) (1Char) 
 
      Mark for               Marks for cut-off 
      Calling 
      Number 
 
Example of a response line: 
 
6143225  Johnson   Peter    Dentist  14 High St Littlet + T 
 
 
The database is searched for all subscribers who match the
specified search parameters and details of these subscribers are
then shown on the screen, one line per subscriber. (See Fig. 2).
The first line of the screen is always reserved for the input
search parameters and these are shown throughout the enquiry
process.  
 
If there are more subscribers than can be shown on one screen  
the second line is used for the text "Page X of Y pages".
Otherwise the second line is used for the first subscriber. 
 
The details about a subscriber are placed in fixed fields in the
line so that when there are several subscribers it is easy for
the operator to scan the columns. The telephone number always
occurs in the first field, the other fields may be organised in
 
 \f

different orders according to which search parameters are given
in the enquiry input line. 
 
e.g.      If Street Name is given but not Surname, then 
          Street Name is considered to be the most important 
          and will appear in the second field after Telephone 
          number, followed by Surname, Occupation, Forenames,  
          etc. 
 
Following each main field there is a spare single-character
field which can be used to indicate whether the field has been
cut-off, this is done by showing a + sign. In the case of the
telephone number an asterisk * may be shown, which indicates
that the subscriber has more than one number and that the number
shown is the main calling number. 
 
At the end of the line is a "Remarks" field where one of the
following letters may be shown against an entry: 
 
T         Additional information is available either as supple-
          mentary text, or in the form of additional entries. 
 
S         Secret Number. (No number is shown initially). 
 
R         Reserved Number for an installation which has not been
          completed. 
 
A         Alternative Number, covered by a main calling number. 
 
If the operator wishes to see the secret number, it is necessary
to return to the first line containing the input search para-
meters and type in the letter "S" in the paging field, then
depress the "PAGE" function key. The secret number will then be
shown in the first field for the subscriber entry, where pre-
viously no number was shown, but the letter "S" will still be
shown in the "Remarks" field of that line as a reminder to the
operator. 
 
This feature should be limited to a few positions such as those
of the Supervisors or other authorised operators. 
 
 \f

        2.2       Identification 
 
This type of enquiry is used in the following situations: 
 
-         Where it is necessary to know the details about a 
          subscriber with a given number. e.g. Name and Address.
           
-Where, in connection with a SEARCH, the operator needs
to see what exists as supplementary text. 
 
-         Where the operator wishes to check on a line in a  
          SEARCH response, possibly where the cutting-off has
          been fairly severe. 
 
In each of these situations, the function key "T" is depressed, 
followed by the typing of the required telephone number which
must always include the area code. On the first line of the
screen the entry would look like this example: * T 5617319. By
pressing the SEND function key the request is sent to the computer.

 
Once the programs have decoded the string of input characters
and it is known that it is an Identification Enquiry a search is
made directly in the Subscriber file and the main entry for the
number is shown on the screen. Fig. 3 shows the format of the
main entry. 
 
The full directory entry is shown without any cutting down of
any of the items. If there are other directory entries for this
number, they are indicated together with the total number of
such entries. 
 
          If there is supplementary text, this is indicated  
          together with the number of pages. 
 
          If the given telephone number is the main calling
          number but there are other numbers covered by it, the
          message "MAIN NUMBER - THERE ARE ALTERNATIVE NUMBERS"
          is shown. These numbers may be uncovered by typing in
          the letter "A" in the paging field on the first line. 
           
          If the number requested is a secret number, the
          message "SECRET NUMBER" is shown. The details can be
          uncovered (by a Supervisor or an authorised operator)
          by typing in the letter "S" in the paging field on the
          first line and pressing the "SEND" key.\f

          If the number requested is an alternative number,
          covered by a main calling number, the message
          "ALTERNATIVE NUMBER - MAIN NUMBER IS XXXXX" is shown. 
           
                   
  F_i_g_._ _3_ 
 
F_o_r_m_a_t_ _o_f_ _t_h_e_ _s_c_r_e_e_n_ _f_o_r_ _t_h_e_ _r_e_s_p_o_n_s_e_ _t_o_ _a_n_ _I_d_e_n_t_i_f_i_c_a_t_i_o_n_
E_n_q_u_i_r_y_. 
 
* T 6963624 
 
 
<Surname (s)> <First Name(s)> 
<Occupation> 
<House Number> <Street> 
<Place Name> 
<Post Number> <Post district> 
 
**** Extra Entries: <Actual Entry is the Main Entry> 
     1     2     3 
 
The Entry Has <N> Pages of Supplementary Text 
Main Number - There Are Alternative Numbers. 
 
        2.2.1     T_h_e_ _P_a_g_i_n_g_ _P_r_o_c_e_s_s_ 
By using the paging field with a particular subscriber number
entered the operator can page through all the entries on that
number. Figure 4 illustrates the possible sequences of paging on
a number which has: 
 
a)        A main entry with 2 pages of supplementary text. 
 
b)        Extra Entry 1 with 1 page of supplementary text. 
 
c)        Extra Entry 2 with 3 pages of supplementary text. 
 
d)        Extra Entry 3 with no supplementary text. 
 \f

* T<Telephone Number> 
                           Paging with a blank paging field 
 
Main Entry     Extra Entry    Extra Entry    ExtraEntry 
                   1              2              3 
 
 
 
 
 Suppl.          Suppl.         Suppl. 
 Text            Text           Text 
   1               1              1 
 
 
 
 
 Suppl.                         Suppl. 
 Text                           Text 
   2                              2 
 
Paging with 
"T" in the 
paging field. 
                              Suppl.
Text
3
 
 
Fig. 4  IDENTIFICATION PAGING POSSIBILITIES 
 

                   H_o_r_i_z_o_n_t_a_l_ _P_a_g_i_n_g_ 
 
By using the "PAGING" key with a blank PAGING field in the input
line one moves horizontally across the figure, i.e. one pages
through all the EXTRA ENTRIES: 
 
V_e_r_t_i_c_a_l_ _P_a_g_i_n_g_ 
 
At any stage the insertion of a "T" in the PAGING field in the
input line will cause one to move vertically downwards in the
figure, i.e. paging from one page of supplementary text to the
next for a particular entry. 
 \f

When a particular page of supplementary text or a particular
extra entry is required, the operator pages through until it is
reached. On average it takes about 1/2 second to find and display
the next screen from the instant the "PAGE" key has been
depressed. There is no fixed sequence for paging, the only
requirement is that one starts with a normal Identification
Enquiry. 
 
 
     2.3       Examples of SEARCH and IDENTIFICATION enquiries 
 
a) S_e_a_r_c_h_ _t_y_p_e_ _e_n_q_u_i_r_i_e_s_ 
 
Fig. 5    Shows an enquiry for a subscriber whose
          surname is JONES living in LONGDALE. 
 
F_i_g_u_r_e_ _5_._ 
 
* N JONE * D LONGDALE 
 
6137011 Jones       Pauline      178 Green St.    Longdal 
6191186 Jones       H F   Solicit+ 23 The Ridings  Longdal 
6175974 Jones, Price Nigel Account+9 Market Sq.     Longdal 
6103336 Joan"s Salon        Hairdre+  14 High St.       Longdal 
 
 
          Fig. 6    Shows a search for the STARLIGHT TRAVEL AGENT 
                    IN MAINTOWN. 
 
F_i_g_u_r_e_ _6_._ 
 
* N STAR TRAV * D MAIN
 
6133777 Star Travel Bureau     Travel + Station St.     Main T 
6121822 Starlight Travel AgentsTravel + 11 South Road   Main T \f

                   Fig. 7Shows a search for a person called P. SKOV living in
VIBY and is taken from JTAS. This example is chosen to
illustrate the use of the phoneticisation tables. The
object of phoneticisation is to ensure that all pos-
sible spellings of the name which sound the same, or
similar, are included in the search. In the case of the
Danish name SKOV, names spelt with SKOV, SKAV, SCHA,
SCHO, SCHJ, SCHU, SKJE, etc. must also be include be-
cause they are pronounced like SKOV. It is preferable
to have a selection with too many, apparently super-
fluous candidates than to omit relevant possibilities. 
                 
Place Names also present a problem because adjacent
areas could contain the required place when officially
they may have other names 
                     
                     
                     
                Toftelund 
                                   Viby               Langbaek 
                     
                     
                     
                     
                     
                     
          In this example someone living in Viby could also be
          considered as living in Toftelund or Langbaek districts. 
                     \f

                   F_i_g_u_r_e_ _7_  Search for P Skov living in Viby 
           
* N SKOV *FP * D VIBY 
Page 1 of 2 pages 
 
6179931 Hansen og Skov   Poul           Bispevænget 13  Stavtru 
Secret  Jøst Schacht     Preben         Storskovvej 21  Viby C    S 
6392454 Schandorff       P     Storeman Nordbyvej 176   Viby 
6387756 Schajdt Jensen   P N            Nordborggade 3  Århus C 
6419266Schou            Per   Lawyer   Sondervangen 8  Viby C    T 
6818173 Schou            Peter Service+ Ornslevvej 6B   Viby C    T 
6773928 Schou            Poul  Directo+ Hørhavevej 37   Højøjer 
6183334 Schou            Preben Optici+ Nordrupsvej 19  Stavtru 
6392177 Schouw           H P   Pharmac+ C Jensenve+  4  Viby 
6493138 Schultz          C P   Pension+ Augustenbor+ 7  Århus C 
6201889 Skjerk           P     Typeset+ P Slotsvej 55   Højøjer 
6315648 Skjold Madsen    Pia            Søndrering+59   Århus C 
6290013 Skjoldborg       Per   Central+ Hørsevænget1    Travnje 
6686143 Skjodt           A P            Jenstrupve+ 13  Travnje 
 
 
 
*N SKOV * F P * D VIBY 
Page 2 of 2 pages 
 
6800819 Skjodt           Poul P Service Holmevej 14     Højøjer 
6328777 Skov Rasmussen   Per    Student Strandvejen 188 Århus C 
6504307 Skov Jensen      PEP    Service Mathildelund 48 Viby 
6162698 Skov             Poul   Butcher Randbjerg 119   Højøjer 
6174200 Skov             Karl P Painter Rosendalsvej 73 Stavtru 
6636261 Skov Hellemann   Per    Garage  Nørrebrog+5     Århus C 
6819055 Skoved           P      HorseTr+Sondre Ring+10  Højøjer 
6543507 Skovgaard Ander+ Laurids        Rundhøjalle 63  Travnje 
6422290 Hendroff Skjorth Preben Bank Cle+ Laerkevej 9   Viby \f

Fig. 8    Shows a search for a subscriber living in HIGH STREET, 
          BRADBURY whose house number lies in the range 20-30. 
 
 
F_i_g_u_r_e_ _8_  
 
* D BRADBURY * S HIGH * H 20 30 
 
6260241  21 High St.  Bradbury Cycles       Cyclesh+ BrBradbur+ T 
6260083  23 High St.  Laughton     James    Butcher    Bradbur+ T 
6261858  24 High St.  Adams        J F                 Bradbur+ 
6262854  25 High St.  Meredith     Christi+            Bradbur+ 
6263590  26 High St.  Byrd         Colin    Electri+   Bradbur+ 
6262389  27 High St.  The Singing Kettle    Restaur+   Bradbur+ 
6260828  28 High St.  High St Autos         Car Dea+   Bradbur+ T 
6261045  29 High St.  Peters       Trevor              Bradbur+ 
6263666  30 High St.  Sparrow      B L F               Bradbur+ 
 
 
b) I_d_e_n_t_i_f_i_c_a_t_i_o_n_ _E_n_q_u_i_r_y_  
 
Figures 9 and 10 Show an enquiry with an Identification enquiry  
                 and a page of supplementary text belonging to it. 
 
F_i_g_u_r_e_ _9_  
 
I_d_e_n_t_i_f_i_c_a_t_i_o_n_ _E_n_q_u_i_r_y_  

* T 6217749 
 
The All-Clear Cleaning Company 
12 East End 
Maintown 
 
*** Extra Entries:  The Actual Entry is the Main Entry 
  1 2 
The Entry Has 2 Pages of Supplementary Text. 
 
 \f

F_i_g_u_r_e_ _1_0_ 
 
* T 6217749T
 
All-Clear Cleaning - Rentals 
- Office Equipment 
  11 Grove Road              231188 
  44 Black Bridge Lane 
     Smalltown                5119284 
- Home Equipment 
  12 East End                 217749 
 
***Supplementary Text Pages:  Actual Page Number is 2 
  1 2 
 
 \f

F_i_g_u_r_e_ _1_1_ _B_a_s_i_c_ _M_a_c_h_i_n_e_ _c_o_n_f_i_g_u_r_a_t_i_o_n_ 
 \f

3         The structure of the computer system 
 
 
Fig. 11 shows the Basic Machine configuration. The central computer
site contains two identical, independent RC 8000 systems, sharing
one Peripheral Processor. This minicomputer can  be connected to
one or other of the RC 8000 computers, and is primarily used in
connection with updating the data base from magnetic tape. Each
RC 8000 is connected through a high-reliability switch to the
data network. 
 

         3.1       Data Network 
 
As well as serving the Directory Enquiry System terminals, the
data network, which is a Packet Switching Network, can also be
used for other real time applications, such as maintaining
customer records & service orders. When there is a mainframe
computer to perform the telephone company"s administrative data
processing, it is possible to link the Front-End system via a
direct channel interface to the mainframe. Thus terminals may be
used anywhere in the network for access to the administrative
computer system and/or the DQ system. 
 
At JTAS the network consists of three "ring connections" of mini
computers including the nodes serving the local offices, and
connected to the Front-End system at the central site via two
alternate routes (see Fig. 12). Each local computer serves
clusters of Visual Display Units and serial printers. The commu- 
nication channels should be of high speed, at JTAS their speed is
48 K bits per sec. 
 
For the purposes of the Directory Enquiry System at JTAS, RC
supplied a terminal with a special keyboard, known as the RC 810
(see Fig. 1). The format of the screen ranges from 16 lines of 64
characters to 25 lines of 80 characters. 
 
Besides controlling the communications between the terminals of
the Directory Enquiry centres and the two RC 8000 systems, the
hardware in the data network also performs these two important
additional functions: 
 \f

L_o_a_d_ _S_h_a_r_i_n_g_ 

The Front-End system keeps a record of the number of enquiries
being handled by each of the RC 8000 systems and ensures that the
load is being equally shared. If for any reason one of the RC
8000 systems is down, the enquiries are automatically sent to the
other system. 
 
O_p_e_r_a_t_i_o_n_ _o_f_ _c_o_n_s_o_l_e_s_ 
 
The Front-End system controls the operation of the RC 8000 system
consoles. The control is performed through the data network rather
than through the single Device Controller, so that continuous
realtime operation is guaranteed through the automatic switching
possibilities built into the data network. 
 
 \f

F_i_g_u_r_e_ _1_2_ _T_h_e_ _J_T_A_S_ _N_e_t_w_o_r_k_\f

4         Computer files required in a Directory Enquiry System 
 
 
Four types of files are used by the system: 
 
- Phoneticisation tables 
- Place table  
- Search files 
- Subscriber file including supplementary text. 
 
All files are organised in Index-Sequential mode, which means
that for each logical file there is an index set which requires a
separate disc reference if the file address is not already known
by the system. 
 
 
     4.1       Phoneticisation Tables 
 
This is a table set which contains groups of names. The names are
grouped according to the way in which they are pronounced, or
should be pronounced, regardless of their spelling. The table is
used as a dictionary when inserting new names in the combined
Search and Phoneticisation Indexes. One of the interesting things
about this philosophy is that the system may be optimised almost
endlessly without influencing its performance. 
 
 
   4.2       Place Table 
 
This file contains place names or standard abbreviations of place
names and their corresponding conversion to one or more exchange
number series. Each exchange number series is represented by the
following information: 
 
          Addresses in Search File Index 
 First and last addresses in the Subscriber File. 
 
The more frequently used place names are held in the core memory
so that about 60% of all references can be handled without disc
access. 
 
 \f

    4.3       Search Files 
 
    4.3.1     M_a_i_n_ _D_i_v_i_s_i_o_n_s_ 
The main file is physically subdivided in sections each contain-
ing information about 100.000 subscribers. At JTAS - as mentioned
previously - all telephone numbers have seven digits, one area
code digit followed by six digits: 6123456. 61 is called  the AB
number, consequently the sections are called AB sections. 
 
In other telephone companies there will probably be a different
organisation of the subscriber numbers by area, etc. but in
principle there should be no allocation which presents too many
problems when designing the file structure. Clearly a
hierarchical structure is the simplest to handle.  
 
   4.3.2     S_u_b_ _D_i_v_i_s_i_o_n_s_ 
Each AB section contains both index and file, these are again
divided into four subsections, one for each main criterion: 
 
          name, street, occupation and first name. 
 
  4.3.3     I_n_d_e_x_e_s_ 
By using the phoneticisation tables during the daily updating the
Search Indexes are phoneticised which for example means that both
Brown and Braun point to the same file address. 
 
       4.3.4     S_u_b_f_i_l_e_s_ 
Depending on the information available in the Subscriber File
every subscriber is represented in one or several of the four
subsections: 
 
Name:               address in subscriber file + INITIALS 
Street:                -     -      -       -  + HOUSENUMBER 
Occupation:-     -      -       - 
First Name:            -     -      -       - 
 
Within each subsection the subscribers are sorted in phonetic
groups and within each group in subscriber file address order.
This means that all Browns and Brauns are treated as one group. 
 \f

4.4       Subscriber File 
 
This file is organised by telephone number order and contains the
actual directory entries for each number - namely, the main
entry, extra entries and supplementary text. 
 
The entry for each subscriber contains the following items: 
 
a)        Flags, i.e. S for Secret Number, or A for Alternative 
          Numbers. 
 
b)        Pointers to the following fields: 
 
c)        First Name(s). 
 
d)        Surname(s) or company/institution Name. 
 
e)        Occupation/trade. 
 
f)        Street or road name. 
 
g)        House number. 
 
h)        House letter. 
 
i)        Floor. 
 
j)        Place name. 
 
k)        Postal code. 
 
l)        Postal district name. 
 
m)        Alternative number. 
 
If the place name is not given the post district name will be
used as place name on the response screen. Each alternative num-
ber has an independent entry in the file, but the item contents
consist only of the main calling number. 
 \f

5         The Search Process 
 
 
An I_d_e_n_t_i_f_i_c_a_t_i_o_n_ _T_y_p_e_ _E_n_q_u_i_r_y_ means that the search is made
directly in the subscriber file through the index. 
 
A S_e_a_r_c_h_ _T_y_p_e_ _E_n_q_u_i_r_y_ starts with a Place Table reference, either
in core memory or on disc. If the telephone area code has not
been entered using * T, the search process is automatically
carried out in the local area. From the Place Table reference the
relevant AB index addresses and subscriber file limits are found.
 
 
The search begins by first sorting the input parameters (criteria)
into the same sequence as the search files on the disc. This
means that only one movement of the reading head across the disc
will be necessary, resulting in approximately half the normal
time required for a disc access. 
 
Using the search index address found in the place table and the
criteria from input the system locates the corresponding lists of
candidates in the search file. 
 
The total number of candidates is counted and if more than the
pre-specified maximum, either 3 or 4 screens), a message is sent
to the screen saying "Too Many Candidates". In order to reduce
the number of candidates the operator can use the function key
marked C. If the required subscriber is a company or institution
then the C key is pressed and all subscribers in the original
selection who are n_o_t_ companies or institutions are eliminated.
If the required subscriber is a person then the C key is used
together with the MINUS sign key. This removes all companies or
institutions from the original selection. 
 
The operator has a further possibility of specifying the sub-
scriber more precisely and this is by giving the exact spelling
of the surname. By using the key marked E and typing in the
correct spelling, the list of candidates can be shortened. Other-
wise the actual entry for each subscriber is obtained from the
subscriber file and the items are sorted according to the order
of the input parameters. The output line for the response screen
is generated and when the screen is full, or there are no more
subscribers, the full screen is transmitted. 
 \f

F_i_g_u_r_e_ _1_3_. The division of the Search Process
 
 
Front-End    input
system
 
                    search              search 
                                        file 
 
                    reference           subscriber
file 
 
                    output 
 
 
         5.1       The Programs used in the Search Process 
 
The search process may be considered as four separate processes,
each with its own suite of programs (See Fig. 13). 
 
(i)       I_n_p_u_t_     The program takes the input enquiry line, 
                    decodes it and checks the parameters, sorts  
                    them according to the sequence of search  
                    files and consults the Place Table reference
                    file. Any errors which are detected are shown
                    on the screen in an appropriate error
                    message. 
 
(ii)      S_e_a_r_c_h_    The program takes each parameter from the 
                    sorted enquiry, and consults the combined 
                    search index Phoneticisation/Synonymisation  
                    tables before accessing the search file and 
                    selecting the file addresses of possible 
                    candidates. 
 
(iii)     R_e_f_e_r_e_n_c_e_ This program accesses the file address of the
                    Subscriber file for each candidate and
                    obtains the entry. 
 
(iv)      O_u_t_p_u_t_    This program takes each subscriber entry,
                    sorts the items according to the sequence of
                    input parameters, generates each line and
                    transmits the screen to the display. \f

6         Updating of the files 
 
 
Daily updates which have been made to the database of the admin-
istrative system and which concern the Subscriber Directory files
in the Enquiry System, are copied onto Magnetic Tape (s) and
brought to the central computer site. Here the updating of the
Enquiry System data files is carried out in batch mode each night.
The updating is a serial process and is carried out on one of the
RC 8000"s at a time while the other is running the Enquiry Service.
 
The first process in the updating is a check on the incoming
transactions, after which they are sorted according to telephone
number and transaction type. The subscriber file which is held on
a separate disc is merged with the transactions file, whereupon
the additions, deletions and changes are made. The result of this
process is: 
 
1)        A Master File of the new Subscriber file including the
          updated entries. 
 
2)        A Working File containing the Search File Transactions.
 
3)        A Working File containing address modifications to the 
          Search File resulting from the changes which have been
          made in the Subscriber File. 
 
Two copies of the new Subscriber File are taken, ready for the
next day"s operation, then the updating of the Search File is
started. 
 
A search file transaction contains the following details: 
 
          Criterion Type 
          AB Number 
          Key 
          Address of the entry in the Subscriber File 
          House Number/Initials 
          Addition/Deletion 
 
The transactions are sorted according to type of criterion, so
that the updating of the search file is carried out in the order
in which the individual Search Files are held on the disc. \f

The updating of the Search File is carried out in the same way as
the Subscriber file, by merging the transactions file with the
Search File. In the case of a key not being found in the Search
File, e.g. a new name may have been entered which has not occurred
before in the Search File, then the set of key values (phoneti-
cally similarly sounding) will be taken from the Phoneticisation
File and inserted in the Index to the Search File. 
 
Once the updating of the Search File has been completed and two
copies have been made for use on the enquiry system, the old
version and the new version of the Master File are locked away
together with the magnetic tapes containing the day"s transaction.

 \f

7         Capacity of the Enquiry System 
 
 
The existing Directory Enquiry System at JTAS is capable of han-
dling up to 10,000 enquiries per hour with at least 95% of them
having a response time of less than 3 seconds. 
 
With the present configuration at JTAS the maximum number of sub-
scribers which can be held on the file is 2 million. As there are
currently no more than 750,000 in the JTAS area, there is ample
spare capacity for the needs of the foreseeable future. 
 
By virtue of the fact that an Enquiry System is configured on a
modular basis it is possible to specify configurations which can
meet the requirements of almost all Telephone Companies, regard-
less of their size. 
 \f

                                                 i 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
          1.  GENERAL DESCRIPTION ....................................   1 
           
          2.  SPECIFICATIONS .........................................   2 
              2.1  Performance Specifications ........................   2 
                  2.2  Electrical Specifications .........................   3 
              2.3  Environmental Specifications ......................   3 
              2.4  Physical Specifications ...........................   3 
           
           \f

                                                 ii 
           \f

F_       1_._ _ _ _ _ _ _ _ _G_E_N_E_R_A_L_ _D_E_S_C_R_I_P_T_I_O_N_    1.
           
          The RC3796B connects the RC3600 system to an IBM 360/370 channel,
          over the IBM standard channel interface as defined in the 'IBM
          System/360 and System/370 I/O Interface Channel to Control Unit
          OEM Manufacturers Information GA22-6974-3'. 
           
          The RC3796B consists of an FPA705 placed in the controller
          chassis and an FPA706B placed in a CHS711 chassis containing
          plugs for the IBM channel bus cables. 
           
          The FPA modularity features the possibility to connect several
          RC3600 systems to the same IBM channel and also several IBM chan-
          nels to the same RC3600. In the former case, it is recommended to
          place the CHS711 chassis in a cabinet separate from the RC3600
          cabinets, also the powering at the CHS711 should be controlled by
          the EPO system (by means of a PDP708) of the attached channel.  
           \f

F_       2_._ _ _ _ _ _ _ _ _S_P_E_C_I_F_I_C_A_T_I_O_N_S_    2.
           
2_._1_ _ _ _ _ _ _ _P_e_r_f_o_r_m_a_n_c_e_ _S_p_e_c_i_f_i_c_a_t_i_o_n_s_    2.1
           
          The burst data rate, i.e. the data rate obtained if data blocks
          of infinite length were used, is determined by the slowest of the
          participants (the channel or the FPA705 - RC3600). 
           
          The FPA705 - RC3600 data rate is max. 400 kbytes/sec. The FPA706B
          adds 5.7 secs. to the transfertime per byte so maximum obtained
          data transfer rate is 
           
               1_7_5_ _k_b_y_t_e_s_/_s_e_c_. 
           
          where one byte contains 8 bits + parity. 
           
          When attached to byte multiplexer channels, the speed is entirely
          determined by the speed of the channel. 
           
          The overhead for RC3600 response when using the RC3796 Driver is
          typical 2.5 msecs. per operation. When a protocol with a syn-
          chronizing operation plus a transfer operation is used and block
          sizes of 2 kbytes are transferred, the maximum transfer rate is
          calculated as 2000/t, where t is the time used to transfer 2000
          bytes: 
           
          t = 2 x 2.5 + 2000/175 = 5 + 11.4 = 16.4 msecs. 
           
          Under these circumstances max. transfer rate is: 
           
               2_0_0_0_/_1_6_._4_ _=_ _1_2_2_ _k_b_y_t_e_s_/_s_e_c_. 
           
          C_a_u_t_i_o_n_:     When connected to a byte multiplexer channel, the
                       FPA706B forces burst mode from Initial Selection and
                       until channel end is presented. This may cause over-
                       run on fixed speed, non buffered devices. 
           
           \f

         2_._2_ _ _ _ _ _ _ _E_l_e_c_t_r_i_c_a_l_ _S_p_e_c_i_f_i_c_a_t_i_o_n_s_    2.2
           
          Power requirements 
          FPA705:                       5 V, 5 A from Controller Chassis 
          FPA706B:                      5 v, 6.5 A from CHS711 
          CHS711:                       220 V +_10% 50 Hz 220 W 
                                         
          Grounding:                    All systems plus CHS711 should be
                                        grounded common to the attached IBM
                                        Systems. 
           
           
2_._3_ _ _ _ _ _ _ _E_n_v_i_r_o_n_m_e_n_t_a_l_ _S_p_e_c_i_f_i_c_a_t_i_o_n_s_    2.3
           
          Ambient temperature:          16-32C (60-90F) 
          Relative humidity:            20-80% (no condensation) 
          Heat dissipation 
               FPA706B:                 220 W 
               FPA705:                  Included in RC3600 system figures. 
           
           
2_._4_ _ _ _ _ _ _ _P_h_y_s_i_c_a_l_ _S_p_e_c_i_f_i_c_a_t_i_o_n_s_    2.4
           
          Mounting 
          FPA705:                       1 slot in Controller Chassis 
          FPA706B:                      1 slot in CHS711 
          CHS711:                       Mounted in a cabinet containing 
                                        1 OCP702 and 
                                        1 PDP708. 
           
           \f

F_                  
           \f

                    
           \f

F_                  
           
           
           
           
           
           
           
           
           
           
           
          . PROGRAMMABLE MICROPROCESSOR 
           
          . ERGONOMIC DESIGN 
           
          . STANDARD CHARACTER FONT AND USER DEFINED CHARACTER FONT 
           
          . HIGH-SPEED COMMUNICATIONS 
           
           
           
           
           
           
           \f

F_                 G_E_N_E_R_A_L_ 
           
          The RC853 Directory Assistance terminal is a terminal of the
          RC850 terminal system. The RC853 terminal succeeds the RC810 DA
          terminal in RC directory inquiery systems.  
           
          The ergonomic design of the RC853 DA terminal have substantially
          improved the operator>s place of work. The noiseless display is
          based on a large, 38 cm screen and allows for height adjustment
          and tilting by simple lever action. The detachable, low-profile
          keyboard as well permits the operators to arrange for the proper
          working conditions individually.  
           
          The terminal features a 128-character ASCII character set in ROM.
          Further 256 characters can be user-defined and loaded into RAM
          memory to meet local application needs. In addition a 4-character
          shadow mask can be superimposed on each character position to
          create general deviations in the character presentation. Other
          attribute functions provide further ways to control the display-
          ing of the character positions. Special customer support with
          respect to character sets and keyboard layouts will be facilita-
          ted upon agreement. Built-in diagnostic procedures are
          automatically executed at each terminal start-up. 
           
          The standard communications interface to the host system is the
          RC-CIRCUIT connection. A 2-wire, half-duplex connection (max.
          1500 m) transformer coupled at both ends, using normal twisted
          pair of cables. Transmission speed 250 k bits per sec. Optional-
          ly a high-speed serial I/O connection (max. 100 m) is available.
          Tansmission speed 200 k bytes per sec.  
           
                   S_P_E_C_I_F_I_C_A_T_I_O_N_S_ 
           
          CPU:                     Z80A (4 MHz). Self-test feature. 
          Memory:                  RAM: 64 Kb, dynamic MOS; EPROM: 16 Kb,
                                   as program memory within the 64 K
                                   address space or as program load media
                                   for the RAM - mode defined by software. \f

          Keyboard-processor:      Intel 8084 mask programmed. 
          Display capacity:        2000 characters in 25 lines 80 charac-
                                   ters each; refresh memory: separate 2 K
                                   x 16 bit RAM; refresh rate: 50/60 Hz,
                                   phaselocked to mains. Attribute
                                   functions on each character position. 
          Display screen:          15-inch (38 cm), non-glare. 
          Character image:         Generation: 14 x 16 dot matrix; size: 6
                                   x 3 mm (h x w). 
          Character set:           128 characters from ROM, ASCII alphabet;
                                   256 characters from changeable character
                                   generator (RAM), customer definable and
                                   loadable;  
                                   4-character shadow mask customer defin-
                                   able and loadable. 
          Cursor:                  Blinking underlining or inversion of
                                   characters, selectable by user. Cursor
                                   control: fully controlled by software. 
          Attribute functions:     Blinking, inverse video, high intensity,
                                   non-displayed fields, shadow mask con-
                                   trol (applicable to all displayed cha-
                                   racters), changeable character generator
                                   control. 
          Keyboard:                Up to 145 keys. Special directory assi-
                                   stance design. Optional customer demands
                                   upon agreement. 
          Keyboard features:       N-key rollover, auto repeat, adjustable
                                   key-sound and alarm (may be silenced
                                   completely). 
          Indicators:              Up to 8 indicators can be installed. 
          Data format:             Serial, asynchronous, synchronous. 
          CIRCUIT connection:      2-wire, half-duplex, transformer coupled at both
                                   ends, 1500 m.  
          I/O connect. (optional): 4-wire, high-speed serial, transformer
                                   coupled at both ends, 100 m.  
          LINE I connection:       CCITT V.24/X.26 (optionally X.21/X.24),
                                   ISO 2110 socket, 25 m.  
          LINE II connection:      CCITT V.24/X.26, ISO 2110 socket; hard
                                   copy printer connection, 25 m.  \f

          Transmission speeds:     CIRCUIT: 250 k bps; I/O connection: 200 K bytes
                                   per sec; LINE I and LINE II: 110 to 9600 bps,
                                   selectable by software, individual to each line;
          Power requirements:      110/220 V AC +_ 10%, 50 Hz +_ 2 Hz (60 Hz optio-
                                      nal), 100 W. 
          Temperature, amb.:       10-35C (50 - 95F). 
          Humidity, relative:      0-95%, non-condensing. 
          Heat dissipation:        360 kJ/h (86 kcal/h, 340 BTU/h). 
                                    
          DIMENSIONS               Display                        Keyboard 
          Height:                  39-49 cm (15.4-19.4 in.)       8 cm (3.15 in.) 
          Width:                   47 cm (18.5 in.)              52 cm (20.5 in.) 
                   Depth:                   33 cm (13 in.) non-tilted     27 cm (10.6 in.) 
          Weight:                  20 kg (44 lb)                  3 kg (6.6 lb) 
           
          RCSL 42-i1407 
           \f

                                                                Ballerup, marts 1981
 
 
 
 
 
 
Til:   RC kunder 
 
Vedr.: RC8000 System, 
       Betjeningsvejledninger, 
       ajourføring. 
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
 
Medfølgende eksemplar(er) af betjeningsvejledning(er) bedes indsat i
dokumentationsmappen, benævnt: 
RC8000 SYSTEM - BETJENINGSVEJLEDNING - DLI 012. 
 
Vejledningen(erne) indsættes i mappens sektion 2, og ordnes efter RC
produktnummer.  
 
 
Med venlig hilsen, 
A/S REGNECENTRALEN af 1979 
 \f

                                                                Ballerup, marts 1981
 
 
 
 
 
 
Til:   RC kunder 
 
Vedr.: RC8000 System, 
       Betjeningsvejledninger, 
       ajourføring. 
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
 
Medfølgende eksemplar(er) af betjeningsvejledning(er) bedes indsat i
dokumentationsmappen, benævnt: 
RC8000 SYSTEM - BETJENINGSVEJLEDNING - DLI 012. 
 
Vejledningen(erne) indsættes i mappens sektion 3, og ordnes efter RC
produktnummer.  
 
 
Med venlig hilsen, 
A/S REGNECENTRALEN af 1979 
 \f

F_                                               i 
           
          F_O_R_E_W_O_R_D_ 
           
          First edition: RCSL No 42-i1714. 
          This document contains a survey of COMAL80 on the RC700
          microcomputer, Piccolo. 
           
          COMAL80 was proposed by a working group including manufacturers,
          schoolteachers and university people in Denmark during 1979/80. 
           
          The language implemented by RC Computer is a superset of the
          COMAL80 which again can be seen as an extension to BASIC. COMAL80
          however contains facilities which makes it more comparable to
          PASCAL than to BASIC. 
           
          There will be facilities in COMAL80 which are not described in
          this document. For instance there will be statements/functions
          for accessing the RS232-port on the Piccolo which makes it pos-
          sible to use devices connected by the user (such as plotters,
          digitizers, etc.) and to communicate with other Piccolo-systems
          in a transparent mode or by means of a protocol for transmission
          of binary data. 
           
          It should be mentioned that: Variable-names may consist of up to
          16 characters; that arithmetic operations are carried out to a
          significans of 13 decimal digits, and that numbers are in the
          range 10E-128 < n < 10E127. 
           
          The proposal published by the COMAL80 working group contains more
          details about the language. It may be ordered from RC Computer
          (RCSL No 42-i1516). 
           
          Erik Jeppesen 
          A/S REGNECENTRALEN af 1979, March 1981 
           
                    
          Second edition: RCSL No 42-i1780. 
          Some minor changes and extensions concerning the file system. 
           
          Erik Jeppesen 
          A/S REGNECENTRALEN af 1979, July 1981 
           \f

F_                                               ii 
           \f

                                                 iii 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
          1.  COMAL80 STATEMENTS ....................................   1 
           
          2.  COMAL80 FUNCTIONS .....................................   7 
           
          3.  COMAL80 FILE STATEMENTS ...............................   9 
           
          4.  SYSTEM COMMANDS .......................................  11 \f

                                                 iv 
           \f

         1_._ _ _ _ _ _ _ _ _C_O_M_A_L_8_0_ _S_T_A_T_E_M_E_N_T_S_ 1.
           
          F_o_r_m_a_t_/_D_e_s_c_r_i_p_t_i_o_n_                                    U_s_e_ 
           
M_m_m_          <var>                <var> 
                 := <expr>  ;          := <expr>   ... 
P_p_p_          <svar>               <svar> 
              
               Assigns the value of an expression to a          STATEMENT 
                        variable.                                        or COMMAND 
           
          <name>: 
               A label that can be referenced by a goto-        STATEMENT 
               statement. 
           
          CASE <expr> OF 
          WHEN <expr> ,<expr> ... 
            <statements-1> 
           
M_            . 
            . 
P_            . 
                 WHEN <expr> ,<expr> ... 
            <statements-n> 
           
          OTHERWISE 
            <statements> 
          ENDCASE 
           
               The expression following CASE is evaluated and   STATEMENT 
               compared with the expressions following WHEN. 
               If there is a match in the i'th WHEN statement,
               statements-i are executed. If no match is found
               the statements following OTHERWISE are executed
               if specified. If OTHERWISE is not specified and
               no match is found then an error occurs. 
           \f

                   CHAIN <filename> 
               Runs the SAVE'd program referred to by the STATEMENT
               filename when the statement is encountered in
               the user's program. 
                
M_m_m_                   <val>      <val> 
                DATA                        ... 
P_p_p_                   <slit>     <slit> 
                   
               Provides values to be read into variables STATEMENT
               appearing in READ statements. 
                
                <array>(m)                 <array>(m) 
          DIM   <array>(<row>,<col>)    ,  <array>(<row>,<col>)   ... 
                <svar> (m) OF <expr>     <svar>(m) OF <expr> 
           
               Defines the size of numeric arrays, stringSTATEMENT
               variables and string arrays. or COMMAND
          END 
               Terminates the execution of a program.           STATEMENT
                
                                <var>          <var> 
                                <svar>         <svar> 
          EXEC <name>  (  <array>    ,   <array>   ...) 
                                <sarray>       <sarray> 
                           <expr>         <expr> 
                
               Executes a procedure defined by PROC-ENDPROC.  STATEMENT
                
          FOR <control var>:= <expr1> TO <expr2> 
                                 STEP <expr3> DO <statement> 
                
               Executes a single statement a number of times.  STATEMENT
                \f

          FOR <control var>:= <expr1> TO <expr2> STEP <expr3> DO
            <statements> 
          NEXT <control var> 
                
                        FOR begins a FOR-NEXT loop and defines the STATEMENT
               number of times a block of statements is to be
               executed. NEXT is the last statement in the loop
               and changes the value of the control variable. 
                
                   <var>           <var> 
                   <svar>          <svar> 
          GLOBAL   <array>      ,  <array>         ... 
                   <sarray>        <sarray> 
                   <proc name>     <proc name> 
                      
               Makes variables in a closed procedure global.  STATEMENT
                
          GOTO <name> 
               Transfers control unconditionally to the state-STATEMENT
               ment following the label-statement specified by
               <name>. 
                
          IF <expr> THEN <statement> 
               Executes a single statement depending on whether STATEMENT
               an expression is true or false. 
                
          IF <expr> THEN 
            <statements> 
          ENDIF 
               Executes a block of statements depending on STATEMENT
               whether an expression is true or false. 
                
          IF <expr> THEN 
            <statements-1> 
          ELSE 
            <statements-2> 
          ENDIF 
               Executes statements-1 if an expression is true, STATEMENT
               otherwise statements-2. 
                \f

M_m_m_                            <var>         <var>          , 
          INPUT <slit>:             ,            ... 
P_p_p_                               <svar>        <svar>         ; 
                
                        Assigns values entered from the keyboard to STATEMENT
               numeric or string variables. 
                
                   MARGIN <expr> 
               Defines the number of characters to be outputSTATEMENT 
               before a new-line is automatically generated.       or COMMAND
                
M_m_m_                          ,                    , 
          PRINT  <expr>       <expr>   ... 
P_p_p_                          ;                    ; 
                
               Prints specified items on the selected output STATEMENT
               device.or COMMAND
                
          PRINT USING <format>: <expr>,<expr> ...  , 
               Outputs the items in the argument list using a STATEMENT
               specified format. 
                
                            REF<var>            REF<var> 
M_m_m_                            REF<svar>           REF<svar> 
          PROC <name>   (                      ,                    ...)  CLOSED 
P_p_p_                            REF <array>(,)      REF <array>(,) 
                                  REF <sarray>()        REF<sarray>() 
               <statements> 
                
          ENDPROC <name> 
               Defines a procedure or a function. When the STATEMENT
               procedure or function is called, control is
               transferred to the first statement following
               PROC. ENDPROC is the last statement in a
               procedure or function and returns control to the
               first statement following the EXEC statement
               (procedure call) or to the statement containing
               the function call. 
                \f

          RANDOMIZE 
               Causes the random generator to start at a random    STATEMENT
               point in the sequence of random numbers generated  
               by the RND function. 
                
M_m_m_                 <var>        <var> 
                READ            ,             ... 
P_p_p_                    <svar>       <svar> 
                
                        Reads in values from DATA statements and assigns STATEMENT
               the values to the variables listed in the
               statement. 
                
          REPEAT 
            <statements> 
          UNTIL <expr> 
               Executes a block of statements repetitively untilSTATEMENT
               an expression is true. The block of statements is
               always executed at least once. 
                
          RESTORE <name> 
               Resets the data element pointer to the beginning STATEMENT
               of the data list or to a labelled DATA
               statement. 
                
          SELECT OUTPUT <device> 
               Selects the device or file to which output from  STATEMENT
               a program (PRINT or PRINT USING statement) shallor COMMAND
               be directed.
                
          STOP 
               Terminates execution of the current program.  STATEMENT
                
          WHILE <expr> DO <statement> 
               Executes a single statement repetitively whileSTATEMENT
               an expression is true. If the expression is
               false the first time the WHILE statement is
               executed then the statement following DO is not
               executed. 
                \f

          WHILE <expr> DO 
            <statements> 
          ENDWHILE 
               Executes a block of statements repetitivelySTATEMENT
               while an expression is true. If the expression
               is false the first time WHILE is encountered,
               the block of statements is not executed even
               once. 
                
                   ZONE <expr> 
               Sets the zone spacing between elements output by STATEMENT
               PRINT statements. or COMMAND
                \f

F_       2_._ _ _ _ _ _ _ _ _C_O_M_A_L_8_0_ _F_U_N_C_T_I_O_N_S_ 2.
                
          ABS(<expr>) 
               Returns the absolute (positive) value of the argument. 
                
          AT(<expr>,<expr>) 
               Used in PRINT statements to position the cursor to the XY-
               position evaluated from the arguments. 
                
          ATN(<expr>) 
               Calculates the angle, in radians, whose tangent is the
               argument. 
                
          CHR0S5 (<expr>) 
               Returns the character corresponding to the number found as
               the argument modulo 256. 
                
          COS(<expr>) 
               Calculates the cosine of an angle which is expressed in
               radians. 
                
          EOD 
               A Boolean function that assumes the value true when the last
               item in the DATA element list has been read, otherwise
               false. 
                
          EOF(<expr>) 
               A Boolean function that assumes the value true when the last
               record in a file has been read, otherwise false. 
                
          EXP(<expr>) 
               Calculates the value of e (2.71828) to the power of the
               argument. 
                
          INT(<expr>) 
               Returns the value of the nearest integer not greater than
               the argument. 
                \f

M_m_m_                <svar> 
               LEN(           ) 
P_p_p_                   <slit> 
                  Returns the current number of characters in a string. 
                
                   LOG(<expr>) 
               Calculates the natural logarithm of the argument. 
                
M_m_m_                <svar> 
          ORD(          ) 
P_p_p_                <slit> 
               Returns the ordinal number of the first character of a
               string. 
                
          RND 
               Produces a pseudo random number in the range 0 to 1. 
                
          SGN(<expr>) 
               Returns the algebraic sign of the argument. 
                
          SIN(<expr>) 
               Calculates the sine of an angle which is expressed in
               radians. 
                
          SQR(<expr>) 
               Computes the square root of the argument. 
                
          TAB(<expr>) 
               Used in PRINT statements to tabulate the printing position
               to the column number evaluated from the argument. 
                
          TAN(<expr>) 
               Calculates the tangent of an angle which is expressed in
               radians. 
                
                \f

F_       3_._ _ _ _ _ _ _ _ _C_O_M_A_L_8_0_ _F_I_L_E_ _S_T_A_T_E_M_E_N_T_S_ 3.
                
          CLOSE <expr> 
               Dissociates a filename and a file number (seeSTATEMENT
               OPEN) so that the file can no longer beor COMMAND
               referenced. The CLOSE form of the statement
               closes all open files. 
                
          COPY <filename1>,<filename2> 
               Copies the contents of <filename1> toSTATEMENT
               <filename2>. or COMMAND
           
          CREATE <filename>,<size>,<recl> 
               Creates a file in a directory.                      STATEMENT
                                                                   or COMMAND
                
          DELETE <filename> 
               Deletes a file in a directory.                      STATEMENT
                                                                   or COMMAND
                
          DIR <unitno> 
               Lists the names of all files in the directory toSTATEMENT
               the selected output device. or COMMAND
                
          DISMOUNT <unitno> 
               Dissociates the diskette in the specified drive STATEMENT
               from the file system by closing the directory,or COMMAND
               so that the diskette may be removed. 
                
M_m_m_                              <var>       <var> 
          INPUT FILE <expr>:           ,            ... 
P_p_p_                                 <svar>      <svar> 
                  Reads data in ASCII form from a sequentialSTATEMENT
               access file to the variables in the argumentor COMMAND
               list. 
                
          MOUNT <unitno> 
               Associates the file system with the diskette in STATEMENT
               the specified drive by opening the directory. or COMMAND
                \f

                                     READ 
M_m_m_                                     WRITE 
          OPEN <expr>,<filename>, 
P_p_p_                                     APPEND 
                                     RANDOM <recl> 
               Associates a filename with a user file number soSTATEMENT
               that the file can be referenced in other fileor COMMAND
               statements. OPEN also specifies how the file is
               to be used. 
                
          PREFIX <sexpr> 
               Specifies a string by which the filename in aSTATEMENT
               file-statement is prefixed, e.g. unitnumber. or COMMAND
                
M_m_m_                              <expr>    ,   <expr>         , 
          PRINT FILE <expr>:                          ... 
P_p_p_                              <sexpr>   ;   <sexpr>        ; 
               Outputs data in ASCII form to a sequentialSTATEMENT
               access file.or COMMAND
                
M_m_m_                                                <expr>       <expr> 
          PRINT FILE <expr> USING <format>:           ,             ... , 
P_p_p_                                                <sexpr>      <sexpr> 
                  Outputs data in ASCII form to a sequential file, STATEMENT
               using a specified format.                        or COMMAND
                
M_m_m_                                       <var>        <var> 
          READ FILE <expr>,<recno>:           ,            ...
P_p_p_                                          <svar>       <svar> 
                  Reads data in binary format from a sequentialSTATEMENT
               access file or a record of a random access     or COMMAND
               file to the variables in the argument list. 
                
          RENAME <filename1>,<filename2> 
               Renames a file in a directory.                 STATEMENT
                                       or COMMAND
                
                                                 <expr>      <expr> 
          WRITE FILE <expr>,<recno>:           ,           ...
                                                 <sexpr>     <sexpr> 
               Outputs data in binary format to a sequentialSTATEMENT
               access file or record of a random access file.   or COMMAND
                
                \f

F_       4_._ _ _ _ _ _ _ _ _S_Y_S_T_E_M_ _C_O_M_M_A_N_D_S_  4.
                
M_m_m_                   <line1>, 
          AUTO 
P_p_p_                   <line1> ,<line2> 
                         
               Provides automatic line numbering for program entering. 
                         
             BYE 
               Leaves COMAL-80. 
                
          CON   
                
               Continues execution from where the program was stopped. 
                
M_m_m_                      <line1>, 
          DEL 
P_p_p_                      <line1>,<line2' 
                
               Deletes one or more statements in a program. 
                
          ENTER <filename> 
                
               Merges the statement lines from the file or device specified
               by a filename into the current program area. 
                
M_m_m_                   <line1>, 
          LIST 
P_p_p_                   <line1>,<line2> 
                
               Outputs part or all of the currently loaded program in ASCII
               format to the selected output device. 
                
          LOAD <filename> 
                
               Loads a previously SAVE'd program in binary format from the
               specified file or device into the program area. 
                \f

                   NEW       
               Clears the program and data areas and closes any open files.
                      
                
M_m_m_                     <line1>, 
                   RENUMBER 
P_p_p_                     <line1>,<line2> 
                         
                  Renumbers the statements in the current program. 
                
          RUN 
                
               Clears the data area and executes the current program from
               the lowest numbered statement. 
                
                   SAVE <filename> 
                
                        Writes the statements in the program area in binary format
               to the specified file or device. 
                
          SIZE 
                
               Returns the size of the program and data areas and the size
                     of free memory space. 
                \f

«eof»