.EXTRN LIB$SET_SYMBOL .MACRO CHECK_STATUS ?OK BLBS R0,OK $EXIT_S R0 OK: .ENDM CHECK_STATUS .LIBRARY /SYS$LIBRARY:LIB.MLB/ .LINK /SYS$SYSTEM:SYS.STB/ $PHDDEF ; SYMBOL: .ASCID "HARDFLTS" ; Symbol Name FMT1: .ASCID "!10UL" HARD_BUF: .LONG 20 .ADDRESS 10$ 10$: .BLKB 20 GLOBAL_SYM: .LONG LIB$K_CLI_GLOBAL_SYM ; Select Global symbols tbl HARD: .BLKL 1 SOFT: .BLKL 1 ; .ENTRY GET_HARD,^M MOVL G^CTL$GL_PHD,R3 MOVAL HARD, R2 MOVL PHD$L_PGFLTIO(R3),(R2)+ $FAO_S CTRSTR=FMT1,OUTBUF=HARD_BUF,OUTLEN=HARD_BUF,P1=HARD CHECK_STATUS PUSHAL GLOBAL_SYM ; Make it a GLOBAL symbol PUSHAL HARD_BUF ; Push address of symbol value PUSHAL SYMBOL ; Push address of symbol name CALLS #3,G^LIB$SET_SYMBOL ; Define it CHECK_STATUS MOVL #SS$_NORMAL,R0 RET .END GET_HARD