$PAGE"MPE TABLE ACCESS:  LOGICAL DEVICE TABLE EXTENSION (LDTX)"<<04431>>00010000
comment                                                        <<04431>>00012000
                                                               <<04431>>00014000
              overview of device tables                        <<04431>>00016000
              -------------------------                        <<04431>>00018000
                                                               <<04431>>00020000
                                                               <<04431>>00022000
            +---------------------------+<-----dst %16         <<04431>>00024000
            |                           |                      <<04431>>00026000
            |   logical device table    |                      <<04431>>00028000
            |                           |                      <<04431>>00030000
            |          (ldt)            |                      <<04431>>00032000
            |                           |                      <<04431>>00034000
            +---------------------------+                      <<04431>>00036000
            |                           |                      <<04431>>00038000
            |    device class table     |                      <<04431>>00040000
            |                           |                      <<04431>>00042000
            |          (dct)            |                      <<04431>>00044000
            |                           |                      <<04431>>00046000
            +---------------------------+                      <<04431>>00048000
            |                           |                      <<04431>>00050000
            |   logical device table    |                      <<04431>>00052000
            |         extension         |                      <<04431>>00054000
            |          (ldtx)           |                      <<04431>>00056000
            |                           |                      <<04431>>00058000
            +---------------------------+                      <<04431>>00060000
                                                               <<04431>>00062000
                                                               <<04431>>00064000
            logical device table extension (ldtx)              <<04431>>00066000
            -------------------------------------              <<04431>>00068000
                                                               <<04431>>00070000
dst %16 = #14                                                  <<04431>>00072000
sir %12 = #10                                                  <<04431>>00074000
                         zero entry                            <<04431>>00076000
                         ----------                            <<04431>>00078000
                                                               <<04431>>00080000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00082000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00084000
    0 |    highest entry #    |    entry size = 5     |        <<04431>>00086000
      +-----------------------+-----------------------+        <<04431>>00088000
    1 |                                               |        <<04431>>00090000
      +-----------------------------------------------+        <<04431>>00092000
    2 |                                               |        <<04431>>00094000
      +-----------------------------------------------+        <<04431>>00096000
    3 |                                               |        <<04431>>00098000
      +-----------------------------------------------+        <<04431>>00100000
    4 |                                               |        <<04431>>00102000
      +-----------------------------------------------+        <<04431>>00104000
$page                                                          <<04431>>00106000
                         typical entry                         <<04431>>00108000
                         -------------                         <<04431>>00110000
                                                               <<04431>>00112000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00114000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00116000
    0 | s|sd|cp|ns|xs|  reserved |db|      tbrc       |        <<04431>>00118000
      +--+--+--+--+--+-----------+--+-----------------+        <<04431>>00120000
    1 |               device specific                 |        <<04431>>00122000
      +-------                                 -------+        <<04431>>00124000
    2 |             information fields.               |        <<04431>>00126000
      +-------                                 -------+        <<04431>>00128000
    3 |           see the following ldtx              |        <<04431>>00130000
      +-------                                 -------+        <<04431>>00132000
    4 |            descriptor examples.               |        <<04431>>00134000
      +-----------------------------------------------+        <<04431>>00136000
                                                               <<04431>>00138000
where:                                                         <<04431>>00140000
                                                               <<04431>>00142000
s.....seek ahead enable/disable flag (system or pv disc only). <<04431>>00144000
sd....this logical device is a serial disc.                    <<04431>>00146000
cp....this logical device uses the ciper protocol.             <<04431>>00148000
ns....this is a non-shareable (system or pv) disc device.      <<04431>>00150000
xs....if 1, the device supports extension character sets.      <<04431>>00152000
db....if set to 1, debugging is in effect (ciper calls debug). <<04431>>00154000
tbrc..terminal's baud rate code.                               <<04431>>00156000
                                                               <<04431>>00158000
                                                               <<04431>>00160000
                         terminal entry                        <<04431>>00162000
                         --------------                        <<04431>>00164000
                                                               <<04431>>00166000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00168000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00170000
    0 | 0| 0| 0| 0| 0|   reserved   |      tbrc       |        <<04431>>00172000
      +--+--+--+--+--+--------------+-----------------+        <<04431>>00174000
    1 |                      0                        |        <<04431>>00176000
      +-----------------------------------------------+        <<04431>>00178000
    2 |                      0                        |        <<04431>>00180000
      +-----------------------------------------------+        <<04431>>00182000
    3 |                      0                        |        <<04431>>00184000
      +-----------------------------------------------+        <<04431>>00186000
    4 |                      0                        |        <<04431>>00188000
      +-----------------------------------------------+        <<04431>>00190000
                                                               <<04431>>00192000
