Application Service Interface (.asi)

miles asi dll sigma www sigmaco org
74 / 100

Arquivos de extensão .asi são intrigantes mas não deveriam: são algo que todos conhecem mas do que nada sabem sobre. Donde vieram? Qual é sua finalidade? Popularmente identificado pela extensão .asi, estes arquivos são vários e apesar de nada terem de especial, existem no senso comum como algo exótico. Então vamos entender do que se tratam.

Arquivos de interface de serviço de aplicação, ou assertivamente application service interface, são apenas DLLs usando a sigla ‘.asi‘ como extensão de arquivo e nada mais. Presumo que (quase) todos já devam ter visto, ouvido, lido, ou doutra forma absorvido, esta informação. Confere?

Pois então, já observei muita confusão e, consequentemente, muitos questionamentos sobre (por exemplo) o porquê de usar essa extensão, o porquê de não usar a extensão standard do Windows (.dll), o porquê de alguns games necessitarem de um injetor mas outros não, fora outras mais. Há questões históricas envolvidas, mas vamos tentar explicar.

Em preâmbulo, saiba que uma DLL é uma aplicação não-executável que funciona como partes de aplicações EXEcutáveis (.exe). São essencialmente arquivos de mesma estrutura e natureza, porém, as aplicações executáveis contêm conveniências que lhes capacitam ser autônomas e logo serem capazes de executar como processos, o que DLLs não conseguem. — Um modal ótimo para fazer manutenção e compartilhamento de recursos e funcionalidades.

História

Apesar destes arquivos estarem associados ao modding de games, os arquivos ASI surgiram muito antes e eram originalmente criados por corporações como módulos dinamicamente carregáveis para servir, estender e aprimorar o middleware Miles Sound System, amplamente usado principalmente em games como o subsistema de renderização acústica.

O Miles, através de seu mecanismo dinâmico de extensão denominado RAD Interface Broker (ou mediador de interface RAD), carrega arquivos com extensões ‘.asi‘, ‘.flt‘ e ‘.m3d‘ automaticamente no tempo de inicialização do sistema de som, o que normalmente ocorre logo no início da aplicação. Um leitor vivo já deve ter observado que esta estrofe justifica todas os questionamentos antes citados.

Estrutura

Segundo a RAD Game Tools, desenvolvedora do Miles (e do Bink), ASI é uma sigla para Audio Stream Interface mas o uso destes arquivos e mesmo a “musicalidade” no emprego do termo abrem interpretações. Provavelmente criaram um significado fuleiro então reassociaram a sigla. Arquivos ASI são provedores de ASI, não ASI em si. A natureza de ASI é descrita como sendo codec de som, apesar de ter outras aplicabilidades no Miles.

Segundo também a RAD, e como supracitado, ASI não é a única extensão auto-injetável, também temos os arquivos FLT. Estes arquivos são idênticos aos ASIs, porém usam outra extensão para fins de seletividade do sistema. A natureza de FLT é descrita como sendo filtros de som digital, e FLT é sigla simples e assertivamente para filter.

Ainda há o M3D que, segunda a RAD, foi descontinuado mas provavelmente você já viu ou verá em games mais antigos provavelmente usando até a versão maior 6 do Miles. Arquivos M3D ofereciam suporte a som de cerco tridimensional, como Aureal A3D, EAX, Dolby, SRS, DTS, THX, e os caralhos.

Então, em games usando Miles, qualquer DLL com alguma dessas extensões seria automaticamente carregada, e é por isto que não usam a extensão standard do Windows, noutro caso carregariam DLLs desnecessárias, o que seria uma avalanche seguida de um desastre na infraestrutura de engenharias de gameware como Unreal Engine 2.

Vale ressaltar que .asi, .flt e .m3d NÃO são formatos de arquivo, o formato é DLL. O que há são conveniências neles para serem içados automaticamente pelo mecanismo de extensibilidade do Miles. E é por isto que carregar uma DLL qualquer (sem as conveniências) não acarreta problema algum.

E também ressaltamos que .asi NÃO é uma linguagem de programação. DLLs são criadas por um gerador a partir de unidades de código de máquina que podem ser produzidos através de várias linguagens, notoriamente da família C.

Uso

O que dizer? Logicamente todo game que embarcou Miles Sound System dispõe desses arquivos em poucos ou muitos. No entanto, vamos falar de dois títulos aqui que provavelmente são mais próximos das pessoas circundando a SIGMA: GTA III e Vice City.

Em GTA III e Vice City, que usam a mesma versão (6.1a) do Miles, há um subdiretório denominado ./mss/ onde podemos encontrar arquivos com todas as extensões citadas, mesmo a descontinuada .m3d.

miles plugins m3d asi flt sigma www sigmaco org

Já no caso de games que não foram contemplados com a acústica do Miles, tão resplandecente no GTA Vice City, como o pobre GTA San Andreas, usando um sistema de som fruto do pecado da programação orientada a gambiarra, requer uso de ferramentas injetoras conhecidas como ASI-loaders.

Postagens relacionadas

QWADRO

79 / 100 QWADRO é uma estandardização de implementação de API de simulador de realidade tridimensional computadorizada. Isto significa que não se trata determinadamente de…

Comentários