Программа "Эмулятор музыкального сопроцессора ZX Spectrum" для Windows или Linux (далее Ay_Emul) предназначена для проигрывания музыки, написанной для музыкального сопроцессора AY-3-8912 (или его аналогов, таких как AY-3-8910 и YM2149F). Проигрывание осуществляется путем эмулирования, то есть наличие настоящих микросхем не требуется. Также Ay_Emul умеет проигрывать музыку для динамика ZX Spectrum (упрощённая эмуляция бипера). Дополнительно в Ay_Emul встроена возможность проигрывания аудиодорожек компакт дисков и MIDI-файлов. С помощью дополнительной библиотеки BASS Ian'а Luck'а Ay_Emul может проигрывать цифровые трекерные модули и звукозапись.
Ay_Emul может проигрывать файлы следующих типов.
Два из большинства указанных в п.2 типов трекерных модулей могут играться одновременно посредством специального формата в режиме Turbo Sound (TS, устройство для ZX Spectrum, позволяющее одновременно подключить два музыкальных сопроцессора). Также поддержан TS-формат PT v3.7 и старше.
При проигрывании SNDH эмулируются таймеры MFP, DMA-Sound, а также некоторые функции TOS. Для эмуляции MC68000 используется библиотека Starscream 680x0 emulation library by Neill Corlett (corlett@elwha.nrrc.ncsu.edu). Поддерживается база данных продолжительности SNDH-музыки от Benjamin Gerard, если timedb.inc.h или sndhtimedb обнаруживаются в папке Ay_Emul. Чтобы использовать или обновить, просто поместите исходный файл timedb.inc.h в папку Ay_Emul, и sndhtimedb будет сгенерирован/перегенерирован при следующем запуске. Указанную базу можно найти в исходниках проекта sc68.
Ay_Emul поддерживает списки проигрывания (плейлисты) Winamp'а (M3U, M3U8), XMPlay (PLS) и собственного формата (AYL), для звуковых потоков также поддержана разметка звуковых дорожек в формате CUE. AYL может содержать полный набор параметров для каждого элемента списка.
Ay_Emul может использоваться как мощный инструмент для работы с файлами музыкального сопроцессора. Встроенный риппер может отыскать в заданных несжатых файлах модули большинства спектрумовских музыкальных редакторов. Ay_Emul может конвертировать файлы в WAV, ZXAY, VTX, YM6 или PSG форматы. Ay_Emul проигрывает цифровую музыку, хранящуюся в OUT, ZXAY, EPSG, AY или AYM файлах. Также проигрывается и музыка для бипера ZX Spectrum (форматы AY и AYM). Поддержано проигрывание специальных эффектов, используемых музыкантами с Atari ST и предусмотренных форматами YM2, YM5 и YM6.
Главное окно Ay_Emul может быть оформлено сторонними дизайнерами благодаря поддержке обшивок (скинов AYS).
Библиотека BASS загружается только перед проигрыванием файла соответствующего типа и выгружается по окончании его проигрывания.
Требования программы: операционная система Linux либо Windows XP или старше, для работы нужен процессор 386 или старше, а для проигрывания звуковая карта, поддерживающая воспроизведение 8- или 16-битного стерео или моно звука с любой частотой сэмплов из диапазона от 8000 до 300000 Гц, и высокопроизводительный процессор (по умолчанию включен фильтр, позволяющий получить более качественную эмуляцию как сопроцессора, так и бипера). Требования BASS для проигрывания соответствующих файлов следующие: DirectX 3 или выше (для Windows), для проигрывания MOD-файлов требуется процессор с поддержкой MMX.