Не, ну смотря для чего. Если для спорта, то да. А если для эмуляции терминала и хелло вродла, то надо чистенько и компактно по-моему.
Не, ну смотря для чего. Если для спорта, то да. А если для эмуляции терминала и хелло вродла, то надо чистенько и компактно по-моему.
Больше игр нет
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Для подавляющего большинства шрифтов (кроме каких-нибудь инверсных) характерно заполнение чернилами <50%, поэтому выгоднее изменить операции. И еще там мелкие оптимизации по размеру.
Последний раз редактировалось ivagor; 18.07.2022 в 17:05. Причина: удалил вложение в связи с появлением более хорошего варианта
Нашел какой-то слонопотамский фонт 6х8, выглядит неплохо. Правда почему-то налезает псевдографика сверху, никак не могу понять что не так. Если увеличить интервал между строками, видно, что сам фонт в порядке.
Версия на основе ivagor-ского вертикала с blit-ами v 3.
Последний раз редактировалось svofski; 15.07.2022 в 22:21. Причина: upd to v3
Больше игр нет
Со слонопотамским фонтом стало заметно (заворот нижней строки наверх), что в colorset не хватает mvi a,255\ out 3
svofski (15.07.2022)
Стало хорошо. Вот только что это за чудо-юдо кодировка я никак не могу понять. Буковки в ней вроде как cp1251, но там есть еще псевдографика. И вот чему она соответствует я не пойму. Фонт откуда-то с форума электронщиков с LCD индикаторами, им наверное все равно.
Последний раз редактировалось svofski; 16.07.2022 в 02:37. Причина: поформатировал в сторону орыбления
Больше игр нет
С кодировкой надеюсь получится разобраться (или найти другой шрифт, может BOLD BIOS PPC глянуть?), а тем временем еще порция бодрости для процедуры
1. Маска по таблице
2. Быстрая очистка пустых столбцов, можно включить/отключить по #DEFINE ZeroColumn
Последний раз редактировалось ivagor; 18.07.2022 в 17:05. Причина: удалил вложение в связи с появлением более хорошего варианта
И вероятно финальная (для меня) столбцовая версия. Оптимизированы переходы по плоскостям и между плоскостями. Каждый второй байт фонта зеркалится в другую сторону, это для наглядности, а так надо просто один раз зеркальнуть и потом пользоваться преобразованным фонтом. Получается приблизительно в 2 раза медленнее умеренного строчного варианта, зато фонт полтора килобайта, а не 4.
Что еще можно сделать - отдельно хакнуть вывод пробела. Хака может быть условной - один раз проверяем, что символ 32 пустой и настраиваем хаку.
И насчет варианта с 256 процедурами. Посчитал, что каждая из них влезет в 32 байта, т.е. 1.5 Кб знакогенератор+8 Кб развернутых процедур.
Для спорта это все конечно чудесно, особенно 256 процедур мне нравится. Эдак ты скоро обгонишь 80 символов за прерывание.
Но для рыбов я думаю даже ZeroColumn уже слишком, потому что начинает смотреться слишком спортивно. Элегантность столбцового метода теряется. Кроме того, такой код отпугивает казуальщика, приросты скромные, а лохматость растет геометрически и желание позаимствовать ее для своего будущего шедевра все меньше и меньше. Вот сделать поддержку инверсии, а то может быть даже и цвета, это было бы интересно и практично.
Так-то вообще, между прочим, для казуальщика режим 64 символа в строке тоже может быть интересен. Понятно, что в нем нет такой интриги, как мы тут получаем с 80.
BTW, прокрутка через dad h -- огонь. Я бы никогда не додумался, хотя теперь, увидев, развидеть это уже не могу.
Больше игр нет
Если нужен максимум гибкости (возможность задавать цвет символов и цвет фона) при сохранении сравнительной компактности - надо рисовать через setpixel. Скорость будет соответствующая.
Почему так категорично? Разве прямой и инверсный вывод в двух плоскостях -- это не то, что нужно для вывода произвольной комбинации цвета-фона?
Больше игр нет
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)