>Remember that you do not have to do all your context >save before your MOVLW xxx/MOVWF TMR1H pair. > >Assumptions: >1: We 'know' that TMR1H is in bank zero. (Use the datasheet LUKE) >2: TMR1 is the only enabled interrupt (this condition >has to be true or this scheme certainly won't work >because a TIMER1 interrupt could occur while in >the middle of handling another interrupt) > >You only need to: Sure this would help with the original problem. HOWEVER the interrupt routine NEEDS heavy commenting to explicitly show that short cuts have been taken because of the required processing time. Otherwise you can guarantee that somewhere along the line the code will be copy/pasted into another application on the basis that it works - and will fail big time. Remember the first Ariane 5 launch - the code works on an Ariane 4, why didn't it work this time ?? The sort of comment level I would expect for doing this sort of short cut is the verbose level of Fr. MacGhee's UART.ZIP - which is almost a book in itself. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist