AVR-AY Player

AVR-AY Player — специализированный проигрыватель для эмулятора, представленного на этом сайте.

ayplayer3

Проигрыватель написан на C# (.Net Framework 3.5+)

Для проигрывания просто подключите TX пин USB to serial ttl конвертера к RX пину Atmega8

Проигрыватель позволяет проигрывать следующие форматы файлов:

YM (3,4,5,6 packed/unpacked), PSG, EPSG, VTX, AY, PT1, PT2, PT3, STC, ZXS, STP, ASC, PSC, SQT, GTR, PSM, FTC, FLS, FXM (RSF,YRG:Custom formats)

Проигрыватель позволяет конвертировать загруженные файлы в форматы:

PSG, RSF, YRG, WAV

Текущая версия 13.7 (10.11.2021)

ЗАГРУЗИТЬ ТЕКУЩУЮ ВЕРСИЮ >> AYPlayer version 13.7

Изменения: улучшен код эмуляции Z80 для проигрывания AY файлов, улучшен эквалайзер, некоторая оптимизация и улучшение воспроизведения в режиме эмуляции.

 

Моя самая любимая композиция для AY spec17_09.stc

>> Дополнительные музыкальные коллекции <<

Предыдущие версии

Версии поддерживающие эмулятор начиная с версии 14.0

 

AYPlayer version 13.6 (08.09.2019)

Изменения: исправлен микшер и генератор шума в режиме эмуляции.

 

AYPlayer version 13.4 (30.01.2019)

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

 

AYPlayer version 13.3 (08.06.2018)

Изменения:  исправлено воспроизведение AY файлов в Windows XP и более новых версиях Windows.

 

AYPlayer version 13.1 (22.07.2017)

Изменения:  улучшен генератор шума в режиме звуковой карты, исправлено воспроизведение AY файлов.

 

AYPlayer version 13.0 (07.07.2017)

Изменения:  улучшен генератор шума в режиме звуковой карты, немного изменен интерфейс, поправлены вылеты на кривых PT2/PT3 файлах. В вин XP звучание хуже, т.к. дискретизация звука в 2 раза ниже, не тянет оно 220КГц 🙂 Виста и выше звучание как у оригинального чипа с дискретизацией около 221КГц.

 

AYPlayer version 12.0 (29.08.2016)

Изменения:  исправлен генератор шума в режиме звуковой карты, исправлена проблема c некорректным шумом в ASC файлах

 

AYPlayer version 11.9 (24.06.2016)

Изменения:  исправлен генератор шума в режиме звуковой карты

 

AYPlayer version 11.8 (25.04.2016)

Изменения:  исправлены ошибки в эмуляции бипера

 

AYPlayer version 11.7 (19.03.2016)

Изменения: исправлена ошибка возникающая при отсутствии звуковой карты, улучшена эмуляция бипера, улучшены индикаторы частоты тона.

 

AYPlayer version 11.6 (19.02.2016)

Изменения: исправлен генератор шума в режиме звуковой карты.

 

AYPlayer version 11.5 (19.01.2016)

Изменения: некоторые PT2/PT3 файлы определялись как некорректные, исправлена проблема нулевой громкости при выходе из программы при проигрывании через звуковую карту в WinXP. Улучшена эмуляция в режиме звуковой карты. Улучшено воспроизведение .AY файлов. Более не требуется устанавливать FrameWork 3.5 если у вас есть более поздняя версия.

 

AYPlayer version 11.3 (12.12.2015)

Изменения: поддержка формата RSF версии 3, более качественное сохранение в RSF, добавлена возможность сохранения всех файлов из списка в RSF, улучшена эмуляция в режиме звуковой карты, исправлены небольшие баги выдающие ошибки на кривых файлах.

 

AYPlayer version 11.2 27.07.2015

Изменения: добавлен выбор аудиоустройства в режиме звуковой карты.

 

AYPlayer version 11.1 07.05.2015

Изменения: эмуляция при проигрывании через звуковую карту исправлена с учетом версии 18.4 эмулятора.

AYPlayer version 11.0 27.04.2015

Изменения: Продолжение версий 10.X, версия 11.А пока что отложена до лучших времен. Исправлены некоторые ошибки в форматах ASC и PSC, эмуляция при проигрывании через звуковую карту исправлена с учетом версии 18.3 эмулятора.

AYPlayer version 11.A 05.02.2015

Изменения: Предварительная версия для проверки работоспособности. Добавлена возможность выбора устройства воспроизведения. Отписывайте, если обнаружите какие-то проблемы.

AYPlayer version 10.9 25.01.2015

Изменения: Исправлены ошибки при проигрывании PSC и FXM, добавлена поддержка BEEPER’a при проигрывании AY файлов в режиме звуковой карты. Улучшено воспроизведение PT3 и STC. Улучшен индикатор громкости каналов. Исправлено воспроизведение AY файлов.

AYPlayer version 10.3 14.01.2015

Изменения: Поддерживается формат PSM, FTC и FLS. Устранены некоторые недочеты в ранее добавленных форматах. В эмуляцию AY внесены все изменения из версии 18.0 эмулятора. Теперь отображается информация о паттернах при проигрывании трэкерной музыки. Улучшено качество воспроизведения и работа эквалайзера в режиме звуковой карты. Добавлены индикаторы частоты каналов. Небольшой фикс GTR. Добавлен формат FXM.

AYPlayer version 9.92 28.12.2014

Изменения: Поддерживаются файлы SQT, GTR. Устранены некоторые недочеты в ранее добавленных форматах. Улучшена генерация шума, в соответствии с версией 17.9 эмулятора. Файлы GTR  играют как в оригинальном трекере! Лучше чем в AY-Emul.

AYPlayer version 9.8 24.12.2014

Изменения: Поддерживаются файлы STC, ZXS, STP, ASC, PSC, PT1 добавлена поддержка зацикливания у PT2, PT3. Поддержка цифровых AY файлов в режиме воспроизведения звуковой картой (кроме файлов с бипером). Уменьшено количество используемой памяти (на порядок!) при проигрывании цифровых AY. Устранены щелчки при переключении мелодий.

AYPlayer version 9.4

Изменения: Исправлена проблема при сохранении WAV и одновременном проигрывании через звуковую карту, улучшена эмуляция Z80 при проигрывании AY файлов, исправлены некоторые проблемы при проигрывании AY файлов от CPC, эмуляция AY сделана в соответствии с версией 17.5 эмулятора. Добавлена возможность проигрывания PT2, PT3 файлов. Новая версия формата RSF (версия 2) для сохранения цифровых композиций. (в проигрывателе только воспроизводится, есть примеры в архиве). Более 12000 PT2/3 файлов включено в архив.

AYPlayer version 9.0

Изменения: Теперь поддерживаются файлы с расширением .AY (производится эмуляция процессора Z80). Исправлено положение каналов. Исправлено то что попалось под руку в процессе 🙂

AYPlayer version 8.3 22.11.2014

Изменения: Теперь может проигрывать файлы на PC через звуковую карту без эмулятора! Конвертирует в WAV. Исправлено положение каналов и более точно рассчитывается частота при проигрывании через звуковую карту, так же исправлены разные баги 🙂

AYPlayer version 7.1 19.11.2014

Изменения: Улучшен интерфейс, улучшена работа индикаторов.

AYPlayer version 7.0 13.11.2014

Изменения: Теперь используется Multimedia Timer вместо дополнительного потока и StopWatch, во-общем теперь звук генерируется очень точно и не расходуются ресурсы компьютера.

AYPlayer version 6.1 10.11.2014

Изменения: исправлена проблема пропадания выбранного индекса при удалении элемента из списка кнопкой Del, уменьшено количество передаваемых данных по последовательному протоколу.

