Справочник по системным программам для компьютера ZX Spectrum 1991 г.

Описание 16/48 - монитор 16/48.


■ Монитор 16/48

Монитор-программа предназначена для программирования в
машинных кодах. Она включает в себя средства ввода и отладки
программ в машинных кодах и дизассемблер.

Монитор занимает чуть больше 4к памяти у ее вершины и не
может перемещаться.

Загрузка монитора стандартная: LOAD ""

Для доступа к монитору адресуйтесь к нему в зависимости от его
версии:

RANDOMIZE USR 30479 (для 16к)

RANDOMIZE USR 63247 (для 48к)

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

PRESS BREAK FOR MONITOR

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

Приглашение (>) указывает, что монитор готов к приему коман-
ды.

*

Команды монитора

M-MEMORY - вывод и изменение содержимого памяти
X-ESCAPE - выход из командного режима к началу монитора

A-ARE А - перемещает область озу в новое место

F-FILL - заполняет область озу обозначенным значением

байта

I-INSERT - вставляет до 255 байт в программу

D-DELETE - стирает до 255 байт из программы
B-BRE AKPOINT - устанавливает адрес останова в программе
K-CODES - восстанавливает коды после прохождения

останова

R-REGISTERS - высвечивает содержимое регистров процессора
C-CONTINUE - продолжает выполнение программы после

останова

Y-RETURN - возвращение к бейсику
P-PRINTER - печать на принтере в НЕХ-виде
$-DOLLAR - ввод текста

Z-Z80 - дизассемблирует любую часть памяти

N-NUMBER - превращение чисел HEX-DEX и DEX-HEX

Внимание/: Все обращения к адресам и их содержимому в этой
инструкции будут в НЕХ-виде и приводятся в виде дву- или четырех-
значных чисел, без суффикса"Н".

Далее каждая команда будет разобрана подробно, с примерами,
для разъяснения ее действия.

М - после ввода команды вводится адрес ячейки памяти после
ввода четвертой цифры адреса справа от него появится
значение ячейки:
>М600000_

можно изменить содержимое ячейки, например на FF:
>M600000FF_

как только введена вторая Н ЕХ-цифра, содержимое
ячейки изменилось.

M600000FF
600100_

монитор выводит адрес следующей ячейки и ее содержимое.
Выход из режима "М" клавиша "X".
X - команда позволяет выйти из командного режима и

возвращает вас к подпрограмме монитора. Этой командой
прерывается любая команда кроме "R" и "К".

I - команда позволяет вставить до 255 байтов в любое место
вашей программы, сдвигая конечную часть программы
на соответсвующее число байтов.
Формат команды:
IAAAABBBBNN
где:

I-команда INSERT;

АААА - начальный адрес вставки;

ВВВВ - исходный адрес конца смещаемого блока;

NN - количество вставляемых байтов.

П р и м ер:
600203

6003 04 / место в которое надо

6004 05 вставить 5 байт/
600506

600708
600809

600В ОС -конец программы
вводим команду: 16004 6008 05
D - команда имеет действие противоположное "Г.
Формат: D АААА ВВВВ NN

параметры команды аналогичны команде "INSERT"
А - команда перемещает указанную область озу и имеет
формат:

А АААА ВВВВ СССС
где:

АААА - начальный исходный адрес смещаемой области
ВВВВ - конечный исходный адрес смещаемой области
СССС - новый начальный адрес.
Эта команда смещает заданную область памяти в любом
направлении, даже если новая область накладывается на
исходную. Исходная область памяти сохраняется, если она
не переписана в результате перемещения.
F - эта команда позволяет заполнить произвольную область
памяти произвольным значением. Формат команды:
FAAAABBBBXX
где:

АААА - начальный адрес указанной области;
ВВВВ - конечный адрес указанной области;
XX - вводимое значение
Y - над клавишей "Y" напечатана команда "RETURN", и

после нажатия этой клавиши и клавиши "ENTER", когда
на нижней строке экрана появится приглашение и курсор,
происходит возвращение в бейсик. Поскольку этот монитор

не имеет собственных команд "SAVE" и "LOAD", вы
можете воспользоваться командой" Y" для использования
"SAVE" и "LOAD" из бейсика. Если вернувшись в бейсик,
вы снова захотите обратиться к монитору, используются
следующие адреса с функцией USR, в зависимости от
версии монитора:

версия 16к: RANDOMIZE USR 30479
версия 48к: RANDOMIZE USR 63247

В - позволяет временно прервать выполнение программы в
машинных кодах в любой точке и вернуть управление
монитору. Формат:
ВАААА
где:

АААА - адрес останова (АААА должен быть первым
байтом команды многобайтной команды).
Коды трех адресов аааа, аааа+1, аааа+2
автоматически сохраняются в байтах данных
внутри монитора, а эти ячейки загружаются
командами:

CDOFF1 (для версии 48к)
CD OF 77 (для версии 16к)
что является обращением к монитору.

J - команда позволяет запустить любую вашу программу,
формат:
JAAAA,
где:

АААА - начальный адрес вашей программы. Команда
начинает свое действие с очистки экана.

К - команда"К" восстанавливает только последний
BREAKPOINT.

R - выводит значения всех регистров Z80 на экран.

С - позволяет продолжить работу после BREAKPOINT и

выполняется нажатием "С" и "ENTER". Вы можете выйти
в монитор, напечатав "Х"и "ENTER". Запущенная команда
будет продолжаться как будто BREAKPOINT не было.
Экран очищается, программный стек восстанавливается,
регистры процессора из своих блоков данных до введения
адреса возврата в программный счетчик и исполнение
возобновляется.

Р - команда вывода содержимого памяти на SINCLIAR
PRINTER. Формат команды:
Р ААААВВВВ,
где:

АААА - начальный адрес для вывода;
ВВВВ - конечный адрес для вывода.

$ - действует таким же образом, как и" М", и позволяет
вводить текст прямо с клавиатуры. Формат команды:
$АААА,
где:

АААА - начальный адрес текстового блока.С помощью
"CAPS SHIFT" и "SIMBOLSHIFT" можно
вводить любые символы, исключая "$". Графи-
ка UDG и команды, вводимые в режиме
"EXETEND MODE" не могут вводиться непо-
средственно. Инвертированные символы обра-
зуют доступ к областям памяти, содержащим
атрибуты.

Z - эта команда дизассемблирует любую часть ОЗУ или ПЗУ,
с выводом только на экран, или на экран и принтер. Распе-
чатка включает НЕХ-адрес первого байта команды,
НЕХ-значения байтов, относящихся к этой команде и
мнемонику Z80 относящуюся для этой команды. Формат
команды:
ZAAAABBBB,
где:

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

N - эта команда превращает HEX-DEX или DEX-HEX. После
ввода команды на экране появится.МиМВЕЯ N/ D? Необ-
ходимо ответить, какое число превращаем. НЕХ-числа
должны быть четырехзначными.

РЕГИСТРЫ Z80.

ре-

16к

48к

ре-

16к

48к регистр 16к 48к

гистр

гистр

R

7F3D

FF3D

Н'

7F46

FF46 IX/мл./ 7F4F FF4F

I

7F3E

FF3E

F

7F47

FF47 IX/ст./ 7F50 FF50

F'

7F3F

FF3F

А

7F48

FF48 IY/мл./ 7F51 FF51

А'

7F40

FF40

С

7F49

FF49 IY/ст./ 7F52 FF52

С'

7F41

FF41

В

7F4A

FF4A SP/мл./ 7F53 FF53

В'

7F42

FF42

Е

7F4B

FF4B SP/ст./ 7F54 FF54

Е'

7F43

EF43

D

7F4C

FF4C PC/мл./ 7F55 FF55

D'

7F44

FF44

L

7F4D

FF4D РС/ст./ 7F56 FF56

L'

7F45

FF45

Н

7F4E

FF4E




СОДЕРЖАНИЕ:


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

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



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

Похожие статьи:
Inferno - Ошибки в предыдущих номерах.
Софт - ZX Terminal 97 - вaщ пyть в Интepнeт (пo мamepиaлaм фиpмы Cкopnиoн).
Werewolf - Зверь из Жеводана.
Обзор - новые игры: RETURN TO HOME 4, CITADEL, KLADEMINER, BRIDGE PLAYER, CRUSHER, AMERICAN TURBO KING, RAD RAMP RACER, KUNG FU MASTER, CHOY LEE, SIDERAL WAR, ARKARUM, DIRT TRACK RACER, DOUBLE DRAGON 2, NIGHT BREED, THE CYCLES, MOONTORC, KOMMANDO 2.
B.B.S. Новости - О работе B.B.S.'ок.

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