Как выйти из Microsoft GW-BASIC, IBM BASICA или других подобных старых диалектов BASIC?


person MD XF    schedule 30.05.2017    source источник
comment
BASICA — это новый vim?   -  person Davislor    schedule 30.05.2017


Ответы (4)


GWBASIC и его клоны (например, IBM BASIC и BASICA) выходили в командную строку DOS с помощью команды system.

Хотя перенаправление было возможно даже в ранних версиях MS-DOS/PC-DOS, интерпретатор BASIC не использовал стандартные потоки ввода и вывода и имел свои собственные Ctrl-Break /Ctrl-C, поэтому ни одно из этих нажатий клавиш не завершало работу интерпретатора.
Команда shell запускала новую копию системного интерпретатора команд (обычно COMMAND.COM ), либо выполнял системную команду, а затем возвращался на Бейсик, но не удалял интерпретатор из памяти.

person Jeff Zeitlin    schedule 30.05.2017
comment
@PTBW - я считаю, что MBASIC был клоном GW-BASIC или его урезанной версией; Однако я никогда не пользовался CP/M, поэтому мои знания о нем носят «академический» или «анекдотический» характер. - person Jeff Zeitlin; 29.08.2020
comment
Ах да, system. Старый, отставной нейрон только что проснулся. - person Synetech; 20.12.2020

Введите «system» и нажмите Enter, чтобы выйти из GW-BASIC в DOS.

Введите «shell» и нажмите Enter, чтобы перейти в DOS, но с GW-BASIC в памяти. Введите "exit" в DOS, чтобы вернуться в GW-BASIC.

person Artix    schedule 01.03.2020
comment
Спасибо. Это единственное, что сработало, если вы также используете эмулятор dos, такой как dosbox. - person SpeedOfSpin; 15.10.2020

Обычно для этих редакторов командной строки Ctl-Z помогает, поскольку он отправляет символ EOF и, таким образом, сигнализирует о завершении ввода.

Если это не поможет, попробуйте ввести system

person Community    schedule 30.05.2017

Согласно руководство, связанное paulsm4, CTRL-BREAK во время перенаправления вывода приведет к выходу из BASIC. В нем также говорится, что команда SHELL возвращается в командную оболочку MS-DOS. (На оригинальном IBM PC BASIC находился в ПЗУ и, следовательно, всегда находился в памяти.)

person Davislor    schedule 30.05.2017