Commit Graph

352 Commits

Author SHA1 Message Date
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
Torbjörn Andersson
a50c05f7d0 HOPKINS: Work around broken cadavre.mod in OS/2 and BeOS versions
A large part of cadavre.mod is broken. No new notes play, and only
the old background sounds remain. It's possible, perhaps even
probable, that the original MOD player didn't have this problem,
but all standalone players I've tried do, so I'm assuming it's the
file that's broken. We work around it by changing the length of
the song after it's been loaded to only include the good parts.
2013-01-27 18:18:04 +01:00
Johannes Schickel
354aa0f5f3 JANITORIAL: Use "End of anonymous namespace" as comment for anonymous namespaces. 2013-01-26 19:38:02 +01:00
Johannes Schickel
b4d0a8ba66 JANITORIAL: Enforce "} // End of namespace" with a single space after }. 2013-01-26 19:38:02 +01:00
Torbjörn Andersson
8bbb9a2bbd AUDIO: Mention that the Hopkins engine uses Protracker as well 2013-01-26 15:47:38 +01: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
clone2727
91317c3630 Merge pull request #293 from clone2727/qtmidi
Add support for QuickTime Music playback
2012-12-13 15:49:40 -08:00
Matthew Hoops
17f9235325 AUDIO: Add some general documentation on MidiParser_QT 2012-12-13 18:30:05 -05:00
D G Turner
62d87e30f4 AUDIO: Fix MS ADPCM to work with Mono streams using odd sized buffers. 2012-12-10 16:29:16 +00:00
Matthew Hoops
a396e18097 AUDIO: Finish comment 2012-12-03 09:07:33 -05: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
Matthew Hoops
3399b5662f AUDIO: Fix AIFF comment about supporting IMA ADPCM 2012-11-24 17:25:39 -05: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
Matthew Hoops
b285db4db3 AUDIO: Cleanup MidiParser_QT a bit 2012-11-18 14:43:35 -05:00
Matthew Hoops
ca6fdb0807 AUDIO: Ignore QT MIDI control change 0
QuickTime docs don't list it, and we shouldn't treat it as a bank select
2012-11-18 14:20:24 -05: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
Matthew Hoops
f0091af6b5 AUDIO: Don't allow skipping negative times in skipSamples() 2012-10-03 10:45:43 -04: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
Johannes Schickel
c2d39e9152 AUDIO: Enforce method naming guidelines in adlib.cpp. 2012-09-30 21:13:07 +02:00
Johannes Schickel
2d01b7de43 AUDIO: Enforce variable naming guidelines in adlib.cpp. 2012-09-30 21:13:05 +02:00
Johannes Schickel
b63950f40d AUDIO: Fix formatting in adlib.cpp.
Powered by astyle.cpp.
2012-09-30 21:12:05 +02:00
Johannes Schickel
a222e0640f AUDIO: Rename global variables in SCUMM AdLib code.
This does give them slightly nicer names and also adds a "g_" prefix to them.
2012-09-30 21:11:15 +02:00
Johannes Schickel
89abab97e3 JANITORIAL: Remove trailing whitespaces.
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-09-26 04:17:55 +02:00
Matthew Hoops
d5ed8b1901 Merge remote branch 'upstream/master' into pegasus
Conflicts:
	AUTHORS
