Зачем нужен аккаунт на Viva-Games?
Пользователи, у которых есть аккаунт, могут сохранять игровой процесс на сервер в любой игре и создавать списки игр (как на Youtube, например).
Создание аккаунта абсолютно бесплатно и займёт всего минуту Вашего времени.
Для создания аккаунта просто кликните в блоке "Войти на сайт" иконку социальной сети, в которой у вас уже есть активный профиль и следуйте подсказкам.
HiSoft Devpac
https://viva-games.ru/game/hisoft-devpacHiSoft (Великобритания), 1983
Автор неизвестен
Жанр: Программирование: Asm
Язык
- Русский
- English
Управление
- Клавиатура(?)
Игроков
- Один
Рассказать друзьям
Доступные версии
Доступные версии
- Описание (авт.пер.)
- Описание (авт.пер.)
- Описание (авт.пер.)
- Описание (авт.пер.)
- Информация
H I S O F T
Руководство ZX Spectrum программиста
Д Е V P C
(C) Hisoft 1985
(Вводимый в 1998 году Неле Abels-Людвига. Помощь сохранить программное обеспечение Spectrum полезная. Расшифруйте технические руководства!)
Содержание Страница
ЧАСТЬ 1 GENS3
РАЗДЕЛ 1 НАЧАЛО РАБОТЫ 1
РАЗДЕЛ 2 ПОДРОБНОСТИ GENS3 3
2.0 Как GENS3 работает 3
2.1 Монтажник себе Формат 6 2.2 Этикетки 7 2.3 Место Счетчик 8 2.4 Символ Таблица 8 2.5 Выражения 9 2.6 Макросы 10 2.7 Директивы ассемблера 12 2.8 Условное Псевдо-Мнемоника 14 2.9 Ассемблер Команды 14
РАЗДЕЛ 3 встроенного редактора 19
3.1 Введение в редакцию 19
3.2 Редактор Команды 20 3.2.1 Текст Вставка 20 3.2.2 Текст Листинг 21 3.2.3 Редактирование текста 22 3.2.4 Лента / Microdrive Команды 24 3.2.5 Сборка и запуск 26 3.2.6 Другие команды 26 3.3 Пример Использование редактора 28
ПРИЛОЖЕНИЕ 1 Номера ошибок и их
ЗНАЧЕНИЯ 31
ПРИЛОЖЕНИЕ 2 зарезервированные слова, мнемоника Т.Д. 32
ПРИЛОЖЕНИЕ 3 ПРИМЕР С 33
ПРИЛОЖЕНИЕ 4 продолжительного CAT ПРОГРАММА 39
ЧАСТЬ 2 MONS3
РАЗДЕЛ 1 НАЧАЛО РАБОТЫ 45
РАЗДЕЛ 2 команды, доступные 47
Флип База 47
Страница Разборка 47 Увеличиваем MP на 1 47 Декремент MP на 1 47 Декремент MP на 8 47 Увеличиваем MP на 8 47 Обновление MP С. П. 47 Получить Pattern 48 В шестнадцатеричное 48 Интеллектуальный Копировать 48 Перейти к Адрес 49 Продолжить выполнение 49 Список Память 50 Установить указатель памяти (МП) 50 Получить следующий рисунок 50 Перейти Относительная 51 Заполните памяти 51 Флип Регистрация Display 52 Установить точку останова и продолжить 52 Блок Разборка 52 Обратный Относительная 55 Реверс Абсолютная 55 Установить точку останова 56 Перейти Абсолютная 57 Введите ASCII в память 57 Single-Step 57 Пример сеанса 58 Распечатать памяти 61 Изменение памяти 61 Изменение Регистры 61
ПРИЛОЖЕНИЕ Пример дисплей на передней панели 63
– Страница 1
Руководство Hisoft GENS3 программиста
РАЗДЕЛ 1 НАЧАЛО РАБОТЫ
Введение и Инструкции по заправке
GENS3 является мощным и простым в использовании Z80 ассемблера, который находится очень близко к
стандартный Zilog ассемблера в определении. В отличие от многих других сборщиков доступны для микрокомпьютеров, GENS3 обширная, профессиональный кусок программного обеспечения и Вам настоятельно рекомендуется изучить следующие разделы вместе с, например, в Приложении 3, очень тщательно, прежде чем пытаться использовать монтажник. Если вы полный новичок, работать через Приложении 3 Первый.
GENS3 составляет примерно 9K байт, один раз перемещены, и использует свой собственный
Внутренний стек так, что это самодостаточный кусок программного обеспечения. Это содержит свой собственный редактор неотъемлемой линии, которая помещает текстовый файл сразу после кода GENS3 а таблица символов ассемблера является создана после текстового файла. Таким образом при загрузке GENS3 необходимо разрешить достаточно места, чтобы включать в себя сам ассемблер и максимальное таблицу символов и размер текста, который вы, вероятно, использовать в текущей сессии. Это будет Часто удобно, следовательно, для загрузки GENS3 в нижней памяти.
Для загрузки GENS3 действуйте следующим образом:
Установите прилагаемый ленту в магнитофон, типа:
LOAD “” CODE ххххх
и нажмите кнопку воспроизведения на диктофоне – где ххххх является десятичной адрес в
которые вы хотите GENS3 бежать.
После того как вы loade код GENS3 в компьютер можно ввести сборщик по RANDOMIZE USR ххххх, где ххххх это адрес, по которому вы загружен код ассемблера. Если в любой последующий момент вы хотите снова введите ассемблера, то вы должны выполнить адрес ххххх + 56 для холодного старта (уничтожение любой текст) или адрес ххххх для теплого старта (Сохранение любой ранее созданный текстовый файл).
Например, говорят, что вы хотите загрузить GENS3 так, чтобы он выполняет с адресом
26000 в десятичной – действуйте следующим образом:
LOAD “” CODE 26000
RANDOMIZE USR 26000
Чтобы повторно ввести ассемблера использование RANDOMIZE USR 26056 для запуска холодного двигателя и
RANDOMIZE USR 26000 для теплого старта.
После того, как вы ввели GENS3, вам будет предложено с ‘>’ знак,
командной строки редактора – проконсультируйтесь в разделе 3, как вводить и редактировать Текст и Раздел 2, для чего введите.
– Страница 2
Создание резервной копии
После того, как вы загрузили GENS3 в памяти вашего Spectrum в то вы можете сделать Резервная копия ассемблера выглядит следующим образом:
SAVE “GENS3” КОД ххххх, 10034, чтобы кассеты
SAVE * “M”; 1; “GENS3” КОД ххххх, 10034
где: ххххх является адрес, по которому вы загружены GENS3.
Пожалуйста, обратите внимание, что мы даем Вам возможность сделать резервную копию GENS3 для вашего
собственного использования, так что вы можете запрограммировать с уверенностью. Пожалуйста, не копируйте GENS3 дать (или хуже, продать), чтобы ваши друзья, мы поставляем очень по разумным ценам программного обеспечения и предоставляет полный спектр услуг поддержки послепродажного но если достаточное количество людей копировать наше программное обеспечение, мы не должны быть в состоянии продолжать это; пожалуйста, купите, не воруют.
– Страница 3
РАЗДЕЛ 2 ПОДРОБНОСТИ GENS3
2.0 Как GENS3 Работы, Assembler параметры, Листинг формат и т.д.
GENS3 это быстрый, двухпроходная Z80 ассемблера, который собирает все стандартные Z80
menmonics и имеет дополнительные функции, которые включают в себя макросы, условные сборка, многие команды ассемблера и символом стол двоичного дерева.
При вызове сборки (с помощью редактора ” команду – см раздел
3) Вы сначала вас попросят указать ‘Размер стола: «в десятичной. Это объем пространства, который будет выделен в таблице символов во сборка. Если вы по умолчанию (просто удар ENTER), то GENS3 будет выберите размер таблицы символов, что он думает подходит для размера текст – как правило, это будет вполне приемлемо. Тем не менее, когда используя опцию “Включить”, вы, возможно, придется указать больше, чем обычно размер таблицы символов; ассемблер не может предсказать размер файла которые будут включены.
После “Таблица размеров:” Вам будет предложено для любых ‘Options: «что вам требуют. Введите их в десятичной сложения чисел опций вместе, если Вы хотите больше, чем один вариант. Доступные опции:
Assembler параметры:
Вариант 1 Произведите распечатку таблицы символов в конце
Второй проход сборки.
Вариант 2 Не генерирует никакого объектный код.
Вариант 4 Не производить листинг ассемблера.
Вариант 8 Прямая любой блок листинг на принтер.
Вариант 16 Просто поместите объектный код, если генерируется, после таблица символов. Счетчик места до сих пор обновляются, по ORG таким образом, что объектный код может быть помещен в одной части памяти, но предназначен для работы в другом месте. Вариант 32 Выключите проверку, где объектный код будет – полезно для ускорения сборки.
Пример: Вариант 36 производит быструю сборку – не позиция генерируется
и никаких проверок не производится, чтобы увидеть, где объектный код уделяется.
Обратите внимание, что если вы использовали Вариант 16, то директива ЛОР ассемблера
не будет иметь никакого эффекта. Вы можете работать, где объектный код был размещены, если Вариант 16 был указан с помощью редактора команду ‘X’ чтобы узнать конец текста (второе число отображается), а затем Добавление к этому количество таблице символов, выделенную + 2.
– Страница 4
Сборка осуществляется в два прохода; в ходе обысков GENS3 первого прохода
за ошибки и компилирует таблицу символов, второй проход генерирует объектный код (если вариант 2 не указан). Во время первого прохода ничего не отображается на экране или на принтер, если ошибка не является обнаружено, и в этом случае мошенник линия будет отображаться с ошибкой Число под ним (см Приложение 1). Сборка паузы – нажмите ‘E’, чтобы вернуться в редактор или любую другую клавишу, чтобы продолжить сборку из Следующая строка.
В конце первого передать сообщение:
Pass 1 ошибки: пп
будет отображаться. Если какие-либо ошибки были обнаружены Ассамблея
затем остановить и не перейти к второй проход. Если какие-либо ярлыки были ссылка в поле операнда, но никогда не объявлял в области этикеток, затем будет отображаться сообщение “* ВНИМАНИЕ” метка отсутствует »для каждого хватает Декларация этикетки.
Именно во время второго прохода, что объектный код генерируется (если
поколение было отключено по варианту 2 – смотри выше). Монтажник список генерируется во время этого прохода, если он не был выключен с помощью Вариант 4 или команда ассемблера * L-. Листинг ассемблера, как правило, в виде:
C000 210100 25 этикеток
LD HL, 1 1 6 15 21 26
Первая запись в строке есть значение счётчика положения в
начать обрабатывать эту линию, если мнемонические в этой линии не один из псевдо-мнемоника ORG, EQU или ЛОР (см раздел 2.7) в этом случае Первая запись будет представлять ценность в операнда области Инструкция. Эта запись, как правило, отображается в шестнадцатеричном но может быть отображается в целое десятичное путем использования команды ассемблера
* D + (см раздел 2.9)
Следующая запись, из графы 6, до 8 символов
(Что составляет до 4 байт) и является объектом код, порожденный текущая команда – но увидеть команду ассемблера * C ниже.
Затем идет номер строки – целое число в диапазоне от 1 до 32767
включительно.
Колонны 21-26 из первой линии содержат первые 6 символов любой
Этикетка определены в этой линии.
Следующие два пункта относятся только к системам с узкой экране
ширина – на системах с экрана шириной более 40 каждый ассемблера перечисление линия содержится целиком на одном экране линии.
– Страница 5
После любой ярлык приходит новая линия – на этой линии мнемонические является
отображается из колонок 21-24. Затем идет поле операнда из колонки 26 этой линии и, наконец, каких-либо замечаний, которые были вставлены в конец линии с новых линий генерируется по мере необходимости.
Описанный выше формат пособия читаемость листинга ассемблера на такой
узкая ширина экрана, что и спектр. GENS3 не переопределить ширина экрана спектра, потому что это приведет к увеличению пространства занимают GENS3 и будет ограничительным в том, что стандартный вывод не могут быть использованы процедуры спектра ROM.
Команда * C ассемблер может быть использован для получения более короткий сборки
перечисление линия – ее эффект опустить 9 персонажей, представляющих Объект код линии, таким образом, позволяя наиболее ассемблера линии, чтобы поместиться на одном Линия экрана. Смотрите раздел 2.8 ниже.
Изменение списка файлов
Можно изменять форму, в которой каждая строка листинга
расщепляется POKEing 3 местах в GENS3. Информация о том, как сделать это в приведены ниже. Мы различаем «сборочной линии», которая в настоящее время Линия сборки листинг состоится во внутреннем буфере и “экран линия “, которая представляет собой линию, что на самом деле появляется на экране. Сборка линия, как правило, генерируют более одного экрана строку.
1. Место «Начало GENS3 + 51 (# 33)” диктует, на котором колонна
Положение – 5 в первой строке экрана сборочной линии будет прекращается. Измените этот байт до нуля вызывать линию, чтобы обернуть вокруг (Полезно, если у вас есть полную ширину принтер) или любое другое значение (<256) в закончить первую линию экрана в определенном столбце.
2. Откуда «Начало GENS3 + 52 (# 34)” дает позицию столбца
(Начиная с 1) в которой каждый последующий линию экрана сборки линия для начала.
3. Место “Начало GENS3 + 53 (# 35)” дает сколько символов из
Остальная часть сборочной линии, которое будет отображаться на экране каждого Линия после первой строки экрана.
В качестве примера, скажем НУ хотел первую строку экрана каждого конвейера
чтобы содержать 20 символов (т.е. не включая поле Название), а затем каждая последующая строка экрана, чтобы начать в графе 1 и заполнить весь линия. Также предположим, что вы загрузили GENS3 на 26000 знака после запятой. Для эффекта эти изменения, выполните следующие инструкции тыкать изнутри BASIC:
POKE 26051,20
POKE 26052,1 должно быть по крайней мере один пробел в POKE 26053,31 начало последующей строке экрана.
– Страница 6
Вышеуказанные изменения применяются только, если команда * C имеет не
был использован – использование команды * C вызывает линий пролонгировать где необходимо.
Перечень сборка может быть приостановлена в конце линии, поражая CAPS
SHIFT и ПРОСТРАНСТВО вместе – впоследствии попал «Е», чтобы вернуться в окно редактора или любую другую клавишу, чтобы продолжить список.
Единственные ошибки, которые могут возникнуть во время второго прохода являются * ОШИБКА * 10
(См Приложение 1) и “Bad ORG!” (Что происходит, когда код объекта будет переписать GENS3, в текстовый файл или таблицу символов – обнаружение это может быть отключен с помощью опции 32. * ОШИБКА * 10 не является фатальной и вы можете продолжить сборку как для первых ошибок пропуска, в то время как “Bad ORG!” является фатальным и немедленно возвращает управление редакторе.
В конце второго прохода сообщение:
Pass 2 ошибки: пп
будет отображаться следуют предупреждения любых отсутствующих этикеток – смотри выше.
Следующее сообщение теперь отображается:
Таблица используется: ххххх от YYYYY
Это информирует вас о том, сколько из таблицы символов использовался по сравнению с
сколько было выделено.
В этот момент, если директива ассемблера ЛОР правильно использовать,
сообщение ‘Выполняет: NNNNN “отображается. Это показывает адрес перспективе объектного кода – вы можете выполнить код с помощью редактора ‘R’ Команда. Будьте осторожны при использовании команды ‘R’, если у вас только что закончился успешный монтаж и видел ‘Выполняет: NNNNN’ сообщение.
Наконец, если вариант 1 был указан, алфавитный список
этикетки, используемые и связанные с ними значения будет производиться. Количество Записи, отображаемые на одной линии может быть изменен POKEing ‘Начало GENS3 + 50 ‘с соответствующим значением; по умолчанию 2.
Теперь управление возвращается к редактору.
2.1 Монтажник себе Формат.
Каждая строка текста, которая должна быть обработана GENS3 должны иметь
следующем формате, где некоторые поля являются необязательными:
LABEL мнемонические ОПЕРАНДЫ КОММЕНТАРИЙ
начать LD HL, этикетка; подобрать “метка”
Пробелы и знаки табуляции (вставленные редактором) как правило,
игнорируются.
– Страница 7
Линия обрабатывается следующим образом:
Первый символ строки проверяется и последующее действие зависит
от характера этого персонажа, как указано ниже:
‘;’ Вся линия рассматривается как комментарий т.е. фактически игнорировались.
‘*’ Ожидает следующий символ (ы), чтобы составить команду ассемблера
(См раздел 2.8). Лечит все символы после команды как комментарий.
(конец-строки символов) просто игнорирует линию.
” (Пробел или табуляция), если первый символ является пространством или вкладка
характер, то GENS3 ожидает не-пространство или не-вкладку следующий характер, чтобы быть началом Z80-мнемоники.
Если первый символ в строке любой символ, кроме тех, учитывая
выше, то сборщик ожидает этикетки присутствовать – см раздел 2.2. После обработки действительный ярлык, или если первый символ линия / вкладка пространство, ассемблер ищет не-пространства / вкладке следующего характер и ожидает, что это будет либо конец-строки символов или начать из Z80-мнемоники (Приложение 2) до 4 символов и заканчиваться / вкладке пространстве или с истекшим линии характера. Если мнемоника является действительным, и требуется один или более операндов, то пространства / вкладки пропускаются и поле операнда обрабатывается.
Этикетки могут присутствовать один в ассемблере заявлении; это полезно
для повышения читабельности листинга.
Комментарии могут произойти в любом месте после поле операнда или, если мнемонические
не принимает аргументов, после мнемонической области.
2.2 Этикетки.
Метка является символом, который представляет до 16 бит информации.
Метка может быть использован для указания адреса конкретной команды
или область данных, или он может быть использован в качестве константы посредством директивы EQU (см Раздел 2.7).
Если метка связана со значением больше, чем 8 бит, и это то
использован в контексте, где 8 бит постоянной применим тогда сборщик будет генерировать сообщение об ошибке, например,
Этикетка EQU # 1234
LD, этикетка
вызовет * ОШИБКА * 10, которые будут созданы, когда второе утверждение является
обрабатываются во время второго прохода.
– Страница 8
Метка может содержать любое количество допустимых символов (см ниже), хотя
только первые 6 рассматриваются как значительное; эти первые 6 знаков должен быть уникальным, поскольку этикетка не может быть повторно определен (* ERROR * 4). Этикетка не должны представлять собой зарезервированное слово (Приложение 2), хотя защищены Слово может быть встроен в качестве части этикетки.
Символы, которые могут быть юридически используемые в этикетке являются 0-9, $ и
-Г. Обратите внимание, что ‘Az’ содержит все верхние и нижние alphabetics регистра вместе с персонажами [, ,], ^, # и _. Метка должна начинаться с буквенного символа.
Некоторые примеры действительных этикетки являются:
КОНТУР
петля a_long_label L [1] L [2]
LDIR LDIR не является зарезервированным словом
два ^ 5
2.3. Откуда Счетчик
Ассемблер поддерживает счетчик места так, что символ в метке
Поле может быть связано с адресом и вошел в символическую архитектуру монументальной библиотеки Таблица. Это расположение счетчик может быть установлен на любое значение с помощью ORG Директива ассемблера (см раздел 2.7).
Символ “$” может быть использован для обращения к текущему значению месте
Счетчик например LD HL, $ + 5 будет генерировать код, который будет загружать регистр пара HL со значением 5 больше, чем текущее значение счетчика расположение.
2.4. Таблица символов
Когда метка встречается в первый раз он вступил в
Таблица наряду с двумя указателями, которые показывают, на более позднее время, как это Этикетка имеет отношение к алфавиту других меток в пределах таблицы. Если первое вхождение метки в поле Название то его значение (как дается местоположения счетчика значение выражения после EQU ассемблера директива) вводится в таблицу символов. В противном случае Значение вводится всякий раз, когда символ впоследствии обнаружены в этикетке Поле.
Этот тип таблицы символов называется двоичным стол и его символ дерево
структура позволяет символы должны быть заключены и оправился от Таблица в течение очень короткого времени – важно для больших программ. Размер запись в таблице варьируется от 8 байт до 13 байт в зависимости от длина символа.
– Страница 9
Если в течение первого прохода, символ определен более чем один раз, то
Ошибка (* ОШИБКА * 4) будет генерироваться так как ассемблер не знает Значение, которое должно быть связано с символом.
Если символ никогда не связан со значением, то это сообщение
“* ПРЕДУПРЕЖДЕНИЕ * символ отсутствует ‘будут сгенерированы в конце сборки.
Отсутствие определения символа не мешает сборку из продолжается.
Обратите внимание, что только первые 6 символов символ вводятся в
Таблица символов для того, чтобы ограничить размер таблицы.
В конце сборки вы получите сообщение о том, сколько
памяти был использован таблице символов во время этого собрания – вы можете меняются, сколько памяти выделяется в таблицу символов, отвечая на “Таблица:” быстрое время запуска в сборе (см раздел 2.0).
2.5. Выражения.
Выражение запись операнд, состоящий из любой один срок или
Сочетание Условия друг разделены оператором. Определения СРОК и PERATOR последующие:
СРОК десятичная константа например 1029
шестнадцатеричная константа например # 405 двоичный постоянная например % 10000000101 символьная константа например “” пометить, например L1029 Также ‘$’ может быть использован для обозначения текущего значения Расположение счетчика.
Оператора ‘+’ дополнение
‘-‘ Вычитание ‘&’ Логическое И ‘@’ Логическое ИЛИ ‘!’ логично XOR ‘*’ Целочисленное умножение ‘/’ Целочисленное деление ‘?’ Функция MOD (B = – (A / B) * б)
Примечания: ‘#’ используется для обозначения начала шестнадцатеричное число, ‘%’ для
двоичное число и ‘”‘ для Constand характера. При чтении ряд (Десятичной, шестнадцатеричной или двоичной) GENS3 занимает младший 16 бит номера (т.е. МО 65535), например, 70016 становится 4480 и # 5A2C4 становится # A2C4.
Широкий выбор операторов предоставляются, но не приоритет операторов не является
Наблюдаемые – выражения вычисляются строго слева направо.
операторов * ‘,’ / ‘и’? ‘ предоставляются лишь для дополнительного удобства и не как часть обработчика полный экспрессии, который бы увеличить размер из GENS3.
– Страница 10
Если выражение заключено в скобках, то это воспринимается как
представляющий адрес памяти, как в инструкции LD HL, (там + 5), который бы Лод регистровой паре HL с 16 битным значением, содержащимся в памяти расположение “LOC + 5 ‘.
Некоторые команды Z80 (JR и DJNZ) ожидают операндов, которые имеют 8
битное значение, а не 16 бит один – это называется относительной адресации.
Когда относительные адреса указываются GENS3 автоматически вычитает значение счётчика на следующей инструкцией от стоимости приведены в поле операнда текущей команды, чтобы получить Относительный адрес для текущей инструкции. Диапазон значений allowd как относительный адрес являются счетчик расположение значение на следующий Инструкция от -128 до +127.
Если, вместо этого, вы хотите указать относительное смещение от места
значение счетчика текущей инструкции, то вы должны использовать символ “$” (Зарезервированное слово), а затем требуемого смещения. Так как этот Теперь относительно значения счетчика расположение текущей инструкции по смещение должно быть в диапазоне -126 до 129 включительно.
Примеры правильных выражений:
# 5000 – этикетка
% 1001101! % 1011 дает% 1000110 # 3456? # 1000 дает # 456 4 + 5 * 3 – 8 дает 19 $-Метка + 8 2345/7 – 1 дает 334 “” +128 “Y” – “;” 7 + (5 * этикетка – # 1000 &% 1111) 17 @% 1000 дает 25
Обратите внимание, что пробелы могут быть вставлены между элементы и операторы и
вице-производитель, но не в сроки.
Если операция умножения бы привести к абсолютному значение больше
чем 32767, то * ОШИБКА * 15 Сообщается, а если операция деления включает в себя деление на ноль, то * ОШИБКА * 14 данного – в противном случае Переполнение игнорируется. Все арифметические использует два в дополнение к, где любые числа, большие, чем 32 767 трактуются как отрицательной, например, 60000 = -55336 (60000-65536).
2,6 макросы.
Макросы позволяют писать более короткие, более значимые программы ассемблера
но они должны использоваться с осторожностью и не следует путать с Подпрограммы. Макроопределение состоит из серии ассемблере заявления, вместе с именем макроса; когда этот макрос зовут используется в дальнейшем в мнемонической поле, то
– Страница 11
он будет заменен всех ассемблера отчетности, составленных
например определение Макрос NSUB может быть определен таким образом:
NSUB MAC
ИЛИ SBC HL, DE ДОБАВИТЬ HL, DE ENDM
а затем, когда NSUB используется как мнемонику, он будет генерировать
три ассемблера заявления или, SBC HL и ADD HL, DE. Это избавит вас типирование и делает ваша программа легче понять, но вы должны помнить, что каждый происшествие результатов NSUB в коде генерируется и он может более эффективно использовать призыв к подпрограмме вместо. Ниже мы приведем Формат макроопределений и вызова вместе с некоторыми более примеры, пожалуйста изучать эти тщательно.
Макроопределение имеет следующий вид:
Имя MAC
, , Определение макроса , , ENDM
где Имя является имя макроса, который будет ссылаться на текст макроса
всякий раз, когда имя впоследствии используется в мнемонической области, MAC указывает начало макроопределения и ENDM указывает на конец Определение. Параметры макроса можно ссылаться внутри макроса определение с помощью знака равенства “=” с последующим параметром Количество (0-31 включительно). Например, макрокоманда:
MOVE MAC
LD HL, = 0 LD DE, = 1 LD BC, = 2 LDIR ENDM
принимает 3 параметра, адрес источника, адрес назначения и длину,
загружает соответствующие значения в HL, DE и ВС, а затем выполняет инструкция LDIR. Для вызова этого макроса на более позднем этапе в вашей программе, просто использовать имя макроса в мнемонической области с последующим значения, которые вы хотите в 3 параметра взять например
MOVE 16384,16385,4069
Мы использовали конкретные адреса в этом примере, но мы можем, на самом деле, использование
Любое допустимое выражение, чтобы указать значение макро параметра, например,
– Страница 12
Начало MOVE, начать + 1, длина
Подумайте … это выше хорошего использования макроса? Могло ли это быть
Подпрограмма?
В определении макроса, параметры могут появиться в любое действительное
Выражение например
HMS MAC
LD HL, = 0 * 3600 LD DE, = 1 * 60 ДОБАВИТЬ HL, DE LD DE, = 2 ДОБАВИТЬ HL, DE ENDM
макрос, принимая 3 параметра – часы, минуты, секунды, что дает
в регистре HL общее число секунд, указанное в параметрах.
Вы можете использовать его так:
Часы EQU 2
Минут EQU 30 Секунды фас 12 Начните EQU 0
HMS часы, минуты, секунды
LD DE, Старт ДОБАВИТЬ HL, DE; HL дает время окончания
Макросы не могут быть вложенными, так что вы не можете определить макрос в
Определение макроса вы не можете ссылаться на макрос в определении макроса.
На время монтажа, когда имя макроса встречается в мнемоником
поле, текст макроса затем собирают. Обычно этот текст не перечислены в списке сборки – только имя макроса показано.
Тем не менее, вы можете заставить список расширения макроса с помощью команда ассемблера * М +, прежде чем вы хотите макро расширения должны быть перечислены – Впоследствии использовать * M- выключить эту экспансию.
Если у вас кончились Макро пространства буфера, то на экране будет отображаться
и сборка прерывается; использовать команду редактора C После сохранения Текст, выделить больший макро буфер.
2.7 Директивы ассемблера
Некоторые «псевдо-мнемоника” признаны GENS3. Эти ассемблера
директивы, как их еще называют, не имеют эфект на процессоре Z80 в во время выполнения, то есть они не декодируется в опкодами, они просто направляют Сборщик принять определенные действия на время сборки. Эти действия имеют Эффект изменения, в некотором роде, объектный код производится GENS3.
– Страница 13
Псевдо-menmonics собраны так же, как исполняемых инструкций; они могут предшествовать метке (необходимые для EQU) и последующим комментировать. Директивы доступны:
Выражение ORG
устанавливает счётчик положения в ‘выражения’ Значение. Если вариант 2 и
Опция 16 оба не выбран, и ORG приведет перезаписи программы GENS3, текстового файла или таблицы символов, то сообщение “Bad ORG!” отображается и сборка прерывается. Видеть Раздел 2.0 для более подробной информации о том, как варианты 2 и 16 влиять на использование ORG.
Выражение EQU
должно предшествовать этикетке. Задает значение этикетке к значению
“Выражение”. Выражение не может содержать символ, который еще не было присвоено значение (* ОШИБКА * 13).
DEFB выражение, выражение, …
каждый ‘выражение’ должен оценить в 8 бит; байт по адресу
В настоящее время проводятся по месту расположения счетчика устанавливается в значение “Выражение” и расположение счетчика выдвинутая 1. повторов для каждого выражение.
DEFW выражение, expresion, …
устанавливает «слово» (два байта) по адресу в настоящее время принадлежащих
Расположение счетчика на значение ‘выражения’ и авансы расположение Счетчик на 2. Меньшая старший байт помещается сначала следуют более значимый байт. Повтор для каждого выражения.
Выражение DEFS
увеличивает счетчик места по стоимости “выражения” – эквивалент
резервированию блок памяти размером, равным значению выражения.
DEFM “S”
определяет содержание п байт памяти, чтобы быть равна ASCII
представление строки с, где п длина строки и может быть, в теории, в диапазоне от 1 до 255 включительно, хотя, в Практика, длина строки ограничена длиной линии Вы можете войти с помощью редактора. Первый символ в операнда области (‘”‘ Выше) берется как разделитель строки и строки с определяется как этих персонажей
– Страница 14
между двумя разделителями; конец-строки символов также выступает в качестве
терминатор строки.
Выражение ЛОР
это не имеет никакого влияния на генерируемого объектного кода, он просто используется для
определить адрес, по которому команда R редактора будет перейти. ЛОР выражение устанавливает этот адрес на значение выражения – используется в Совместно с редактором команды ‘R’ (раздел 3). Существует нет умолчанию для выполнения адресу.
2.8 Условные Псевдо-мнемоники.
Условные псевдо-мнемоника предоставить программисту с возможностью
включения или не включая некоторых участках исходного текста в монтаж процесс. Это стало доступно благодаря использованию IF, ELSE и END.
ЕСЛИ выражение
это оценивает “выражение”. Если результат равен нулю, то сборка
последующие строки не выключается, пока либо ‘ELSE’ или ‘END’ псевдо-мнемонические встречается. Если значение ‘выражения’ не равно нулю Затем сборка продолжается в обычном режиме.
ELSE
это псевдо-мнемонические просто переворачивает сборку и выключается. Если
Сборка на перед “ELSE” встречается тогда это будет Впоследствии быть выключен, и наоборот.
КОНЕЦ
‘END’ просто превращается в сборе на.
Примечание: Условные псевдо-мнемоника не могут быть вложенными; проверка не производится
вложенных МСФ поэтому любая попытка гнездиться эти сокращенные есть неуказанные результаты.
2.9. Команды ассемблера.
Команды ассемблера, как директивы ассемблера, не имеют никакого влияния на Z80
Процессор во время выполнения, так как они не декодируется в опкодами. Тем не менее, в отличие от директивы ассемблера, они также не имеют никакого влияния на объектного кода производится ассемблера – команды ассемблера просто изменить список Формат.
Команда ассемблера является линия исходного текста, который начинается с Звездочка ‘*’. Письмо после звездочки определяет тип Команда и должны быть в верхнем регистре. Остальная
– Страница 15
линии может быть любой текст, кроме, что команды “L” и “D” ожидать
‘+’ или ‘-‘ после команды.
Следующие команды доступны:
* E
(Извлечение) вызывает три пустые строки, которые будут отправлены на экран или принтер
– Полезно для разделения модулей.
* Hs
вызывает строка S должны быть приняты в качестве заголовка, который печатается после каждого
извлечь (* E). * H автоматически выполняет * E.
* S
вызывает список должен быть остановлен на этой линии. Перечень мой быть
возобновлена, нажав любую клавишу на клавиатуре. Полезно для чтения адреса в середине списка. Примечание: * S до сих пор признается после * L-, * S не остановить печать.
* L-
вызывает список и печать должны быть выключены, начиная с этой линии.
* L +
вызывает список и печать должна быть включена начиная с этой линией.
* D +
приводит к тому, значение счетчика местоположения должна быть представлена в десятичном на
начале каждой строки, а не в обычном шестнадцатеричной. Неподписанный десятичной используется.
* D-
нормальный способ.
Способность
пройти.
пройти.
от.
Это происходит
Если первый
линия.
Все права защищены
Формат:
Значения
Учтите, что
Это
ENTER.
Так что это
видеть
уточнение.
Таким образом,
начато.
Это
Вы останутся
вставляется.
Ты
Примеры:
когда
рекордер.
1.
Команда.
На
Если вы нажмете
Если
Пожалуйста,
Режим.
Это полезно
печать.
езды; Если какой-
20 50
Заметка
нам.
рутина.
30; 50; Переполнение.
70; >
Все права защищены
>
Так
>
>
Все права защищены
>
>
Команда.
Почему нет? Ты
Ответ
Формат:
510 530 550
случаи.
нормальный путь.
4 8 10
12
15
18
23
33
38
40
42
43
45
47
49
51
67
69
73
77
79
103
105
109
112
122
124
207
217
219
242
244
250
252
258
260
269
271
278
280
283
284 286
288
290
297
299
303
305
307
309
312
адрес.
Пример:
следующим образом:
Указатель.
Если
В этом разделе,
ENTER
Пример:
Команда.
После того, как
Пример:
“Я”
Пример:
Код.
“М”
1).
‘N’
Команда.
“N”.
соответственно.
Пример:
‘P’
Пример:
P
прервана.
Пример:
Если
Тогда вы должны
Когда вы закончите
Если
используемый.
Пример:
Т
выдано. Пример:
филиалы.
Пример:
Так вас
Так
Это
одно-
Помните, что
Формат. Пример:
установить
, , , РАЗДЕЛ 2
, ,
W
Программа.
Запомнить
страница.
1).
Примеры:
Команда.
‘.’ Счетчик. по
Примеры:
,
, , , , , ,
>
название
установить.
видеть
обрабатываются.
Программное обеспечение высокого качества программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения высокого
повторно Software высокого качества High Quality Software Высокое качество программного обеспечения Высокая Quali Программное обеспечение высокого качества программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения высокого повторно Software высокого качества High Quality Software Высокое качество программного обеспечения Высокая Quali
HiSoft Devpac Монтажник / отладчика для всех ZX Спектры
HiSoft Программное обеспечение высокого качества
Программное обеспечение качества программного обеспечения высокого качества программного обеспечения высокого качества Высокое качество Программное
у программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения Привет Программное обеспечение качества программного обеспечения высокого качества программного обеспечения высокого качества Высокое качество Программное у программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения высокого качества программного обеспечения Привет
+ +
| HiSoft Devpac | | | | Быстрый набор Интерактивная Z80 Разработка | | | | | | | | | | | | | | | | | | Системные требования: | | ZX Spectrum (48K и 128K), ZX Spectrum Plus, ZX Spectrum Plus 2, плюс 3. | | Дополнительные версии для Opus Discovery & Ученик Дисковые системы. | | | | Copyright? HiSoft 1987 | | | | Версия 4.1 Сентябрь 1987 | | | | Установка с использованием Apple Macintosh? и Laserwriter. | | | | Все права защищены по всему миру. Никакая часть данной публикации не может быть воспроизведена | | Или передана в любой форме и любыми средствами, включая фотокопирование и | | Записи, без письменного разрешения владельца авторских прав. Такое | | Письменное разрешение должно быть получено до любой части данной публикации | | Хранится в поисковых системах любой природы. | | | | Информация, содержащаяся в данном документе, должны использоваться только для модификации | | Личная копия читателя из спектра Devpac. | | | | Это является нарушением авторского права, относящиеся к Hisoft Devpac и его | | Сопутствующая документация копировать, любыми средствами, любой части Hisoft | | Devpac по любой причине, кроме как для целей принятия безопасность | | Резервная копия объектного кода. | | | + +
+ HiSoft Лицензия себе + | | | Спасибо за покупку программного обеспечения от Hisoft. Надеемся, вам понравится пакет и | | Полезно. Пожалуйста, прочитайте это примечание тщательно, поскольку она содержит важное | | Информация о эффективному использованию и поддержку программного обеспечения Hisoft. | | | | Copyright | | Во-первых, и самое главное, ваша программа HiSoft защищен английском | | Закон об авторском праве и международных договоров, касающихся интеллектуальной собственности. | | Это означает, что вы должны относиться программное обеспечение и документация просто нравится | | Вы бы лечить книгу. Вы знаете, что если вы делаете копию любой книги, то вы | | Нарушаете закон об авторском праве, и что судебный иск может наступить; то же самое верно | | Вашего программного обеспечения Hisoft. Вы можете переместить пакет вокруг с места на | | Расположение и от одной компьютерной системы к другой до тех пор, никогда нет | | Либо возможность продукта используется двумя людьми одновременно или | | На двух компьютерных систем, в то же время; это будет violationg HiSoft-х | | Авторские права. Тот, единственное исключение из этого является то, что HiSoft разрешает вам | | Делать резервные копии программного обеспечения для единственной целью защищать вашу | | Инвестиции от потерь. | | | | Гарантия | | Что касается физического компьютерной кассеты, компьютерного диска и физическое | | Документация прилагается, Hisoft гарантирует такой же, чтобы быть свободным от дефектов | | Материалов и изготовления в течение 90 дней с момента покупки. | | На уведомление о любом таком вине в течение гарантийного срока, HiSoft будет | | Заменить дефектный кассеты, диска или документации. Средство для любого | | Нарушение данной гарантии ограничивается заменой и не должна | | Охватывают любые другие убытки. | | | | HiSoft частности, отказывается от всех других гарантий, явных или подразумеваемых, | | В том числе, но не ограничиваясь, подразумеваемые гарантии ТОВАРНОЙ и | | Соответствие цели по отношению к дефектам в кассеты, диска и | | Документация. Ни в коем случае HiSoft ответственности за потерю прибыли или | | Любая коммерческая повреждения. | | | | Техническая поддержка | | Мы приложили большие усилия во всех наших программных пакетов, пошив их | | Эффективно работать на каждой компьютерной системы; Однако, если у вас есть какой-либо | | Проблемы, то, пожалуйста, не стесняйтесь обращаться к нам по почте по указанному ниже адресу, | | Давая настолько подробно, насколько это возможно (списки часто полезно). Мы просим вас | | Общайтесь в письме, чтобы мы могли оценить вашу проблему тщательно с | | Полные факты перед нами; в общем это ускоряет решение и позволяет | | Вам получить программирования снова как можно быстрее. Пожалуйста, обратите внимание, что, к | | Получить техническую поддержку, вы должны быть зарегистрированы с нами; сделать это, заполнив | | Из прилагаемой регистрационной карточкой и отправить его нам. Лицензия | | Соглашение называют на регистрационной карточке этот документ. | | | | Если вы отчаянно и нужно связаться с нами по телефону, у нас есть техническая | | Час от 3 часов до 4 вечера в любой день недели, когда наши программисты | | Доступны, чтобы помочь вам. Пожалуйста, попробуйте сохранить ваш звонок как можно более краткими | | И имеют всю необходимую информацию, чтобы вручить. Это часто помогает сидеть в | | Перед компьютером, когда звонит, если это возможно. | | | | Еще раз благодарю Вас за инвестиции в программное обеспечение Hisoft. | | | | HiSoft Old School, Greenfield, Bedford MK45 5DE. (0525) 718181 | | | + +
HiSoft GENS4 ASSEMBLER / РЕДАКТОР СОДЕРЖАНИЕ РАЗДЕЛ 1 НАЧАЛО РАБОТЫ 1 1.1 Введение и загрузка Инструкция 1
1.2 Создание резервной копии 2
РАЗДЕЛ 2 ПОДРОБНОСТИ GENS4 3
2.0 Как GENS4 Работы, Assembler параметры, Листинг формат и т.д. 3
2.1 Монтажник себе
Формат 7
2.2 Этикетки 8
2.3 Место Счетчик 9
2.4 Символ Таблица 9
2.5 Выражения 10
2.6 Макросы 12
2.7 Директивы по монтажу 15
2.8 Условное
Псевдо-мнемоника 16
2.9 Ассемблер Команды 17
РАЗДЕЛ 3 встроенного редактора 21
3.1 Введение в редакцию 21
3.2 Редактор Команды 23
3.2.1 Текст Вставка 23 3.2.2 Текст Листинг 24 3.2.3 Редактирование текста 24 3.2.4 Лента / Microdrive Команды 27 3.2.5 Сборка и запуск из редактора 29 3.2.6 Другие команды 31
3.3 Пример использования
Редактор 34
ПРИЛОЖЕНИЕ 1 ошибка НОМЕРА И
Их значения 37 ПРИЛОЖЕНИЕ 2 зарезервированные слова, Мнемонике Т.Д. 38 ПРИЛОЖЕНИЕ 3 ПРИМЕР С 39
РАЗДЕЛ 1 НАЧАЛО РАБОТЫ
1.1 Введение и Инструкции по заправке GENS4 является мощным и простым в использовании Z80 ассемблера, который находится очень близко к Стандарт Zilog ассемблера в определении. В отличие от многих других сборщиков доступных для Spectrum, GENS4 обширная, профессиональный часть программного обеспечения и вас настоятельно рекомендуется изучить следующие разделы, вместе с, например, в Приложение 3, очень тщательно, прежде чем пытаться использовать asssembler. Если вы полный новичок, работать через Приложении 3 первой или проконсультироваться одно из прекрасные книги, приведенные в библиографии.
У нас есть версии Devpac 4, на диске, для диска Ученик & Opus Discovery системы и спектра Plus 3 компьютера. Эти версии работают именно так, как описано здесь, просто заменить слово Microdrive, где он встречается с Opus Диск, плюс 3 диска или Ученик диск при необходимости. Есть некоторые дополнительные функции для версии плюс 3, которые описаны в дополнительном листке.
GENS4 составляет около 10К байт, когда переехал, и использует собственные внутренние
стек таким образом, что она является автономным часть программного обеспечения. Он содержит свою собственную неотъемлемой редактор линия, которая сразу ставит текстовый файл после кода GENS4 в то время как таблица символов в монтажный создается после текстового файла. Это когда загрузка GENS4 необходимо разрешить достаточно места, чтобы включать в себя сам ассемблер и максимальная таблица символов и размер текста, который вы, вероятно, вы используете в Нынешняя сессия. Это часто будет удобно, поэтому, чтобы загрузить GENS4 в низкой памяти.
Есть две версии ассемблера на кассете, и находятся на стороне 1.
Сначала идет 51 символов-за онлайн-версию, а затем регулярно 32 Характер-за-лайн версия. Их имена на ленте являются GENS4-51 и GENS4 соответственно, и вы должны использовать любой вариант подходит вам лучше всего, на 51-колонну код около 400 байт больше, чем 32-колонну одного.
Для загрузки GENS4, установки прилагаемого ленту в магнитофон и типа:
LOAD “” CODE ххххх [ENTER] и нажмите кнопку воспроизведения на проигрывателе или
LOAD “GENS4” КОД ххххх [ENTER] или LOAD “GENS4-51” КОД ххххх [ENTER], если загрузка с диска
где ххххх является десятичной адрес, по которому вы хотите GENS4 бежать.
HiSoft Devpac / ZX Spectrum Page 4 Gen-1
После того, как вы загрузили код GENS4 в компьютер можно ввести
сборщик по RANDOMIZE USR ххххх, где ххххх это адрес, по которому вы загружен код ассемблера. Если в любой последующий момент вы хотите повторно вводить сборщик, то вы должны просто выполнить адрес ххххх, которые будут сохранять любой ранее созданный текстовый файл.
Например, скажем, вы хотите, чтобы загрузить GENS4 так, чтобы он выполняет из адресной 26000
десятичной – действуйте следующим образом:
LOAD “” CODE 26000 [ENTER]
RANDOMIZE USR 26000 [ENTER]
Чтобы повторно ввести ассемблера использование RANDOMIZE USR 26000 изнутри BASIC.
После того, как вы ввели GEN, экран помощь будет оказываться и вам будет предложено
с>знак, командная строка редактора – проконсультируйтесь в разделе 3, как вводить и редактировать текст и раздел 2, для чего введите.
1.2 Создание резервной копии
После того, как вы загрузили GENS4 в памяти вашего Spectrum в то вы можете сделать Резервная копия ассемблера выглядит следующим образом:
SAVE “GENS4-51” КОД ххххх, 11392 [ENTER] или
SAVE “GENS4” КОД ххххх, 11010 [ENTER], чтобы кассеты
SAVE * “M”; 1; “GENS4-51” КОД ххххх, 11392 [ENTER] или
SAVE * “M”; 1; “GENS4” КОД ххххх, 11010 [ENTER], чтобы Microdrive
где: ххххх является адрес, по которому вы загружены GENS4. Вы должны сделать это
резервное копирование перед входом Генс, чтобы сохранить информацию о переселении в пределах программа.
Смотрите дополнительную листовку для резервных инструкции по Devpac на плюс 3.
Пожалуйста, обратите внимание, что мы даем Вам возможность сделать резервную копию GENS4 для собственного использования
так что вы можете запрограммировать с уверенностью. Пожалуйста, не копируйте GENS4 дать (или хуже, продажа), чтобы ваши друзья, мы поставляем очень разумным ценам программного обеспечения и полный комплекс услуг поддержки послепродажного но если достаточное количество людей копировать наше программное обеспечение мы
не должны быть в состоянии продолжать это; пожалуйста, купите, не воруют.
Страница Gen-2 HiSoft Devpac 4 / ZX Spectrum
РАЗДЕЛ 2 ПОДРОБНОСТИ GENS4
2.0 Как GENS4 Работы,
Assembler параметры, Листинг Формат GENS4 это быстрый, двухпроходная Z80 ассемблера, который собирает все стандартные Z80 мнемоника и имеет дополнительные функции, которые включают в себя макросы, условное сборку, многие команды ассемблера и символом стол двоичного дерева.
Когда вы вызываете сборку, использовать такую команду:
A4,2000,1: ТЕСТ [ENTER]
Первый номер (4 выше) после A определяет опции сборки, которые вы хотите
на этот раз, эти варианты перечислены ниже. Если вы не хотите никаких вариантов, то не вводите номер, только запятую.
Второй номер (2000 выше) является размер таблицы символов ассемблера, в
десятичных байт. Если вы по умолчанию это (просто через запятую вместо число), то GENS4 будет выбрать размер таблицы символов, что он думает, что подходит для размера текста – обычно это будет вполне приемлемо. Тем не менее, при использовании опции включают в себя, вы, возможно, придется указать больше, чем обычно размер таблицы символов; сборщик не может предсказать размер файла, который будет быть включены.
После размера таблицы символов можно ввести Microdrive имя файла (1: как выше).
Если вы это сделаете, то в результате объектный код генерируется сборки будет сохраняются в Microdrive, автоматически. Это не имеет значения, как много объектный код вы генерировать, все будут спасены. Если вы не хотите эту функцию, то не вводите Имя файла (не вводите запятую либо, в противном случае GENS подумают, что вы есть пустой файла). См команду A в разделе 3 для более подробной информации о этом Функция и ее влияние на использовании Org.
Assembler параметры Вариант 1 произвести распечатку таблицы символов в конце второго прохода сборка.
Вариант 2 Не генерирует никакого объектный код.
Вариант 4 Подготовить список сборки, обратите внимание, что это обратная предыдущая
версии ассемблера!
HiSoft Devpac / ZX Spectrum Page 4 Gen-3
Вариант 8 Прямая любой блок листинг на принтер.
Вариант 16 Просто поместите объектный код, если генерируется, после символа Таблица. Откуда Счетчик прежнему обновляется ORG, так что объектный код может быть размещен на одном участке памяти, но предназначен для запуска в другом месте.
Вариант 32 Выключите проверку, где объектный код будет – полезно для ускорения сборки.
Чтобы объединить варианты, просто добавьте их вместе, например, A33 производит быструю сборку
– Не позиция генерируется, никаких проверок не производится, чтобы увидеть, где находится объект код уделяется и стол листинг символ производится в конце.
Обратите внимание, что если вы использовали опцию 16, то директива ЛОР ассемблера будет
нет эффекта. Вы можете работать, где объектный код был помещен если Option 16 был указан с помощью редактора команду Y, чтобы узнать конец Текст (второе число отображается) с последующим добавлением к этому количество символа Таблица выделено + 2.
Сборка осуществляется в два прохода; во время первого прохода GENS4 ищет
ошибки и компилирует таблицу символов, второй проход генерирует объектный код (если вариант 2 не указан). Во время первого прохода ничего не отображается на экран или принтер, если ошибка не обнаружена, и в этом случае на линию мошенника будет отображаться с номером ошибки под ним (см Приложение 1). Сборка паузы – нажмите E, чтобы вернуться в редактор или любую другую клавишу для продолжения сборка из следующей строке.
В конце первого передать сообщение:
Pass 1 ошибки: пп
будет отображаться. Если какие-либо ошибки были обнаружены сборка будет остановить
и не перейти к второй проход. Если какие-либо ярлыки были указаны в операнд поле не но не заявляли в области этикеток, затем сообщение:
* ВНИМАНИЕ * этикетка отсутствует
будет отображаться для каждого недостающего декларации этикетки.
Именно во время второго прохода, что объектный код генерируется (если поколение
был выключен Вариант 2 – см. выше) Сборщик перечень не является генерируется во время этого прохода, если это не было включено по Вариант 4 или
Сборщик команда * L +.
Страница Gen-4 HiSoft Devpac 4 / ZX Spectrum
В версии 32-колонки, листинг ассемблера, как правило, на двух линиях и является
в виде:
C000 210100 25 этикеток
LD HL, 1 1 6 15 21 26
в то время как в версии с 51-колонке список непрерывно, в одной строке,
обёртывание на следующую строку, если слишком долго, чтобы поместиться на одном.
Первая запись в строке есть значение счётчика положения в начале
обработки этой линии, если Мнемоника в этой линии не является одним из псевдо-мнемоника ORG, EQU или ЛОР (см раздел 2.7), в этом случае первый запись будет представлять значение в поле операнда инструкции. Это запись обычно отображается в шестнадцатеричной системе, но могут быть отображены в беззнаковое десятичной путем использования команды ассемблера * D + (см раздел 2.9).
Следующая запись, из графы 6, до 8 символов (что составляет до
на 4 байта) и объектный код получают путем текущей инструкции – но см команды ассемблера * C ниже.
Затем идет номер строки – целое число в диапазоне от 1 до 32767 включительно.
Колонны 21-26 из первой линии содержат первые 6 символов какой-либо знак
определяется в этой линии.
После любой ярлык приходит мнемоника, который отображается в колонках 21-24 (в
версия 32-колонка, это будет на новой линии, если * C-] не использовался).
Затем идет поле операнда из колонны 26 этой линии и, наконец, любой
комментарии, которые были вставлены в конце линии с новой линии будучи генерируется по мере необходимости.
Команда * C ассемблер может быть использован для получения более короткий сборки предложение линию
– Его действие опустить 9 персонажей, представляющих объектный код Таким образом, линия позволяет наиболее ассемблера линии, чтобы поместиться на одном 32-столбца экрана линии.
Смотрите раздел 2.8 ниже.
HiSoft Devpac / ZX Spectrum Page 4 Gen-5
Изменение списка файлов версию 32-столбца только
Вы можете изменить форму, в которой каждая строка листинга расщепляется POKEing 3 Места внутри 32-столбца версии GENS4. Информация о том, как сделать это в приведены ниже. Мы различаем сборочной линии, которая в настоящее время линия перечисление сборка состоится во внутреннем буфере и экрана линии, которая является линией что на самом деле появляется на экране. Сборочная линия, как правило, порождают более одного экрана линии.
1. Откуда Начало GENS4 + 51 (# 33) диктует, на котором колонна позиция – 5
Первая строка экрана сборочной линии будет прекращено. Измените этот байт в нулю, чтобы вызвать строку, чтобы обернуть вокруг (полезно, если у вас есть полную ширину принтера) или любое другое значение (<256), чтобы закончить первую линию экрана в определенном столбце.
2. Откуда Начало GENS4 + 52 (# 34) дает положение столбца (от 1) в
которые каждый последующий линия экран сборочной линии, чтобы начать.
3. Откуда Начало GENS4 + 53 (# 35) дает, как много персонажей из
Остальная часть сборочной линии, которое будет отображаться в каждой строке экрана после Первая строка экрана.
В качестве примера, скажем, вы хотите первую линию экрана каждого конвейера для
содержать 20 символов (т.е. не включая поле Название), а затем каждый последующая строка экрана, чтобы начать в графе 1 и заполнить всю строку. Также Предположим, что Вы загрузили GENS4 на 26000 знака после запятой. Для внесения этих изменений, выполнить следующие инструкции тыкать изнутри BASIC:
POKE 2605120
POKE 26052,1 должно быть по крайней мере один пробел в POKE 26053,31 начало каждого последующего строке экрана.
Вышеуказанные модификации только в том случае, если не была использована команда * С
– Использование команды * C вызывает линий пролонгировать где это необходимо.
Перечень сборка может быть приостановлена в конце линии, нажав [CAPS SHIFT]
и [SPACE] вместе – впоследствии попал E, чтобы вернуться в редактор или любой другой клавишу, чтобы продолжить перечисление.
Единственные ошибки, которые могут возникнуть во время второго прохода являются * ОШИБКА * 10 (см
Приложение 1) и Бад-ORG! (Что происходит, когда объектный код будет перезаписывать GENS4, textfil или таблица символов – обнаружение этого может быть включен прочь Вариант 32). * ОШИБКА * 10 не является фатальным, и вы можете продолжать сборку как для первых ошибок проходят в то время как Бад ORG! является фатальным и немедленно возвращает управление
в редакцию.
Страница Gen-6 HiSoft Devpac 4 / ZX Spectrum
В конце второго прохода сообщение:
Pass 2 ошибки: пп
будет отображаться следуют предупреждения любых отсутствующих этикеток – смотри выше.
следующее сообщение теперь отображается:
Таблица используется: ххххх от YYYYY
Это информирует вас о том, сколько из таблицы символов использовался сравнению с тем, как
много было выделено.
В этот момент, если директива ассемблера ЛОР правильно использовать,
Сообщение Выполняет: отображается NNNNN. Это показывает адрес запуска объекта Код – вы можете выполнить код с помощью команды редактора R. Будьте осторожны при использовании Команда R, если вы не только что закончили успешный монтаж и видел Выполняет: NNNNN сообщение.
Наконец, если вариант 1 был указан, алфавитный список ярлыков используется
и связанные с ними значения будет производиться. Количество записей отображается на одной линии может быть изменено POKEing Начало GENS4 + 50 с соответствующими Значение; по умолчанию 2.
Теперь управление возвращается к редактору.
2.1 Монтажник себе Формат
Каждая строка текста шляпы должны быть обработаны GENS4 должны иметь следующее Формат, где некоторые поля не являются обязательными:
LABEL мнемонические ОПЕРАНДЫ КОММЕНТАРИЙ
начать LD HL, этикетка; подобрать “метка”
Пробелы и знаки табуляции (вставленные редактором) обычно игнорируются.
Линия обрабатывается следующим образом:
Первый символ строки проверяется и последующее действие зависит от
характер этого персонажа, как показано на следующей странице:
HiSoft Devpac / ZX Spectrum Page 4 Gen-7
; Вся линия рассматривается как комментарий т.е. фактически игнорировались.
* Ожидает следующий символ (ы), чтобы составить команду ассемблера (см
Раздел 2.8). Лечит все символы после команды в качестве комментария.
(конец-строки символов) просто игнорирует линию.
_ (Пробел или табуляция), если первый символ является пространством или символ табуляции
Затем GENS4 ожидает следующий непробельный или не- табуляции быть начало мнемонические Z80.
Если первый символ в строке любой символ, кроме приведенных выше
то ассемблер ожидает этикетки присутствовать – раздел 2.2. После обработки действительный ярлык, или если первый символ строки является / вкладка пространство, ассемблер ищет следующую без пространства / табуляции и ожидает, что это быть либо конец-строки символ или начало Z80 мнемоники (см Приложение 2) до 4 символов и завершаются / вкладке пространстве или в конце производственной линии характер.
Если мнемоника является действительным, и требуется один или более операндов, то пространства / вкладки
пропускается, и поле операндов обрабатываются.
Этикетки могут присутствовать один в ассемблере заявлении; это полезно для
повышение читаемости листинга.
Комментарии не может произойти в любом месте после поле операнда или, если мнемоника не берет
Аргументы, после мнемонической области.
2.2 Этикетки
Метка является символом, который представляет до 16 бит информации. Метка может быть использован для указания адреса конкретной команды или области данных или это может быть использован в качестве константы посредством директивы EQU (см раздел 2.7).
Если метка связана со значением больше, чем 8 бит и затем используется
в контексте, где 8 бит постоянной применим тогда ассемблер сообщение об ошибке, например,
Этикетка EQU # 1234
LD, этикетка
вызовет * ОШИБКА * 10, которые будут созданы, когда второе утверждение является
обрабатываются во время второго прохода.
Страница Gen-8 HiSoft Devpac 4 / ZX Spectrum
Этикетка может содержать любое количество допустимых символов (смотри ниже), хотя только
Первый 6 рассматриваются как существенное; эти первые 6 знаков должен быть уникальным поскольку этикетка не может быть повторно определен (* ERROR * 4). Этикетка не должна являться Зарезервированное слово (Приложение 2, хотя это зарезервированное слово может быть встроен как часть этикетки.
Символы, которые могут быть юридически используемые в этикетке 0-9, $ и Az.
Следует отметить, что Az включает все верхние и нижние alphabetics кейс вместе с персонажами [, ,], ^, # и _. Метка должна начинаться с буквенного характер. Некоторые примеры действительных этикетки являются:
КОНТУР
петля a_long_label L [1] L [2]
LDIR LDIR не зарезервированное слово.
два ^ 5
2.3 Место Счетчик
Сборщик поддерживает счетчик места так, что символ в поле Название может быть связан с адресом и вступил в таблице символов. Это Откуда Счетчик может быть установлен на любое значение через директивы ORG ассемблера (см Раздел 2.7).
Символ $ можно использовать для обращения к текущему значению счетчик места
например LD HL, $ + 5 будет генерировать код, который будет загрузить в регистр пары HL с Значение 5 больше, чем текущее значение счётчика.
2.4 Таблица символов
Когда метка encoutered впервые она вошла в таблицу вместе с двумя указателями, которые показывают, на более позднее время, как этот ярлык связан по алфавиту в других меток в пределах таблицы. Если первое вхождение метка в области этикеток, затем его значение (как дано счетчик места или Значение выражения после директивы ассемблера EQU) вводится в Таблица символов. В противном случае значение каждый раз, когда вводится символ Впоследствии нашли в поле Название.
Этот тип таблицы символов называется Binary Tree Таблица символов и его структура позволяет символы должны быть заключены и восстановлены из-за стола в
очень короткое время – важно для больших программ.
HiSoft Devpac / ZX Spectrum Page 4 Gen-9
Размер записи в таблице варьируется от 8 байт на 13 байт в зависимости от
длина символа.
Если в течение первого прохода, символ определен более чем один раз, то ошибка
(* ERROR * 4) будет сгенерирован так как ассемблер не знает, какое значение должен быть связан с символом.
Если символ никогда не связан со значением, то сообщение * символом ПРЕДУПРЕЖДЕНИЕ
отсутствует будет генерироваться в конце сборки. Отсутствие символа определение не препятствует сборку от продолжения.
Обратите внимание, что только первые 6 символов символ вводятся в Символе
Таблица для того, чтобы держать вниз размер таблицы.
В конце сборки вы получите сообщение о том, как много памяти
был использован таблице символов во время этого собрания – вы можете изменить, сколько память выделяется в таблице символов при запуске в сборе (см раздел 2.0).
2.5 Выражения
Выражение запись операнд, состоящий из любой один срок или Сочетание точки разделенных оператором. Определения термина и оператор последующие:
СРОК
десятичная константа например 1029 шестнадцатеричная константа например # 405 двоичный постоянная например % 10000000101 символьная константа например “” пометить, например L1029
Также $ может быть использован для обозначения текущего значения счётчика положения.
Страница Gen-10 HiSoft Devpac 4 / ZX Spectrum
ОПЕРАТОР
+ Дополнение – Вычитание & Логическое И @ Логическое ИЛИ ! логично XOR * Число умножение / Целочисленное деление ? Функция MOD (B = – (A / B) * б)
Примечания: # используется для обозначения начала шестнадцатеричное число,% для двоичного файла
Число и “для символьной константы. При чтении ряд (десятичной, шестнадцатеричный или двоичный) GENS4 занимает младшие 16 бита числа (Т.е. MOD 65536) например 70016 становится 4480 и # 5A2C4 становится # A2C4.
Широкий выбор операторов предоставляются, но не приоритет операторов не является
наблюдается; Выражения вычисляются строго слева направо. Операторы *, / И? предоставляются лишь для дополнительного удобства, а не как часть полного Обработчик выражение, которое будет увеличивать размер GENS4. Если выражение заключены в скобки, то это воспринимается как представляющий адрес памяти как в инструкции LD HL, (там + 5), который будет загружать регистр пары HL с 16 битное значение, содержащиеся в ячейку памяти LOC + 5.
Некоторые команды Z80 (JR и DJNZ) ожидают операндов, которые имеют 8 бит
Значение и не 16 бит один – это называется относительной адресации. При относительной адреса которых указаны GENS4 автоматически вычитает значение Откуда Счетчик на следующей инструкцией от значения, заданного в поле операнда из текущая инструкция для того, чтобы получить относительный адрес для тока Инструкция. Диапазон значений разрешено, относительного являются Откуда Значение счетчика следующей инструкции -128 до +127.
Если, вместо этого, вы хотите указать относительное смещение от счётчика
Значение текущей команды, то вы должны использовать символ $ (зарезервированное Слово) с последующим требуемого смещения. Так как это теперь по отношению к Значение Место Счетчик текущей инструкции по смещение должно быть в
в диапазоне -126 до +129 включительно.
HiSoft Devpac / ZX Spectrum Page 4 Gen-11
Примеры правильных выражений
# 5000 – этикетка % 1001101! % 1011 дает% 1000110 # 3456? # 1000 дает # 456 4 + 5 * 3 – 8 дает 19 $-Метка + 8 2345/7 – 1 дает 334 “Y” – “;” 7 + (5 * этикетка – # 1000 &% 1111) 17 @% 1000 дает 25
Обратите внимание, что пробелы могут быть вставлены между терминами и операторов, и наоборот, но
не в плане.
Если операция умножения приведет к абсолютной величине больше, чем
32767 затем * ОШИБКА * 15 Сообщается, а если операция деления включает деление на ноль, то * ОШИБКА * 14 дается – в противном случае переполнения игнорируется. Все арифметика использует два в дополнение к, где любые числа, большие 32767 рассматриваются как отрицательной, например 60000 = -5536 (60000-65536).
Если операция умножения приведет к абсолютной величине больше, чем
32767 затем * ОШИБКА * 15 Сообщается, а если операция деления включает деление на ноль, то * ОШИБКА * 14 дается – в противном случае переполнения игнорируется. Все арифметика использует два в дополнение к, где любые числа, большие 32767 рассматриваются как отрицательной, например 60000 = -5536 (60000-65536).
2.6 Макросы
Макросы позволяют писать более короткие, более значимые программы ассемблера, но они должен использоваться с осторожностью и не следует путать с подпрограммами. Макрос определение состоит из серии ассемблера заявления, вместе с именем макроса; когда это имя макроса впоследствии используется в мнемонической области то он будет заменен на всех ассемблера отчетности, составленных например определение Макрос NSUB может быть определен таким образом:
NSUB MAC
ИЛИ SBC HL, DE ДОБАВИТЬ HL, DE
ENDM
Страница Gen-12 HiSoft Devpac 4 / ZX Spectrum
а затем, когда NSUB используется как мнемонику, он будет генерировать три
ассемблера заявления или SBC HL, DE и ADD HL, DE. Это экономит ваше печатать и делает ваша программа легче понять, но вы должны помнить, что каждый Возникновение результатов NSUB в код генерируется и это может быть более эффективным использовать призыв к подпрограмме вместо. Ниже мы приведем формат макро определения и вызовы вместе с еще несколько примеров, пожалуйста учиться они тщательно.
Макроопределение имеет следующий вид:
Имя MAC
, , Определение макроса , , ENDM
где Имя является имя макроса, который будет ссылаться на текст макрос, когда
Имя в дальнейшем используется в мнемонической области, MAC указывает на начало Определение макроса и ENDM указывает на конец определению.
Параметры макроса можно ссылаться в определении макроса с помощью
Использование знака равенства следует номер параметра (0-31 включительно), например, макрос:
MOVE MAC
LD HL, = 0 LD DE, = 0 LD BC, = 0 LDIR ENDM
принимает 3 параметра, адрес источника, адрес назначения и длину, загружает
соответствующие значения в HL, DE и ВС, а затем выполняет инструкцию LDIR. К вызывать этот макрос на более позднем этапе в вашей программе, просто использовать имя Макрос в мнемонической области следуют значения, которые вы хотите в 3 Параметры взять например
MOVE 16384,16535,4096
например
Вы могли бы
они могут
является
выражение.
Процесс.
встречается.
ELSE
наоборот.
КОНЕЦ
Результаты.
Однако, в отличие
* E
* S
используемый.
для
Если первый
Это
если
характер.
буфер.
Это указывает на то
Вы вводите
Текст.
аргументы.
отображается.
перечисление.
Линии.
это может
Следует отметить, что
Время.
линия.
линии.
Ты
выше).
текущая строка.
Заметка
Ты
Команда.
Примеры:
Если
толстой кишки.
продолжает.
подробности.
запятая.
Опять же,
долго.
Microdrive.
2. Вы должны избегать использования более одного ORG в вашей программе, если только вы колодок из
; Некоторые код
RET
; Некоторый код
пересматривает начало буфера объектного кода. Однако:
; Некоторые код
RET ; Прокладка отъезда до 60000
; Некоторый код
сборка.
C
использовать.
Команда V дает отображение полезной информации; значения по умолчанию
Параметры команды N1 и N2, команда разделитель по умолчанию, начало и конец
будут напечатаны.
Кроме
Например, вы могли бы
20
50
ПРИЛОЖЕНИЕ 1
тщательно.
30;
Все права защищены
>
Ошибки.
>
Все права защищены
>
>Нам
Почему нет? Вы увидите
От
нулю.
>
работает.
- 510
- 530
- 550
автоматически.
СОДЕРЖАНИЕ
РАЗДЕЛ 1
Начинаем
Если вы хотите
ЗУПД.
Пример:
решения;
Инвалид
Команда.
РАЗДЕЛ 2
применимо.
Указатель.
Пример:
Режим.
Пример:
Пример:
Таким образом,
регистры.
Выполнение
Тогда вы можете
как ..
это;
Пример:
Пример:
P
Пример:
Инструкция.
Если вы не хотите, чтобы
прервана.
Если вас
Если ты хочешь
Команда.
Пример:
Файл
Команда.
Панель.
Т
В конце
Пример:
Т
Пример:
Пример:
Как
выполнена.
Это означает, что
Поскольку
Смотрите также
клавиатура.
страница.
как это работает.
W
Два
повиновался. Примеры:
Уведомление
как
Должен
Заметка
Примеры:
, ,
,
, ,
,
,
отображается.
ПРИЛОЖЕНИЕ
>
название
Библиография
HiSoft Devpac – Более Версия 3 ===
Devpac на Спектр плюс 3 ведет себя подобным образом в Devpac 4 по Спектр регулярное 128/48. Эти программы GENS451 Поставляемые (51-колонка версия регулярного 48К / 128К собрать) GENP3 (плюс 3 вместе) GENP351 (51-колонка Версия) MONS4 (обычный 48K / 128K отладчик) и MONP3 (Plus 3 отладчик).
GENS451 MONS4 и полностью подробно изложены в сопроводительной инструкции во время GENP3, GENP351 и MONP3 немного отличаются. Вы должны прочитать руководство и руку После рейтинги очень тщательно.
Что делать в первую очередь
Прежде чем сделать что-либо защиты от записи мастер-диска и сделать резервную копию. Это должно быть сделано путем введения мастер-диск и ввод
КОПИЯ “:. * *” К “М”
Плюс 3, а в BASIC. Затем вставьте новый пустой диск, и введите
Размер “А”
КОПИЯ “М:. * *” К “” ERASE “М”
Вы долженствования Тогда спрятал мастер-диск и использовать только резервное копирование.
HiSoft Devpac для Plus 3
GEN Версия 5.1
По умолчанию, любой, подачи операции (например, получить редактора и положить команд) Будет использовать водить; если вы хотите использовать: Обзоры другой диск Тогда вы начинаете долженствования Имя файла с буквой следует двоеточие. Если вы хотите использовать ленту, использовать T: перед именем файла. Примеры:
Г ,, нагрузки тест тест с диска в дисковод А
G ,, B: загружает тест тест с диска в дисководе B P ,, T: SPRITE сохраняет все текущие текста на ленту с именем SPRITE ,, М: ОБЪЕКТ собраны текущий текстовый файл и помещает объектный код в ОБЪЕКТ файл называется Истекло на виртуальный диск.
В схеме именования файлов являются Plus3DOS использоваться, например, 8 букв для Имя файла с 3 букв для расширения.
RAM диск полностью поддерживается как диск M:.
Команда редактор X Дает вам каталог диска. Используйте X ,, S Где S
Любой действительна привод / файла спецификатор; по умолчанию: * *.. Примеры:
X ,,. * GEN
X ,, М. SPRITE * X ,, B:
Сообщения об ошибках Plus3DOS сообщается о по количеству; ошибка Учитывая цифры в справочнике Plus 3.
Включение с ленты при сборке и монтажу являются на ленту
не поддерживается.
HiSoft Devpac для Plus 3
МОЙ Версия 5.1
Наибольшая разница от версии 4 Разве что MONP3 сидит выше на-RAM диск в Практически все оставляя скрытый RAM (но 160 байт) ОЗУ 48К для отладки.
160 байт RAM необходима в безопасном (что-нибудь безопасное ниже адресу-49152) и вы AbeBooks веб-сайты для безопасного места при запуске. Вы даете долженствования год-адрес (в десятичной); 160 байт с этого адреса будут использованы для банковского переключения и т.д. safestack Если Вы хотите войти в BASIC MONP3 После этого первоначального пуска, Вам долженствования выполнить адрес вы-вы дали старт безопасной зоне.
Первоначально MONP3 должны быть выполнены и загружены на 32 768 (в десятичной системе); После того как вы Учитывая год есть адрес (в десятичной системе) для первого класса использования ИКТ RAM, это будет переместить специальную инструкцию выше на виртуальный диск и для уменьшения буфера RAM диск / кэш по 16К.
Плюс 3 версия моего экономит Оба экрана и системные переменные являются
После входа и точки останова. Это означает, кластеризации, что вы можете осмотреть ваш програмы Выход в любое время (с помощью команды S), и что вы можете одномоментная / выполнение Что система программы используют различные переменные из ПН Это очень мощный особенность.
Числа вводятся в теперь можно десятичной в любое время, если перед им, с
Обратная косая черта ( или (СИМВОЛ SHIFT) -D) характер.
RST # 28 Последовал инструкции являются DEFW хх поскольку Plus 3 использует этот перезапуск год с инлайн адресу.
Разборка на диск с помощью команды T поддерживается; просто введите диск
Письмо (A, B, M), за которым следует двоеточие и имя файла Тогда Когда будет предложено текст?.
HiSoft Devpac для Plus 3
Команда H теперь дает на экран справки. Старая команда Это превращается из Н
десятичной в шестнадцатеричной не нужен из-за способности вводить цифры в десятичной предшествующими им, с (достигается путем (символ SHIFT) -D).
Команда R предлагает ввести ОЗУ и ПЗУ ROM памяти, номера страницы
Может быть 0, 1, 2 или 3, пока страница ОЗУ ничего от 0 до 7 включительно; чай RAM страница поменяются местами в на адрес # C000 и могут быть проверены, изменены, разобрали и т.д. Нынешние ROM и RAM-страницы отображаются на фронте Панель, выше-памяти и дисплеем с правой стороны.
Команда S позволяет проверить состояние предыдущего экранировать Отзывы входящие MONP3
(Будь или через холодного старта имеет breakppint). Нажмите клавишу пробела, чтобы получить Вернуться к дисплею на передней панели.
Кстати, Существует опечатка в руководстве 3 больше, что может привести к вам
проблемы – страница 190, второй абзац – D1 … D2 являются переключение ROM / RAM. D0 влияет ли RAM / ROM.
Мы надеемся, Вам понравится Devpac для Plus 3 и приветствуем любые комментарии вы можете Что касается пакета-есть.
У нас есть ещё 3 версии нашего стандартного Pascal компилятор, K & R C компилятор целое и супер-быстрый плавающей запятой BASIC компилятор, а также. Пожалуйста, напишите или позвоните по подробности.
Старая школа, Greenfield, HiSoft Bedford MK45 5DE
Высокое качество программного обеспечения Тел: (0525) 718181
HiSoft Software для ZX Spectrum
Devpac 4
Дополнительные примечания быть
используется в сочетании с Руководство пользователя Devpac 3
Благодарим Вас за покупку Hisoft Devpac 4 для ZX Spectrum, мы надеемся, что Продукт будет отвечать вашим целям и что вы найдете его приятным и легко использовать.
Devpac 4 похож на использование с предыдущей версией для Spectrum, Devpac 3, но имеет некоторые дополнительные функции, вместе с некоторыми изменениями в существующие команды. В этом документе описаны изменения и усовершенствования, которые делают Devpac 4 один из самых мощных ассемблер / отладчика пакетов, доступных для Компьютеры Spectrum, вы должны внимательно его прочитать в сочетании с отдельный Devpac 3 руководство.
Что нового в ассемблере / Редактор?
В целом
GENS4 работает с прерываниями на и работает на 48К и 128К Спектры с кассеты
лента и ZX Microdrives. Он также полностью совместим с Disciple диска Интерфейс. Версия доступна который работает с системой Opus Discovery дисков которая имеет все функции, описанные здесь; просто заменить слово Microdrive с Opus диска, когда это применимо.
Мы должны теперь подробно additiona и различия по сравнению с DevpacGENS 3 руководство.
Страница 1
GENS4 примерно 10К в длину и загружается по умолчанию, на месте 26000
хотя вы можете загрузить его на любого здравомыслящего адресу; это, как правило, удобно нагрузка Генс в нижней памяти. Вы входите GENS4 как и GENS3 по
RANDOMIZE USR ххххх [ENTER]
где ххххх это адрес, по которому вы загрузили ассемблера. Если вы повторно ввести
GENS на ххххх, то вы получите теплый старт, который сохраняет свой текст; есть нет холодный старт в GENS4.
Есть две версии GENS4 на вашем ленты на стороне 1; Первый вариант имеет
51 символов в строке, а во втором является обычная версия 32 колонки. Их Имена на ленте GENS4-51 и GENS4 соответственно; Вы должны использовать в зависимости от того версия подходит вам лучше всего, версия 51-колонка около 400 байт больше, чем 32-колонка одна.
После того, как вы ввели GENS4 вы представлены с помощью экрана, который отображает
Команды редактора в две колонки с большой буквы, указывающий Команда письмо например Команда V отображает текущие значения определенных полезно Параметры. Этот экран помощь могут отображаться снова с командой H.
Страница 2
Чтобы сделать резервную копию GENS4 использования
SAVE “GENS4-51” КОД ххххх, 11392 [ENTER] или
SAVE “GENS4” КОД ххххх, 10880 [ENTER]
в зависимости от версии, которую Вы хотите резервирование. Вы должны сделать это резервное копирование
перед входом GENS4, чтобы сохранить информацию о переселении.
Page 3
Команда не предложит вам размера таблицы символов или для каких-либо вариантов.
Вместо Синтаксис команды A изменилось:
, М, с
п дает требуемые параметры, которые являются такими же, как описано на странице 3, за исключением
что Вариант 4 получается листинг на не прочь. Если п не указан, то все варианты принимаются как отсутствует.
м определяет размер таблицы символов в байтах, как описано на странице 3, как правило, его
будет достаточно, чтобы по умолчанию это, не входящая в число.
с представляет собой мощный дополнительный признак GENS4. Если S присутствует, он должен быть
действует Микродиск имя файла; Microdrive имена начинаются с D: где d является езды ряд, где находится файл должен быть сохранен. Наличие причин имя файла сек сборщик вести себя по-другому от нормального; а не просто монтаж объектный код в памяти и говорю вам, когда в верхней части памяти достиг сборщик теперь будет собрать свой код в память, пока не достигнет вершина памяти (теперь вы можете указать это с помощью команды U), а затем он будет сохранить объектный код собранный до сих пор Microdrive под под именем и поставить любую последующую объектный код сгенерированный в памяти до тех пор вершина памяти не достигается, когда он спасет этот в файл на конец файла и т.д .; сборка будет продолжать, как это пока все ваши программы не был собран и сохраняется в Microdrive. Там Таким образом, нет предела (за исключением доступного места на Ваш Микродиск картридж) с размером программы вы можете собрать.
Есть некоторые моменты, чтобы помнить при использовании этого средства:
1. Директива ORG вызовет объектный код, чтобы быть местом по адресу ORG
изначально и после каждого временного кода была сохранена в файл объекта, если только Опция 16 используется для обеспечения того, чтобы объектный код помещается непосредственно после символа Таблица. Это, как правило, разумно использовать опцию 16 при сборке непосредственно Microdrive, так как это дает максимальный размер для вашего объектного кода буфера, не будут затронуты исполнение адреса вашего объектного кода.
2. Вы должны избегать использования более одного ORG в вашей программе, если только вы колодок из
любой intervaning памяти нулями, используя DEFS например
ORG 50000
; Некоторые код RET ORG 60000 ; Некоторый код
не будут сохранены правильно Microdrive, потому что второй ORG эффективно пересматривает начало буфера объектного кода. Однако:
ORG 50000
; Некоторые код RET ; Прокладка отъезда до 60000 DEFS 60000- $ ; Некоторый код
будут сохранены правильно, так как DEFS 60000- $ генерирует достаточные нули в
убедиться, что последующий код начинается с адреса 60000. Это, очевидно, неэффективно с точки зрения количества кода, хранящегося на Микродиск но его простота держит сборщик маленький и быстрый.
3. Если имя файла вы просите уже существует, то вам будет предложено, если вы хотите
удалить существующий файл; если вы ответите N или п, то сборка будет прервана, иначе существующий файл будет удален.
Пример использования команды A является:
A20,, 1: TEST [ENTER]
собрать, со списком на, немедленно положить объектный код после символа
стол, используя размер таблицы символов по умолчанию и сохранение объектный код в Microdrive 1 под именем файла TEST.
Страница 4, 5
В версии с 51 колонками, листинг сборка непрерывно, как на экране, и
Принтер, а не разделить на две или более линий, как описано на странице 4, * Команда C работает нормально, хотя. В версии 32-колонки, те же тычет описано на странице 5 могут быть выполнены, чтобы изменить формат предложение.
Страница 16
Вы не можете указать размер включают буфера 0, размер буфера 1 является
минимально допустимое.
Страница 27
не команда C больше не выполняет холодный старт, разрушая свой текст; вместо
Текст перемещается вверх или вниз в памяти как буферы увеличиваться и уменьшаться в размере.
Там нет команды Q в GENS4.
Команда V дает отображение полезной информации; значения по умолчанию
Параметры команды N1 и N2, команда разделитель по умолчанию, начало и конец текста (в десятичной) и стоимости первой командной строки, S1.
Страница 28
Команда X теперь имеет Xn синтаксиса и дает каталог Microdrive числа н. В режиме 51-колонки экран очищается сначала. Каталог всегда отображается в 32 колонок. В предыдущем функция командной X, чтобы показать начало и конец текста, является ное выполняется командой V.
Z команда.
Это эффективно удаляет все текст и поэтому просит вас ли вы
Убедитесь, что вы wnat продолжить, ответить Y или у удалить текст. Помимо быть быстрым сокращением для D1,32767 команда Зап позволяет очистить ваш текстовый файл, если он каким-то образом быть повреждены, например, загруженные Код ошибки в файле. Команда Z устраняет необходимость в холодном вступления стартовой указать в GENS4.
Страницы 33-37
Пример остается преимущественно в неизменном виде, за исключением, что вы больше не просили
указать размер и параметры таблицы; их следует ввести в командной строке как описано выше.
Что нового в отладчике?
В целом
MONS4 работает с прерываниями на и работает на 48К и 128К Спектры с кассеты
лента и ZX Microdrives. Он также полностью совместим с Disciple диска Интерфейс. Версия доступна который работает с системой Opus Discovery дисков которая имеет свои особенности, которые описаны здесь; просто заменить слово Microdrive с Opus диска, когда это применимо.
Отладчик теперь определяет состояние прерывания, когда его ввели, и будет после
останова, от BASIC или при пошаговом и дисплеев это состояние как включен или выключен после флаги отображения на передней панели. Таким образом вы можете сейчас Пошаговый инструкциям EI и DI без проблем.
В противном случае, на дисплее на передней панели остается, как описано в руководстве Devpac 3. Существует одна дополнительная функция, которая позволяет разбирать, чтобы Microdrive и это описано ниже вместе с подробной информацией о некоторых других мелких изменений.
Страница 45
MONS4 примерно 6K в длину и загружается по умолчанию, на месте 55000
хотя вы можете загрузить его на любого здравомыслящего адресу; это, как правило, удобно загрузить Монс в верхней памяти.
Чтобы сделать использование копирования резервный:
SAVE “MONS4” КОД ххххх, 6656
где ххххх это адрес, по которому пакет был загружен. Сделайте резервную копию
Перед выполнением MONS4.
Страница 46
Чтобы вернуться к BASIC необходимо нажать СТОП т.е. [SYMBOL SHIFT] -S; Это возвращает
аккуратно, чтобы ни 48К или 128К BASIC. [CAPS SHIFT] -1 или [EDIT] не получает вас Возврат к основной, а не [EDIT] обычно возвращает вас к передней панели с все подзадача вы, возможно, делал с помощью отладчика.
MONS4 не отключает прерывания при беге и вы свободны пошагового
EI и DI инструкции.
Страница 53
При использовании демонтаж командной T теперь можно разобрать на Microdrive. Ты сделать это, введя Microdrive файла в ответ на текст приглашения: вместо из адреса. Микродиск имя файла имя с приставкой D: где d является привод число 1-8, например, 2: ТЕСТ указано тестовый файл на Microdrive номер 2.
Так, в ответ на запрос Текст :, просто введите имя вида D: имя, указать площадь
для рабочего пространства: и разборка пойдет на Microdrive в с, которые могут быть загружен командой G ассемблера. Единственные ограничения на размер разборка являются свободного места на Microdrive и размер рабочего пространства.
Обратите внимание, что байт после RST 8 инструкции будут разобраны как DEFB н так
байт подхватывается ПЗУ Spectrum и никогда не исполняемый код на ZX Спектр.
Мы надеемся, Вам понравится Devpac 4; Если у вас возникли какие-либо проблемы в использовании либо пакета пожалуйста, напишите нам, четко объясняя природу проблемы и когда это происходит (объявления часто бывают полезны). Вы также можете телефон для технической поддержки между 4 вечера и 5 вечера каждый будний день.
HiSoft Old School, Greenfield, Bedford MK45 5DE
Тел: (0525) 718181
Можете начать играть в HiSoft Devpac онлайн. Среда разработки на ASM, которую подарил миру неизвестный автор, была выпущена компанией HiSoft в 1983 году в Великобритании.
Сохранённые игры[X]
Справка[X]
Помощь уже в пути!
- x1
- x2
- x3
<<<<
<<<<
<<<<
Не забывайте периодически сохранять игровой прогресс на сервере (клавишей F8), чтобы уверенно продвигаться вперёд!
Если вы гость на сайте, то прогресс будет сохранён только в памяти браузера и потеряется при закрытии. Чтобы этого не произошло - просто войдите в свой профиль.
Для загрузки сохранённой игры жмите F3 или откройте меню "Диск" кнопкой на правой панели.
Если игра не запускается, или у вас есть вопросы по игре - задайте их ниже.
Не запускается или глючит игра, или не можете пройти? Спросите в комментариях.