Работа с ZX-Spectrum 1993 г.

Интерфейс диска «BETA». Глава 9-10. - переименование и стирание файлов, ведение дискового хозяйства. Сохранение, верификация, загрузка, выполнение и подгрузка программ.


ГЛАВА 9

ПЕРЕИМЕНОВАНИЕ И СТИРАНИЕ ФАЙЛОВ, ВЕДЕНИЕ
ДИСКОВОГО ХОЗЯЙСТВА

ПЕРЕИМЕНОВАНИЕ ФАЙЛОВ - КОМАНДА NEW

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

В отличие от других команд диск должен находиться в дисководе по
умолчанию, пусть это будет дисковод А. Это также одна из немногих диско-
вых команд, которую нужно давать из TR DOS. а не из СОС.

Итак, мы находимся в TR DOS, используем дисковод по умолчанию А и
пользуемся ключевым словом NEW (клавиша А). Сначала просмотрим каталог
диска, чтобы увидеть заголовок файла, который хотим переименовать.

Теперь вводим ключевое слово NEW., за ним новое имя файла (как
обычно в кавычках) и через запятую старое имя:
NEW "BOOT","PROG"

После того, как нажмете ENTER, подсказка исчезнет на пару секунд, а
когда появится снова, то вроде бы ничего не произошло. Просмотрите сно-
ва каталог и увидите, что вместо программы PROG появилась программа
BOOT

СТИРАНИЕ ФАЙЛА - КОМАНДА ERASE

Если файл на диске Вам больше ненужен, то его можно стереть.Для
этого используется ключевое слово ERASE. Чтобы ввести его. нужно
перейти в режим Е и, удерживая клавишу SVMVOL SHIFT, нажать на
клавишу 7. то есть:

ERASE"ULUPROG"
ERASE"OBSULE" DATA

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

УПЛОТНЕНИЕ ДИСКОВОГО ПРОСТРАНСТВА - КОМ АНДА MOVE

После того, как файл стерт, сектора, которые он занимал, должны
быть освобождены перед тем как могут быть использованы другими
файлами. Чтобы вернуть сектора, занятые стертыми файлами, используем
команду MOVE. Это ключевое слово извлекается нажатием SVMVOL SHIFT
и 6:

MOVE или
MOVE "В:"

Хотя второй вариант работает, предпочтительнее использовать диско-
вод по умолчанию. Эта команда обязательно должна вызываться из TR
DOS, а не из СОС. Одним словом, сначала переходим в TR DOS, потом
немного постираем, а потом командой MOVE освободим место из-под
стертых файлов.

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

Хотя команда MOVE, как и всякая другая программа в машинных кодах,
работает быстро, время ее выполнения зависит от количества файлов, их раз-
меров, количества стертых файлов на диске и прочее. В целях экономии вре-
мени хорошей практикой является уплотнение диска сразу/после того, как Вы
что-нибудь стерли. Это позволяет вам сразу записать максимальное количес-
тво информации.

ГЛАВА 10

СОХРАНЕНИЕ, ВЕРИФИКАЦИЯ, ЗАГРУЗКА,
ВЫПОЛНЕНИЕ И ПОДГРУЗКА ПРОГРАММ

Синтаксис всех этих команд почти одинаков и очень похож на
синтаксис команд для работы с кассетами.

Все эти команды имеют дело с Файлами. Это могут быть про'раммь. на
BASIC'e. программы в кодах, массивы данных или файлы с последовательным
или произвольным доступом. Чтение й запись массивов данных рассмотоены
в главе 12. файлы с последовательным и произвольным доступом - в главе 13.
Эта глава посвящена чтению и записи программ на BASIC'e и в кодах.

Во время выполнения одной из этих пяти команд клавиша BREAK мо-
жет быть использована для прекращения операции. Если диска в дисководе
нет. то выполнение команды прекращается немедленно и выдается сооб-
щение: «NO DISK». Аналогично, если на диске нет указанного файла, выдает-
ся сообщение: «NO FILE(S)»

КОМАНДЫ ЗАПИСИ - SAVE И ВЕРИФИКАЦИИ - VERIFY

