na, is ja eh' super. du mußt nurmehr der hauptschleife sagen, wenn der string komplett is
Code:
'.... 
On Urxc Onrxd 
Enable Urxc 
Enable Interrupts 

Dim S As String * 6 
Dim S_array(7) As Byte At S Overlay 
dim fertig as byte


'..... 
Main: 
    if fertig = 1 then
         print "da isser ja:", s
         fertig = 0                   ' quittieren
         n = 0                          ' zurücksetzen 
    end if

    ' ich mach inzwischen was anderes, muß aber natürlich immer wieder 
    ' mal wieder nach oben zu "main" kommen, logo. 
   
'.... 
    Goto Main 


Onrxd: 
   if fertig = 0 then
      Incr N 
      S_array(n) = Udr 
      if   S_array(n) = 0 then fertig = 1
   end if
Return
Die "fertig" abfrage in "onrxd" ist dazu da , daß erst wieder was genommen wird, wenn die hauptroutinen den string zu kenntnis genommen hat. Ist sie zu schnell mit dem nächsten string, hat sie Pech gehabt.

Um das zu vermeiden, müßtest du einen Zwischenbuffer verwenden.
da wird's aber komplizierter. Schau mal, ob das so nicht eh' reicht.