Чисто на бейсике, подобную конструкцию, врятли можно оформить как-то короче.
Можно попробовать использовать значение переменной, как аргумент команды перехода. Правда, в плане экономии памяти, не все так очевидно, ибо потребуется использовать пространство в 256 с чем-то строчек и "команды-заглушки".
10 LET K= CODE INKEY$
12 GOTO 20+K
....
52 GO TO 10
....
68 GO TO (ЕСЛИ НАЖАТА КЛАВИША "0")
....
275 GOTO 10
- - - Добавлено - - -
Если времени и желания осваивать ассемблер, нет - критичные по времени куски если не всю программу, логичней писать изначально под компилятор (например, тот же MCoder2 от Евдокимова). После компиляции создается исполняемый код, не требующий присутствия самого кода компилятора в памяти (т.е. "верхняя память", над скомпилированной программой, становится свободной для использования), и вроде как даже есть функция компиляции с диска (т.о. частично решается проблема нехватки памяти).





Ответить с цитированием