	.TITLE	PASTE
	.MCALL	.PRINT	.GTLIN	.EXIT
	.MCALL	.DBLK	.LOOKU	.READW	
	.DSABL	GBL
	.GLOBL	OUT$ADR

USERRB	=	53
ERROR$	=	10

;----------------------------------
BLK:	.BYTE	-1	,20
	.BYTE	2
DRIVE:	.BYTE	0
TRACK:	.BYTE	80.
	.BYTE	0
	.WORD	BUFF
	.WORD	200
;----------------------------------

PASTE:
ENTRY:	MOV	#BUFF,R1
	.GTLIN	R1,#T.PRMT
	MOVB	(R1)+,R0
	BEQ	PASTE
	BR	CNT

E.INP:	.PRINT	#T.INVD
	MOV	#BUFF,R0
E.:	.PRINT
	BR	ENTRY

CNT:	SUB	#'0,R0
	BMI	E.INP
	CMP	R0,#3
	BHI	E.INP
	TSTB	@R1
	BNE	E.INP
	MOVB	R0,DRIVE

	.LOOKU	#AREA,#0,#DBLK
	BCS	E.LOOK

	.READW	#AREA,#0,#BUFF,#202,#0
	BCS	E.READ

	BISB	BUFF+400,DRIVE
	MOVB	BUFF+402,TRACK

	MOV	#BLK,R0
	CALL	OUT$ADR
	TSTB	@R0
	BNE	E.WRI

	.PRINT	#T.OK
	.EXIT

E.LOOK:	MOV	#T.LOOK,R0
	BR	E..
E.READ:	MOV	#T.READ,R0
	BR	E..
E.WRI:	MOV	#T.WRI,R0
E..:	.PRINT
	BISB	#ERROR$,@#USERRB
	.EXIT

WCNT:	.WORD
AREA:	.BLKW	5
ADDR:	.BLKW	6
DBLK:	.DBLK	SY,CUT,

T.PRMT:	.ASCII	"Drive #"<200>
T.INVD:	.ASCII	"Invalid drive # "<200>

T.OK:	.ASCIZ	"OK"
T.LOOK:	.ASCIZ	"LOOKUP"
T.READ:	.ASCIZ	"READW"
T.WRI:	.ASCIZ	"DISK"
	.EVEN

BUFF:	.END	PASTE
                                                                                                                                                                                                                                                                                                                                                                                            