DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Wang WCS documentation floppies

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

See our Wiki for more about CR80 Wang WCS documentation floppies

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦6429ff264⟧ Wang Wps File

    Length: 16218 (0x3f5a)
    Types: Wang Wps File
    Notes: PC/AUX/007 (Is 1)         
    Names: »3915A «

Derivation

└─⟦375fa32af⟧ Bits:30006243 8" Wang WCS floppy, CR 0325A
    └─ ⟦this⟧ »3915A « 

WangText






…02… PC/AUX/007       

…02… FSR/831109…02…#…02… PC TEST MONITOR
                                                            PC














                 PC TEST MONITOR


                 PC/AUX/007














                 Flemming S. Rasmussen




                 B[RGE HERMANSEN







                 EHO, KPL, FSR, BHE,
                 File (1)

















             1


             831109…86…1                                       
                  …02…            …02…   …02…    

…02… PC/AUX/007       

…02… FSR/831109…02…  ii
 PC TEST MONITOR
                 PC














        831109                  All       Initial issue of document





…02… PC/AUX/007       

…02… FSR/831109…02…   iii
PC TEST MONITOR
                                                              PC






                    T̲A̲B̲L̲E̲ ̲O̲F̲ ̲C̲O̲N̲T̲E̲N̲T̲S̲



   1.  INTRODUCTION .................................
        1 

   2.  MONITOR REQUIREMENTS .........................
        2 

     2.1   TEST MONITOR INTERFACE ...................
            2 
     2.2   TEST MONITOR LIMITATIONS .................
            2 

   3.  GENERAL DESCRIPTION ..........................
        3 

   4.  MONITOR COMMANDS .............................
        4 

     4.1   DUMP MEMORY ..............................
            5 
       4.1.1   Select Page Size .....................
                6 
       4.1.2   Change Line Size .....................
                6 
       4.1.3   Change Dump Format ...................
                6 

     4.2   EXAMINE/CHANGE MEMORY ....................
            7 
     4.3   SCHEDULE CONTROL .........................
            7 
     4.4   MESSAGE COMMANDS .........................
            8 
     4.5   TEST POINT COMMANDS ......................
            9 
       4.5.1   Internal Test Points .................
                9 
       4.5.2   Interface Test Points ................
               11 

     4.6   PC TEST SUPPORT COMMANDS .................
           12 
       4.6.1   Modify Local PC Memory ...............
               12
       4.6.2   Simnulate Local PC-Event .............
               14 


                     1. I̲N̲T̲R̲O̲D̲U̲C̲T̲I̲O̲N̲

         The PC-test monitor is used to simulate or inspect
         the message flow between the PC Main-Program and the
         CR80/GRTS LTU-drivers.

         By means of a number of the test points it is possible
         to test specified sub-modules in the PC main-program.

         The test monitor is only implemented during the test
         of the PC.



                 2. M̲O̲N̲I̲T̲O̲R̲ ̲R̲E̲Q̲U̲I̲R̲E̲M̲E̲N̲T̲S̲



2.1      T̲E̲S̲T̲ ̲M̲O̲N̲I̲T̲O̲R̲ ̲I̲N̲T̲E̲R̲F̲A̲C̲E̲

         VDU Terminal:    LTU - J4      1200 BAUD  7-BIT EVEN
         File Input:      LTU - J3      9600 BAUD  8-BIT EVEN

         The monitor is implemented in the PC-program as a special
         process and therefore requires a basic operating system.

         Test points are implemented as subroutines and require
         no external programs.

         A special location in the PC-program contains the release
         version of the PC main program. This location is displayed
         by the test monitor after power up.



2.2      T̲E̲S̲T̲ ̲M̲O̲N̲I̲T̲O̲R̲ ̲L̲I̲M̲I̲T̲A̲T̲I̲O̲N̲S̲

         To reduce the monitor program size and the interface
         to the main program, the test monitor has only been
         supplied with a simple V24-driver. This driver performs
         no interrupts of the main program, but requires the
         total CPU-time when a transmission to the console is
         executed. During this operation no processes or interrupts
         are able to be handled by the CPU. It is therefore
         recommended to use the high speed console as VDU terminal
         to reduce the V24-driver load time.

         The test monitor baudrate is selectable by means of
         assembler a constant.…86…1         …02…   …02…   …02…   …02…          
                                         
                  3. G̲E̲N̲E̲R̲A̲L̲ ̲D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲

         When the test monitor has been initialized after power
         up, the PC version is displayed on the console in the
         following format:

         *PC VERSION: 11-jun-83  12:00:00

         The test monitor is now ready for command input from
         the console. All capital characters and decimal characters
         in the command line are echoed. All invalid characters
         are echoed by a bell.

         The following controls are supported in the command
         line:

           BACK-SPACE   : DELETES LAST CHARACTER IN LINE
           ESCAPE       : CANCEL CURRENT COMMAND LINE

         When a space or   CR   is entered in a command line,
         the monitor reads the command word and checks if it
         is valid. If the word is invalid the command line is
         cancelled. Otherwise the concerned command mode is
         entered.



                   4. M̲O̲N̲I̲T̲O̲R̲ ̲C̲O̲M̲M̲A̲N̲D̲S̲

         The following list contains a briefly command syntax
         description of the implemented monitor commands.


         C̲O̲M̲M̲A̲N̲D̲ ̲S̲Y̲N̲T̲A̲X̲:̲             D̲E̲S̲C̲R̲I̲P̲T̲I̲O̲N̲:̲

         *D  LOW ADDR  HIGH ADDR     Dump memory range
         *PAGE  SIZE                 Set dump page size
         *LINE  SIZE                 Set dump line size
         *ASCII                      Set dump format to ASCII
         *HEX                        Set dump format to HEX
         *E  ADDRESS                 Examine/change memory
         *HALT                       Stop scheduling
         *GO                         Start scheduling
         *STOP                       Stop program in testpoint
         *CONT                       Continue program after
                                     test point
         *RESET                      Reset software and hardware
         *CR80  SWITCH               CR80 Message command
         *GRTS  SWITCH               GRTS Message command
         *TESTP1                     Establish test point 1
         *TESTP2                     Establish test point 2
         *TESTP3                     Establish test point 3
         *TESTP3E                    Establish test point 3(EXT)
         *TESTP4                     Establish test point 4
         *NOTEST                     Suspend all test points
         *SCR80                      Simulate CR80
         *MCR80                      Inspect CR80 messages
         *UCR80                      Normal use of CR80
         *SGRTS                      Simulate GRTS
         *MGRTS                      Inspect GRTS message
         *UGRTS                      Normal use of GRTS
         *STATUS                     Dump CR80 and GRTS status

         *SETSTATE  CODE             Set PC state
         *SEQID  CODE                Set sequence identifier
         *SETSTATUS  CODE            Set GRTS buffer status
         *OBCNT  COUNT               Set output bytecount
         *IBCNT  COUNT               Set input bytecount
         *OLCNT COUNT                Set answer timeout counter
         *OLTOUT                     Execute answer timeout
                                     event
         *NAKEXC                     Execute nak exceeded event
         *DTERR                      Execute data transmission
                                     
                                     error event.



4.1      D̲U̲M̲P̲ ̲M̲E̲M̲O̲R̲Y̲

         *D  LOW ADDRESS      HIGH ADDRESS  

           LOW ADDRESS    = 1-4 HEX CHARACTERS
           HIGH ADDRESS   = 0-4 HEX CHARACTERS

         The command dumps a specified memory area. Only a single
         location is dumped if   high address   is omitted or
         if   HIGH ADDRESS   is less than
           LOW ADDRESS  .

         The default dump format is in HEX with a line size
         of 16 bytes and no page limit.

         Dump control keys:      SPACE    = STOP / CONTINUE
         DUMP
                                 ESCAPE   = CANCEL DUMP


4.1.1    S̲E̲L̲E̲C̲T̲ ̲P̲A̲G̲E̲ ̲S̲I̲Z̲E̲                     

         

         *PAGE   SIZE   

           SIZE   = 0-2 HEX CHARACTERS

         The command stops the current dump after the number
         of lines specified in   SIZE   and "  PAGE" is displayed.
         If no size is specified or if   SIZE   = 00 the page
         function is disabled.

         If the page function is disabled, the dump can be stopped
         or cancelled after any number of bytes by the dump
         control keys. If the page function is enabled, the
         control is only possible when the "  PAGE   is displayed.



4.1.2    C̲H̲A̲N̲G̲E̲ ̲L̲I̲N̲E̲ ̲S̲I̲Z̲E̲

         LINE   SIZE  

           SIZE   = 1-2 HEX CHARACTERS

         The command controls the current line size of the dump.
         By power up the line size is 16 bytes.



4.1.3    C̲H̲A̲N̲G̲E̲ ̲D̲U̲M̲P̲ ̲F̲O̲R̲M̲A̲T̲

         *ASCII

         The command change the dump format to ASCII. Control
         characters or non-ASCII values are displayed by a "."

         *HEX

         The command change the dump format to hex.



4.2      E̲X̲A̲M̲I̲N̲E̲/̲C̲H̲A̲N̲G̲E̲ ̲M̲E̲M̲O̲R̲Y̲

         *E   ADDRESS  

           ADDRESS   = 1-4 HEX CHARACTERS

         The command displayes the specified location.

         To change the location the new hex value is entered
         after the …08…XX-…08… and a   CR   or   SPACE   is entered.
         The monitor requires two hex characters for one location.
         Rubout is only supported for one location at a time.

         If no change is decided a   CR  ,   SPACE   or
           ESCAPE   can be entered after the …08…XX-…08….

         If a  space   is entered as described above the next
         location is displayed, and the same examine/change
         of this location is possible.



4.3      S̲C̲H̲E̲D̲U̲L̲E̲ ̲C̲O̲N̲T̲R̲O̲L̲



4.3.1    *H̲A̲L̲T̲

         The command stops the scheduling performed by the basic
         operating system. In this mode only the monitor process
         is active.



4.3.2    *G̲O̲

         The command continues the scheduling performed by the
         basic operating system. In this mode the operating
         system is active.

         The monitor mode is indicated by the first character
         in the command line:

         …08…*…08… = OPERATING SYSTEM IS ACTIVE
         …08… …08… = THE SCHEDULING IS STOPPED BY A HALT COMMAND.
         …08…-…08… = THE SCHEDULING IS STOPPED BY A TESTPOINT.



4.4      M̲E̲S̲S̲A̲G̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲S̲ ̲

         The message commands are divided into two groups:

         1)  *CR80    SWITCH  
         2)  *GRTS    SWITCH  

         The command groups are operating on local data buffers:

         1)  MAX 1140 BYTES
         2)  MAX  340 BYTES

         The following switches are implemented for each group:

           SWITCH   = I…02…:  MESSAGE INPUT FROM CONSOLE.
                                      BYTECOUNT ARE UPDATED
                                      IN ACCORDANCE TO THE NUMBER
                                      OF BYTES ENTERED FROM
                                      THE CONSOLE.

           SWITCH   = L            :  LOAD MESSAGE FILE INTO
                                      BUFFER. BYTECOUNT ARE
                                      UPDATED IN ACCORDANCE
                                      TO THE NUMBER OF BYTES
                                      RECEIVED FROM THE FILE.

           SWITCH   = B   BCOUNT   :  SET MESSAGE BYTECOUNT.
                                        BCOUNT   = 0-4 HEX CHARACTERS.
                                      IF NO BYTECOUNT IS SPECIFIED,
                                      THE MESSAGE SIZE IS SET
                                      TO 0.

           SWITCH   = E   BYTENO ^ :  EXAMINE/CHANGE BUFFER
                                      DATA.
                                        BYTENO   = 0-2 HEX CHARACTERS.
                                      IF NO BYTE NUMBER IS SPECIFIED,
                                      THE FIRST BYTE IN THE
                                      BUFFER IS ENTERED.

           SWITCH   = D            :  DUMP CONTENTS OF MAX BUFFER.

           SWITCH   = M            :  DUMP MESSAGE BUFFER.

           SWITCH   = S            :  SEND MESSAGE TO PC-LTU.

           SWITCH   =   CR         :  SEND MESSAGE TO THE CONCERNED
                                      DEVICE. (CR80/GRTS)



