Audio Interface Library: различия между версиями

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