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

⟦d276c4fe2⟧ TextFile

    Length: 116736 (0x1c800)
    Types: TextFile
    Names: »D16«

Derivation

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

TextFile

                                                 i 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
          1.  GENEREL ...............................................   1 
           
          2.  LOGIC SPECIFICATION ...................................   2 
              2.1  Signals ..........................................   2 
              2.2  Selection ........................................   2 
              2.3  Deselection ......................................   4 
           
          3.  CABLE CONNECTIONS .....................................   5 
           
          4.  PHYSICAL REQUIREMENTS .................................   6 
           
           \f

                                                 ii 
           \f

F_       1_._ _ _ _ _ _ _ _ _G_E_N_E_R_E_L_ 1.
           
          The LIS701 Lineselctor is a device for connection of up to eight
          RC700 microcomputers to two common resources, so as a printer, a
          master computer with associated flexible discs or a modem. 
           
          The interface used is CCITT V24/ISO2110; The inputs 1 to 8 are of
          the type DCE while the outputs A and B are of the type DTE.  
           
          With each output A and B is associated a scanner scanning the in-
          puts 1 to 8 for a possible request for connection, see figure 1. 
           
          A microcomputer requests a connection to one of the outputs spe-
          cified by the start up sequence. The request is acknowledged by
          the corresponding scanner when the output and scanner are not
          engaged in servicing another input. 
           
          LED displays on the front at LIS701 indicate the current confi-
          guration. Each of the outputs A and B has a seven segment digit
          indicating to which input number it is currently connected; when
          it is idle, the display is dark.
           











Figure 1.\f

F_       2_._ _ _ _ _ _ _ _ _L_O_G_I_C_ _S_P_E_C_I_F_I_C_A_T_I_O_N_                                              2.
           
2_._1_ _ _ _ _ _ _ _S_i_g_n_a_l_s_ 2.1
           
          The LIS701 supports the following CCITT V24 signals: 
           
             V24 circuit  name                pin  abbrev.  direction * 
             101          protective ground     1  GND 
             102          signal ground         7 
             103          transmitted data      2  TXD      out 
             104          received data         3  RXD      in 
             105          request to send       4  RTS      out 
             106          clear to send         5  CTS      in 
             107          data set ready        6  DSR      in 
             108          data terminal ready  20  DTR      out 
             109          carrier detected      8  CD       in 
           
          * relative to outputport. 
           
          The input signals on ports 1 to 8 are found as output signals on
          ports A and B, and vice verca. All the signals except DTR are re-
          layed directly through between the interconnected ports (via re-
          ceiver and transmitter), but the four signals RTS, CTS, DTR and
          CD are used for establishing connection through the LIS. 
           
                  
    2_._2_ _ _ _ _ _ _ _S_e_l_e_c_t_i_o_n_ 2.2
           
          A microcomputer connected to an inputport 1 to 8 requests for
          connection to one of the ports A or B by rising DTR. The selec-
          tion of A or B is accomplished by means of RTS (figure 2). The
          state of RTS must be stable at least 100 nanoseconds before
          the rising of DTR. The selection sequence is terminated by the
          reception of DSR plus  one (or both) of the signals CD and CTS.
          The state of RTS must not be changed before this time. In the
          case the wanted port is busy, no responce will arrive, and DTR
          may be dropped anytime. 
           \f

                   In the case, the wanted port is ready, the LIS701 will add at
          most 10 msec to the duration of the selection phase. 
           
          Selection at Port A: 
           
          DTR 
           
          DSR 
           
          CD 
           
          RTS 
           
          CTS 
           
          Selection of Port B: 
           
          DTR 
           
          DSR 
           
          CD 
           
          RTS 
           
          CTS 
           
          Figure 2. 
           
          The connection will be maintained by the LIS701 as long as DTR is
          high. 
           
          The DSR indicates that selection is performed. In the cases where
          the microcomputer is not sensitive to DSR, the alternative cri-
          terion may be chosen: 
           \f

                   selection of Port A is done, when CD goes high. 
          selection of Port B is done, when CTS goes high. 
           
          The signals out of Port A and B are in the off state (TXD circuit
          103 is 1), when no connection is established. 
           
          When the A-scanner detects a request for connection, the A port
          will set DTR (circuit 108) on, and establish connection between
          all other circuits, so RTS will (because of the terminal connec-
          ted to the input port) not go on until the common resource  on
          port A responds with CD on. 
           
          If a second LIS701 is cascaded to port A, this will have its
          A-scanner activated as well. 
           
          When the B-scanner detects a request for connection, the B port
          will open connection between all circuits but DTR and after a
          delay of app. 10 micro second turn DTR on. This delay assures,
          that RTS on port B is on before DTR goes on, ensuring that a
          cascaded second LIS701 on port B also selects its port B. 
           
          Cascading is possible to any level, but because the same port
          selection (A or B) ripples through all levels cascading only
          increases the number of inputs, not the number of outputs. 
           
                 
    2_._3_ _ _ _ _ _ _ _D_e_s_e_l_e_c_t_i_o_n_ 2.3
           
          Deselection is done when DTR is dropped. The deselected scanner
          sets all outgoing control signals off and the outgoing data-
          signal to 1, and resumes scanning. 
           
          Reselection must not be requested (DTR must not be raised) on the
          same input, until the deselection is complete. 
           
          The deselection is compleete when DSR, CD and CTS are all off, or
          max. 1 millisecond after the fall of DTR. 
           \f

F_       3_._ _ _ _ _ _ _ _ _C_A_B_L_E_ _C_O_N_N_E_C_T_I_O_N_S_ 3.
           
          The LIS701 is regarded as being put between a RC700 and a re-
          source, which is to be shared among several RC700>s. 
           
          The cable which before connected RC700 with the resource, is
          disconnected from RC700 and connected to one of the outputs A or
          B on LIS701, and RC701 is then connected to one of the inputs 1
          to 8 of LIS701 via a MF003 cable (Long, Median or Short). 
           
                                  MFXXX 
                RC700                                  Resource 
           
           
           
                                               MFXXX 
                           MF003 
           
                RC700                                  Resource 
           
           
                                     LIS701 
                RC700 
           
           
          Figure 3. 
           
          The numbering of the line in plugs is arranged in a way, that
          allows straight forward insertion of cables in ascending order. 
           
           \f

F_       4_._ _ _ _ _ _ _ _ _P_H_Y_S_I_C_A_L_ _R_E_Q_U_I_R_E_M_E_N_T_S_ 4.
           
          Power requirement:               220V +_ 10% 50 Hz 15 W 
           
          Ambient temperature:             16-32C (60-90F). 
           
          Relative humidity:               20-80% (no condensation). 
           
          Physical size:                   470 mm x 300 mm x 70 mm 
           \f


















    INTRODUCTION TO
                                  CF-SYSTEM 
 






















                                         First Edition
A/S REGNECENTRALEN   March 1978
     Information Department                                      RCSL 42-i 0766\f

        Author:             David Puttick 
Editor:            Jørgen Winther 
 
 
 
Key words:         Database Management Information System, Basic Concepts,
                   System Design, File Organisation, RC 8000, Algol, For-
                    tran, Standard Procedure, Disc, Indexed Sequential File,
                   List File, Chains, Introduction. 
 
 
Abstract:          This introduction describes the CF-System as a tool 
                    for database design and application. Basic database 
                   principles are explained followed by a more detailed 
                   description of the CF-System itself. 
 
 
Supporting documents: 
                   Indexed Sequential Files in RC 4000 Algol 
                            Connected Files System - User's Manual. 
 
 
 
 
 
 
 
 
 
 
RESERVED 
 
 
 
 
 
         
 
 
 
 
 
Copyright   A/S REGNECENTRALEN, 1978  
Printed by A/S REGNECENTRALEN, Copenhagen  \f

                  T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ 
           
           
          1  INTRODUCTION                                            Page 5
              
          2  BASIC CONCEPTS                                               6 
             2.1 Simple Structure                                         8 
             2.2 Connection Structure                                    10 
             2.3 Network Structure                                       11 
            
          3  FILE STRUCTURE                                              15 
             3.1 Master Files and List Files                            15 
             3.2 Record Structure                                        16 
                 3.2.1 Master File Records                               16 
                 3.2.2 List File Records                                 17 
                 3.2.3 Headed and Clustered Chains                       18 
             3.3 CF SYSTEM Applications19 
                 3.3.1 Simple Structure                                 19 
                 3.3.2 Connection Structure                              21 
                 3.3.3 Network Structure                                 24 
           
          4  CF-PROCEDURES                                              28 
             4.1 Insertion of records                                    28 
                 4.1.1 Insertion of records in a master file             28 
                 4.1.2 Insertion of records in a list file               28 
             4.2 Connection of records                                   29 
             4.3 Retrieval of records                                    30 
             4.4 Deletion of records                                     31 \f

F_      1         I_N_T_R_O_D_U_C_T_I_O_N_ 
 
 
          What is the CF System? 
           
          The CF System (Connected File System) is RC's standard database
          system. It consists of a number of ALGOL/FORTRAN standard proce-
          dures which can create and process records and the relationships
          between records in files on random access backing storage. The
          CF System procedures can also handle communication between user
          programs and files. 
           
          The location of the CF system in an information system is shown
          in Figure 1. 
           
           
           
          USER                CF 
                    PROGRAMS            SYSTEM

    DATABASE 
           
           
          Figure 1. Location of CF System in an Information System. 
           
                What is a database? 
           
          Finding a suitable definition of a database is a difficult
          thing; however, two definitions, - one very general and the
          other quite specific - are given below: 
           
          'A database is a collection of stored operational data used by
          the application systems of some particular enterprise.' 
           
          'A database may be defined as a collection of interrelated data
          stored together with as little redundancy as possible to serve
          one or more applications in an optimal fashion; data is stored
          so that it is independent of programs which use the data; a com-
          mon and controlled approach is used in adding new data and in
          modifying and retrieving existing data within the database.' \f

