logo
ZX-Review-1992-01-12

53. SAVE <строка TO строка;> устройство;> имя

SAVE DATA <УСТРОЙСТВО;>имя

См. также DEFAULT <устройство>

Вотличие от стандартного БЕЙСИКа, Бета Бейсик позволяет выгружать не всю программу, а только ее часть, а также выгружать отдельным блоком программные переменные. Параметр <строка TO строка> указывает, начиная с какой строки производится выгрузка и по какую. Если он не указан, то выгружается вся программа целиком.

Вформе SAVE DATA этот оператор служит для выгрузки только программных переменных. Если номер устройства, на которое должна происходить выгрузка, не указан, то выгрузка производится на ленту (если ранее оператором DEFAULT не было задано какое либо иное устройство в качестве основного). Если же номер устройства задан, то выгрузка производится на соответствующий микродрайв (если командой DEFAULT в качестве устройства ввода/вывода не были назначены локальная сеть или последовательный порт RS232).

Примеры

SAVE 10 TO 200; "fragment" часть программы, начиная с десятой строки по строку 200 включительно выгружается на ленту под именем "fragment".

SAVE 900 ТО;"box" под именем "box"выгружается часть программы, начиная со СТРОКИ 900 и до конца.

SAVE DATA "vars3" под именем "vars3" выгружаются все программные переменные. SAVE 20 TO 70;2;"bit" под именем "bit" на микродрайв номер 2 выгружается часть

программы, начиная со строки 20 по 70 ую.

ВНИМАНИЕ!

1.Если Вы захотите загрузить ранее выгруженную часть программы или блок программных переменных, то имейте в виду, что после команды LOAD стирается имевшаяся

вкомпьютере Бейсик программа, включая и нулевую строку. Блок программных переменных тоже трактуется как программа, не имеющая номеров строк.

Во избежание подобных коллизий Вам целесообразно подгружать ранее отгруженные фрагменты с помощью команды MERGE.

2.Одно из важнейших назначений команды SAVE строка TO строка состоит в том, чтобы Вы могли отгружать свои процедуры по отдельности и формировать из них на кассете библиотеки процедур для последующего использования. Узнать начальные и конечные номера строк для каждой процедуры можно с помощью ранее рассмотренной команды LIST PROC.

Может быть, вы сочтете целесообразным перед выгрузкой процедуры переместить ее

вконец программы, поменяв в ней номера строк с помощью команды RENUM и впоследствии использовать с помощью команды MERGE.

3.Наиболее целесообразное применение оператора SAVE DATA для отгрузки состояния программы. Если вы написали игровую программу, имеющую большую продолжительность, то с помощью такой команды сможете дать пользователю возможность отложить игру. Впоследствии он сможет начать ее сначала или продолжить, загрузив отложенный блок программных переменных.