Commit Graph

6270 Commits

Author SHA1 Message Date
Jonathan Gray
ea1cd18354 fix dottdemo by checking that room exists before trying to set a custom cursor from it, fixes bug #796971
svn-id: r9909
2003-08-29 07:57:20 +00:00
Travis Howell
ef4fdd03f0 My last commit was wrong, this is correct solution.
svn-id: r9908
2003-08-29 07:07:55 +00:00
Travis Howell
bed0061362 Fix verbs been shown in cutscenes in v1-v2 games if loading/saving during cutscene.
svn-id: r9907
2003-08-29 06:53:00 +00:00
Torbjörn Andersson
fb060c6cbd Disabled debug output. (I really need to get the debug message level to
work for BS2! :-)

svn-id: r9906
2003-08-29 06:46:52 +00:00
Travis Howell
33f9cb35a3 Change zak room color remapping, so it work correctly after load/save in room with remapped colors.
svn-id: r9905
2003-08-29 06:46:12 +00:00
Torbjörn Andersson
ed698cb635 Added some code to stop producing interpolation frames if the scene has
already reached its scroll target. This keeps BS2 from using all available
CPU time all of the time.

It may still be that we need a mechanism for throttling the frame rate when
the scene is moving towards a scroll target, but my computer isn't really
fast enough to test that.

Two other bugs fixed in the process:

* I think the last frame of the render cycle was rendered, but not
  displayed. If so, that should be fixed now.

* I discovered that there are cases where we do need to clear the screen
  (e.g. at the "Meanwhile..." message when George has found out about the
  Glease Gallery), so I've re-enabled the function and disabled it in the
  render cycle.

svn-id: r9904
2003-08-29 06:42:34 +00:00
Torbjörn Andersson
d900ea66bd Cleanup.
svn-id: r9903
2003-08-29 06:19:34 +00:00
Travis Howell
f1d9afc56a Only needed for versions 1 - 4
svn-id: r9902
2003-08-29 04:08:48 +00:00
Jamieson Christian
5507d75228 Replaced VER_V* notation for savegames with
a simple number. So that it's still obvious
that the number refers to version, a VER()
macro does nothing to the number but makes
it obvious what the number is for. This
has the exact same effect as the enum that
was going to get more and more lengthy
as the savegame version evolved.

svn-id: r9901
2003-08-29 04:05:23 +00:00
Jamieson Christian
20aaf3c365 Added _roomPalette to savegame.
Savegame version now at 21.

svn-id: r9900
2003-08-29 03:54:47 +00:00
Jamieson Christian
cec02390ed Fix for bug [770687] MI1: palette effect missing
Added support for CC resources in small-header
games. Right now this is enabled for monkeyvga
only. loomcd has CC resources but they don't
make any sense, and the game doesn't use palette
effects anyway.

