Как воспроизвести звуки, похожие на C64? - PullRequest
15 голосов
/ 11 июня 2009

Я провел собственное исследование и выяснил, что у SID-чипов было мало аппаратно поддерживаемых функций синтеза. Включая три звуковых генератора с четырьмя возможными формами волны (пилообразная, треугольная, импульсная, шумовая), с огибающими ADSR и кольцевыми модуляторами. Сопровождается синхронизацией генератора и кольцевыми модуляторами. Также прочитайте, что есть способ воспроизвести одиночный звук PCM.

Это все так мало, но все же я слышал много разных звуков от своих телевизоров. Как они были объединены для создания всего этого разнообразия аудио?

Чтобы дать некоторые подробности, я хотел бы знать, как объединить эти компоненты для создания звука, похожего на гитару, фортепиано или ударные? Еще одна интересная вещь - это разные гудения и звуки, характерные для C64.

Ответы [ 4 ]

19 голосов
/ 11 июня 2009

Раньше я писал музыку на C64 для игр, демонстраций и даже сервисов (я даже написал официальную тему QuantumLink). Что касается вашего вопроса, четыре различных формы сигнала обычно накладывались на синхронизирующие и кольцевые моды (реже звонили, потому что это было непредсказуемо на разных версиях микросхемы SID), а иногда и использовались корректно.

Например, типичный «малый» звук будет состоять из формы волны шума с очень быстрой атакой и сустейном, и в зависимости от того, хотите ли вы звук барабанной палочки или кисти, либо очень быстрое затухание и умеренно короткий звук, либо короткий распад и более медленное высвобождение.

Получение правильного звука обычно было методом проб и ошибок, а ограничения были довольно тяжелыми. Вы действительно никогда не доходили до звука пианино или гитары из-за простых форм волны без наложенных гармонических форм волны, самое лучшее, что вы могли бы получить, это то, что звучало как бип, то, что звучало как маримба-й, и то, что звучало как малый барабан.

Один из приемов, наиболее часто используемых для расширения звука, был сделан с помощью процедур быстрого воспроизведения машинного кода, которые могли так быстро изменять воспроизводимые ноты на голосах, чтобы создать впечатление более полного, гармоничного тона. Мы просто назвали это арпеджио, хотя с 10 до 12 ноты меняются в секунду, это звучало скорее как гудящий аккорд.

Что касается дискретизированных сигналов, они были доступны только в виде одиночных и более поздних 4-битных выборок. Это звучало ужасно, несмотря на наши лучшие попытки, потому что в основном метод воспроизведения для сэмпла на 64 состоял в том, чтобы воспроизвести сигнал белого шума и быстро изменить громкость на микросхеме SID для получения восходящей и падающей волны. Сделайте это достаточно быстро, и это будет звучать как оригинальный звук, плохо настроенный на статичном радио.

Я предлагаю вам взять с собой эмулятор C64 для ПК (хороший CCS64) и руководство по программированию 64 BASIC и просто поиграть ... чип SID полностью управляем с BASIC.

Подводя итог, как мы получили все эти звуки фортепиано и гитары на C64? На самом деле мы этого не сделали.

4 голосов
/ 11 июня 2009

Взгляните на некоторые из этих документов, связанных с производством музыки на C64:

http://sid.kubarth.com/articles.html

3 голосов
/ 11 июня 2009

Этот тип музыки, которую вы описываете, попадает в категорию «чиптюны». Я бы порекомендовал проверить некоторые современные трекеры, такие как MilkyTracker, которые используются для создания музыки в этом стиле. Существуют библиотеки, такие как libmodplug, которые позволяют воспроизводить трекер в вашем программном обеспечении.

2 голосов
/ 11 июня 2009

Проверьте некоторые из эмуляторов C64 там. Я читал, что некоторые из них на 100% точны в воспроизведении звука, что соответствует действительности.

...