	PAGE 60
	ENTRY INIJOY,JOYA,JOYB,JOYAA,JOYBA
	.Z80
	.COMMENT #

Subroutine  INIJOY  initialisiert die Ports A und B von PIO 2 fuer die
Joysticks.
FORTRAN 80-Aufruf	CALL INIJOY

Die Subroutinen  JOYA  und  JOYB  liefern die Eingabebytes der Joystick-Ports
in die Integer-Variable I.
FORTRAN 80-Aufruf	CALL JOYA(I)	bzw.	CALL JOYB(I)
Die Adresse von I wird in HL uebergeben.
Die Subroutinen  JOYAA  bzw. JOYBA  stellen das Bitmuster nur im Akku bereit.

Die Routinen sind ausgelegt fuer Joysticks mit 4 Himmelsrichtungen und
2 Push Buttons zum Anschluss an die 4 Datenleitungen D0-D3 einer PIO.
Die Bitzuordung zu den Himmelsrichtungen der Sticks ist wie folgt:
Bit 0 = Nord	Bit 1 = Ost	Bit 2 = Sued	Bit 3 = West.
Die Richtung ist aktiviert, wenn das Bit gesetzt ist.
Jeweils benachbarte Richtungen koennen zusammen aktiviert sein.
Der linke Push Button aktiviert Bit 0 und 2, der rechte Bit 1 und 3.
Alle Kombinationen fuehren zu den arithmetischen Summen der Bits,
so dass Integer-Werte von 0 bis 15 als Ausgabe moeglich sind.

A.Herrmann	26.11.83
#
PIO2A	EQU 0F4H	;PIO2 PORT A DATA ADDRESS
PIO2B	EQU 0F5H	;PIO2 PORT B DATA ADDRESS
;
INIJOY:	LD A,0CFH	;BIT MODE
	OUT (PIO2A+2),A	;CONTROL ADDRESS
	OUT (PIO2B+2),A
	LD A,0FH	;D0-D3 INPUT  D4-D7 OUTPUT
	OUT (PIO2A+2),A
	OUT (PIO2B+2),A
	LD A,03		;NO INTERRUPT
	OUT (PIO2A+2),A
	OUT (PIO2B+2),A
	LD A,0F0H	;SET OUTPUT LINES
	OUT (PIO2A),A
	OUT (PIO2B),A
	RET
;
JOYA:	IN A,(PIO2A)
	JR JOYX
JOYB:	IN A,(PIO2B)
	JR JOYX
JOYX:	CPL
	LD (HL),A
	RET
;
JOYAA:	IN A,(PIO2A)
	JR JOYXA
JOYBA:	IN A,(PIO2B)
	JR JOYXA
JOYXA:	CPL
	RET
;
	END
