Commit Graph

17573 Commits

Author SHA1 Message Date
Sven Hesse
8f621b3d2c GOB: Make o4_playVmdOrMusic use the new VideoPlayer interface
svn-id: r51876
2010-08-08 00:46:57 +00:00
Sven Hesse
737ef02707 VIDEO/GOB: Stub hasEmbeddedFile / getEmbeddedFile
Stubbing CoktelDecoder::hasEmbeddedFile() and
CoktelDecoder::getEmbeddedFile(), formerly hasExtraData/getExtraData.

svn-id: r51875
2010-08-08 00:46:34 +00:00
Sven Hesse
f956f059e3 GOB: Minor cleanup
svn-id: r51873
2010-08-08 00:45:27 +00:00
Sven Hesse
61739bc180 GOB: Fix video workaround detection
svn-id: r51872
2010-08-08 00:44:56 +00:00
Sven Hesse
2296aad042 VIDEO/GOB: Fix IMD playing
Fix IMD playing for some fringe cases, especially when seeking
beforehand.

svn-id: r51871
2010-08-08 00:44:33 +00:00
Sven Hesse
6e5518271b GOB: Use the new VideoPlayer interface for coktel.imd
svn-id: r51869
2010-08-08 00:43:45 +00:00
Sven Hesse
a824bcefaa GOB: Make playImd() use the new VideoPlayer interface
svn-id: r51868
2010-08-08 00:43:22 +00:00
Sven Hesse
fecbdf60a9 VIDEO/GOB: Implement IMD frame rendering
svn-id: r51867
2010-08-08 00:42:59 +00:00
Sven Hesse
6172fe8ea7 VIDEO/GOB: Implement IMD frame decoding
Rendering the frame video data is still stubbed out.

svn-id: r51866
2010-08-08 00:42:30 +00:00
Sven Hesse
f19be90c37 VIDEO/GOB: Implement IMD loading
svn-id: r51865
2010-08-08 00:41:56 +00:00
Sven Hesse
31ecaa5275 GOB: Make o2_playImd use the new VideoPlayer interface
svn-id: r51864
2010-08-08 00:41:22 +00:00
Sven Hesse
160172d0e8 GOB: Hook the new IMDDecoder into VideoPlayer
svn-id: r51863
2010-08-08 00:40:52 +00:00
Sven Hesse
bb746b5b61 GOB: Properly utilize FixedRateVideoDecoder::getTimeToNextFrame()
svn-id: r51861
2010-08-08 00:40:00 +00:00
Sven Hesse
f7363fdb10 VIDEO/GOB: Add CoktelDecoder::getDirtyRects()
This allows for the client code to only update the parts of the
video frames that actually changed.

svn-id: r51859
2010-08-08 00:39:03 +00:00
Sven Hesse
12c9e895b5 VIDEO/GOB: Add CoktelDecoder::setXY()
This allows for positioning the video within the video memory.

svn-id: r51858
2010-08-08 00:38:26 +00:00
Sven Hesse
9255d2e217 VIDEO/GOB: Add setSurfaceMemory() to CoktelDecoder
This allows the video player to directly draw onto its own video
memory without having to blit each frame another time.
Will also be needed for proper handling of transparency in Woodruff.

svn-id: r51857
2010-08-08 00:37:52 +00:00
Sven Hesse
863872216f GOB: Basic video playback using the new interface
Implement basic video playback using the new VideoPlayer interface.
Still quite stubby, still lots of stuff missing.

svn-id: r51856
2010-08-08 00:37:19 +00:00
Sven Hesse
9c2172b901 GOB: Fix an copy&paste error
Fixing an accidentally overwritten video file name

svn-id: r51855
2010-08-08 00:36:47 +00:00
Sven Hesse
59b9b3bc2b GOB: Implement the new VideoPlayer::openVideo function further
svn-id: r51853
2010-08-08 00:35:50 +00:00
Sven Hesse
4415953393 GOB: Add constants for different surfaces/sprites
Add
static const int kFrontSurface   = 20;
static const int kBackSurface    = 21;
static const int kAnimSurface    = 22;
static const int kCursorSurface  = 23;
static const int kCaptureSurface = 30;
to class Draw and substitute the raw numbers in other files with
those aliases, for readability.

svn-id: r51852
2010-08-08 00:35:18 +00:00
Sven Hesse
f8a43ee35f GOB: Stub the new VideoPlayer interface
This is will be the new, less convoluted interface for playing videos
within the gob engine. No actual functionality is implemented yet, and
old functions are mostly commented out for now.

svn-id: r51851
2010-08-08 00:34:33 +00:00
Sven Hesse
a802e1e64f VIDEO: Stub a VideoDecoder-like CoktelDecoder
This creates a new CoktelDecoder class using the VideoDecoder
interface, which will eventually become the new way to decode
PreIMD, IMD and VMD videos.
Since the VideoPlayer in gob is not yet ready for this, we're
disabling all video playback in the gob engine for now.

