For 9600 baud you need to use Timer 2 with the baud rate generator which the 89C52 has (the standard 8051 does not have this). You can't generate 9600 baud from a 12MHz crystal using Timer 1, you'd need an 11.059MHz crystal
See page 13 of the 89S52 data sheet here:
www.keil.com/dd/docs/datashts/atmel/at89s52_ds.pdf
--
Tim Mitchell