┌──────────────────────────┐
│ ─── ПРОГРАММИРОВАНИЕ ─── │
└──────────────────────────┘
Данная рубрика журнала будет
предназначена для тех кто
увлекается составлением программ
или хочет научиться программиро-
вать. Она будет также полезна и
тем кто уже достаточно освоил
методику программирования в ма-
шинных кодах и отлично знает
ассемблер. В этом разделе жур-
нала вы можете опубликовать
алгоритмы ваших разработок,
написанные вами процедуры в
машинных кодах, интересные
программы на Бейсике и т.д.
Такой обмен накопленного опыта
по программированию будет
полезен всем. Обмениваясь своими
знаниями вы можете значительно
быстрее, эффективнее и на
высоком уровне писать свои
программы.
Издатели оставляют за собой
право отбора программ.
Предпочтение отдается самостоя-
тельным разработкам.
Для публикации программы
необходимо:
а) Асемблерный текст с
коментариями (предпочтительно в
формате 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 создать свои шрифты.
Данная подпрограмма является
основой для более мощной
программы, которую "городить"
уже Вам дорогие пользователи.
────────────────────────────────
Ну а теперь речь пойдет о
другой программе. Вы можете пог-
лядеть как эффектно эта програм-
ма выводит меню. Вы можете ис-
пользовать эту процедуру в сво-
их программах. О том как исполь-
зовать эту процедуру пойдет речь
дальше.
Other articles: