ZX Review #11-12
26 ноября 1997

Этюды - Графический эффект "плазма".

<b>Этюды</b> - Графический эффект

          2. "Плазма"

   Это целый ряд красивых эффек-
тов. Вот  первый  из  них, самый
простой:
140.
;--------------------------;
3; (c) Иван Рощин, 1997     ;
; ЭФФЕКТ "PLASMA"          ;
;--------------------------;

        LD      HL,#4000  ;CLS
        LD      (HL),L
        LD      DE,#4001
        LD      BC,#1AFF
        LDIR

;Переносим содержимое верхней строки
;вниз и наоборот, т.е. экран как бы
;замкнут по вертикали:

M2      LD      HL,#5820
        LD      DE,#5AE0
        LD      BC,32
        LDIR
        LD      HL,#5AC0
        LD      DE,#5800
        LD      BC,32
        LDIR

;В цикле обновляем атрибуты #5820-#5AE0:

        LD      IX,#5820
M1      LD      A,(IX+1)
        ADD     A,(IX-1)
        ADD     A,(IX+32)
        ADD     A,(IX-32)

        DEC     A      ;!
        SRL     A      ;!
        SRL     A      ;!

        LD      (IX),A
        INC     IX
        LD      A,XL
        CP      #E0
        JR      NZ,M1
        LD      A,XH
        CP      #5A
        JR      NZ,M1

        XOR     A
        IN      A,(254)
        CPL
        AND     31
        JR      Z,M2
        RET
2
   Вы можете  экспериментировать
с этой  программой,  изменяя  ее
участок, помеченный "!".  Попро-
буйте такие варианты:

а) DEC A    б) SRL A    в) SRL A
   SRL A       DEC A       SRL A
   SRL A       SRL A       DEC A

г) SRL A    д) ADD A,8
   SRL A       SRL A
   INC A       SRL A
               DEC A

   После этого участка можно до-
бавить команду AND #3F  или  AND
#7F - это тоже влияет на вид эф-
фекта.

   Можно изменить и другой фраг-
мент программы:

        LD      A,(IX+1)
        ADD     A,(IX-1)
        ADD     A,(IX+32)
        ADD     A,(IX-32)

Он определяет, что значение  те-
кущего атрибута зависит от  зна-
чений  атрибутов  слева, справа,
снизу и сверху от него:

   ┌───┐
   │ ▒ │  █ - текущий атрибут
   │▒█▒│
   │ ▒ │  ▒ - влияющие на него атрибуты
   └───┘

   Интересные  результаты  полу-
чаются при определении таких за-
висимостей:

┌───┐ LD  A,(IX+1)     ┌───┐ LD  A,(IX)
│ ▒ │ ADD A,(IX)       │   │ ADD A,(IX)
│ ▓▒│ ADD A,(IX+32)    │ ▓ │ ADD A,(IX+31)
│ ▒ │ ADD A,(IX-32)    │▒▒ │ ADD A,(IX+32)
└───┘                  └───┘

┌───┐ LD  A,(IX-33)    ┌───┐ LD  A,(IX)
│▒ ▒│ ADD A,(IX-31)    │   │ ADD A,(IX)
│ █ │ ADD A,(IX+31)    │ ▓ │ ADD A,(IX+32)
│▒ ▒│ ADD A,(IX+33)    │ ▒▒│ ADD A,(IX+33)
└───┘                  └───┘




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

Авторская разработка - С.Зонов, А.Ларченко. О контроллере SMUC (HDD и IBM периферия).

Компьютерная новелла - Воины Звезд (по игре Shadowfire).

Новые программы - Обзор Digital Studio v1.12, Digital Studio Compiler v1.01

Новые программы - Обзор Xas редактор-ассемблер 128К (v5.05).

Новые программы - Обзор Музыкального редактора Instrument v3.01

Новые программы - Обзор программ FASTzasm и @-zasm.

Новые программы - Обзор программы No Kempston.

Профессиональный подход - Алгоритмы построения и прохождения Лабиринтов.

Смех без причины... - Материалы из юмористического журнала SpectrofUn.

Советы экспертов - Игра FEUD.

Советы экспертов - Игра Killed Until Dead.

Советы экспертов - Игра War in Middle Earth.

Форум - Конверсия цветной спектрумовской картинки на IBM. Конверсия ч/б картинки с IBM на ZX Spectrum.

Форум - О русификации игровых программ.

Форум - Программа детекта эмулятора.

Форум - Процедура "цветные полосы на бордюре". Снижение шума FDD.

Форум - Процедура перевода числа в десятичный вид. Процедура - сканер пароля.

Форум - Снятие защиты Microprotector'а.

Форум - Эмуляторы, которые мы выбираем: 'UKV Spectrum Debugger', 'Z80TRDOS'.

Читатель-читателю - Драйвер ввода в режимах последовательного и прямого доступа из файлов системы TR-DOS.

Этюды - Графический эффект "плазма 2".

Этюды - Графический эффект "плазма 2".

Этюды - Графический эффект "плазма".

Этюды - Полезные советы. Быстрая переброска экрана.

Этюды - Ремейк процедур 93 года.

Этюды - Эффект "пламя".


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

Похожие статьи:
7 Origins - Семерка лучших origin'ов-мудрых и не очень выражений.
Юмор - анекдоты.
ZX-Review - обзор сайтов по ZX Spectrum.
Почтовый ящик - Как написать в газету.
Программистам - Вывод трехсимвольных расширений файлов.

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