qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] SB16 support


From: Fabrice Bellard
Subject: Re: [Qemu-devel] SB16 support
Date: Wed, 05 Nov 2003 00:46:19 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624

malc wrote:
On Tue, 4 Nov 2003, Fabrice Bellard wrote:


Thank you for the patch ! This is quite impressive.

I cannot include as is as it needs some modifications to be more
integrated in QEMU. I would have the following needs:

Never thought it would be, since its couple of hours hack.


1) Use SDL for audio rendering.

I steered away from using SDL for audio in Minde(and by extension in sb16
emu). SDL uses callback mechanism for audio mixing. At least under *NIXes
the callback is called either by a thread (do you really want that in
QEMU?) or alarm handler (good bye straight forward host_alarm_handler
welcome headache)

Current `aud.c' requires and expects so little from audio system that it
begs the question: what is simpler to retarget it for a bunch of OS/HW
specific audio systems or maintain SDL abstraction (which btw does not
even provide a way for querying current playing position)


2) The whole patch should add only two files: dma.c for DMA emulation,
sb16.c for sb16 emulation and sdlaudio.c for SDL audio driver.


I can try to pull this trick, but again, SDL audio decision needs to be
weighted in. Please e-mail me directly if you have some insights on how
to organize those files.

I agree that SDL audio is not flexible enough and that it complicates the emulator. I thought it would be easier to port it to windows or MacOS X, but maybe in thoses cases it would be better to simply rewrite all the GUI stuff to use native menus. I don't have enough knowledge of these OSes to tell what is the best solution. Is there also a solution to play sound with VNC, as I think a VNC display system will be quite useful.

Currently, keeping the OSS API would suffice. So it gives the following files: dma.c, sb16.c and oss.c.

Fabrice.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]