Hi Brian,

It's NOT a typo. You can use all available interrupts simultaneously.

On any interrupt, the program flow will be directed to the single interrupt handler. Then it's up to you to determine which one fired.

Each interrupt source has 2 bit's associated with it. An Enable bit (*IE), and an Interrupt Flag (*IF). You need to look in the datasheet to find where those bit's are.

Then in the interrupt handler, check BOTH the enable bit and the interrupt flag to determine if a particular interrupt has triggered.

For example, to have the RB Port change and Timer1 interrupts, it might look something like this...
Code:
RBIE    VAR INTCON.3
RBIF    VAR INTCON.0
TMR1IE  VAR PIE1.0
TMR1IF  VAR PIR1.0
TMR1ON  VAR T1CON.0

OldBits VAR BYTE
NewBits VAR BYTE


OldBits = PORTB   ; End the mismatch
RBIF = 0          ; clear the flag
RBIE = 1          ; enable PORTB change interrupts

TMR1IF = 0        ; clear TMR1 interrupt flag
TMR1IE = 1        ; enable Timer1 interrupts
TMR1ON = 1        ; Start the Timer

ON INTERRUPT GOTO INTHandler

Main:
    PAUSEUS 20
GOTO Main

DISABLE
INTHandler:
    IF RBIE and RBIF THEN
        NewBits = PORTB  ; end the mismatch
        RBIF = 0         ; clear the flag
        ; handle RB port change interrupt here
        OldBits = NewBits
    ENDIF

    IF TMR1IE and TMR1IF THEN
        TMR1IF = 0       ; clear the flag
        ; handle Timer1 interrupt here
    ENDIF
RESUME
ENABLE
hth,