AYPlayer version 6.0 01.11.2014

Изменения: в связи с изменением протокола последовательной загрузки в версиях эмулятора, начиная с 14.0 была выпущена данная версия. Подробности нового протокола в архиве с проигрывателем.

Версии поддерживающие эмулятор до версии 13.2 включительно

AYPlayer version 5.2 26.08.2014

Изменения: добавлен чекбокс для выбора качества работы таймера, если выбран, то таймер очень точный, но используется много системных ресурсов, данная опция может помочь на системах, где таймер притормаживает

AYPlayer version 5.1 21.08.2014

Изменения: исправлена проблема медленного таймера, если в системе не загружен браузер 🙂 в цикле ожидания используется Thread.Join вместо Thread.Sleep, исправлена проблема, когда при добавлении файла в плейлист происходила отмена, то добавлялся пустой элемент

AYPlayer version 5.0 18.08.2014

Изменения: полностью убран код основного таймера, заменен на дополнительный поток с классом Stopwatch, теперь проигрыватель почти не расходует системных ресурсов, в отличие от предыдущих версий

AYPlayer version 4.4 17.08.2014

Изменения: небольшие исправления

AYPlayer version 4.3 24.06.2014

[ad name=»HTML»]

Старая история изменения версий

Версия 4.3

— добавлены кнопки отключения каналов

Версия 4.2

— удален путь при конвертировании файлов (исправлена проблема при сохранении в другую папку)

Версия 4.1

— убрана кнопка DUMP, конвертирование добавлено в контекстное меню списка файлов
— улучшено добавление элементов в список (ускорение)
— добавлен обработчик обновления списка COM портов при подключении USB устройств
— исправлено открытие файлов, теперь в режиме «только чтение»
— добавлены кнопки для проигрывания предыдущей/следующей мелодии
— добавлена возможность загрузки/выгрузки плейлиста
— автоматическое сохранение текущего плейлиста между загрузками проигрывателя
— улучшен интерфейс

Версия 4.0

— поддержка плейлистов (без сохранения)
— улучшен интерфейс

Версия 3.1

— добавлена поддержка YM файлов версий 3 и 4
— добавлено больше обработчиков ошибок ввода/вывода

Версия 3.0

— добавлена поддержка файлов YM версии 5
— добавлена поддержка сжатых YM файлов
— добавлена поддержка VTX файлов
— улучшен интерфейс и добавлена обработка некоторых ошибок

Версия 2.3

— исправлена скорость таймера для 100Гц файлов

Версия 2.2

— улучшен интерфейс

Версия 2.1

— улучшен алгоритм отправки данных в AVR
— добавлен новый формат файла RSF (разработанный для эмулятора)
— исправлена скорость таймера

Версия 2.0

— поддержка сохранения в PSG и EPSG файлы
— использует в 5-10 раз меньше ресурсов компьютера

Версия 1.0

— начальная версия

 [ad name=»HTML»]

