Trailing-Edge
-
PDP-10 Archives
-
BB-L014E-BM
-
autopatch/ph3g.c05
There are no other files named ph3g.c05 in the archive.
REP 5/1 ;05C1
!COPYRIGHT (C) 1972,1981 BY DIGITAL EQUIPMENT CORPORATION
WIT
!COPYRIGHT (C) 1972,1981,1982 BY DIGITAL EQUIPMENT CORPORATION
REP 13/1 ;05C2
GLOBAL BIND PH3GV = 6^24 + 0^18 + 254; ! Version Date: 20-Jul-81
WIT
GLOBAL BIND PH3GV = 6^24 + 0^18 + #1152; ! Version Date: 29-Mar-82
INS 182/1 ;05C3
1152 EGM 29-Mar-82
Check all OPEN/CLOSE arguments for register substitution, instead
of just UNIT.
INS 2389/1 ;05C4
%[1152]% ROUTINE CHKOPCL(STMNT)=
%[1152]% %Check for REG SUBstitution of OPEN/CLOSE arguments%
%[1152]% BEGIN
%[1152]% MAP BASE STMNT; !OPEN/CLOSE statement
%[1152]% LOCAL BASE TMP; !Pointer to variable/expression node
%[1152]% LOCAL OPENLIST ARGPTR; !Pointer to arg list items
%[1152]%
%[1152]% TMP_.STMNT[IOUNIT]; !First check UNIT
%[1152]% IF .TMP[OPRCLS] EQL DATAOPR
%[1152]% THEN
%[1152]% STMNT[IOUNIT]_SWAPEM(.TMP)
%[1152]% ELSE
%[1152]% LEAFSUBSTITUTE(.TMP);
%[1152]% IF .STMNT[OPLST] NEQ 0 !If any other arguments
%[1152]% THEN
%[1152]% BEGIN
%[1152]% ARGPTR _ .STMNT[OPLST]; !Setup pointer
%[1152]% INCR I FROM 0 TO (.STMNT[OPSIZ]-1) DO !Check each argument
%[1152]% BEGIN
%[1152]% TMP_.ARGPTR[.I,OPENLPTR];
%[1152]% IF .TMP[OPRCLS] EQL DATAOPR
%[1152]% THEN
%[1152]% ARGPTR[.I,OPENLPTR]_SWAPEM(.TMP)
%[1152]% ELSE
%[1152]% LEAFSUBSTITUTE(.TMP)
%[1152]% END !INCR thru arg count
%[1152]% END !Check for other arguments
%[1152]% END;
REP 2654/1 ;05C5
CHKUNIT; ![740]
WIT
%[1152]% CHKOPCL(.P); !Check OPEN/CLOSE parameters
REP 2691/1 ;05C6
%[740]% CHKUNIT;
WIT
%[1152]% CHKOPCL(.P); !Check OPEN/CLOSE parameters
SUM 239711