Ive added a little code in now and it seems to be causing problems. Heres what my code looks like

Code:
serialData:

    'Get a byte of data
    temp=RCREG

    datapos=datapos+1
    
    select case datapos
        case 1           
            vred=temp
        case 2        
            vgreen=temp
        case 3
            vblue=temp      
        case 4
            vwhite=temp
            datapos=0
    end select
             
@ INT_RETURN
As you can see theres nothing special. It simply sets each byte to one of the 4 colors in turn. The problem is that if i set any color to half on (anything other than 0 and 255) i get really bad flashing on all the LEDs. Thats even just sending 1 byte of data at a time. Im gonna try messing with it to see if i can get it to work better. Do you have any ideas?