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

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


(c) Командин Илья (ZX-MANIACS),
г. Калуга.

   Хочу   предложить   программу
проявления экрана  вертикальными
столбцами  в  хаотичном  порядке
(картинка должна  быть  помещена
по адресу BUFF).
1410.
; (C) ZX-MANIACS'1996
; SPECIAL FOR INFORCOM
          ORG     40000
          ENT
BUFF      EQU     41000
          LD      HL,TABL
          LD      DE,TABL+1
          LD      BC,255
          LD      (HL),0
          LDIR
          XOR     A
          LD      (COUNT),A
          LD      HL,BUFF
          LD      DE,#4000
          SBC     HL,DE
          LD      (DIFF),HL
          LD      HL,8000
NEXT      PUSH    HL
          LD      C,(HL)
          LD      A,R
          AND     63
          XOR     C
          LD      C,A
          LD      H,0
          LD      L,A
          LD      DE,TABL
          ADD     HL,DE
          LD      A,(HL)
          OR      A
          JR      NZ,CONT2
          LD      (HL),1
          LD      A.(COUNT)
          INC     A
          LD      (COUNT),A
          XOR     A
          CALL    8880
          ADD     A,A
          ADD     A,A
          ADD     A,A
          ADD     A,70
          LD      (BITP),A
          ADD     A,64
          LD      (RESP),A
          LD      (SETP),A
          LD      B,192
LOOP      LD      DE,(DIFF)
          ADD     HL,DE
          DEFB    #CB
BITP      NOP
          PUSH    AF
          SBC     HL,DE
          POP     AF
          JR      Z,CONT
          DEFB    #CB
SETP      NOP
          JR      CONT1
CONT      DEFB    #CB
RESP      NOP
CONT1     CALL    DOWN
          DJNZ    LOOP
CONT2     POP     HL
          DEC     HL
          LD      A,(CONT)
          CP      #FF
          JR      NZ,NEXT
          LD      HL,BUFF
          LD      DE,#4000
          LD      BC,6912
          LDIR
          RET
DOWN      INC     H
          LD      A,H
          AND     7
          RET     NZ
          LD      A,L
          ADD     A,32
          LD      L,A
          RET     C
          LD      A,H
          SUB     8
          LD      H,A
          RET
DIFF      DEFW    0
COUNT     DEFB    0
TABL      DEFS    256
2
  Заодно предлагаю и  упрощенный
вариант этой же процедуры.  Зри-
тельный эффект  от  нее  не  так
приятен, но зато  длина  намного
меньше (не нужна таблица).
1410.
; (C) ZX-MANIACS'1996
; SPECIAL FOR INFORCOM
          ORG     40000
          ENT
BUFF      EQU     41000
          LD      HL,BUFF
          LD      DE,#4000
          SBC     HL,DE
          LD      (DIFF),HL
          LD      HL,800
NEXT      PUSH    HL
          LD      C,(HL)
          LD      A,R
          AND     63
          XOR     C
          LD      C,A
          XOR     A
          CALL    8880
          ADD     A,A
          ADD     A,A
          ADD     A,A
          ADD     A,70
          LD      (BITP),A
          ADD     A,64
          LD      (RESP),A
          LD      (SETP),A
          LD      B,192
LOOP      LD      DE,(DIFF)
          ADD     HL,DE
          DEFB    #CB
BITP      NOP
          PUSH    AF
          SBC     HL,DE
          POP     AF
          JR      Z,CONT
          DEFB    #CB
SETP      NOP
          JR      CONT1
CONT      DEFB    #CB
RESP      NOP
CONT1     CALL    DOWN
          DJNZ    LOOP
CONT2     POP     HL
          DEC     HL
          LD      A,H
          OR      L
          JR      NZ,NEXT
          LD      HL,BUFF
          LD      DE,#4000
          LD      BC,6912
          LDIR
          RET
DOWN      INC     H
          LD      A,H
          AND     7
          RET     NZ
          LD      A,L
          ADD     A,32
          LD      L,A
          RET     C
          LD      A,H
          SUB     8
          LD      H,A
          RET
DIFF      DEFW    0
2
  В обеих программах использует-
ся процедура DOWN Павла Старкова
из Красноярска и Эдуарда К., Ан-
дрея Власова  из Ростова-на-Дону
(ZX-РЕВЮ 95/4, стр. 46). Я наме-
ренно  не  стал  раскрывать под-
программу  и вынес ее  отдельным
модулем, чтобы  показать ее при-
надлежность другим авторам.




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

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".

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

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

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

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

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

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

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

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

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


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

Похожие статьи:
анекдоты - Колобок повесился!!!
Ассемблер - поговорим о такой необходимой процедуре как вывод спрайта.
8) - Юмор

В этот день...   8 декабря