From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stas Sergeev Subject: Re: various dosemu comments and hacks (sound, delays) Date: Mon, 24 Feb 2003 17:37:23 +0300 Sender: linux-msdos-owner@vger.kernel.org Message-ID: <3E5A2E23.5010006@yahoo.com> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: List-Id: Content-Type: text/plain; charset="us-ascii"; format="flowed" To: linux-msdos@vger.kernel.org Hello. Ryan Underwood wrote: > 1) Ctrl-Alt-F fullscreen crashes dosemu with a X-Shm (Shared memory) Searching the google reveals that many programs have that problem so I suppose it is not dosemu-related. It crashes right in a mode-switching routine of X (if you add an XSync calls). > for the first time. Minor problem. But rather annoying actually:( > for (i = 0; i < bogo; i++); Busy loops?? I guess we have a better ways to do delays (oh, probably a precision of that other methods is bad, but I guess the busy loops is a bad thing to do). > 3) The Adlib emulation is not working well on my machine. What adlib engine are you using? The one currently inside dosemu is not intended to work at all. > emulation, so DOSemu isn't constantly being blocked by the Adlib > emulation code. There is practically no adlib code in dosemu for the moment (only timers are implemented so that the progs can detect the adlib) so where does it go blocking? > 4) SBemu seems not quite working. Really? :) > On my Aureal AU8830, when a new DMA > buffer is "loaded" and begins playing, I hear a click or pop, but > nothing after that point. Surely you could find the card with even buggier third-party drivers, but at least you could visit the project page and dig the patches section:) http://sourceforge.net/tracker/index.php?func=detail&aid=680632&group_id=8109&atid=308109 > In order to get this far, however, I had to change > the two opens of /dev/dsp from O_RDWR to O_WRONLY. In general this is not a solution, it will break recording (yeah, unlikely is used under dosemu, but anyway). > The AU8830, like some other > cards, only allows one application at a time to open the device for > reading. > Subsequent attempts at opening for read causes driver to return > -ENOMEM. I don't think dosemu opens it more than once at a time. > he offending opens are in linux_sb_get_version() and > linux_sb_enable_speaker() > in src/arch/linux/dosext/sound/linux_sound.c. Note that linux_sb_get_version() closes /dev/dsp right after opening, so only the linux_sb_enable_speaker() really keeps it opened, so there must be no multiple openings in O_RDWR mode (at least not intended to be). > 5) I'm working on VCPI and "unreal-mode" support. Someday, it will > happen. :) Optimist:) > Let me know if you have any comments! You've got it:)