          CTEXT  DSI$PACK UNPACK REGISTERS                               R152_OS        1
          SPACE  4                                                       R152_OS        2
 QUAL$    IF     -DEF,QUAL$                                              R152_OS        3
          QUAL   DSIPUR                                                  R152_OS        4
 QUAL$    ENDIF                                                          R152_OS        5
          BASE   M                                                       R152_OS        6
*         COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992               SCW_1080       1
          SPACE  4,10                                                    R152_OS        8
***       DSI$PACK_UNPACK_REGISTERS                                      R152_OS        9
*         B. R. HANSON.      85/05/14.                                   R152_OS       10
          SPACE  4,10                                                    R152_OS       11
***              PROVIDES ROUTINES TO MANAGE THE MAINTENANCE REGISTER    R152_OS       12
*         BUFFERS.                                                       R152_OS       13
 GLOBAL   SPACE  4,10                                                    R152_OS       14
**        GLOBAL DATA.                                                   R152_OS       15
                                                                         R152_OS       16
                                                                         R152_OS       17
 RHDR     BSSZ   4           HEADER WORD                                 R152_OS       18
 MRVAL    BSSZ   4           BUFFER FOR PACKED DATA                      R152_OS       19
 RINX     CON    0           OFFSET TO MR BUFFER                         R152_OS       20
 PAC      SPACE  4,10                                                    R152_OS       21
**        PAC - PACK MAINTENANCE REGISTERS FROM HARDWARE BUFFER.         R152_OS       22
*                                                                        R152_OS       23
*         ENTRY  (RDATA) = REGISTER TO BE PACKED.                        R152_OS       24
*                                                                        R152_OS       25
*         EXIT   (MRVAL) = PACKED REGISTER.                              R152_OS       26
                                                                         R152_OS       27
                                                                         R152_OS       28
 PAC      SUBR               ENTRY/EXIT                                  R152_OS       29
          LDM    RDATA                                                   R152_OS       30
          SHN    10                                                      R152_OS       31
          LMM    RDATA+1                                                 R152_OS       32
          STML   MRVAL                                                   R152_OS       33
          LDM    RDATA+2                                                 R152_OS       34
          SHN    10                                                      R152_OS       35
          LMM    RDATA+3                                                 R152_OS       36
          STML   MRVAL+1                                                 R152_OS       37
          LDM    RDATA+4                                                 R152_OS       38
          SHN    10                                                      R152_OS       39
          LMM    RDATA+5                                                 R152_OS       40
          STML   MRVAL+2                                                 R152_OS       41
          LDM    RDATA+6                                                 R152_OS       42
          SHN    10                                                      R152_OS       43
          LMM    RDATA+7                                                 R152_OS       44
          STML   MRVAL+3                                                 R152_OS       45
          UJN    PACX        RETURN                                      R152_OS       46
 UPR      SPACE  4,10                                                    R152_OS       47
**        UPR - UNPACK REGISTER.                                         R152_OS       48
*                                                                        R152_OS       49
*         ENTRY  (MRVAL - MRVAL+3) = PACKED REGISTER.                    R152_OS       50
*                                                                        R152_OS       51
*         EXIT   (RDATA - RDATA+7) = UNPACKED REGISTER.                  R152_OS       52
                                                                         R152_OS       53
                                                                         R152_OS       54
 UPR      SUBR               ENTRY/EXIT                                  R152_OS       55
          LDML   MRVAL                                                   R152_OS       56
          STM    RDATA+1                                                 R152_OS       57
          SHN    -10                                                     R152_OS       58
          STM    RDATA                                                   R152_OS       59
          LDML   MRVAL+1                                                 R152_OS       60
          STM    RDATA+3                                                 R152_OS       61
          SHN    -10                                                     R152_OS       62
          STM    RDATA+2                                                 R152_OS       63
          LDML   MRVAL+2                                                 R152_OS       64
          STM    RDATA+5                                                 R152_OS       65
          SHN    -10                                                     R152_OS       66
          STM    RDATA+4                                                 R152_OS       67
          LDML   MRVAL+3                                                 R152_OS       68
          STM    RDATA+7                                                 R152_OS       69
          SHN    -10                                                     R152_OS       70
          STM    RDATA+6                                                 R152_OS       71
          UJN    UPRX        RETURN                                      R152_OS       72
 GNR      SPACE  4,10                                                    R152_OS       73
