I will try it first thing tomorow, but one question: If I move the disable and enable how will it ever get run? wouldnt it just skip right past those??? maybe im not sure exactly what you mean:

disable 'disable interrupts
ticker:
intcon.2 = 0 'clear flag
TMR0 = 129 'Set Preload
tick = tick + 1 'keeps track of times it was interrupted
if tick = onsteps then low pwmout 'if its where it needs to be to be switched, switch it
if tick = 100 then 'if its at the end
if current > offmax then high pwmout'and its above hysterisys then turn reset the PWM
tick = 0 'and restart the ticker
endif
resume 'Restart the main program from where it left off
enable 'enable interrupts

I really cant see how this would work. i am assuming that i misunderstood.....