This is really strange.. its as though the "IF" in the "IF i = 245" is being ignored.

I've just tried the following and it simply ramps up the LED to full brightness, over and over again, with out any pause ! (ie its the same as not having the pause statement there)

Code:
Main:
For i = 1 to 254                                                 
Pwm GPIO.0,i,1
if i = 254 then pause 500
if i = 254 then down
next i