F_      2         B_A_S_I_C_ _C_O_N_C_E_P_T_S_ 
 
 
          Before embarking on a description of the CF-System itself, we
          will begin with a simple introduction to database concepts,
          which hopefully will contribute to the understanding of later
          chapters. 
           
          Consider a company with a number of departments. The ACCOUNTS
          department employs SMITH, JONES and BROWN; SALES employs PENNY,
          DORE, FORMAN and TOMLINSON; finally PRODUCTION employs THOMPSON,
          HAYES, WHITE, COLES and WILLIAMS. 
           
          If a simple method of looking up the names of persons employed
          in a certain department was required, then we would probably
          construct a table as shown in Figure 2. 
           
          How do we use this table? If the names of employees in the AC-
          COUNTS department were required, then we would search the column
                  headings until we found our entry point or key, (namely ACCOUNTS),
          and then read the list in that column. If, however, we wish to
          know which department WHITE, for example, is employed in then we
          have no entry point. 
           
        T_         ________________________________________________________________
                    ACCOUNTS            SALES               PRODUCTION 
           _ _ _ _ _ _ _ _ _ _e_m_p_l_o_y_s_ _ _ _ _ _ _ _ _ _ _ _ _ _e_m_p_l_o_y_s_ _ _ _ _ _ _ _ _ _ _ _ _ _e_m_p_l_o_y_s_ _______

                            SMITH               PENNY               THOMPSON 
                    JONES               DORE                HAYES 
                    BROWN               FORMAN              WHITE 
                                       TOMLINSON           COLES 
                                                            WILLIAMS 
           ________________________________________________________________
           
        &_        Figure 2. Table showing employees in each department. 
           
          We must therefore search each column in turn until we find the
          name WHITE and then read the column heading. In other words this
          table is designed to be used with DEPARTMENT as entry point.
          This could be illustrated as shown in Figure 3. 
           \f

        T_                   
                    DEPARTMENT 
                record type name 
           
                          EMPLOYS 
                   
                                        chain group name 
                    EMPLOYEE 
           
           
      &_          Figure 3. Data-structure diagram. 
                 
           
          Here we see that if we start at DEPARTMENT and travel in the
          direction of the arrow we obtain information on the EMPLOYEES
          employed in that department. This diagram is, in fact, a data-
          structure diagram and illustrates the structure of data in the
          database - this is true whether the database exists on an EDP
          medium or on paper as shown in Figure 2. 
           
          If, however, the database is implemented on a computer then
          Figure 3 could be redrawn as shown in Figure 4. 
           
T_        Department 
          records 
                    ACCOUNTS            SALES               PRODUCTION 
           
                     SMITH             PENNY                THOMPSON 
           
                    JONES             DORE                 HAYES 
           
                   BROWN            FORMAN                WHITE 
           
                                 TOMLINSON               COLES 
           
                                                       WILLIAMS 
           
                                                                Employee 
                                                                Records 
           
&_                  Figure 4. Example of a database 
           
          This shows that EMPLOYEE records are linked into chains which
          are accessed by DEPARTMENT records. The arrows represent links
                  or pointers leading to the next record in the chain. The arrow\f

          in the data structure diagram represents a chain group, of type
          EMPLOYS. 
                  We can see, therefore, that Figure 3 also describes the data
          structure of Figure 4. 
           
          If we compare Figure 3 with Figure 4 we can see that the data
          structure diagram represents a typical chain accessed by a DE-
          PARTMENT record. Note that the data structure diagram tells us
          nothing about the number of chains in the database, or the num-
                  ber of records in any particular chain.  
           
           
        2.1       S_i_m_p_l_e_ _S_t_r_u_c_t_u_r_e_ 
           
          The previous example has a very simple data structure, but sup-
          pose now that each department consisted of a number of sections
          as shown in Figure 5. 
           
         _ _ _ _ _ _ _ _ _ _ ________________________________________________________________
T_       ACCOUNTS           SALES               PRODUCTION 
 _ _ _ _ _ _c_o_n_s_i_s_t_s_ _o_f_ _ _ _ _ _ _ _c_o_n_s_i_s_t_s_ _o_f_ _ _____ _ _ _ _ _ _ _c_o_n_s_i_s_t_s_ _o_f_ _______________

                  FINANCIAL
  CUSTOMER   SUPPLIER    SALES       COMPONENT  SUBASSEMBLIES  ASSEMBLY
       _ _e_m_p_l_o_y_s_ _ _ _ _e_m_p_l_o_y_s_ _ _ _ _ _e_m_p_l_o_y_s_ _ _ _ _ _e_m_p_l_o_y_s_ _ _ _ _e_m_p_l_o_y_s________ _e_m_p_l_o_y_s_ _ _ _ _

   SMITH      JONES      PENNY       THOMPSON     WHITE        WILLIAMS 
   BROWN                 DORE        HAYES        COLES 
                         FORMAN 
                         TOMLINSON 
 
 _________________________________________________________________________
&_              Figure 5. Table showing employees in each section of each
                    department.
         
           
          The ACCOUNTS department consists of CUSTOMER ACCOUNTS and SUP-
          PLIER ACCOUNTS sections; SALES is not split into sections; PRO-
          DUCTION consists of COMPONENT, SUBASSEMBLIES and FINAL ASSEMBLY
                sections. 
           
          Figure 5 differs from Figure 2 only in that an extra 'layer' of
          data is inserted - namely SECTION data. We must still enter the
          table through DEPARTMENT name after which we are presented with
          another choice - which section? \f

          The data-structure diagram for this hierarchicl type of database
          is shown in Figure 6. 
         
 
T_                  DEPARTMENT 
 
  consists 
                              of 
 
                    SECTION 
 
                           employs 
 
                    EMPLOYEE 
         
 
&_        Figure 6. Example of a hierarchical data-structure. 
           
          Here there are two chain group types: consists of and employs. 
           
          The corresponding database is shown in Figure 7. 
                   
           
T_                  ACCOUNTS            SALES               PRODUCTION 
           

                CUSTOMER            SALES            COMPONENT 

                           SMITH                              THOMPSON 

                             BROWN    PENNY                         HAYES 

                        DORE

          SUPPLIER                      FORMAN      SUBASSEMBLIES

          JONES                TOMLINSON                WHITE 

                                                 COLES

          'consists of' chainsFINAL ASSEMBLY 
          'employs' chains 
                                                                         WILLIAMS 
                   
&_        Figure 7. Database of Figure 6. \f

T_      2.2       C_o_n_n_e_c_t_i_o_n_ _S_t_r_u_c_t_u_r_e_ 
           
          Another data-structure can be illustrated by the following exam-
          ple. In addition to the break-down of the PRODUCTION department
&_          into sections we wish to be able to find the names of employees
          who can perform a particular task. Figure 8 shows how this could
          be achieved by means of a table.  
 
 
T_          TASK 
          TASK A        TASK B        TASK C 
          can be per-   can be per-   can be per-
                                  formed by     formed by     formed by 
          SECTION

          COMPONENT employsTHOMPSON      THOMPSON
                                   HAYES                        HAYES 
           
          SUB-ASSEMBLIES employs WHITEWHITE 
                                                                COLES 
           
                  FINAL ASSEMBLY employs      WILLIAMS 
           

 
          Figure 8. Table showing employees in PRODUCTION department and
&_          the TASKS which they can perform. 
           
          The table of Figure 8 shows that THOMPSON in the COMPONENT sec-
          tion can perform TASKS A and B whereas HAYES can perform TASKS A
          and C; and so on for the SUB-ASSEMBLIES and FINAL ASSEMBLY sec-
          tions. 
           
          The data structure diagram is shown in Figure 9. 
    T_         
                              SECTION             TASK 
           
                           employscan be 
                                                      performed by 
                                       EMPLOYEE 
           
        &_        Figure 9. Data Structure Diagram. 
           
          The corresponding database is illustrated in Figure 10. 
           \f

        T_        COMPONENT           SUBASSEMBLIES       FINAL ASSEMBLY 
           
           
          THOMPSON                WHITE              WILLIAMS 
           
           HAYES                  COLES 
           
           
          TASK A                  TASK B              TASK C 
           
           
      &_        Figure 10. Database of Figure 9. 
           
          Because of the chaining technique used in the database (see
          Figure 10) it is not necessary to repeat names of employees as
          it is in Figure 8. 
           
          In this database there are two 'ways in' i.e. SECTION and TASK.
          One of these will be chosen according to the information re-
          quired.          
                   
           
        2.3       N_e_t_w_o_r_k_ _S_t_r_u_c_t_u_r_e_
           
          The last example of data structure, which is the most difficult
          to explain and understand, can be illustrated by a parts list
          example. 
           
          Consider a product, A, made up of parts B and C which in turn
          consists of parts as shown in Figure 11. 
           
T_                                        A 
           
                              B                   C 
           
                         C         D         E         F 
           
          E          F 
           
&_          Figure 11. Parts list for product A. 
           
          There are two types of information we could be interested in -
          let us take, for example, part B. We could ask, 'what is part B
          a part of?' or 'what does part B consist of?'. We could describe
          the parts list in a table as shown in Figure 12. \f

                  The table is constructed as follows: 
                  We start at the top row 'PART' is a part of.  
           
          First, A is a part of - A is a part of itself only, because it
          is the finished product so we write nothing in column A. 
           
           
T_          PART                A     B     C     D     E     F 
                                       is a part of 
           
                  A consists of             AB    AC 
           
                  B consists of                   BC    BD 
           
          C consists of                               CE    CF 
           
          D consists of 
           
          E consists of 
           
                  F consists of 
           
&_          Figure 12. Parts list/consists of table for Figure 11. 
           
          B is a part of - if we look at Figure 11 we can see that B is a
          part of A, so we write A in column B, row A. 
           
          C is a part of - again referring to Figure 11 we can see that C
          is a part of A. Write A in column C, row A. 
          C is also a part of B. Write B in column C, row B. 
           
          D is a part of B. Write B in column D, row B. Note that here we
          could also say that D is a part of A. This is, however, redun-
          dant information - the relationship, D is a part of A, is impli-
          cit in the table: i.e. D is a part of B and B is a part of A. 
           
          E is a part of C. Write C in column E, row C. 
           
          F is a part of C. Write C in column F, row C. 
           
          The table is completed by performing the same operation for A
          consists of, B consists of, and so on. 
           
          Remember that, in order to avoid the redundancy mentioned above,
          only a single level break-down or build-up is valid. \f

                  We can see that the body of the completed table in Figure 12
          expresses relationships. For example, BC tells us that B con-
          sists of C, or conversely, that C is a part of B. 
           
          Note that one of two possible conventions must be chosen for
          writing these relationships i.e. either superordinate/subordi-
          nate (BC), or subordinate/superordinate (CB). We have chosenthe
          former. 
           
          It is a simple step from the table of Figure 12 to the data-
          structure diagram of Figure 13. The corresponding database  
T_           
           
                    PART                PART 
           
             consists               is a  
               of                           part of 
           
                          RELATIONSHIP 
           
&_              Figure 13. Data-structure diagram of Figure 12. 
           
          is shown in Figure 14. We see immediately that PART records A,
          B, C etc. exist both as access to chains of type 'consists of'
          and as access to chains of type 'is a part of'. In other words,
          PART records are identical whether a 'consists of' chain or 'is
          a part of' chain is required, so why not combine these records 
           
T_                              A  B  C  D  E  F  is a part of 
           
          A     AB    AC  
                   
          B                          BC    BD 
           
          C CE    CF 
           
          D 
           
          E 
           
          F 
           
          consists of
 
&_          Figure 14. Database of Figure 12. \f

                  and avoid redundancy? Each PART record will then have two chains
          attached to it as shown in Figures 15 and 16. 
                   
T_         
                              PART 
           
          consists                          is a 
             of                              part of 
           
                          RELATIONSHIP 
           
        &_        Figure 15. Modified data-structure diagram. 
           
        T_        Convention: 
           
          Consists of            is a part of 
           
           
           
                            A    B    C    D    E    F   
           
                   
                    AB 
                   
           AC   BC 
           
          BD 
           
                  CE 
           
          CF 
           
           
        &_        Figure 16. Modified database. 
           
          This completes the description of basic database concepts. Basi-
          cally all databases have a structure built up of the simple data
          structures described in the foregoing. Remember that the data
          structure says nothing about the size of the database. A very
          large database can have a simple data structure. 
           
          In the description of the CF-System which follows, other symbols
          are used to describe the data structure, but the principles
          learned in this chapter still apply. \f

F_      3         F_i_l_e_ _S_t_r_u_c_t_u_r_e_ 
 
 
        3.1       M_a_s_t_e_r_ _F_i_l_e_s_ _a_n_d_ _L_i_s_t_ _F_i_l_e_s_ 
 
          The CF-System consists of a number of RC 8000 ALGOL/FORTRAN
          standard procedures which can create and process records and the
          relationships between these records in files on random access
          backing storage. The CF System can also handle communication
          between user programs and files. 
           
          CF-SYSTEM  stores the data associated with a user system in mas-
          ter files which contain records for entities, such as: items,
          customers, machines, orders, etc. - in other words physical and/
          or abstract elements. The various elements are linked together
          by means of relationships. These relations are stored in list
          files, where the records contain information on the interconnec-
          tion elements of in the master files. 
           
          A master file is organized indexed sequentially. 
           
          Record length is fixed or variable. 
           
          A reference to a record in a file is made through the record's
          key. 
           
          A key is a unique identification of an element. In the following
          description of the CF System the symbols shown in Figure 17 are
          used to denote a master file and a record in the master file.
          Note that a master file corresponds to a group of one heading
          type in our table analogy of the previous chapter. If we
          consider for example, the table of Figure 8, then TASK would be
          one master file, and SECTION the other. Similarly, TASK A would
          be a record in the TASK master file and SUB-ASSEMBLIES a record
          in the SECTION master file. 
                               
        T_                            Master Master 
                               file          file 
                                     name 
                 
           
                                             Master 
          file 
          record 
        &_        Figure 17. \f

          The length of a list file record can be fixed or variable. Re-
          ference to a record in a list file can only be made via other
          records. The symbols shown in Figure 18 will be used to denote a
          list file and a list file record. Again, returning to the table
                  analogy in Figure 8, all the names in the body of the table
          would constitute a list file of name EMPLOYEE. Similarly,
          WILLIAMS would be a record in the EMPLOYEE list file. 
           
           
        T_                      List         List 
                              filefile 
          name
           
                   
           
                                               List file 
                                                record 
        &_        Figure 18. 
                   
          The method shown in Figure 19 is used to illustrate the connec-
          tion of records in a list file into chains. 
           
           
        T_        Chain 
           
          mother
                    record              daughter 
                                        records 
           
           
                    - this symbol indicates end of chain. 
           
        &_        Figure 19. Connection of records into a chain. 
           
           
        3.2       R_e_c_o_r_d_ _S_t_r_u_c_t_u_r_e_ 
           
        3.2.1     M_a_s_t_e_r_ _F_i_l_e_ _R_e_c_o_r_d_s_ 
          Master file records consist of a user part and a chain part (see
          Figure 20). The user part contains user's data (such as keys)
          and a length indication of the user part. The chain part con-
          tains as many mother chain fields as there are chain groups con-
          nected to the master file. A mother chain field contains the re-
          cord num ber of the first record in the associated chain of re-
          cords in the corresponding list file. Several list files can be
                connected. 
           \f

        T_                   User Part           Chain Part 
                        Length   Keys   Data    Mother Chain Field 
           
                                         
                                        first 
                                        record 
                                        number 
           
          Figure 20. Structure of a master file record. 
                
        &_ 
         
        3.2.2     L_i_s_t_ _F_i_l_e_ _R_e_c_o_r_d_s_  
          List file records also consist of a user part and a chain part
          (see Figure 21). The user part contains user's data and, if
          variable record length is utilized, a length indication and
          record number. 
           
        T_         
               User Part                    Chain Part 
           
          Length and      Data     Mother chain       Daughter chain
          record number               fields               fields 

                     First      NextMother
                                        record     recordreference
                     number     number
                   
        &_        Figure 21. Structure of List File Record 
                 
                 
          The chain part contains a reference to the next record in the
          chain. If this record is the first record in the chain (i.e. a
          chain in another list file) then the reference will be located
          in a mother chain field; if not then it will be located in a
          daughter chain field. 
           
          A mother chain field contains the number of the first record in
          the record chain located in another list file. A daughter chain
          field contains the record number of the next list file record in
          the current chain (possibly an indication of end of chain) i.e.
          a daughter chain field contains a reference to the next record
          in the chain in the same list file. The daughter chain field can
          also contain a reference back to the mother record for the cur-
          rent chain - this is called a mother reference. (A list file re-
          cord can contain several mother chain fields and several daugh-\f

          ter chain fields.) If the mother record is situated in a master
          file, then the mother reference is the key for that record in
          the master file to which the list file record is chained. If the
          mother record is situated in a list file then the mother referen-
          ce is the record number of that mother record.  
T_       
 
3.2       H_e_a_d_e_d_ _a_n_d_ _C_l_u_s_t_e_r_e_d_ _C_h_a_i_n_s_
           
                  If the daughter chain fields in a list file contain a reference
          to the mother record for the chain, then the chain group is said
&_        to be headed. This characteristic is illustrated with a double
          line over the connection line between the two files in the file
                  structure (see Figure 22). 
           
           
           
T_        Symbol denoting 
                                                    a headed chain group 

                            Master              List file 
                     file           containing headed 
                                                 chains 
           
&_        Figure 22. Headed Chains. 
           
          A chain group is said to be clustered if the records in a chain
          are placed physically sequential. This is indicated by a double
                  line in the chain direction (see Figure 23). 
           
           
T_        Symbol denoting 
                                                 a clustered chain group
           
                    List                List 
                            file                file 
           
&_        Figure 23. Clustered Chain Group. 
           
          The seek time from record to record is less in a clustered chain
          than in a non-clustered chain. Therefore, it is usual to cluster
          chains which are most often used. 
           
          It should be emphasised, however, that only one chain group per
          list file can be clustered. \f

        3.3       C_F_ _S_Y_S_T_E_M_ _A_p_p_l_i_c_a_t_i_o_n_s_ 
           
        3.3.1     S_i_m_p_l_e_ _S_t_r_u_c_t_u_r_e_ 
          A list file can be used to illustrate events or supplementary
          information on a given element. Production orders associated
          with a specific item, where the production orders contain quan-
          tity and time schedule information, can, for example, be illu-
          strated in this way. 
           
          This use of CF-SYSTEM is called a simple structure and is used
          to illustrate variable properties of an element. The chain part
          contains only one reference to the next record or end of chain
          indication (see Figures 24 to 26). 
                   
                  
           
T        Items               Production 
          master file         orders list 
                                      file 
                   
           
&_        Figure 24. File Structure/Data Structure Diagram 
           
           
           
      T_        Item    Production    Production    Production 
                    order         order       order 
           
                   
&_        Figure 25. Chain Structure 
           
           
           
                   
        T_                  User Part     Chain Part 
           
                            Data          Daughter Chain Field 
           
           
           
           
                                  Next record no. 
                                  in chain 
                   
&_        Figure 26. List File Record Structure \f

                  A special case of a simple structure occurs when two list files
          are linked/chained together. 
           
          For example, if one considers the operations necessary to pro-
          duce a specific item, then the tools required to perform these
          operations could be collected in a list file connected to the
          operations file (see Figure 25). Figure 27 shows items located
          in a master file and the operations and tools in a list file
          each. The records of the operations list file have a mother
          chain field and a daughter chain field (see Figure 28 and 29). 
           
          Chain a contains operations per produced item and chain b
          contains tools per operation. 
           
           
T_Items 
            master      a       operations    b     tools 
            file                list file           list file 
           
           
&_Figure 27. File Structure/Data Structure Diagram
T_       
Mother   DaughterOperations list file 
          chain    chain 
          field    field        Operation records
Item record
   a1               a2              a3         chain a 
 

chain b3 
 
 
                                                           chain b2 
 
 
                                                           chain b1 
Item master  
file 
 
                              Tool list file               chains b 
Tools records
 
&_                Figure 28. Chain Structure 

                 \f

T_          User Part           Chain Part 
 
            Data           MotherDaughter 
                           Chain Field  Chain Field 
 
                            First record  Next record  
                            in chain b    in chain a 
 
&_                Figure 29. Record Structure of Operations List File 
       
 
 
 
T_          User Part           Chain Part 
 
            Data              Daughter Chain 
                                 Field 
 
 
                              Next record in 
chain b 
 
