Хм, мне не показалось, что как-то особенно тихо. То есть играет с той же громкостью, что AY. PWM играет чуть чуть погромче.
Может быть введу потом отдельно громкости для разных каналов звука.
Вид для печати
Хм, мне не показалось, что как-то особенно тихо. То есть играет с той же громкостью, что AY. PWM играет чуть чуть погромче.
Может быть введу потом отдельно громкости для разных каналов звука.
Допилил: VV_6.96
Мне все же очень хотелось услышать, как звучала бы пятиканальная музыкальная система. И я на базе ее идей сделал пятиканальный биперный движок. Периоды нот взял прямо из музыкальной системы, основной цикл идеально подошел (ну или я специально так рассчитал).
Недостаток - нормально (и даже, не побоюсь этого слова, хорошо) звучит только в v06x.
Исходники прилагаются, может кто-нибудь захочет ввести какую-нибудь композицию или написать препроцессор (лучше кросс-препроцессор для ПК) по типу музыкальной системы, чтобы учитывал тональности и т.д.
Upd: V2 - чуть сократил и увеличил громкость
Богато звучит, но пьеса немного однообразная ;)
Забудьте все, что вы знали о бипере на векторе.
Шестиканальный движок с независимым управлением громкостью каждого канала! И это при сохранении (отклонение на пару процентов, извините, если ваc это напрягает) диапазона, т.е. остались периоды от Music System! Да еще и в VV стало почти нормально звучать, но маленькие громкости адекватно отрабатываются только в v06x.
Исходник прилагается.
Не могу с этим спорить. На векторе обычная история, что техническая сторона на уровне, а творческая - как получится.
- - - Добавлено - - -
Уточнение - в исходнике написал, что суммарная громкость должна быть <=89, а на самом деле чуть больше - суммарная громкость 6 каналов может быть до 90 включительно, что довольно удобно, т.к. 90/6=15.
Это хорошо, что ты остаешься верен традициям. На всякий случай, удобная утилита http://www.fourmilab.ch/webtools/midicsv/
За наводку на утилиту спасибо, но чтобы воспользоваться результатом ее работы надо еще свою утилиту писать. В лучшем случае это дело далекого будущего.
Если в шестиканальном движке убрать один канал, то получится почти с тем же частотным диапазоном увеличить громкость в 3 раза. Число ступеней регулировки громкости не изменится, но каждая ступень станет в 3 раза увесистей.
- - - Добавлено - - -
Сделал пятиканальный с увеличенной громкостью. Увеличение громкости не только хорошо само по себе, но и улучшило совместимость с эмуляторами - теперь даже в emu более-менее что-то слышно. Кроме того улучшил качество звука, теперь когда ничего нет - таймер полностью молчит (в 6 канальной версии на это нет времени). Вернул длительность основного цикла до полного соответствия Music System. Ну и раз каналов 5, то ту же максимальную допустимую общую громкость делим на 5, а не на 6, поэтому каждый канал не только в 3 раза громче из-за дополнительных каналов таймера, но ему можно и прописать бОльшую громкость (90/6=15, 90/5=18).
Все хорошо, только каналов 5, а не 6.
Чуть-чуть уменьшил дистанцию до будущего. Не шибко изящно выходит и боюсь, что без ручной работы хорошего мало получится. Но все же. Сорцы и "утилита" тут.
svofski, очень круто, большой респект!
Но на разном "неадаптированном" материале стали слышны недостатки движка.
Высокие ноты фальшивят, как и в Music System, тут ничего не поделаешь, можно только выбирать произведения, где их поменьше. В данном случае Пахельбель дает жару.
У Баха удивили трели, пока не смотрел, что получилось после конверсии, но надеюсь их можно несколько улучшить.
В песнопении своеобразно звучат моменты, когда вступает громкий голос, возможно дело в нелинейности шкалы громкостей.
Но в каждом примере есть моменты когда прямо - "ого, надо же!".
Трели в музыке из Соляриса как-то особо жестоко пострадали, Пока не было сил разбираться, но наверняка это что-то с noteoff. Не похоже, чтобы это была проблема движка, тут явно конверсия колченогая.
Стелла спленденс поначалу может быть кажется страшноватенькой, но на самом деле это мой любимый результат пока. Это единственная пьеса, про которую я, включив воображение, могу представить себе, что вот так примерно оно и могло бы быть. Еще по-моему это единственный пример, где 6 голосов звучат хотя бы иногда.
Пахельбель получился на зависть всем резиновым петухам. Чтобы не слишком страдать, можно считать, что это такая особенная темперация.
Это не все, что я пробовал, но я совсем откровенные фейлы не стал развивать. Некоторые вещи требуют совсем минимальной доработки, типа убрать ударные, которые имеют тенденцию превращаться в адский хор. В некоторых просто голоса размазаны куда-то и надо их сгруппировать в 6 доступных. А вот например в Арканоиде, который я нашел, наоборот все как-то скучено в один голос и там наоборот надо размазывать по 6 голосам наверное.
Мм, еще помню, что если музон заходит куда-то за $4000, тоже случается фейл. Не знаешь, почему?
Присылай еще мидишек, которые могли бы сконвертиться.