Commit Graph

311 Commits

Author SHA1 Message Date
Filippos Karapetis
fba6ee8af9 MADE: Fixed bug #3090034 - "RTZ: Keyboard unresponsive", by properly handling keyboard keys
svn-id: r54568
2010-11-29 10:20:45 +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
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
David Turner
c76f0c6c02 MADE: Added basic debugging console to engine
MADE does not currently use Debug Channels, but this does provide a base for adding them along with any other debugging commands.

svn-id: r54139
2010-11-08 12:17:19 +00:00
Max Horn
31bf3a4137 MADE Remove now redundant fflush call
svn-id: r54036
2010-11-02 09:49:07 +00:00
Filippos Karapetis
9717686337 MADE: Fixed bug #3087849 - "MADE: Code analysis warnings"
svn-id: r53487
2010-10-15 13:00:19 +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
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
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Yotam Barnoy
68783fa01c MADE: fixed bug 3029750 caused by caching from commit 46102.
Cache needed to be cleared every time we load a game. Otherwise, those platforms that happen to use the exact same addresses (PC) were ok, but those platforms that had different addresses (PSP for example) would get messed up.

svn-id: r51138
2010-07-22 11:20:16 +00:00
Matthew Hoops
14c2fb2f08 Implement PlayNote/StopNote and PlayTele/StopTele for The Manhole.
svn-id: r51066
2010-07-20 16:05:25 +00:00
Torbjörn Andersson
4172a94edd Cleanup.
svn-id: r50950
2010-07-16 23:10:41 +00:00
Matthew Hoops
38fb180edb Add entries for the DOS, FM-Towns, and PC-98 versions of RTZ (all on the FM-Towns CD).
svn-id: r50941
2010-07-16 20:00:16 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +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
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
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
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
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
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Max Horn
c934642bdb COMMON: Move typedef StringList from str.h to new header str-array.h
This removes the dependency on array.h from str.h.
Also, begun migration from the confusing type name "StringList" to
the more appropriate StringArray.

svn-id: r48282
2010-03-18 15:09:24 +00:00
Max Horn
d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Matthew Hoops
eda17df00c Check if we should quit on every opcode call instead of after every 500. Fixes bug #2960238.
svn-id: r48149
2010-02-27 18:54:21 +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
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
Max Horn
cebaa0b0d3 Started to get rid of Audio::FLAG_LOOP
svn-id: r47397
2010-01-19 23:50:33 +00:00
Max Horn
dc5e08e623 Move raw audio flags from sound/mixer.h to sound/raw.h
svn-id: r47395
2010-01-19 22:30:33 +00:00
Max Horn
557bb394de Get rid of Mixer::FLAG_AUTOFREE.
Also fix several recently introduced new/delete vs. malloc/free mismatches.

svn-id: r47369
2010-01-19 00:56:29 +00:00
Max Horn
69be747621 Move raw audio streams to new header sound/raw.h
svn-id: r47368
2010-01-19 00:54:06 +00:00
Max Horn
349fcd1d71 Rename 'Linear' audio streams to 'raw'
svn-id: r47367
2010-01-19 00:52:41 +00:00
Johannes Schickel
0d995c5920 Rename all "Adlib" uses to "AdLib" to match the real name of the sound card / company.
Check this for reference:
http://en.wikipedia.org/wiki/Ad_Lib,_Inc.
http://www.crossfire-designs.de/images/articles/soundcards/adlib.jpg (note the upper left of the card)

This commit does not touch "adlib" and "ADLIB" uses!

Also it does not update all the SCUMM detection entries, which still use "Adlib".

