Commit Graph

556 Commits

Author SHA1 Message Date
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
Eugene Sandulenko
d577d863ce CINE: Fix bug #2812694.
Bug #2812694: "CINE: Operation Stealth german crash". Our code
assumed that there exists only 256-color version which is not
the case for German version. Added code to store background
format. Old savegames are broken and could not be fixed.

Bumped savefile version.

svn-id: r49699
2010-06-15 10:17:18 +00:00
Eugene Sandulenko
28f6f7a3f0 Split out detection tables for Cine engine
svn-id: r49691
2010-06-15 10:14:04 +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
Eugene Sandulenko
15c533d2c2 Implement FR #2841445: FW: Restart doesn't work
svn-id: r49096
2010-05-19 12:34:10 +00:00
Eugene Sandulenko
2be9bb3d5f Implement FR #2841494: FW: Pause doesn't work
svn-id: r49095
2010-05-19 12:17:59 +00:00
Eugene Sandulenko
0078818549 Patch #2987340: GSoC: CINE: Hide cursor when viewing inventory
svn-id: r48994
2010-05-09 21:15:58 +00:00
Max Horn
970745e60c Move DebugChannel related code to new header
svn-id: r48935
2010-05-04 11:59:22 +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
76553e6418 CINE: Get rid of some global constructor uses
svn-id: r48843
2010-04-28 22:24:11 +00:00
Max Horn
460d69e885 COMMON: Move DebugChannel stuff into a new DebugMan singleton
svn-id: r48821
2010-04-27 21:40:52 +00:00
Max Horn
37b7be4519 CINE: Change Doxygen commands to match our CFC
svn-id: r48764
2010-04-21 21:22:43 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Kari Salminen
5d62e682cc Cine: Fix regression in executePlayerInput (Caused slowness when clicking when moving).
The regression was caused by r47505.

