Лик/Руководство пользователя

Материал из Emuverse
Данный материал защищён авторскими правами!

Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей.

Источник: http://www.emu80.org/dev/dev_lk.html

                              АННОТАЦИЯ

    В данном руководстве приведено описание действий оператора по
    загрузке и запуску программ, входящих в комплект программного
                    обеспечения радиоконструктора
          "Бытовое электронно-вычислительное устройство ЛИК"
                 (в дальнейшем радиоконструктор ЛИК).

1. Назначение программ

МОНИТОР-1М - это  ядро  системы  программного  обеспечения  радиоконс-
трук-тора  ЛИК.  Программа  МОНИТОР-1М  является  основной управляющей
программой и представляет простые и удобные средства для работы непос-
редственно в машинных кодах.

Программа РЕДАКТОР служит для внесения изменений в символьные записи.

МОНИТОР и  РЕДАКТОР  предоставляют  возможность пользователю проверять
и/или изменять содержимое памяти,загружать программы или данные с маг-
нитофонной ленты и начинать выполнение программы,а также управлять пе-
риферийными устройствами (бытовой телевизионный приемник, бытовой маг-
нитофон).

Интерпретатор языка  БЕЙСИК обеспечивает подготовку и выполнение прог-
рамм,  написанных на алгоритмическом языке БЕЙСИК. Язык программирова-
ния БЕЙСИК ориентирован на выполнение программ в режиме диалога.

Связь оператора с МОНИТОРОМ, РЕДАКТОРОМ и интерпретатором языка БЕЙСИК
осуществляется посредством нажатия клавиш радиоконструктора ЛИК.

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

2. Условия выполнения прoграмм

Для работы  комплекта программ радиоконструктора ЛИК необходим следую-
щий состав оборудования:

   - бытовой кассетный магнитофон;
   - бытовой телевизионный приемник;
   - радиоконструктор ЛИК;
   - источник питания;
   - соединительные жгуты.

3. Выполнение программ

Программное обеспечение радиоконструктора ЛИК состоит из МОНИТОРА, ин-
терпретатора БЕЙСИК, РЕДАКТОРА, игровых программ и каталога.

3.1. МОНИТОР

Вызов МОНИТОРА,находящегося  в ПЗУ ,  можно произвести нажатием клавиш
<CБP>,<STOP>,<BK>. На экране телевизора под надписью *RUN "СОМ:" долж-
но  появиться  сообщение  "МОНИТОР  -  1М" с курсором в виде сплошного
квадратика и стрелки под надписью. МОНИТОР готов к приему директив.

Запись МОНИТОРА в память радиоконструктора ЛИК с магнитофона кассеты:

   - установить кассету с программой "МОНИТОР" в кассетоприемник магнитофона;
   - перемотать ленту к началу записи;
   - установить счетчик магнитофона в ноль;
   - нажать клавишу <СБР>;
   - пустить ход ленты в режиме чтения;
   - по началу сигнала на ленте, обнаруживаемому по звуку или индикатору сигнала,
   - отпустить клавишу <СБР> и ждите окончания сигнала на ленте.

При нормальной загрузке, после окончания сигнала на магнитофонной лен-
те, на экране под надписью *RUN "СОМ:" должна появиться надпись *МОНИ-
ТОР - 1М* с курсором в виде сплошного квадратика и  стрелки  под  над-
писью.  МОНИТОР  готов к приему директив.  Если МОНИТОР был загружен с
магнитофона, он повторно вызывается последовательностью <СБР> , <SТОР>
, <ПС> .

3.1.1. Директивы МОНИТОРА

D ADR  - распечатка и редактирование содержимого памяти в шестнадцате-
ричном и символьном виде с адреса ADR.Печатается  таблица  размером  в
129байт, начиная с ADR. После печати таблицы выводится приглашение ==>
, означающее ожидание ввода команды редактирования:

<ВК> - распечатка следующего блока
[<-] - редактирование шестнадцатеричной таблицы ,
[->] - редактирование символьной таблицы
<ПВТ>- повторение директивы
<ВК> - выход из редактирования
<пробел> - выход в МОНИТОР

Пример. Распечатать содержимое памяти с адреса ООООН

Действие оператора: D0<BK>

Сообщение МОНИТОРА:

        О    1    2    3    4    5    6    7     01234567
        8    9    А    В    С    D    E    F     89ABCDEF
0000    XX   XX   XX   XX   XX   XX   XX   XX    YYYYVYYY
0008    XX   XX   XX   XX   XX   XX   XX   XX    VYYYYYYY
0010    XX   XX   XX   XX   XX   XX   XX   XX    YYYYYYYY
0018    XX   XX   XX   XX   XX   XX   XX   XX    YYYYYYYY
0020    XX   XX   XX   XX   XX   XX   XX   XX    YYYYYYYY
0028    XX   XX   XX   XX   XX   XX   XX   XX    YYYYYYYY
        ...  ...  ...  ...  ...  ...  ...  ...
0078    XX   XX   XX   XX   XX   XX   XX   XX    YYYYYYYY

где: 0000, 0008, 0010,...,0078 - адреса памяти;
О   1   2   3   4   5   6   7
8   9   А   В   С   D   E   F - поправка к адресу;
XX  XX  XX  XX  XX  XX  XX  XX - содержимое памяти в шестнадцатеричном виде;
YYYYY - содержимое памяти в символьном виде.

Примечание. При вводе адреса незначащие нули можно опускать.

Пример. Отредактировать содержимое памяти:  по адресу  0000H  записать
F1, а по адресу 0001H записать СС. После чего выйти в МОНИТОР.

Действие оператора:

D0<BK>
[<-]
F1CC
<BK>
нажать <пробел>

сообщение МОНИТОРА:

после первой  команды  МОНИТОР  выводит на экран таблицу,  после ввода
[<-] курсор занимает исходное место в верхнем левом углу  шестнадцате-
ричнон таблицы. После ввода F1CC содержимое адресов 000H и 001H меняют
свое значение на F1 и СС соответственно. Одновременно меняется по этим
же адресам значение символьной информации. После нажатия <ВК> происхо-
дит выход из редактирования. После нажатия <пробела> происходит завер-
шение редактирования.


М ADR,XX - запись кода XX в ячейку с адресом ADR.

Пример. Записать код 31H в ячейку 8В40H.

Действие оператора:
М8В40,З1<ВК>
Сообщение МОНИТОРА:
* МОНИТОР - 1М *
===>

F ADR1,ADR2,XX - заполнение области памяти с ADR1 пo ADR2 кодом XX.

Пример. Заполнить область памяти с адреса 000Н по адрес 1FFFH кодом 76Н

Действие оператора;
F0,1FFF,76<BK>
Сообщение МОНИТОРА:
* МОНИТОР - 1М *
===>

Т ADR 1 ,  ADR2 ,ADR3 - пересылка содержимого области  памяти  ADR1  -
ADR2 по адресу АDRЗ. Копировать можно и перекрывающиеся области.

Пример. Переслать содержимое  памяти  с области 0000Н - 01EFH и области
0010Н - 01FFH.

Действие оператора:
T0,1EF,10<BK>
Сообщение МОНИТОРА:
* МОНИТОР - 1М *
===>

S ADR1,ADR2,XX - поиск в области памяти ADR1 - ADR2 кода XX.

При этом выводится адрес ячейки,содержащий искомый  код  и  содержимое
трех ячеек,начиная с найденного адреса.

Пример. Произвести поиск кода CDH в области памяти с адреса ОООН по
адрес 1FFFH.

Действие оператора:
S,1FFF,CD ,<ВК>
Сообщение МОНИТОРА:
015E CD 37 С0
0ЗСА CD A1 04
13E5 CD EF 10
* МОНИТОР - 1М *
===>

Монитор печатает все адреса (015Е,0ЗСА,13Е5),  по которым он нашел код
СD. Дополнительно печатается содержимое еше двух ячеек, которые следу-
ют аа ячейкой с кодом CD.

С ADR1,ADR2,ADR3  -  сравнение  области памяти ADR1 - ADR2 с областью,
начинающейся с адреса ADR3. На экран выводятся адреса и содержимое не-
совпадающих ячеек.

Пример. Область памяти с ОО0ОH по 1FFFH адреса заполнить кодом 34Н.  В
ячейку 035ЕН записать 2FH.  Сравнить область,  памяти ООООН - OFFFH  с
областью памяти 1000 - 1FFF.

