Карта на логике без прямой поддержки TSFM с возможностью проигрывания TSFM сторонним плеером, 5-7$
Карта на логике с поддержкой TSFM ,цена 7-10$
Карта на CPLD , цена не знаю примерно 20$ может и больше
Оно то так ,но потом как всегда не будет времени, прикинул ,весь плеер (пока под TR-DOS ,без винта) с оформлением должен весить примерно до 15кб.
- - - Добавлено - - -
Хочется инфу о мелодии и семплах выводить компактно ,HEX еще пригодится при отладке плеера , будет мне в экран писать чем плюется в ямаху.
По итогу 8x8 может будет правильнее если впишется в мою задумку.
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
@Mick ,когда допилю VGM к YM2612 , можно попробовать в плеер добавить поддержку твоего Moon Sound.
- - - Добавлено - - -
А потом бы с автором Wild Player договорится ,и было бы отлично впихнуть это туда.
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
HardWareMan, вопрос а YM2612 переваривает команды DAC если их ставить не после конфигурирования FM регистров ,а между , то есть так -
fm reg,data ; конфигурирование FM регистра
#2A,data ;вывести байт в ЦАП
fm reg,data
#2A,data
fm reg,data
#2A,data
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
Регистр адреса регистра общий. Так что, нельзя. Но, если каждый раз перегружать его - то можно, но с учетом BUSY флага. А зачем?
VGM формат оказался не так прост.
Суть такова ,идут себе данные для FM , а между ними приходит команда играть PCM семпл , мы начинаем испольнять команду по проигрыванию PCM ,настраиваем нужный PCM семпл, его частоту выборки , и начинаем играть выкидывая это в DAC естественно очень часто это надо делать и иногда долго если это например труба какая нибудь в цифре , но в VGM поток непрерывный и нам в это же время надо дальше записывать данные в FM регистры ,в то время как мы между ними шлем что то в DAC
Хотел попробовал проанализировать это дело на VGM плеере для MSX , но как подсказали к MSX не цепляли YM2126 и вижу что в коде плеера стоят вроде как заглушки где он PCM для YM2612 должен обрабатывать.
Все в общем движется , сейчас разбираюсь с таймингами ,так как оказалось ,что прерывания нам в этом плеере вообще не нужны , там все надо делать на отсчетах и таймерах.
Вот гитара небольшая ,это уже чисто VGM
На данный момент написан полный человечески загрузчик вплоть до одной мелодии на целую дискету , построитель таблиц PCM семплов , частичный обработчик команд ,и частично плеер.
- - - Добавлено - - -
PS вот чувак через эмуляцию на MSX сделал ,но сам пишет что очень сыро - https://www.youtube.com/watch?v=2jiSclQJ-2s
Ну ничего , MOD плеер написали на 3.5мГц , это подумаю и тоже напишу
- - - Добавлено - - -
Вот еще один кусочек VGM
VGM
[свернуть]
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
Очень интересно , анализ кода показал ,что MSX плеер и Teensy 3.5 не обрабатывают PCM команды #90-#95 которые управляют потоками ,частотой и настройками PCM , непонятно ,из за сложности реализации или еще по какой то причине. Но во всех файлах с PCM что я просматривал команды #90-#95 используются постоянно. Выходит вышеприведенные плееры просто не играют определенные звуки.
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
Подумал на досуге о таймере , вопрос может кто то подобное реализовывал ,что бы велосипед не изобретать.
Хочется сделать как можно более точный плеер , основная структура такова ,нам надо читать команды и исполнять их со скоростью 44.100 кГц , но на исполнение разных команд уходит разное время ,и поэтому нельзя в общем цикле поставить задержку с одинаковым временем , так как частота выборки станет плавать.
В виду этого пишу такой таймер в который после исполнения каждой команды будет заноситься число отсчета до чтения следующей команды.
Ни кто ни писал никогда подобную синхронизацию для получения четких равных "прерываний" когда между ними исполняются код с разным количеством тактов ?
Увы общий формат форума вышел из рамок моего любимого места , более тут не бываю.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)