Commit Graph

111 Commits

Author SHA1 Message Date
Torbjörn Andersson
c3f3d9f3f2 Made Gobliiins less of a CPU hog by adding some strategic delays and
turning on the screen auto-dirtying - some as Simon uses. It's not perfect
by any means, but it may be good enough for 0.8.0 at least.

svn-id: r18649
2005-08-10 15:48:50 +00:00
Torbjörn Andersson
e64afc23b4 Cleanups. Mostly removal of seemingly unused variables and stuff.
svn-id: r18639
2005-08-08 20:20:00 +00:00
Eugene Sandulenko
6b4484472b Remove trailing whitespaces.
svn-id: r18604
2005-07-30 21:11:48 +00:00
Eugene Sandulenko
ba275dfd58 Some stubs for gob2.
Improved debug output.

svn-id: r18556
2005-07-19 09:10:05 +00:00
Torbjörn Andersson
c598bb78bb Cleanup.
svn-id: r18529
2005-07-10 13:37:03 +00:00
Max Horn
8b1d7b9166 When including files from common/, explicitly use the common/ prefix
svn-id: r18444
2005-06-24 15:23:51 +00:00
Lars Persson
9fc959e63d Changed from char to int8 in a number of places. This makes not assume the typ of char regardless of any compiler flags. Now looks very nice on the Symbian platfor.
svn-id: r18435
2005-06-22 19:32:10 +00:00
Torbjörn Andersson
43bc76a29c Added temporary variables for readability.
svn-id: r18421
2005-06-21 13:14:56 +00:00
Lars Persson
82f5454246 Bug fix for inter_execPtr beeing a char*. Char is not the same defined typ on all targets. On symbian a char is unsigned char but Gob is assuming int in this case.
len = *(int8*)inter_execPtr++; // must be a signed char typ and char is not default signed on all platforms.

svn-id: r18393
2005-06-14 20:20:57 +00:00
Lars Persson
327ec439a5 Changed palanim datatype from char to byte
svn-id: r18392
2005-06-14 20:05:31 +00:00
Lars Persson
655fb934a8 Added struct packning to palette struct && added check for define __WINS__ for symbian build
svn-id: r18391
2005-06-14 20:04:26 +00:00
Lars Persson
1d9930e8d9 Added __WINS__ defintion check for the Symbian integration so the right function is used.
svn-id: r18390
2005-06-14 20:01:46 +00:00
Gregory Montoir
54df4a6e5b VGAVideoDriver::drawLine implementation
svn-id: r18360
2005-06-06 20:42:44 +00:00
Eugene Sandulenko
b59ef3cd71 Fix bug #1209059 "GOB: Gobliiins English Floppy version crash"
svn-id: r18268
2005-05-26 20:51:01 +00:00
Eugene Sandulenko
558308aa99 Include gob3 md5 from bugreport #1206539 "GOB: Goblins 3 MD5 Report". Although
it will be useless at least for some months :)

svn-id: r18233
2005-05-23 20:53:54 +00:00
Max Horn
e72b33e56f Oops, was the wrong MD5, forgot to only compute it for the first MB. Now verified by letting ScummVM compute the checksum (note: ScummVM runs into a deep freeze running the gob1 target for the woordruff game data, very bad)
svn-id: r18157
2005-05-18 08:40:46 +00:00
Max Horn
8d782007c1 Added my Woodruff version to the MD5 list
svn-id: r18137
2005-05-17 11:46:07 +00:00
Torbjörn Andersson
af462aceaa Added comment about which version of Woodruff I added an MD5 sum for.
svn-id: r18106
2005-05-15 13:39:27 +00:00
Eugene Sandulenko
19d238b85e Check MD5 at runtime, so game features could be set at run time.
svn-id: r18084
2005-05-13 21:24:30 +00:00
Torbjörn Andersson
564c30a9ad Added MD5 for (another) Gobliiins 1 CD. See bug report #1201233. Made a few
other game detection-related changes, but they're mostly cosmetical at this
stage.

