public inbox for linux-msdos@vger.kernel.org
 help / color / mirror / Atom feed
From: Stas Sergeev <stsp@aknet.ru>
To: linux-msdos@vger.kernel.org
Subject: Re: App database, libsynth
Date: Sun, 13 Jul 2003 06:37:56 +0400	[thread overview]
Message-ID: <3F10C604.8030803@aknet.ru> (raw)

Hello.

Ryan Underwood wrote:
>> Yes. But I was wondering will they be able to use dmix
>>  both. Is it available via the OSS emulation layer at 
>> all?
> Unfortunately not without the wrapper.  The dmix is done
>  in userspace, so writing to /dev/dsp kernel device would
>  bypass it.  The aoss wrapper intercepts those writes and
>  puts them through alsalib instead, allowing dmix to be 
> used.
That practically means using dosemu's OSS output
plugin will not be possible that way. It does all
the possible things to make it not compatible
with any redirectors. Leaving apart the nonblocking
I/O, it also writes a partial fragments, demands
the precise quering of a current buffer load and
all the other weird things, so it is not compatible
even with most of the third-party OSS drivers.
But have you tried it with aoss? I have to port my
pcsp driver to ALSA before I can do that.

> The PC speaker would seem to fit that model, so if you 
> have some emulation code, I should be able to include it.
Unfortunately I don't have anything like that.
The program I was referring to, was written in
Pascal.
You can also have a look in my pcsp driver, but
it does only the PCM->PDM conversion and not
the vice-versa (no recording via speaker:),
and also the code there is complicated by a
software amplification tricks.
Finally you may want to steal the code from a
dosbox, but it is in C++.
There are some explanation about PDM (aka PWM)
on the net in case you are wondering:
http://www.wikipedia.org/wiki/Pulse-width_modulation
http://www.powerdesigners.com/InfoWeb/design_center/articles/PWM/pwm.shtm
http://www.netrino.com/Publications/Glossary/PWM.html

> If the timidity/mt-32 emulator becomes an ALSA sequencer
>  client (which is the optimal situation so it can be used
>  in any ALSA application), how would dosemu/midid support
>  it?
No modifications at all. See sound-usage.txt
about how to use dosemu->ALSA->timidity. This
is quite fundamental and doesn't require midid.
But to keep the midid up-to-date, probably some
small modification to the midid's timidity
frontend will be required, as currently it
assumes that only GM is supported. That is for
the OSS users, as ALSA users doesn't need midid
at all.

> Interesting.  What about making the ALSA sequencer a 
> backend for midid?
No, actually there is an overlap of a functionality.
midid is also a kind of a sequencer. It receives the
same data on input the alsa sequencer receives. It
can't work after/before the ALSA sequencer because
they are doing the similar job. Only the output is
different: midid talks to timidity's server interface,
while alsa talks to timidity's alsaseq interface.

> So under longmode there will be no more vm86() and we 
> will definitely need to use QEMU.
Unless someone will finally implement it, which
is unlikely but not impossible: after all also X vesa
driver uses it, and so does wine, so there might be
some motivation after all...
The syscall will have to switch the CPU between the
longmode and the legacy mode, which is possible, as
per the link in a previous posting.

> So the "compatibility mode" is only good for running the 
> 32-bit applications while in longmode. Correct?
No: 16 bit is also OK.

> I think most people will be using longmode on AMD-64 
> anyhow, so we should get the fast CPU emulation going as 
> soon as possible.
The speed is not a problem on that CPUs I
guess. The problem is to make a relatively bug-free
CPU emulator. Lets see if the qemu people can do
that, otherwise qemu will add bugs to dosemu, while
dosemu has plenty of its ows ones:)

> Side effect of the CPU emulation : can we do things with
> it like run Win95 or other VCPI program underneath
> DOSEMU?
I think it will be possible. Right now qemu can
run Linux kernel itself, so running
linux->dosemu->qemu->win95 might also be possible.


             reply	other threads:[~2003-07-13  2:37 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-13  2:37 Stas Sergeev [this message]
2003-07-13  5:00 ` App database, libsynth Ryan Underwood
  -- strict thread matches above, loose matches on Subject: below --
2003-07-17 16:07 Stas Sergeev
2003-07-17 23:09 ` Ryan Underwood
2003-07-14 17:43 Stas Sergeev
2003-07-14 21:06 ` Ryan Underwood
2003-07-15  8:38   ` Paul Eggleton
2003-07-15 10:10     ` Ryan Underwood
2003-07-15 12:26       ` Paul Eggleton
2003-07-15 23:48         ` Ryan Underwood
2003-07-13 19:50 Stas Sergeev
2003-07-13 21:27 ` Ryan Underwood
2003-07-13  0:29 Stas Sergeev
2003-07-13  0:59 ` Ryan Underwood
2003-07-13  0:21 Stas Sergeev
2003-07-13  0:56 ` Ryan Underwood
2003-07-13  0:09 Stas Sergeev
2003-07-12 23:47 Stas Sergeev
2003-07-13  0:50 ` Ryan Underwood
2003-07-11 19:02 Stas Sergeev
2003-07-11 19:59 ` Ryan Underwood
2003-07-11 20:23   ` Bart Oldeman
2003-07-11 22:03     ` Ryan Underwood
2003-07-12 20:57       ` Bart Oldeman
2003-07-12 22:40         ` Ryan Underwood
2003-07-12 16:30     ` Jan Willem Stumpel
2003-07-12 19:03       ` Ryan Underwood
2003-07-12 20:13         ` Jan Willem Stumpel
2003-07-12 19:19       ` Bart Oldeman
2003-07-10 17:20 App database Stas Sergeev
2003-07-11 17:30 ` App database, libsynth Ryan Underwood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3F10C604.8030803@aknet.ru \
    --to=stsp@aknet.ru \
    --cc=linux-msdos@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox