ASMB,R,L,C
      HED DVR62D -- 2313B DRIVER FOR RTE SYSTEMS WITH DMS 
*     NAME:    DVR62D 
*     SOURCE:  02313-18001 REV.A
*     RELOC:   02313-16001 REV.A
*     PGMR:    RHB
* 
*  ***************************************************************
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1975.  ALL RIGHTS     *
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,      *
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT*
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.       *
*  ***************************************************************
* 
      NAM DVR62D 02313-16001 REV.A 750505 
      ENT I.62,C.62 
      EXT $XDMP     SET USER MAP ROUTINE                 *X*
      EXT $LPSA     LAST PAGE OF S.A.M.                  *X*
      EXT $MPFT     FENCE TABLE USED TO FIND             *X*
*                                   LOWEST LEGAL BUFFER ADDR
      SPC 2 
*  EXTENDED MEMORY VERSION
      SPC 2 
*  THIS DRIVER OPERATES THE 2313B SUBSYSTEM IN THE RTE-III
*  ENVIRONMENT.  IT REQUIRES THE USE OF INTERFACE ROUTINES
*  TO SIMPLIFY OPERATION.  IT CAN, HOWEVER, BE CALLED 
*  DIRECTLY BY AN EXEC CALL IF THE USER FOLLOWS THE 
*  FOLLOWING FORMAT:
* 
*    FORTRAN:  CALL EXEC(ICODE,ICNWD,IQUE,N)
* 
*  FOR RTE VERSIONS WHICH SUPPORT CLASS I/O A CLASS I/O 
*  EXEC CALL CAN BE MADE IN THE FORMAT: 
* 
*    FORTRAN:  CALL EXEC(ICOD,ICNWD,IQUE,NWORD,N,IPRM,ICLAS)
* 
* 
*    ASSEMBLY:
*     (NORMAL)               (CLASS I/O)
* 
*     EXT EXEC               EXT EXEC 
*      .                        . 
*      :                        . 
*     JSB EXEC                JSB EXEC
*     DEF *+5                 DEF *+8 
*     DEF ICODE               DEF ICOD WRITE REQUEST
*     DEF ICNWD               DEF ICNWD 
*     DEF IQUE                DEF IQUE
*     DEF N                   DEF NWORD  SEE NOTE BELOW 
*                             DEF N 
*                             DEF IPRM (PARAMETER PLACE HOLDER) 
*                             DEF ICLASS
*   <RETURN>                   <RETURN> 
*      .
*      :
* 
*    WHERE: 
* 
*      ICODE=2 (NORMAL CALLS ASSUME WRITE PATH) 
*      ICOD =18(CLASS CALLS ASSUME WRITE PATH)
*      ICNWD=BITS 0-5 ARE THE LOGICAL UNIT #
*              BIT 6 IS 1 TO SPECIFY DMA NEEDED 
*              (NOT USED FOR REMOTE,I.E.,SUBCHANNEL 1 - SEE BELOW)
*       IQUE=ADDRESS OF QUEUE BUFFER CONTAINING 
*                ALL OPERATIONS 
*          N=NUMBER OF "ENTRIES" IN IQUE
*      NWORD=NUMBER OF WORDS IN QUEUE BUFFER ONLY.  NOTE THAT ANY 
*              BUFFER POINTED TO BY THE QUEUE BUFFER MUST NOT BE
*              IN A DISK RESIDENT AREA.  IN ADDITION, NO BUFFER 
*              POINTER IN THE QUEUE BUFFER SHOULD POINT TO AN AREA
*              INCLUDED IN THE QUEUE BUFFER WORDS (NWORDS).  THE
*              QUEUE BUFFER WILL BE MOVED TO SYSTEM MEMORY, AND 
*              ANY POINTERS TO DATA BUFFERS IN THE QUEUE BUFFER WILL
*              NOT BE RELOCATED TO POINT TO NEW LOCATION OF QUEUE 
*              BUFFER IN SYSTEM MEMORY.  IF QUEUE BUFFER
*              CONTAINS POINTERS TO ELSEWHERE IN QUEUE BUFFER 
*              THESE POINTERS WILL NOT BE ADJUSTED WHEN THE 
*              QUEUE BUFFER IS MOVED TO SYSTEM MEMORY. 
*       IPRM =A PARAMETER PLACE HOLDER
*       ICLAS=CLASS NUMBER
* 
* 
*  IQUE CONTAINS A NUMBER OF MULTIPLE WORD ENTRIES
*  WHICH DEFINE OPERATIONS.  MOST PRACTICAL USES OF 
*  THE 2313B WILL REQUIRE MORE THAN ONE OPERATION.
*  ALL OPERATIONS IN IQUE ARE EXECUTED IN ONE CALL
*  TO THE DRIVER.  THIS METHOD PREVENTS ANOTHER 
*  PROGRAM FROM CHANGING SUB-SYSTEM PARAMETERS
*  DURING RELATED OPERATIONS. 
      SPC 2 