svn-id: r18082
2005-05-13 16:56:53 +00:00
Max Horn
2de46dc8eb Moved some more stuff to namespace Audio (enough for tonight)
svn-id: r18040
2005-05-11 00:01:44 +00:00
Max Horn
1a615346ab Moved class SoundMixer to Audio::Mixer (didn't call the namespace 'Sound' because we already have many classes with that name)
svn-id: r18039
2005-05-10 23:48:48 +00:00
Max Horn
b75c969e66 Moved class File and the MD5 stuff to namespace Common
svn-id: r18037
2005-05-10 22:56:25 +00:00
Torbjörn Andersson
e27f1456ff The comment about the DOS version being sold without copy protection info
may not be correct after all, so I've removed it.

svn-id: r18002
2005-05-09 13:29:04 +00:00
Torbjörn Andersson
5093be8401 Added Gobliiins MD5 sums provided by Florian Zeitz.
svn-id: r17993
2005-05-09 06:59:32 +00:00
Max Horn
cca744f69a Comply to our coding conventions
svn-id: r17975
2005-05-08 21:49:52 +00:00
Torbjörn Andersson
c6abbb225e Added MD5 for The Bizarre Adventures of Woodruff and the Schnibble.
svn-id: r17944
2005-05-07 13:40:06 +00:00
Torbjörn Andersson
d08c307870 Initial game detection support. I've added the MD5 sums for the games and
demos I have, except for the Woodruff game which I don't have on this
particular computer. (I'll add that one later, if no one beats me to it.)

svn-id: r17936
2005-05-06 17:04:33 +00:00
Eugene Sandulenko
5c426e6908 Patch #1196638 'GOB: Simple "beeper"'. Thanks eriktorbjorn.
svn-id: r17935
2005-05-06 15:59:33 +00:00
Torbjörn Andersson
e42ea7f20c Oops.
svn-id: r17921
2005-05-05 14:38:32 +00:00
Torbjörn Andersson
f1d59b4194 Applied patch #1195190. This may help the game run on 64-bit systems, but I
don't know anyone who can verify that.

svn-id: r17914
2005-05-05 11:37:41 +00:00
Torbjörn Andersson
fd326b4ce2 Cleanup
svn-id: r17913
2005-05-05 11:11:49 +00:00
Torbjörn Andersson
d1234bfdee Cleanup.
svn-id: r17908
2005-05-04 11:41:07 +00:00
Torbjörn Andersson
627095f1a6 The mult_playSound() function makes absolutely no sense at all to me, so
I've changed it to something that doesn't trigger assertions in the
Gobliiins demo intro.

svn-id: r17907
2005-05-04 07:32:12 +00:00
Torbjörn Andersson
1da2f1b627 Whitespace
svn-id: r17906
2005-05-04 06:44:42 +00:00
Torbjörn Andersson
5f7b3d8cf2 Use File::size() instead of stat() to find the size of a file.
svn-id: r17900
2005-05-03 08:37:04 +00:00
Torbjörn Andersson
d6fb5517ed This should fix the negative frequency bug that caused some sound effects
to not be played, and probably fixes wrong frequency on some that were
played. It's all guesswork, though. I don't know if this is what the
original did.

svn-id: r17882
2005-05-01 10:15:30 +00:00
Torbjörn Andersson
ac989534a7 Support for looping sounds.
svn-id: r17872
2005-04-30 11:32:18 +00:00
Torbjörn Andersson
3911fc6edb Added comment.
svn-id: r17865
2005-04-29 15:13:21 +00:00
Torbjörn Andersson
5a2d871a2b Replaced rand()/srand() with RandomSource. Of course, util_getRandom() is a
pretty unnecessary function - we could call RandomSource directly - but
let's take this one thing at a time.

svn-id: r17863
2005-04-29 15:01:03 +00:00
Torbjörn Andersson
9bd7d78199 Some limited - and quite possibly wrong - sound effects support. I have
assumed, given their tiny size, that the sound samples are 8-bit mono.

Looping is not implemented yet.

Some sounds are skipped since the engine asks that they be played at a
negative sample rate. (I think there is more to this than just a simple
signed/unsigned issue, because they sound wrong even if I treat the
frequency as unsigned.)

svn-id: r17862
2005-04-29 10:07:00 +00:00
Torbjörn Andersson
589b65945a This should fix a crash which could happen when placing several objects too
close to each other on the ground. (Happened to me on the first level after
destroying the voodoo doll, where I'd drop the banana, the soap and the
false nose close to each other on the ground after using them.)

Reasoning behind the change:

From what I understand, map_itemsMap[] contains information for each "cell"
of the map about which objects are there. Each cell can contain two objects
which are stored in the upper and lower byte of a 16-bit word.

When dropping an object, it is written into map_itemsMap[], but not just to
the indicated cell but also to a few of the surrounding ones. Presumably to
make it easier to pick it up afterwards.

When writing an object to a cell, we check if one of the bytes is already
occupied. If it is, write to the other byte. Otherwise, write to that byte.
(If both bytes are occupied, one will be overwritten.)

The old code assumed that if one byte was free at position (x,y) the same
byte would automatically be the free one in the surrounding cells. This
could cause bad values in the array, since the item was added to an
existing value, rather than replacing it.

This new code makes the check for each cell that is modified. (It also gets
rid of some code duplication.)

svn-id: r17851
2005-04-28 10:34:48 +00:00
Torbjörn Andersson
5d392d90d6 We need to use unsigned chars here to be able to print accented characters,
e.g. in the German cutscenes.

svn-id: r17805
2005-04-26 06:34:52 +00:00
Torbjörn Andersson
74ae914df2 Make it possible to specify language at run-time, since the Gobliiins 1
support for other languages appears to work at least fairly well, and this
makes it easier to test it.

svn-id: r17804
2005-04-26 06:29:53 +00:00
Torbjörn Andersson
21ea71a762 Keep track per piece whether or not it was dynamically allocated, otherwise
we'll end up trying to free invalid pointers. (Happened to me at the end of
the level where you get the voodoo doll.)

svn-id: r17802
2005-04-25 19:03:13 +00:00
Torbjörn Andersson
f08a767aa8 This one looks wrong too, but I don't think it has caused any crash for me.
Not yet, at least. And now, hopefully, it never will.

svn-id: r17801
2005-04-25 18:53:58 +00:00
Torbjörn Andersson
eb3b057836 This ought to fix bug #1188910
svn-id: r17796
2005-04-25 05:14:01 +00:00
Max Horn
ff19273ae6 Must call openCD to support real Audio CD tracks
svn-id: r17747
2005-04-22 08:39:51 +00:00
Torbjörn Andersson
cca9fb4804 Initialized variable to avoid Valgrind warning.
svn-id: r17732
2005-04-21 06:53:15 +00:00
Torbjörn Andersson
5076c6a231 Call initCommonGFX() to set the graphics mode etc.
svn-id: r17684
2005-04-19 08:29:43 +00:00