&_                Figure 30. Record Structure of Tools List File 
         
 
 
           
3.3.2     C_o_n_n_e_c_t_i_o_n_ _S_t_r_u_c_t_u_r_e_ 
                  If a linking of records in two different master files is require
                  then a connection structure is formed, as shown in Figure 31.d
          The records of the list file contain two daughter chain fields,
          one for each master file (see Figures 32 and 33). With this
          method of chaining, list file records can be referenced via both
          master files. 
           
                  By scanning the records in a chain entered via one master file,
          keys to records in the other master file can be found. The refe-
          rence to these keys is situated in the corresponding mother re-
          ference fields. \f

T_                              Master 
                              File 1 
           
                                        Chain group a 
           
                              List 
                              File 
           
                                        Chain group b 
           
                              Master 
                              File 2 
           
&_          Figure 31. File Structure/Data Structure Diagram 
             
               
T_              b chains 
           
           
                  Master File 1
                                                List File 
           
           
           
           
                                                           a chains 
           
           
           
           
           
           
           
           
           
           
                              Master File 2 
           
        &_        Figure 32. Chain Structure 
                 
          The right-hand chain field belongs to chains a, the left-hand 
          chain field to chains b. \f

  T_                      User Part                     Chain Part 
  Data                         Daughter 
                                        chain field 
 
 
          Next record  Mother reference Next record   Mother reference
          in chain a   to master file 1 in chain b    to master file 2
 
  &              Figure 33. Record Structure in the List File 

 
                  An example of the use of a connecting list file is given in the
          following: 
           
          In order to be able to produce production schedules a company
          wishes to place information on its items (products), its ma-
          chines and the relations between these two in its database. The
          relations must describe the machines used to produce a finished
          item, and the finished items processed by a specific machine. 
           
          Let us assume that the company produces two products P1 and P2
          on machines M1, M2 and M3. As illustrated by the diagram in
          Figure 34 P1 is produced on machines M1 and M3, whereas P2 is
          produced on M2 and M3. 
T_           
                    M1  P1
M3
      M2P2 
           
&_          Figure 34. Production of P1 and P2 
               
          Products and machines are situated in separate master files, and
          the relations between them in a combination (compound ??) list
          file interposed between the master files. Figures 33 and 34 illu-
          strate the file structure and chain structure. 
           
          It can be seen that the user part of a master file record uses
          item (product) number/machine number as key. The chain partof
          list file records contains two daughter chain fields. Reference
          to the two master files (mother references) is made through item
          number and machine number. The left-hand chain fields belong to
          chains containing information on 'machines on which an item is
          produced' (chain a). The right-hand chain fields belong tochains
          describing 'items produced on a machine' (chain b). \f

T_ 
                       Item 
                    master file 
       
 
 
 
                    Operations 
                       List 
   File 
 
 
 
 
Machine 
         master file 
 
&_               Figure 33. File Structure/Data Structure Diagram
 
 
T_

      P1                  P1  M1                        P1  M3 
 
         
      P2        chain a                 P2  M2          P2  M3 
 
 
                    chain b 
 
                      M1           M2             M3 
     
 
&_         Figure 34. Chain Structure. 

 
        3.3.3     N_e_t_w_o_r_k_ _S_t_r_u_c_t_u_r_e_ 
          If linking of records in a single master file is required, e.g.
          to describe the breakdown of an item into components (see Figure
          35), the same technique is used. But here the two daughter chain
          fields refer to the same master file. If 'parts list' chains and
          'where used' chains are used, then file structure and record
          structure would be as illustrated in Figures 36 and 38. \f

T_                Item 
       Master FileA
 
'where used'         'partslists' 
 chains                  chains 
B
          List 
          File 
  CD
 
                  Figure 36. File Structure/Data         Figure 35. Item Network 
&_                     Structure Diagram 

 
         
T_ 
 
 
 
        
 
 
 
 
 
 
 
 
A                   A   B             A   C 
 
 
&_ 
B                                     B   C          B  D 

   
 
C 
T_ 
 
 
D 
 
    
 
&_             Figure 37. Chain Structure \f

 
T_          User Part                     Chain Part 
          Quantity                    Daughter Chain 
                                          Field 
 
Next record in  Reference to      Next record in  Reference to 
   chain a         mother record     chain b         mother record 
 
&_               Figure 38. List File Record Structure 
 
         
                  The chains using the left-hand chain field belong to 'parts
          list' chains where a single level break-down is achieved. The
          chains using the right-hand chain field belong to 'where used'
          chains. By scanning a 'parts list' chain in the list file, via
          an item number, keys to components one level down can be found.
          The same is true, but in the opposite direction, for 'used in'
          chains. 
                   
           
          C_o_n_c_l_u_s_i_o_n_ 
           
          In this chapter we have seen a number of basic file/data struc-
          tures. A database which constitutes the basis of a large inte-
          grated system will normally have a very much more complicated
          file structure. Figure 39 shows RC System 80 database system for
          integrated production and financial control.  
           
          This database is included to show how a complex data structure
          can be built up from the basic data structures previously
          discussed. \f

F_












                    TEGNING SÆTTES IND HER 
 
 
 
 
 

























                  Figure 39. RC System 80 Database Structure. \f

F_      4.        C_F_-_P_r_o_c_e_d_u_r_e_s_ 
           
                   
          A number of procedures are available in the CF System, whereby
                  records can be retrieved, inserted, connected or deleted. These
          four functions are described in the following and the most im-
          portant procedures named: 
           
           
        4.1       I_n_s_e_r_t_i_o_n_ _o_f_ _r_e_c_o_r_d_s_ 
           
        4.1.1     I_n_s_e_r_t_i_o_n_ _o_f_ _r_e_c_o_r_d_s_ _i_n_ _a_ _m_a_s_t_e_r_ _f_i_l_e_ 
          Records are inserted in a master file by means of the procedure:
           
                    insert_m (zm, record) 
           
          zm is the particular master file and record the specific record
          to be inserted. 
           
        4.1.2     I_n_s_e_r_t_i_o_n_ _o_f_ _r_e_c_o_r_d_s_ _i_n_ _a_ _l_i_s_t_ _f_i_l_e_ 
          Records are inserted in a list file by means of the procedure: 
           
                    insert_l (zl, chain, ic mode, record) 
           
          zl is the particular list file. 
          chain is the specific chain into which the record is to be
          inserted. 
          ic mode is the position in the chain 
          record is the specific record. 
           
           
          Figure 40 illustrates the chain structure before and after inser-
          tion. 
           \f

        T_        n1
          Before n2                       n2 
          Insertion
                              n3
new 
                                      record 
                   
           
                   n1                       n2 
          After n3 
                  Insertion 
          n3
          n2
 
           
&_          Figure 40. Insertion of a record in a list file.
                   
           
          Insertion of a new record in a chain between n1 and n2 occurs as
          follows: 
           
          CF-System first finds a vacant record number for the new record.
          This occurs according to a clustering strategy whereby CF-System
          tries to find a record number such that the new record is placed
          in the same physical block as n1. The record is then inserted in
          the chain by transferring the record number in n1's chain field
          to the chain field of the new record (n3). The record number in
          n1's chain field is then altered to the new record number (n3). 
           
           
      4.2       C_o_n_n_e_c_t_i_o_n_ _o_f_ _r_e_c_o_r_d_s_ 
           
          If a record of an existing chain is to be linked to another
          chain then the following procedure must be used: 
                 
                    connect (zl, chain _1, chain _2, icmode) 
           
          zl is the list file in which the record in question is situated 
           
          chain 1 is the chain whose last accessed record is to be linked
                    to another chain (chain 2)
           
          icmode is the positionin chain_2 where the last record accessed
                    in chain _1 is to be placed. \f

T_         
           
           
          Before                       Last accessed 
          Linking                       record in chain 1
                                                                  Chain_1 
           
           
                                                                 Chain_2 
           
           
                   
           
           
          After 
          Linking                                                 Chain_1 
           
           
                                                                 Chain_2 
           
      &_        Figure 41. Linking of records. 
                   
           
          The connect procedure is similar to the insert _l procedure. The
          main difference is in the allocation of a record number for the
          record to be inserted. In the insert l procedure the record
          number is chosen according to a clustering strategy whereby the
          CFSystem tries to place the new record in the same physical
          block as the previous record in the chain (the records are said
          to be clustered). In the connect procedure the record number for
          the record which is to be linked to chain _2 was decided when the
          record was linked to chain _1. Therefore, records cannot be
          clustered. 
           
           
      4.3       R_e_t_r_i_e_v_a_l_ _o_f_ _r_e_c_o_r_d_s_ 
           
          To use the database it is often necessary to retrieve records in
          master and list files. Retrieval of a master file record having
          a specific key can be achieved as follows: 
           
                    get _m (zm, key) 
           
          zm specifies the master file and key the specific key. \f

                  The procedure: 
                            next _m (zm)
          retrieves the next record in the master file. 
           
          Retrieval of a list file record having a given record number can
          be achieved as follows: 
           
                    get_numb_l (zl, rec_no) 
           
                zl specifies the list file and rec _no the given record number. 
           
          Retrieval of a record in a list file according to its position
          in the chain can be achieved as follows: 
                 
                    get_l (zl, chain, gmode) 
           
          zl specifies the list file, 
          chain, the chain in question 
          and gmode the record in the chain. 
           
          For example, gmode = 1 gives the first record, gmode = 2 gives
          the next record after the last accessed record and gmode = 3
                  gives the last record accessed in the chain. The order of re-
          cords in a chain is determined by the order in which they are
          added to the chain. 
           
           
        4.4       D_e_l_e_t_i_o_n_ _o_f_ _r_e_c_o_r_d_s_ 
           
          When information in a database becomes obsolete then a deleting
          procedure is required. 
           
          If a master file record with its associated chains is to be de-
          leted then the following procedure is used: 
           
                    delete_m (zm) 
           
          zm specifies the master file in question. 
           
          The master file record hereby deleted will be the current record
          in the file in question. 
           
          Delete _m can be a hazardous procedure as records thus deleted
          could be members of chains to other master file records. 
                 
          To delete a record in a list file, together with its associated\f

          chains (i.e. all records for which that list file record is a
          mother), the following procedure is used: 
           
                    delete _l (zl, chain) 
           
          zl gives the list file in question, 
          chain, the chain from which the record is accessed. 
           
          The list file record which is deleted is the record last accessed
                  in the chain. Figure 42 illustrates the delete _l procedure. 
        T_         
           
           
           
                             TEGNING 
           
           
           
           
           
 
           
           
           
           
           
           
           
           
           
           
  &_                       Figure 42. Deleting Records 
                   
                  If list file record n2 only occurs in a single daughter chain
          then n2 is deleted by changing the record number in record n1's
          chain field to record number n3. 
           
                  Because CF-System uses one-way chains, a record, if it belongs
          to several chains, cannot be deleted immediately. Therefore, a
          list file record is 'marked for deletion' when its removal is
          required. In Figure 43 record 5 is 'marked for deletion' while
          running through chain II. The next time chain II is run through
          the pointers will be diverted around record 5. Only when the
          last chain (chain III) is run through and the corresponding\f

          pointers (in chain III) are diverted around record 5 will the
          record be physically erased. 
        T_         
           
           
                           1                   2                   3           I 
           
           
                   4                   5                   6           II
           
                                        III       marked for deletion 
           
          After running through chain II:- 
           
                   1                   2                   3           I 
           
           
                   4                   5                   6           II
           
          III 
           
          After running through chain III:- 
           
                   1                   2                   3           I 
           
                
                   4                   5                   6           II
           
           
           
           