*  ONE WORD ENTRIES:
* 
*     TYPE = 1     ISSUE SYSTEM NORMALIZE (NO DMA)
* 
*     TYPE = 2     ISSUE 2930A LOOP ESCAPE (NO DMA) 
* 
*  THREE WORD ENTRIES:
* 
*     TYPE = 3     OUTPUT NUMB WORDS (DMA AVAILABLE - LOCAL ONLY) 
*     NUMB = NUMBER TO OUTPUT 
*     BUFF = ADDRESS OF OUTPUT BUFFER 
* 
*     TYPE = 4     INPUT NUMB WORDS  (DMA AVAILABLE - LOCAL ONLY) 
*     NUMB = NUMBER TO INPUT
*     BUFF = ADDRESS OF INPUT BUFFER
* 
*  FOUR WORD ENTRIES: 
* 
*     TYPE = 5     OUTPUT THEN INPUT NUMB PAIRS (NO DMA)
*     NUMB = NUMBER OF OUT-IN PAIRS 
*     OBUF = ADDRESS OF OUTPUT BUFFER 
*     IBUF = ADDRESS OF INPUT BUFFER
* 
*     TYPE = 6     OUTPUT NUMB ADRS THEN DATA PAIRS (NO DMA)
*     NUMB = NUMBER OF OUT-OUT PAIRS
*     OBF1 = ADDRESS OF CHANNEL BUFFER
*     OBF2 = ADDRESS OF DATA BUFFER 
* 
*     TYPE = 7     OUTPUT NUMB CHAN THEN DATA PAIRS (NO DMA)
*     NUMB = NUMBER OF DATA POINTS TO OUTPUT
*     CHAN = ADDRESS OF THE CHANNEL NUMBER
*     OBUF = ADDRESS OF DATA BUFFER 
* 
*     TYPE = 8     OUTPUT NUMB DATA POINTS SEQUENTIALLY (NO DMA)
*     NUMB = NUMBER OF DATA POINTS TO OUTPUT
*     OBF1 = ADDRESS OF 2 WORD BUFF CONTAINING START & END CHAN 
*     OBF2 = ADDRESS OF DATA BUFFER 
* 
*     TYPE = 9     OUTPUT NUMB ERASE COMMANDS (NO DMA)
*     NUMB = NUMBER OF DACS TO ERASE
*     OBUF = ADDRESS OF CHANNEL BUFFER
*     CMND = ADDRESS OF THE DATA WORD (ERASE) 
* 
*  ADDITIONAL COMMENTS: 
* 
*  IN ALL CASES NUMB MUST NOT BE LESS THAN 0.  FOR ALL BUT
*  TYPE 3 NUMB MUST BE GREATER THEN 0.  FOR TYPE 3 NUMB 
*  MAY BE 0 TO INDICATE OUTPUT BUT DO NOT ENCODE. 
*  (FOR REMOTE NO OUTPUT WILL BE DONE BUT THE WORD WILL 
*  BE SAVED TO BE OUTPUT FOR NEXT ENTRY IF NEEDED.) 
* 
*  FOR TYPE 3 WITH DMA REQUESTED, DMA WILL BE USED
*  WHEN NUMB IS GREATER THAN 2.  FOR TYPE 4 WITH DMA REQUESTED, 
*  DMA WILL BE USED.  DMA IS NEVER USED FOR REMOTE (SUBCHANNEL 1) 
* 
*     TYPES 3 THROUGH 7 MAKE THIS DRIVER A GENERAL
*     PURPOSE MICROCIRCUIT I/O CARD DRIVER
*     (MUST BE SUBCHANNEL 0 -- SEE BELOW) 
* 
*     THE RTE MUST BE CONFIGURED FOR SUBCHANNEL 0 FOR LOCAL,
*     SUBCHANNEL 1 FOR REMOTE.
      SKP 
