Re: PC Spkr still not outputting, Documentation issues, suggestions

Volker Ruppert <[email protected]> Tue, 17 May 2016 21:07:40 +0200
Newsgroups gmane.comp.emulators.bochs.devel
Message-ID <[email protected]>
Hi!

> #1. How the hell do I get output from bochs when a program tries to beep
> the pc speaker? I'm running linux, with sdl and sdl2 available (does
> bochs not handle sdl2 yet?). I know that bochs can detect when the
> speaker is turned on, because it displays "frequency=xx" each time that
> changes, and the frequencies look more or less reasonable (for the
> musical notes being played). I've tried adding sound: and speaker:
> directives from various documentation I've found, but those cause a
> panic.

The PC speaker is known to work both on Linux and Windows. When you get 
the "frequency=..." output in the log file, you are using the "gui" 
output mode, but none of the guis has implemented this method. The 
"sound" output mode is the one you want to have. It send the output to 
the wave interface of the selected sound driver. Note that sound support 
is only compiled in if at least one of the sound devices is enabled at 
compile time.

SDL2 support is available when you use the configure option --with-sdl2.
This makes the "sdl2" display library and the "sdl" sound driver 
available (wave outtput only). The legacy SDL support is still 
available, but for the gui part both versions have been defined as 
mutually exclusive. The sound driver supports both versions in the 
source, but compiles only the selected one.

If you get a panic while playing with Bochs and the docs don't help you 
to resolve it, you can post it here along with your bochsrc.

> #2. Config documentation. Under the soundblaster config...For a lot of
> options, I'm given the option to set the wave/midi mode, or enter ? for
> help on that. Being told to enter 0-3 at the prompt isn't very helpful.
> What do those options do? The documentation is seriously out of date.
> They could do anything! Why doesn't the help say anything about what
> they do?

This is documented in the HTML docs and the bochsrc sample. The value 0 
means no output at all for the selected facility. The value 1 means to 
use the sound driver and the value 2 means output to a file. Finally the 
value 3 is a combination of 1 and 2.

> #3. Why doesn't the config have options for the pc speaker and es1370?
> Are they simply not that important?

There is no option for the PC speaker, since it is a standard part of a 
legacy PC just like floppy, serial or parallel port. A configure option 
for the ES1370 really exists (--enable-es1370) and the device is known 
to work in Win98/XP and Linux guests.

> #4. If there's an unknown directive in the config, I'm told it couldn't
> read the config file, then the emulator panics (Why?!). If I tell it to
> alwayscont, it simply prompts me to enter another file name. Other than
> the panic behavor, I would expect the rest of the behavior. Why does it
> panic instead of just asking the user to enter a good filename, or just
> hit enter to cancel?

If a bochsrc directive is not understood, Bochs panics to force the user 
to fix up it's config. If you say "alwayscont" at the panic prompt, it 
only skips the "ask" dialog or text prompt. The panic event is still 
signaled to the calling function. So when you use the "Read 
configuration menu item, it will only finish with success if your config 
file is valid.

 > #5. The documentation is super out of date!

We are only two active developers with spare time for Bochs. Since there 
is nobody who is specialized for writing user-friendly docs, we have to 
do all that. Some parts of the docs may need updates or a rewrite. 
Please point us to these sections and we'll have a look.

On the other side I told you a lot of things about the sound stuff in 
this mail that could be found in the docs. After the sound code rewrite 
I have written the the section "Using sound" from scratch and removed 
the old and outdated SB16-only sound documentation.

--
Thanks,
Volker


------------------------------------------------------------------------------
Mobile security can be enabling, not merely restricting. Employees who
bring their own devices (BYOD) to work are irked by the imposition of MDM
restrictions. Mobile Device Manager Plus allows you to control only the
apps on BYO-devices by containerizing them, leaving personal data untouched!
https://ad.doubleclick.net/ddm/clk/304595813;131938128;j