05 ! Program whodid to replace bum version from mail package
10 ! program to list users (NAMES ONLY)
15 dim ps$[6],px%(2)
20 dim na%(4),pw%(2),dv$[4],gc$[3]v,uc$[3]v
21 ! format of pdsupf record (length=64 bytes)
22 ! name  (8 bytes)
23 ! uic   (2 bytes)
24 ! passw (4 bytes, complement of rad50)
25 ! blank (2 bytes)
26 ! priv  (2 bytes)
27 ! blank (22. bytes) accounting information we don't use
28 ! device (4 bytes) in ascii xxn:
29 ! blank (20. bytes) batch pri,batch pw # tasks, etc
40 ! first list all users
45 open #5,"WHODID.LST/WR"
60 open #4,"SD:[1,100]PDSUPF.DAT/BN/LN:64/RN/RO/SH"
62 re=1
70 input #4@re,fu%,lu%
75 nu=lu%-fu%+1
92 re=fu%
94 for ic=1 to nu
100 input #4@re,na%(1),na%(2),na%(3),na%(4),ui%,pw%(1),pw%(2),x%,pr%,a,b,c,d,e,x%,dv$,f,g,h,i,j
105 if na%(1)=0 then 130
110 print #5,r5a$(na%(1));r5a$(na%(2));r5a$(na%(3));r5a$(na%(4));
115 print #5,tab(16);" ";
117 u=ui%
119 gc=int(u/256) : pc=int(u-256*gc)
120 if gc<0 then gc=gc-oct("177400")
121 gc$=oct$(gc) : pc$=oct$(pc)
122 if len(gc$)<3 then let gc$=" "+gc$
123 if len(gc$)<3 then let gc$=" "+gc$
125 if len(pc$)<3 then let pc$=" "+pc$
126 if len(pc$)<3 then let pc$=" "+pc$
127 print #5,"[";gc$;",";pc$;"]"
130 re=re+1
135 next ic
137 print #5,""
140 close 
145 exit
