Thanks for the help and I have tried mister_e's suggestion about interrupts

I have tried with the on interrupt with odd results
the program goes into setup mode with the lcd flickering i guess it is due to the
goto setsetpoint to refresh the lcd .

the problem is it will never leave the loop when i press save ( 1 for active 0 inactive)

I noticed by mistake the if i hold down save the program runs again as soon as i let go it stops, I want the save save to be pressed once and resume running the program.

I am guessing that I made an error in the code below but it compiles just fine.

Thanks in advance for any more help.

SetSetPoint:
DISABLE

LCDOut $FE,1, "Setpoint at", #SetPoint, "F"

if Incr = 1 then 'change the setpoint
pause 500
SetPoint=SetPoint+1
if Setpoint>80 then SetPoint=60 'Allow setpoint from 60 to 80

goto SetSetPoint 'refresh LCD with new setpoiont
endif

If Save = 0 then goto SetSetPoint

Resume
ENABLE