4.5      T̲E̲S̲T̲ ̲P̲O̲I̲N̲T̲ ̲C̲O̲M̲M̲A̲N̲D̲S̲

         The test point commands are divided into two groups:

         1)  Internal PC-program test points
         2)  Interface test points

         Each test point group allows the test monitor to execute
         specified operations depending on the test point type.

         A special command has been implemented to allow the
         monitor to stop the further program execution after
         a test point has been entered. In this mode only the
         test monitor is active.

         *STOP:  The main program is stopped if a test point
                 is entered.
         *CONT:  The main program continues normally after a
                 test point has been executed.

         *GO:    The test point is exited and the main program
                 continues normally.



4.5.1    I̲n̲t̲e̲r̲n̲a̲l̲ ̲T̲e̲s̲t̲ ̲P̲o̲i̲n̲t̲s̲

         The internal test points are implemented as subroutines
         called from the PC-program. By means of the test point
         commands, which are described below, it is possible
         to establish or suspend the display of a specified
         number of locations at different test points. The locations
         and the test points are selected in accordance with
         the relevant input and output variables for each sub-module
         which has been implemented.

         The following test point commands are available:

         *TESTP1:    Establish test point 1 (Routine: TSTP1)
         *TESTP2:    Establish test point 2 (Routine: TSTP2)
         *TESTP3:    Establish test point 3 (Routine: TSTP3)
         *TESTP3E:   Establish an extended dispslay of test
                     point 3
         *TESTP4:    Establish test point 4 (Routine TSTP4)
         *NOTEST:    Suspend all test points.

         The test points includes a number of variabales, which
         are names as the assembler lables. 


         T̲e̲s̲t̲ ̲p̲o̲i̲n̲t̲ ̲1̲ ̲f̲o̲r̲m̲a̲t̲:̲

         *TEST POINT 1
          COMMAND ID = 00   RESULT = 00

          EXETAB:
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

          MESSAGE:
          0000:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         T̲e̲s̲t̲ ̲p̲o̲i̲n̲t̲ ̲2̲ ̲f̲o̲r̲m̲a̲t̲:̲

         *TEST POINT 2
          COMMAND ID=00 LDMCOD=00 PARST=00 BCCST=00

          MESSAGE:

          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         T̲e̲s̲t̲ ̲p̲o̲i̲n̲t̲ ̲3̲ ̲f̲o̲r̲m̲a̲t̲:̲

         *TEST POINT 3

          EVENT=00 ACTION=00 SEQID=00 STATE=00 RESULT=00
          IBCNT=0000 OBCNT=0000 ACKTOS=00

          MESSAGE:
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         E̲x̲t̲e̲n̲d̲e̲d̲ ̲d̲i̲s̲p̲l̲a̲y̲ ̲o̲f̲ ̲t̲e̲s̲t̲ ̲p̲o̲i̲n̲t̲ ̲3̲:̲

         *TEST POINT 3
          EVENT=00 ACTION=00 SEQID=00 STATE=00 RESULT=00
          LAST STATES:       SEQID(00)STATE(00)
          IBCNT=0000 OBCNT=0000 ACKTOS=00

          MESSAGE:
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00



         T̲e̲s̲t̲ ̲p̲o̲i̲n̲t̲ ̲4̲ ̲f̲o̲r̲m̲a̲t̲:̲

         *TEST POINT 4
          NAKCNT=00 OBCNT=00 ACKTOS=00
          MESTRA=0000 MESRET=0000 INFMRC=0000 FRAMER=0000
          EXETAB:
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00



