Audio Interface Library: различия между версиями
Geryon (обсуждение | вклад) |
Geryon (обсуждение | вклад) м (заменил "специфический" на "резидентный" (касается MIDITSR)) |
||
(не показано 19 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
− | '''Audio Interface Library''' - | + | '''Audio Interface Library''' (AIL) - популярный пакет промежуточных драйверов (middleware) звуковых карт для [[DOS]]. Первоначально разрабатывался Джоном Майлсом (John Miles) для его собственной компании Miles Design; впоследствии пакет был передан компании RAD Game Tools и переименован в [[Miles Sound System]], под этим именем продается и поддерживается до сих пор. |
Пакет представляет собой набор PCM и MIDI-драйверов разных звуковых карт, а также файлы с патчами для воспроизведения MIDI, так называемые GTL (Global Timbre Library). Собственной утилиты для определения и настройки звуковых карт пакет не включает, данный процесс оставлен на усмотрение разработчика игр. Сперва поддерживались лишь несколько звуковых карт, но в процессе развития пакета список оборудования существенно вырос. | Пакет представляет собой набор PCM и MIDI-драйверов разных звуковых карт, а также файлы с патчами для воспроизведения MIDI, так называемые GTL (Global Timbre Library). Собственной утилиты для определения и настройки звуковых карт пакет не включает, данный процесс оставлен на усмотрение разработчика игр. Сперва поддерживались лишь несколько звуковых карт, но в процессе развития пакета список оборудования существенно вырос. | ||
− | + | ||
− | Существуют принципиальные версии для реального режима (драйверы имеют расширение ADV) и защищенного режима (расширение DLL). Пакет для защищенного режима называется AIL/32 и поддерживает сокращенный по сравнению с AIL список оборудования. Более поздний пакет Miles Sound System имеет несколько иную структуру и в данной статье не рассматривается. | + | Существуют принципиальные версии для реального режима (драйверы имеют расширение ADV) и защищенного режима (расширение DLL). Пакет для защищенного режима называется AIL/32 и поддерживает сокращенный по сравнению с AIL список оборудования. Также существует пакет AIL/16 для 16-битного защищенного режима, но на его базе известны всего несколько игр. Более поздний пакет Miles Sound System имеет несколько иную структуру и в данной статье не рассматривается. |
− | + | ||
'''Список драйверов для воспроизведения PCM''': | '''Список драйверов для воспроизведения PCM''': | ||
− | + | ||
− | ALGDIG.ADV (A32ALGDG.DLL) - Adlib Gold | + | * ALGDIG.ADV (A32ALGDG.DLL) - Adlib Gold |
− | ARIADIG.ADV (A32ARDG.DLL) - карты на базе процессора Sierra Semiconductor ARIA | + | * ARIADIG.ADV (A32ARDG.DLL) - карты на базе процессора Sierra Semiconductor ARIA |
− | AUDDRVDG.ADV - ESS AudioDrive | + | * AUDDRVDG.ADV - ESS AudioDrive |
− | GF1DIGI.ADV (GUSDIG32.DLL) - карты Gravis Ultrasound на базе процессора GF1 | + | * GF1DIGI.ADV (GUSDIG32.DLL) - карты Gravis Ultrasound на базе процессора GF1 |
− | PASDIG.ADV (A32PASDG.DLL) - MediaVision Pro AudioSpectrum и совместимые (Plus, 16, Studio 16) | + | * PASDIG.ADV (A32PASDG.DLL) - MediaVision Pro AudioSpectrum и совместимые (Plus, 16, Studio 16) |
− | SBDIG.ADV (A32SBDG.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard | + | * SBDIG.ADV (A32SBDG.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard |
− | SBPDIG.ADV (A32SBPDG.DLL) - Creative Sound Blaster Pro и совместимые | + | * SBPDIG.ADV (A32SBPDG.DLL) - Creative Sound Blaster Pro и совместимые |
− | VESADIG.ADV - оборудование, совместимое со стандартом VESA VBE/AI | + | * VESADIG.ADV - оборудование, совместимое со стандартом VESA VBE/AI |
− | + | ||
'''Список драйверов для воспроизведения MIDI''': | '''Список драйверов для воспроизведения MIDI''': | ||
− | + | ||
− | ADLIB.ADV (A32ADLIB.DLL) - Adlib | + | * ADLIB.ADV (A32ADLIB.DLL) - Adlib MSC |
− | ADLIBG.ADV (A32ALGFM.DLL) - Adlib Gold | + | * ADLIBG.ADV (A32ALGFM.DLL) - Adlib Gold |
− | ARIATSR.ADV - карты на базе процессора Sierra Semiconductor ARIA (работает через | + | * ARIATSR.ADV - карты на базе процессора Sierra Semiconductor ARIA (работает через резидентный драйвер карты MIDITSR) |
− | ARIAXMID.ADV (A32ARXM.DLL) - карты на базе процессора Sierra Semiconductor ARIA | + | * ARIAXMID.ADV (A32ARXM.DLL) - карты на базе процессора Sierra Semiconductor ARIA |
− | AUDDRVFM.ADV - ESS AudioDrive | + | * AUDDRVFM.ADV - ESS AudioDrive |
− | GENMIDI.ADV, GENMID.ADV - General MIDI | + | * GENMIDI.ADV, GENMID.ADV - General MIDI |
− | GF1MIDI.ADV (GUSMID32.DLL) - карты Gravis Ultrasound на базе процессора GF1 (требуется утилита ULTRAMID) | + | * GF1MIDI.ADV (GUSMID32.DLL) - карты Gravis Ultrasound на базе процессора GF1 (требуется утилита ULTRAMID) |
− | MMSYNTH.ADV - Omni Labs Audio Master | + | * MMSYNTH.ADV - карты стандарта ASC Media Master, например Omni Labs Audio Master |
− | MT32MPU.ADV (A32MT32.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500, LAPC-I | + | * MT32MPU.ADV (A32MT32.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500, LAPC-I |
− | MT32SB.ADV (A32MT32S.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500 через MPU-порт Sound Blaster | + | * MT32SB.ADV (A32MT32S.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500 через MPU-порт Sound Blaster |
− | MULTISND.ADV - Turtle Beach Multisound Classic (на базе E-MU Proteus) | + | * MULTISND.ADV - Turtle Beach Multisound Classic (на базе E-MU Proteus) |
− | PASFM.ADV (A32PASFM.DLL) - MediaVision Pro AudioSpectrum | + | * PASFM.ADV (A32PASFM.DLL) - MediaVision Pro AudioSpectrum |
− | PASOPL.ADV (A32PASOP.DLL) - MediaVision Pro AudioSpectrum Plus, Pro AudioSpectrum 16, Pro Audio Studio 16 | + | * PASOPL.ADV (A32PASOP.DLL) - MediaVision Pro AudioSpectrum Plus, Pro AudioSpectrum 16, Pro Audio Studio 16 |
− | PCSPKR.ADV (A32SPKR.DLL) - PC Speaker | + | * PCSPKR.ADV (A32SPKR.DLL) - PC Speaker |
− | SBFM.ADV (A32SBFM.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard | + | * SBFM.ADV (A32SBFM.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard |
− | SBAWE32.ADV (A32AWE32.DLL) - Creative Sound Blaster AWE32 и AWE64 | + | * SBAWE32.ADV (A32AWE32.DLL) - Creative Sound Blaster AWE32 и AWE64 |
− | SBP1FM.ADV (A32SP1FM.DLL) - Creative Sound Blaster Pro | + | * SBP1FM.ADV (A32SP1FM.DLL) - Creative Sound Blaster Pro |
− | SBP2FM.ADV (A32SP2FM.DLL) - Creative Sound Blaster Pro 2.0, Sound Blaster 16 | + | * SBP2FM.ADV (A32SP2FM.DLL) - Creative Sound Blaster Pro 2.0, Sound Blaster 16 |
− | SC32MPU.ADV - Roland Sound Canvas (SCB-55, SCC-1 и другие) | + | * SC32MPU.ADV - Roland Sound Canvas (SCB-55, SCC-1 и другие) |
− | TANDY.ADV (A32TANDY.DLL) - трехголосный синтезатор Tandy 1000 | + | * TANDY.ADV (A32TANDY.DLL) - трехголосный синтезатор Tandy 1000 |
− | VESAMID.ADV - оборудование, совместимое со стандартом VESA VBE/AI | + | * VESAMID.ADV - оборудование, совместимое со стандартом VESA VBE/AI |
− | WAVE.ADV - Creative Wave Blaster | + | * WAVE.ADV - Creative Wave Blaster |
− | WSS.ADV, SENSAT.ADV - Microsoft Windows Sound System и совместимые | + | * WSS.ADV, SENSAT.ADV - Microsoft Windows Sound System и совместимые, например Tandy Sensation |
− | + | ||
+ | '''Настройка оборудования''' | ||
+ | |||
+ | Драйверы AIL поддерживают произвольные значения адреса, IRQ и DMA для любой карты. Однако из-за отсутствия в пакете утилиты для настройки наличие возможности менять эти параметры остается на усмотрение разработчика конкретной игры. В более позднем пакете Miles Sound System появилась утилита для настройки. | ||
+ | |||
'''Форматы файлов''' | '''Форматы файлов''' | ||
− | + | ||
− | AIL поддерживает загрузку и проигрывание форматов VOC (PCM-звук) и [[XMI]] (MIDI-музыка). Для конвертации MIDI-файлов в формат XMI имеется утилита MIDIFORM. | + | AIL поддерживает загрузку и проигрывание форматов [[VOC]] (PCM-звук) и [[XMI]] (MIDI-музыка). Для конвертации MIDI-файлов в формат XMI имеется утилита MIDIFORM. |
− | + | ||
'''Загрузка патчей''' | '''Загрузка патчей''' | ||
− | + | ||
Для оборудования, поддерживающего управление патчами, предусмотрена загрузка последних из файлов GTL (Global Timbre Library). Необходимость в загрузке патчей из GTL определяется автоматически при загрузке XMI-файла, если последний использует тембры, отличные от стандартных для данного синтезатора. В случае OPL2 и OPL3 любой инструмент требует загрузки из GTL, поскольку OPL не имеют стандартных тембров. | Для оборудования, поддерживающего управление патчами, предусмотрена загрузка последних из файлов GTL (Global Timbre Library). Необходимость в загрузке патчей из GTL определяется автоматически при загрузке XMI-файла, если последний использует тембры, отличные от стандартных для данного синтезатора. В случае OPL2 и OPL3 любой инструмент требует загрузки из GTL, поскольку OPL не имеют стандартных тембров. | ||
− | + | ||
Известные GTL: | Известные GTL: | ||
− | + | ||
− | .AD - для OPL2-совместимых карт | + | * .AD - для OPL2-совместимых карт |
− | .OPL - для OPL3-совместимых карт | + | * .OPL - для OPL3-совместимых карт |
− | .MT - для Roland MT-32 и Gravis Ultrasound | + | * .MT - для Roland MT-32 и Gravis Ultrasound |
− | + | ||
Для определенного оборудования вместо GTL используются иные механизмы управления патчами. | Для определенного оборудования вместо GTL используются иные механизмы управления патчами. | ||
− | + | ||
− | Sierra Semiconductor ARIA - драйвер ARIAXMID.ADV при старте загружает управляющую информацию из GM1.BNK или GM2.BNK, в зависимости от объема ROM (512K или 1024K). | + | Sierra Semiconductor ARIA - драйвер ARIAXMID.ADV при старте загружает управляющую информацию из GM1.BNK или GM2.BNK, в зависимости от объема ROM (512K или 1024K).<br /> |
− | Turtle Beach Multisound Classic - используются | + | Turtle Beach Multisound Classic - используются специфическая утилита PRESETS с банками формата MPP, которые на деле представляют из себя набор SYSEX-команд для имеющегося на карте синтезатора Proteus 1/XR.<br /> |
− | Gravis Ultrasound - несмотря на наличие механизма загрузки патчей через GTL, чаще всего используется специфическая утилита LOADPATS и патчи в формате PAT. | + | Gravis Ultrasound - несмотря на наличие механизма загрузки патчей через GTL, чаще всего используется специфическая утилита LOADPATS и патчи в формате PAT.<br /> |
+ | Sound Blaster AWE32, AWE64 - механизма загрузки через GTL нет, альтернативные механизмы не поддерживаются. Поддержка загрузки банков SBK и SF2 появилась только в Miles Sound System. | ||
+ | |||
+ | '''Игры''' | ||
+ | |||
+ | Использующие AIL игры получили широкое распространение в начале-середине 90-х годов. Некоторые известные названия: | ||
+ | |||
+ | * [[Battle Isle II]] | ||
+ | * [[Blackthorne]] | ||
+ | * [[Realms Of Arkania: Blade Of Destiny]] | ||
+ | * [[Simon The Sorcerer]] | ||
+ | * [[The Elder Scrolls: Arena]] | ||
+ | * [[The Seventh Guest]] | ||
+ | * [[Warlords II]] | ||
+ | |||
+ | [[Категория:Программы]] |
Текущая версия на 09:55, 21 февраля 2023
Audio Interface Library (AIL) - популярный пакет промежуточных драйверов (middleware) звуковых карт для DOS. Первоначально разрабатывался Джоном Майлсом (John Miles) для его собственной компании Miles Design; впоследствии пакет был передан компании RAD Game Tools и переименован в Miles Sound System, под этим именем продается и поддерживается до сих пор.
Пакет представляет собой набор PCM и MIDI-драйверов разных звуковых карт, а также файлы с патчами для воспроизведения MIDI, так называемые GTL (Global Timbre Library). Собственной утилиты для определения и настройки звуковых карт пакет не включает, данный процесс оставлен на усмотрение разработчика игр. Сперва поддерживались лишь несколько звуковых карт, но в процессе развития пакета список оборудования существенно вырос.
Существуют принципиальные версии для реального режима (драйверы имеют расширение ADV) и защищенного режима (расширение DLL). Пакет для защищенного режима называется AIL/32 и поддерживает сокращенный по сравнению с AIL список оборудования. Также существует пакет AIL/16 для 16-битного защищенного режима, но на его базе известны всего несколько игр. Более поздний пакет Miles Sound System имеет несколько иную структуру и в данной статье не рассматривается.
Список драйверов для воспроизведения PCM:
- ALGDIG.ADV (A32ALGDG.DLL) - Adlib Gold
- ARIADIG.ADV (A32ARDG.DLL) - карты на базе процессора Sierra Semiconductor ARIA
- AUDDRVDG.ADV - ESS AudioDrive
- GF1DIGI.ADV (GUSDIG32.DLL) - карты Gravis Ultrasound на базе процессора GF1
- PASDIG.ADV (A32PASDG.DLL) - MediaVision Pro AudioSpectrum и совместимые (Plus, 16, Studio 16)
- SBDIG.ADV (A32SBDG.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard
- SBPDIG.ADV (A32SBPDG.DLL) - Creative Sound Blaster Pro и совместимые
- VESADIG.ADV - оборудование, совместимое со стандартом VESA VBE/AI
Список драйверов для воспроизведения MIDI:
- ADLIB.ADV (A32ADLIB.DLL) - Adlib MSC
- ADLIBG.ADV (A32ALGFM.DLL) - Adlib Gold
- ARIATSR.ADV - карты на базе процессора Sierra Semiconductor ARIA (работает через резидентный драйвер карты MIDITSR)
- ARIAXMID.ADV (A32ARXM.DLL) - карты на базе процессора Sierra Semiconductor ARIA
- AUDDRVFM.ADV - ESS AudioDrive
- GENMIDI.ADV, GENMID.ADV - General MIDI
- GF1MIDI.ADV (GUSMID32.DLL) - карты Gravis Ultrasound на базе процессора GF1 (требуется утилита ULTRAMID)
- MMSYNTH.ADV - карты стандарта ASC Media Master, например Omni Labs Audio Master
- MT32MPU.ADV (A32MT32.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500, LAPC-I
- MT32SB.ADV (A32MT32S.DLL) - Roland MT-32, MT-100, RA-50, CM-32L, CM-64, CM-500 через MPU-порт Sound Blaster
- MULTISND.ADV - Turtle Beach Multisound Classic (на базе E-MU Proteus)
- PASFM.ADV (A32PASFM.DLL) - MediaVision Pro AudioSpectrum
- PASOPL.ADV (A32PASOP.DLL) - MediaVision Pro AudioSpectrum Plus, Pro AudioSpectrum 16, Pro Audio Studio 16
- PCSPKR.ADV (A32SPKR.DLL) - PC Speaker
- SBFM.ADV (A32SBFM.DLL) - Creative Sound Blaster 1.0, 1.5, 2.0; MediaVision Thunderboard
- SBAWE32.ADV (A32AWE32.DLL) - Creative Sound Blaster AWE32 и AWE64
- SBP1FM.ADV (A32SP1FM.DLL) - Creative Sound Blaster Pro
- SBP2FM.ADV (A32SP2FM.DLL) - Creative Sound Blaster Pro 2.0, Sound Blaster 16
- SC32MPU.ADV - Roland Sound Canvas (SCB-55, SCC-1 и другие)
- TANDY.ADV (A32TANDY.DLL) - трехголосный синтезатор Tandy 1000
- VESAMID.ADV - оборудование, совместимое со стандартом VESA VBE/AI
- WAVE.ADV - Creative Wave Blaster
- WSS.ADV, SENSAT.ADV - Microsoft Windows Sound System и совместимые, например Tandy Sensation
Настройка оборудования
Драйверы AIL поддерживают произвольные значения адреса, IRQ и DMA для любой карты. Однако из-за отсутствия в пакете утилиты для настройки наличие возможности менять эти параметры остается на усмотрение разработчика конкретной игры. В более позднем пакете Miles Sound System появилась утилита для настройки.
Форматы файлов
AIL поддерживает загрузку и проигрывание форматов VOC (PCM-звук) и XMI (MIDI-музыка). Для конвертации MIDI-файлов в формат XMI имеется утилита MIDIFORM.
Загрузка патчей
Для оборудования, поддерживающего управление патчами, предусмотрена загрузка последних из файлов GTL (Global Timbre Library). Необходимость в загрузке патчей из GTL определяется автоматически при загрузке XMI-файла, если последний использует тембры, отличные от стандартных для данного синтезатора. В случае OPL2 и OPL3 любой инструмент требует загрузки из GTL, поскольку OPL не имеют стандартных тембров.
Известные GTL:
- .AD - для OPL2-совместимых карт
- .OPL - для OPL3-совместимых карт
- .MT - для Roland MT-32 и Gravis Ultrasound
Для определенного оборудования вместо GTL используются иные механизмы управления патчами.
Sierra Semiconductor ARIA - драйвер ARIAXMID.ADV при старте загружает управляющую информацию из GM1.BNK или GM2.BNK, в зависимости от объема ROM (512K или 1024K).
Turtle Beach Multisound Classic - используются специфическая утилита PRESETS с банками формата MPP, которые на деле представляют из себя набор SYSEX-команд для имеющегося на карте синтезатора Proteus 1/XR.
Gravis Ultrasound - несмотря на наличие механизма загрузки патчей через GTL, чаще всего используется специфическая утилита LOADPATS и патчи в формате PAT.
Sound Blaster AWE32, AWE64 - механизма загрузки через GTL нет, альтернативные механизмы не поддерживаются. Поддержка загрузки банков SBK и SF2 появилась только в Miles Sound System.
Игры
Использующие AIL игры получили широкое распространение в начале-середине 90-х годов. Некоторые известные названия: