164 Commits

Author SHA1 Message Date
Florian Kagerer
0db700a3dc GUI/LAUNCHER: improved MIDI device selection (also #3088438)
This fixes an issue with the <default> setting in the GM and MT-32 device tabs that has caused some complaints and discussions on -devel. It might also be what bug #3088438 is about.

With a <default> setting ScummVM would just use the first available MIDI device (even if this is the not really well working MT-32 emulator). This <default> setting was also indeed set by default - making it even more annoying.

Now there is a new setting for both the GM and MT-32 device tabs ("Don't use GM/MT-32 music").
This will cause MIDI device detection to be skipped and the best of the other devices (Adlib etc.) to be used. This new setting is used as default. So users who haven't specified anything will get Adlib, PC Speaker etc. (if supported by the engine) even if the engine prefers Midi.

There is a new "Use first available device" setting which will have the same effect as the "<default>" setting we had before.

svn-id: r53771
2010-10-24 19:15:17 +00:00
Jordi Vilalta Prat
8388e0dfea JANITORAL: Clean trailing whitespaces.
svn-id: r53160
2010-10-12 02:18:11 +00:00
Torbjörn Andersson
582bd9a395 MIDIDRV: Prefer PCjr over PC Speaker
If I understand this correctly, if the player's desired music driver
isn't supported (e.g. if you have MIDI as default, and haven't said
anything specifically for Maniac Mansion), it tries to pick the
"best" supported music driver instead. In this case, check if PCjr is
supported before picking PC Speaker.

svn-id: r53105
2010-10-10 07:43:12 +00:00
Johannes Schickel
d477d66f49 SOUND: Properly add CMS as plugin.
svn-id: r52779
2010-09-17 20:02:29 +00:00
Johannes Schickel
6588398ce6 MIDI: Send a reset MIDI device signal on startup.
This is currently done in the engine code. I adapted AGI, AGOS, DRACI,
GROOVIE, LURE, MADE, QUEEN, SAGA, SKY, TINSEL and TOUCHE to send a reset
device on startup. The sound output still works fine (started up a game
from every engine), so this should hopefully not introduce any regressions.

As far as I can tell it seems that SCUMM does send a proper device reset, so
I did not touch it. KYRA only sends a proper reset for MT-32 currently. I am
not sure about SCI though.

This fixes bug #3066826 "SIMON: MIDI notes off when using RTL after SCI".

svn-id: r52736
2010-09-15 22:00:20 +00:00
Eugene Sandulenko
ff8b296c29 Use tabs instead of spaces for indentation.
svn-id: r51997
2010-08-11 19:32:07 +00:00
Florian Kagerer
4a159bcb1e GUI: add music devices for c64, amiga and apple II gs
These devices are not able to create appropriate drivers.
The only purpose for now is having proper gui options and flags and music types for the device detector.
The corresponding GUIO flags for the new devices have been added, too.

svn-id: r51995
2010-08-11 18:54:56 +00:00
Torbjörn Andersson
9074103d44 MIDI: Make it possible to specify MIDI device by music driver id
If getDeviceHandle() gets a music driver id it will pick the driver's
first device, which should hopefully be a sensible default. E.g. it's
once again possible to use "-e alsa" rather than the much more
cumbersome "-e 'alsa_Emu10k1 WaveTable'".

svn-id: r51297
2010-07-26 06:19:57 +00:00
Torbjörn Andersson
02a2f08408 Janitorial: Fix punctuation in error/warning
svn-id: r51296
2010-07-26 06:10:47 +00:00
Johannes Schickel
e5e94d4511 Strip trailing whitespaces in our common code base.
svn-id: r51094
2010-07-21 18:17:51 +00:00
Florian Kagerer
7455c3ec39 AUDIO: fixed bug when device was set to default and only MDT_MIDI flags were passed to detectDevice()
svn-id: r50510
2010-06-29 21:56:04 +00:00
Johannes Schickel
36e583944f Return "0" in case no device was detected in MidiDriver::detectDevice.
svn-id: r50473
2010-06-29 00:38:06 +00:00
Johannes Schickel
a254d29741 Yet another slight fix for the fallback detection.
Before in case MDT_PREFER_MT32 nor MDT_PREFER_GM was specified
the code used "auto" as key name for ConfMan.get, instead of
passing "auto" directly to getDeviceHandle.

svn-id: r50472
2010-06-29 00:30:16 +00:00
Johannes Schickel
19abacc77a Fix fallback detection code in MidiDriver::detectDevice.
It formerly only used the global "mt32_device" and "gm_device"
values, but we also allow game specific values, thus we take
that into account now.

Also formerly the the check for the first available MT32/GM
device only used the device handle of the mt32_device/gm_device
instead of the list of devices it iterates over. Fixed that too.

Last but not least that whole detection code looks strange to me,
it seems we only use mt32_device and gm_device for fallback
detection, at least when the music_driver matches it will always
be used. So I wonder why we have those at all?

svn-id: r50471
2010-06-29 00:29:57 +00:00
Johannes Schickel
5c424cfb41 Fix detection of invalid music drivers specified via command line.
Along with it documented that "0" is a special device handle
for the invalid device. Now getDeviceHandle returns 0, when
the identified device could not be found.

Also getMusicType now returns MT_INVALID (newly introduced),
when a non existing device was specified.

svn-id: r50470
2010-06-29 00:29:35 +00:00
Florian Kagerer
c35e350531 AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either select MDT_PREFER_MT32 or MDT_PREFER_GM
svn-id: r50288
2010-06-25 20:51:57 +00:00
Florian Kagerer
3962f8ba59 AUDIO: some fixes in the audio device code (no sound option, new GUIO flags)
svn-id: r50281
2010-06-25 18:47:52 +00:00
Florian Kagerer
78fb62bcdf LAUNCHER: hopefully fixed music driver selection via command line
svn-id: r50158
2010-06-22 18:27:00 +00:00
Johannes Schickel
0a757c185f Remove some trailing tabs.
svn-id: r50152
2010-06-22 16:42:49 +00:00
Florian Kagerer
46ec88f74d GUI/LAUNCHER: This should fix the regression concerning pc speaker / pcjr support caused by patch #1956501
svn-id: r50145
2010-06-22 15:30:41 +00:00
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Eugene Sandulenko
67bc711580 GUI: Implement MIDI drivers as GUI options.
Proper version of patch #2988641: "GSoC: Select drivers in GUI
based on output types". So far only SCUMM engine supports this
feature.

svn-id: r49783
2010-06-15 10:56:12 +00:00
Eugene Sandulenko
2bcafcb02d Sound: add PCJR as a pseudodriver.
Since AGI distinguishes between PCSPK and PCJR/Tandy, make it as a
pseudodriver.

svn-id: r49782
2010-06-15 10:55:31 +00:00
Eugene Sandulenko
859212df25 Implement translation support for ScummVM GUI.
Based on patch #2903830: "Updated Translation Prototype" by alexbevi
which in turn is based on patch #1739965 by jvprat.

Currently it builds all translations right into ScummVM. Once the
feature will be accepted more widely, i.e. more translations will
pop up, it will be trivial to move translation strings to external
file.

Finished translation: Russian
Unfinished translation: Hungarian

Things which are nice to do:
 - Language code -> language mapping for more user friendness
 - Specifying fonts to be used with language
 - Updating of interface language without restart. It will require
   moving of much code to reflowLayout() methods for each dialog

The .po files must be in single byte encodings. I.e. no support
for Unicode.

