Commit Graph
83 Commits
Author SHA1 Message Date
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Colin Snover f99c83c0a0 DREAMWEB: Fix out-of-bounds read of frame animation data
The game reads until it sees 0xFF, which is not until frame 14 for
some animations in the first interactive room of the game. This
happened to work previously because the struct is packed so it
would read into the b31.. members, but this was still technically
an out-of-bounds read.
2017-11-11 16:19:23 -06:00
Johannes Schickel aaff7b1736 DREAMWEB: Make GPL headers consistent in themselves. 2014-02-18 02:39:34 +01:00
Alyssa Milburn 6e70f77289 DREAMWEB: Dynamically allocate GraphicsFile::_frames.
This avoids extra memory usage due to the previous commit.
2012-02-23 22:37:21 +01:00
Willem Jan Palenstijn 3fc8b7227b DREAMWEB: Fix missing subtitle lines in speech+subtitle mode
This is done by adding a (very ugly) way to force the previous timed-temp
line off screen, so the next one can be shown.
2012-02-12 23:57:09 +01:00
Willem Jan Palenstijn ea6546ae25 DREAMWEB: Clean up checkCoords 2011-12-28 19:55:06 +01:00
Max Horn 13e252ebd0 DREAMWEB: Add 'packed' attribute to structs that need it
... and probably also to some that don't need it; since it seems better to
err on the wrong side here for now, I did not check every struct as to whether
it really needs this. On the long run, it would be better if the code did not
rely on any kind of packing anyway.
2011-12-28 16:36:18 +01:00
Max Horn ca7da4cffc DREAMWEB: Rename a member of SetObject & DynObject to objId
SetObject::name and DynObject::id are stored at the exact same offset,
and have the exact same meaning (see also objectMatches()). Now they
also have the same name, objId.
2011-12-28 16:36:16 +01:00
Willem Jan Palenstijn 77b8491b8b DREAMWEB: Remove unused Sprite fields 2011-12-28 15:19:59 +01:00
Willem Jan Palenstijn 4e207dbc7a DREAMWEB: Clean up Sprite::_updateCallback 2011-12-28 15:19:59 +01:00
Filippos Karapetis 279746fcf0 DREAMWEB: Completely remove all of the runtime, and move everything into DreamWebEngine
Also, remove dead code (allocateMem/deallocateMem)
2011-12-28 15:07:17 +02:00
Willem Jan Palenstijn 57e940f678 DREAMWEB: Move all saved variables to a GameVars struct
The data segment is now completely unused.
2011-12-28 13:12:22 +01:00
Willem Jan Palenstijn 914bf3d519 DREAMWEB: Remove setdat, freedat segments 2011-12-27 23:05:27 +01:00
Willem Jan Palenstijn f729742f87 DREAMWEB: Convert exText into TextFile 2011-12-27 23:02:33 +01:00
Willem Jan Palenstijn 90cb52b7f6 DREAMWEB: Streamline graphics file access 2011-12-27 23:01:58 +01:00
Willem Jan Palenstijn 08be0411b1 DREAMWEB: Streamline text file handling 2011-12-27 18:40:25 +01:00
Willem Jan Palenstijn df7bb24184 DREAMWEB: Create MapFlags struct, remove backdrops segment 2011-12-27 18:01:33 +01:00
Filippos Karapetis 4c9a600618 DREAMWEB: Remove dead code 2011-12-27 10:43:44 +02:00
Filippos Karapetis bda312b61b DREAMWEB: Remove more unused/unnecessary variables 2011-12-27 10:16:06 +02:00
Willem Jan Palenstijn c86a830c4a DREAMWEB: Move openInvList, ryanInvList out of buffers 2011-12-26 17:42:19 +01:00
Filippos Karapetis 7945a0fbb0 DREAMWEB: Cleaned up findFirstPath(), fixed a regression and moved it to DreamBase 2011-12-26 02:50:02 +02:00
Filippos Karapetis 3802b21183 DREAMWEB: Move some functions to DreamBase 2011-12-25 15:07:56 +02:00
Filippos Karapetis 652403021d DREAMWEB: Convert 'checkobjectsize' to C++
Also, renamed getOpenedSizeCPP() to getSlotCount(). Special thanks to
wjp for his help and for examining the behavior of a fallback case.
2011-12-25 04:53:26 +02:00
Willem Jan Palenstijn 8e79608a1d DREAMWEB: Move sprite table out of buffers 2011-12-23 23:46:38 +01:00
Willem Jan Palenstijn 814793de49 DREAMWEB: Move rainlist out of buffers 2011-12-23 23:46:38 +01:00
Willem Jan Palenstijn 0f36350e03 DREAMWEB: Fix regression from moving ReelRoutines out of data
The struct People still had an old-style pointer to a ReelRoutine.
Fix this by converting People to use a real ReelRoutine * and moving
the PeopleList from the buffers segment to a Common::List.

