Mahlzeit.

Ich hab heute mit dem unteren Programm nochmals probiert

Code:
define speed    byte[8]
define dist     byte[9]
define eingabestart byte[10]
define timer_startwert  word
define timer_endwert    word
define Zeitdauer_MilliSekunden  word[1]
'---------- INIT---------------
        gosub SUBSYS_PWR_ON
        beep 368,10,0:pause 50
'---- SYSTEM OPERATION MODE (NO INTERRUPT) ----
        gosub NO_ACS_INT:SYS ACS_MAX
'------------ ANTRIEB -------------------------
        REV_L=on:REV_R=on:SYS PLM_SLOW

#start
      gosub CLR_DISTANCE
      eingabestart=1
goto test


#test
     input speed
     print "Geschwindigkeit [Geschwindigkeitsdigits]: "; speed
     gosub L_DISTANCE
     dist = LBYTE
     IF speed = 0 then goto stop
     IF eingabestart=1 THEN timer_startwert = timer
     IF eingabestart=1 THEN print "Timer Startwert [counter]: "; timer_startwert
     gosub move_fwd
     eingabestart=0
goto test


'--------------------------------------------
#stop
timer_endwert = timer
print "Timer Endwert [counter]: "; timer_endwert
SYS FWDR:SYS FWDL:SPEED_L=0:SPEED_R=0
Zeitdauer_MilliSekunden = timer_endwert - timer_startwert
'IF Zeitdauer_MilliSekunden < 0 THEN Zeitdauer_MilliSekunden = 32767-timer_startwert+timer_endwert
print "Zeitdauer [counter]: "; Zeitdauer_MilliSekunden
print "Distanz [digit]: "; dist
goto start

#move_fwd
SYS FWDR:SYS FWDL:SPEED_L=speed:SPEED_R=speed:return
aber kommischerweise gibt der Robby immer nen negativen Wert von "Zeitdauer_MilliSekunden " aus.

Weiß jmd warum? Danke im Voraus.

MfG

itech