On AT89S52 platform .T0 interrupt_routine like following:
void Timer0(void) interrupt TF0_VECTOR { static unsigned char data cF=0; static unsigned char data c=0, cC= 0; T0RC = -(SYSCLK/1000/12)*INTERVAL; c = c + 1; cqq =cqq + 1; bMR = ~bMR; bFF = ~bFF; }
... AUXR = 0X00; T0RC = -(SYSCLK/1000/12)*INTERVAL; TMOD = 0X01; TCON = 0X01; TR0 = 1; SCON = 0X50; RCAP2 = -(SYSCLK/32/BAUDRATE); T2MOD = 0X00; T2CON = 0X34; IE = 0X97; IP = 0X00; ...