From the CCS compiler reference located here
http://www.ccsinfo.com/downloads/ccs_c_manual.pdf:
Timer1
These options lets the user configure and use timer1. The clock/counter is 16-bit on pic16s and pic18s. It
counts up and also provides interrupt on overflow. The options available differ and are listed in the device
header file.
Relevant Functions:
setup_timer_1(mode) Disables or sets the source and prescale for timer1
set_timer1(value) Initializes the timer1 clock/counter
value=get_timer1 Returns the value of the timer1 clock/counter
Relevant Preprocessor:
None
Relevant Interrupts:
INT_TIMER1 Interrupt fires when timer1 overflows
Relevant Include Files:
None, all functions built-in
Relevant getenv() parameters:
TIMER1 Returns 1 if the device has timer1
Example Code:
For PIC18F452
setup_timer_1(T1_DISABLED); //disables timer1
or
setup_timer_1(T1_INTERNAL|T1_DIV_BY_8); //sets the internal clock as source
//and prescale as 8. At 20Mhz timer1 will increment
//every 1.6us in this setup and overflows every
//104.896ms
set_timer1(0); //this sets timer1 register to 0
time=get_timer1(); //this will read the timer1 register value
The code snippet:
setup_timer_1(T1_DISABLED); //disables timer1
makes clear setup_timer_1() can stop timer1 as I predicted before. You are free to try it on a 16f mcu but I doubt it won't work. That gives 2 possibilities,
1- Either the CCS people are the dumbest guys ever to maintain a compiler,
2- You are still being careless.
I don't think it's option 1 so good luck with your project!