2012-09-12 20:18:13 -04:00
Matthew Hoops
bb45b24f88 AUDIO: Implement simple dynamic QuickTime MIDI channel remapping
Needed for IHNM Mac sounds
2012-09-12 14:36:17 -04:00
Matthew Hoops
c023651cb3 AUDIO: Implement QuickTime MIDI channel remapping
Needed to support channels with a drum kit
2012-09-10 08:23:11 -04:00
Matthew Hoops
cfe6a2b640 AUDIO: Fix QuickTime MIDI with extra info in the header
The 11th Hour Mac MIDI's now play
2012-09-09 14:59:05 -04:00
Matthew Hoops
4a458236f6 COMMON: Make QuickTimeParser::readSampleDesc take the desc size 2012-09-09 13:47:40 -04:00
Matthew Hoops
2cb301337a AUDIO: Fix QuickTime MIDI pitch bend 2012-09-08 11:05:47 -04:00
Matthew Hoops
8259d3cd9e Merge remote branch 'upstream/master' into qtmidi 2012-09-07 19:03:01 -04:00
Alyssa Milburn
f08978a075 JANITORIAL: Remove underscores from MidiParser variable names. 2012-09-07 23:04:34 +02:00
Alyssa Milburn
763c052c67 AUDIO: Remove unused members of MidiParser_XMIDI. 2012-09-07 22:22:43 +02:00
Matthew Hoops
c50d40b7bf AUDIO: Add some documentation to MidiParser_QT 2012-09-07 14:50:21 -04:00
Matthew Hoops
c882ef9dab AUDIO: Make MidiParser_QT::loadMusic() detect the file type 2012-09-07 14:47:30 -04:00
Matthew Hoops
342cc027c4 AUDIO: Fix QuickTime MIDI tempo 2012-09-07 14:41:54 -04:00
Matthew Hoops
f333e63397 AUDIO: Fix QuickTime MIDI end of track
The end marker is used for editing only
2012-09-07 14:33:39 -04:00
Matthew Hoops
c01dfba093 AUDIO: Begin basic playback of QuickTime MIDI files
Sounds almost correct, but too fast
2012-09-07 11:48:22 -04:00
Matthew Hoops
7e2f7099c8 AUDIO: Keep track of the QuickTime MIDI time scale 2012-09-07 09:49:33 -04:00
Matthew Hoops
c22f76dbbc AUDIO: Fill in _tracks from MidiParser_QT 2012-09-06 16:27:06 -04:00
Matthew Hoops
cc309f4d16 AUDIO: Read in all QuickTime MIDI track data 2012-09-06 14:23:15 -04:00
Matthew Hoops
834ca0e045 AUDIO: Allow for parsing QuickTime 'Tune' files 2012-09-06 09:38:13 -04:00
Matthew Hoops
c5ab2fc95f AUDIO: Clean up note request list reading 2012-09-05 23:20:12 -04:00
Matthew Hoops
ac4c8cd335 AUDIO: Add parsing of the QuickTime MIDI sample description 2012-09-05 23:04:29 -04:00
Littleboy
751f5be785 AUDIO: Silence MSVC warning about un-initialized newIncrement variable 2012-09-05 20:18:25 -04:00
Matthew Hoops
2f9b1b67b0 ALL: Mark off some things as used by Pegasus 2012-08-31 22:26:02 -04:00
Matthew Hoops
857b92f8ff Merge pull request #268 from clone2727/video-rewrite
VideoDecoder upgrade & partial rewrite
2012-08-26 15:41:56 -04:00
Matthew Hoops
813689d68c AUDIO: Move LimitingAudioStream to audio/ 2012-08-12 00:08:13 -04:00
Johannes Schickel
84426c6355 AUDIO: Fix "if" formatting in QDM2 code. 2012-08-09 03:25:14 +02:00
D G Turner
43e2c6ee1e AUDIO: Correct ADPCM Fixes to ensure internal buffers are drained.
This also adds an omitted _decodedSampleCount initialization in Oki
ADPCM decoder.
2012-08-04 20:29:37 +01:00
D G Turner
9c47fdae29 AUDIO: Fix Oki ADPCM to work with Mono streams using odd sized buffers. 2012-08-04 18:38:12 +01:00
D G Turner
b79221729b AUDIO: Fix DVI ADPCM to work with Mono streams using odd sized buffers. 2012-08-04 18:36:13 +01:00
D G Turner
d2c510b886 AUDIO: Update Mixer class doxygen comment on balance to be consistent. 2012-06-24 22:34:49 +01:00
Matthew Hoops
5230a0d617 AUDIO: Make sure maxtrax and tfmx are compiled in with dynamic modules 2012-06-15 22:48:26 -04:00
Sven Hesse
230a0edc2d AUDIO: gob uses protracker too 2012-06-16 04:29:57 +02:00
Sven Hesse
90999d8f8c AUDIO: Implement a missing Protracker feature
When a row has a new period, but no new sample, restart the track's
last sample (except when we're doing portamento).
2012-06-15 03:06:14 +02:00
Johannes Schickel
9c14f4419b AUDIO: Make VOC decoder a bit more failsafe by still playing parts of invalid VOC files.
Formerly when an unsupported block was found the opening would fail. Instead
now all the valid blocks till that occasion will be played.

This fixes an missing sound in Full Throttle (thanks to clone2727 for
reporting), which is using a VOC file which fails to specify the proper block
length for its sound block.
2012-06-11 20:37:04 +02:00
Matthew Hoops
a3832ecd5d AUDIO: Fix seeking to the end of a QuickTime audio track 2012-05-21 22:38:32 -04:00
Matthew Hoops
acb127c2d2 AUDIO: Fix seeking in QuickTime files with multiple edit lists 2012-04-28 15:22:42 -04:00
D G Turner
8a5b08341e AUDIO: Remove now unused Sin/Cos table and FFT code from QDM2 Codec.
This was only used by the RDFT code, now replaced by Common::RDFT.
2012-04-13 07:37:31 +01:00
D G Turner
7f930dfae3 AUDIO: Migrate QDM2 Codec to using Common::RDFT class. 2012-04-13 07:37:30 +01:00
D G Turner
ce1f805212 AUDIO: Fixes to restore QDM2 Codec function.
The Bitstream format is changed to 32LELSB and an error in the getVlc2()
function bitstream reading needed to be corrected to fix operation.
2012-04-13 07:37:29 +01:00
D G Turner
50a9c6429d AUDIO: Update to QDM2 codec fixing pointer to stream buffer usage.
This should allow the QDM2 codec to work again with Common::Bitstream
instead of the older getBits() reader, but this aborts with a reading
past end of stream error...
2012-04-13 07:37:28 +01:00
D G Turner
b5f5cbe5fa AUDIO: Removed qdm2_decode_sub_packet_header() function from QDM2.
This is to allow modification of the code which needs to assign the
data member of the sub_packet structure to an offset in the input
byte readStream.
2012-04-13 07:37:27 +01:00
D G Turner
845812f12e AUDIO: Fix skipping in QDM2 BitStream usage.
getBits(n) would cause a runtime error if n is greater than 32,
but using getBits() to skip is no longer necessary as the newer
BitStream class has a skip method, which is used instead.
2012-04-13 07:37:26 +01:00
D G Turner
220f60fd60 AUDIO: Clean up QDM2 getVlc2() function. 2012-04-13 07:37:25 +01:00
D G Turner
fa44707028 AUDIO: Initial Refactoring of QDM2 to use Common::BitStream.
This removes the internal getBitContext bitwise reading code and
replaces with Common::BitStream.

However, this breaks the codec as in one location, the internal buffer
of getBitContext reader is used and this can't be directly replaced.
This will need to be understood and rewritten.
2012-04-13 07:37:24 +01:00
Matthew Hoops
3e47203d64 AUDIO: Force QuickTime stereo samples to mono if needed
The number of channels in AAC can differ from the actual number of channels needed making us require this. The channel count inside the container is always the correct one.
2012-04-10 16:44:41 -04:00
Matthew Hoops
68e1a04183 AUDIO: Fix QDM2 extra data parsing 2012-03-30 14:40:14 -04:00
Matthew Hoops
be8c557645 AUDIO: Add support for multiple QuickTime audio tracks
This also cleans up the QuickTime audio code to make it a bit more manageable too
2012-03-19 12:04:46 -04:00
Johannes Schickel
223794fb38 ALL: Make use of defined() for the preprocessor consistent.
This does not change the use of defined for some NDS source files, since they
seem to be (based on?) third party code.
2012-03-17 22:02:44 +01:00
Christoph Mallon
75efdd2d84 JANITORIAL: Replace (x ? false : true) by !(x). 2012-03-13 15:43:36 +01:00
Max Horn
215b41b244 COMMON: Move RenderMode and GUIOptions functionality into separate files 2012-02-26 15:19:31 +01:00