Speccy #01
30 сентября 1995

Программирование - вывод текстовых сообщений шрифтом 8х16.

<b>Программирование</b> - вывод текстовых сообщений шрифтом 8х16.
  ┌──────────────────────────┐  
 ─── ПРОГРАММИРОВАНИЕ ───  
  └──────────────────────────┘  
                                
 Данная  рубрика  журнала  будет
предназначена    для   тех   кто
увлекается составлением программ
или хочет научиться программиро-
вать. Она будет также  полезна и
тем кто  уже  достаточно  освоил
методику программирования в  ма-
шинных  кодах  и  отлично  знает
ассемблер. В этом  разделе  жур-
нала   вы   можете  опубликовать
алгоритмы    ваших   разработок,
написанные   вами   процедуры  в
машинных    кодах,    интересные
программы на Бейсике и т.д.     
                                
 Такой  обмен накопленного опыта
по     программированию    будет
полезен всем. Обмениваясь своими
                                
                                
знаниями  вы  можете значительно
быстрее,    эффективнее   и   на
высоком   уровне   писать   свои
программы.                      
                                
 Издатели   оставляют  за  собой
право      отбора      программ.
Предпочтение  отдается самостоя-
тельным разработкам.            
                                
 Для     публикации    программы
необходимо:                     
                                
 а)    Асемблерный    текст    с
коментариями  (предпочтительно в
формате ZX Word).               
                                
 б) Кодовая часть.              
                                
                                
                                
                                
                                
                                
─────────────────────────────── 
 ВЫВОД ТЕКСТОВЫХ СООБЩЕНИЙ 8*16 
─────────────────────────────── 
                   Зубриков Д.Е.
                   -------------
                                
 В   последнее  время  появилось
очень   много   способов  печати
текстовых     сообщений,     как
используя  стандартный набор или
подгружаемиый,  так и спрайтовый
которому   отдают   предпочтение
из-за  его  разнообразия  форм ,
размеров и т.п.                 
                                
 Но  я  хочу  предложить  вашему
вниманию   подпрограмму   печати
использующей  подгружаемый шрифт
созданный    в    ARTSTUDIO   по
принципу А/а.                   
                                
 Вы  спросите  в  чем  разница и
                                
                                
преимущество   перед  спрайтовым
шрифтом?  Основное  преимущество
конечно  занимаемая память. (Вся
подпрограмма  вместе  с  шрифтом
занимает    около    1кБ,    для
сравнения спраитовый шрифт около
ЗкБ в среднем)                  
                                
 Ну  а  об  остальных плюсах или
минусах судить Вам.             
                                
 Теперь о самой программе:      
                                
 1.  Программа  набрана с адреса
43000  и  занимает  1100  байтов
вместе    с    одним   текстовым
сообщением. (см.в приложении)   
                                
 2.   Запускается   программа  с
адреса   43050   с   последующим
выходом в бейсик.               
                                
                                
                                
────────────────────────────────
                                
 Далее    к    Вашему   вниманию
предаставляется   листинг  самой
программы  с  подробным обьясне-
нием всех действий.             
                                
 Впервые эта  подпрограмма   ис-
пользовалась в загрузчике-описа-
нии  к игре REAL PRESIDENT фирмы
ADDICTIVE GAMES LTD.  восстанов-
ленной и руссифицированной мною.
                                
      LD  HL,43844  переключение
      LD  (23606),HL      шрифта
      LD A,#02     открыть канал
      CALL 05633             "S"
      LD DE,44000      текстовое
                       сообщение
      CALL  М1      подпрограмма
                  печати верхней
                           буквы
                                
                                
      LD DE,44000               
      CALL  М2      подпрограмма
                   печати нижней
                           буквы
      LD HL,15360   переключение
                  на стандартный
      LD (23606),HL        набор
      RET              возврат в
                          Бейсик
М1    LD ВС,00039     количество
                        символов
                      для печати
      LD A,#14         установка
                         позиции
      LD (44005),A        печати
К1    LD A,В                    
      OR C      непосредственная
                          печать
      DEC ВС          текстового
                     сообщения с
                        обратным
      RET Z            выходом в
                                
                                
                      вызывающую
                       процедуру
      LD A,(DE)                 
      INC DE                    
      RST 10                    
      JR  К1                    
М2    LD ВС,00039     количество
                        символов
                      для печати
      LD A,#15         установка
                         позиции
                       печати на
      LD (44005),A       единицу
                          больше
К2    LD A,В                    
      OR C                      
      DEC ВС              печать
                       сообщения
                       с текущей
                       проверкой
      RET Z                     
      LD A,(DE)                 
                                
                                
      INC DE                    
      PUCH ВС                   
      LD В,#40       ограничения
                      для печати
                        символов
К3    СР В                  если
                         в норме
                   то увеличение
                           на 20
      JP C,  К4         и печать
                    символа если
                         нет, то
      DJNZ   К3       печатается
                         текущий
                          символ
      LD В,#20                  
К5    INC A                     
      DJNZ   К5                 
К4    РОР ВС                    
      RST 10                    
      JR     К2                 
                                
                                
                                
44000       11                  
44001       00  -  PAPER        
44002       10                  
44003       01  -  INK          
44004       16                  
44005       15  - ТАБУЛЯЦИЯ ПО  
                  ГОРИЗОНТАЛИ   
44006       00  - ЛЕВАЯ ПОЗИЦИЯ 
                  ПЕЧАТИ        
44007...44039   - ТЕКСТОВОЕ     
                  СООБЩЕНИЕ     
                                
                                
 Как  Вы  уже поняли, сначала мы
печатаем  большую букву, а затем
под  ней  маленькую.  Исходя  из
этого     Вы    теперь    можете
самостоятельно,  используя  один
из      редакторов,     например
ARTSTUDIO создать свои шрифты.  
                                
 Данная   подпрограмма  является
                                
                                
основой    для    более   мощной
программы,   которую  "городить"
уже Вам дорогие пользователи.   
                                
────────────────────────────────
                                
                                
 Ну  а  теперь   речь  пойдет  о
другой программе. Вы можете пог-
лядеть как эффектно эта програм-
ма выводит меню. Вы  можете  ис-
пользовать эту процедуру  в сво-
их программах. О том как исполь-
зовать эту процедуру пойдет речь
дальше.                         
                                
                                
                                
                                
                                
                                
                                
                                
                                




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

Презентация - о причинах создания нового журнала.

Авторска программа - редакция журнала принимает на дистрибюцию авторские программы.

Музобоз - На конкурс принимаются музыкальные демонстации изготовленные как одним так и группой программистов.

Программирование - вывод текстовых сообщений шрифтом 8х16.

Программирование - вывод окна и текста меню.

Комиксы, мультролики - Журнал объявляет конкурс на лучший юмористический рисунок, комикс, мультролик и полнометражный мультик.

Тусовка - Для всех тех кто хочет найти себе друзей, установить с ними переписку, высказать вслух свои мысли и т.д., мы открываем эту рубрику.

Игроскоп - присылайте описания игр.

Реклама - разработка программных информационно-справочных систем.


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

Похожие статьи:
Открытые письма Nemo №6.248
Реклама - Реклама и объявления.
События - Интервью с Андреем Логвиненко (FAyka) взятое на Chaos Constructions 2005.
Реклама - реклама и обьявления.
Система - программа для начинающих и опытных программистов - ассемблер МАSМ v1.0.

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