svn-id: r51850
2010-08-08 00:33:59 +00:00
Filippos Karapetis
d365b71945 SCI: Turned a warning into an error
svn-id: r51838
2010-08-07 16:42:10 +00:00
Martin Kiewitz
adc243c5ac SCI: changing kBaseSetter behaviour when scaled
fixes lb2 docks issue (bug #3036306)

svn-id: r51835
2010-08-07 15:02:08 +00:00
Florian Kagerer
f4d38ccd40 LOL: added english floppy version
svn-id: r51834
2010-08-07 14:38:07 +00:00
Martin Kiewitz
d2d22de911 SCI: removing kDoBresen hack for sq5
adding detailed comment about sq5 scrubbing issue
not 100% fixed (waltervn should look into it), but at least it works now

svn-id: r51833
2010-08-07 13:56:31 +00:00
Martin Kiewitz
1c1eff9ec5 SCI: adding sq5 scrubbing patch
(for testing only, i'm not sure if it works because i'm unable to reproduce the bug anymore)

svn-id: r51832
2010-08-07 13:40:14 +00:00
Filippos Karapetis
9aa3f25499 SCI: Improve output when VM_DEBUG_SEND is set
svn-id: r51831
2010-08-07 12:36:17 +00:00
Filippos Karapetis
421ac25628 SCI: Added support for the inbuilt leftover parser in XMAS1990
svn-id: r51829
2010-08-07 08:59:43 +00:00
Filippos Karapetis
7b7364a80f SCI: Fixed script bug #3039395 - "KQ5: Crash when opening leather pouch"
svn-id: r51823
2010-08-07 01:27:14 +00:00
Filippos Karapetis
978e52379f SCI: Fixed script bug #3040012 - "PEPPER: Book crash"
svn-id: r51822
2010-08-07 01:14:58 +00:00
Filippos Karapetis
ab79d58153 SCI: Fixed script bug #3040142 - "PEPPER: Crash on Pugh's office"
svn-id: r51821
2010-08-07 01:09:32 +00:00
Filippos Karapetis
0cb8e130d8 SCI: Changed a warning into a debugC
svn-id: r51820
2010-08-07 00:59:40 +00:00
Filippos Karapetis
53474618ac SCI: Fixed script bug #3039036 - "Castle of Dr. Brain: Crash at robot jokes"
svn-id: r51817
2010-08-07 00:34:38 +00:00
Filippos Karapetis
7935ebf4a3 SCI: Converted an error back into a warning when loading games
svn-id: r51816
2010-08-07 00:22:57 +00:00
Filippos Karapetis
cb0aa86798 SCI: Fixed 2 SQ1 script bugs (#3040894 and #3040905)
svn-id: r51815
2010-08-06 23:56:19 +00:00
Filippos Karapetis
ab0d57d73d SCI: Some cleanup of the script patch code. Added a PATCH_MAGICDWORD define to make the patch tables easier to understand
svn-id: r51811
2010-08-06 22:51:25 +00:00
Filippos Karapetis
57fd588327 SCI: Split the new script patch code in a separate file
svn-id: r51810
2010-08-06 22:36:46 +00:00
Martin Kiewitz
dfe4c8d9a0 SCI: fixing typo
svn-id: r51809
2010-08-06 22:14:38 +00:00
Filippos Karapetis
92dfff36bf SCI: Fixed script bug #3040844 - "QFG3: Crash near the end"
svn-id: r51808
2010-08-06 21:52:16 +00:00
Martin Kiewitz
8ddcf3942b SCI: adding patch for lsl6 issue
fixes crashing when dieing at least in german lsl6, caused by temp memory space corruption. Also happened in sierra sci.

svn-id: r51807
2010-08-06 21:51:45 +00:00
Filippos Karapetis
96fd9e6c82 SCI: Added support for scripts that have more than one export table. Fixes bug #3039785 - "Conquests of Camelot: Crash in Glastonbury Tor"
svn-id: r51805
2010-08-06 21:21:39 +00:00
Filippos Karapetis
d0ff92e2a0 SCI: Fixed an off-by one error in the kDoBresen sanity check
svn-id: r51804
2010-08-06 21:18:43 +00:00
Filippos Karapetis
346bc3f7e0 SCI: Added a workaround for kAbs to properly support patched scripts by NRS in QFG1VGA. Properly fixes bug #3037218 - "QFG1 VGA: kAbs signature mismatch" (thanks to wjp for his help on this)
svn-id: r51799
2010-08-06 20:29:27 +00:00
Martin Kiewitz
7b0a5ec099 SCI: adjusting patch to write 0 instead of 1
patch still worked, but 0 was meant to be there thx to lskovlun to point this out

svn-id: r51796
2010-08-06 19:13:19 +00:00
Martin Kiewitz
753c431937 SCI: adding script patching
including a patch for hoyle 4 and commenting out the workaround code inside kDisposeWindow

svn-id: r51795
2010-08-06 18:54:58 +00:00
Filippos Karapetis
993c8b70f2 SCI: Fixed script bug #3040469, "QFG2: Second crash in thief's job"
svn-id: r51792
2010-08-06 17:29:17 +00:00
Filippos Karapetis
91753047be SCI: Fixed script bug #3040565, "QFG3: Crash when looking at stats"
svn-id: r51791
2010-08-06 17:00:23 +00:00
Filippos Karapetis
7c70e488ea SCI: Fixed script bug #3040624 - "QFG3: Crash after any combat in jungle"
svn-id: r51790
2010-08-06 16:43:59 +00:00
Martin Kiewitz
8ca076fb3a SCI: fixing another warning
svn-id: r51789
2010-08-06 15:30:23 +00:00
Martin Kiewitz
afed447b6f SCI: fix warnings
svn-id: r51788
2010-08-06 15:12:03 +00:00
Martin Kiewitz
2a4768401e SCI: some work on the script patcher
signature matching is working (added hoyle 4 signature)

svn-id: r51787
2010-08-06 15:06:42 +00:00
Filippos Karapetis
eb112d6711 SCI: Rewrote the Mother Goose workaround to be like the others, some cleanup
svn-id: r51786
2010-08-06 15:05:05 +00:00
Willem Jan Palenstijn
4d03efe855 SCI: Fix whitespace
svn-id: r51785
2010-08-06 14:54:00 +00:00
Martin Kiewitz
9013c15480 SCI: properly implementing qfg2 astrologer workaround
svn-id: r51783
2010-08-06 11:45:32 +00:00
Martin Kiewitz
ffbecee1d7 SCI: adding workaround for qfg3
when importing character and choosing previous profession (bug #3040460)

svn-id: r51782
2010-08-06 11:02:52 +00:00
Filippos Karapetis
6c8bcd2ba1 SCI: Added a workaround for a script bug in QFG2, room 200, when talking with the astrologer. Fixes bug #3039879, "QFG2: Crash at astrologer's"
svn-id: r51772
2010-08-05 23:08:05 +00:00
Filippos Karapetis
0850f3dcea SCI: Added bug number for the floor scrubbing bug
svn-id: r51770
2010-08-05 22:58:16 +00:00
Filippos Karapetis
4ae7427eed Added a sanity check inside kDoBresen, thanks to lskovlun. Fixes the random crashes in the floor scrubbing scene in SQ5
svn-id: r51768
2010-08-05 21:48:30 +00:00
Filippos Karapetis
b69469a75d SCI: Fixed script bug #3039891 - "QFG2: Crash in thief's job"
svn-id: r51764
2010-08-05 20:32:18 +00:00
Filippos Karapetis
0f27a86049 SCI: Fixed script bug #3039656 - "CASTLEBRAIN: Crashes in robot room"
svn-id: r51763
2010-08-05 20:21:28 +00:00
Filippos Karapetis
e36abee963 SCI: Applied patch #3040164, "3 Workarrounds for QFG4 floppy"
svn-id: r51762
2010-08-05 20:12:40 +00:00
Filippos Karapetis
19e624ae5b SCI: Changed the warning when a script can't be found from a segment into an error
svn-id: r51758
2010-08-05 16:58:59 +00:00
Johannes Schickel
9cd333152b KYRA: Add support for subtitle options changes via GMM.
svn-id: r51757
2010-08-05 14:41:00 +00:00
Filippos Karapetis
33f2bc65a6 SCI: Fixed bug #3039477 - "KQ5CD: No speech after restoring from ScummVM" and added a TODO for loading through the game launcher
svn-id: r51755
2010-08-05 11:19:32 +00:00
Martin Kiewitz
c71f1f1612 SCI: actually enable hoyle 4 workaround
and adding additional comment

svn-id: r51754
2010-08-05 07:54:33 +00:00
Martin Kiewitz
1b69257654 SCI: changing hoyle 4 workaround
fixing hoyle 4 detection entry (not a demo)
adding direct selector fix, maybe we should replace this later with a script patch
adding detailed comment about the issue

svn-id: r51753
2010-08-05 07:49:19 +00:00
Filippos Karapetis
8e6d2eb5a3 SCI: Extended the QFG3 workaround in room 330 (speaking with King Rajah). Fixes bug #3039774 - "Uninitialized Read"
svn-id: r51751
2010-08-05 05:27:55 +00:00
Matthew Hoops
4a2ab85019 SCI: Fix size of wave files inside audio volumes (thanks to LordHoto for pointing out)
svn-id: r51745
2010-08-04 22:45:10 +00:00
Matthew Hoops
7988278336 SCI: Add uninit'd workaround for bug #3038757
svn-id: r51744
2010-08-04 18:19:18 +00:00
Matthew Hoops
ed741dc96c SCI: Fix bug #3038913 - SCI Fanmade - The Legend of the Lost Jewel: Crash by bugs
Added workaround for calling mul with an object and kSetAngle with two objects as parameters.

svn-id: r51743
2010-08-04 18:11:11 +00:00
Matthew Hoops
642b03fb44 SCI: Add kDisplay workarounds for the Hero's Quest demo
svn-id: r51742
2010-08-04 17:50:09 +00:00
Florian Kagerer
e5ffc7847c AUDIO: Implement volume and balance control for the AudioCD manager (needed for music fading in Kyra 1 FM-Towns and probably other FM-Towns games). This addition applies to emulated CD audio only for now. I haven't found a way to implement this for real CDs yet. SDL doesn't seem to support this (but it might be just me? If anyone knows more about this, just tell me).
svn-id: r51741
2010-08-04 16:53:09 +00:00
Matthew Hoops
fbd7c84567 SCI: Add Hero's Quest demo detection entry (qfg1 ega)
svn-id: r51740
2010-08-04 16:13:26 +00:00
Matthew Hoops
a5056cde98 SCI: Add 'movie' subdirectory for VMD's
The Torin's intro movie now plays. Minor kPlayVMD cleanup.

svn-id: r51739
2010-08-04 15:17:09 +00:00
Filippos Karapetis
4db52c1ce1 SCI: Turned a warning into a debugC
svn-id: r51738
2010-08-04 13:35:56 +00:00
Filippos Karapetis
2b1f366e19 SCI: Added detection entry for Hoyle 4 (Hoyle Classic Card Games) from bug report #3039291
svn-id: r51735
2010-08-04 12:54:16 +00:00
Filippos Karapetis
624107319e SCI: Fixed an off-by-one error in GfxPorts::getPortById() and moved the error checking code outside the function. Also fixed script bug #3039305 - "HOYLE4: segfault"
svn-id: r51733
2010-08-04 12:41:00 +00:00
Willem Jan Palenstijn
74304fb790 SCI: Fix infinite recursion when saving.
This was a regression from r51727.

svn-id: r51731
2010-08-04 12:11:23 +00:00
Filippos Karapetis
8d3086d301 SCI: Fixed the two script bugs described in bug #3039294 - "SCI: HOYLE4 - Uninitialized Read(s)"
svn-id: r51730
2010-08-04 12:02:50 +00:00
Martin Kiewitz
975e3bf83e SCI: fixing a scrolling issue in sci32
svn-id: r51729
2010-08-04 10:11:06 +00:00
Martin Kiewitz
b45f2fcb97 SCI: fix fadeout on workarounds
svn-id: r51728
2010-08-04 09:15:37 +00:00
Max Horn
fcf3ea61fe SCI: Simplify code (let the compiler interfer types where possible)
svn-id: r51727
2010-08-04 08:26:09 +00:00
Max Horn
5ed9ddaa2c SCI: Remove reference to common/serializer.h from vm_types.h
svn-id: r51726
2010-08-04 08:25:39 +00:00
Max Horn
0e2807dc27 GRAPHICS: Change signature of VideoDecoder::load()
Now takes a pointer to a stream, instead of a reference.
The rational is that in all instances, callers have a pointer
(and dereference it to call load), and all load implementations
turn the reference back into a pointer.

svn-id: r51725
2010-08-04 08:25:05 +00:00
Matthew Hoops
0eaa9bddb6 SCI: Fix restoring SCI32 games (a regression of r51712)
svn-id: r51723
2010-08-04 05:15:01 +00:00
Matthew Hoops
cbe07a07b7 SCI: Fix SCI32 texts that are in Str objects
The text selector of the text bitmap object can contain either a Str object or a raw string. Handling the Str object case fixes the Torin demo. Oooh! Vertical scrolling!

svn-id: r51722
2010-08-04 05:06:41 +00:00
Matthew Hoops
bde4012f46 SCI: Silence valgrind warning (thanks to syke for pointing out)
svn-id: r51717
2010-08-04 00:33:54 +00:00
Martin Kiewitz
7487b51e87 SCI: not error()ing out on no free channels
instead we just ignore such channels. I'm not sure how sierra sci behaved in that case, they ignored channels as well, but maybe they removed them from earlier music

svn-id: r51715
2010-08-03 21:38:26 +00:00
Martin Kiewitz
dc08c733db SCI: adding jones/talkie speed throttler view
fixes bug #3038989, regression of r51544

svn-id: r51714
2010-08-03 20:46:28 +00:00
Martin Kiewitz
2e11c1cf96 SCI: reset ports when restoring
fixes qfg3/fairy tales restoring (bug #3035626)
also fixes ScummVM menu restoring while a window is shown (e.g. sq5)

svn-id: r51712
2010-08-03 19:43:16 +00:00
Martin Kiewitz
fcede4680a SCI: adding bpk debug command
currently removing or listing such breakpoints is not yet supported

svn-id: r51710
2010-08-03 19:06:40 +00:00
Florian Kagerer
3fc3a59139 KYRA/TOWNS: replace some music stops with fadeouts (based on original code)
svn-id: r51708
2010-08-03 18:19:25 +00:00
Robert Špalek
3d228f270f DRACI: recognize German translation
svn-id: r51707
2010-08-03 17:09:27 +00:00
Florian Kagerer
824a5f32a0 LOL: fixed possible crash in environmental sfx code
svn-id: r51706
2010-08-03 16:54:39 +00:00
Johannes Schickel
13824582d1 LOL: Minor adjustment to latest generateOverlay changes.
svn-id: r51705
2010-08-03 16:43:57 +00:00
Johannes Schickel
64585b40eb KYRA: Get rid of Screen_LoL::generateLevelOverlay.
This function is actually exactly the same as Screen_v2::generateOverlay,
after I fixed the implementation of the latter last commit.

svn-id: r51704
2010-08-03 16:22:12 +00:00
Johannes Schickel
14c9522d77 KYRA: Fix Screen_v2::generateOverlay implementation.
svn-id: r51703
2010-08-03 16:21:45 +00:00
Martin Kiewitz
14e7ba5d91 SCI: kMemory issue in pq3 only for multilingual
adjusted comment accordingly

svn-id: r51702
2010-08-03 16:03:22 +00:00
Martin Kiewitz
ee28c2eb54 SCI: adding workaround for pq3
fixes bug #3037565

svn-id: r51701
2010-08-03 15:51:31 +00:00
Matthew Hoops
20002588e6 SCI: Hopefully fix signedness warning with some compilers
svn-id: r51699
2010-08-03 15:33:35 +00:00
Johannes Schickel
b149ca89d5 KYRA3: Fix bug in Screen_v2::generateOverlay.
Uncovered by a valgrind warning.

svn-id: r51698
2010-08-03 15:09:39 +00:00
Martin Kiewitz
65e215628d SCI: dont clip plane during frameout.cpp
disables scrolling capability
(regression of r51615)

svn-id: r51697
2010-08-03 15:04:56 +00:00
Matthew Hoops
44f12117f2 SCI: Add support for SCI2.1 chunk resources
And if no scripts are present, but chunk 0 is present, load resources from there. This fixes the Lighthouse SCI2.1 demo.

svn-id: r51696
2010-08-03 14:58:57 +00:00
Florian Kagerer
5962b0bbe2 KYRA/TOWNS: implement music/sfx volume control via GUI/GMM
svn-id: r51695
2010-08-03 14:58:01 +00:00
Matthew Hoops
221934ea93 SCI: Add detection entries from bug #3037054, bug #3038720, and bug #3038761
svn-id: r51694
2010-08-03 14:10:25 +00:00
Martin Kiewitz
4c7a6ac2d5 SCI: adding workaround for pq3 inside kMemory
fixing plot crimes warnings and bad text on screen

svn-id: r51693
2010-08-03 13:17:30 +00:00
Martin Kiewitz
a1730b4b34 SCI: adding workaround for sq5 on the bridge
fixes bug #3038563

svn-id: r51689
2010-08-03 12:46:18 +00:00
Filippos Karapetis
32807512d9 SCI: Cleanup
svn-id: r51687
2010-08-03 12:41:36 +00:00
Martin Kiewitz
425b90f6d2 SCI: adding kDoSound(fade) workaround table to sci1early
fixes kq5 bug #3037594 thx to [md5] for testing

svn-id: r51686
2010-08-03 12:39:11 +00:00
Eugene Sandulenko
02cca98ed6 SCUMM: Add posibility to disable NES APU which is CPU demanding
svn-id: r51679
2010-08-03 11:25:20 +00:00
Johannes Schickel
a76f5449bc SCI: Yet another slight leak fix.
svn-id: r51670
2010-08-02 23:03:04 +00:00
Johannes Schickel
92b0b384ea SCI: Fix memory leak.
svn-id: r51669
2010-08-02 22:35:29 +00:00
Johannes Schickel
4e33b7a3be GRAPHICS: Renamed skipThumbnailHeader to skipThumbnail.
svn-id: r51668
2010-08-02 22:28:30 +00:00
Johannes Schickel
0dba655085 SCI: Fix memory leak.
This was a quite bad leak in gamestate_restore. It was caused by the code only
deleting the Graphics::Surface object but not its data.

I changed the code to use skipThumbnailHeader now, since the code actually
ignores the thumbnail anyway.

svn-id: r51667
2010-08-02 22:27:50 +00:00
Johannes Schickel
dd38e424e7 SCI: Fix leaks in ResourceManager::listResources caller code.
svn-id: r51666
2010-08-02 22:27:26 +00:00
Martin Kiewitz
a1001731fa SCI: fixing leak kernel subfunctions
svn-id: r51665
2010-08-02 22:12:45 +00:00
Martin Kiewitz
0f339921ed SCI: only display qfg-import information dialog once
per room usage

svn-id: r51664
2010-08-02 21:57:17 +00:00
Martin Kiewitz
d42d7ad6c5 SCI: allowing kCheckSaveGame with id 0
qfg2 - when trying to restore from an empty saved game list

svn-id: r51663
2010-08-02 21:44:41 +00:00
Martin Kiewitz
7da703f0af SCI: adding workaround for qfg2 (restore game)
svn-id: r51662
2010-08-02 21:37:43 +00:00
Filippos Karapetis
5ca6b33ba7 SCI: Silenced some sound related warnings. Added an empty function for kDoSound(Restore), called when restoring games
svn-id: r51661
2010-08-02 21:20:43 +00:00
Martin Kiewitz
09f4562551 SCI: adding non-scaleable view capability
fixes laura bow 2 (especially floppy but CD is also affected somewhat by this)

svn-id: r51660
2010-08-02 21:04:09 +00:00
Florian Kagerer
2964e9213d KYRA2: fix warning
svn-id: r51650
2010-08-02 19:00:46 +00:00
Matthew Hoops
bed1e3c164 SCI: Fix bug #3037401 - LB2Floppy: No SFX
Laura Bow 2 floppy and Mixed-Up Mother Goose SCI1.1 use an 8-byte entry 0.map format to store their entries.

svn-id: r51646
2010-08-02 18:30:37 +00:00
Florian Kagerer
9c8b465505 KYRA: FM-Towns audio driver rewrite
- FM-Towns euphony driver completely rewritten based on KYRA FM-Towns and LOOM towns disasm.

- Split all the emu and driver code from sound_towns.cpp into different files to make things a bit less confusing.

- Move the driver code to common space since the exact same euphony driver is used by LOOM which means we could get rid of the outdated and incomplete ym2612 driver/emu implementation (which doesn't even do things like instrument loading, pan position, etc). I haven't tried to add this to the Scumm engine yet, since I am not  familiar with it and my priority was to get the driver finished first. But from the look of disasm it shouldn't be difficult to do.

- Introduce a generic FM-Towns audio interface based on FM-Towns system file disasm which was necessary for the euphony driver rewrite. Every FM-Towns game I have seen so far seems to access the audio hardware via these system functions. This interface implementation will also allow reasonably simple creation of new FM-Towns audio drivers (e.g. this could be used for Kings Quest 5 FM-Towns or others).

- Move the PC98 driver to common space, too, since I have a strong feeling that this driver is also used in the PC98 version of Future Wars

- This also improves KYRA FM-Towns music quality, sound effects accuracy and music fading.

svn-id: r51645
2010-08-02 18:30:25 +00:00
Matthew Hoops
180f188b88 SCI: Cleanup SCI0 late version detection
After discussing with Walter, we should be able to detect SCI0 late on the presence of a SCI0 vocab.999 without checking if we're using the old decompressors.

svn-id: r51644
2010-08-02 18:25:48 +00:00
Martin Kiewitz
512fec56c7 SCI: adding offTop = 0 for mother goose sci1.1
fixes graphics in that game

svn-id: r51643
2010-08-02 18:04:23 +00:00
Max Horn
bcfb8a030a SCI: Rewrap overlong lines; improve dialog text slightly
svn-id: r51641
2010-08-02 17:13:09 +00:00
Martin Kiewitz
cad3ea9f78 SCI: extend workaround for qfg2
fixes bug #3038367

svn-id: r51628
2010-08-02 16:38:48 +00:00
Martin Kiewitz
e14033c6c5 SCI: adding kq5 english floppy workaround
solves bug #3037594

svn-id: r51627
2010-08-02 15:42:51 +00:00
Martin Kiewitz
6792193c89 SCI: adding bugid again :P
svn-id: r51626
2010-08-02 15:26:19 +00:00
Martin Kiewitz
84999b2daa SCI: adding workaround for lsl6
when touching fence

svn-id: r51625
2010-08-02 15:23:23 +00:00
Matthew Hoops
8686be738b SCI: Enable the Lighthouse demo SCI2.1 entry even when ENABLE_SCI3_GAMES is not set
svn-id: r51624
2010-08-02 15:17:18 +00:00
Matthew Hoops
c5959bb179 SCI: Add Hoyle 2 Mac md5's
svn-id: r51622
2010-08-02 14:39:46 +00:00
Matthew Hoops
94e8c3a1a8 SCI: Add fallback detection for Mac SCI0 games
svn-id: r51620
2010-08-02 14:38:20 +00:00
Matthew Hoops
c715f18273 SCI: Fix bug #3037055: Jones in the Fast Lane EGA - fails to start
A regression of r51423. Jones EGA has a non-parser related vocab.900 resource, so we can't detect the fan games based on not having an SCI1 vocab.900 resource. Fan games are now detected on whether or not vocab.0 exists (the parser vocab for SCI0).

svn-id: r51619
2010-08-02 14:14:06 +00:00
Martin Kiewitz
8cfce68c08 SCI: adding bug id inside comments
svn-id: r51617
2010-08-02 13:49:08 +00:00
Martin Kiewitz
7ad434c592 SCI: adding workaround for kq5 floppy
should fix bug #3037003, i dont have english floppy, can't test.

svn-id: r51616
2010-08-02 13:45:51 +00:00
Martin Kiewitz
50b8073bab SCI: clipping plane rects for sci32
fixes crash in hires gk1 on cemetary

svn-id: r51615
2010-08-02 13:41:58 +00:00
Martin Kiewitz
b914ad3e84 SCI: fixing typo
svn-id: r51614
2010-08-02 12:48:28 +00:00
Martin Kiewitz
e59db80dec SCI: qfg2/3 import
- change directory button disabled
- showing message where to put characters, if saved from original sci interpreter

svn-id: r51613
2010-08-02 12:39:01 +00:00
Filippos Karapetis
81aeb6a125 SCI: Actually fake a return value for rev #51611, instead of ignoring the call completely
svn-id: r51612
2010-08-02 12:18:22 +00:00
Filippos Karapetis
065d32ec00 SCI: Fixed script bug #3037835 - "ISLANDBRAIN: Crash when breeding second-generation hybrid"
svn-id: r51611
2010-08-02 11:46:03 +00:00
Filippos Karapetis
f0d7808b2a Added another version of Castle of Dr. Brain (bug report #3037942)
svn-id: r51610
2010-08-02 09:10:20 +00:00
Filippos Karapetis
f434f901bd SCI: Fixed script bug #3038077 - "PQ3 : Engine Abort While Plotting Crimes", together with 2 subsequent similar bugs
svn-id: r51609
2010-08-02 09:04:14 +00:00
Martin Kiewitz
52c9c7b445 SCI: fixing getting selected language
for multilingual games

svn-id: r51608
2010-08-02 08:47:06 +00:00
Eugene Sandulenko
55ada2315a AdvancedDetector: Fix ADGF_ADDENGISH implementation
svn-id: r51606
2010-08-02 08:36:33 +00:00
Martin Kiewitz
ddd2bd6a1c SCI: switching to upscaled hires on pc98 games
instead of checking the language to be japanese for that

svn-id: r51601
2010-08-01 22:59:58 +00:00
Martin Kiewitz
75ff5360e2 SCI: adding workaround for pq3
svn-id: r51600
2010-08-01 22:54:34 +00:00
Martin Kiewitz
716f08a8ff SCI: honoring english selection for multilingual games
svn-id: r51598
2010-08-01 22:41:06 +00:00
Martin Kiewitz
afe35f5fb3 SCI: adding ADGF_ADDENGLISH to multilingual games
Most of the games are guessed, i assume that SCI01->SCI1 games are multilingual, SCI1.1+ are not. I'm definitely not sure about the amiga games, can't check them though

svn-id: r51597
2010-08-01 22:11:21 +00:00
Eugene Sandulenko
e0fb6b0bbf SCI: Use new AD flag for German LSL5 which is dual-language
svn-id: r51594
2010-08-01 21:18:08 +00:00
Eugene Sandulenko
7c5c3faae2 AdvancedDetector: Introduce new flag GF_ADDENGLISH
It is convenient for localized games which always have English
as fallback, thus English will be selectable from GUI.

svn-id: r51593
2010-08-01 21:17:00 +00:00
Eugene Sandulenko
00e67c1f86 SCI: Use new convenience macro and shorted the detection table a bit
svn-id: r51591
2010-08-01 20:48:25 +00:00
Eugene Sandulenko
312db66d5f AdvancedDetector: Introducing AD_LISTEND, another convenience macro
svn-id: r51590
2010-08-01 20:47:46 +00:00
Martin Kiewitz
55d7af0766 SCI: kDoSound(mute) behaviour change
svn-id: r51589
2010-08-01 19:57:03 +00:00
Johannes Schickel
4423ad9333 SCI: Cleanup.
svn-id: r51584
2010-08-01 17:59:14 +00:00
Matthew Hoops
79bf94c877 SCI: Move kernelShakeScreen to GfxScreen so it can be used in SCI32 (it's used in GK1)
svn-id: r51583
2010-08-01 17:54:48 +00:00
Martin Kiewitz
f3851674f3 SCI: changing noname selector names
removing space from previous name

svn-id: r51582
2010-08-01 17:51:21 +00:00
Martin Kiewitz
adde79f1cb SCI: fixing regression of r51520
svn-id: r51580
2010-08-01 16:43:49 +00:00
Martin Kiewitz
193d3212da SCI: adding "audiosfx" to directories
svn-id: r51579
2010-08-01 16:23:44 +00:00
Martin Kiewitz
88438ce118 SCI: adding workaround for pq2 kDisplay
in room 23

svn-id: r51578
2010-08-01 15:31:23 +00:00
Filippos Karapetis
7207290dc3 SCI: Enabled the "Return to Launcher" feature (needs testing)
svn-id: r51577
2010-08-01 13:11:24 +00:00
Martin Kiewitz
83e51b0e92 SCI: removing pirated sq4 version from detection
"fixes" bug #3037800
fixing warning in seg_manager

svn-id: r51576
2010-08-01 12:38:07 +00:00
Martin Kiewitz
b0889cfd01 SCI: adding workaround for lb1
fixes bug #3037694

svn-id: r51575
2010-08-01 12:00:36 +00:00
Martin Kiewitz
03f48560a9 SCI: adding workaround for hq1/qfg1
fixes bug #3037659

svn-id: r51573
2010-08-01 11:10:47 +00:00
Filippos Karapetis
9699f8291d SCI: Ignoring non-critical script bug in QFG1VGA, when closing any conversation dialog with esc (doesn't affect gameplay in any manner)
svn-id: r51572
2010-08-01 11:10:14 +00:00
Martin Kiewitz
4bb9157d81 SCI: adding audio directory searching for patches
fixes bug #3037768

svn-id: r51570
2010-08-01 10:07:24 +00:00
Martin Kiewitz
68f7b9be4c SCI: reading the actual priority instead of guessing
svn-id: r51569
2010-08-01 09:20:21 +00:00
Yotam Barnoy
8f04aff6dc QUEEN: fix for bug 3036170. File name test supports upper case for transferring from Windows to other systems (e.g. PSP)
svn-id: r51566
2010-08-01 07:02:05 +00:00
Matthew Hoops
b02a326b89 SCI: Add another LB2 floppy selector name for an uninit'd workaround (bug #3036291)
svn-id: r51565
2010-08-01 04:40:46 +00:00
Matthew Hoops
2b7e58ae9b SCI: Add another KQ5 VGA floppy entry (bug #3036996)
svn-id: r51564
2010-08-01 04:22:34 +00:00
Johannes Schickel
8851c2016f SCI: Fix uninitialized variable warning in g++.
Thanks to clone2727 for suggestion to initialize the default new plane
priority to 0xFFFF, which means that the plane should be invisible. I added a
FIXME there though. So please re check this change. In case that is fine just
remove the FIXME, in case some other default value should be chosen, please
change the value and also remove the FIXME.

svn-id: r51561
2010-08-01 01:00:30 +00:00
Martin Kiewitz
d5e4efa025 SCI: fix lofs autodetection
makes polish lsl1 work (its game superclass name got translated, so no "Game" object available) - bug #3037194 thx to dam-soft for his patient help

svn-id: r51557
2010-07-31 22:45:38 +00:00
Martin Kiewitz
4afbfbf355 SCI: fixing CR/LF, adding info about polish lsl1
svn-id: r51550
2010-07-31 19:35:53 +00:00
Matthew Hoops
142fb8a1f1 SCI: Don't include the time running the debugger in the game running time
svn-id: r51548
2010-07-31 19:18:35 +00:00
Martin Kiewitz
3e29e9ffae SCI: adding detection for benchmark views
and enable speed throttler when just one regular cel was drawn, fixes eco quest 2 ego getting light-speed fast in village (bug #3036805)

=this could cause regressions like disabled animations in games=

svn-id: r51544
2010-07-31 16:41:42 +00:00
Matthew Hoops
e932270c0b SCI: Add uninit'd temp workaround for Grotesteing (fan game)
svn-id: r51543
2010-07-31 16:20:16 +00:00
Martin Kiewitz
5ea8402839 SCI: changing laurabow1 workaround to all rooms
fixes bug #3037410

svn-id: r51541
2010-07-31 14:44:00 +00:00
Martin Kiewitz
f54b9e3527 SCI: removing warning about uninitialized parameters
didn't cause any harm till now and it seems testers get irritated by it. Switching it to VM debug level 2.

svn-id: r51540
2010-07-31 14:38:28 +00:00
Martin Kiewitz
7f3ce51031 SCI: little cleanup
svn-id: r51539
2010-07-31 14:29:22 +00:00
Martin Kiewitz
2d76fe0092 SCI: kGameIsRestarting returns 2 when we restored
fixes castle of dr. brain save issue in puzzle room, fixes island of dr. brain save issue when saving in first room

svn-id: r51538
2010-07-31 14:09:42 +00:00
Martin Kiewitz
fd7bc29536 SCI: adjusting inside view::getCelRect for sci0early
fixes cels being placed wrongly, sci0early didnt have the z adjust.

svn-id: r51537
2010-07-31 13:13:46 +00:00
Martin Kiewitz
fec3ab7bee SCI: updating comment
svn-id: r51536
2010-07-31 12:42:23 +00:00
Martin Kiewitz
3a75d0fbe0 SCI: adding polish lsl1
svn-id: r51535
2010-07-31 12:37:49 +00:00
Martin Kiewitz
e40ee138af SCI: kAnimate - limit update of nsRect when scaled
only set nsRect when being drawn later (scaled only), fixes sq5 instant-death in elevator shaft

svn-id: r51534
2010-07-31 08:05:23 +00:00
Martin Kiewitz
9deb52fba6 SCI: fixing stupid typo
svn-id: r51533
2010-07-31 07:37:06 +00:00
Johannes Schickel
cc575359df SCI: Whitespace cleanup.
svn-id: r51532
2010-07-31 02:11:05 +00:00
Matthew Hoops
43e82aa895 SCI: Fix walking in GK1 later in the game
The Feature class uninit'd workaround needs to be extended to all levels of inheritance.

svn-id: r51527
2010-07-31 00:54:32 +00:00
Martin Kiewitz
5dac7ba6ba SCI: fix kAddToPic called with view data
and adding workaround for pq2 when showing windows with pictures
change to kAddToPic fixes bad coordinates of cels when restoring the game (should also fix lsl2)

svn-id: r51526
2010-07-31 00:48:03 +00:00
Johannes Schickel
fd0f5696a5 SCI: Add comment about stability requirements in makeSortedList.
svn-id: r51523
2010-07-30 23:24:45 +00:00
Johannes Schickel
e29d6e681a SCI: Switch to Common::RandomSource.
Since I got no response to my mail to -devel, I just assume that there is
no specific reason for using rand() in SCI.

As explained in my mail to -devel about why SCI uses rand, this might allow
SCI to work with our event recording, when that ever gets finished.

I adapted kRandom so that it also supports negative random numbers. And
furthermore that the toNumber argument is smaller than the fromNumber
argument. I am not sure whether that really happens though, but it should
be safer to have this. I marked that place with an TODO/CHECKME.

svn-id: r51521
2010-07-30 22:47:01 +00:00
Martin Kiewitz
062d9eedce SCI: fixing view scaling code
fixes crash in sq5 with elevator on goliath

svn-id: r51520
2010-07-30 22:44:23 +00:00
Martin Kiewitz
685c124a8e SCI: speed throttler cleanup and iceman comment
svn-id: r51518
2010-07-30 21:29:45 +00:00
Matthew Hoops
75b5ac38fb SCI: Fix saving/restoring games in fan games
The SCI Studio function library incorrectly calls kDeviceInfo with one parameter to get the current device.

svn-id: r51514
2010-07-30 18:45:28 +00:00
Martin Kiewitz
839ba339ed SCI: finally fixing font codes
fixing regressions of r51511&51512 and cleaning up as well - for sq5

svn-id: r51513
2010-07-30 16:55:36 +00:00
Martin Kiewitz
6aa228ccd8 SCI: fixing another text color code issue
(sq5 some dialog boxes again using wrong font in rare cases)

svn-id: r51512
2010-07-30 16:23:09 +00:00
Martin Kiewitz
6dd5dfb7d0 SCI: fixing font code handling in kTextSize
fixes incorrect window proportions in sq5 when hailing ship at clorox II

svn-id: r51511
2010-07-30 16:08:27 +00:00
Martin Kiewitz
c785645123 SCI: adding workaround for kSetCursor kq5cd
adding comments as well

svn-id: r51510
2010-07-30 15:26:30 +00:00
Filippos Karapetis
cbbafc138b SCI: Updated the op_mod changes and added a link to the original bug report
svn-id: r51509
2010-07-30 15:19:21 +00:00