4.5.2    I̲n̲t̲e̲r̲f̲a̲c̲e̲ ̲T̲e̲s̲t̲ ̲P̲o̲i̲n̲t̲s̲

         The interface test points are implemented as subroutines
         called from the interface drivers (main-bus driver/V24-driver).
         The interface commands are able to allow simulation
         or inspection of the message flow between the drivers
         and the PC main program.

         The following test point commands are available:

         *SCR80:     Simulate CR80 main-bus driver.
         *MCR80:     Inspect CR80 message flow.
         *UCR80:     Normal use of CR80 main-bus driver.
         *SGRTS:     Simulate GRTS V24-driver.
         *MGRTS:     Inspect GRTS message flow.
         *UGRTS:     Normal use of GRTS V24-driver.
         *STATUS:    Show status of the CR80 and GRTS test points.
                     Test point symbols:
                     USE: The driver operates without test points.
                     MON: The messages to and from the driver
                     are displayed and passed to the receiver.
                     SIM: The messages to and from the driver
                     are displayed but not passed to the receiver.
                     No messages can be sent to the CR80 or
                     GRTS in this mode.


         Interface test points formats:

         M̲e̲s̲s̲a̲g̲e̲ ̲r̲e̲c̲e̲i̲v̲e̲d̲ ̲f̲r̲o̲m̲ ̲C̲R̲8̲0̲:̲

         *CR80 - PC
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         M̲e̲s̲s̲a̲g̲e̲ ̲s̲e̲n̲t̲ ̲t̲o̲ ̲C̲R̲8̲0̲:̲

         *PC -   CR80
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         M̲e̲s̲s̲a̲g̲e̲ ̲r̲e̲c̲e̲i̲v̲e̲d̲ ̲f̲r̲o̲m̲ ̲G̲R̲T̲S̲:̲

         *GRTS - PC
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00

         M̲e̲s̲s̲a̲g̲e̲ ̲s̲e̲n̲t̲ ̲t̲o̲ ̲G̲R̲T̲S̲

         *PC  -  GRTS
          0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00
          0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
         00



