;**************************************************************************
;
; Filename : FUNKTAST.ASM
; -----------------------
;
; (c) 1990 by Thomas Lehmann
;
;
; Jackophone V5.00
;
;
; Funktionstasten
;
;
;**************************************************************************


; =========================================================================
;
; Type	: Hauptprg.
;
; Eingang	: bei Freisprechtaste
;
; Ausgang	: Freisprechen ein/ausgeschaltet
;
; Register	: Accu, Y
;
; (c) by Thomas Lehmann März 1990
;
; =========================================================================

key_fslh	bbs ST_FSLH,feap_stat,fslh_off	; Freisprechen ausschalten

	smb ST_FSLH,feap_stat	; "Freisprechen ein" eintragen
	lda #LD_L|LD_ON	; LED-Status laden
	jsr set_led
	jsr fs_on	; Freisprech-Relais einschalten
	bbr LTG_BEL,ltg_stat,key_fs_ltg	; Ltg. belegen

	rts
key_fs_ltg	jmp key_ltg	; Comfortanschaltung

fslh_off	rmb ST_FSLH,feap_stat	; "Freisprechen aus" eintragen
	ldy #LD_L|LD_OFF	; LED-Status laden
	lda #KEY_FSLH	; Tastenwert laden
	jsr set_prgled	; LED ausschalten
	jmp fs_off	; Freisprech-Relais ausschalten


; =========================================================================
;
; Type	: Hauptprg.
;
; Eingang	: bei Erdtaste
;	: Offset auf Tastaturtabelle in X-Reg.
;	: Tastenwert in "tw"
;
; Ausgang	: Relais für Erde für Dauer des Tastendrucks eingeschaltet
;
; Register	: Accu
;
; (c) by Thomas Lehmann März 1990
;
; =========================================================================

key_erde	lda #$ff
	sta led_ram

	smb ST_ERDE,feap_stat	; Relais zurück wenn Taste losgelassen
erd_end	rts


	; Routine wird von Hauptprg. Schleife aufgerufen
	; ----------------------------------------------
key_erd_los	bbr ST_ERDE,feap_stat,erd_end	; Taste war nicht gedrückt

	lda tw		; Tastenwert laden
	cmp #KEY_ERDE	; Erdtaste noch gedrückt ?
	beq erd_end	; ja, Ende

	rmb ST_ERDE,feap_stat	; Relais zurückgesetzt eintragen
	lda #00
	sta led_ram
	rts
