Обратите внимание, что новости можно получать по RSS.
X
-

Демосцена, Информационные технологии, История вычислительной техники и IT

8 сентября 2016, 18:29 (227 дней назад) № 10259
И, наконец, про третью работу:

Однокилобайтное интро под названием Speechtro было написано мной для TI-99/4a вскоре после 99tro и представлено на DiHALT'2016 (где заняло первое место в 1kb low end intro).

В основе были две идеи:

1). Сделать что-то, использующее синтезатор речи (среди владельцев TI-99/4a он весьма распространён, а также хорошо поддержан эмуляторами - MESS/MAME и js99er).
2). Попытаться изобразить визуально большое число цветов с имитацией растровых эффектов.

После некоторых колебаний было решено обе идеи объединить в одну работу.

Речь использует слова, прошитые в ПЗУ синтезатора (так как в случае с прямым LPC сжатием в 1кб столько речи не влезло бы). Поскольку их в ПЗУ весьма немного, ушло порядочно времени, чтобы составить из имеющихся слов связную речь на подходящую тему. К сожалению паузы в словаре синтезатора не предусмотрено. В качестве паузы я использовал довольно случайный адрес, данные с которого звучат как "бульканье". Это во-первых, экономит и упрощает код, во-вторых звучит интереснее, чем просто тишина.

Что касается изображения, то первоначально хотелось попробовать реализовать растровые эффекты (меняя цвет фона в момент, когда луч идёт по нужной строке). Это оказалось технически невозможным, поэтому был выбран другой вариант - имитировать растровые эффекты через манипуляции с памятью атрибутов. В Graphics Mode 2 каждый блок 8x1 может иметь независимый цвет фона и цвет изображения, поэтому каждая полоска высотой в 1 пиксел может иметь разные цвета для фона и текста. Несмотря на то, что цветов всего 15 (а в полосках используется лишь 10), создаётся впечатление, что их гораздо больше.

Отдельные трудности вызвал вывод текста. Особенности конструкции TI-99/4a таковы, что ПЗУ (так называемый GROM) не отображается в адресное пространство процессора, поэтому данные для вывода шрифта извлекаются из GROM только последовательно (побайтно) - заданием начального адреса и чтением одной и той же ячейки памяти.
Выбранный набор "small caps" имеет только буквы A-Z (без цифр), что несложно заметить :)

Звёзды, как и ползущий наискосок баг, реализованы спрайтами 8x8.
В процессе проговаривания слов в двух линейках квадратиков отображается (условно) часть адреса текущего слова в ПЗУ синтезатора.
Опубликовано: Пётр Соболев
3L

Эта заметка и комментарии к ней в Facebook: ссылка
(возможно, в Facebook она не будет вам доступна - видимость ограничена)

Случайная заметка

6687 дней назад, 00:001 января 1999 (Автор оригинального текста: John Bayko. Перевод: Петр Соболев Публикуется с разрешения автора) Предисловие переводчика Документ который я предлагаю вашему вниманию весьма интересен (именно по этой причине я взялся за его перевод) и представляет собой историю наиболее ярких и оригинальных архитектур ...далее

Избранное

597 дней назад, 21:484 сентября 2015 Анонсирован CC'2016! Как обычно, состоится в последние выходные лета - 27 и 28 августа.

1493 дня назад, 00:5922 марта 2013 Прочёл тут книжку - iWoz ( ссылка ) , 2006 года. Это автобиография Стива Возняка. Похоже, что на русский её не переводили (в отличие от книг про Стива Джобса). В этой парочке, как известно, Возняк был инженером (собственно, и спроектировавшим Apple I и II), а Джобс - скорее предпринимателем. В книге есть довольно интересные ...далее

597 дней назад, 23:404 сентября 2015 Небольшое видео про CC'2015 ( версия без фоновой музыки здесь: ссылка )

965 дней назад, 03:121 сентября 2014 Мой семинар на Chaos Constructions'2014 (слайды можно в виде PDF скачать здесь: ссылка ) и несколько интервью с разными людьми: Вячеслав Славинский (svo) о Vectrex: ссылка Вячеслав Славинский (svo) о 3D Imager для Vectrex: ссылка Вячеслав Славинский (svo) о световом пере для Vectrex: ссылка ...далее