Virtual Worlds #01
31 декабря 1999

Ассемблер - Z80 Flags: недокументированные комманды процессора Z80.

<b>Ассемблер</b> - Z80 Flags: недокументированные комманды процессора Z80.
 ┌────────────────────────────┐
░▒▒▓▒▓█ Z80-Flags. █▓▒▓▒▒░  └────────────────────────────┘

                   (C) Unknown
 (текст  взят из спектрумовской
 конференции fido7.zx.spectrum)


  Есть   еще  один  неосвещенный
участок  в процессоре Z80, кото-
рый  оказывает  свое  влияние на
некоторые   программы,  например
Sabre  Wulf,  Ghosts'n Goblins и
Speedlock. Это недокументирован-
ные флаги!

  Биты  3 и 5 флагового регистра
F  не используются. Hо они могут
содержать информацию и она может
быть использована, поскольку су-
ществуют  такие очевидные коман-
ды,  как  PUSH  AF и POP AF. Hо,
тем  не  менее,  иногда все-таки
содержимое этих флагов изменяет-
ся. Я нашел следующее эмпиричес-
кое правило:

  Значения битов 7,5,3 повторяют
значения  соответствующих  битов
последнего  8-битного результата
инструкции, которая меняла обыч-
ные флаги.

  Например,  после  команды  ADD
A,B эти биты будут идентичны би-
там в регистре A. Бит 7 регистра
F  -  это знаковый бит и он, ес-
тественно, по определению всегда
следует  этому правилу. исключе-
нием  является команда CP x (где
x  - регистр или (HL) или прямой
аргумент).  В  этом  случае биты
копируются  не с результата, а с
аргумента.

  Для инструкций, которые опери-
руют  с двухбайтными операндами,
8  битов,  подпадающие под выве-
денное  правило  - это старшие 8
битов  из 16-битного результата.
Этого  и следовало ожидать, пос-
кольку  здесь  знаковым является
старший 15-ый бит.

  Ghosts'n   Goblins  используют
недокументированные флаги вслед-
ствие   ошибки  программиста.  В
программе   Sabre   Wulf   неес-
тественно  ведет  себя  носорог,
который   иногда  бегает  малыми
кругами в  углах, если  знаковый
бит  по  команде BIT вычисляется
неправильно. Я процитирую:

#AD86  DD CB 06 7E  BIT 7,(IX+6)
#AD8A  F2 8F AD     JP P,#AD8F

  Удивительный  образец  кода! А
что  же  касается "Спидлока", то
он  выделывает  такое количество
непонятных  и  головоломных трю-
ков,  что для того, чтобы он ра-
ботал,  в  эмуляторе  все должно
точнехонько  соответствовать ре-
альному Спектруму.






Другие статьи номера:

От редакции - история создания журнала.

Путеводитель - подробное содержание номера.

Описание оболочки - описание оболочки и методов ее правильной эксплуатации.

Авторы - об авторах.

Ассемблер - Z80 Flags: недокументированные комманды процессора Z80.

Ассемблер - Оверлеи для JC: Описание методов создания утилит работающих под управлением Jemmini_Commander 4.0T.

Ассемблер - Секреты TR-DOS: о методах пределения наличия дисководов.

Ассемблер - Круги на воде: Алгоритмы имитации эффекта известного на других платформах, под названием "круги на воде".

Ассемблер - Поиск пути. Решение задачи "статического" поиска наикратчайшего маршрута между двумя точками.

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

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

Железо - Прерывания: Кое-что непонятное о прерываниях второго рода.

Техпомощь - Мысли вслух. Интересно письмо из конференции fido7.zx.spectrum на тему "К вопросу о стандартизации".

Техпомощь - File FAQ. Полный разбор форматов файлов, наиболее часто встечающихся в Интернет, и не только; а также способы их конвертации в "нормальный" вид.

Техпомощь - Dos Review: материал по формату дисковой операционной системы IS-DOS.

Техпомощь - Dos Review 2: материал по формату дисковых операционных систем ПК "АГАТ", Радио-86РК, SP-DOS, БК-0011М.

Техпомощь - Dos Review 3: материал по формату дисковых операционных систем CP/M, ASC SOUND MASTER, RT11, СМ ЭВМ РАФОС.

Техпомощь - Dos Review 4: материал по формату дисковой операционной системы от неизвестного автора.

DI:HALT:99 - Анализ DH:99. Наконец-то вся правда о прошедшей летом, в г.Дзержинске пати, от самих организаторов.

DI:HALT:99 - Hidden Parts. Жизнь дзержинских (и не только) спектрумистов в период проведения DI:HALT:99.

DI:HALT:99 - Результаты. После прошествия DH:99, чуть ли не каждая вторая газета, считала своим долгом придумать новый вариант результатов. Данная статья направле- на на то, чтобы окончательно поставить все точки над "И".

Программы - Alien: описание и прохождение игры по фильму "Чужой".

Программы - описание Universal AntiProtector 0.01 (программа для автоматического раскалывания ряда популярных защитных систем).

Программы - редактор игровых экранов "Белые Пятна".

Программы - Exhumator: программа для "эксгумации дисков".

Программы - чанковый графический редактор: Hard Core ver 3.01

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

Отдохни - Стих о Sysop'e. Поэзия однако...

Отдохни - Секс в Фидо. Юмористический расказ о том, как же на самом деле занимаются любовью заядлые фидошники.

Отдохни - Анекдоты. Подборка анекдотов с компьютерной тематикой.


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

Похожие статьи:
Архив - описание игры "ITALY 90".
Сделай сам - Speccy календарь.
Полезное - Как воспитывать родителей.
Кодинг - Тест доступной памяти. Управление банками памяти. Адаптация программ под Miko.
Kaktus - Воззвание к читателю.

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