Как воспроизводить C64-подобные звуки?

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

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

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

Ответы

Ответ 1

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

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

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

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

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

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

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

Ответ 2

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

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

Ответ 3

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

Ответ 4

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