	TITLÅ	'TASTATURTREIBEÒ S6010'

; VERSION 1.0
; 19.09.88

	MACLIB	Z80

	PUBLIC	TASINI,TAB,TASABF,TABMER
	EXTRN	INTEND,UHRPUF

TASTE	EQU	0DH		; TASTATURZEICHEN
TASTST	EQU	0FH		; ABFRAGE DER STATUSLEITUNGEN


TASTP	EQU	0FF80H
TASTPE	EQU	TASTP+30H


; INITIALISIERUNG DER TASTATUR

TASINI:				; TASTATUR INIT.
	LXI	H,TASTAB
	MVI	B,10
	MVI	C,TASTST
	OUTIR
TASIN1:
	MVI	A,10H
	OUT	TASTST
	IN	TASTST
	BIT	0,A
	RZ
	IN	TASTE
	JR	TASIN1

;______________________________________________________________
; ABFRAGEN TASTATUR / JOYSTICK AUF ERSTBETAETIGUNG
;______________________________________________________________

TASABF:	MVI	A,10H
	OUT	TASTST
	IN	TASTST
	BIT	0,A
	JZ	INTEND		; KEIN ZEICHEN

;______________________________________________________________
; ZEICHENKODE HOLEN
;______________________________________________________________

	IN	TASTE
	PUSH	PSW
	LXI	H,TASTP
	MVI	B,TASTPE-TASTP
TAPUBE:	MOV	A,M
	ORA	A
	JRZ	TAPUPO		; --> FREIE POSITION GEFUNDEN
	INX	H		; NAECHSTE POSITION PRUEFEN
	DJNZ	TAPUBE
	POP	PSW
	JMP	INTEND		; PUFFER VOLL

;______________________________________________________________

TAPUPO:	POP	PSW
	MOV	M,A
	JMP	INTEND

;______________________________________________________________
; PUFFER
;______________________________________________________________

TABMER:	DW	0

TAB:	DB	0,0

TASTAB:	DB	0,18H,2,0,3,0C1H,4,5,5,0EAH

	END