********************************************************************
*                                                                  *
*                                                                  *
*        >>>>>>> IMPORTANT NOTE FOR FUTURE MODIFIERS <<<<<<<       *
*                                                                  *
*                                                                  *
*  THIS VERSION OF THE 2313 DRIVER WAS ADAPTED FROM THE NORMAL     *
*   VERSION TO SUPPORT RTE SYSTEMS WITH EXTENDED MEMORY (GREATER   *
*   THAN 32K).  THE NEW CODE IS MARKED WITH *X* (FOR "EXTENDED"    *
*   MEMORY) IN THE COMMENTS FIELD.  THIS VERSION IS ENTIRELY       *
*   INCOMPATIBLE WITH NON-MAPPED SYSTEMS.                          *
*                                                                  *
*                                                                  *
********************************************************************
      SKP 
************************
*                      *
*  INITIATION SECTION  *
*                      *
************************
      SPC 2 
I.62  NOP 
      JSB SSTAT     SAVE DMS STATUS AT ENTRY             *X*
      CLB           CLEAR THE                            *X*
      STB MFLAG      THE MAP-OK FLAG.               *X* 
      JSB CNFGR    CONFIGURE ALL I/O INSTRUCTIONS 
      LDA BIT7     FORM MASK
      CMA            TO TURN OFF
      AND EQT5,I       XMSN ERROR STATUS BIT
      STA EQT5,I         AND RESTORE STATUS WORD
      DLD INTBA,I  \
      CPA EQT1      \ 
      JMP HVDMA      > CHECK FOR DMA ASSIGNED 
      CPB EQT1      / 
      JMP HVDMA    /
      SPC 2 
*                  ** VALID REQUEST CHECK **
      SPC 1 
      LDA EQT6,I    GET REQUEST CONTROL WORD
      LDB A 
      RBL 
      SSB,SLB,RSS   CLASS REQUEST?
      JMP NORML     NORMAL--NOT CLASS REQUEST 
      SPC 1 
*     CHECK FOR LEGAL CLASS WRITE-READ REQUEST
      SPC 1 
      LDB EQT9,I    GET FIRST OPTIONAL PARAMETER
      AND MASK      MASK REQUEST CODE 
      CPA CLASS     LEGAL CLASS REQUEST?
      SZB,RSS       1ST OPTIONAL PARAMETER GIVEN? 
      JMP ERROR     NO, ERROR 
      STB EQT8,I    YES, TAKE AS # OF ENTRIES COUNT 
      JMP CHKQU     GO ON TO CHECK QUEUE BUFFER 
NORML EQU * 
      AND B77       MASK REQUEST TYPE 
      CPA TWO      WRITE REQUEST? 
      JMP CHKQU      YES - GOOD 
      CPA THREE    CONTROL REQUEST? 
      CLA,INA,RSS    YES - A=2 FOR RETURN 
ERROR EQU * 
      CLA          READ REQUEST - A=1 FOR RETURN
      INA            (ALSO FOR BAD ENTRIES) 
      JMP I.RTN    ERROR RETURN 
      SPC 2 
MASK  OCT 140077    CLASS REQUEST MASK
CLASS OCT 140002    CLASS WRITE REQUEST WORD
MFLAG BSS 1         FLAG SET MEANS MAPS SETUP            *X*
      SKP 
