<< LINES .001/.009 ARE RESERVED FOR SYSTEMS INTEGRATION>>               00000001
$PAGE "INCLPVU - PRIVATE VOLUME USER TABLE INCLUDE FILE"                00001000
<<**********************************************************>>          00002000
<<**                                                      **>>          00003000
<<**       Private Volume User Table       Date: 03/14/83 **>>          00004000
<<**                                                      **>>          00005000
<<**********************************************************>>          00006000
                                                                        00007000
$IF X8 = OFF                                                            00008000
$CONTROL NOLIST                                                         00009000
$IF                                                                     00010000
                                                                        00011000
<<**********************************************************>>          00012000
<<**                                                      **>>          00013000
<<**       Private Volume User Table Definitions          **>>          00014000
<<**                                                      **>>          00015000
<<**********************************************************>>          00016000
                                                                        00017000
$IF X8 = OFF                                                            00018000
$CONTROL LIST                                                           00019000
$IF                                                                     00020000
                                                                        00021000
<<---------------------------------------------------------->>          00022000
<<- Private Volume User Table keeps records of all logical ->>          00023000
<<- mounts. It is kept in a separate Data Segment.         ->>          00024000
<<- When PV is mounted for the first time a volume set     ->>          00025000
<<- entry is allocated. The volume set entry contains      ->>          00026000
<<- several users entries. The volume set entry and also   ->>          00027000
<<- the PV User Table DST are expanadble.                  ->>          00028000
<<-                                                        ->>          00029000
<<- Addressing conventions :                               ->>          00030000
<<-                                                        ->>          00031000
<<- INTEGER ARRAY PVUSER = DB + 0;   PV User table         ->>          00032000
<<- INTEGER POINTER PVUENT;          User entry            ->>          00033000
<<-                                                        ->>          00034000
<<---------------------------------------------------------->>          00035000
                                                                        00036000
EQUATE                                                                  00037000
PVU'DST      = 54,            << PV User Table DST          >>          00038000
PVU'SIR      = 29,            << PV User Table Sir          >>          00039000
PVU'HEADER   =  5,            << PV User Table Header Size  >>          00040000
PVU'ENT'SIZE =  8,            << PV User entry size         >>          00041000
PVU'VS'UNUM  =  5,            << Init. # of users per VS ent>>          00042000
PVU'VS'HEADER = 5,            << VS entry header size       >>          00043000
PVU'DST'INC  = 128;           << PV User DST increment      >>          00044000
                                                                        00045000
DEFINE                                                                  00046000
PVU'VS'INC   = (PVU'ENT'SIZE * PVU'VS'UNUM)#,  << VS ent inc>>          00047000
PVU'VS'ENT'SZ = (PVU'VS'INC + PVU'VS'HEADER)#; << VS ent sz >>          00048000
                                                                        00049000
<< PV User Table Header                                     >>          00050000
                                                                        00051000
DEFINE                                                                  00052000
PVU'SIZE        = PVUSER#,    << PV User table size (words) >>          00053000
PVU'COUNT       = PVUSER (1)#,<< Number of user entries     >>          00054000
PVU'MVTAB'MASK  = PVUSER (2)#,<< MVTABX bit map (up to 16)  >>          00055000
PVU'MAX'SIZE    = PVUSER (3)#,<< PV User table max. size    >>          00056000
PVU'AVAIL'ENT   = PVUSER (4)#,<< Number of available words  >>          00057000
                                                                        00058000
<< Volume Set entry header                                  >>          00059000
                                                                        00060000
PVU'VS'OPMASK   = PVUENT (0).(0:8)#,  << OP mask            >>          00061000
PVU'VS'MVTABX   = PVUENT (0).(8:8)#,  << MVTAB index        >>          00062000
PVU'VS'MAX'USER = PVUENT (1)#,        << Max # of user / VS >>          00063000
PVU'VS'NUM'USER = PVUENT (2)#,        << Number of users    >>          00064000
PVU'VS'SIZE     = PVUENT (3)#,        << VS entry size      >>          00065000
PVU'VS'FLAGS    = PVUENT (4)#,        << VS flags           >>          00066000
PVU'VS'MOUNT    = PVU'VS'FLAGS.(15:1)#,  << Logical mount   >>          00067000
                                                                        00068000
<< User entry                                               >>          00069000
                                                                        00070000
PVU'ENT'VMASK   = PVUENT (PVUE'INDEX)#,    << Volume mask   >>          00071000
PVU'ENT'PIN     = PVUENT (PVUE'INDEX+1)#,  << User pin      >>          00072000
PVU'ENT'UBIND'C = PVUENT (PVUE'INDEX+2)#,  << User bind cnt >>          00073000
PVU'ENT'UMNT'C  = PVUENT (PVUE'INDEX+3)#,  << User mount cnt>>          00074000
PVU'ENT'SBIND'C = PVUENT (PVUE'INDEX+4)#,  << Sys bind count>>          00075000
PVU'ENT'SMNT'C  = PVUENT (PVUE'INDEX+5)#,  << Sys mount cnt >>          00076000
PVU'ENT'NAME'C  = PVUENT (PVUE'INDEX+6)#,  << Bind name cnt >>          00077000
PVU'ENT'NAME'D  = PVUENT (PVUE'INDEX+7)#;  << Bind name DST >>          00078000
                                                                        00079000
<<**********************************************************>>          00080000
<<**                                                      **>>          00081000
<<**    End of Private Volume User Table Include File     **>>          00082000
<<**                                                      **>>          00083000
<<**********************************************************>>          00084000
$PAGE                                                                   00085000