svn-id: r49759
2010-06-15 10:44:51 +00:00
Johannes Schickel
bfcdbae648 Change some comments to use "AdLib" instead of "adlib".
svn-id: r47534
2010-01-25 00:39:46 +00:00
Max Horn
c8873d8492 Changed MidiDriver::createMidi to take a MidiDriverType instead of an int
svn-id: r46316
2009-12-09 18:12:51 +00:00
Max Horn
84f3c98fad Remove the Audio::Mixer parameter from the midi/music plugins
svn-id: r46315
2009-12-09 18:05:20 +00:00
Johannes Schickel
67fc4e420b Rename the MT-32 emulator driver name from "MT-32" to "MT-32 Emulation to avoid confusion.
svn-id: r46271
2009-12-07 00:16:28 +00:00
Max Horn
76132409d6 Removed Mac OS X QuickTime MIDI backend. It breaks on OS X 10.6, and it's not as good as the CoreAudio backend anyway
svn-id: r44428
2009-09-27 22:43:32 +00:00
Eugene Sandulenko
cda17beff5 Patch #1365914: "SCUMM: CMS support." Disabled by default. Still plenty to do.
svn-id: r41282
2009-06-06 18:21:49 +00:00
Johannes Schickel
297a9c6c5f Fix spelling of AdLib (it's AdLib not Adlib).
svn-id: r40533
2009-05-13 21:02:50 +00:00
Willem Jan Palenstijn
07d3ae07ac Fix regression from r39702: look up music_driver in config
svn-id: r39707
2009-03-27 13:49:11 +00:00
Max Horn
e5e1615280 MidiDriver cleanup: findMusicDriver now returns a pointer (makes it possible to distinguish 'no match found' from other results); updated parseMusicDriver accordingly; some methods now return MidiDriverType instead of int
svn-id: r39702
2009-03-26 13:52:43 +00:00
Jordi Vilalta Prat
b1999a2a16 Fixed indentation and removed whitespaces at the end of line
svn-id: r35481
2008-12-22 11:22:15 +00:00
Max Horn
31320430de Partial commit of patch #2012839: Atari Patch for adding Native MIDI and Fix Compile
svn-id: r34194
2008-08-27 18:52:21 +00:00
Jordi Vilalta Prat
eb6c809d2b - Added more information (ID and capabilities) to the MIDI drivers
- Added the MidiPlugin interface to the remaining MIDI drivers
- Added an initial MidiManager to handle the MIDI plugins (just static plugins by now)

svn-id: r32117
2008-05-14 14:56:29 +00:00
Jordi Vilalta Prat
d696ed6ea2 Added the MidiPlugin interface (first step towards the MIDI plugins)
svn-id: r31993
2008-05-11 02:10:05 +00:00
Jordi Vilalta Prat
38a8aa516e Allow static and dynamic plugins to be used at the same time
svn-id: r31888
2008-05-06 03:00:26 +00:00
Max Horn
372d30c815 typo
svn-id: r31500
2008-04-14 12:08:00 +00:00
Max Horn
05b159609b Removed remaining traces of the dead MorphOS backend, which itself was removed about one year ago
svn-id: r31114
2008-03-12 18:42:47 +00:00
Jordi Vilalta Prat
672a508bdd Added CAMD MIDI driver for AmigaOS4
svn-id: r30910
2008-02-20 17:07:58 +00:00
Max Horn
8eb73f2694 Patch #1815526: Add TiMidity++ MIDI server support
svn-id: r29377
2007-11-02 16:01:52 +00:00
Johannes Schickel
1bf448ac37 Add DMedia MIDI driver just to the list of MIDI drivers if on IRIX, since at least the code for it is just build on IRIX and not on every UNIX system.
svn-id: r29316
2007-10-29 21:41:50 +00:00
Max Horn
5a07c3c552 Patch #1804801: DMedia MIDI driver for IRIX
svn-id: r29142
2007-09-30 12:12:22 +00:00
Nicola Mettifogo
258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Eugene Sandulenko
22f06325d4 Patch #1742574: "GUI: Unify "Default" options text"
svn-id: r27698
2007-06-25 07:01:13 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Max Horn
9edf1e6a1a cleanup
svn-id: r24407
2006-10-21 12:44:10 +00:00
Max Horn
4c14cf6d1a Moved base/engine.cpp and .h to engines/ (main motivation: helps untangle the linker dependency graph). Porters will have to update project files
svn-id: r23974
2006-09-23 00:42:35 +00:00
Torbjörn Andersson
6358547a43 More whitespace changes.
svn-id: r23496
2006-07-14 13:33:58 +00:00