Hi, change the for to "FOR C=0 TO 7" . I think you counted one too many there.
Mmmh, it say the same, even for 2, it just take a bit more time to say it ><
I can only see part of your code. Do you have a larger for loop, not seen, around the whole thing? It looks like you have a game loop and you recreate the udg every time? You only need to create the udg once and then you can start your game loop. Move the code in lines 62 to 75 to the beginning and make sure it is only run once.
and if you move the code to the beginning, skip the RETURN line, I forgot that one.
Here is a code that could give you hints. Use W,A,S,D to move the character. This one uses the return, see how the GOSUB calls line 1000 at the beginning, the RETURN returns to the line after the GOSUB. So you can break up your code in tidier modules using that method.