Commit Graph

1129 Commits

Author SHA1 Message Date
Thierry Crozat
06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00
Max Horn
58c36801f4 AGOS: Switch to alternate AdvancedMetaEngine, avoid ADParams 2011-06-10 22:15:40 +02:00
Max Horn
4827cc914a ENGINES: Change incorrect use of 'target' to 'gameid' 2011-06-10 22:15:40 +02:00
md5
c713628721 AGOS: Silenced a false positive warning in MSVC 2011-05-29 19:48:47 +03:00
Matthew Hoops
9539017ee3 ALL: initialise -> initialize 2011-05-25 11:17:11 -04:00
Matthew Hoops
eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
Max Horn
183e018c19 AGOS: cleanup 2011-05-17 15:36:25 +02:00
Max Horn
4cbe4ede66 COMMON: Registers RandomSources in constructor with the event recorder
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
2011-05-17 12:17:26 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Johannes Schickel
71bdb86e02 Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".
For further discussion check here:
https://github.com/scummvm/scummvm/pull/16

Conflicts:
	graphics/png.cpp
2011-05-01 16:54:45 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Ori Avtalion
cd6ee0589d JANITORIAL: Format forward declarations to follow convention 2011-04-28 12:20:34 +03:00
Max Horn
73f04118f3 COMMON: Rename Error to ErrorCode, introduce new Error class 2011-04-18 18:22:02 +02:00
Johannes Schickel
2e0db94f04 AGOS: Prefer Surface::create taking a PixelFormat over the one taking a byte depth. 2011-04-17 16:25:10 +02:00
Max Horn
2e095e25f2 ALL: centre -> center 2011-04-14 14:34:28 +02:00
Max Horn
0ce2ca4e00 COMMON: Replace MKID_BE by MKTAG
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
2011-04-12 16:53:15 +02:00
dhewg
d83a83ef50 JANITORIAL: Remove/comment unused vars
Found by GCC 4.6's -Wunused-but-set-variable
2011-03-29 21:57:56 +02:00
Max Horn
088bd7a70b ENGINES: Remove unused MIDI pass-through code 2011-03-23 17:07:48 +01:00
Max Horn
e70fd59b35 ENGINES: Further simplify pseudo MidiDrivers; fix some regressions
The regression affected AGOS and maybe some others; specifically,
the real MidiDriver would have been deleted twice -- I previously
missed that the Engine instances takes care of freeing the real
MidiDriver, not the MidiPlayer wrapping it.

This commit should clarify the ownership of the real MidiDriver for
most pseudo MidiDrivers.
2011-03-23 16:49:41 +01:00
Max Horn
29847ea42d AUDIO: Change several fake MidiDrivers to MidiDriver_BASE subclasses
Many engines follow the advice in audio/midiparser.h and create a
"pseudo-MidiDriver" subclass. But MidiParser really only needs a tiny
subset of the MidiDriver capabilities, namely those found in
MidiDriver_BASE. So we try to subclass from that whenever possible; this
allows us to remove many stub methods, and enables further future
simplifications.
2011-03-23 15:25:47 +01:00
Max Horn
2bc842dcee AGOS: Sanitize the mutex locking in MidiPlayer::startTrack 2011-03-23 15:25:46 +01:00
Max Horn
8982fff1b7 AUDIO: Add pure virtual MidiDriver::isOpen() method
This in turn enables modifying MidiDriver_MPU401::close() to allow
it to be called on a midi driver that has not yet been opened.

The specific issue that triggered me to make these changes was a
crash-upon-quit in HUGO, caused by it instantiating a midi driver,
then encountering an error (missing hugo.dat) *before* having
opened the new midi driver; the general cleanup code then tries
to close the (not yet opened) midi driver -> kaboom

Also fixed some engines which were leaking MidiDriver instances.
2011-03-22 23:51:47 +01:00
dhewg
f8271e0d07 AGOS: Cleanup syncSoundSettings() 2011-03-19 15:33:34 +01:00
Ori Avtalion
ee3e08bbc2 AGOS: Avoid hiding overloaded virtual methods 2011-02-27 21:25:05 +02:00
dhewg
bd191e1787 AGOS: Respect the screen pitch for movies
Fixes DXA and Smacker movies on Android
2011-02-26 11:58:41 +01:00
Johannes Schickel
55a6e5af76 AGOS: Fix mouse cursor color in Simon 1. 2011-02-18 18:39:26 +01:00
Johannes Schickel
2b62f6bec3 AGOS: Adapt to setPalette RGBA->RGB change.
I only (minimally) tested this change with Simon 1 + 2 DOS CD.
2011-02-15 23:22:30 +01:00
Max Horn
42ab839dd6 AUDIO: Rename sound/ dir to audio/
svn-id: r55850
2011-02-09 01:09:01 +00:00
Max Horn
ee7056542c AGOS: Reduce header interdependencies
svn-id: r55843
2011-02-09 00:13:42 +00:00
Max Horn
4cfa520dce AGOS: Change private to protected, Instead of making subclasses friends
svn-id: r55842
2011-02-09 00:13:20 +00:00
Max Horn
2d1c8a3533 ALL: Fix whitespaces / indention
svn-id: r55818
2011-02-07 23:01:06 +00:00
Max Horn
ab039812e7 COMMON: OSystem now has a PaletteManager
svn-id: r55806
2011-02-07 17:52:38 +00:00
David Turner
861fab3fb1 AGOS: Fix Memory Leaks in Feeble Files.
Found with Valgrind.

svn-id: r55559
2011-01-27 04:13:10 +00:00
David Turner
d55626722e AGOS: Fix Memory Leaks when playing Simon 2 Win.
These were identified with Valgrind.

svn-id: r55558
2011-01-27 02:57:07 +00:00
Eugene Sandulenko
caa6684752 VIDEO: Move video classes to Video:: namespace
svn-id: r55479
2011-01-23 19:08:09 +00:00
Eugene Sandulenko
806ccf5d25 GRAPHICS: Move graphics/video/ to video/. Step 1/2
svn-id: r55473
2011-01-23 17:14:43 +00:00
Matthew Hoops
375f32fbe9 VIDEO: Make VideoDecoder::decodeNextFrame() return a const Surface pointer
svn-id: r54927
2010-12-16 01:35:13 +00:00
Max Horn
6edc86a19b DEBUG: Let GUI::Debugger::preEnter and postEnter (un)pause the engine
svn-id: r54815
2010-12-07 18:54:21 +00:00
Max Horn
2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Max Horn
ee4770ffb6 ENGINES: Change 'colour' to 'color'
Only changed this in engines where 'color' was/is already used
almost exclusively

svn-id: r54288
2010-11-17 12:22:08 +00:00
Max Horn
059944e59c COMMON: Push #include audiocd.h in system.h out to .cpp files
svn-id: r54148
2010-11-08 23:07:42 +00:00
Max Horn
82e473bc3b BACKENDS: Partial merge of gsoc2010-opengl: Audio CD changes only
This commit contains the AudioCDManager changes from the gsoc2010-opengl
branch. The other changes in that branch are restricted to the backends
directory only (plus configure).

The Nintendo DS and Dreamcast ports still need to be ported over to
the new Audio CD system, but that should be fairly easy to do.

svn-id: r54147
2010-11-08 22:53:36 +00:00
Travis Howell
1e078a22f5 AGOS: Display item names and descriptions via GUImessage, in Swampy Adventures for now.
svn-id: r54084
2010-11-05 03:30:45 +00:00
Max Horn
a7248a0601 ENGINES: Replace many printfs by warning/debug/debugN
svn-id: r54031
2010-11-01 21:37:47 +00:00
Max Horn
e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Max Horn
a1dd7a07a1 ENGINES: Remove some 'using' statements
svn-id: r54001
2010-11-01 16:00:17 +00:00
Filippos Karapetis
db369838e2 AGOS: Fixed code analysis warnings - bug #3087828
svn-id: r53503
2010-10-15 15:23:53 +00:00
Max Horn
4ccce19876 ENGINES: Enhance namespace comments a bit
svn-id: r53484
2010-10-15 12:48:19 +00:00
Johannes Schickel
75e8452b6e OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.

Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.

svn-id: r53399
2010-10-13 03:57:44 +00:00
Torbjörn Andersson
ad02009888 AGOS: Hopefully fix bug #3000876 ("FF: Crackling/static popping")
We want the WAV stream in playSounData() to contain the entire WAV
data, but the size we read does not include the eight first bytes.

svn-id: r52908
2010-09-26 12:28:26 +00:00
Travis Howell
184833924b AGOS: Fix bug #3011638 - WAXWORKS: Crash retrieving spear from the crocodile carcass.
svn-id: r52906
2010-09-26 12:22:46 +00:00
Torbjörn Andersson
113e14224d AGOS: Fix Valgrind warnings on exit.
svn-id: r52904
2010-09-26 12:07:50 +00:00
Johannes Schickel
c6b85c2a87 I18N: Use a String instead of a char buffer.
This should improve r52751, since String does automatic memory handling, thus
no more buffer overflows should by possible by having a too large translated
string.

svn-id: r52758
2010-09-17 12:54:00 +00:00
Thierry Crozat
44610eb037 I18N: fix a buffer size issue with translated save/load strings in AGOS
svn-id: r52751
2010-09-16 19:50:15 +00:00
Thierry Crozat
057056b8d3 I18N: Add translation for load/save success or failure messages
Also improve and update the french translation.

svn-id: r52740
2010-09-15 23:25:46 +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
Willem Jan Palenstijn
8f1143bfdc COMMON: Remove Rational::operator int/double
This prevents accidental implicit rounding
and might also fix compilation on AmigaOS4 (bug #3060981).

svn-id: r52616
2010-09-07 09:02:46 +00:00
Travis Howell
ffb414d265 AGOS: Add Polish version of Swampy Adventures.
svn-id: r52464
2010-08-31 05:18:38 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Johannes Schickel
97870a220d AGOS: Make the "m" hotkey respect the mute setting.
svn-id: r51102
2010-07-21 20:12:57 +00:00
Johannes Schickel
4d437bafd8 AGOS: Make AGOS respect the mute setting.
svn-id: r51100
2010-07-21 20:12:09 +00:00
Max Horn
1d4c82885d DEBUGGER: Simplify how our console debugger works / is used
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
  something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
  can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
  document it.
* Add more doxygen comments
* Cleanup

svn-id: r50963
2010-07-17 18:38:42 +00:00
Torbjörn Andersson
9fafc85919 Cleanup.
svn-id: r50929
2010-07-16 03:35:44 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00
Torbjörn Andersson
dde6dabac9 Cleanup: Treat booleans as booleans, not integers. (I hope I didn't mess up,
because that would cause some nasty regressions...)

svn-id: r50643
2010-07-04 07:32:12 +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
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Max Horn
651e2760a3 Fix spelling, cleanup
svn-id: r49843
2010-06-15 12:33:20 +00:00
Eugene Sandulenko
03ed49169c AGOS: Readd Simon1 Acorn CD detection.
svn-id: r49790
2010-06-15 11:00:07 +00:00
Eugene Sandulenko
44a39ffbc6 AdvancedDetector: Add new parameter directoryGlobs.
Without this parameter mass detection gave tons of false alarms.
Use globbing for narrowing down the depth search.

svn-id: r49788
2010-06-15 10:59:23 +00:00
Alejandro Marzini
e1ef3cd9fc Renamed getAudioCD to getAudioCDManager.
svn-id: r49678
2010-06-15 04:13:12 +00:00
Eugene Sandulenko
6916e547a3 AGOS: Fix bug #1777795.
Bug #1777795: "SIMON1: Acorn CD MD5s" fixed by specifying directory
depth for AdvancedDetector to 2.

svn-id: r49657
2010-06-14 14:52:13 +00:00
Eugene Sandulenko
4d517ed0e9 Extended advancedDetector with depth parameter.
Now AD can search nested directories. By default it is turned off,
but there is new parameter to ADParameters struct. Usually value
of 2 is good enough for all purposes.

svn-id: r49653
2010-06-14 14:50:23 +00:00
Torbjörn Andersson
ede57eb61b Removed some unnecessary whitespace. (Or should I have saved that for the
rapidly approaching, much coveted r50000? :-)

svn-id: r49558
2010-06-10 04:29:34 +00:00
Alejandro Marzini
e991cd8c53 - Revised abstract AudioCDManager.
- Removed AudioCDManager Singleton, and changed code for using AudioCDManager in OSystem.
- Added initialization code for new AudioCDManager in BaseBackend and OSystem_SDL.

svn-id: r49548
2010-06-09 20:09:57 +00:00
Matthew Hoops
11cbdd0318 Committing the rest of the VideoDecoder Rewrite from patch #2963496.
svn-id: r49079
2010-05-18 14:17:24 +00:00
Matthew Hoops
c7fa1074fb Change VideoDecoder::getCurFrame() to mean the last frame drawn instead of the next frame to draw. This is patch 1 from patch #2963496 (VideoDecoder Rewrite).
svn-id: r49063
2010-05-17 21:59:05 +00:00
Max Horn
b3e404109c Move initGraphics and initCommonGFX from to new header.
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.

svn-id: r48934
2010-05-04 11:58:12 +00:00
Max Horn
5568a8473b Get rid of Engine::_gameDataDir.
This greatly reduces indirect dependencies on several header files
from common.

svn-id: r48933
2010-05-04 11:56:52 +00:00
Ori Avtalion
2fc9d6845b Apply patch #2982163 - CONFIG: Use HE keyword instead of HB for the Hebrew language
svn-id: r48645
2010-04-12 21:21:06 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Travis Howell
9f53578fd2 Fix compiler warning.
svn-id: r48365
2010-03-23 00:42:42 +00:00
Max Horn
92c896d883 Patch #2973290: Semicolon cleanup
svn-id: r48359
2010-03-22 20:28:08 +00:00
Max Horn
cac0ac66e2 COMMON: Get rid of Common::StringList
svn-id: r48287
2010-03-18 15:54:40 +00:00
Max Horn
d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Max Horn
8d1431a5ab AGOS: cleanup
svn-id: r48227
2010-03-10 20:56:54 +00:00
Torbjörn Andersson
65585f6433 Silenced some harmless cppcheck warnings about unreachable code after a return.
In this case, it was always a break after a return in a switch case. There are
similar cases which cppcheck didn't detect, and a couple of cases where we have
a break after a continue in a switch case (where the continue refers to an
outer loop), but I didn't touch those. Not yet, at least.

svn-id: r48218
2010-03-10 06:39:23 +00:00
Max Horn
f24cc1c8be Tweak makeVOCDiskStream
* now takes a SeekableReadStream *pointer* like (almost) all other
  audiostream factories
* fix potential memory leak in it
* rename takeOwnershipOfStream to disposeAfterUse for consistency

svn-id: r48184
2010-03-08 10:27:42 +00:00
Travis Howell
0e41ec67d1 Exclude font data tables for The Feeble Files, when AGOS2 games are disabled.
svn-id: r48174
2010-03-07 11:46:03 +00:00
Travis Howell
e7765c983a Add font data for Polish Windows 4CD version of The Feeble Files.
svn-id: r48173
2010-03-07 09:22:19 +00:00
Yotam Barnoy
ef330ed9b4 Patch for bug 2943361 by littleboy, adding full kb modifier support to all engines + GUI and proper keypad handling
svn-id: r48101
2010-02-21 04:04:13 +00:00
Johannes Schickel
fe35d372da - Rename FlacStream to FLACStream.
- Rename makeFlacStream to makeFLACStream.

svn-id: r47846
2010-02-03 09:42:11 +00:00
Johannes Schickel
a505d32eff Replace use of Audio::makeRawMemoryStream by Audio::makeRawStream.
svn-id: r47716
2010-01-30 15:26:54 +00:00
Max Horn
ff783e4bb7 AGOS: Turn BaseSound into a subclass of Common::NonCopyable
svn-id: r47581
2010-01-26 22:51:40 +00:00
Max Horn
1565f14bc1 Moved audio stream implementations (for MP3, FLAC, etc.) to new dir sound/decoders/
svn-id: r47579
2010-01-26 22:48:45 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Max Horn
4b996e7de7 Reorder params to Audio::makeRawMemoryStream
svn-id: r47492
2010-01-23 23:55:35 +00:00
Travis Howell
ee653e19ec Update comments.
svn-id: r47461
2010-01-23 03:09:29 +00:00
Travis Howell
ed1de6e208 Fix regressions, only the Amiga CD32 version of Simon the Sorcerer 1 used signed sound data.
svn-id: r47460
2010-01-23 03:02:56 +00:00
Max Horn
409e44e7c3 AGOS: Further unify code related to compressed sound
svn-id: r47458
2010-01-23 00:04:43 +00:00