ZX Review #3-4
22 июля 1997

Этюды - Е.Волчков. Улучшение подпрограммы вычисления адреса в дисплейном файле.

<b>Этюды</b> - Е.Волчков. Улучшение подпрограммы 
     вычисления адреса в дисплейном файле.


(c) Волчков Евгений (Hacker
Rowdy), г.Чита, 1996.

   В те времена, когда я  еще  с
натугой понимал  Ассемблер,  мне
посчастливилось  купить   первый
том  сериала  книг  о   графике.
Очень полезная программа,  опуб-
ликованная  в  книге,  вычисляла
адрес  в  дисплейном  файле   по
координатам, заданным  в  знако-
местах. В оригинале, как вы, ко-
нечно, знаете, она выглядит так:
140.
     LD   DE,(COORDS)
     LD   A,E
     AND  #18
     OR   #40
     LD   H,A
     LD   A,E
     AND  #07
     OR   A
     RRA
     RRA
     RRA
     RRA
     ADD  A,D
     LD   L,A
2
   После того как  я, не без по-
мощи вашей  литературы,  повысил
свои знания Ассемблера,  я  нат-
кнулся как-то опять на эту прог-
рамму и возле  команды  OR  A  с
удивлением прочитал  комментарий
"Сбросим флаг  CARRY".  Но  ведь
перед OR A стоит AND #07,  кото-
рая, следуя книге "ZX Spectrum &
TR-DOS", всегда, вне  зависимос-
ти  от  получаемого  результата,
СБРАСЫВАЕТ флаг CARRY, т.е.  эту
небольшую подпрограмму можно ис-
пользовать с таким  же  успехом,
но просто убрав OR A. Кроме  то-
го,  длину  подпрограммы   можно
уменьшить, если поставить 3  би-
та, означающие  номер  ряда,  на
свое место  при  помощи  команды
RRCA. Таким образом 5 команд:
140.
     OR   A
     RRA
     RRA
     RRA
     RRA

заменяем на 3:

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

********************************



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

TR-DOS для начинающих - Часть 1.

Авторская разработка - General Sound - мультимедиа для ZX Spectrum!

Визитная карточка - Представляем новый электронный журнал "Major Wares" (c) Codebusters & V.M.G.

Компьютерная новелла - Knight Lore "Преданья рыцарских времен".

Новые программы - И.Рощин. HELP_Z80. В.Давыдов. Catalog's Base v1.8.

Описание оболочки журнала "ZX-РЕВЮ"

Перекресток драконов - Aavlon, Castle of Dreams, Erik the Viking.

Перекресток драконов - Eureka!, Eye of Bain, Kentilla.

Перекресток - Sherlock, Apollo, Shadows of Mordor, Rigels Revenge, Temple of Terror, ID, That's the Spirit, Return to Ithaka.

Ретро - Дж.Хардман, Э.Хьюзон. 40 лучших процедур.

Советы экспертов - Castle Master.

Советы экспертов - Firelord.

Советы экспертов - Stonkers.

Форум-игры - Insult Megademo, Catch 23, Livingstone, Rock Star ate my Hampster, НЛО-2: Дьяволы Бездны, Terminator 2, Venturama, The Spririts, Nipper, Sweewo'S World, King's Bounti-2, Hacker 2, Black Magic, Satcom, Звёздное Наследие.

Форум - А.Гура. Кодекс программиста.

Форум - А.Стрельников. Перспективы развития ZX Spectrum.

Форум - В.Давыдов. По материалам, опубликованным в ZX-РЕВЮ: Некоторые вопросы, связанные с автостартом Бейсик-программ. Redefine Keys. Процедура печати 42 символов в строке. Процедура умножения HL=B*C. Доработка посекторных загрузчиков. Мини-драйвер дисковых операций.

Форум - Группа 'Light'. Музыкальный процессор для ZX-Speccy.

Форум - Д.Федоров: Печать картинки с маской с точностью до пиксела. Алгоритм расчета адреса по координатам с точностью до пиксела.

Форум - И.Рощин. Совместное использование ZX ASM 3.0 и STS 5.1.

Форум - М.Бекарев. Расчет адреса экранной области по знакоместу и наоборот.

Форум - П.Федин. Доработка Profi для бесконфликтного подключения периферии.

Форум - С.Астров. Генератор псевдослучайных чисел.

Читатель-читателю - В.Сироткин. Защита программ (взгляд на проблему).

Читатель-читателю - И.Рощин. Драйвер экрана для компьютера "Пентагон-128".

Этюды - А.Савинов: Процедура вывода на экран символов двойной высоты. Процедура "растворения" символов.

Этюды - А.Уржа. Процедура рисования окружности.

Этюды - В.Сироткин. Программа подсчета контрольной суммы.

Этюды - Е.Волчков. Улучшение подпрограммы вычисления адреса в дисплейном файле.

Этюды - Е.Мороз. Бегущая строчка.

Этюды - И.Командин. Программа проявления экрана.

Этюды - И.Рощин. Два графических эффекта.

Этюды - М.Лазутов: Программа модернизации шрифта. Программа кодирования/декодирования блока кодов. Эффект с атрибутами.

Этюды - О.Смолянкин: Процедуры очистки экрана. Вывод текстовых сообщений на экран.


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

Похожие статьи:
Деда Мороз 2 - новогодние стихи.
Много памяти - зачем спектруму 512 килобайт памяти?
Вступление - Этот мир уже ничто не спасет.

В этот день...   6 августа