Add DISABLE/ENABLE around the interrupt handler, and any subroutines called from the handler.
Without them, the interrupt handler will continuously interrupt itself.
Code:
DISABLE
buttonpressed:
    gosub All_on
    dummy=porta  ; clear mismatch condition
    INTCON.0 = 0   ; reset interrupt flag
resume                     
ENABLE

 ...

DISABLE
all_on:
  a=7:c=63
  pause t1
return
ENABLE