Thanks to digitall for the assistance with tracking this down.
2011-12-23 19:15:25 +01:00
Max Horn cdc6bc421b DREAMWEB: Turn RectWithCallback into template
Also moves checkCoords to DreamBase, adding a nasty cast to it. This is a
temporary HACK, which allows moving functions that use checkCoords to
DreamBase one at a time, instead of all at once (and at the same time as
checkCoords). This can be undone once everything using checkCoords has been
moved to DreamBase.
2011-12-23 03:39:44 +02:00
Willem Jan Palenstijn 60ece632b8 DREAMWEB: Remove reelRoutines from data blob 2011-12-18 16:54:16 +01:00
Filippos Karapetis 421c8cd262 DREAMWEB: Port 'setpickup' to C++ and added an enum for the object types 2011-12-18 11:26:19 +02:00
Willem Jan Palenstijn 46caa77164 DREAMWEB: Add disabled reelRoutine conversion work 2011-12-17 22:28:54 +01:00
Willem Jan Palenstijn 5958d2d29a DREAMWEB: Name some DynObject/SetObject fields
Also change getAnyAd() behaviour to be consistent between Free/Ex and
Set objects, diverging from the original.
2011-12-17 21:02:31 +01:00
Filippos Karapetis 71362cc35d DREAMWEB: Remove a lot of unused variables 2011-12-12 17:23:32 +02:00
Max Horn 0193ef590d DREAMWEB: Cleanup end of namespace comments 2011-12-06 21:49:41 +01:00
Willem Jan Palenstijn 585bd7b0ef DREAMWEB: Untangle namespaces 2011-12-05 19:26:46 +01:00
Bertrand Augereau 87ac82db27 DREAMWEB: kIcons1 and kIcons2 ownership transferred from the VM to the engine 2011-12-04 18:23:30 +01:00
Willem Jan Palenstijn 69301e4f63 DREAMWEB: Convert 'atmospheres' 2011-12-03 19:54:05 +01:00
Bertrand Augereau f6f47d13cc DREAMWEB: CR at last line 2011-12-03 18:06:24 +01:00
Willem Jan Palenstijn a64c89e7dd DREAMWEB: Don't use Madeuproomdat as a global when not necessary 2011-12-03 16:07:48 +01:00
Willem Jan Palenstijn 15856843a4 DREAMWEB: Create and use FileHeader struct 2011-12-03 15:47:33 +01:00
Willem Jan Palenstijn 908ba272f8 DREAMWEB: Move roomData out of opaque data segment 2011-12-03 14:55:54 +01:00
Bertrand Augereau 24c355e04f DREAMWEB: Ported 'sparky' to C++ 2011-12-01 18:33:05 +01:00
Bertrand Augereau dc38524c91 DREAMWEB: Naming of ReelRoutine members 2011-12-01 12:18:04 +01:00
Willem Jan Palenstijn 3f30105fff DREAMWEB: Add utility function ObjPos::contains 2011-11-27 18:56:37 +01:00
Willem Jan Palenstijn 139a868d37 DREAMWEB: Fix Room struct
Room::name is a zero terminated 8.3 filename, so 13 bytes long.
2011-11-26 20:18:56 +01:00
Bertrand Augereau 21d787d065 DREAMWEB: Ceaning in 'startloading' 2011-11-26 12:29:09 +01:00
Bertrand Augereau e51bcdbb53 DREAMWEB: Sound structure 2011-11-22 17:00:22 +01:00
Willem Jan Palenstijn f4be01b1c1 DREAMWEB: Add some sprite-related comments and names 2011-11-18 22:34:46 +01:00
Bertrand Augereau fc7a36d911 DREAMWEB: Cleaning in room loading 2011-11-17 12:38:17 +01:00
Willem Jan Palenstijn 81c16d12c8 DREAMWEB: Clean up 'dodoor' 2011-11-16 23:29:17 +01:00
Willem Jan Palenstijn b53a299790 DREAMWEB: Unhardcode checkcoords tables
This patch makes __dispatch_call (even more) superfluous,
but does not yet remove it.
2011-11-14 21:44:10 +01:00