&_          Figure 43. The Deleting Process. 
           
                 
                  To delete all records in a chain and all records having a mother
          record in that chain the following procedure is used: 
           
                    delete_chain (z, chain) 
           
          z indicates the file containing the mother record for the chain
              in question 
                 
          Contrary to delete_m and delete_l the mother record is not de-
          leted. Note that a mother record cannot be deleted without con-
          sequences for the associated daughter records. \f


 

 Introduction
READER'S COMMENTS                                    to CF-System
RCSL 42 - i 0766
 
A/S Regnecentralen maintains a continual effort to improve the
quality and usefulness of its publications. To do this effective-
ly we need user feedback - your critical evaluation of this
manual. 
 
Please comment on this manual's completeness, accuracy,organiza-
tion, usability, and readability: 
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
Do you find errors in this manual?  If so, specify by page. 
 _ _ _ ______________________________________________________________
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
How can this manual be improved? 
 _ _ _ ______________________________________________________________
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
Other comments? 
 _ _ _ ______________________________________________________________
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
_________________________________________________________________
_________ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ________________________________
 
Please state your position:  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ __ __ __ __
Name:    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _        Organization: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __
Address:_________________ _ _ _        Department:   _ __ __ __ __ __ __ __ __ __ __ __
_________________ _ _ _                      _______________________
_________________________________ _ _ _ _ _ _ _ _ _ _
 
 
Date: _____ _ _ _ _ _ _ _ _ ____
 
RETURN LETTER - CONTENTS AND LAYOUT\f


 
        
 











- - -- - - - - - - - - - - - - -- - Fold here - - - - - - - - - - - -- -















- - - - - - -- -  Do not tear - Fold here and staple - - - - - -- - - -

      Affix
postage
                                                           here

         _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ __ __ __ __ __ __ __ __ __ _ _ _ _ _ __ __ __
  
                          A/S REGNECENTRALEN 
                                   Information Department 
   Falkoner All 1 
   DK-2000 Copenhagen F 
   Denmark\f

                    
           \f

                                                 i 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
                   1.  INTRODUCTION ...........................................   1 
           
          2.  CHARACTER CODES ........................................   2 
           
          3.  THE DISPLAY ............................................   3 
              3.1  The Output Stream .................................   4 
               
          4.  THE KEYBOARD ...........................................   6 
              4.1  Key Designations ..................................   7 
              4.2  Displayable Character Keys ........................   8 
              4.3  Control Character Keys ............................   8 
              4.4  Edit Keys .........................................   9 
              4.5  Attention Keys ....................................  10 
               
          5.  MODES OF OPERATION .....................................  12 
              5.1  Output Mode .......................................  12 
              5.2  Normal Input Mode .................................  12 
              5.3  Field Input Mode ..................................  13 
              5.4  Single Character Mode .............................  14 
               
          6.  STANDARD STREAM INTERFACE ROUTINES .....................  15 
              6.1  PROCEDURE open _stream .............................  15 
              6.2  PROCEDURE closestream .............................  15 
              6.3  FUNCTION read .....................................  15 
              6.4  FUNCTION write ....................................  16 
              6.5  FUNCTION streamresult .............................  16 
               
          7.  STREAM INTERFACE EXTENSION ROUTINES ....................  17 
              7.1  FUNCTION read _field ...............................  17 
              7.2  FUNCTION read _character ...........................  17 
              7.3  FUNCTION sense _keyboard ...........................  17 
              7.4  PROCEDURE read _display _field ......................  18 
              7.5  PROCEDURE set _cdp .................................  18 
              7.6  PROCEDURE read _cdp ................................  18 
              7.7  PROCEDURE set _cursor _mode .........................  18 \f

                                                 ii 
           
          T_A_B_L_E_ _O_F_ _C_O_N_T_E_N_T_S_ _(_c_o_n_t_i_n_u_e_d_)_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _P_A_G_E_ 
           
          A.  REFERENCES .............................................  19 
           
          B.  CHARACTER CODE SETS ....................................  20 
              B.1  Standard Danish ...................................  20 
              B.2  Danish Public Sector ..............................  20 
              B.3  Swedish ...........................................  20 
              B.4  German ............................................  20 
              B.5  English (UK) ......................................  20 
              B.6  English (US) ......................................  20 
               
               \f

F_       1_._ _ _ _ _ _ _ _ _I_N_T_R_O_D_U_C_T_I_O_N_ 1.
           
          The RC700/855 console is an abstract bidirectional stream device
          supporting keyboard input with echo on a CRT-display as well as
          output to the display. Associated with the keyboard and display
          is also an audible alarm signal. 
           
          The console is implemented on both the RC700 and the RC855 as
          part of the PI-1 machine I/O system, ref. 1. The functional
          characteristics of the RC700 display are directly reflected in
          properties of the console, whereas the RC855 implementation of
          the console may be described as an emulation of RC700
          characteristics on the somewhat more general hardware of the
          RC855. 
           
          Important features of the RC700/855 console are: 
           
          - a number of presentation attributes available on a field basis,
             
          - conversion between internal character codes (derived from ISO-
            646, ref. 4) existing in a number of national versions and
            character codes appropriate for the actual RC700 and RC855 key-
            board and CRT devices, 
             
          - a number of modes of operation allowing varying degrees of
                     application program control over keyboard input and the
            associated echo, 
             
          - general stream interface, cf. ref. 1, for simple operations
                     with more elaborate functions available as extensions to the
            standard stream interface routine repertoire. 
           
          In order to ensure proper operation of the console there should
          only be one process incarnation calling the console interface
          routines. In particular this is important for the input routines.
           
          Chapters 2-5 contain a general description of the console, and
          the specific effects of each interface routine are documented in
          chapters 6 and 7, with the standard stream interface routines in
          chapter 6 and the extensions in chapter 7. 
           
           \f

F_       2_._ _ _ _ _ _ _ _ _C_H_A_R_A_C_T_E_R_ _C_O_D_E_S_    2.
           
          Characters are passed to and from the console as bytes in the in-
          put and output byte-streams. D_i_s_p_l_a_y_a_b_l_e_ _c_h_a_r_a_c_t_e_r_s_ (alphameric
          and special symbols) always have codes in the range 32-126
          according to the national version of the ISO 646-compatible char-
          acter code set in question. Conversion tables to support the
          proper national version are initialized by the basic system (ref.
          2). Six different national versions are supported, as shown in
          Appendix B. 
           
          In general character codes in the range 0-31 (control characters)
          may be typed in as CTRL combinations, but only while the console
          is in single character or output mode, and they are not echoed by
          the console. The control characters CR(13) and ESC(27) are ex-
          ceptions from this rule, cf. chapter 4. Only the following con-
          trol characters are supported in the output stream: BEL(7),
          LF(10), FF(12) and CR(13). 
           
          The output stream may, in addition to displayable characters and
          the three above mentioned control characters, contain attribute
          characters with codes in the range 128-191. 
           
                   The input stream consists of lines of characters. Each line con-
          tains a number of displayable characters and is terminated by an
          attention status code in the range 129-166 or one of the special
          control characters CR and ESC. 
           
           \f

F_       3_._ _ _ _ _ _ _ _ _T_H_E_ _D_I_S_P_L_A_Y_ 3.
           
          The CRT-display of the RC700/RC855 console holds a p_i_c_t_u_r_e_
          consisting of 25 lines of 80 characters. Every character occupies
          a display position (line, column), where 0 <_ line <_ 24 and
               0 <_ column <_ 79. The display positions, and consequently the
          characters in the display picture, are ordered as follows: 
          - the h_o_m_e_ _p_o_s_i_t_i_o_n_ (0,0) is the first position, 
          - within a line, ordering is by column, 
          - for 0 <_ i < 24, the display position following (i,79) is
            (i+1,0) 
          - the display position (24,79) is the l_a_s_t_ _p_o_s_i_t_i_o_n_. 
          Operations on the console always relate to the c_u_r_r_e_n_t_ _d_i_s_p_l_a_y_
          p_o_s_i_t_i_o_n_, in the following abbreviated CDP. 
           
          A c_u_r_s_o_r_ is displayed in the CDP when the console is in the
          normal input, field input, or single character mode. The cursor
          may be displayed as an underline or a block, blinking or not
          blinking, depending on the c_u_r_s_o_r_ _m_o_d_e_, which may be altered
          dynamically. 
           
          The display may be divided into p_r_e_s_e_n_t_a_t_i_o_n_ _f_i_e_l_d_s_ by writing
          a_t_t_r_i_b_u_t_e_ _c_h_a_r_a_c_t_e_r_s_ into the picture. An attribute character,
          which is itself displayed as a blank, determines the presentation
          characteristics of the following field. A presentation field
          consists of all characters between two subsequent attribute
          characters. Attribute characters may occur in the output stream,
          but cannot be typed in from the keyboard. 
           
          Attribute characters are coded as shown in fig. 1. Thus the value
          of an attribute character is always in the range 128-191. 
           
