Fastest Interrupt?

Code:
     
'18F452

 @ __CONFIG _CONFIG1H, _OSCS_OFF_1H & _HSPLL_OSC_1H
 @ __CONFIG _CONFIG2L, _BORV_45_2L & _BOR_ON_2L & _PWRT_ON_2L 
 @ __CONFIG _CONFIG2H, _WDT_ON_2H 
 @ __CONFIG _CONFIG4L, _STVR_ON_4L & _LVP_OFF_4L & _DEBUG_OFF_4L

    DEFINE OSC 40 ' REQUIRES PLL  ' USE 10 MHz CRYSTAL & DECLARE: XTAL = 40
    PAUSE 1000  'ALLOW POWER TO STABILIZE   
    
    Clear 
  
    LED	VAR	PortA.1
    i VAR WORD   
    wREAD_TR1 VAR WORD 
    wWRITE_TR1 VAR WORD
    wWRITE_TR1 = 1000 
           
    ADCON1 = %00001111  'ALL_DIGITAL

    '********************
    'INTERRUPT REGISTER'S
    RCON.7 = 0   ' 0 DISABLES PRIORITY LEVELS ON INTERRUPTS (16F COMPATIBILITY)
'    T1CON = %10000001   '%xx00xxx = 1:1 PRESCALE
    T1CON = %10110001   '%xx00xxx = 1:8 PRESCALE                         
    PIE1 = %00000001    'enable TMR1 overflow interrupt
    INTCON = %11000000  'enable global and peripheral interrupts     
    '********************
    
    TRISA.5 = 0 
    TRISA.4 = 1                       
    TRISA.3 = 1
    TRISA.2 = 0
    TRISA.1 = 0   
    TRISA.0 = 0
    TRISB=%00000000
    TRISC=%00010000   ' xxx1xxxx MSSP SPI data in
    TRISD=%00000000
    TRISE.2 = 1
    TRISE.1 = 1
    TRISE.0 = 1
                                 
' Define interrupt handler
DEFINE  INTHAND myint

GOTO MAIN

'**** ASSEMBLY INTERRUPT ROUTINE ****   
Asm
myint 
EndAsm

'SerOut2 PORTA.2,16416,["SET_PORT_INTERRUPT",13] 
TOGGLE LED 
TMR1H = wWRITE_TR1.HIGHBYTE
TMR1L = wWRITE_TR1.LOWBYTE   

Asm
    bcf     PIR1, 0			; Clear interrupt flag
    retfie      			; Return from interrupt
EndAsm
'**** END ASSEMBLY INTURRUPT ROUTINE ****     
    
     
MAIN:
'wWRITE_TR1 = 32000
wWRITE_TR1 = 500

FOR i = 1 TO 1000
PAUSE 1
NEXT

REPEAT 
    wREAD_TR1.LOWBYTE = TMR1L
    wREAD_TR1.HIGHBYTE = TMR1H
UNTIL wREAD_TR1 < 50000  'TMR1 NON INTERFEARANCE WITH SEROUT2   

SerOut2 PORTA.2,16416,["MAIN LOOP wREAD = ",DEC wREAD_TR1,13]
'               16416 = 19200
GOTO MAIN


END