Well, if everything is working in Basic, why choosing any kind of assembler interrupt. In case your Write statement still not working you can use the EEIE, EEIF, WRERR interrupt/flag (INTCON.6, EECON1 register) , to validate that your EEPROM write is done with F84A