Probably because this compiler is intelligent ...

0 to 255 can be obtained without any value calculation ( yesss ... 255 + 1 = 0 for a byte ! ) , but 0 -150 need to compare actual value to 150 ( implies a calculation and resetting value to 0 when 150 reached ) @ each loop ...

just a possible explanation ...

Alain