Hi Donnie,
I will answer what I can.
You can configure a timer as a hardware counter to count in the background. You are correct about the timer having the ability to trigger interrupts. Your main loop can track a variables value and jump to a subroutine when that variable reaches a certain value, and continue "resume" where it left off, without interrupts, or your interrupt routine can check the value and do . . .
EDIT: Outdrawn again !