The second example in the first post does not work correctly.
When I run my prog with the second example, my Speed VAR will go crazy and show up numbers between 50 and 240(?). Speed is declared as VAR Byte and set to "0" at beginning of prog.
Look at this from the posted code.
Code:
'Set game speed according to level
    if mem_l = 2  then speed = 1 : gosub game_speed
    if mem_l = 3  then speed = 2 : gosub game_speed
    if mem_l = 4  then speed = 3 : gosub game_speed
    if mem_l = 5  then speed = 4 : gosub game_speed
''    if mem_l = 2  then speed = speed + 1 : gosub game_speed
''    if mem_l = 3  then speed = speed + 1 : gosub game_speed
''    if mem_l = 4  then speed = speed + 1 : gosub game_speed
''    if mem_l = 5  then speed = speed + 1 : gosub game_speed

    value = value + 1           'To change the "seed" for random #
    Goto MAIN
Do you see a problem?