	.TITLE	COMMON
	.DSABL	GBL
	.GLOBL	RAD	ASC
	.GLOBL	BREAK	KILKEY
	.GLOBL	T.F2	T.F4
	.GLOBL	PTRS	DEV
	.GLOBL	MINI
	.GLOBL	DEFSEL

SYSPTR	=	54
$DIR	=	256

UNCACHE::
	MOV	@#SYSPTR,R0
	CLRB	$DIR(R0)
	RETURN

DEFS::	CALL	DEFSEL
	MOV	R2,R0
	RETURN

SCANS::	MOV	(R5),R3
	BEQ	3$
	MOV	PTRS(R5),R4
1$:	TSTB	BREAK
	BNE	3$
	MOV	(R4)+,R2
	BIT	#1,(R2)
	BEQ	2$
	MOV	R3,-(SP)
	MOV	R4,-(SP)
	CALL	@FUNC
	MOV	(SP)+,R4
	MOV	(SP)+,R3
2$:	SOB	R3,1$
3$:	CALL	KILKEY
	RETURN

FILEF2::
	MOV	#FILE,R4
	MOV	#MINI,R1
	MOV	(R4)+,R0
	CALL	RAD
	ADD	#3,R1
	MOVB	#':,(R1)+
3$:	MOV	(R4)+,R0
	CALL	RAD
	ADD	#3,R1
	COMB	#0
	BNE	3$
	MOVB	#'.,(R1)+
	MOV	(R4),R0
	CALL	RAD
	MOV	#MINI,R1
	MOV	#<3+1+6+1+3>,R0
	MOV	#T.F2,R3
1$:	CMPB	(R1)+,#' 
	BEQ	2$
	DEC	R1
	MOVB	(R1)+,(R3)+
2$:	SOB	R0,1$
	CLRB	(R3)
	RETURN

F4FIL1::
	MOV	#T.F4,R1
	MOV	#FILE1,R4

	CALL	ASC
	MOV	R0,(R4)+
	ADD	#4,R1

	MOV	#NAMEXT,R3
	MOV	#6,R0
1$:	CMPB	(R1),#'.
	BEQ	2$
	MOVB	(R1)+,(R3)+
	SOB	R0,1$
2$:	TSTB	(R1)+
	CALL	FILL

	MOV	#3,R0
3$:	TSTB	(R1)
	BEQ	4$
	MOVB	(R1)+,(R3)+
	SOB	R0,3$
4$:	CALL	FILL

	MOV	#NAMEXT,R1
	MOV	#3,R3
5$:	CALL	ASC
	MOV	R0,(R4)+
	ADD	#3,R1
	SOB	R3,5$
	RETURN

FILL:	TST	R0
	BEQ	2$
1$:	MOVB	#' ,(R3)+
	SOB	R0,1$
2$:	RETURN

TOASZ::	MOV	#<6+1+3>,R0
	MOV	#MINI,R1
1$:	CMPB	(R1),#' 
	BEQ	2$
	MOVB	(R1)+,(R3)+
	SOB	R0,1$
2$:	CLRB	(R3)
	RETURN

FFILE::	MOV	#FILE,R4
	MOV	R2,-(SP)
	MOV	R4,-(SP)
	MOV	@DEV(R5),(R4)+
	TST	(R2)+
	MOV	(R2)+,(R4)+
	MOV	(R2)+,(R4)+
	MOV	(R2),(R4)
	MOV	(SP)+,R4
	MOV	(SP)+,R2
	RETURN

FUNC::	.WORD
FLAG::	.WORD
FLAG1::	.WORD
FILE::	.RAD50	"XX0MYFILEMAC"
FILE1::	.RAD50	"XX0MYFILEMAC"
NAMEXT:	.ASCII	"MYFILEMAC"
	.EVEN

	.END
                                                                                                                                                                                                                                                                                                                           