tbrc...terminal's baud rate code (cps = characters per second).<<04431>>00194000
       0 ==> 240 cps or not determined.                        <<04431>>00196000
       1 ==> 240 cps                                           <<04431>>00198000
       2 ==> 120 cps                                           <<04431>>00200000
       3 ==>  60 cps                                           <<04431>>00202000
       4 ==>  30 cps                                           <<04431>>00204000
       5 ==>  15 cps                                           <<04431>>00206000
       6 ==>  10 cps                                           <<04431>>00208000
       7 ==>  14 cps                                           <<04431>>00210000
$page                                                          <<04431>>00212000
                        serial disc entry                      <<04431>>00214000
                        -----------------                      <<04431>>00216000
                                                               <<04431>>00218000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00220000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00222000
    0 | 0| 1| 0| 0| 0|   reserved   |        0        |        <<04431>>00224000
      +--+--+--+--+--+--------------+-----------------+        <<04431>>00226000
    1 |       serial disc extra data segment #        |        <<04431>>00228000
      +-----------------------------------------------+        <<04431>>00230000
    2 |                      0                        |        <<04431>>00232000
      +-----------------------------------------------+        <<04431>>00234000
    3 |                      0                        |        <<04431>>00236000
      +-----------------------------------------------+        <<04431>>00238000
    4 |                      0                        |        <<04431>>00240000
      +-----------------------------------------------+        <<04431>>00242000
                                                               <<04431>>00244000
                                                               <<04431>>00246000
                          ciper entry                          <<04431>>00248000
                          -----------                          <<04431>>00250000
                                                               <<04431>>00252000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00254000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00256000
    0 | 0| 0| 1| 0| 0|  reserved |db|        0        |        <<04431>>00258000
      +--+--+--+--+--+-----------+--+-----------------+        <<04431>>00260000
    1 |  ciper device control data segment # (cdcds)  |        <<04431>>00262000
      +--+--------------------------------------------+        <<04431>>00264000
    2 |dn|      ctm index for this device (ctmi)      |        <<04431>>00266000
      +--+--------------------------------------------+        <<04431>>00268000
    3 |                      0                        |        <<04431>>00270000
      +-----------------------------------------------+        <<04431>>00272000
    4 |                      0                        |        <<04431>>00274000
      +-----------------------------------------------+        <<04431>>00276000
                                                               <<04431>>00278000
db.....if set to 1, then debugging is in effect.               <<04431>>00280000
dn.....if 1, the ciper facility has been de-activated for this <<04431>>00282000
       device because of error.                                <<04431>>00284000
