	LIST	P=P16F84a
	#INCLUDE <P16f84a.INC>
	__CONFIG _XT_OSC&_CP_OFF&_WDT_OFF

	CBLOCK 0x0C
	IDO1
	IDO2
	IDO3
	SEB
	ENDC

	ORG 0x0
	
	BCF	INTCON, GIE		;GIE TILTASA
	BCF	INTCON,	T0IE		;TMR0 MEGSZAKITAS TILTASA
	BSF	STATUS, RP0		;BANK1
	MOVLW	B'00000111'		;PORTA INPUT
	MOVWF	TRISA
	MOVLW	B'00000000'		;PORTB OUTPUT
	MOVWF	TRISB
	BCF	STATUS, RP0		;BANK0
	CLRF	PORTA
	CLRF	PORTB
	BCF	STATUS, Z

MAIN	
	BTFSS	PORTA,	0		;UP VIZSGALAT "0"-RA
	CALL	FEL
	BTFSS	PORTA,	1		;DOWN VIZSGALAT "0"-RA
	CALL	LE
	BTFSS	PORTA,	2		;NEUTRAL VIZSGALAT "0"-RA
	CALL	NEUTRAL
	GOTO	MAIN

NEUTRAL	
	MOVLW	B'11000000'
	MOVWF	PORTB
	MOVLW	B'00000000'
	MOVWF	SEB
	RETURN
	
FEL
	MOVF	SEB,	W
	XORLW	B'00000101'
	BTFSS	STATUS,	Z
	INCF	SEB
	CALL	KIIR	
	CALL	KESLEL
	RETURN

LE	
	MOVF	SEB,	W
	XORLW	B'00000000'
	BTFSS	STATUS,	Z
	DECF	SEB
	CALL	KIIR
	CALL	KESLEL
	RETURN

KIIR
	MOVF	SEB,	W
	CALL	SZAMOK
	MOVWF	PORTB
	RETURN

KESLEL
	MOVLW	0x10
	MOVWF	IDO1
CCC	MOVLW	0x50
	MOVWF	IDO2
BBB	MOVLW	0x75
	MOVWF	IDO3
AAA	DECFSZ	IDO3,	F
	GOTO	AAA
	DECFSZ	IDO2,	F
	GOTO	BBB
	DECFSZ	IDO1,	F
	GOTO	CCC
	RETURN

SZAMOK
	ADDWF	PCL, F
	RETLW	B'11111001'	;1
	RETLW	B'10100100'	;2
	RETLW	B'10110000'	;3
	RETLW	B'10011001'	;4
	RETLW	B'10010010'	;5
	RETLW	B'10000010'	;6
	
END
