Thanx for pointing the way on posting

serin stuff, works in backround......

Code:
asm
DONSint MOVLW "|"
        CPFSEQ  RCREG      ;CHECK FOR "|" START CHAR 7CH
        GOTO no#MATCH        
#MATCH  LFSR    FSR2,150   ;INDEX1=250...A0H  START OF DATA FSR2=150
        SETF _RCVok        ;SET OK TO RECIEVE FLAG  
        GOTO OUT1        
no#MATCH BTFSS _RCVok,1     ;LEAVE IF OK TO RECIEVE FLAG NOT SET 
        GOTO OUT1             
        MOVFF RCREG,POSTINC2   ;STORE RCV CHAR TO LOCATION INDEX1 ,FSR2                              
        MOVLW 250              ;INC INDEX AUTOMATICALLY 
        CPFSLT FSR2L           ;CHECK FOR INDEX > 250, 100 CHARS OR  
        GOTO OUTgo         
        MOVLW "~"              ;CHECK FOR "~" END CHAR 7EH         
        CPFSEQ  RCREG        
        GOTO OUT1       
        GOTO OUTgo        
OUTgo   SETF _DATAready    ;TELL BASIC DATA READY 
        CLRF RCIE          ;INT OFF UNTIL BASIC TAKES CHARS
        CLRF _RCVok        ;RCV OK OFF UNTIL # START CHAR
        CLRF CREN
        RETFIE  FAST
                
OUT1    CLRF CREN          ;LEAVE INT HERE IF MORE CHARS
        SETF CREN
        RETFIE  FAST
endasm     
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''