*  THIS ROUTINE CHECKS A SPECIFIED BUFFER TO SEE IF ANY PART
*   OF IT LIES IN A DISK RESIDENT PROGRAM AREA.  IF ANY PART
*   OF THE BUFFER IS IN A DISK AREA THEN RETURN IS TO (P+1),
*   OTHERWISE TO (P+2). 
* 
*  ENTER WITH (A)=BUFFER ADDRESS, (B)=BUFFER LENGTH 
* 
*  OPERATION:  WE CHECK ALL PHYSICAL PAGES (REPEAT, PHYSICAL) 
*   OCCUPIED WHOLLY OR PARTIALLY BY A BUFFER.  IF ANY SUCH PAGE 
*   IS ABOVE THE LAST PAGE OF SYSTEM AVAILABLE MEMORY, THEN 
*   IT MUST BE PART OF A DISC PARTITION .  NOTE THAT
*   ALL PAGES OF THE BUFFER ARE CHECKED SO THAT PARTITION NEED
*   NOT CONSIST OF CONTIGUOUS PAGES.
* 
*   THE USER (REPEAT, USER) MAP IS DUMPED TO ACCOMPLISH THIS
*   TEST.  NOTE THAT ALL BUFFERS CHECKED HERE WILL BE VISIBLE 
*   FROM THE USER MAP. (THERE IS NO WAY FOR USER TO GET A 
*   BUFFER INTO S.A.M., EXCEPT FOR CLASS I/O CALL Q-BUFFER
*   WHICH IS NOT CHECKED HERE....AND MUST NOT BE!!! 
      SPC 2 
DRA?  NOP           ENTRY  (A)=ADDRESS,(B)=LENGTH        *X*
      SSA           ERROR IF BUFFER ADDR LESS            *X*
      JMP ERROR       THAN ZER0                          *X*
      SZB,RSS       MAKE ZERO LENGTH BUFFERS             *X*
      INB            LOOK LIKE ONE WORD FOR THIS CODE    *X*
      STA TEMP4                                          *X*
      ADB A         ERROR IF                             *X*
      ADB N1           END ABOVE                         *X*
      SSB               77777B.                          *X*
      JMP ERROR                                          *X*
      CLA           CLEAR A TEMPORARY TO KEEP TRACK      *X*
      STA SETMP       OF PAGES IN DISC PART OF MEM       *X*
      LDA TEMP4     PUT FWA IN A, LWA IN B               *X*
      LSR 10         GET PAGE NUMBERS                    *X*
      AND B77         AND ISOLATE THEM.                  *X*
      SPC 1 
      CMB           GET -NUMBER OF PAGES STRADDLED       *X*
      ADB A          BY BUFFER AND                       *X*
      STB TEMP4       SAVE AS LOOP COUNTER.              *X*
      ADA P32       CONVERT START PAGE TO MAP#           *X*
      SPC 1 
LOOP  LDB TEMP.     POINT TO PLACE TO DUMP MAP           *X*
      LDX N1        DUMP ONLY ONE REGISTER               *X*
      XMM           DUMP MAP TO MEMORY                   *X*
      LDB TEMP7     PICK UP MAP REG                      *X*
      RBL            ERROR OF BIT 14                     *X*
      SSB             IS SET.                            *X*
      JMP ERROR        (WRITE                            *X*
      RBR               PROTECTED PAGE).                 *X*
      SWP           MASK TO 
      AND M1777      PHYSICAL PAGE
      SWP             ADDRESS.
      CMB,INB       IF PHYSICAL PAGE ADDR                *X*
      ADB $LPSA      IS ABOVE S.A.M                      *X*
      SSB             THEN INCR COUNTER - MUST BE        *X*
      ISZ SETMP        IN DISC AREA.                     *X*
      ISZ TEMP4     BUMP COUNTER                         *X*
      JMP LOOP       AND CONTINUE IF MORE.               *X*
      SPC 1 
      LDA SETMP     IF ANY PAGES IN DISC AREA            *X*
      SZA,RSS         THEN RETURN AT P+1                 *X*
      ISZ DRA?          ELSE AT P+2                      *X*
DRADS JMP DRA?,I    RETURN TO CALLER                     *X*
      SPC 2 
N1    DEC -1                                             *X*
P32   DEC 32                                             *X*
TEMP. DEF TEMP7                                          *X*
M1777 OCT 1777
      SKP 
*                  ** CHECK QUEUE BUFFER ** 
      SPC 1 
CHKQU EQU * 
      JSB SETMP     SET USER MAP IF NEEDED               *X*
      LDA EQT8,I   CHECK QUEUE
      CMA,INA        BUFFER # OF ENTRIES
      SSA,RSS          >0?
      JMP ERROR          NO - REJECT
      SPC 2 
*                  ** VALID ENTRY TYPES CHECK **
      SPC 1 
      LDB EQT7,I   GET & SAVE 
      STB TEMP1      QUEUE BUFFER ADDRESS 
      STA TEMP2    SAVE ENTRY COUNTER 
      STB TEMP3 
      SPC 1 
L1    EQU * 
      LDB TEMP1,I  GET CURRENT ENTRY TYPE NUMBER
      ISZ TEMP1    ADVANCE QUEUE BUFFER ADDRESS 
      CPB ONE      TYPE = 1?
      RSS            YES - OK 
      CPB TWO      TYPE = 2?
      JMP L6         YES - OK 
      LDA TEMP1,I  GET NUMBER OF
      STA TEMP5      OPERATIONS AND 
      CMA,SSA,RSS      CHECK FOR <0 
      JMP ERROR          <0 SO REJECT 
      CPB THREE    TYPE = 3?
      JMP L2         YES - OK 
      SZB           IF ENTRY TYPE = 0 THEN ERROR
      CMA,SZA,RSS  CHECK # OF OPERATIONS FOR 0
      JMP ERROR        =0 SO REJECT 
      LDA MIN10    IS TYPE
      ADA B          MORE THAN
      SSA              THREE BUT
      SSB                LESS THAN TEN? 
      JMP ERROR            NO 
      SPC 2 
*                  ** CORE RESIDENT CHECK **
* 
*     IF THE QUEUE BUFFER IS NOT IN A DISK RESIDENT AREA (EITHER RT 
*     OR BACKGROUND) THEN NO DATA BUFFER MAY BE IN A DISK RESIDENT
*     AREA. (IF CLASS I/O CALL THEN QUEUE BUFFER IS IN SYS. AV. MEM.
*     WHICH IS NOT A DISK RESIDENT AREA.) 
* 
L2    EQU * 
      STB TEMP6     SAVE (B)
      ISZ TEMP1     POINT TO BUFFER ADDR
      LDA EQT6,I    GET REQUEST CONTROL WORD
      RAL           ROTATE SIGN BIT TO BIT 0
      SSA,SLA,RSS   CLASS CALL?  (BITS 14 & 15) 
      RSS           NORMAL CALL - NOT CLASS 
      JMP CORE      YES-BUFFR NOT TO BE IN DISK AREA
      LDA TEMP3     GET QUEUE ADDR
      CLB           SET LENGTH TO 0 
      JSB DRA?      NORML CALL--CHECK QUEUE LOCATION
      JMP NOSWP     QUEUE IN DISK AREA-NOT SWAPABLE 
CORE  EQU *         MAKE SURE BUFFR NOT IN DISK AREA
      JSB CPASS     FETCH BUFFER LENGTH                  *X*
      LDA TEMP1,I   FETCH BUFFER ADDRESS                 *X*
      JSB DRA?      CHECK BUFFER LOCATION 
      JMP ERROR     BUFFER IS IN DISK AREA -- ERROR 
      JMP NSWP2     BUFFER IS IN CORE AREA               *X*
      SPC 1 
NOSWP EQU *         QUEUE IN DISC AREA                   *X*
      JSB CPASS     FETCH BUFFER LENGTH                  *X*
      LDA TEMP1,I   FETCH BUFFER ADDR                    *X*
      JSB DRA?      CHECK BUFFER ADDRESS ANYHOW          *X*
      NOP           (DON'T CARE IF BUFF IN DISC AREA)    *X*
NSWP2 EQU *         BUFFER NOT IN DISC AREA IF ENTRY HERE*X*
      LDB TEMP6     RESTORE (B) 
      SSB          FIRST BUFFER?
      JMP L3         NO 
      CPB FOUR       YES - TYPE = 4?
      JMP L4                 YES - CHK VALIDITY 
      CPB THREE    TYPE = 3?
      JMP L5         YES - BUFFER OK
      CMB,INB      SET FOR SECOND BUFFER CHECK
      JMP L2
      SPC 2 
CPASS NOP                                                *X*
      LDB TEMP5     GET DATA LEN FROM Q                  *X*
      LDA TEMP6     GET TYPE & BUFF NUMBER FLG           *X*
      SSA           1ST BUFFER?                          *X*
      JMP PASS2     NO, 2ND                              *X*
      CPA SEVEN     YES, IF TYPE 7 CALL                  *X*
      CLB,INB        THEN LENGTH IS 1                    *X*
      CPA EIGHT       ELSE IF TYPE 8                     *X*
      LDB TWO          THE LENGTH IS 2                   *X*
      JMP CPASS,I   RETURN                               *X*
      SPC 1 
PASS2 CMA,INA       2ND BUFF, COMPL FLAG FOR TYPE        *X*
      CPA NINE      IF TYPE 9                            *X*
      CLB,INB        THEN 2ND BUFF LEN IS 1              *X*
      JMP CPASS,I   RETURN                               *X*
      SPC 1 
NINE  DEC 9                                              *X*
MIN10 DEC -10 
      SPC 2 
L3    EQU * 
      CMB,INB      RECOVER TYPE 
      CPB FIVE     TYPE = 5?
      RSS            YES - CHECK VALIDITY 
      JMP L5         NO - BUFFERS OK
      SKP 
*                  ** VALID BUFFER CHECK ** 
*          (BUFFER MUST BE ABOVE START OF SSGA FOR MAPPED SYSTEMS)
      SPC 1 
L4    EQU * 
      LDA MPFT.,I   GET MPFT ADDRESS                     *X*
      ADA FOUR      POINT TO SSGA BASE                   *X*
      LDA A,I        AND LOAD IT                         *X*
      CMA,INA       NEGATE
      ADA TEMP1,I   ADD BUFFER ADDR 
      SSA           < 0?
      JMP ERROR     YES - IN SYSTEM AREA - ERROR
*     (UPPER BOUND CHECK DELETED FOR MAPPED SYSTEMS)                     *X*
      SPC 2 
*                  ** CHECKED ALL ENTRIES? ** 
      SPC 1 
L5    ISZ TEMP1    ADVANCE QUEUE ADDRESS
L6    ISZ TEMP2    CHECKED ALL ENTRIES? 
      JMP L1         NO - CHECK NEXT ONE
      SKP 
*                  ** NEED DMA? **
      SPC 1 
      LDA REMOT     GET REMOTE/LOCAL FLAG 
      SLA           REMOTE? 
      JMP NODMA     YES, NO DMA 
      LDA EQT6,I   CHECK CONWD BIT 6
      AND BIT6       TO SEE IF DMA
      SZA,RSS          HAS BEEN REQUESTED BY USER 
      JMP NODMA    NOT REQUESTED
      LDA FIVE     COMPLETE TO GET
      JMP I.RTN       DMA ASSIGNED                       *X*
      SPC 1 
*                  ** DON'T USE DMA **
      SPC 1 
NODMA EQU * 
      LDA EQT6,I   MAKE SURE THAT CONWD 
      AND BX177       IS CLEAR OF 
      STA EQT6,I       UNDESIRABLE BITS 
      JMP OP
      SPC 2 
BX177 OCT 140177
BIT7  OCT 200 
      SPC 2 
*                  ** HAVE DMA ** 
      SPC 1 
HVDMA EQU * 
      JSB SETMP     MAKE SURE MAP IS SET UP              *X*
      LDA EQT6,I   SET CONWD
      AND BX177      FOR DMA
      IOR BIT7         OPERATIONS 
      STA EQT6,I         WHERE POSSIBLE 
      SPC 1 
      LDB EQT9,I
      RAL           IF CLASS I/O
      SSA,SLA,RSS     THEN MOVE NUMBER OF 
      RSS               ENTRIES TO EQT 8 IN 
      STB EQT8,I          PLACE OF BUFF LENGTH
      SPC 1 
      LDA CHAN      ODD CHANNEL MEANS PORT 0             *X*
      IOR BIT15     SIGN BIT MEANS COPY USER MAP         *X*
      XMA           GO COPY USER MAP TO DMA MAP          *X*
      SPC 1 
      LDA CHAN     CONFIGURE
      JSB DCFGR      DMA INSTRUCTIONS 
      SPC 2 
*                  ** CALL MAIN PROCESSOR **
      SPC 1 
OP    EQU * 
      LDA EQT8,I   CREATE 
      CMA            NUMBER OF ENTRIES
      STA EQT8,I       COUNTER
      CCA          FORCE
      STA EQT10,I    START-UP 
      JSB PROC     START OPERATIONS 
      CLA,RSS      OPERATION INITIATED
      LDA FOUR     IMMEDIATE COMPLETION 
      CLB 
I.RTN JSB MAPCK     RESET USER MAP IF CHANGED            *X*
      JMP I.62,I     THEN RETURN TO SYSTEM               *X*
      SPC 2 
THREE DEC 3 
FIVE  DEC 5 
SIX   DEC 6 
MPFT. DEF $MPFT                                          *X*
                                                                                                                                                                                                                                        