Команда SAVE записывает программу в памяти, на диск. Необходимо
указать имя файла в кавычках.

Для программы на BASIC'e тип файла не указывается. Однако можно
указать номер строки (после ключевого слова LINE)#ля автозапуска. Если но-
мер строки не указан, то программа будет запущена с пёрвой строки.
SAVE "НОМ EACO" LINE 100
SAVE *40RAPH"L1NE
SAVE "A:DESIGN"
Для программы в машинных кодах необходимо указать тип файла
CODE, за которым следует старший адрес и число байтов, которое необ-
ходимо записать:

SAVE "DISC0UNT"C0DE 47800,955
SAVE "B:COLLECT"CODE 32768,4000
Команда VERIFI проверяет, совпадает ли файл, записанный на диск.с
тем, чтс находится в памяти Команда VERIFI может быть использована для
проверки программ на BASIC'e. в машинных кодах и для проверки массивов
данных. Например:

VERIFY "A:DESIGNM
VERIFY "DISCOUNT-CODE 47800,955
VFRIFY "MONEY"DATA M
Если обнаружатся отличия, то будет выдано сообщение об ошибке.

КОМАНДЫ LOAD - ЗАГРУЗИТЬ И RUN -ВЫПОЛНИТЬ

Если программа на BASIC'e была записана сказанием номера строки
для автозапуска, то есть:

SAVE t4INTEREST"LINE 25
то при выполнении команд LOAD или RUN она будет стартовать авто-
матически. Если программа на BASIC'e написана без автозапуска, то коман-
да LOAD производит загрузку и распечатку, а затем команда RUN - загрузку
и выполнение программы. Например:
LOAD "INTEREST-
RUN "DESIGN-

Вы, вероятно, догадываетесь, что TR DOS может сообщить о нехватке
памяти - «INSUFFICIENT MEMORY». если Вы пытаетесь загрузить програм-
му. превышающую по размерам доступную память. Это может получиться,
если RAMTOP установлена слишком низко.

Если Вы даете команду LOAD или RUN без указания имени файла, то TR
DOS загружает и запускает программу на BASIC е е именем "BOOT"

Легко увидеть, что синтаксис команд аналогичен синтаксису BASIC'a.
Что касается программ в машинных кодах то онц могут загружаться по тому
же адресу, с которого были записаны, например:

LOAD "A:SALEGALS'*CODE
или по другому адресу, если мы укажем куда:

LOAD "MARGINTODE 51000
При запуске программ в машинных кодах адрес автозапуска должен
совпадать с адресом загрузки, то есть:

RUN MDISCOUNTnCODE 47800
Эта команда загружает программу и запускает ее с того же адреса.
Альтернативной является загрузка и запуск с помощью программы в
две строчки, например, запишем следующую программу командой SAVE
UDKTLUADWL1NE10

10 RANDOMISE USR 156I9:REM:

LOAD "DISCOUNT' CODE 47000
20 RANDOMISE USR 47838
Теперь, если мы введем команду RUN "DCTLOAD". то эта программа
загрузит программу в машинных кодах и запустит ее с адреса 47838.

Две строчки получаются потому, что команда TR DOS должна быть
последней в строке.

КОМАНДА MERGE - ПОДГРУЗИТЬ

Эта команда работает аналогично команде СОС. Она приводится в
действие тем же ключевым словом (режим Е SYMBOL SHIFT М) и выполняет
ту же функцию, то есть подгружает программу с диска к программе, которая
уже находится в памяти. Например:
MERGE "SUBROUT"
MERGE *B:FUNCT2"




СОДЕРЖАНИЕ:


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

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



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

Похожие статьи:
Интервью - На вопросы отвечает Михаил Белоусов (Amadeus Voxon).
Dirty English - грязные ругательства.
Реклама - Компьютеp SPECTRUM +2 (фиpменный) с пpинтеpом.
Двиагтель торговли - Пpодам, куплю ,обменяю пpогpаммы для ZX Spectrum Каталог запишу бесплатно на ваши диски (5,25 или 3,5 дюйма).
Free Page - рецензия на самое крутое демо 99 года: NAPALM.

В этот день...   26 апреля