M_                      MSB   _7_ _6_ _5_ _4_ _3_ _2_ _1_ _0_ _  LSB    effect if bit is 1 
P_                           _1_ _0__ __ __x__ __ __ __ 
                                                       highlight 
                                                blink 
                                                semigraphic 
                                                inverse 
                                                underline 
           
          Figure 1: Attribute character coding. 
           \f

          Semigraphic representation is presently not supported on the
                   RC855. 
           
                   Scrolling of the display picture occurs 
          - when CDP is advanced beyond the last position of the display;
            this may occur either in normal input mode or during output,
            and after scrolling CDP will be (24,0), 
          - when an LF character is output while CDP is in line 24, 
          - when the NEWLINE edit key is pressed in the normal input mode
            and CDP is in line 24. 
           
          Scrolling causes the picture to "roll up" one line and the bottom
          line to be cleared. The line number of every character in the
          picture, including attribute characters, is decremented by one,
          except in the top line which vanishes, and CDP will be in line 24
          following the scroll operation. 
           
           
      3_._1_ _ _ _ _ _ _ _T_h_e_ _O_u_t_p_u_t_ _S_t_r_e_a_m_ 3.1
           
          Provided there is only one process incarnation calling the con-
          sole interface routines, processing of the output stream will
          only occur while the console is in the idle or program interrupt
          mode. Since there is no console echo in these modes no risk
          exists to unintentionally mix output and keyboard echo characters.
           
          The output stream which is written using the procedure write (cf.
          section 6.4) may contain the control characters BEL, LF, and CR,
          displayable characters, and attribute characters. The characters
          in the output stream are processed one at a time, sequentially. 
           
          A displayable or attribute character is processed as follows: The
          character is written into the picture at the CDP, overwriting
          whatever character may be occupying that position. This may cause
          the creation of a presentation field in case an attribute char-
          acter is written in a position previously occupied by a display-
          able character. It may also cause the concatenation of two adja-
          cent presentation fields if an attribute character is overwritten
          with a displayable character. Subsequently CDP is advanced to the\f

          next position. If CDP is in column 79, it is not  actually moved
              to the next line until the next displayable or attribute char-
          acter is processed, or the console enters an input  mode. This
          special treatment of the end-of-line situation allows a character
          to be written into the last position without causing scrolling.
          It also avoids the extra line feed which would otherwise occur
          when a CR-LF sequence is processed following a character written
          in the last position of a line. 
           
                   A control character in the output stream is processed as follows:
           
          BEL:  The audible alarm is sounded. 
          LF:   CDP is moved one line down, except if it is already in line
                24 in which case scrolling occurs as described above. 
          FF:   CDP becomes the home position, and blanks are written in
                all character positions. 
          CR:   CDP is moved to column 0 of the current line. 
           
           \f

F_       4_._ _ _ _ _ _ _ _ _T_H_E_ _K_E_Y_B_O_A_R_D_ 4.
           
                   Three different basic keyboard models are used with the RC700/855
          console: the RC721 and RC722 which may be connected to the RC700,
          and the RC805 which is used with the RC855. The keyboards are
                   shown in figs. 2-4.
           
           
           
           
           
           
           
           
           
           
           
          Figure 2: RC721 keyboard, UK-ASCII version. 
           
           
           
           
           
           
           
           
           
          Figure 3: RC722 keyboard, Danish version. 
           
           
           
           
           
           
           
           
           
           
           
          Figure 4: RC805 keyboard, UK-ASCII version. 
           \f

          Each of the basic keyboard models exists in a number of national
          versions. Only the repertoire of displayable character keys and
          the positions of the keys differ from one national version to
          another. The control, attention, and edit keys are the same for
          all versions of one basic keyboard model. 
           
          The number of available attention and edit keys differs consider-
          ably between the basic keyboard models. Thus some of the func-
          tions described in the following cannot be achieved with all key-
          boards. Of this the application programmer should be aware. If,
          for example, the invokation of an application function is assign-
          ed to a particular attention key which is only available on the
          RC805 keyboard it should be possible to obtain the same function
          by, say, typing in a command string, at least in so far as the
          application is required to support the more primitive keyboards. 
           
           
4_._1_ _ _ _ _ _ _ _K_e_y_ _D_e_s_i_g_n_a_t_i_o_n_s_    4.1
           
          In the discussion which follows each key is referred to by its
          d_e_s_i_g_n_a_t_i_o_n_. In fact key designations refer to "logical keys",
          and most physical keys provide two logical keys, one of which is
          typed by pressing the key alone, and the other by pressing the
          key while a SHIFT key is held down. Often the designation (both)
          of a key will be engraved upon it. There are some exceptions,
          though: 
           
          - small case letters, 
             
          - SHIFT+PAi on the RC722 or RC805 keyboard yields PAi+5, 
             
          - SHIFT+d on the RC805 where d is 1-9 in the numeric key pad
            yields PFd, 
             
          - key designations in the form of natural language phrases,
            usually abbreviated, such as DEL LINE, will not be the same as
            the corresponding engraving on Danish versions of the RC805. 
             \f

          - The key with the engraving <- on the RC721 or RC722 is the CR
            key, whereas the key with the same engraving on the RC805 is
            the NEWLINE key, 
             
          - on the RC805 the CR key appears as SEND, 
             
          - on the RC805 the RUBOUT key appears as DEL CHAR or SLET TEGN, 
             
          - DEL LINE and DEL DATA are typed on the RC722 as SHIFT+ <- and
            SHIFT+CLEAR, respectively. 
           
          The total repertoire of keys falls in four categories, each of
          which is described in one of the following sections. 
           
           
4_._2_ _ _ _ _ _ _ _D_i_s_p_l_a_y_a_b_l_e_ _C_h_a_r_a_c_t_e_r_ _K_e_y_s_    4.2
           
                 All keyboards contain keys for 95 different displayable charac-
          ters, including blank (SPACE), alphameric symbols, and a number
          of special symbols. The repertoire of displayable characters and
          their internal codes vary with the national versions of the key-
          boards. 
           
          Displayable character keys may be used to enter characters in all
          modes of operations except idle mode. 
                    
           
4_._3_ _ _ _ _ _ _ _C_o_n_t_r_o_l_ _C_h_a_r_a_c_t_e_r_ _K_e_y_s_ 4.3
           
                The keyboards contain only two genuine control character keys, CR
          (code 13) and ESC (code 27). These two characters may be used to
          terminate normal or field input mode in the same fashion as an
          attention status, cf. section 4.5. 
           
          All control characters, i.e. codes in the range 0-31 may be keyed
          in as CTRL combinations: pressing a displayable character key
          while the CTRL key is held down yields the code of the display-
          able character modulo 32. However, in general control characters
          can only be entered in the single character or output mode. 
           
           \f

     4_._4_ _ _ _ _ _ _ _E_d_i_t_ _K_e_y_s_    4.4
           
          A number of edit keys are available for the operator to perform
          editing functions on the display picture while the console is in
          the normal or field input mode. The normal editing functions
          which are initiated by pressing an edit key are described below. 
           
                   K_e_y_ _d_e_s_i_g_n_a_t_i_o_n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _f_u_n_c_t_i_o_n_ 
           
                <-          CDP is moved to the preceeding position. If CDP
                            is in the home position nothing happens. 
                             
                ->          CDP is moved to the following position. If CDP
                            is in the last position nothing happens. 
                             
                           CDP is moved one line up, or from line 0 to
                            line 24. 
                             
                           CDP is moved one line down, or from line 24 to
                            line 0. 
                             
                            CDP is moved to the home position. 
                             
                 <-         The character at the CDP is deleted, all fol-
                            lowing characters in the same line are moved
                            one position to the left, and a blank is in-
                            serted in the last position of the line. 
                             
                ->          The character at the CDP and all following
                            characters, except the last one, in the same
                            line are moved one position to the right. The
                            last character in the line vanishes, and a
                            blank is inserted at the CDP. 
                                      
              RUBOUT        CDP is moved to the preceeding position and a
                            blank is inserted at the new CDP. 
                             
              CLEAR         CDP is moved to the home position and blanks
                            are written in all positions of the picture. 
                             \f

             NEWLINE        CDP is moved to the first position of the next
                            line. If CDP is in line 24 scrolling occurs as
                            described in chapter 3. 
           
             DEL LINE       The character at the CDP and all following
                            characters in the same line are overwritten
                            with blanks. 
                             
             DEL DATA       The character at the CDP and all following
                            characters in the picture are overwritten with
                            blanks. 
           
           
         4_._5_ _ _ _ _ _ _ _A_t_t_e_n_t_i_o_n_ _K_e_y_s_    4.5
           
          Pressing an attention key generates an attention status in the
          console. This may be used to terminate normal or field input
          mode, but an attention status may also be entered in single char-
          acter or output mode. The range of attention status values is
          129-166 so that an attention status is easily distinguishable
          from a control or display character code. The attention keys sup-
          ported by the RC700/855 console and the associated status values
          are shown in the table below. No attention keys are available on
          the RC721. 
           
                   k_e_y_ _d_e_s_i_g_n_a_t_i_o_n_ _ _ _ _a_t_t_e_n_t_i_o_n_ _s_t_a_t_u_s_ _ _ _a_v_a_i_l_a_b_i_l_i_t_y_ 
               PF1                 130          RC722,RC805 
               PF2                 131              do. 
               PF3                 132              do. 
               PF4                 133              do. 
               PF5                 134              do. 
               PF6                 135              do. 
               PF7                 136              do. 
               PF8                 137              do. 
               PF9                 138             RC805
               PF10                139              do. 
               PF11                140              do. 
               PF12                141              do. 
               PF13                147              do. 
               PF14                148              do. \f

          k_e_y_ _d_e_s_i_g_n_a_t_i_o_n_ _ _ _ _a_t_t_e_n_t_i_o_n_ _s_t_a_t_u_s_ _ _ _a_v_a_i_l_a_b_i_l_i_t_y_ 
               PA1                 142          RC722,RC805 
               PA2                 143              do. 
               PA3                 144              do. 
                        PA4                 150              do. 
               PA5                 151              do. 
               PA6                 162              do. 
               PA7                 163              do. 
               PA8                 164              do. 
               PA9                 165              do. 
               PA10                166              do. 
              PRINT                153             RC805 
              RESET                155              do. 
           
           \f