ctmi...control table map index (an index into the control      <<04431>>00286000
       table map (ctm), which is located in the cdcds.         <<04431>>00288000
                                                               <<04431>>00290000
                                                               <<04431>>00292000
             system or private vol. disc entry                 <<04431>>00294000
             ---------------------------------                 <<04431>>00296000
                                                               <<04431>>00298000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00300000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00302000
    0 | s| 0| 0| 1| 0|   reserved   |        0        |        <<04431>>00304000
      +--+--+--+--+--+--------------+-----------------+        <<04431>>00306000
    1 |                      0                        |        <<04431>>00308000
      +-----------------------------------------------+        <<04431>>00310000
    2 |      disc free space dst number (dfsdst)      |        <<04431>>00312000
      +-----------------------------------------------+        <<04431>>00314000
    3 |     disc free space error status (dfserr)     |        <<04431>>00316000
      +-----------------------------------------------+        <<04431>>00318000
    4 |                      0                        |        <<04431>>00320000
      +-----------------------------------------------+        <<04431>>00322000
                                                               <<04431>>00324000
s......seek ahead enable/disable flag.                         <<04431>>00326000
$page                                                          <<04431>>00328000
           character set extension support entry               <<04431>>00330000
           -------------------------------------               <<04431>>00332000
                                                               <<04431>>00334000
        0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15         <<04431>>00336000
      +--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--+        <<04431>>00338000
    0 | 0| 0| 0| 0| 1|   reserved   |        0        |        <<04431>>00340000
      +--+--+--+--+--+--------------+-----------------+        <<04431>>00342000
    1 |                       0                       |        <<04431>>00344000
      +-----------------------------------------------+        <<04431>>00346000
    2 |                       0                       |        <<04431>>00348000
      +-----------------------------------------------+        <<04431>>00350000
    3 |                       0                       |        <<04431>>00352000
      -+----------------------+-----------------------+        <<04431>>00354000
    4 | current extension set | default extension set |        <<04431>>00356000
      +-----------------------+-----------------------+        <<04431>>00358000
;                                                              <<04431>>00360000
$page"MPE TABLE ACCESS:  LOGICAL DEVICE TABLE EXTENSION ",&    <<04445>>00362000
$"(LDTX) - DECLARATIONS"                                       <<04445>>00364000
equate                                                                  00366000
                                                                        00368000
       ldtx'dst          = %16 << = #14 >>                              00370000
      ,ldtx'sir          = %12 << = #10 >>                              00372000
                                                                        00374000
      ,size'of'ldtx'entry= %5  << = #5, an ldtx entry >>                00376000
      ,size'of'ldtx0'entry=%5  << = #5, the ldtx zero entry >>          00378000
;                                                                       00380000
                                                                        00382000
define                                                                  00384000
                                                                        00386000
        << _entry 0_ ( prefix: ldtx0 ) >>                               00388000
                                                                        00390000
       ldtx0'highest'ent = 0).(0:8 #                                    00392000
                                                                        00394000
      ,ldtx0'ent'size    = 0).(8:8 #                                    00396000
                                                                        00398000
           << calculation for the base of the ldtx >>                   00400000
      ,ldtx'base         = integer(ldt0(ldt0'ptr'1st'dct'ent))          00402000
                           + integer(ldt0(ldt0'dct'size)) #             00404000
                                                                        00406000
           << calculation for a ldtx entry's address >>                 00408000
      ,ldtx'entry'address= ldtx'base + size'of'ldtx'entry * #           00410000
                                                                        00412000
                                                                        00414000
        << _all entries_ ( prefix: ldtx ) >>                            00416000
                                                                        00418000
      ,ldtx'debugging    = 0).(9:1 # <<flag to trigger calls >>         00420000
           <<                          to debug              >>         00422000
                                                                        00424000
                                                                        00426000
        << _terminal entry_ >>                                          00428000
                                                                        00430000
      ,ldtx'baud'rate'code=0).(10:1 #                                   00432000
           << terminal's baud rate code:                     >>         00434000
           << cps := characters per second                   >>         00436000
           << 0 :=  240 cps or not determined                >>         00438000
           << 1 :=  240 cps               2 :=  120 cps      >>         00440000
           << 3 :=   60 cps               4 :=   30 cps      >>         00442000
           << 5 :=   15 cps               6 :=   10 cps      >>         00444000
           << 7 :=   14 cps                                  >>         00446000
                                                                        00448000
                                                                        00450000
        << _serial disc entry_ ( prefix: ldtx ) >>                      00452000
                                                                        00454000
      ,ldtx'serial'disc  = 0).(1:1 # << serial disc          >>         00456000
                                                                        00458000
      ,ldtx'sdisc'xds    = 1 #<<serial disc buffer xds number>>         00460000
                                                                        00462000
                                                                        00464000
        << _ciper entry_ >>                                             00466000
                                                                        00468000
      ,ldtx'ciper'protocol = 0).(2:1 # << ciper protocol used>>         00470000
                                                                        00472000
      ,ldtx'cpr'cds      = 1 #                                          00474000
           << ciper control data segment                     >>         00476000
           << (ciper device control data segment (cdcds))    >>         00478000
                                                                        00480000
      ,ldtx'cpr'is'shutdown= 2).(0:1 # << ciper deactivated  >>         00482000
           << for this device because of error               >>         00484000
                                                                        00486000
      ,ldtx'cpr'ctmi     = 2).(1:15 # <<ciper control table  >>         00488000
           << map index (an index into the control table map >>         00490000
           << (ctm) which is located in the cdcds)           >>         00492000
                                                                        00494000
                                                                        00496000
        << _shareable disc device (system / private volume)_ >>         00498000
                                                                        00500000
      ,ldtx'seek'ahead   = 0).(0:1 # <<seek ahead flag:      >>         00502000
           <<                                1 := enabled    >>         00504000
           <<                                0 := disabled   >>         00506000
                                                                        00508000
      ,ldtx'shareable'disc= 0).(3:1 #                                   00510000
                                                                        00512000
      ,ldtx'dfs'xds      = 2 #                                          00514000
                                                                        00516000
      ,ldtx'dfs'err      = 3 #                                          00518000
                                                                        00520000
;                                                                       00522000