svn-id: r48373
2010-03-23 22:54:32 +00:00
Max Horn
cac0ac66e2 COMMON: Get rid of Common::StringList
svn-id: r48287
2010-03-18 15:54:40 +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
Johannes Schickel
17fef29507 Get rid of the workaround for a g++ (code generation) bug on AMD64, by passing a reference of a Color instance to saturatedAddColor instead of a value.
svn-id: r48006
2010-02-08 20:29:19 +00:00
Johannes Schickel
c2932942c8 According to Buddha^ it should be fine to calculate (and set) the AMIGA dim palette in Palette::setGlobalOSystemPalette.
svn-id: r48005
2010-02-08 20:28:13 +00:00
Johannes Schickel
420569626c Fix return of a reference to a temporary object introduced with r47766. (Hopefully this "workaround" will work also for Chrilith's compiler ;-).
svn-id: r47771
2010-01-31 18:29:54 +00:00
Johannes Schickel
3dd46d50f5 Slight fixes to comply with our coding guidelines.
svn-id: r47770
2010-01-31 18:24:49 +00:00
Chris Apers
3ed2192923 Prevent my compiler to crash and object copy hopefully it doesn't break something
svn-id: r47766
2010-01-31 18:08:51 +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
a28ac2881a Hopefully fix highlight background color in PC versions of CinE games.
svn-id: r47556
2010-01-25 17:21:55 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Kari Salminen
69e6b2a27a Cine: executePlayerInput: Operation Stealth: Fix target object name not disappearing when passing over an empty area with a verb already chosen.
svn-id: r47519
2010-01-24 20:23:09 +00:00
Kari Salminen
710dd33592 Cine: executePlayerInput: Fix broken Y-movement in Operation Stealth (D'oh! Copy-pasted X to where Y was meant :-P).
- Hopefully NOW things should work without r33872!

svn-id: r47518
2010-01-24 20:16:16 +00:00
Kari Salminen
bd7b9400a6 Cine: executePlayerInput: Add TODO about investigating why some buttons don't work currently.
svn-id: r47517
2010-01-24 19:57:23 +00:00
Kari Salminen
ab730891ad Cine: executePlayerInput: Revert r33872 as things should work without it now.
With the latest changes to executePlayerInput we
should now be able to free the girl at the bottom of the
ocean without the r33872.

The commit log from r33872 was:

"Fix for bugging moving at the bottom of the ocean when trying to free the girl from the ropes and swimming to the surface. Some global variables related to mouse position weren't being updated in executePlayerInput, now they are and things seem to work. Also enables moving in the labyrinth arcade sequence at the palace."

svn-id: r47516
2010-01-24 19:52:11 +00:00
Kari Salminen
c19afec75a Cine: executePlayerInput: Add makeActionMenu-part to keyboard handling and a couple of TODOs for Operation Stealth.
- NOTE: This doesn't seem to work correctly yet.
   My current guess is that it has to do with how
   some keyboard events are handled in cine/main_loop.cpp's
   processEvent-function and some in cine/various.cpp's
   executePlayerInput.

svn-id: r47515
2010-01-24 19:47:53 +00:00
Kari Salminen
f2882cc2df Cine: executePlayerInput: Implement moving using keyboard for Operation Stealth.
svn-id: r47513
2010-01-24 19:14:09 +00:00
Kari Salminen
d8cb07251e Cine: executePlayerInput: Implement 'A player command is given, left mouse button is down, right mouse button is up'-case for Operation Stealth.
- Also changed a do-while -loop into a
   while-loop as it should be for both
   FW and OS according to disassembly.

svn-id: r47512
2010-01-24 18:58:57 +00:00
Kari Salminen
865b176b15 Cine: executePlayerInput: Fix 'No player command is given, left mouse button is down, right mouse button is up'-case for Operation Stealth.
svn-id: r47510
2010-01-24 18:40:29 +00:00
Kari Salminen
650a9b9c49 Cine: executePlayerInput: Fix 'left and right mouse buttons are up'-case for Operation Stealth.
svn-id: r47509
2010-01-24 18:27:56 +00:00
Kari Salminen
7ce227b670 Cine: executePlayerInput: Combine 'left mouse button is up, right mouse button is down'-cases into one code part.
Additionally:
 - Operation Stealth specific: Make makeActionMenu() use canUseOnItemTable.
   This would seem to be the correct way according to disassembly
   (Although there is of course a possibility that I have overlooked
   some part of the code).

svn-id: r47508
2010-01-24 18:20:22 +00:00
Kari Salminen
40cb795fe7 Cine: executePlayerInput: Name used keys in switch-clause (F1-F10, Ins, Del).
svn-id: r47507
2010-01-24 17:56:23 +00:00
Kari Salminen
414eadfb2a Cine: executePlayerInput: Combine mouse handling plus a few other things.
- Combines mouse position and button state fetching
   from two branches (allowPlayerInput / !allowPlayerInput)
   into a single loop with a little more exotic while-clause.
   NOTE! Added manageEvents-call into the unified version although
   there was no manageEvents-call in one of the versions that was
   combined. Tested a little and didn't seem to matter, but hopefully
   won't cause any regressions!
 - Limit first possible 'renderer->setCommand(commandBuffer)' call
   to Future Wars only (Checked with FW & OS disassembly).
 - Combined all cases of 'left and right mouse buttons are down'
   into a single if-clause (All those cases call makeSystemMenu).

svn-id: r47505
2010-01-24 17:46:37 +00:00
Kari Salminen
34581f12e4 Cine: Document branches in executePlayerInput and remove dead code (if-clauses that are always true or always false).
svn-id: r47503
2010-01-24 16:40:37 +00:00
Kari Salminen
53d8bd9760 Cine: Cleanup (Use an enumeration for mouse button states rather than values 1 and 2).
svn-id: r47502
2010-01-24 16:25:08 +00:00
Max Horn
4b996e7de7 Reorder params to Audio::makeRawMemoryStream
svn-id: r47492
2010-01-23 23:55:35 +00:00
Max Horn
5ee6c79b5d Convert more engines from Mixer::playRaw to Mixer::playInputStream
svn-id: r47377
2010-01-19 11:22:14 +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
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
f720d99b0a Switch Mixer::playInputStream to use DisposeAfterUse::Flag
svn-id: r47182
2010-01-08 22:09:43 +00:00
Marcus Comstedt
40f9506163 The default keycolor for mouse pointers used to be 255.
This makes sense as a default for CLUT8 modes, but not really
for anything else.  As part of the gsoc2009-16bit merge, the
default was changed to "all ones", with extra code in the SDL
backend to truncate this to the depth of the mode.  However,
"all ones" (white) still isn't a very useful default for RGB modes.
So rather than jumping through hoops to provide a bad default,
it's better to remove the default altogether.  Engines which relied
on the old default of 255 have been updated to specify it explicitly.

svn-id: r47118
2010-01-07 15:07:36 +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
Eugene Sandulenko
5bf7b71c0f Fill out doxygen comment about supported games
svn-id: r46235
2009-12-01 22:21:16 +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
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