Hallo Papsi!

Du musst mit ISCHARWAITING prüfen, ob ein neues Zeichen anliegt. Wenn nicht, dann darfst du nicht mit INPUTBIN danach fragen. Denn INPUTBIN wartet bis ein Zeichen kommt. Das ganze Programm bleibt also an dieser Stelle stehen. Somit dürfte auch klar sein, weshalb DEBOUNCE nicht funktioniert.
Code:
dim is_waiting as byte

   ...
   is_waiting = ischarwaiting(#1)
   if is_waiting = 1 then
      Inputbin #1 , A
      If A = 10 Then Goto XYZ

      If Relaisx1hoch = 0 And Relaisx2hoch = 0 And Relaisx3hoch = 0 And Relaisx4hoch = 0 Then
          Alleshoch = 0
          X13hoch = 0
          X23hoch = 0
          X33hoch = 0
          X43hoch = 0
      End If

      If Relaisx1runter = 0 And Relaisx2runter = 0 And Relaisx3runter = 0 And Relaisx4runter = 0 Then
          Allesrunter = 0
          X13runter = 0
          X23runter = 0
          X33runter = 0
          X43runter = 0
      End If
   end if

   Debounce Tasterx1hoch , 0 , X1hoch , Sub       'Tasterabfrage
   Debounce Tasterx1runter , 0 , X1runter , Sub
   ...
Außerdem fehlt mir in diesem Programm irgendwie die OPEN-Anweisung.

Wenn du langen Code zeigen möchtest, dann kannst du diesen in einen Paste-Service wie z.B. LodgeIt! http://paste.pocoo.org/ eingeben und uns dann den Link zu diesem Code posten.

mfg
Gerold
:-)