I really suck at assembly programming but I'm going to say (write) what I think, then hopefully someone will correct me if I'm wrong.
The constant in this case is called INTHAND which is defined to contain the adress, in program memory, where the routine _ISR is located. What happens is that PCLATH (the high byte of the program counter) gets loaded with the 8 high bits of the adress of _ISR. I suspect there's also code to take the low 8 bits and put them in PCLATU. All in all, that would cause the program to jump to _ISR.
After reading SteveB's other posts that's my understanding of it but again I might very well be wrong.
/Henrik.
Bookmarks