**        GNR - GET NEXT REGISTER.                                       R152_OS       74
*                                                                        R152_OS       75
*         ENTRY  (T2) = INDEX INTO REGISTER BUFFER.                      R152_OS       76
*                (RINX) = OFFSET TO MR BUFFER.                           R152_OS       77
*                                                                        R152_OS       78
*         EXIT   (RN) = REGISTER NUMBER.                                 R152_OS       79
*                (RDATA - RDATA+7) = REGISTER DATA.                      R152_OS       80
*                                                                        R152_OS       81
*         CALLS  IRI, UPR.                                               R152_OS       82
                                                                         R152_OS       83
                                                                         R152_OS       84
 GNR      SUBR               ENTRY/EXIT                                  R152_OS       85
          LDML   RINX                                                    R152_OS       86
          ADC    RR                                                      R152_OS       87
          CRML   RHDR,ON                                                 R152_OS       88
          ADD    T2                                                      R152_OS       89
          CRML   MRVAL,ON    FETCH REGISTER DATA                         R152_OS       90
          RJM    UPR         UNPACK REGISTER                             R152_OS       91
          LDML   RHDR,T2                                                 R152_OS       92
          STDL   RN                                                      R152_OS       93
          RJM    IRI         INCREMENT REGISTER INDEX                    R152_OS       94
          LDDL   RN                                                      R152_OS       95
          UJN    GNRX        RETURN                                      R152_OS       96
 SNR      SPACE  4,10                                                    R152_OS       97
**        SNR - STORE NEXT REGISTER.                                     R152_OS       98
*                                                                        R152_OS       99
*         ENTRY  (T2) = INDEX INTO REGISTER BUFFER.                      R152_OS      100
*                (RN) = REGISTER NUMBER.                                 R152_OS      101
*                (RINX) = OFFSET TO MR BUFFER.                           R152_OS      102
*                (RDATA - RDATA+7) = REGISTER DATA.                      R152_OS      103
*                                                                        R152_OS      104
*         EXIT   DATA IS STORED IN THE BUFFER.                           R152_OS      105
*                                                                        R152_OS      106
*         CALLS  IRI, PAC.                                               R152_OS      107
                                                                         R152_OS      108
                                                                         R152_OS      109
 SNR      SUBR               ENTRY/EXIT                                  R152_OS      110
          LDDL   RN          FETCH REGISTER NUMBER                       R152_OS      111
          STML   RHDR,T2                                                 R152_OS      112
          RJM    PAC         PACK REGISTER                               R152_OS      113
          LDML   RINX                                                    R152_OS      114
          ADC    RR                                                      R152_OS      115
          CWML   RHDR,ON                                                 R152_OS      116
          ADD    T2                                                      R152_OS      117
          CWML   MRVAL,ON    STORE REGISTER DATA                         R152_OS      118
          RJM    IRI         INCREMENT REGISTER INDEX                    R152_OS      119
          UJN    SNRX        RETURN                                      R152_OS      120
 IRI      SPACE  4,10                                                    R152_OS      121
**        IRI - INCREMENT REGISTER INDEX.                                R152_OS      122
*                                                                        R152_OS      123
*         ENTRY  (T2) = INDEX INTO REGISTER BUFFER.                      R152_OS      124
*                                                                        R152_OS      125
*         EXIT   (T2) = UPDATED.                                         R152_OS      126
*                                                                        R152_OS      127
*         CALLS  SRB.                                                    R152_OS      128
                                                                         R152_OS      129
                                                                         R152_OS      130
 IRI      SUBR               ENTRY/EXIT                                  R152_OS      131
          AOD    T2                                                      R152_OS      132
          LPN    3                                                       R152_OS      133
          STD    T2                                                      R152_OS      134
          NJN    IRIX        IF NO CHANGE                                R152_OS      135
          LDN    5                                                       R152_OS      136
          RAML   RINX        UPDATE INDEX                                R152_OS      137
          RJM    SRB                                                     R152_OS      138
          UJN    IRIX        RETURN                                      R152_OS      139
 SRB      SPACE  4,10                                                    R152_OS      140
**        SRB - SET UP REGISTER BUFFERS.                                 R152_OS      141
*                                                                        R152_OS      142
*         ENTRY  (A) = INDEX FROM R-REGISTER TO BUFFER.                  R152_OS      143
*                                                                        R152_OS      144
*         EXIT   (RHDR) = CLEARED.                                       R152_OS      145
*                (T2) = 0.                                               R152_OS      146
                                                                         R152_OS      147
                                                                         R152_OS      148
 SRB      SUBR               ENTRY/EXIT                                  R152_OS      149
          STML   RINX                                                    R152_OS      150
          LDN    0                                                       R152_OS      151
          STD    T2                                                      R152_OS      152
          STM    RHDR                                                    R152_OS      153
          STM    RHDR+1                                                  R152_OS      154
          STM    RHDR+2                                                  R152_OS      155
          STM    RHDR+3                                                  R152_OS      156
          UJN    SRBX        RETURN                                      R152_OS      157
          SPACE  4                                                       R152_OS      158
          BASE   *                                                       R152_OS      159
 QUAL$    IF     -DEF,QUAL$                                              R152_OS      160
          QUAL   *                                                       R152_OS      161
 GNR      EQU    /DSIPUR/GNR                                             R152_OS      162
 MRVAL    EQU    /DSIPUR/MRVAL                                           R152_OS      163
 PAC      EQU    /DSIPUR/PAC                                             R152_OS      164
 UPR      EQU    /DSIPUR/UPR                                             R152_OS      165
 SNR      EQU    /DSIPUR/SNR                                             R152_OS      166
 SRB      EQU    /DSIPUR/SRB                                             R152_OS      167
 QUAL$    ENDIF                                                          R152_OS      168
          ENDX                                                           R152_OS      169
