[net.micro.cpm] Flushing the one-character BDOS console input buffer

W8SDZ@SIMTEL20.ARPA (Keith Petersen) (10/31/86)

Russ, this works for my programs that use function 6 for portability.
This will flush the BDOS buffer if there are any characters waiting.

	MVI	C,CONSTAT	;BDOS console status function
	CALL	BDOS
	ORA	A		;check for character pending
	JZ	SKIPIT		;zero means nothing there
	MVI	C,CONIN		;BDOS console input function
	CALL	BDOS		;go get it
;
SKIPIT:	(do your next task here, ignoring any character gathered above)

--Keith

pencin.pa@xerox.ARPA (10/31/86)

Your solution is the one I am in the process of trying, however it has
the unsightly side effect of displaying the character if one was
waiting... not good for the type of single character input I'm doing.
My thoughts are to get the character and print a BS,space,BS immediately
to cover it up.

Any thoughts?

Russ