Google
 

Trailing-Edge - PDP-10 Archives - SRI_NIC_PERM_SRC_3_19910112 - utilities/fixalc.mid
There are no other files named fixalc.mid in the archive.
TITLE FIXALC
SUBTTL MRC

.DECSAV				;Select .EXE file format

CURDIR:	BLOCK 1			;Save of current directory
DIRNAM:	BLOCK 20		;Directory name block
DIRBLK:	.CDDFE			;Size of following block
	BLOCK .CDDFE+1		;Directory block (+1 just in case)

FIXALC:	RESET%
	MOVSI 1,(RC%AWL)	;Allow wildcards
	HRROI 2,[ASCIZ/<*>/]	;All directories
	RCDIR%
LOOP:	MOVEM 3,CURDIR		;Save last directory name
	MOVE 1,3		;Directory number
	GTDAL%			;Get allocations
	CAMN 1,3		;Matching?
	 JRST NXTDIR
	MOVEM 1,DIRBLK+.CDLIQ	;Save losing quotas
	MOVEM 3,DIRBLK+.CDLOQ
	HRROI 1,DIRNAM		;Output losing directory information
	MOVE 2,CURDIR
	DIRST%
	 NOP
	HRROI 1,DIRNAM
	PSOUT%
	MOVEI 1,.PRIOU
	MOVEI 2,<" >
	BOUT%
	MOVE 2,DIRBLK+.CDLIQ
	MOVEI 3,10.		;Decimal radix
	NOUT%
	 NOP
	MOVEI 2,"/
	BOUT%
	MOVE 2,DIRBLK+.CDLOQ
	NOUT%
	 NOP
	HRROI 1,[ASCIZ/ => /]
	PSOUT%
	MOVEI 1,.PRIOU
	CAML 2,DIRBLK+.CDLIQ	;Only do if logged in greater than logged out
	 JRST [	NOUT%
		 NOP
		HRROI 1,[ASCIZ/ Ok?/]
		PSOUT%
		PBIN%
		CAIE 1,"Y
		 CAIN 1,"y
		  JRST [HRROI 1,[ASCIZ/es/]
			PSOUT%
			MOVEM 2,DIRBLK+.CDLIQ
			JRST DOIT]
		CAIE 1,"N
		 CAIN 1,"n
		  JRST [HRROI 1,[ASCIZ/o
/]
			PSOUT%
			JRST NXTDIR]
		MOVEI 1,.PRIIN
		CFIBF%
		HRROI 1,[ASCIZ/
/]
		PSOUT%
		JRST NXTDIR]
	MOVE 2,DIRBLK+.CDLIQ
	NOUT%
	 NOP
	MOVEM 2,DIRBLK+.CDLOQ	;Equalize allocations
DOIT:	HRROI 1,DIRNAM
	MOVE 2,[CD%LIQ\CD%LOQ+DIRBLK]
	SETZ 3,			;No input password 'cuz I'm a WHEEL
	CRDIR%			;ZAP!
	HRROI 1,[ASCIZ/ [Ok]
/]
	PSOUT%
NXTDIR:	MOVSI 1,(RC%STP\RC%AWL)	;Get next directory user wants
	HRROI 2,[ASCIZ/<*>/]
	MOVE 3,CURDIR
	RCDIR%
	TLNN 1,(RC%NMD)		;Done?
	 JRST LOOP
	HRROI 1,[ASCIZ/Done/]
	PSOUT%
	HALTF%
	JRST .-1

END FIXALC