F_       5_._ _ _ _ _ _ _ _ _M_O_D_E_S_ _O_F_ _O_P_E_R_A_T_I_O_N_    5.
           
                   Input characters read from the console are normally taken from
          the l_i_n_e_ _i_n_p_u_t_ _b_u_f_f_e_r_. This buffer is set up in the call of
          open _stream (cf. section 6.1) and must be 81 characters long. 
           
          The way the line input buffer is used and the type of input and
          edit functions allowed differ in the four modes of console oper-
          ation described in the following. 
           
                    
         5_._1_ _ _ _ _ _ _ _O_u_t_p_u_t_ _M_o_d_e_ 5.1
           
          When the console is not actively performing an input function, it
          is in the output mode. 
           
          In output mode, updating of the display picture occurs only as a
          result of output stream processing. Processing of the output
          stream, on the other hand, occurs only in output mode. 
           
          The operator may temporarily suspend output processing or abort
          it. Whenever an LF character is processed, the console tests
          whether a SPACE or ESC character has been typed in. In case of
          SPACE, output processing is suspended until another SPACE char-
          acter is typed. In case of ESC, the call of write (cf. section
          6.4) is aborted. 
           
          When the console is not processing output, it is possible to test
          whether a character or attention status has been entered from the
          keyboard (call of sense _keyboard, cf. section 7.3). Edit keys are
          ignored. 
           
           
    5_._2_ _ _ _ _ _ _ _N_o_r_m_a_l_ _I_n_p_u_t_ _M_o_d_e_ 5.2
           
          In normal input mode displayable characters may be entered into
          the display picture and the full range of picture editing func-
          tions (edit keys) are available to the operator. 
           \f

          When a displayable character is typed it is entered into the pic-
          ture at the CDP, and CDP is advanced to the next position. The
          latter may cause scrolling as explained in chapter 3. 
           
          All edit keys are functional as described in chapter 4. 
           
          Normal input mode is entered when the line input buffer is ex-
          hausted during normal stream input (call of read, cf. section
          6.3), and left when an attention key, CR or ESC is pressed. At
          this time all displayable characters, except trailing blanks, in
          the line of the CDP are transferred to the line input buffer,
          followed by the attention status or terminating control char-
          acter. Reading of the stream may then proceed. 
           
          The process incarnation calling read will be waiting while the
          console is in the normal input mode. 
           
           
     5_._3_ _ _ _ _ _ _ _F_i_e_l_d_ _I_n_p_u_t_ _M_o_d_e_    5.3
           
          A call of read _field (cf. section 7.1) places the console in the
          field input mode. The call defines an i_n_p_u_t_ _f_i_e_l_d_ starting at the
          current DP and with length equal to the value of the 'fieldsize'
          parameter, which must be in the range 1-80. Thus an input field
          may span two subsequent lines of the display picture. However, a
          field cannot extend beyond the last character position. 
           
          In field input mode displayable characters may be entered into
          the field, and editing may take place within the field, using the
          following edit keys:  <-, -> , RUBOUT, <-, and ->. The insert
          (-> ) and delete ( <-) functions work to end of field rather than
                   end of line. 
                
          Field input mode is terminated when an attention key, CR or ESC
          is pressed. The contents of the input field and the attention
          status or terminating control character are then transferred to
          the result parameters of the call of read _field. 
           \f

          It is not possible for the operator to move CDP (the cursor)
          outside of the input field by means of an edit key. If an attempt
          is made the alarm is sounded. When a displayable character is
          typed into the last position within the field CDP becomes the
          first position following the field (in this special case, the
          home position follows the last position), the alarm is sounded,
          and an end-of-field situation exists. In this situation the only
          acceptable keyboard inputs are <-, RUBOUT, or a field input mode
          termination key. An attempt to enter any other key is responded
          to with alarm. 
           
          The process incarnation calling read _field will be waiting while
          the console is in the field input mode. 
           
           
         5_._4_ _ _ _ _ _ _ _S_i_n_g_l_e_ _C_h_a_r_a_c_t_e_r_ _M_o_d_e_ 5.4
                   
          A call of read _character (cf. section 7.2) places the console in
          the single character mode. In this mode a single character,
          either displayable or control character, may be typed in, or an
          attention status may be entered. 
           
          The process incarnation calling read _character waits until this
          happens, and then receives the character code or attention status
          as result. 
           
          Edit keys typed while the console is in the single character mode
          are ignored. 
           
          The console does not provide echo in single character mode, i.e.
          any desired output must be generated by the application program. 
           
           \f

F_       6_._ _ _ _ _ _ _ _ _S_T_A_N_D_A_R_D_ _S_T_R_E_A_M_ _I_N_T_E_R_F_A_C_E_ _R_O_U_T_I_N_E_S_ 6.
           
          The description of the general stream interface routines given in
          ref. 1 is not repeated here. In the following those details of
          the interface routines are described which are specific to the
               console. The descriptions here employ the same type of Pascal-
          like notation as those in ref. 1. The precise routine names and
          parameter specifications used for either PASCAL80 or assembler
          coding are found in ref. 2 and ref. 3, respectively. 
           
           
M_M_m_m_ 6.1       PROCEDURE open _stream(VAR s: stream; pathname: pathname-type; 6.1
P_P_p_p_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
                            m_o_d_e_:_ _s_t_r_e_a_m_m_o_d_e_;_ _V_A_R_ _b_u_f_f_e_r_s_:_ _b_u_f_f_e_r_p_o_o_l_)_;_ 
           
          The 'pathname' leading to the console is "/console". Regardless
          of the value of 'mode' the stream is opened in the bidirectional
          mode. 'buffers' should consist of one buffer of length 81 bytes.
          Console output is not buffered, but always written directly into
          the display picture. 
           
           
   6_._2_ _ _ _ _ _ _ _P_R_O_C_E_D_U_R_E_ _c_l_o_s_e_s_t_r_e_a_m_(_V_A_R_ _s_:_ _s_t_r_e_a_m_;_ _V_A_R_ _b_u_f_f_e_r_s_:_ _b_u_f_f_e_r_p_o_o_l_)_;_ 6.2
           
          No details specific to console. 
           
           
         6_._3_ _ _ _ _ _ _ _F_U_N_C_T_I_O_N_ _r_e_a_d_(_V_A_R_ _s_:_ _s_t_r_e_a_m_;_ _a_d_d_r_:_ _a_d_d_r_e_s_s_;_ 6.3
                             c_o_u_n_t_:_ _i_n_t_e_g_e_r_)_:_ _i_n_t_e_g_e_r_;_ 
           
          If the line input buffer is empty when read is called the console
          enters normal input mode, cf. section 5.2. When this mode is left
          the console enters output mode, and the call proceeds as one of
          the two cases described below. 
           
          If at least 'count' characters are present in the line input buf-
          fer the first 'count' of these are transferred to memory loca-
          tions starting at 'addr', and the result will be equal to
          'count'. 
               \f

          If the line input buffer contains fewer than 'count' characters
          all of these will be transferred to memory locations starting at
          'addr', thereby emptying the line input buffer. In this case the
          result will be equal to the number of transferred characters. 
           
           
         6_._4_ _ _ _ _ _ _ _F_U_N_C_T_I_O_N_ _w_r_i_t_e_(_V_A_R_ _s_:_ _s_t_r_e_a_m_;_ _a_d_d_r_:_ _a_d_d_r_e_s_s_;_    6.4
                             c_o_u_n_t_:_ _i_n_t_e_g_e_r_)_:_ _i_n_t_e_g_e_r_;_ 
           
          The bytes written to the output stream are processed as described
          in sections 3.1 and 5.1. If output is aborted by an ESC char-
          acter, the result of write will be less than 'count'. 
           
           
         6_._5_ _ _ _ _ _ _ _F_U_N_C_T_I_O_N_ _s_t_r_e_a_m_r_e_s_u_l_t_(_V_A_R_ _s_:_ _s_t_r_e_a_m_)_:_ _i_o_r_e_s_u_l_t_;_ 6.5
           
          The following results may occur:  ??? 
           
           \f

F_       7_._ _ _ _ _ _ _ _ _S_T_R_E_A_M_ _I_N_T_E_R_F_A_C_E_ _E_X_T_E_N_S_I_O_N_ _R_O_U_T_I_N_E_S_    7.
           
          The interface routines which are only used for the console have
          no stream parameter since only one stream, the console stream,
          can be affected by these routines. 
           
           
M_M_m_m_7.1       FUNCTION read _field(addr: address; init: 0..2; 7.1
P_P_p_p_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
                             f_i_e_l_d_s_i_z_e_:_ _1_._._8_0_)_:_ _1_2_9_._._1_6_6_;_  
           
          A call of read _field causes the line input buffer to be cleared
              and the console to enter field input mode, cf. section 5.3.
          Before this happens, the characters in the input field are set as
          follows: 
               init = 0: no change 
               init = 1: all blanks 
               init = 2: overwritten with characters taken from memory lo-
                         cations starting at 'addr'. 
          When field input mode is terminated the characters in the input
          field are transferred to memory locations starting at 'addr', the
          console enters output mode, and read _field returns with the at-
          tention status or mode terminating control character as result. 
           
           
M_M_m_m_7.2       FUNCTION read _character: byte; 7.2
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          A call of read _character causes the line input buffer to be
          cleared and the console to enter single character mode, cf.
          section 5.4. When a control character, displayable character, or
          attention status is keyed in, the console enters output mode, and
          read _character returns with the character code or attention
          status as result. 
           
           
M_M_m_m_7.3       FUNCTION sense _keyboard: byte; 7.3
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          If no control character, displayable character, or attention
          status has been keyed in, the result will be 255. Otherwise, the
          character code or attention status is returned, and the console
          enters idle mode. 
           
           \f

M_M_m_m_7.4       PROCEDURE read _display _field(addr: address; fieldsize: 0..1999);    7.4
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          A call of read _display _field causes a number of characters given
          by the value of 'fieldsize' to be transferred from the display
          picture, starting at CDP, to memory locations, starting at
          'addr'. 
           
           
M_M_m_m_7.5       PROCEDURE set _cdp(line: 0..24; column: 0..79); 7.5
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          A call of setcdp causes CDP to be moved to position ('line',
          'column'). 
           
           
