• Онлайн: 2
Как я учился программировать - 2
Знакогенераторы
В процессе загрузки бейсика, да и некоторых других программ, в уголке экрана среди бинарной мешанины программного кода иногда проскакивали упорядоченные символы. Как я через некоторое время понял, это был знакогенератор, то есть изображения всех символов. Сейчас на компьютерах сотни разных шрифтов, а раньше такого разнообразия не было. Один знакогенератор и всё. Потому что вся эта красота просит много памяти, а памяти на всё про всё 64Кб. Хочешь буквы покрасивее, а фигвам – только те, которые есть в стандартном знакогенераторе. Но, как выяснилось, эти изображения можно изменять.
В некоторых играх встречались очень симпатичные (по сравнению со стандартным) шрифты.
Мне тоже захотелось иметь возможность менять начертание букв. К этому времени я уже несколько лет занимался оформительскими работами в школе, и что такое шрифты, знал очень хорошо. Если бы у меня была к тому времени программа для разработки и сохранения знакогенератора, то я бы ею и воспользовался.
Но её у меня не было, поэтому я по обыкновению начал изобретать своё колесо с блэкджеком и шлю..1). Стандартный знакогенератор я уже видел, на один символ отводилась матрица всего 5×8 пикселов. Особо не разбежишься, поэтому в нём символы и были такие «убогие». Но зато всего 5*128=640 байт. Для начала я попробовал просто подкорректировать некоторые символы.
Наконец-то можно было написать на экране свой ник в нормальном виде! И я засел за миллиметровку. Оригиналов у меня не сохранилось, поэтому пришлось повторить это в экселе :)
Посидев несколько часов с миллиметровкой и калькулятором, я в конце концов сделал аж целых три знакогенератора по 128 символов 5*8 (корректирующий ST_FIX, с большими и маленькими русскими буквами N_RUS, с толстыми буквами N_FIT), да на этом и успокоился.
Одновременно их использовать было нельзя, но поочерёдно загружая в память, можно было в результате отобразить на экране все символы из любых знакогенераторов. По ходу дела я натренировался с позиционировании графического и текстового курсора, научился выгружать и загружать массивы данных на внешний носитель (кассету) и некоторым другим полезным вещам.
У меня даже появилась извращённая идея написать текст одним и тем же символом, на лету переписывая его графическое изображение :) А также сделать шрифты 8*8 и 16*16. Но эту идею я так и не додумал, потому что сам процесс я освоил, а собственно терять время на изобретение всех остальных колёс не хотелось.
В процессе перерисовки знакогенератора возник закономерный вопрос: а сколько же всего есть существует разных символов, которые может понадобиться отобразить на экране компьютера? Этот этап стал ещё одной «вехой» большого пути – моим увлечением символами – семиотикой вообще и ставрографией в частности. Таких символов оказалось очень много, как минимум больше 150000, и это только самих графем, не говоря уже о фонтах.
В общем, рисование пиксельных шрифтов было фактически рисованием маленьких пиксельных картинок, поэтому я плавно перешёл к рисованию спрайтов.
Спрайты
Продолжение следует… …