Commit Graph

145 Commits

Author SHA1 Message Date
Johannes Schickel
b22aeafcc8 AUDIO: Do not add extrapath to SearchMan in MT-32 emu code.
At the point where the emulator is created extrapath should already been
added to extrapath. If not, the check in checkDevice already failed and thus
adding it would be too late anyway.

It seems this was added in 805b21181a. The
comment about it being a HACK has been removed in bbad3f333a
but it's not clear to my why... At any rate, this should not be here.
2013-11-03 19:36:04 +01:00
Filippos Karapetis
eb84b9fc02 MT-32: Update to munt 1.3.0 2013-09-24 11:30:46 +03:00
Filippos Karapetis
00992c1e68 MT-32: Sync with the latest changes in munt 2013-08-21 03:41:30 +03:00
Sven Hesse
989ea7cb56 JANITORIAL: Remove trailing whitespace 2013-07-14 19:01:47 +02:00
D G Turner
9fb96a9256 AUDIO: Further fix to ReportHandlerScummVM::printDebug in MT32 code. 2013-07-06 04:05:22 +01:00
Johannes Schickel
d7ff665737 AUDIO: Fix ReportHandlerScummVM::printDebug in MT32 code.
Formerly it tried to pass 'va_list' as '...' to debug. Now it's first creating
a String containing the output via String::vformat and then passing it
to debug.

Found by buildbot (master-dc). The warning message was:
audio/softsynth/mt32.cpp:65: warning: cannot pass objects of non-POD type
`struct va_list' through `...'; call will abort at runtime
2013-07-04 14:44:41 +02:00
Filippos Karapetis
5f3ddae421 MT-32: Sync with the latest changes in munt
This syncs our code with munt commits 258cd89 and 17b40a6
2013-07-02 03:53:09 +03:00
Johannes Schickel
a1cfe235e4 AUDIO: Reduce callback frequency of the MT-32 emulator.
Formerly the frequency was at 10000Hz. This resulted in 3,4 or even only 1
sample to be generated between callbacks on my system. All the other MIDI
drivers use a much lower frequency here. The MidiDriver_Emulated subclasses
use a frequency of 250Hz (by default) and the MidiDriver_MPU401 subclasses
(which are for example the ALSA output) use 100Hz. With the new frequency
of 250Hz 128 samples are generated between callbacks. This will hopefully
reduce the overhead of the MT-32 emulator (the engine's code was run 10000
times a second too) a bit.

I talked with KingGuppy and it seems the value was increased in the past
(still with the very old MT-32 emulator code) because there were accuracy
issues. However, I gave the lower frequency a quick test with the MI1, MI2
and ITE intro and didn't spot any obvious differences. As a result, KingGuppy
and I agreed to lower it back to 250Hz. If there are any problems coming up
we can still slightly increase the frequency to 1000Hz for example.

