TempleOS som com o VirtualBox?

1

Atualmente estou executando o TempleOS v5.03 com o Virtual Box 5.2. Eu não acredito que o som esteja funcionando. Quando eu toco uma Canção Divina com SHIFT + F6 , ou entro na Jukebox e toco uma música, nada parece gerar som. Que configuração devo ter em minha caixa virtual para obter um som funcionando? Meu laptop não tem um alto-falante do PC.

Parece que os outros tiveram essa problema também

    
por Evan Carroll 06.06.2018 / 19:21

1 resposta

2

Emulação de driver de som do alto-falante do PC

Isso só funciona no Linux. Minha placa de som é snd_hda_intel , esse driver pode simular um PC Speaker com o parâmetro beep_mode :

beep_mode: Select HDA Beep registration mode (0=off, 1=on) (default=1). (array of bool)

Além disso, é ativado por padrão .

Configuração e Configuração

Você terá que configurar as permissões uma vez, adicionando-se ao grupo adequado. Sem isso, você receberá um erro assim em VBox.log

  1. Certifique-se de que o módulo pcspkr esteja carregado com lsmod | grep pcspkr , se você não o visualizar, carregue-o

    sudo modprobe pcspkr
    

    Isto irá expor um arquivo de dispositivo /dev/input/by-path/platform-pcspkr-event-spkr

  2. Verifique se o seu grupo pode gravar no arquivo de dispositivo exposto acima ( ls -lah ). No Ubuntu é de propriedade de input , por isso você terá que executar algo como

    usermod -aG input "$USER"
    
  3. Agora, faça logoff e faça login novamente

  4. Verifique se você está nesse grupo certo executando groups , que informará em quais grupos seu usuário está

Confirme se a configuração foi bem sucedida

De agora em diante, você só precisa fazer o seguinte,

  1. Execute modprobe pcspkr , você terá que fazer isso toda vez ou remover pcskr da sua lista negra para que seja adicionado na inicialização. Acabei de executar antes de iniciar a caixa virtual.
  2. Execute xkbbell ou xterm (eu não usaria gnome-terminal, ou xfce-terminal, ou konqueror para isso porque eles podem engolir isso) execute printf "\a" se você não ouvir nada, então execute o comando seguindo e tente novamente

    xset b 100
    # or whatever the source control is for the beeper
    amixer sset Beep 100%
    

Por último, você terá que habilitar a passagem do PC Speaker,

Para a última etapa, você precisará ativar a passagem do PC Speaker a partir do FAQ avançado do VirtualBox , você pode fazer isso com VBoxManage . A GUI ainda não possui um método para realizar isso.

VBoxManage setextradata "VM name" "VBoxInternal/Devices/i8254/0/Config/PassthroughSpeaker" 100

Agora você só tem o seguinte a partir de agora,

É isso. Agora, inicie a caixa Virtual e inicie o TempleOS. Você deveria poder tocar músicas de Deus. Você não precisa reinstalar o TempleOS.

Sem emulação de driver de som do alto-falante do PC

Eu acredito que isso é apenas possível em uma das duas maneiras, hipoteticamente

  • Se o sistema operacional do host puder virtualizar um alto-falante do PC pelo qual o Virtual Box pode passar. Eu acredito que o PC Speakers pode ser passado com o Virtual Box no Linux . Ainda não encontrei nada que possa emular um PC Speaker no host e trabalhe com algo como beep . Se isso pode ser feito funcional, então algo como isso deve fazer o repasse. Do FAQ avançado do VirtualBox

    VBoxManage setextradata "VM name" "VBoxInternal/Devices/i8254/0/Config/PassthroughSpeaker" 100
    

    Eu fiz uma pergunta sobre isso no Unix.SE, O Pulse Audio pode emular um alto-falante virtual do PC?

  • Se o Virtual Box pode emular um alto-falante do PC que ele não pode fazer atualmente, afaik.

Eu não acho que há uma solução ou muita atenção para isso, mesmo para sistemas DOS mais antigos que usavam PWM no alto-falante do PC, suporte para Sound Blaster era onipresente e Virtual Box pode emular um dispositivo compatível com blaster de som.

    
por 06.06.2018 / 19:36