[PATCH] Improving SB Mixer emulation

Discussion of development and patch submission.
Post Reply
JosepMa
Posts: 202
Joined: Tue 20 Jun, 2017 6:25 pm

[PATCH] Improving SB Mixer emulation

Post by JosepMa »

This is a follow up from the previous post.

Here is all that is included in the patch:

- More configuration options for the soundcards ( emu address, old SBs address, configuration of mixer specific address for SB 2.0 CD). I've also made it possible to configure IRQ and DMA for SB16, although I havent added it to the configuration dialog, in order to not clutter it excessively.
- Different mixers for different soundcards: SB 1.5 and 2.0 have a hardwired mixer without controls. For the 2.0, a specific mixer can be enabled. SBPro has its specific mixer, and SB16/AWE32 have their own specific mixer, including input/output gain and channel muting/mapping.
- Implemented audio recording of FM and EMU8K sounds for the SB16 and AWE32. All modes work, including the direct mode. Work is needed to add a filter/resampler for good sound quality if using 22Khz or 11Khz sampling rates.
Why audio recording? So that the Creative Mixer can show it's vu-meters/scopes/spectrum, and also AST can show its scope while playing (midi input recording checks need to be enabled in creative's mixerset).
- Added a few SBPro-specific features to the DSP: speaker on/off and limiting High-speed modes to only SB2.0 and SBPRO (maybe it should be SBPRO only).
- Also added 0xF3, which is supposed to be like 0xF2 but for 16bits, i.e. trigger IRQ. Also, on Mixer, reworked a bit the 0x80, 0x81 and 0x82 status registers.
- I've kept the code to record the buffers to disk, and the saw test signal. They can be enabled with #defines
Attachments
sound_sb_dsp-and-mixer-improvements.patch
(99.97 KiB) Downloaded 307 times
User avatar
SarahWalker
Site Admin
Posts: 2054
Joined: Thu 24 Apr, 2014 4:18 pm

Re: [PATCH] Improving SB Mixer emulation

Post by SarahWalker »

Committed at rev 868.

The change to make mixer registers 0x80 and 0x81 read-only caused the SB16 DOS drivers to fail to initialise, so I left that one out.
User avatar
leilei
Posts: 1039
Joined: Fri 25 Apr, 2014 4:47 pm

Re: [PATCH] Improving SB Mixer emulation

Post by leilei »

Talking Parrot seems to be mute now (with Sound Blaster 1.5 chosen so far)
JosepMa
Posts: 202
Joined: Tue 20 Jun, 2017 6:25 pm

Re: [PATCH] Improving SB Mixer emulation

Post by JosepMa »

leilei: Seems Sarah fixed it on head (i.e. the patch has an error). I forgot to remove the right shift that was used to compensate the volume multiplication.
She also fixed a couple more bugs. I'm sorry for that.
User avatar
leilei
Posts: 1039
Joined: Fri 25 Apr, 2014 4:47 pm

Re: [PATCH] Improving SB Mixer emulation

Post by leilei »

I've tried the head already. and to be a bit more verbose on the parrot version, Voice.drv is July 4 1990 and Parrot.exe is January 8 1990
Post Reply