Thanks to waltervn for noticing this. Thanks to KingGuppy for discussion.
2013-05-17 00:40:34 +02:00
Filippos Karapetis
635847b979 MT32: Fix some non-initialized fields in MidiDriver_MT32 - CID 1002949 2013-05-01 15:46:23 +03:00
Filippos Karapetis
3f01f34b1f MT-32: Sync with the latest changes in munt
This syncs our code with munt commit 15e9f65
2013-03-27 23:01:47 +02:00
Filippos Karapetis
8a62471b21 MT-32: Sync with the latest changes in munt 2013-03-03 23:01:12 +02:00
Filippos Karapetis
7880323590 MT-32: Also replace cosf() (C99) with cos() 2013-03-03 22:59:33 +02:00
Filippos Karapetis
bb7930cf9c MT-32: Avoid using sinf() (which is C99) in favor of sin() 2013-03-03 16:10:02 +02:00
Filippos Karapetis
f4cc45d367 MT32: Sync with the latest changes in munt
The major change is the addition of a refined wave generator based on
logarithmic fixed-point computations and LUTs
2013-03-02 14:09:39 +02:00
Filippos Karapetis
8884c240fc MT32: Update copyright year 2013-03-02 13:46:11 +02:00
Filippos Karapetis
059f5ee138 MT32: Also attempt to load roms named CM32L_CONTROL.ROM / CM32L_PCM.ROM
This was accidentally removed in commit 5711d23
2013-02-04 23:13:53 +02:00
Filippos Karapetis
e2a8c8ea86 MT32: Sync with the latest changes in munt
This syncs our code with munt commit ee380de
2013-02-04 23:13:53 +02:00
Johannes Schickel
59dde54519 Merge pull request #301 from lordhoto/c++11-playground
RFC: Allow use of override and nullptr. Also allow C++11 compilation.
2013-01-26 05:25:14 -08:00
Johannes Schickel
94edb3409f Merge branch 'eriktorbjorn-fluidsynth-settings'
This is a manual merge of a slightly adapted pull request #296.
The changes made are:
- Each time the theme format changes, the version was increased
- default.inc has been regenerated in the same commit as the theme changes
2013-01-26 14:00:04 +01:00
Torbjörn Andersson
a188a43da6 GUI: Make the FluidSynth settings dialog a bit more like Qsynth
To help people familiar with Qsynth (I'm not, but it seems to be
one of the more polished FluidSynth front ends), use the same
presentation and terminology for the FluidSynth settings.

