Trailing-Edge
-
PDP-10 Archives
-
RMS-10_T10_704_FT2_880425
-
10,7/rms10/rmssrc/rmsosd.r36
There are 6 other files named rmsosd.r36 in the archive. Click here to see a list.
%IF %SWITCHES(TOPS10)
%THEN
UNDECLARE ER$FUL;
LIBRARY 'SYS:UUOSYM';
LITERAL
TOPS10=1,
TOPS20=0;
%FI
%IF %SWITCHES(TOPS20)
%THEN
LIBRARY 'SYS:MONSYM';
LITERAL
TOPS10=0,
TOPS20=1;
EXTERNAL MONERR; !REFFED THRU ERCAL RATHER THAN CALL
%FI
COMPILETIME OSKLU=0; !SEE BELOW
! JSYS MACROS
!
MACRO JSYS_FAIL(NAME) = IF NOT JSYS( -1, NAME, AC1, AC2, AC3, AC4) %;
MACRO DO_JSYS(NAME)= !DOES JSYS AND HANDLES JSYS FAILURES
BEGIN
%ASSIGN(OSKLU,OSKLU+1); !INSURE OS CALLS NOT OPTED
BIND %NAME(NAME,'.')=%O'104'^27 OR NAME; !MAKE JSYS AVAIL FOR DEBUGGING
JSYS (0, NAME, AC1,AC2,AC3,AC4); !DO THE JSYS
ERCAL (MONERR);
ERJMP (OSKLU) !KLUDGE TO PREVENT CODE OPT
END %;
! UUO MACROS
!
MACRO UUO_FAIL = IF NOT UUO( 1, %REMAINING) %;
MACRO DO_UUO(C$, A$, E$) = !DOES UUO AND ABORTS ON ERRORS
BEGIN
%ASSIGN(OSKLU,OSKLU+1); !INSURE OS CALLS NOT OPTED
UUO ( 0, C$, A$ ,E$);
$EXIT(MONERR);
ERJMP (OSKLU) !KLUDGE TO PREVENT CODE OPT
END %;
MACRO DO_FILOP = !DOES FILOP AND HANDLES FILOP FAILURES
BEGIN
%ASSIGN(OSKLU,OSKLU+1); !INSURE OS CALLS NOT OPTED
AC2=.AC1<RH>; !SAVE PTR TO ARGBLK FOR FOPERR & DBUGING
UUO ( 0, FILOP$(AC1));
$EXIT (FOPERR);
ERJMP (OSKLU) !DITTO
END %;
%IF %SWITCHES(TOPS20)
%THEN
UNDECLARE ERCAL,ERJMP;
%FI
MACRO ERCAL(ADDR$) = MACHOP(%O'320',%O'17',ADDR$)%;
MACRO ERJMP(ADDR$) = MACHOP(%O'320',%O'16',ADDR$)%;
! REGISTERS USED BY MONITOR CALL INTERFACE
!
MACRO REGS =
REGISTER
AC1=1,
AC2=2,
AC3=3,
AC4=4;
%;