TempleOS-Sound mit VirtualBox?

986
Evan Carroll

Ich verwende derzeit TempleOS v5.03 mit Virtual Box 5.2. Ich glaube nicht, dass der Ton funktioniert. Wenn ich einen God-Song mit SHIFT+ spiele F6oder unter die Jukebox gehe und einen Song abspiele, scheint nichts zu erzeugen. Welche Konfiguration muss ich in meiner Virtual Box haben, damit der Sound funktioniert? Mein Laptop hat keinen PC-Lautsprecher.

Es scheint, dass auch andere dieses Problem hatten

1
Also hier ist die seltsame Sache. Was Evan tut, liegt völlig innerhalb der Regeln. Ihre eigene Zeit zu verschwenden, ist * wörtlich * in Ordnung, auch wenn es ein Betriebssystem ist, das von jemandem geschrieben wurde, der ... [im wörtlichen Sinne ein bisschen verrückt erscheint] (https://en.wikipedia.org/wiki/TempleOS). Und hier ist das Ding. Gute Absichten anzunehmen und nicht mit Evan darüber zu streiten, ob dies eine Verschwendung seiner Zeit ist, frei oder anders ... ist wahrscheinlich das produktivste. Ich bin sicher, dass, wenn wir uns konstruktiv (oder überhaupt nicht) engagieren, alle Probleme, die wir haben, sich von selbst lösen werden. Journeyman Geek vor 5 Jahren 2

1 Antwort auf die Frage

2
Evan Carroll

Sound-Treiber-Emulation des PC-Lautsprechers

Dies funktioniert nur unter Linux. Meine Soundkarte ist zufällig snd_hda_intel, dass der Treiber einen PC-Lautsprecher selbst mit dem beep_modeParameter emulieren kann:

beep_mode: Wählen Sie den HDA-Signalton-Registrierungsmodus ( 0= aus, 1= ein) (Standard = 1). (Array von Bool)

Außerdem ist es standardmäßig aktiviert .

Einrichtung und Konfiguration

Sie müssen die Berechtigungen einmal einrichten, indem Sie sich der richtigen Gruppe hinzufügen. Ohne dies erhalten Sie eine solche Fehlermeldung in IhremVBox.log

  1. Stellen Sie sicher, dass das pcspkrModul geladen lsmod | grep pcspkrist. Wenn Sie es nicht sehen, laden Sie es

    sudo modprobe pcspkr 

    Dadurch wird eine Gerätedatei angezeigt /dev/input/by-path/platform-pcspkr-event-spkr

  2. Stellen Sie sicher, dass Ihre Gruppe in die oben abgebildete Gerätedatei schreiben kann ( ls -lah). Auf Ubuntu ist es im Besitz von input, dafür müssen Sie etwas ausführen

    usermod -aG input "$USER" 
  3. Jetzt abmelden und wieder anmelden

  4. Vergewissern Sie sich, dass Sie sich in der richtigen Gruppe befinden, indem Sie ausführen, um zu erfahren, in groupswelchen Gruppen sich Ihr Benutzer befindet

Bestätigen Sie, dass das Setup erfolgreich war

Von jetzt an müssen Sie nur noch Folgendes tun:

  1. Ausführen modprobe pcspkr, Sie müssen dies jedes Mal tun oder pcskrvon Ihrer Blacklist entfernen, damit es beim Booten hinzugefügt wird. Ich starte es einfach, bevor ich die virtuelle Box starte.
  2. Run xkbbellor in xterm(ich würde gnome-terminal oder xfce-terminal oder konqueror nicht verwenden, weil sie es verschlucken könnten), printf "\a"wenn Sie nichts hören, dann führen Sie das folgende aus und versuchen Sie es erneut

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

Als letztes müssen Sie den PC-Lautsprecher-Passthrough aktivieren.

Für den letzten Schritt müssen Sie die PC-Lautsprecher-Weiterleitung aus den VirtualBox Advanced-FAQs aktivieren, mit denen Sie dies tun können VBoxManage. Die GUI hat noch keine Methode, um dies zu erreichen.

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

Jetzt musst du von nun an nur noch folgendes

Das ist es. Starten Sie nun die virtuelle Box und starten Sie TempleOS. Sie sollten in der Lage sein, Gottlieder zu spielen. Sie müssen TempleOS nicht erneut installieren.

Keine Sound-Treiber-Emulation des PC-Lautsprechers

Ich glaube, dass dies nur auf zwei Arten möglich ist, hypothetisch

  • Wenn das Host-Betriebssystem einen PC-Lautsprecher virtualisieren kann, den Virtual Box passieren kann. Ich glaube, dass PC-Lautsprecher mit Virtual Box unter Linux durchgelassen werden können . Ich muss noch etwas finden, das einen PC-Lautsprecher auf dem Host emulieren kann und mit so etwas wie arbeiten kann beep. Wenn dies funktionsfähig gemacht werden kann, sollte so etwas die Durchleitung übernehmen. Aus der VirtualBox Advanced FAQ

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

    Ich habe dazu eine Frage zu Unix.SE gestellt. Kann Pulse Audio einen virtuellen PC-Lautsprecher emulieren?

  • Wenn Virtual Box einen PC-Lautsprecher emulieren kann, ist dies derzeit nicht möglich, afaik.

Ich glaube nicht, dass dies eine Lösung oder Aufmerksamkeit ist, da selbst für ältere DOS-Systeme, die PWM für den PC-Lautsprecher verwenden, die Unterstützung für Sound Blaster allgegenwärtig war und Virtual Box ein mit Sound Blaster kompatibles Gerät emulieren kann.