More to follow.
2013-01-26 13:36:39 +01:00
Torbjörn Andersson
681f81211f FLUIDSYNTH: Add separate dialog for FluidSynth settings
I don't really understand what these parameters do, or what the
sensible values are, so for now the sliders are limited only by
the allowed (or, in one case, "safe") values.
2013-01-26 13:36:37 +01:00
Einar Johan Trøan Sømåen
5d4d65d6d9 JANITORIAL: Fix ){ -> ) { 2013-01-24 20:15:13 +01:00
Filippos Karapetis
a81ff52088 MT32: Sync with the latest changes in munt
This syncs our code with munt commits 535bf96, 934c116, 1643d07 and 2eac585
2013-01-19 15:53:54 +02:00
Johannes Schickel
cc0b8594ce AUDIO: Silence C++11 narrowing warnings. 2013-01-09 07:24:37 +01:00
Filippos Karapetis
7058daaed1 MT32: Remove the screen drawing code of the MUNT debug messages (bug #3599702)
The MUNT debug messages are called from an audio callback, which is not allowed to
update the screen, as per the OSystem documentation in common/system.h:401
2013-01-06 22:24:27 +02:00
Filippos Karapetis
05bf234b26 MT-32: Only show MUNT debug messages for debug level 4 and above (bug #3599702)
This avoids showing warnings in the intro of FOTAQ when using the MT-32 emulator
2013-01-06 21:54:40 +02:00
Strangerke
3cacade68d COPYRIGHT: After a discussion it with KingGuppy, revert copyright modification in some Munt files (thanks LordHoto for pointing it) 2013-01-02 18:48:22 +01:00
Strangerke
88add32e3b JANITORIAL: Update copyright year 2013-01-02 18:32:15 +01:00
Filippos Karapetis
98ec267543 MT-32: Sync with the latest changes in munt
This syncs our code with munt commits 3f0db2d and 2c5f314
2013-01-02 12:42:54 +02:00
Filippos Karapetis
f3ccc38e8d MT32: Add missing initialization code
This code wasn't added when syncing with the official munt codebase
2012-12-27 17:12:27 +02:00
Filippos Karapetis
bf62205c73 MT32: Move the ROM file deletion code to the ScummVM MT32 driver
This removes the custom ScummVM file deletion code in the munt code
2012-12-27 17:12:26 +02:00
Filippos Karapetis
5711d23231 MT32: Update the MT32 emulator and adapt to its new API
Previous munt commit was 84b2819 (Dec 22, 2012)
Current munt commit is 6afddaf (Dec 23, 2012)

This commit also updates the MT32 driver code to the latest munt API
2012-12-26 21:28:34 +02:00
Filippos Karapetis
d9e555afd5 MT32: Update the MT32 emulator to a newer munt commit
Previous munt commit was f969d20 (Nov 15, 2012)
Current munt commit is 84b2819 (Dec 22, 2012)

We are still missing the changes from commit 788f7b1 onwards (Dec 22,
2012). There are bigger ROM access-related changes from that point,
which we'll have to integrate as well.
2012-12-25 23:48:25 +02:00
Torbjörn Andersson
8881f71ac5 AUDIO: Fix AdLib volume when ENABLE_OPL3 is not defined
This should ensure that when ENABLE_OPL3 is not defined, the old
code (using a lookup table) is used for calculating vol1 and vol2
(unless, of course, _scummSmallHeader is true). I hope I got it
right this time.
2012-12-01 11:48:51 +01:00
Torbjörn Andersson
5cd7e5d777 AUDIO: Fix AdLib volume regression in pre-iMUSE SCUMM games
This assumes that _scummSmallHeader = 1 means we don't care about
what _opl3Mode is when calculating the volume in mcKeyOn(). I hope
this is correct.
2012-12-01 11:43:51 +01:00
D G Turner
d654057a98 AUDIO: Fix spurious compiler warnings about use-before-set variable. 2012-11-23 19:01:38 +00:00
Johannes Schickel
7c2f5e2d0e Merge pull request #283 from lordhoto/scumm-opl3
SCUMM: Support OPL3 in Sam&Max
2012-11-22 17:28:31 -08:00
Johannes Schickel
1f69192f7d AUDIO: Remove two extra commas. 2012-11-22 02:29:57 +01:00
Johannes Schickel
761a98997c AUDIO: Disallow custom percussion instruments in MIDI->AdLib code. 2012-11-22 02:22:25 +01:00
Johannes Schickel
689497f06e AUDIO: Only enable OPL3 code in MIDI->AdLib, when we have the DOSBox emulator builtin. 2012-11-22 02:18:51 +01:00
Johannes Schickel
be60a641bf AUDIO: Slight cleanup and typo fix in S&M OPL3 code. 2012-11-20 03:27:12 +01:00
Filippos Karapetis
2c8cd2d653 MT32: Make all constant tables in the MT32Emu namespace static
Added in munt commit d4f8ebf54be0a8255af08bb24f1962afa8378096
2012-11-15 14:40:04 +02:00
Filippos Karapetis
3233edf9b8 MT32: Update the MT32 emulator to the latest munt revision
Previous munt revision was 189f607c88e7404ad99abcf4b90f23b103003ed1
(Feb 09, 2012).
Current munt revision is f969d2081d41b669c1bfebd0026b5419c09517ae
(Nov 15, 2012)
2012-11-15 14:30:41 +02:00
athrxx
17ed912ed5 AUDIO: remove unused variables in FM-TOWNS imuse driver 2012-11-11 19:14:26 +01:00
Johannes Schickel
abe637b0f5 AUDIO: Add support for Sam&Max's OPL3 output in our SCUMM AdLib driver.
This is an initial implementation and does not implement the differences
in voice allocation.
2012-10-01 03:10:44 +02:00
Johannes Schickel
1c024519d5 AUDIO: Add easy way to write to OPL3's secondary register set. 2012-10-01 01:50:23 +02:00
Johannes Schickel
04baadcf7a AUDIO: Switch MidiDriver_ADLIB to new OPL API. 2012-09-30 21:36:52 +02:00
Johannes Schickel
78e8b9dd59 AUDIO: Properly handle AdLibPercussionChannel::noteOff. 2012-09-30 21:28:18 +02:00
Johannes Schickel
e5c41cbf9a AUDIO: Comment out unused member in AdLibPart. 2012-09-30 21:22:03 +02:00
Johannes Schickel
8eeb3f2bf9 AUDIO: Give AdLibSetParam's members more descriptive names. 2012-09-30 21:17:04 +02:00