M_M_m_m_7.6       PROCEDURE read _cdp(VAR line: 0..24; VAR column: 0..79); 7.6
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          The result parameters 'line' and 'column' are set to reflect the
          CDP. 
           
           
M_M_m_m_7.7       PROCEDURE set _cursor _mode(cm: 0..3);    7.7
P_P_p_p_  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
           
          A call of set _cursor _mode causes the cursor presentation mode to
          be set according to the value of 'cm' as shown below: 
           
          v_a_l_u_e_ _ _ _c_u_r_s_o_r_ _p_r_e_s_e_n_t_a_t_i_o_n_ 
            0     underline, no blinking 
            1     underline, blinking 
            2     block, no blinking 
            3     block, blinking 
           
           \f

F_       A_._ _ _ _ _ _ _ _ _R_E_F_E_R_E_N_C_E_S_ A.
           
          1  RCSL No 31-D665: 
               The PI-1 Machine I/O System 
           
          2  RCSL No 31-D615: 
               The PI-1 Machine, Reference Manual 
           
                   3  RCSL No 31-D652: 
               PI-1 PASCAL80, Reference Manual 
           
          4  ISO-646: 
               7-bit Coded Character Set for Information Processing
               Interchange 
           
          5  RCSL No 31-D622: 
               RC700 Console Driver, Reference Manual 
           
           \f

F_       B_._ _ _ _ _ _ _ _ _C_H_A_R_A_C_T_E_R_ _C_O_D_E_ _S_E_T_S_    B.
           
   B_._1_ _ _ _ _ _ _ _S_t_a_n_d_a_r_d_ _D_a_n_i_s_h_ B.1
           
     B_._2_ _ _ _ _ _ _ _D_a_n_i_s_h_ _P_u_b_l_i_c_ _S_e_c_t_o_r_ B.2
           
    B_._3_ _ _ _ _ _ _ _S_w_e_d_i_s_h_ B.3
           
     B_._4_ _ _ _ _ _ _ _G_e_r_m_a_n_ B.4
           
  B_._5_ _ _ _ _ _ _ _E_n_g_l_i_s_h_ _(_U_K_)_ B.5
           
       B_._6_ _ _ _ _ _ _ _E_n_g_l_i_s_h_ _(_U_S_)_ B.6
           
           \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.  OPERATIONS ............................................   2 
              2.1  POWER Switch .....................................   2 
              2.2  BRIGHTNESS Control Knob ..........................   2 
              2.3  CONTRAST Control Knob ............................   2 
              2.4  H. HOLD Control Knob .............................   2 
              2.5  V. HOLD Control Knob .............................   2 
           
          3.  ADJUSTMENT ............................................   3 
           
          4.  CONNECTION TO RC702 ...................................   5 
           
          5.  SPECIFICATIONS ........................................   6 
           
          6.  CIRCUIT DESCRIPTION ...................................   7 
           \f

                                                 ii 
           \f

F_       1_._ _ _ _ _ _ _ _ _G_E_N_E_R_A_L_ _D_E_S_C_R_I_P_T_I_O_N_ 1.
           
          RC752 Video Display Monitor is normally used in connection with
          the RC702 Microcomputer system, but may also be used by other
          computer systems. The RC752 is designed by: 
           
               Nippon Electric Co., Ltd. 
               Tokyo, 
               Japan. 
           
          This manual is based on the service manual for NEC (Nippon Elec-
          tric Co., Ltd.), Model JB-1201M(A). The RC752 is a special ver-
          sion of JB-1201M(A) and the corrections to this service manual
          are made by NEC and by RC Computer. 
           
          The technical name for RC752 is VDU752. 
           
           \f

F_       2_._ _ _ _ _ _ _ _ _O_P_E_R_A_T_I_O_N_S_ 2.
           
          In sections 2.1 to 2.3 the switches and controls on the front of
          the video monitor are explained. Sections 2.4 to 2.5 explain the
          switches and controls on the back of the video monitor. 
           
           
2_._1_ _ _ _ _ _ _ _P_O_W_E_R_ _S_w_i_t_c_h_ 2.1
           
          The picture will appear after approximately 10 seconds when the
          power switch is turned to the right, and will disappear when the
          switch is turned to the left. 
           
           
2_._2_ _ _ _ _ _ _ _B_R_I_G_H_T_N_E_S_S_ _C_o_n_t_r_o_l_ _K_n_o_b_ 2.2
           
          The further to the right the knob is turned, the brighter the
          picture becomes. Adjustment needed is depending on ambient
          lighting conditions. 
           
           
2_._3_ _ _ _ _ _ _ _C_O_N_T_R_A_S_T_ _C_o_n_t_r_o_l_ _K_n_o_b_ 2.3
           
          The further to the right the knob is turned, the more emphasized
          is the contrast between black and white. Do not overemphasize the
          contrast; it may strain your eyes. 
           
           
2_._4_ _ _ _ _ _ _ _H_._ _H_O_L_D_ _C_o_n_t_r_o_l_ _K_n_o_b_ 2.4
           
          If stripes appear on the screen, turn the knob slowly until the
          stripes disappear and a normal picture appears. 
           
           
2_._5_ _ _ _ _ _ _ _V_._ _H_O_L_D_ _C_o_n_t_r_o_l_ _K_n_o_b_ 2.5
           
          If the picture moves upward or downward, turn this knob slowly
          until a normal picture appears. 
           
           \f

F_       3_._ _ _ _ _ _ _ _ _A_D_J_U_S_T_M_E_N_T_ 3.
           
          The locations of the main part on the circuit board are shown in
          fig. 1. 
           
          The following adjustment may be done: 
           
          +_B_ _A_d_j_u_s_t_m_e_n_t_:_ _V_R_6_0_1_ _(_+_B_ _A_D_J_)_ 
          Connect a DC voltmeter (range: 15 to 20V) to TP91 on the printed
          circuit board and the ground, and adjust VR601 until the
          voltmeter reads +12V. 
           
          H_o_r_i_z_o_n_t_a_l_ _W_i_d_t_h_ _A_d_j_u_s_t_m_e_n_t_:_ _L_5_0_3_ _(_H_._ _w_o_d_t_h_ _c_o_i_l_)_ 
          (1) Display a character signal (e.g. for the letter H) fully on
              the CRT screen, and adjust the brightness and contrast to the
              best. 
          (2) Turn the hexagonal core of L503 until the optimum horizontal
              amplitude is obtained. 
           
          V_e_r_t_i_c_a_l_ _H_e_i_g_h_t_ _A_d_j_u_s_t_m_e_n_t_ _(_V_R_4_0_1_ _V_._ _H_E_I_G_H_T_)_. 
          V_e_r_t_i_c_a_l_ _L_i_n_e_a_r_i_t_y_ _A_d_j_u_s_t_m_e_n_t_ _(_V_R_4_0_2_ _V_._ _L_I_N_)_ 
          (1) Display a character signal (e.g. the letter H) fully on the
              CRT screen, and adjust the brightness and contrast to the
              best. 
          (2) Turn VR401 and VR402 until the optimum vertical amplitude and
              linearity are obtained. 
           
          F_o_c_u_s_ _A_d_j_u_s_t_m_e_n_t_ _(_V_R_9_0_1_)_ 
          Bring the picture to the best focus by adjusting VR901. 
           
           \f

F_       4_._ _ _ _ _ _ _ _ _C_O_N_N_E_C_T_I_O_N_ _T_O_ _R_C_7_0_2_ 4.
           
          The power cable from RC752 is connected to RC702 to the Monitor
          Power Jack, which can only supply one RC752. 
           
          The signal from RC702 is supplied to RC752 using a coax cable and
          more than one monitor may be connected to the same signal. 
           
          The connections are made the following way: 
           
           
              RC702                 IN    OUT 
           
                                   75 Ohm High 
           
           
                                     RC752 
           
           
           
              RC702                 IN    OUT       IN    OUT       IN    OUT 
           
                                   75 Ohm High     75 Ohm High     75 Ohm High 
           
           
           
          The signal cable supplied together with RC752 is named CBL919. 
           
           \f

F_       5_._ _ _ _ _ _ _ _ _S_P_E_C_I_F_I_C_A_T_I_O_N_S_ 5.
           
          Picture Tube                        : C1270P4Y ARU 
                                                12" diagonal and 90
                                                deflection 
                                                 
          Phosphor                            : Yellow (P4Y) 
                                                 
          Video Input Signal                  : Composite Video signal 
               Polarity                       : Negative sync. 
               Level                          : 1.0 V p-p 
               Impedance                      : 75 Ohm (switchable to
                                                higher impedance) 
                                                 
              Input Terminal                      : BNC jacks 
                                                 
              Active Display Area                 : 230 (W) x 165 (H) mm 
                                                 
              Scanning Frequency 
               Horizontal                     : 15.4 KHz (64.9 uS) 
                   Vertical                       : 50 Hz    (20   uS) 
                                                 
              Active Video Period 
                   Horizontal                     : 48.1 uS 
                   Vertical                       : 17.9 mS 
                                                 
              Video Bandwidth                     : 30 Hz - 20 MHz (+_ 3 dB) 
                                                 
              Display Characters                  : 80 characters with 25 lines
                                                5 x 7 dot matrix (7 x 11
                                                dot/cell) 
                                                 
              Controls 
                   Inside                         : H. width, V. height, V.
                                                lin., focus, Sub bright-
                                                ness 
                   Outside                        : Brightness, Contrast, H.
                                                hold, V. hold 
                                                 
              Operating Ambient Temperature       : 0C - +40C 
                                                 
              Power Supply                        : 15 V DC 
                                                 
              Power Consumption                   : 15 W 
                                                 
              Dimensions                          : 360 (W) x 296 (H) x 330 (D)
                                                mm 
                                                 
              Weight                              : 5 kg 
                                                 
              Note: The above specifications are subject to change without
          further notice. 
           \f

F_       6_._ _ _ _ _ _ _ _ _C_I_R_C_U_I_T_ _D_E_S_C_R_I_P_T_I_O_N_ 6.
           
          The rest of the manual is a part of the original NEC manual and
          contains the following parts: 
           
               A. Block Diagram 
               B. Circuit Explanation, 6 pages 
               C. Circuit Diagram,     1 page A3 
               D. Drawings of Printed Circuit Boards 
               E. Thoubleshooting 
           
           \f

«eof»