.TITLE PRUIC -- CREATE PRIVILAGED UIC FILE .IDENT /V03.00/ .NLIST BEX ; ; ********************* ; * [311,77]PRUIC.MAC * ; ********************* ; ; EDIT THE FOLLOWING LIST OF PRIVILEGED UIC'S ; INCLUDED IN THIS LIST ARE THE FOLLOWING: ; [1,*] ; [7,*] ; [70,*] ; UIC: .WORD 1 ; [1,*] .WORD 7 ; [7,*] .WORD 70 ; [70,*] .WORD 0 ; END OF LIST UICBUF: .WORD 0 ; UIC BUFFER ; .MCALL OPEN$W,PUT$R,CLOSE$,FSRSZ$,FINIT$,QIOW$S,EXIT$S START: QIOW$S #IO.WVB,#5,#1,,,,<#BEGIN,#BEGINL,#40> FSRSZ$ 2 FINIT$ ; 10$: OPEN$W #PASFDB ; OPEN PRIVILAGED UIC FILE BCC 50$ ; OPEN OK ; 30$: MOV #ECODE,R0 ; GET ERROR CODE MOVB PASFDB+F.ERR,R1 ; CLR R2 ; CALL $CBDSG ; QIOW$S #IO.WVB,#5,#1,,,,<#ERRP,#ERRPL,#40> ; PRINT ERROR MESSAGE EXIT$S ; ; 50$: MOV #UIC,R1 ; GET ADDRESS OF UIC'S MOV #1,R3 ; INITIALIZE RECORD POINTER BR 65$ ; MUST BE AT LEAST ONE UIC 60$: TST (R1)+ ; GET NEXT UIC TST (R1) ; UIC PRESENT? BEQ 70$ ; GO AWAY IF DONE 65$: PUT$R #PASFDB,R1,#2,R3 ; BCS 30$ ; ERROR INC R3 ; INCREMENT RECORD NUMBER BR 60$ ; LOOP 70$: CLOSE$ #PASFDB ; DONE CLOSE FILE QIOW$S #IO.WVB,#5,#1,,,,<#DONE,#DONEL,#40> EXIT$S ; ERRP: .ASCII /PRIVILEGED UIC FILE FAILURE CODE = / ECODE: .ASCII / / ERRPL=.-ERRP DONE: .ASCII /PRIVILEGED UIC FILE CREATED./ DONEL=.-DONE BEGIN: .ASCII /CREATE PRIVILEGED UIC FILE/ BEGINL=.-BEGIN .EVEN ; .MCALL FDBDF$,FDOP$A,FDBF$A,FDRC$A,FDAT$A ; PASFDB: FDBDF$ FDAT$A R.FIX,FD.BLK,2,3 FDRC$A FD.RAN FDOP$A 6,ACTDS,,,FA.ENB!FA.DLK FDBF$A 6,,1 ; ACTDS: .WORD DNSS ; DEVICE NAME SIZE .WORD DNSA ; DEVICE NAME ADDRESS .WORD DIRSS ; DIRECTORY SIZE .WORD DIRSA ; DIRECTORY ADDRESS .WORD FNSS ; FILE NAME SIZE .WORD FNSA ; FILE NAME ADDRESS DNSA: .ASCII /LB0:/ DNSS=.-DNSA DIRSA: .ASCII /[1,100]/ DIRSS=.-DIRSA FNSA: .ASCII /PDSPRIV.UIC/ ; PRIVILAGED UIC FILE NAME FNSS=.-FNSA ; .END START