Действие оператора:
F0,1FFF,34 <BK>
M35E,2F <BK>
С0,FFF,1000 <ВК>
Сообщение МОНИТОРА:
035E 2F 135Е 34
* MONITOR-1M *
===>

2FH - код ааписан по адресу 035ЕН
34Н - код записан по адресу 135ЕН

I=ИMЯ,ADR1,ADR2,XX - ввод программы с магнитофона.  XX - константа за-
писи(необязательна).Имена найдениых на ленте файлов,имена  которых  не
совпадают с указанным, будут печататься на экране. Энак <== после рас-
печатанного имени означает, что файл найден и загружается. Если адреса
не указывать,  то файл будет загружен по адресам,  указанным на ленте,
иначе по адресам ADR1+4 - ADR2+4,  а в ячейках ADR1+3 будут находиться
адреса файла, записанные на ленте.

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

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

Пример. Ввести с магнитофона каталог поставляемых программ.

Действия оператора:

   - Перемотать магнитофонную ленту на начало 2-го файла.
   - ввести команду: I=КАТАЛОГ
   - включить магнитофон в режиме чтения
   - нажать клавишу <ВК>
   - ждать окончания ввода информации с магнитофона
   - выключить магнитофон.

Сообщение МОНИТОРА:

КАТАЛОГ <==
2B40
8F3F
2DC9
2DC9

* МОНИТОР -1М *
===>

Примечание:

КАТАЛОГ <==  - это означает, что программа найдена и загружается.

8В40 - начальный адрес.
8F3F - конечный адрес.
2СD9 - контрольная сумма.
2CD9 - контрольная сумма после загрузки.

G=ИМЯ - загрузка программы с магнитофонной ленты и ее запуск с  именем
ИМЯ. При вводе с ошибкой запуск программы не производится.

Пример. Ввести  в  ОЗУ ЛИКа с магнитофонной ленты каталог поставляемых
программ и распечатать его.

Действия оператора:

   - Перемотать магнитофонную ленту на начало 2-го файла.
   - ввести команду: G=КАТАЛОГ
   - включить магнитофон в режиме чтение
   - нажать клавишу <ВК>
   - ждать окончания ввода информации с магнитофона
   - выключить магнитофон

Сообщение МОНИТОРА:

КАТАЛОГ <==
8В40
8FЗF
25С9
25С9

0001  КАТАЛОГ         8В40 - 8F3F
0002  КАТАЛОГ0        8В40 - 8F3F
0003  РЕДАКТОР        0000 - OFFF
0004  BASIC           0000 - 1DBF
0005  РЕВЕРСИ         0000 - OD01
0006  ШАХМАТЫ         0000 - 60FF
0007  ПИТОН           000O - OA7F
OOO8  GAME*MLOAD      0000 - 1000
0009  FREE

*МОНИТОР - 1M *
===>

На экране  распечатан каталог поставляемых программ,  где в первой ко-
лонке указан номер файла. Во второй колонке указаны названия программ,
кроме  первой программы МОНИТОР,  которая не имеет названия на ленте и
эагружается по нажатию клавиши <СБР>. В третьей колонке указаны адреса
размещения  данных программ в оперативной памяти ЛИКа после их загруз-
ки.

O=ИМЯ,АDR1,АDR2,XХ - вывод области ADR1 - ADR2  на  магнитофон,  XХ  -
константа  записи(необязательна).  Имя  файла может состоять не более,
чем из 15 символов.Если в памяти находится КАТАЛОГ,необходимо  предва-
рительно воспользоваться директивой Р. Eсли файл уже есть в КАТАЛОГЕ и
выводится повторно,то адрвса(всли они остались прежними) можно не ука-
зывать.

После нажатия на клавишу <ВК> на экран будет выведена контрольная сум-
ма.

Пример. Вывести на магнитофонную ленту КАТАЛОГ, под именем FILES, рас-
положенный по адресам 8B40H - 8F3FH.

Действие оператора:

   - вставить магнитофонную ленту в кассетоприемник и перемотать ее на начало
   - свободного файла.
   - ввести команду: O=FILES,8B40,8F3F
   - включить магнитофон в режим записи
   - нажать клавишу <ВK>
   - ждать окончания вывода информации на магнитофонную ленту.
   - выключить магнитофон.

Сообщение МОНИТОРА:
F5A1
* МОНИТОР -1М *
===>

Примечание: F5A1 - контрольная-сумма

V - сравнение содержимого ОЗУ с записью  на  ленте.  Используется  для
контроля  правильности  только что записанной на ленту программы,  для
чего после записи перематывают ленту к  началу  записанной  программы,
набирают директиву V и по началу звука нажимают клавишу <ВК>.  Если по
окончании ппроверки будет выведена надпись "ОШИБКА",значит запись  не-
обходимо повторить.

Х - вывод на экран констант ввода-вывода.

Пример. Вывести константы ввода-вывода на экран. Действия оператора:

Х <ВК>
Сообщение МОНИТОРА:
ЗС28
* МОНИТОР - 1М *
===>

Примечание: В сообщении ЗС28 - ЗСН является константой ввода,
28Н является константой вывода.

J ADR - запуск программы с адреса ADR, ранее загруженной в ОЗУ.

К ADR1,ADR2 - подсчет контрольной суммы блока ADR1 - ADR2.

Пример. Подсчитать контрольную сумму информации, что находится с адре-
са ООООН по адрес 01FFH.

Действие оператора:

К0,1FF <BK>
Сообщение МОНИТОРА:
FFOO
* МОНИТОР - 1М *
===>

В - загрузка в ОЗУ и запуск БЕЙСИКА.

Пример. Загрузить БЕЙСИК в оперативную память радиоконструктора ЛИК и
подготовить его к приему информации.

Действие оператора:
В <ВК>
Сообщение МОНИТОРА:
* BASIC ЛИК V2 *
ОК

Примечание: При отсутствии интерпретатора БЕЙСИК в ПЗУ загрузку его
произвести с миникассеты.

Выйти из программы БЕЙСИК в МОНИТОР можно нажав клавиши:
а) <СБР>, <STOP> , <ВК> - для МОНИТОРА в ПЗУ
б) <СБР>, <STOP>, <ПС> - для МОНИТОРА, загруженного с магнитоф. ленты.


A ADR - дизассемблирование программы с адреса ADR. Пример. Если в опе-
ративной  памяти  с  адреса ООООН по адрес 01FFH нахoдится программа в
машинным кодах,  то произвести ее дизассемблирование  можно  следующим
образом:


Действие оператора:
A0 <ВК>
Сообщение МОНИТОРА:
0000 31 FF 3F 1.. LXI SP,7FFF
0003 21 00 С8 '.. LXI H ,0000
0006 22 El 8F ".. SHLD 8FE1

где в первой колонке укааан адрес,  во 2-й, 3-й и 4-й - шестнадцатери-
чиый код, в 5-й колонке - метка команды, в 6-й - команда ассемблера.

Р - распечатка каталога файлов. Если каталог в ОЗУ не загружен, то при
попытке выполнить директиву Р будет выведена сообщение об ошибке. Если
загружен "чистый" каталог,  то перед началом работы необходимо  выпол-
нить директивы М8В40,31<ВK>. "Чистый" каталог находится на магнитофон-
ной ленте,  поставляемой потребителю - файл 3, имя файла КАТАЛОГ 0. Он
используется  для  записи и хранения перечня программ потребителя,  их
начальный и конечный адреса размещения в ОЗУ после загрузки  и  номера
счетчика магнитофонной ленты.

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

Действие оператора:

   - Вставить поставляемую магнитофонную ленту в кассетоприемннк и пе-
ремотать ее на начало 3-го файла ввести команду:  I=КАТАЛОГ 0
   - включить магнитофон в режиме чтения
   - нажать  клавишу  <ВК>
   - ждать окончания ввода информации с магнитофона
   - выключить магнитофон

Сообщение МОНИТОРА:
КАТАЛОГ 0 <==
8В40
8F3F
8АА1
8АА1
* МОНИТОР - 1М *
===>
Действие оператора:
М8В40,З<ВК>
Сообщение МОНИТОРА:
* МОНИТОР - 1М *.
===>

Пример. Распечатать каталог файлов. Действие оператора:

