.TITLE UICSET - CHANGE USER UIC .LIBRARY "SYS$LIBRARY:LIB.MLB" $PHDDEF UIC: .BLKL 1 .ENTRY UICSET,^M ; HERE I GO MOVL @4(AP),UIC ;GET USER UIC $CMKRNL_S 10$ ;GO SET IT RET ; AND RETURN 10$: .WORD ^M ;REGS TO SAVE MOVL @#CTL$GL_PHD,R0 ;GET ADDR OF PHD BBC #PRV$V_LOG_IO,PHD$Q_PRIVMSK(R0),20$ ;XFER IF NO PRIVS MOVL @#SCH$GL_CURPCB,R0 ;GET ADDR OF CURRENT PCB MOVZWL PCB$L_UIC+2(R0),R1 ;GET GROUP CMPL R1,#8 ;SYSTEM'S GROUP? BLEQ 15$ ;YES, NO CHECK NECESSARY CMPW UIC+2,#8 ;TRYING TO CHANGE TO SYSTEM UIC? BLEQ 20$ ;YES, NOT ALLOWD 15$: MOVL UIC,PCB$L_UIC(R0) ;SET NEW UIC 20$: RET ;AND RETURN .END