Adventurer #08
31 августа 1998

Обмен опытом - процедура вывода окна с рамкой.

<b>Обмен опытом</b> - процедура вывода окна с рамкой.
     (C) Иван Рощин, Москва, 1998

     Предлагаю  вашему вниманию небольшую
(44  байта),  но очень полезную процедуру
OPEN_W , которая изображает на экране ок-
но  с рамкой. Ее нетрудно модифицировать,
задав любые символы для изображения рамки
и заполнения окна.
     При ее вызове в регистровой паре  DE
нужно  задать  координаты левого верхнего
угла  рамки, в регистре B - высоту, C ши-
рину окна (в символах):

       ╔═════════════════════════╗
       ║     ^                   ║
       ║     |E                  ║
       ║  D  v                   ║
       ║<--->┌───────────┐ ^     ║
       ║     │           │ |     ║
       ║     │           │ |     ║
       ║     │   окно    │ |B    ║
       ║     │           │ |     ║
       ║     │           │ |     ║
       ║     │           │ |     ║
       ║     └───────────┘ v     ║
       ║     <----------->       ║
       ║           C             ║
       ╚═════════════════════════╝

     При  использовании  этой процедуры в
вашей  программе должна присутствовать  и
процедура  печати одного символа. Предпо-
лагается,  что она называется PRSYM и при
ее  вызове в аккумуляторе указывается код
печатаемого  символа, а в DE - координаты
печати (D=X, E=Y). После окончания работы
процедуры  PRSYM регистры не должны изме-
няться.
     Текст  процедуры PRSYM здесь не при-
водится. В конце концов, если вам понадо-
билось  вывести окно и что-то в нем напе-
чатать, то процедура печати символа у вас
уже должна быть.

OPEN_W  LD      A,"┌" ;левый верхний угол рамки
        LD      L,"┐" ;правый верхний угол рамки
        CALL    OPEN_W2
OPEN_W1 LD      A,"│" ;вертикальная граница рамки
        LD      H," " ;этим символом заполняется 
                      ;окно
        LD      L,A
        CALL    OPEN_W3
        DJNZ    OPEN_W1
        LD      A,"└" ;левый нижний угол рамки
        LD      L,"┘" ;правый нижний угол рамки
OPEN_W2 LD      H,"─" ;горизонтальная граница рамки
OPEN_W3 PUSH    DE
        CALL    PRSYM
        INC     D
        LD      A,H
        LD      H,C
OPEN_W4 CALL    PRSYM
        INC     D
        DEC     H
        JR      NZ,OPEN_W4
        LD      A,L
        CALL    PRSYM
        POP     DE
        INC     E
        RET

               *   *   *



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

От автора - помощь: Новые глюки в новой оболочке.

От автора - автора: об авторах журнала.

Презентация - Авторские программы: Installer to AUTORUN DISK v2. 0, адвентюрная игра Diamond.

Презентация - программа для защиты программ TRICK v1. 003b.

Презентация - HELP Z_80: Руководство пользователя.

Интерфейс - письма читателей: Черный ворон, Секрет игры NEW DIZZY, Об ошибках игры APOLLO, о новой веросии отладчика STS 6.2, Как пройти игру Святогор.

Интерфейс - PC vs Amiga: Так ли AMIGA RULEZ? Первые впечатления неофита.

Интерфейс - о поддержке производителями "железа" своих "творений" после того, как они (творения) попадают в руки пользователей.

Интерфейс - мысли вслух: "SPECCY компьютер для молодых. Если у нас так много крутых кодеров, то почему так мало крутого отечественного soft'а?"

Интерфейс - загоны от CAV inc: "SPECCY это не работа, это отдых, это, даже, больше, чем отдых, это стиль жизни, и, если за это вам еще удается получить деньги..."

Интерфейс - SPECCY за и против, Размышления Spy/Eternity Industry.

Система - Обзор системных программ: ZX-IBM Editor v1.5M , PPF v1.05, Multistudio v2.0p, Mods Player v2.0, Bitmap Viewer v2.0, Corrector v2.0, Storm v1.1, 866 v1.2, HRUM v3.5, TDU v1.0, HRUST v1.0, RLE-Compressor v1.21, Оверлеи Consul Commander.

Обзор игрушек - Обзор новых игровых программ: Rabbit Jazzy, Quadrax, Komplex, Math of the day, Cue Boy, Zly Sen, Prva Aakcia, Outlaw, The Dark Empire, Gary Linekers.

Обзор игрушек - демоверсии: Little Ghost, The Dark Empire, Worms, Смагли 3, Monster Land, Цивилизация, Тайны капитана Шелтона.

Гости - Презентация группы группы из Коврова - Eternity Industry.

Гости - Filix о создании игры ВИННИ ПУХ-2.

Гости - экстремальщики: новая рубрика, освещающая аспекты жизни и творчества экстремальных рыбинских музыкантов. Сегодня в гостях Марат и Демон - стоявшие у истоков такой известной (в узких кругах) команды "Disgust".

Раскрутка - Как играть в игру Encyclopedia of WAR.

Раскрутка - прохождение игры Where time Stood Still.

Раскрутка - описание игры Elopement: back to the Earth.

Раскрутка - прохождение текстовой адвентюры Остров тьмы (Island Darkness).

