Compucolor.org – Virtual Media

Listing of file='COPY.SRC;01' on disk='vmedia/ncc_12-sector.ccvf'

;THIS PROGRAM IS A MODIFIED COPY OF
;PART OF THE FCS COPY ROUTINE
;FROM THE VERSION 6.78 ROM.
;IT CONTAINS A BUG WHICH
;SOMETIMES CAUSES PROBLEMS
;IN USING THE FCS COPY COMMAND:
;     1. COPY SOMETIMES GETS ERROR
;        EDFN(DUPLICATE FILE NAME)
;        WHEN THERE IS NO DUPLICATE
;        NAME ON THE DEST DISK.
;     2. SOMETIMES THE COPIED FILE
;        IS RENAMED TO GARBAGE
;        ON THE DESTINATION DISK.
XFBLK	EQU	81A1H
FCSEX	EQU	2622H
EMESS	EQU	262DH
GETTO	EQU	2C0CH
PNFSP	EQU	306EH
TMP1	EQU	81ABH
PCFSP	EQU	3087H
COP01	EQU	2B38H
EMFN	EQU	15H
FPB	EQU	80F7H
	ORG	0BF50H	;LOADS AT TOP OF 16K
CALLENT:		;ENTRY FROM BASIC CALL
	LXI	H,EMESS
	PUSH	H
	LXI	H,FCSEX
	PUSH	H
COP00:	LXI	H,INPPARM
			;COPY OPERANDS HERE
	SHLD	XFBLK	;SAVE STRING PNTR
	CALL	PNFSP	;GET SOURCE NAME
	RC		;ERROR!
	CALL	GETTO	;GET "TO"
	RNZ		;ERROR!
	SHLD	TMP1	;SAVE STRING PNTR
	LXI	D,FPB	;THIS INSTRUCTION FIXES ROM BUG
	CALL	PCFSP	;GET DESTINATION NAME
	JNC	COP01	;O.K.!
	MVI	A,EMFN
	CMP	B	;MISSING FILE NAME?
	RNZ		;NO: ERROR!
	JMP	COP01	;CONTINUE IN ROM CODE
INPPARM:	;INPUT PARAMETER AREA FOR COPY OPERANDS
	DS	120
	END