svn-id: r47279
2010-01-12 21:07:56 +00:00
Max Horn
590481b12d Improve support for negative Timestamps, and add + and - operators
svn-id: r47244
2010-01-11 10:17:55 +00:00
Max Horn
87cdc86580 MADE: Use Mixer::getElapsedTime and Audio::Timestamp instead of Mixer::getSoundElapsedTime
svn-id: r47243
2010-01-11 10:17:23 +00:00
Max Horn
0cf53b025d Move DisposeAfterUse::Flag from Common to global namespace, and into a new header common/types.h
svn-id: r47180
2010-01-08 22:07:35 +00:00
Max Horn
474d49946f Rename QueuedAudioStream to QueuingAudioStream
svn-id: r47179
2010-01-08 22:06:04 +00:00
Max Horn
7efba85064 Switch Tinsel, MADE and some of the video players to QueuedAudioStream
svn-id: r47178
2010-01-08 22:05:12 +00:00
Torbjörn Andersson
72eb9ec9ea Fixed a bunch of cppcheck warnings. Mostly about checking if a pointer is null
before freeing it, which isn't necessary.

svn-id: r46941
2010-01-03 19:37:43 +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
Benjamin Haisch
dbf850999a Remove some unused struct members
svn-id: r46245
2009-12-03 19:18:47 +00:00
Max Horn
df651bf20f Added Doxygen comments for the various engine namespaces (currently mostly without details; help filling these out is welcome)
svn-id: r46128
2009-11-24 22:10:14 +00:00
Benjamin Haisch
ecbd0a0d53 Optimized object property access speed
svn-id: r46102
2009-11-23 15:31:58 +00:00
Max Horn
51933629d1 Changed foo(void) to foo() in almost all non-backend source files
svn-id: r45616
2009-11-02 21:54:57 +00:00
Johannes Schickel
56181a475c Change "=" to ":=" in some module.mk files for consistency.
svn-id: r45364
2009-10-24 21:55:53 +00:00
Max Horn
2bbf708dea Introduced new type Common::DisposeAfterUse::Flag
svn-id: r45233
2009-10-18 19:41:59 +00:00
Benjamin Haisch
6cd612d359 Fix regression introduced by r44459; LGoP2 crashed after Infocom logo
svn-id: r44688
2009-10-06 07:35:21 +00:00
Filippos Karapetis
decdc5771a Applied patch #2872409 "MADE engine fixes" by agent-q, with one small modification (initialized _soundStarted in the ScriptFunctions constructor)
svn-id: r44589
2009-10-04 09:31:37 +00:00
Benjamin Haisch
af4c6c5f5b Fixed bug #2868938
svn-id: r44459
2009-09-29 08:18:40 +00:00
Benjamin Haisch
0335a37b05 Fixed clipping-related bug (bug #2826036)
svn-id: r44439
2009-09-28 07:28:20 +00:00
Filippos Karapetis
a983c88e37 Reverted parts of revisions #44292, #44293, #44295 and #44296, to prevent warnings and issues in compilers which don't support NORETURN
svn-id: r44312
2009-09-24 17:24:42 +00:00
Filippos Karapetis
c91f5759b9 MADE: Fixed some warnings about unreachable code
svn-id: r44296
2009-09-24 09:51:26 +00:00
Matthew Hoops
e858994060 Fix bug #2843050 (RTZ: Crash to desktop with demo). Don't assert out when a resource slot can't be found.
svn-id: r43676
2009-08-23 21:15:47 +00:00
Benjamin Haisch
0762bb7cf6 - PMV player: Use frame count from PVM file and fix incorrect "invalid chunk type" warning
- Fix sprite drawing glitch with vertically flipped sprites (bug #2825925)

svn-id: r43521
2009-08-18 19:42:13 +00:00
Johannes Schickel
b33b90ecd0 Made AGOS, DRASCULA, GOB, GROOVIE, MADE, SCUMM and TINSEL properly stop CD audio playback on engine quit. (This only problem affected playback from CD, not from ripped audio files)
svn-id: r43512
2009-08-18 15:31:26 +00:00
Johannes Schickel
7e71865e91 Move the event recorder to its own class (EventRecoder inside common/EventRecorder.[h/cpp]).
svn-id: r42751
2009-07-25 12:59:46 +00:00
Eugene Sandulenko
1bd6f6c99f Added game GUI options to advancedDetector and updated all engines
svn-id: r41272
2009-06-06 17:56:41 +00:00
Max Horn
7140dda5e5 MADE: cleanup
svn-id: r41070
2009-05-31 15:07:55 +00:00
Torbjörn Andersson
0999534749 The error() and warning() functions add ! and newline automatically. (I didn't
look at debug() and debugC(), since I'm really bored with this now. :-)

svn-id: r41061
2009-05-31 10:02:16 +00:00
Johannes Schickel
b3c6751b9b Strip trailing whitespaces in the whole code base.
svn-id: r40867
2009-05-24 15:17:42 +00:00
Filippos Karapetis
8b725eef83 Reduced the CPU load of screen effects, by reducing the number of palette changes. The visual differences are negligible, but CPU load went down by around 10%.
svn-id: r39404
2009-03-14 19:47:23 +00:00
Filippos Karapetis
79d8432128 Simplified screen effects. Removed copyRect() and reposition()
svn-id: r39401
2009-03-14 17:32:43 +00:00
Filippos Karapetis
6852080916 Merged loadRGBPalette() inside setRGBPalette() (that's the only place it's used and where the screen palette is set). Added a wrapper for copyRectToScreen(), to remove some duplicated code inside the ScreenEffects() class
svn-id: r39396
2009-03-14 15:43:37 +00:00
Filippos Karapetis
498a355a74 Reduced CPU usage of the MADE engine by about 10% (by profiling the code)
- Added delays in places where the screen gets updated
- Moved event polling inside sfPollEvent() (cause that's where events are polled), instead of after each opcode

svn-id: r39392
2009-03-14 14:58:19 +00:00
Filippos Karapetis
6225bf905f Do not update the screen while waiting
svn-id: r39390
2009-03-14 13:42:43 +00:00
Filippos Karapetis
7da95bbd00 Pushed up the simple script stack function in the header file (this helps isolate them too, so that script.cpp only contains script command functions now)
svn-id: r39389
2009-03-14 12:23:35 +00:00
Filippos Karapetis
5b8cdd502f Added file sizes of the various CD versions of Return to Zork to the detector, as supplied in patch #2629804. Also, updated the game descriptions to provide more information on the version detected
svn-id: r39360
2009-03-12 17:32:13 +00:00
Filippos Karapetis
a784baaae9 Added the Italian and French versions of Return to Zork, as supplied in bug report #2685032
svn-id: r39359
2009-03-12 17:07:13 +00:00
Filippos Karapetis
fd14ebba14 PMV player: stop reallocating the frame buffer on every frame, if its size hasn't been changed
svn-id: r39354
2009-03-12 08:14:05 +00:00
Benjamin Haisch
f525575495 - Applied patch #2668849 by sunmax
svn-id: r39271
2009-03-09 18:19:53 +00:00
Benjamin Haisch
72897a4b09 Added LGOP2 detection entries:
- German, supplied by windlepoons (bug tracker #2675695)
- French and Spanish, supplied by goodoldgeorg (bug tracker #2675759)

svn-id: r39270
2009-03-09 18:03:46 +00:00
Max Horn
f9ecd95d69 Whitespace cleanup: Convert space followed by tab to just tab
svn-id: r39203
2009-03-07 19:24:31 +00:00
Jordi Vilalta Prat
047f116515 Renamed MetaEngine::getCopyright() to getOriginalCopyright() to better match the meaning of the returned string, as discussed some time ago in scummvm-devel
svn-id: r39132
2009-03-05 12:04:58 +00:00
Max Horn
dd98126423 Engines: Fused several init&go methods into a single run method
svn-id: r39003
2009-03-01 04:42:46 +00:00
Max Horn
3fcbda829a Merged Engine::go() and ::init() into a new run() method (currently implemented by calling the existing init&go methods; to be cleaned up by engine authors
svn-id: r39002
2009-03-01 04:30:55 +00:00
Benjamin Haisch
ee1cae3ebc Removed unused variable
svn-id: r38372
2009-02-16 15:50:27 +00:00
Benjamin Haisch
22812367aa - Fixed/completed cd audio support (sfPlayCd and sfGetCdTime) for Manhole:N&E and RtZ CD
svn-id: r36217
2009-02-04 19:15:12 +00:00
Max Horn
28cf213605 Moved AdvancedDetector from common/ to engines/
svn-id: r36132
2009-01-29 22:13:01 +00:00
Filippos Karapetis
79709646fb Added some unused opcodes in Rodney
svn-id: r36057
2009-01-25 10:46:48 +00:00
Filippos Karapetis
3fb9e1e23a Added some information on sfPlayNote, sfStopNote, sfPlayTele, sfStopTele
svn-id: r36056
2009-01-25 10:16:00 +00:00
Filippos Karapetis
e46c1100a0 Removed leftover debug code
svn-id: r36055
2009-01-25 09:37:53 +00:00
Benjamin Haisch
6297561f7c - Implemented sound decompression for Manhole EGA
svn-id: r36048
2009-01-25 01:58:16 +00:00
Kari Salminen
dfab0ee6d0 Initialize variables that might not be initialized but still used later on line 422 in a debug function call (Fixes MSVC's warnings about 'potentially uninitialized local variable').
svn-id: r36031
2009-01-24 05:02:08 +00:00
Filippos Karapetis
17b82253e9 Removed leftover test code for MADE V1, used in Manhole EGA (though the sound effects in Manhole EGA are still not working)
svn-id: r36028
2009-01-24 01:03:06 +00:00
Benjamin Haisch
a8562cf64b - Implemented sfGetMusicBeat (used in several games as some kind of timer)
svn-id: r36023
2009-01-23 12:17:12 +00:00
Filippos Karapetis
ba469d3cbb Silenced MSVC warnings
svn-id: r36002
2009-01-22 19:09:05 +00:00
Max Horn
6692330c41 Fix warning
svn-id: r36000
2009-01-22 18:33:02 +00:00
Benjamin Haisch
5b8105afb3 - Added support for The Manhole EGA version
- Support for 'chunked' picture resources and EGA pictures
- Improved the mouth sync in RtZ (still not perfect, though)
- Removed obsolete TODOs
- Fixed sfPlayMovie to return if the movie playback was aborted or not; this is used by RtZ to determine if it should display the credits screen after the intro movie

svn-id: r35997
2009-01-22 13:04:29 +00:00
Paul Gilbert
df6aa6361d Slight changes to fx method #9 to more correctly match the original game
svn-id: r35893
2009-01-18 09:29:22 +00:00
Torbjörn Andersson
eb0ea6a297 Make sure that "quit" events are handled immediately. This fixes a warning - or
possibly worse - about an invalid opcode when quitting the game.

svn-id: r35879
2009-01-17 04:50:13 +00:00
Filippos Karapetis
68a20e2aba - Removed _gameVersion, engine versions are set in the game detection entries now
- Renamed ProjectReader -> ResourceReader
- Added some WIP code for the EGA version of the Manhole (still not working/disabled)
- The resource reader now closes the files it has opened correctly when it's deleted

svn-id: r35877
2009-01-16 23:20:17 +00:00
Filippos Karapetis
405680af6d Game database headers are verified now
svn-id: r35861
2009-01-14 11:18:14 +00:00
Torbjörn Andersson
b0fb307978 Fixed warnings.
svn-id: r35859
2009-01-14 05:49:18 +00:00
Filippos Karapetis
fa755b3729 Some updates/observations on script functions
svn-id: r35850
2009-01-13 21:08:22 +00:00
Filippos Karapetis
0ecaa8c4fd - PMV video headers are evaluated correctly now
- PMV video is now stopped correctly if the end of the video has been reached. Removed a relevant hack, which was caused due to an invalid memory read

svn-id: r35849
2009-01-13 20:36:52 +00:00
Filippos Karapetis
305954d34a Save game headers are now verified
svn-id: r35848
2009-01-13 19:29:55 +00:00