4.6      P̲C̲ ̲T̲E̲S̲T̲ ̲S̲U̲P̲P̲O̲R̲T̲ ̲C̲O̲M̲M̲A̲N̲D̲S̲

         The following commands have been implemented to support
         the PC sub-module test. By means of these commands,
         it is possible to set up different test conditions,
         which are required to complete the PC test procedures.



4.6.1    M̲o̲d̲i̲f̲y̲ ̲L̲o̲c̲a̲l̲ ̲P̲C̲ ̲M̲e̲m̲o̲r̲y̲

         The following commands are able to modify local PC
         variables:

         *SETSTATE   CODE

          CODE  =  1-2 Hex characters

         This command sets the current PC state in the PC-Handler
         module. The monitor updates the state without a validation
         check.


         *SEQID  CODE

          CODE  =  00H/10H

         This command sets the current sequence identifier in
         
         the PC-Handler module. Only two sequence id. codes
         are 
         accepted.

         *SETSTATUS  CODE

          CODE  =  1-2 Hex characters

         The command updates the GRTS buffer status to the 
         specified code. All buffers sent from the GRTS Handler
         contain hereafter this code.

         *OBCNT  COUNT

          COUNT  =  1-4 Hex characters

         This command updates the outgoing bytecount location
         "OBCNT".

         *IBCNT  COUNT

          COUNT = 1-4 Hex characters.

         This command updates the incoming bytecount location
         "IBCNT".

         *OLCNT  COUNT

          COUNT  =  1-2 Hex characters.

         This command updates the answer timeout counter "OLCNT".
         If the count is set to 00H, the timeout is disabled.
         The COUNT is equal to the time in seconds.


4.6.2    S̲i̲m̲u̲l̲a̲t̲e̲ ̲L̲o̲c̲a̲l̲ ̲P̲C̲-̲E̲v̲e̲n̲t̲

         The following commands are able to simulate different
         local PC-events:

         *OLTOUT

         This command sets the answer timeout flag in the PC
         handler module.

         *NAKEXC

         This command sets the nak exceeded flag in the 
         PC-Handler module.

         *DTERR

         This command sets the data transmission error flag
         in 
         the PC-Handler module.