Commit Graph

306 Commits

Author SHA1 Message Date
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
77ef097723 GROOVIE: Load the 11H Mac installer file when present 2012-09-12 18:17:18 -04:00
Matthew Hoops
1d98435d34 GROOVIE: Add detection for 11H Mac 2012-09-12 18:07:00 -04:00
Matthew Hoops
7d684d1166 GROOVIE: Add a MusicPlayerMac_v2 for 11H Mac 2012-09-12 18:02:58 -04:00
Matthew Hoops
72a1140d57 GROOVIE: Rename MusicPlayerMac to MusicPlayerMac_t7g 2012-09-09 12:43:29 -04:00
Matthew Hoops
9780c8e56e GROOVIE: Add StuffIt archive code for 11H Mac 2012-09-09 12:32:34 -04:00
Jordi Vilalta Prat
f1819d8658 GROOVIE: ROQ Info blocks clean the buffers unconditionally.
This fixes some glitches on the Clandestiny trailer.
2012-09-05 18:31:42 +02:00
Johannes Schickel
31f339880d GROOVIE: Slight cleanup in querySaveMetaInfos. 2012-07-03 18:39:50 +02:00
Johannes Schickel
4fb9bceabc Merge pull request #246 from lordhoto/osystem-void-buffers
OSYSTEM: Use void buffers for screen/overlay/mouse buffers and proper pitch values for overlay code
2012-06-20 08:02:26 -07:00
Scott Thomas
06b905a218 GROOVIE: Fix 'off-by-one' when searching for ROQs by name 2012-06-17 16:27:49 +09:30
Johannes Schickel
2afc0a5fbc GROOVIE: Get rid of casts on OSystem::copyRectToScreen calls. 2012-06-16 02:38:59 +02:00
Johannes Schickel
a401f0a19e ALL: Replace cursorTargetScale in OSystem API with a simple "do not scale" logic.
All uses of the old target scale API actually wanted to disallow scaling of
the mouse cursor. This commit adapts our API to this and thus simplifies
backend implementations.

Some backends, most notable the Wii and Android, did some implementation of
the cursor target scale, which I didn't adapt yet. I added a TODO for the
porters there.
2012-06-03 02:02:57 +02:00
Johannes Schickel
f7d2cd7331 GROOVIE: Do not cast away const qualifier. 2012-04-05 00:40:30 +02:00
Scott Thomas
19d36330c5 GROOVIE: Detect if external music exists for the Music Enhancement Project.
T7G's music framework uses either all external or all XMIDI, so assume if one
external song is present, the entire music pack is.
2012-03-24 11:00:09 +10:30
Matthew Hoops
765a870445 GRAPHICS: Convert JPEG to the ImageDecoder API 2012-03-20 01:06:48 +01:00
Tarek Soliman
a4798602d7 JANITORIAL: Fix missing whitespace in pointer cast
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g'

This seems to have caught some params as well which is not undesirable IMO.
It also caught some strings containing this which is undesirable so I
excluded them manually. (engines/sci/engine/kernel_tables.h)
2012-02-15 10:07:10 -06:00
Scott Thomas
c23f8f856c GROOVIE: Prefer 'mask' animations to run at regular speed.
Not all 'mask' animations have sound, so need to mark preference for
regular speed for both 'mask' and 'teeth' animations.
2011-11-29 22:31:26 +10:30
Christoph Mallon
d485b36b45 GROOVIE: Use SWAP(). 2011-11-21 15:58:31 +01:00
Strangerke
7cf921814d GROOVIE: Add GUIO_NOASPECT 2011-10-24 06:42:30 +02:00
Eugene Sandulenko
32972a5ffb AD: Switched rest of the engines to new GUIO 2011-10-23 17:53:13 +01:00
Scott Thomas
862a4ca929 GROOVIE: Remove dither code from ROQ 2011-09-06 21:59:24 +09:30
Eugene Sandulenko
0dafa7f80f ALL: Reduce audio/ header dependency 2011-08-06 11:30:42 +01:00
Eugene Sandulenko
78f1ea7690 OSYSTEM: extended installTimerProc() with timer ID parameter 2011-08-06 11:28:35 +01:00
Johannes Schickel
09501be85b ENGINES: Clean up SaveStateDescriptor.
Now SaveStateDescriptor no longer subclasses HashMap. Instead all possible
saved meta data is included directly into SaveStateDescriptor.