svn-id: r9899
2003-08-29 03:35:15 +00:00
Jonathan Gray
e32f17d803 don't try to read objectRoomTable for HEv7 games right now
svn-id: r9898
2003-08-29 02:45:38 +00:00
Jonathan Gray
176803cb90 make the 2nd gen windows based humongous games that have things like a different layout in the MAXS block at least start the bootscript, added pjs-demo target to test with
svn-id: r9897
2003-08-29 02:39:05 +00:00
Oliver Kiehl
2a89cd9c9d fix killLastWord
svn-id: r9896
2003-08-28 19:46:52 +00:00
Max Horn
898bbc85d0 double cursor animation speed (see bug #757191)
svn-id: r9895
2003-08-28 19:20:30 +00:00
Jonathan Gray
876fe0ac8a add readINI stub (a HEv7 op)
svn-id: r9894
2003-08-28 15:23:23 +00:00
Jonathan Gray
62f94f15be clean up humongous v7 index file block handling
svn-id: r9893
2003-08-28 14:25:29 +00:00
Torbjörn Andersson
259fb42459 I forgot to commit this file earlier. (It's only a FIXME comment anyway.)
svn-id: r9892
2003-08-28 12:26:28 +00:00
Travis Howell
b8d5342f34 Remove junk
svn-id: r9891
2003-08-28 12:23:35 +00:00
Travis Howell
cf4ae4097f Update warnings in mingw makefile.
Add hack to allow nosubtitles in loomcd (Only once game has started)
Revert _roomPalette changes for 256 colors games, caused problems in loomcd, I'm not sure the older 256 color needs these changes.

svn-id: r9890
2003-08-28 12:21:35 +00:00
Jonathan Gray
0a7dd227b8 revert previous broken commit which didn't logically make sense as it was checking for negative on an unsigned number, and would have broken several things if it compiled
svn-id: r9889
2003-08-28 10:10:32 +00:00
Travis Howell
906c7818ec Fix regression that caused subtitles to always be shown in loomcd
svn-id: r9888
2003-08-28 10:00:49 +00:00
Travis Howell
6071e79dce Leave small_header color cycle resource disabled for now, since it needs additioal support.
svn-id: r9887
2003-08-28 06:38:03 +00:00
Torbjörn Andersson
f7ce39763e Removed the Surface class in favor of small struct specially made for the
block surfaces. (A block surface is a 64x64 tile of a parallax layer.)

I've also done a few things to try and optimize the drawing:

* The back buffer is no longer cleared between frames. This may cause
  regressions, but I do believe that the entire picture area is always
  completely re-rendered for each frame.

  As a result of this, the menu code is now responsible for clearing the
  icon areas itself.

* A few unnecessary copy_rect() calls were commented out in favor of one
  big copy_rect() in ServiceWindows().

* Completely opaque block surfaces are copied with memcpy(), one line at a
  time.

Unless we manage to add intelligent screen redrawing, I don't think it will
get that much faster than this, though there is some unnecessary data
copying in DrawSprite() that could be removed.

And the game is still a terrible CPU hog. I believe the animation runs at
approximately 12 fps. If there's still time left, it will pump out further
frames to get smooth scrolling. We ought to put a cap on that, and if it
has already reached the scroll target it should sleep for the rest of the
render cycle.

svn-id: r9886
2003-08-28 06:36:15 +00:00
Torbjörn Andersson
76df5a2733 Cleanup
svn-id: r9885
2003-08-28 06:14:46 +00:00
Torbjörn Andersson
aab8d69078 Fixed format string error.
svn-id: r9884
2003-08-28 06:13:59 +00:00
Travis Howell
cde3b3dc6d Load older Color Cycling resource.
Still need to work out resource differences

svn-id: r9883
2003-08-28 01:10:36 +00:00
Travis Howell
4424687bb7 V1 games are now supported
svn-id: r9882
2003-08-27 16:12:45 +00:00
Travis Howell
221253b998 Force redraw so copy protection screen in monkeyega/vga is shown correctly.
svn-id: r9881
2003-08-27 15:13:04 +00:00
Torbjörn Andersson
9154abefa9 Add code to check for game-specific scaler and fullscreen settings, like we
do for the other game engines.

svn-id: r9880
2003-08-27 13:31:47 +00:00
Torbjörn Andersson
0119d6d642 Added code for smoothing upscaled sprites (for the highest detail setting).
I don't know if I got it right - the result doesn't look that great to me -
but at least the infrastructure is there.

This, I think, marks the point where BS2 graphics is pretty much done. Some
functions haven't been unstubbed yet, but I believe they're used for
debugging and/or profiling. I'm not sure they're worth the trouble.

Of course, there is still testing and clean-ups to make. For instance, I'd
like DrawSprite() to use malloc() a bit less.

svn-id: r9879
2003-08-27 07:17:12 +00:00
Torbjörn Andersson
1ebb3cb742 Unstubbed DimPalette() (used when pausing the game) and re-indented the
code to be more in line with the ScummVM coding style.

svn-id: r9878
2003-08-27 07:01:05 +00:00
Travis Howell
5f5b9c1e0c Ooops
svn-id: r9877
2003-08-27 06:56:54 +00:00
Travis Howell
48606fc1aa Update news
svn-id: r9876
2003-08-27 06:49:01 +00:00
Jonathan Gray
8b91af78db use file class for speech so people with clusters in different directories get to hear sound as well
svn-id: r9875
2003-08-27 06:32:42 +00:00
Travis Howell
e37c930533 Add change ot fix pallete issue in 256 color small_header games
svn-id: r9874
2003-08-27 03:54:50 +00:00
Travis Howell
06d07054c3 Fix room palette issues in small_header games.
Fix is only for EGA games so far.

svn-id: r9873
2003-08-27 01:12:18 +00:00
Joost Peters
6969357505 errr. this shouldn't have been committed
svn-id: r9872
2003-08-27 00:48:55 +00:00
Joost Peters
3443c5c3d0 Basic speech code, the change in speech.cpp is needed for me, but I am afraid it might break "speech.clu opening" for someone else..I'm confused as to how this all works. heh.
Anyway, if you hear no voices: this is probably where to look.

svn-id: r9871
2003-08-27 00:36:01 +00:00
Travis Howell
b91c182571 Revert v1 zak face costume color nack to 8, since palette is fixed.
svn-id: r9870
2003-08-26 16:09:09 +00:00
Travis Howell
63e89e5882 Fix room colors in v1 zak
svn-id: r9869
2003-08-26 15:56:37 +00:00
Torbjörn Andersson
fda7df57fa Handle the fadeNow parameter to BS2_SetPalette() so that the palette is
only uploaded to the backend if fadeNow == RDPAL_INSTANT. Otherwise, assume
that FadeServer() will do it for us, eventually.

I think this is the correct behaviour, and it prevents the bug where the
unfaded room image might flash by briefly when moving the mouse while
changing rooms.

svn-id: r9868
2003-08-26 15:19:29 +00:00
Torbjörn Andersson
8277c6cb79 The graphics detail settings partially work now. They only affect how
sprites are drawn, but I think that's how it should be.

1: No bells or whistles.
2: This setting adds sprite blending, e.g. the smoke at the docks or the
   display cases at the Glease Gallery.
3: This setting adds light map support, e.g. when walking under the shack
   at the docks.
4: This setting adds better scaling algorithms.

The first three settings should work fine now. In fact, the third setting
is what we used to implement. The fourth setting still needs work and
testing. I've added code for downscaling case, but frankly I'm not
convinced the result is any better than with the simpler scaler. I usually
can't even tell the difference.

Of course, my translation of the original code could very well be buggy.

svn-id: r9867
2003-08-26 06:53:00 +00:00
Torbjörn Andersson
f3675261a9 Actually, we used to draw blast text after blast objects. I changed the
order to fix the Full Throttle end credits. I guess I should have added a
comment about that. :-)

svn-id: r9866
2003-08-26 06:35:38 +00:00
Max Horn
6d4475cf04 cleanup
svn-id: r9865
2003-08-25 21:00:12 +00:00
Max Horn
52534e2cc3 fix actor position in V1 games (by eyeballing the original in dosbox); still seems to be off 1 pixel vertically (?), and actors still leave dirt
svn-id: r9864
2003-08-25 20:57:36 +00:00
Max Horn
8977d6ce07 v1 masking fixes
svn-id: r9863
2003-08-25 20:18:44 +00:00
Max Horn
f91c575338 fixing off-by-one buglet (harmless in 99% of cases since the 'invalid' _imgBufOffs entries always contain the value of the last valid one)
svn-id: r9862
2003-08-25 20:05:02 +00:00
Max Horn
95b8558191 check for costume format, not engine version
svn-id: r9860
2003-08-25 14:54:32 +00:00
Max Horn
953e4216b8 implemented V1/C64 object masking, and simplified drawStripC64Mask a bit
svn-id: r9859
2003-08-25 14:27:29 +00:00