'**************************************************************************
'*                                                                        *
'*                    Programm: Port_Ein_Aus_.Amos                        *
'*                                                                        *
'*                    © 1993,94,95 Andreas Heinrich                       *
'*                                                                        *
'**************************************************************************
'
'
'        Dieses Programm liest den Wert an Port 2 ein und legt
'        ihn in N ab. N wird dann auf Port 3 ausgegeben.
'
'
'**************************************************************************
'
'  A=Port selektieren
'  N=Wert aus diesem Port lesen
   Global A,N
   Hide
'
'
'
INIT : Rem      Nach dem einschalten einmal aufrufen
'
'**************************** Hauptprogramm *******************************
'
'
'
Do
Print "Wert an Eingangsport = ";
'
A=2 : Rem       Eingabeport 2 wird ausgewählt -> IC 2
LESEN
Print N
A=3 : Rem       Ausgabeport 3 wird ausgewählt -> IC 4
SCHREIBEN
Print
Print "Noch einmal? Drücke eine Taste."
Print
Print "Oder Abbruch mit Ctrl - C"
Print
Wait Key
Loop
'
'
'************************** Proceduren ********************************
'
Procedure LESEN
'
Poke 12575489,0 : Rem      Port als Eingang schalten
Poke 12570624,248+A : Rem  Adresse A selektieren
N=Peek(12574977) : Rem     Wert N einlesen
Poke 12570624,255 : Rem    Ready LED einschalten
'
End Proc
'
Procedure INIT
'
Poke 12571136,199 : Rem    Busy,P-aus und SEL=Bitmuster Ausgabe
Poke 12570624,255 : Rem    Adresse 7 selektieren (Ready LED ein)
Poke 12575489,0 : Rem      Port als Eingang schalten
'
End Proc
'
Procedure SCHREIBEN
'
Poke 12570624,248+A : Rem  Adresse A selektieren
Poke 12575489,255 : Rem    Port als Ausgang schalten
Poke 12574977,N : Rem      Wert N schreiben
Poke 12570624,255 : Rem    Ready LED einschalten
'
End Proc
'