AVR-AY Player: 40 комментариев

  1. Я проверял на Windows Server 2003, до 5.1 там скорость была в 2 раза ниже, видимо .Net не приспособлен для маленьких периодов в таймере. Сейчас вроде всё должно быть в порядке. Если 5.1 тормозит — сообщите, а то не совсем понятно из вашего комментария.

    1. Попробовал написать программу для проигрывания RAW файла 8 бит 8кГц через COM порт, но увы, т.к. регистры шлются порциями по 16 байт, на скорости 19200… этого явно недостаточно… слышно только шипение и передача идет очень медленно. Тут либо играть в параллельном режиме, либо переписывать часть работы с COM портом под большую скорость и оптимизировать передачу регистров под 2 байта (номер, значение + стоповые значения)

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

  3. Проверено, на скорости COM порта 57600 максимальная частота передачи кадров, 1000 кадров в секунду, т.е. цифровой звук можно передавать с частотой не более 1КГц (в идеале), а так 800Гц без торможения. Так что 8КГц по последовательному интерфейсу не передать, я пробовал разгонять ком порт до 800000 бит/с, но увы, начинает тупить эмулятор, из-за частых прерываний по USART. Вывод: слушаем цифровой звук через звуковую карту 🙂

  4. Хотелка: убрать чекбокс «Play using soundcard», список доступных аудиоустройств (не только основное аудиоустройство) добавить в комбобокс COMPort. Комбобокс соответственно переименовать.

  5. К сожалению так достаточно трудно реализовать, т.к. к ком порту еще нужно подключаться, могу сделать звуковую карту по умолчанию (сейчас она выбирается первой, если в системе нет ком портов) и выбор аудио устройств, а галочку поменять на «Play through COM port» 🙂 Насчет индикатора, посмотрю куда бы его можно было впихнуть )

  6. [quote]К сожалению так достаточно трудно реализовать, т.к. к ком порту еще нужно подключаться[/quote]
    Запихнуть в комбобокс объекты, а не просто строковые представления.
    Еще в качестве задумки (это же c# который из ООП состоит чуть менее чем полностью) — базовый класс «УстройствоВоспроизведения» и два (пока потомка) «УстройствоВоспроизведенияCOMПорт» и «УстройствоВоспроизведенияЗвуковаяКарта».

  7. Доброго. А нельзя ли добавить выбор частоты Эйвая? То бишь 1750000, 3500000 и 1774400. Аргументы в пользу этого дела здесь: https://bitbucket.org/djdron/unrealspeccyp/issue/2/ay-ym
    Интересует, если честно, именно три с половиной мегагерца. Можно ли добавить в плеер И эмулятор? Или хотя бы только в плеер уж. Сейчас плеер показывает частоту 1773450 для всех музонов и это вызывает нервный зуд у многих жителей Ростовской области, у которых в большинстве было три с половиной заведено на Эйвай 🙂

    1. Да, конечно можно, я как раз планирую добавить такую возможность, так же выбор частоты прерываний и смещение тона (насчет этого еще думаю). Насчет эмулятора… есть же исходники, там можно самостоятельно подправить под нужную частоту значение регистра ICR.

  8. На всякий случай сообщаю что сейчас дорабатывается — возможность выбора устройства проигрывания из выпадающего списка, для этого разрабатывается класс «Устройство воспроизведения». Приходится переделывать половину кода, т. к. изначально не рассчитывал, что это приложение дорастет до такого масштаба 🙂 Далее будет сделана возможность настройки приложения с автоматическим сохранением конфигурации. Если будет время, то еще и с плейлистами поколдую, чтобы можно было настраивать элементы списка, конвертировать весь плейлист за один проход без запросов подтверждений.

  9. Неплохо бы было поддержать(только на чтение) плейлисты в формате .ayl, которые в знаменитой коллекции AY-музыки Сергея Бульбы.

    Ну и вопрос почти по теме:) Вот эта китайская хреновина сойдёт для эмуляции с прошивкой на 8 МГц видимо? http://www.dx.com/p/atmega8-m8-avr-minimum-system-development-board-blue-157391#.VMplnCViLbc
    Суть-то в чём. Имеется четыре жлоба, а у них ещё знакомые куча жлобов, которые паять ничё не хотят, но приобщиться к данному проекту желают:) Так вот могу я им посоветовать купить вышеозначенную штуковину или подобную ей специально под AVR-AY?

    1. Такая штука в чистом виде не пойдет, т.к. в ней нет эмулятора COM порта, да и RC фильтры всё-равно паять нужно. Там и пайки то не много, проще купить breadboard с дырками и на ней собрать схему, если паять не охота 🙂 ну, и, конечно же, нужен переходник USB->TTL для передачи по ком порту, у китайцев они стоят от 1$, но с дешевыми придется немного повозиться на Windows начиная в Vista драйверы не поддерживают китайские чипы, если что, последний драйвер от висты подходит, если нужен будет, кину ссылку или сам драйвер.

      PS: Кстати, как вариант, купить дешевую ардуину и туда вставить Atmega8, потом прошить программатором.

      1. Да какие там Висты:) XP же поголовно есть на всякий случай хотя бы на одном из компов в комнате:) Ну, для сельской-то местности:)
        А USB на TTL давно у всех такие, на CP2102: http://www.dx.com/p/cp2102-usb-to-ttl-stc-promini-download-module-for-arduino-265730#.VMqihSViLbc
        Раньше шили телефоны, так у всех были на PL2303. А теперь у кого не спросил у всех на CP2102.
        Фильтр паять согласны вроде все, только плата уж там больно… Ну красивая, что ли:) Синенькая, штырёчки обозначены уже:)

        1. Тогда можно брать, раз такое дело, но кварц лучше конечно перепаять будет, всё же 8МГц версия хоть и получилась с достаточно качественным звуком, но всё же она работает в 2 раза медленнее чем другие. Вообще, смысл 8МГц версии состоит в том, чтобы не ставить внешний кварц и получить при этом более-менее качественный звук. Т.е. чтобы устройство получилось максимально простым.

          1. Ну вот пускай делают простым, раз хотят в таком корпусе микросхему потом перепаивать как сгорит. А я решил сложным:) Корпус прозрачный из коробки от торта и в нём пять плат. Вот такая плата для эйтимеги в dip-28: http://www.dx.com/p/diy-m48-ex-standard-development-board-blue-169248#.VM6DASViLbd
            Там главное можно разные кварцы на лету менять втыканием и перемычками.
            Вторая плата это usb на ttl. Третья это фильтр отдельно. Четвёртая усилитель. И пятая для моргания светодиодами под музыку. Больше ничего не придумывается. А:) Ну и на корпус всей конструкции наклейку, типа, AVR-AY:) И полоски цветные как в менюшке Спектрума:)

            1. Я вот думаю в ближайшее время еще написать для ардуины скетч для проигрывания, PT3 вряд ли осилю, но STC думаю получится. Будет это всё играть с SD карты. Осталось только найти на это время 🙂

  10. Is it possible to play on Pro Micro (16 Mhz atmega32u4)? Just a little piece of PSG data from internal memory (a few seconds). Can you make an example sketch? 328p examples won’t compile because timers don’t match. Also there are no examples of playing from program (FLASH) data.

  11. Я сейчас работаю над созданием устройства, воспроизводящего музыку через USB -> COM порт, работающее совместно с этим плеером. Поэтому приходится интенсивно пользоваться разными функциями приложения. В версии 13.7 было найдено три крайне неприятных бага (по мере критичности):
    1. Очень часто проигрыватель перепрыгивает через следующую мелодию в плейлисте. Открываешь список файлов в папке, запускаешь вопроизведение на какой-то мелодии, он ее проигрывает полностю, следующую мелодию пропускает и начинает играть через одну. Потом может нормально играть, потом опять может пропустить. Очень мешает слушать библитеку музыки.
    2. Неправильно конвертирует в PSG формат. В целом полученый файл совпадает с таковым из другого плеера, за исключением того, что постоянно в регист формы огибающей (R13) пишется байт 0xFF. Из-за этого огибающая тут же глохнет, в мелодии полностю пропадает бас и другие эффекты на огибающей.
    3. Иногда, спустя 10-30 минут проигрывания приложение просто крешится, происходит какой-то эксепшин и плеер закрывается.
    Если автору интересно, могу ответить на какие-нибудь дополнительные вопросы. Так же очень хочется поучаствовать в развитии проекта, возможно ли получить доступ к исходному коду?

Добавить комментарий

Ваш адрес email не будет опубликован.