Commit graph

22 commits

Author SHA1 Message Date
Jakob Wagner
7fc6499264 TINSEL: Replace TinselV0 checks with comparisons 2022-04-21 20:34:17 +03:00
Jakob Wagner
67c3bce30e TINSEL: Replace TinselV2 checks with comparisons
Until now, the TinselV* defines were used for discerning between
engine versions. The define TinselV2 was true for both v2 and v3.
Sticking to the old scheme would lead to confusion when more
special paths for v3 are implemented.
2022-04-21 20:34:17 +03:00
Filippos Karapetis
0221bc5c02 TINSEL: Refactor and simplify image handling
This allows us to merge different code paths for Tinsel V1 - V3 and
simplify the relevant code.

- Images are now obtained as a copy via GetImage(), which handles
  endianess internally
- The GetImageFromFilm() / GetImageFromReel() wrappers have been removed
- Direct setting of the image palette has been removed in favor of
  PokeInPalette(). This allows us to make image pointers const
- Struct packing has been removed from the IMAGE class, as we no
  longer cast raw data to image pointers
- There is now a single IMAGE class for all Tinsel versions
2022-01-09 17:07:46 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Filippos Karapetis
aa7b3470a0 TINSEL: Simplify font loading and handling
This introduces a new helper method, GetFont(), which loads font data
using a memory stream and handles endianess reads internally. This
simplifies font loading and endianess handling considerably, and allows
for the usage of a common font struct for all engine versions
2021-09-04 15:21:07 +03:00
Filippos Karapetis
ae2e05cbd3 TINSEL: Move all handle-related functions into a new Handle class 2020-10-04 01:15:19 +03:00
Filippos Karapetis
bb54f3cd4f TINSEL: Move all actor-related functions into a new Actor class
Also, merge the two different SetMoverZ() functions
2020-10-04 01:15:18 +03:00
Paul Gilbert
e05a64992b TINSEL: Workaround for black talk text showing for Mac DW1
I'm not sure of the underlying cause, but as a suitable
workaround, when playing the Mac version it'll simply use
the tooltip font instead, which is at least properly visible
2020-07-13 19:11:19 -07:00
Filippos Karapetis
6fa96182f7 TINSEL: Move font-related code into a new Font class
Also, remove some wrapper functions in tinlib.cpp
2020-02-22 18:41:39 +02:00
Johannes Schickel
9b138f4eb4 TINSEL: Make GPL headers consistent in themselves. 2014-02-18 02:39:39 +01:00
Filippos Karapetis
b05fa7f204 TINSEL: Add resource handling of the BE resources in DW1 Mac
This is the second attempt. All the BE resources of DW1 Mac are
handled correctly now. Added READ_16, READ_32, FROM_16, FROM_32 and
TO_32 to handle all of the different cases where endianess is
already handled. Note that the game scripts are LE, so these
haven't been changed
2012-12-11 02:56:48 +02:00
Filippos Karapetis
c6cf4827d7 TINSEL: Revert most of the engine BE resource handling code
This was added in commit 3fdddd53b2.
However, having handling for both BE and LE resource complicates
the engine code unnecessarily. Thus, a different approach will be
done.
2012-12-10 17:38:22 +02:00
Filippos Karapetis
3fdddd53b2 TINSEL: Start handling the BE resources of the Mac versions of DW1
Refer to bug #3110936

This is still work in progress, but it doesn't affect the rest
of the LE versions of DW1. Both the Mac demo and the full
version still crash. The music in the Mac version is skipped for
now, as it isn't MIDI
2012-12-01 21:53:33 +02:00
Alyssa Milburn
be35baddc7 TINSEL: Rename globals to add g_ prefix. 2012-02-22 23:14:29 +01:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Max Horn
84184aabc0 ALL: colour -> color 2011-04-14 14:12:35 +02:00
Max Horn
5ceb54d088 TINSEL: Get rid of some global variables
These were actually all "harmless" (i.e. where no obstructions
to RTL support). Still good to get rid of 'em!

svn-id: r54286
2010-11-17 12:13:23 +00:00
Max Horn
1dbf8d73d5 TINSEL: Mark all (?) global vars with a FIXME comment
Use of global vars is what prevents RTL from working in Tinsel (and
probably in other engines). More specifically, the fact that many
global vars are not explicitly inited when the engine is (re)launched.

svn-id: r54262
2010-11-16 09:53:55 +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
Filippos Karapetis
af945ac788 Merged the tinsel 2 engine with tinsel 1. Both Discworld 1 and Discworld 2 should be completable
svn-id: r35196
2008-12-01 20:35:36 +00:00
Max Horn
04985c8ac9 TINSEL: Got rid of PIMAGE, PINT_CONTEXT, PINV_OBJECT, PINV_DEF, PCONFBOX, PCONFINIT
svn-id: r33282
2008-07-25 09:19:06 +00:00
Max Horn
c441c5261f Added Tinsel engine to main repos (no news item for it ON PURPOSE)
svn-id: r33230
2008-07-23 09:02:47 +00:00