This is slightly less flexible, but we never needed that flexibility so far.
On the other hand it should reduce the memory usage. At least on my system
(Linux/amd64) the old SaveStateDescriptor had a size of 928 and the new
SaveStateDescriptor has a size of 200.
2011-07-02 21:07:55 +02:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Tarek Soliman
d4b5c595c6 GROOVIE: flag all WIP games with ADGF_UNSTABLE
Groovie 2 games
2011-06-16 13:37:57 -05:00
Max Horn
3b5863834b GROOVIE: Document why I *think* kADFlagUseExtraAsHint is used 2011-06-14 18:52:09 +02:00
Max Horn
7c992d6598 DETECTOR: Merge ADParams into AdvancedMetaEngine 2011-06-14 18:17:01 +02:00
Thierry Crozat
06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00
Max Horn
0d581ba46d GROOVIE: Switch to alternate AdvancedMetaEngine, avoid ADParams 2011-06-10 22:15:42 +02:00
Max Horn
4827cc914a ENGINES: Change incorrect use of 'target' to 'gameid' 2011-06-10 22:15:40 +02:00
D G Turner
938415aca1 GROOVIE: Remove Unecessary debugger errorString() function. 2011-06-03 13:58:06 +01:00
Scott Thomas
ae4b298bbb GROOVIE: Fix MusicPlayerIOS volume not correctly restoring on new song 2011-06-03 19:49:56 +09:30
Scott Thomas
e23bd5b92b GROOVIE: Ensure entire v2 res name is loaded with terminating null 2011-06-03 19:47:28 +09:30
Matthew Hoops
3a506073c3 GROOVIE: Ensure the final character of the resource name is a null
Some filenames are exactly 12 bytes long ie. keyboard.vdx
2011-06-02 15:42:17 -04:00
Scott Thomas
dfb6822886 GROOVIE: Detect iOS platform based on binary existence
Change to choice of music file encoding means the gu16.m4a may not exist
2011-06-01 23:20:12 +09:30
Matthew Hoops
5bb4ef13c5 GROOVIE: Rename MusicPlayerMPEG4 to MusicPlayerIOS
More fitting now that other music formats can be used now
2011-05-31 14:25:20 -04:00
Matthew Hoops
aa49b38c5a Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	engines/groovie/script.cpp
2011-05-31 14:16:29 -04:00
Matthew Hoops
d3ea9ab2a9 GROOVIE: Use openStreamFile() to open iOS audio files
Now MP3, FLAC, Vorbis, and QuickTime/MPEG-4 audio files can be used interchangeably.
2011-05-31 14:06:46 -04: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
Thierry Crozat
3c59e37035 ENGINES: Unify engine names
This unifies the engine names in MetaEngine::getName() and the
credits. In particular drop "Engine" or "engine" from the names when
it was present and use expanded names in credits when the
MetaEngine uses it (e.g. "Beneath a Steel Sky" instead of "BASS").
2011-05-16 00:11:32 +01:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Matthew Hoops
a1d41da096 Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	audio/decoders/qdm2.h
	common/util.cpp
	engines/groovie/music.cpp
	engines/groovie/resource.h
	video/qt_decoder.cpp
	video/qt_decoder.h
