Как написать игру для ZX Spectrum на ассемблере

       

Название для игры НАРДЫ



Рисунок 6.4. Название для игры НАРДЫ

Вот такая симпатичная надпись, в которой каждая буква составлена из отрезков параллельных двойных линий, нарисованных DRAW'ами. В высоту укладывается двенадцать таких линий плюс промежутки между ними. Точно такие любой из вас сможет легко начертить по линейке на листе бумаги, измерить их длины и координаты, после чего ввести в программу свои вычисления в виде блока данных. Посмотрим, как это делается. Прежде всего разберемся со структурой строки блока данных, поскольку с подобным построением раньше мы еще не встречались, а именно оно все и определяет. Строка списка DATA содержит шесть элементов, каждому из которых в программе соответствует определенная переменная, а именно:

    y - вертикальная координата начала линии (в пикселях);

    x - горизонтальная координата начала линии (опять же в пикселях);

    hgt - высота буквы (количество двойных линий плюс промежутки между ними);

    len - длина проводимой горизонтальной линии (снова в пикселях);

    ink - цвет линии (0...7);

    dx - приращение линии (еще раз в пикселях).

Работу программы лучше всего показать на примере какой-нибудь буквы, скажем, «Д» (Рисунок  6.5, а), при построении которой участвуют все эти переменные (правда, некоторые величины в списках DATA равны нулю).



Содержание раздела