Р<ВK>
Сообщение МОНИТОРА:
0010  FILES       8В40 - 8F3F
0030  FREE

P1,N - ввод номера N счетчика ленты,  куда  будет  выведена  очередная
программа - директива, выполняется перед записью программы на магнито-
фон.

Пример. Записать область памяти с адреса ООООН по адрес 01FFH на  маг-
нитофонную ленту.  Счетчик ленты - 30.  Название выводимой программы -
PROGRAM 1.

Действие оператора:
Р1,30<ВK>
Сообщение МОНИТОРА:
* МОНИТОР - 1М *
===>

Действие оператора:

   - Вставить магнитофонную ленту в кассетоприемник н перемотать ее на начало.
   - Сбросить счетчик ленты в ноль.
   - Выключить перемотку ленты вправо (>>) и наблюдать за счетчиком ленты.
   - Выключить магнитофон при гоказании счетчика 30.
   - Нажать на магнитофоне клавишу "ожидание" и "запись".
   - Ввести директиву O=PROGRAM1,0,1FF
   - Отжать магнитофонную клавишу "ожидание".
   - Нажать <ВК>.
   - Ждать окончания вывода информации на ленту.
   - Выключить магнитофон.

Распечатать состояние КАТАЛОГ 0 можно следующим образом.

Действие оператора:
Р<ВК>

Сообщение МОНИТОРА:
0010 FILES          8B40 - 8F3F
0030 РROGRAM1       0000 -  О1FF
0030 FREE

P2,N - ввод номера и счетчика ленты,  куда можно (будет потом записать
очередную программу).  Этот номер означает свободное место на кассете,
и  при  распечатке  каталога  директивой P будет выведен в конце:  N -
FREE.

Пример. Изменить признак начала следующей записи. В предыдущем примере
мы записали на ленту программу PROGRAM1. Счетчик магнитофонной ленты в
конце записи был равен 80.  Значит следующую информацию будем  записы-
вать по счетчику рвному 90.

Действие оператора:
Р2,90<ВК>
Сообщение МОНИТОРА:
* МОНИТОР - 1М "
===>

Примечание. Если директиеной P <BK>,  распечатаем каталог, то он будет
выглядеть следующим образом:

0010 FILES       8BAO - 8F3F
0030 PROGRAM1    0000 - 01FF
ОО90 FREE

РЗ,N - удаление строки каталога с  номером N.

Пример. Удалить в каталоге строку с номером 30.
Действие оператора:
RЗ,30 <ВК>
Сообщение МОНИТОРА:
* МОНИТОР - 1M *
===>

Р4 - подготовка для записи программы на свободное место ( с номером по
счетчику FREE)

Пример. Записать на  свободное  место  магнитофонной  ленты  программу
PROGRAM2 ( с номером по счетчику FREE) .

Действие оператора:
P4<BК>
Сообщение МОНИТОРА:
* МОНИТОР - 1M *
===>

Действие оператора:
O=PROGRAM2,200,3FF
Установить магнитофонную ленту на начало свободного файла и включить
в режим записи.
Нажать клавишу <ВК>
Сообщение МОНИТОРА:

7101 - контрольная сумма данной программы
Если задать директиву Р<ВК>, то на экране появится содержимое каталога:

0010    FILES      8В40 - 8F3F
0090    PROGRAM2   0200 - 03FF
0090    FREE

Выполнение любой директивы,  кроме вывода на ленту, можно прервать на-
жатием клавиши <STOP>. Продолжить выполнение можно нажатием любой кла-
виши.  Окончательно  прерывается работа одновременным нажатием клавиши
<STOP> и <ПРОБЕЛ>. Прервать ввод с магнитофона можно нажатием последо-
вательности <SТОР> и <ПС>.

При вводе  директив  нулевые параметры можно не указывать,  но запятая
обязательна.  Незначащие нули  параметров,можно  не  писать.  Вводимую
строку можмо редактировать клавишами [<-] и [->].  Крайний справа сим-
вол удаляется клавишей < ЗБ>. Директива выполняется после нажатия кла-
виши <ВК> независимо от расположения при этом курсора.

Предыдущую директиву  можно повторить,  если вместо ввода новой нажать
<ВК>.