2011-05-11 00:30:28 -04: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
spookypeanut
db24f1e068 GROOVIE: fix for bug #3093310
Instead of crashing if the save game isn't writable, popup a
gui message and then skip
2011-04-25 08:51:21 +01:00
Scott Thomas
accb0c2a5d GROOVIE: Add timer for MusicPlayerMPEG4 (required for music fade in/out) 2011-04-20 23:40:03 +09:30
Scott Thomas
daede376e1 GROOVIE: Tweak supernatural teeth detection (for VDX playback speed) 2011-04-20 23:40:02 +09:30
Scott Thomas
2cc7b80b34 GROOVIE: Set some T7G iOS m4a files to loop based on DOS XMI looping 2011-04-20 23:40:01 +09:30
Johannes Schickel
8ff527ac4e GROOVIE: Replace TODO about YUV data with a comment.
Since the surfaces in question are never used outside the ROQ code it is fine
to use a faked RGB pixel format even when they are actually YUV data.
2011-04-19 15:05:18 +02:00
Johannes Schickel
89fe3ff141 GROOVIE: Do not access Surface::bytesPerPixel anymore. 2011-04-17 20:56:16 +02:00
Johannes Schickel
aca6733721 GROOVIE: Prefer Surface::create taking a PixelFormat over the one taking a byte depth.
Groovie seems to use Graphics::Surface also to store YUV data, I used a fake
PixelFormat setup there and added a TODO about it.
2011-04-17 16:26:30 +02:00
Scott Thomas
f33810a8c0 GROOVIE: Implement resource search-by-name for v2 games 2011-04-15 21:46:08 +09:30
Scott Thomas
8e9dbe5c3d GROOVIE: Use uint32 when searching for a video id by name
This brings ResMan::getRef into line with the rest of the engine.
2011-04-15 21:46:06 +09:30
Max Horn
2e095e25f2 ALL: centre -> center 2011-04-14 14:34:28 +02:00
Max Horn
84184aabc0 ALL: colour -> color 2011-04-14 14:12:35 +02:00
Matthew Hoops
6d153f311c Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	video/qt_decoder.cpp
2011-04-13 16:04:29 -04:00
Scott Thomas
47c2a9adbe GROOVIE: MPEG4 player should override unload so scripts can stop music 2011-04-13 22:22:19 +09:30
Scott Thomas
f54769f987 GROOVIE: Use provided OCReMix song for T7G iOS credits 2011-04-13 22:19:21 +09:30
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
Scott Thomas
2e59957471 GROOVIE: T7G iOS isn't a CD game - don't check or prompt user 2011-04-11 19:33:01 +09:30
Scott Thomas
412a152e6b GROOVIE: T7G iOS patches in 7/11 soundtrack files during intro sequence 2011-04-11 19:27:28 +09:30
Scott Thomas
5c4d7baa06 GROOVIE: Determine correct MPEG4 resource to load for based on fileref 2011-04-08 21:08:47 +09:30
Scott Thomas
c44b509b05 GROOVIE: Store resource name in ResInfo struct 2011-04-08 21:00:59 +09:30
Matthew Hoops
25236ebde1 GROOVIE: Implement MusicPlayerMPEG4::updateVolume() 2011-04-07 20:34:54 -04:00
Matthew Hoops
9c2fc6721d GROOVIE: Hook into the new QuickTimeAudioStream code 2011-04-07 19:40:07 -04:00
Scott Thomas
d40874d6f4 GROOVIE: Add detection for T7G iOS based on m4a files 2011-04-08 07:21:21 +09:30
Matthew Hoops
af59f33b7b GROOVIE: Add a stub MPEG4 music player 2011-04-07 10:52:58 -04:00
Scott Thomas
d5ff478100 GROOVIE: Fix brace formatting. 2011-04-08 00:17:59 +09:30
Scott Thomas
7c39b844b8 GROOVIE: Add additional play-speed modes to T7G.
These two speed modes enable faster movement throughout the mansion.
iOS mode matches the behavior of the official iOS release while
tweaked mode additionally uses original framerate for 'teeth'
animations.
2011-04-07 23:38:35 +09:30
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
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
79ba16a89d GROOVIE: Set global volume levels 2011-03-19 16:04:52 +01:00
dhewg
12a561f119 GROOVIE: Mark overwritten members as virtual 2011-03-04 21:31:14 +01:00
Jordi Vilalta Prat
dd43dfc81c GROOVIE: Simplify the cursor palette reading. 2011-02-16 12:25:11 +01:00
Johannes Schickel
5d9e69146c GROOVIE: Adapt to setPalette/grabPalette RGBA->RGB change. 2011-02-14 17:08:32 +01:00
Max Horn
42ab839dd6 AUDIO: Rename sound/ dir to audio/
svn-id: r55850
2011-02-09 01:09:01 +00:00
Max Horn
ab039812e7 COMMON: OSystem now has a PaletteManager
svn-id: r55806
2011-02-07 17:52:38 +00:00
Matthew Hoops
c18035c07a GROOVIE: Disable other T7G Mac entries as they should no longer be needed
svn-id: r55765
2011-02-04 15:42:58 +00:00
Matthew Hoops
2be57434a1 COMMON: Only take the md5 of the resource fork data section
Since various apps can modify the type/creator of the files, we can't rely on the header of the resource fork to take the md5. I've therefore also recalculated all of the detector entries (all 5 of them) that use the Mac resource fork code.

svn-id: r55764
2011-02-04 15:27:56 +00:00
Jordi Vilalta Prat
2f7c04e54b GROOVIE: Fix a memory leak reported by cppcheck.
svn-id: r55150
2011-01-07 17:44:20 +00:00
Henry Bush
49d529cb7a GROOVIE: Add two new t7g detection entries, one from bug tracker, one from me
svn-id: r54961
2010-12-19 08:56:42 +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
Max Horn
aa54388de0 ENGINES: Do not include engines/savestate.h from engines/game.h
svn-id: r54119
2010-11-07 17:15:46 +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
Jordi Vilalta Prat
9ab69ab6f4 GROOVIE: Fix bug #3095031 (regression in Russian T7G).
Additionally fixed some NEWS file punctuation.

svn-id: r53874
2010-10-27 14:31:20 +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
Jordi Vilalta Prat
806ee79a7b GROOVIE: Improve sound handling.
- Obey the mute setting.
- Report the supported music types.

svn-id: r52633
2010-09-08 09:37:33 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Filippos Karapetis
8145fea6b9 Silenced false positive warning in MSVC
svn-id: r51274
2010-07-25 13:32:15 +00:00
Jordi Vilalta Prat
8cc6d8d0eb GROOVIE: Fix compilation.
svn-id: r51206
2010-07-23 13:05:16 +00:00
Jordi Vilalta Prat
a92576f08b GROOVIE: Optimize the VDX player.
- Make some small optimizations to the VDX player. The changes aren't
  noticeable on desktop computers, but it showed changes on the profiler.
  Let's see if it helps limited platforms.
- Clarify a few variable names and clean their usage.

svn-id: r51205
2010-07-23 12:56:57 +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
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00