В статье "Разбор полётов: демо High Hopes на NES" есть раздел "Голос":
Цитата
Пожалуй, самой примечательной фишкой демо можно назвать синтезатор голоса, проговаривающий некоторые надписи на экране в духе речевых синтезаторов начала 1980-х, типа Currah Microspeech, и их многочисленных программных аналогов (Speech, Hlasovy Program, Beszed, Kecal, Fongen и т.п.). Это не просто заранее заготовленные сэмплы со всеми фразами. Слова составляются из отдельных фонем финского языка, записанных самим автором.
Сэмплы фонем хранятся в виде обычного 8-битного PCM с частотой дискретизации около 9 килогерц. Некоторые из них могут быть зациклены для увеличения длительности звучания (гласные), некоторые играются без зацикливания (согласные). Всего в программе примерно 12 килобайт сэмплов. Произносимый текст закодирован в виде индексов фонем и бита для опционального удвоения длительности зацикленных фонем.
Голос воспроизводится, когда в музыке пауза или висит протяжная нота, действия на экране в эти моменты нет. Сэмплы проигрываются прямым выводом в 7-битный ЦАП APU (регистр $4011), DPCM здесь также не используется.
К синтезируемому голосу применяется эффект задержки с обратной связью, то есть эхо. Для него используется кольцевой буфер размером во всю свободную во время проигрывания звука оперативную память, 3328 байт, что даёт длительность эхо примерно в треть секунды. Для каждого отсчёта читается новая выборка из ПЗУ, к ней прибавляется поделённая на 4 задержанная выборка из кольцевого буфера, результат сначала записывается обратно в буфер, потом преобразуется в беззнаковое 7-битное значение и выводится в ЦАП. Вместе с задержкой из 43 NOP'ов этот процесс занимает около 180 тактов для обеспечения требуемой частоты дискретизации.