[an error occurred while processing this directive]
III.3
НУЛЕВАЯ СТРАНИЦА ПАМЯТИ ЭВМ "АГАТ-9"
(в среде DOS 3.3 и BASIC-AGAT 9.1)
-------------------------------------------------------------
ячейки содержимое ячейки и его управляющая
0-ой страницы значение среда
-------------------------------------------------------------
.ин2; *1
.ин0
¤00-¤02 Kоманда перехода к языку (BASIC)
в BASIC-APPLESOFT (JMP ¤E003)
(в BASIC-AGAT 9.1 ошибка)
.ин2; *2
.ин0
¤03-¤05 Kоманда перехода к языку (BASIC)
(назначение не известно).
.ин2; *2
.ин0
¤0A-¤0C Kоманда перехода для директивы (BASIC)
BASICа "USR". По умолчанию
установлен JMP ¤E1AC (выдать
"ошибочное значение").
¤0A код команды JMP (¤4C)
¤0B-¤0C адрес кодовой подпрограммы
.ин2; *3
.ин0
¤0D-¤17 Флаги и счетчики общего назна- (BASIC)
чения. Используются при интер-
претации программы.
¤11 Флаг типа переменной:
(<¤80- число)
(>¤80- строка)
¤12 Флаг подтипа переменной:
(<¤80-целое число)
(>¤80-вещественное)
.ин2; *4
.ин0
¤19 Биты D7-D3 содержат старший (MONITOR)
байт активной текстовой страницы.
(остальные биты не используются)
.ин2; *4
.ин0
¤20-¤23 Содержат величины, обуславливаю- (MONITOR)
щии размеры активного текстового
окна.
¤20 левая граница окна (¤00-¤3F)
¤21 правая (¤00-¤40)
¤22 верхняя (¤00-¤1F)
¤23 нижняя (¤00-¤20)
.ин2; *4
.ин0
¤24 Горизонтальная позиция курсора (MONITOR)
(¤00-¤3F) (BASIC)
.ин2; *4
.ин0
¤25 Вертикальная позиция курсора (MONITOR)
(¤00-¤1F)
.ин2; *4
.ин0
¤28-¤29 Адрес первого байта текстовой (MONITOR)
строки, на которой стоит курсор.
¤2D Знак, выдаваемый в качестве (MONITOR)
курсора. Обычно прочерк (¤DE). (BASIC)
.сс
-------------------------------------------------------------
ячейки содержимое ячейки и его управляющая
0-ой страницы значение среда
-------------------------------------------------------------
.ин2; *5
.ин0
¤30 Цвет отображаемого пикселла для (BASIC)
графических режимов в особом
формате. Устанавливается опера-
тором "COLOR="
.ин2; *4
.ин0
¤32 Цвет символа, выводимого на экран (MONITOR
в формате ДК. (BASIC)
.ин2; *3
.ин0
¤33 Знак приглашения.
MONITOR (¤AA "*") (MONITOR)
BASIC (¤5D "}") (BASIC)
DOS 3.3 (¤00 или ¤5D) (DOS)
.ин2; *6
.ин0
¤36-¤37 Адрес подрограммы системного
вывода. Устанавливается главной
активной средой. Обычно DOS.
(¤474)-если DOS не активна (BASIC)
(¤488)-если DOS активна (DOS)
.ин2; *6
.ин0
¤38-¤39 Адрес подпрограммы системного
ввода. Устанавливается аналогично.
(¤477)-если DOS не активна (BASIC)
(¤48E)-если DOS активна (DOS)
.ин2; *3
.ин0
¤42-¤43 Адрес свободного буфера файла (DOS)
в банке D.
.ин2; *1
.ин0
¤45-¤49 служебный ячейки подпрограмм (MONITOR)
IOSAVE (¤FF4B) и IOREST (¤FF40) (DOS)
Монитора. Хранят соответственно:
¤45 регистр A
¤46 X
¤47 Y
¤48 P (обнуляется DOS)
¤49 S
.ин2; *1
.ин0
¤4E-¤4F Счетчики цикла в подпрограмме (MONITOR)
KEYIN Монитора. Используются
для задержки при мигании курсора
.ин2; *3
.ин0
¤50-¤61 Указатели общего значения для (BASIC)
интерпретатора BASIC.
.ин2; *3
.ин0
¤62-¤66 Результаты последней операции (BASIC)
умножения или деления в формате
с плавающей запятой.
.ин2; *3
.ин0
¤66 Имеет значение для процедуры (BASIC)
смены адреса начала программы
пользователя (при этом ¤66=¤00)
.сс
-------------------------------------------------------------
ячейки содержимое ячейки и его управляющая
0-ой страницы значение среда
-------------------------------------------------------------
¤67-¤68 Адрес начала программы. (BASIC)
(по умолчанию ¤1901)
¤69-¤6A Адрес начала области хранения (BASIC)
простых переменных. Устанавли-
вается директивой "LOMEM:" BASICа.
¤6B-¤6C Адрес начала области хранения (BASIC)
переменных-массивов.
¤6D-¤6E Адрес конца используемого массива (BASIC)
чисел.
¤6F-¤70 Адрес начала области хранения (BASIC)
текстовых переменных. Эта область
распространяется от указанного
значения до ¤C000 (начала адресов
ввода/вывода).
.ин2; *3
.ин0
¤71-¤72 Указатель общего назначения. (BASIC)
¤73-¤74 Адрес "конца OZU" для BASICа. (BASIC)
Устанавливается "HIMEM:"
¤75-¤76 Номер выполняемой в данное время (BASIC)
строки программы.
¤77-¤78 "Старый номер строки". Устанавли- (BASIC)
вается при нажатии клавиши "f=" или
выполнении команд "STOP" и "END".
Равен номеру строки в которой про-
изошло прерывание программы.
¤79-¤7A "Указатель старого текста". (BASIC)
Содержит адрес ячейки на 1 меньше
той, в которой содержится следующий
выполняемый оператор программы.
¤7B-¤7C Текущий номер строки, в котором (BASIC)
содержатся те введенные оператором
"DATA" данные, считывание которых
происходит в данное время оператором
"READ".
¤7D-¤7E Указывает абсолютный номер ячейки (BASIC)
OZU, начиная с которой произво-
дится считывание данных оператором
"READ".
¤7F-¤80 Указатель используемого в данное (BASIC)
время источника данных для
оператора "INPUT". При выполнении
команды "READ" указывает на тот
оператор "DATA", с которого про-
изводится считывание данных.
.сс
-------------------------------------------------------------
ячейки содержимое ячейки и его управляющая
0-ой страницы значение среда
-------------------------------------------------------------
.ин2; *3
.ин0
¤81-¤82 Содержит имя последней из исполь- (BASIC)
зовавшихся переменных.
.ин2; *3
.ин0
¤83-¤84 Адрес указателя к значению пос- (BASIC)
ледней из использовавшихся пере-
менных.
.ин2; *3
.ин0
¤85-¤9C Ячейки общего назначения (BASIC)
¤8B ¤03 (значение не известно)
¤90-¤92 Переход на подпрограмму.
(¤90 содержит код JMP (¤4C))
Используется директивой "PEEK".
.ин2; *1
.ин0
¤9D-¤A3 Главный накапливающий сумматор (BASIC)
для чисел в формате с плавающей
запятой.
¤9D показатель степени
¤9E-¤A1 мантисса
¤A2 служебная ячейка (содержит ¤9D-#¤80)
¤A3 знак числа (¤00-"+",¤FF-"-")
.ин2; *1
.ин0
¤A4 Ячейка общего назначения для под- (BASIC)
программ интерпретатора, выполняю-
щих математические операции с числами
представленными в формате с плавающей
запятой.
.ин2; *1
.ин0
¤A5-¤AB Дополнительный сумматор для чисел. (BASIC)
Формат как у главного сумматора.
.ин2; *3
.ин0
¤AC-¤AE Указатели и флаги общего значения. (BASIC)
¤AF-¤B0 Адрес конца программы пользователя. (BASIC)
(не меняется при выполнении дирек-
тивы "LOMEM")
.ин2; *6
.ин0
¤B1-¤C8 Программа "CHRGET" (взять символ). (BASIC)
BASIC вызывает ее каждый раз,
когда ему требуется другой символ.
.ин2; *2
.ин0
¤B8-¤B9 Указатель последнего символа, полу-
ченного при помощи "CHRGET".
.ин2; *3
.ин0
¤C9-¤CA "Случайное число". Используется (BASIC)
функцией BASICа "RND (X)".
.ин2; *5
.ин0
¤D0-¤D5 Данные, необходимые для отобра- (BASIC)
жения на экране дисплея графи-
ческой информации.
¤D0 Указатель графического режима (MONITOR)
.ин2; *2
.ин0
¤D8-¤DF Данные, устанавливаемые програм- (BASIC)
мой обработки ошибок при включе-
нии в программу оператора "ONERR
GOTO".
.сс
-------------------------------------------------------------
ячейки содержимое ячейки и его управляющая
0-ой страницы значение среда
-------------------------------------------------------------
¤D8 Флаг команды "ONERR GOTO";
устанавливается, если оператор
найден в тексте программы:
(<¤80 - не включен)
(>¤80 - включен)
¤DA-¤DB Номер строки программы, в кото-
рой произошла ошибка.
¤DC-¤DD Содержит адрес меньший на 1 адреса
ячейки, в которой содержится опера-
тор, при попытке выполнения которого
произошла ошибка. Используется опера-
тором BASICа "RESUME".
¤DE Код ошибки.
¤DF Содержит указатель регистра S (для
возвращения по "RESUME").
.ин2; *3
.ин0
¤E4 Цвет установленный для графичес- (BASIC)
кого режима.
.ин2; *5
.ин0
¤E5-¤E7 Данные, необходимые при отображе- (BASIC)
нии графических изображений
¤E7 Значение масштаба воспроизведения
образов. Устанавливается директивой
"SCALE".
.ин2; *6
.ин0
¤E8 Указатель подключенных банков (DOS)
к сегментам 4 и 5. (MONITOR)
Должен хранить байт ¤44, показы-
вающий, что к сегменту 4 подключен
.ин2; *6
.ин0; 4 банк, а к сегменту 5 - ¤44+¤10 (5-ый).
¤E9 Указатель подключенных банков
к сегментам 6 и 7 (аналогично).
.ин2; *5
.ин0
¤E8-¤E9 Адрес начала таблицы форм линий (BASIC)
(образов).
.ин2; *3
.ин0
¤EA Счетчик коллизий при отображении (BASIC)
на экране дисплея графики высокого
разрешения.
.ин2; *2
.ин0
¤F0-¤F3 Служебные флаги. (BASIC)
¤F1 Значение скорости вывода информа-
ции в обратном коде. Устанавли-
вается директивой "SPEED".
¤F2 Флаг включения отладки программы.
Устанавливается директивами BASICа
"TRACE" (>¤80) и "NOTRACE" (<¤80).
.ин2; *2
.ин0
¤F4-¤F8 Указатели для оператора "ONERR (BASIC)
GOTO"
.ин2; *3
.ин0
¤FF Специальный указатель для запуска (DOS)
программы. (BASIC)
.сс
(*) ПРИМЕЧАНИЯ:
---------------
1-Ячейки можно использовать.
2-Изменение содержимого ячеек ведет или может привести к
нарушению правильности выполнения некоторых операторов
интерпретатора или системы в целом.
3-Назначение ячеек до конца не известно. Вероятно можно
использовать.
4-Изменения содержимого приведет к нарушению правильности
отображения информации в текстовых режимах.
5-Изменение содержимого приведет к нарушению отображения
графической информации.
6-Изменение данных приведет к отключению интерпретатора и
DOS.
! Многие ячейки ZERO PAGE не указаны в таблице. Это означает, что либо их функции не вполне ясны, либо что они имеют множественное значение и используются различными системами (то есть состояние их не важно и каждый раз переустанавливается заново). Для более полного изучения ZERO PAGE в среде BASIC-DOS рекомендуется обратиться к исходным текстам этих программ.
.ст Раздел III:4
[an error occurred while processing this directive]