Программирование на Бейсик 48/128 для ZX-Spectrum 1993 г.

SPECTRUM-бейсик - работа с магнитофоном. Запись программ. Проверка правильности записи программы. Загрузка программы.


РАБОТА С МАГНИТОФОНОМ

Запись программ_

SAVE

Написанная программа будет сохраняться в памяти компьютера
до тех пор, пока мы его не выключим. Но для нас важно, чтобы ею
можно было пользоваться и завтра, и послезавтра. Должен быть
некий способ сохранения программ с возможностью в последую-
щем быстрой загрузки их в цамять компьютера. Самый простой
способ — запись на магнитную ленту обычнрго магнитофона (как
кассетного, так и катушечного). То, что создается на магнитной
ленте при записи туда программы, называется файлом.

Подключим магнитофон к специальному гнезду компьютера,
наберем ключевое слово SAVE, а вслед за ним заключенное в
кавычки имя файла с программой. Имя придумаем сами, помня
лишь о том, что оно не должно содержать более десяти символов, но
и менее одного. Например:

SAVE "DOLLAR"

На ввод этого оператора компьютер откликнется сообщением:

Start tape, then press any key.

- то есть попросит включить магнитофон на запись* и нажать
любую клавишу на компьютере. После этого компьютер начнет
«шипеть», а по бордюру побегут цветные полоски — значит, ин-
формация записывается.

По окончании записи появится стандартное сообщение:

• ОК

Обеспечение надежной записи и считывания информации с магнитной ленты —
это тема отдельного разговора. Здесь же посоветуем только устанавливать уро-
вень записи почти на максимум.

Можно записать программу на магнитофон таким образом, что-
бы после загрузки для ее запуска не требовалось выполнения
оператора RUN. А в этом действительно есть необходимость. Ведь
наша программа должна быть рассчитана на непросвещенного
пользователя, от которого грех требовать выполнения даже такого
элементарного действия, как запуск программы.

Для обеспечения автоматического старта при загрузке програм-
мы (автостарта) к оператору SAVE нужно добавить ключевое
слово LINE с указанием строки старта:

SAVE "DOLLAR" LINE 1

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

Проверка правильности записи программы

VERIFY

Бейсик ZX Spectrum позволя-
ет после записи программы на
магнитофон убедиться в без-
ошибочности проведения этой
операции. Перемотаем магнит-
ную ленту в начало записанного
нами файла, наберем оператор

VERIFY "DOLLAR"

— включим магнитофон на вос-
произведение и нажмем Enter.
Когда компьютер встретит на
ленте файл с указанным име-
нем, он начнет сравнивать его с программой, записанной в его
памяти. Если тексты программы в памяти и на ленте совпадают, то
выдается сообщение О ОК, увидев которое можно вздохнуть спокой-
но и выключить компьютер.

Если же появится надпись Таре loading error, значит, запись не
удалась и нужно повторить ее еще раз*.

Загрузка программы

LOAD

Сохраненную на ленте программу (файл) загрузить в память
компьютера после некоторой тренировки достаточно просто. Вы-
полним оператор

LOAD "DOLLAR"

Срыв записи может происходить вследствие дефектов ленты, недостаточного (ре-
дко — избыточного) уровня записи, плохой настройки магнитной головки, неис-
правности соответствующих узлов компьютера или магнитофона и т. д.

— не забыв предвари-
тельно включить магни-
тофон на воспроизведе-
ние. Если, просматривая
ленту, компьютер встре-
тит файл с указанным
именем, то он без лишних
вопросов загрузит его к
себе в память. При ус-
пешном завершении про-
цесса на экране появится
соответствующее сообще-
ние или загруженная
программа будет за-
пущена (если она была
сохранена оператором
SAVE LINE).

Когда имя программы точно не известно, его можно и
не указывать, заменив «пустой строкой» — двумя кавыч-
ками без текста:

LOAD ""

Выполняя этот оператор, компьютер загрузит первую
встретившуюся на ленте бейсик-программу.

Подгрузка программ

MERGE

После загрузки новой программы ранее находившая-
ся в памяти компьютера программа бесследно исчезает.
Но можно загрузить вторую программу и не тронув
старой, из двух программ сделать одну. Если в памяти
компьютера находится наша программа "DOLLAR", а на
ленте имеется программа "PROG", то после ее подгрузки
оператором

MERGE "PROG"

в листинге можно обнаружить строки обеих программ.

При слиянии программ следует особо следить за тем, чтобы в них
не было строк с совпадающими номерами. Иначе строки ранее за-
груженной программы ("dollar") будут попросту заменены на
строки новой ("prog") с совпадающими номерами. Та же участь
ожидает и одноименные переменные.

Запись и загрузка массивов

save...data, load...data

В своей «валютной» программе мы отказались от использования
массива для хранения параметров мелодии. Если бы мы этого не
сделали, то нам мог бы пригодиться оператор save с ключевым
словом data. С его помощью можно сохранять массивы отдельно
от программы, что позволяет существенно сократить ее размер.
Ведь после того, как однажды при наладке программы рассчитаны
или считаны из оператора data значения элементов массива и он
сохранен на магнитной ленте, часть программы, делающая расчет
или считывание, может быть со спокойной совестью удалена.

Более того, возможность сохранения массивов отдельно от про-
граммы позволяет, в зависимости от желания пользователя, варь-
ировать ее функции, подгружая одни или другие файлы с мас-
сивами. Например, при загрузке нашей программы можно было
бы попросить пользователя по своему усмотрению выбрать музы-
кальное сопровождение программы. Для этого следовало бы при
написании программы подготовить и сохранить на магнитной
ленте несколько массивов с параметрами различных мелодий.

Сам процесс записи массива ничем не отличается от записи
всей программы, только после имени файла нужно записать клю-
чевое слово data, а после него имя массива с двумя пустыми
скобками:

save "melod" data м()

Соответственно, считывание массива производится оператором
load "melod" data м()

Правильность записи массива можно проверить оператором
verify "melod" data м()




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Coding - Конверсия числа со стека калькулятора в символьную строку.
BBS NEWS - График работы BBS на неделю.
Колонка редактора - C.Бережной, А.Николаев.
События - эскиз официального логотипа "FunTop".
Юмор - Детишки.

В этот день...   21 ноября