Раскрутка - прохождение текстовой адвентюры Knightmare.

Обмен опытом - Русские глюки: игра Остров тьмы (о том, как НЕ НАДО писать адвентюрные игры).

Обмен опытом - Доработка ZX-ASM v3.0 от Ивана Рощина.

Обмен опытом - Особенности видеоконтроллера ZX Spectrum (для программистов).

Обмен опытом - Графический эффект IRIS (плазма).

Обмен опытом - процедура вывода окна с рамкой.

Обмен опытом - о том как оперировать в ассемблере с длинными числами типа Long.

Обмен опытом - Art Studio и принцип открытой архитектуры (как написать свои модули к редактору).

Обмен опытом - процедура Движение атрибутной надписи по пикселям (плавающие атрубуты).

Оттяг - Повесть про Пентиума Пентиумовича Пентиумова. 20 вещей , которые можно сделать, если ваша любимая команда проиграла в гостях. Унитаз, как мерило человеческих ценностей.

Оттяг - Тест "Формацевт, проверка на подлинность".

Оттяг - Тест "Ты случайно не тупая задница".

Оттяг - Тест "Есть ли у тебя чувство юмора".

Оттяг - Тест "Какой из тебя студент".

Оттяг - Как ПРАВИЛЬНО убить Windows'95.

Оттяг - Винни-Пух и все-все-все - 2.

Новелла - Сказки Капрала Джилана (по игре Laser Squad).

Новелла - Побег из космоса (по игре Elite).

Новелла - Ежики мутанты.

Новости - новости от Рыбинских спектрумистов: Infosoft, Shrsoft, Surgeon, Chasm, Protecvision, Groboclone, Volume 4, Expеrience, Mr. Vano, Ant, Demon, Miguel, Veka, RDM, Auryn.

Новости - новости от Ярославских спектрмистов: Marchy, Kav Software, Nicolas Viper, Dr Shura, Harkonnen, MacKeymn, DJ Reason.

Реклама - реклама и обьявления.


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

Похожие статьи:
Юмор из фидо - Скатеpтью доpожка.
editorial - входи, друг. очередное волшебство перед тобой.
Игрофилия - Секреты и пароли к играм: Adams Famaly , Astro Marine Corp, Black Magic, Bubble Bobble, Chicago , Cybernoid Part 1&2 , Double Xinox, Dynasty Wars, Fargo,Freestyle Bmx, Garfield, Grand Prix-2, Herbert'S Dummy Run, Impossamole, Mad Mix-2, Indiana Jones And Last Crusade, Jet Bike Simulator, Kraal, Kgb Superspy, Last Mission , Line Of Fire , Magic Stripes, Monty Python Flying Circuit, New Zeland Story, Predator-2, Power Piramids , Rau Recruits , Road Runner , Score 3020, Task Force, Ulises, War Machine, Wild West Seymour, Zona0.
Что нового? - Heresy#6, Marazm#20, Margo III (demo).
Интервью - Sauron, Ksa, Logros, Lav, Gods Father.

В этот день...   1 января

SibNews #08, Woot! #01, Spectrum Magazine #01, ACNews #25, Psychoz #14, ACNews #14, Last 128 #08, Last 128 #06, Last 128 #05, Last 128 #04, Last 128 #03, Last 128 #02, Last 128 #09, Last 128 #3.5, Last 128 #8.025, Sinclair Club #05, Last 128 #M!R 01, Fantadrom #01, Buzz #20, Last 128 #01, DonNews #13, Nicron #120, Promised Land #01, Inferno #01, Marazm #25, Ultimathum #01, Marazm #21, Hooy Mag #02, KrNews #11, Marazm #22, Marazm #23, ZX Football 2000 #01, Codemania #01, Always #03, Bugs #02, IzhNews #08, Virtual Worlds #01, Listok #04, Scenergy #02, Flash Info #18, Marazm #16, Marazm #17, Zed #01, Balagan #02, ZX Format #08, ZX Power #03, Shock #01, Impulse #02, Deja Vu #03, ZX Club #08, ZX Club #06, Numberology #01, Marazm #13, Marazm #12, Marazm #14, Gorodok #02, Zodiac #01, Marazm #15, Deja Vu #07, Marazm #11, Deja Vu #07, Playboy #03, Crazy News #2, Crazy News #4, ZX Light #01, Crazy News #5, Playboy #02, ZX News #03, ZX Review #1-2, Read Me #02, Crazy News #3, Nicron #13, Read Me #01, Public Spirit #01, Faultless #06, Faultless #05, ZX Software #01, Stump #04, Speccy #07, Возраждение #0, Speccy #03, On-Line #17, Scene+ #01, Welcome Press #01, ZX Konig #04, Adventurer #01, Faultless #05, Faultless #04, Di Halt #01, Faultless #01, Playboy #01, Crazy News #1, Faultless #03, Pioneer #03, Sinclair Town #02, ZX Magazine #01, Eldorado #01, ZX Magazine #02, Spectron #01, ZX News #01, ZX Konig #02, 200 #W, Welcome Press #00, Dune #07, Subliminal Extacy #01, Subliminal Extacy #02, ZX Konig #01, Subliminal Extacy #00, Muchomor #01, Spectrofon #01, ZX Revija #02, Outlet #01, Outlet #1-3