/LINEFEED PATCH FOR U/W-FOCAL:   -JVZ

/THIS PATCH CAUSES LINEFEED TO RETYPE AN INPUT LINE UPTO THE
/CURRENT POSITION, FREE OF RUBOUTS AND RESTARTS. THIS ACTION
/THUS DUPLICATES THE MONITOR SYSTEM USAGE OF LINEFEED.

/FOUR VARIABLES ARE SACRIFICED FOR THIS FEATURE.

	FIELD 1		/SYMBOL DEFINITIONS
	AXIN=10
	AXOUT=17
	XCT=20
	DEBGSW=26
	BUFR=60
	ADD=61
	XCTIN=62
	CCR=77
	TABCNT=166
	DAXIN=173
	GETC=4545
	PRINTC=4551

	*134
	STVAR		/FOUR FEWER VARIABLES
	*225
	JMS "*		/FOOL THE TAB COUNTER
	*572
	LNFEED		/PATCH VECTOR
	*3224		/AFTER THE ZERO COMMAND
LNFEED,	TAD I TABCNT	/WHERE ARE WE?
	SNA CLA
	JMP I CCR	/IGNORE THE LF AFTER A CR
	ISZ DEBGSW	/PREVENT STUTTERING
	TAD ADD
	JMS I DAXIN	/STORE HALF-WORD TEMPORARILY
	CMA
	TAD AXIN
	DCA AXIN	/RESET PACKING POINTER
	TAD BUFR
	DCA AXOUT	/SET 'GETC' POINTERS
	DCA XCT
	TAD CCR		/START WITH A CR
	PRINTC
	GETC		/READ THE NEXT ONE
	TAD AXIN
	CMA
	TAD AXOUT
	SPA CLA		/CURRENT POSITION YET?
	JMP .-6
	TAD XCTIN	/YES, BUT CHECK HALF-WORD
	SZA CLA
	PRINTC
	DCA DEBGSW	/RESET RUBOUT PROTECTION
	JMP I CCR	/THIS GETS US BACK TO 'IGNOR'
STVAR=.;$
