RE: 8 + 8bits variable

You could use a union as follows:

union intchar
{
        struct{
                unsigned char lo;
                unsigned char hi;
                }byte;
        unsigned int total;
}


union intchar timer1;
union intchar myvar;

timer1.lo = TIMER1L;
timer.hi = TIMER1H;
myvar.lo = CCPR1L;
myvar.hi = CCPR1H;

myvar.total += timer1.total;
CCPR1L = myvar.lo
CCPR1H = myvar.hi

Probably not very efficient though...

Regards

Mike Rigby-Jones