133 Commits

Author SHA1 Message Date
Torbjörn Andersson
df4f95f805 Let the [cursor] palette manager handle disableCursorPalette() too, to avoid
cursor glitch in at least some HE games which first set a cursor palette, and
then disable it. (The disabled palette would be re-enabled after dismissing the
GUI.)

svn-id: r23081
2006-06-13 09:48:46 +00:00
Torbjörn Andersson
f57f024822 Format the guifont[] data for better readability
svn-id: r22916
2006-06-04 15:39:08 +00:00
Torbjörn Andersson
3114f19d94 MPEG player fixes:
* Initialise _frameWidth and _frameHeight to prevent them from being undefined.
* Fix BS2 subtitle positioning. (Fixes bug #1499916)
* In BS2, copy the frame to the backend in 8-bit mode.
* Fix compilation in 8-bit mode.

BS2 subtitles aren't quite right in 8-bit mode, but I expect we want to
re-design things a bit if we ever add DXA cutscenes. We can fix minor details
then.

svn-id: r22859
2006-06-03 09:43:10 +00:00
Torbjörn Andersson
c8d3f5a80f Should use delete[] instead of delete here, too. (I knew where the cursor
manager code was copied from. :-)

svn-id: r22675
2006-05-27 11:55:03 +00:00
Willem Jan Palenstijn
0fef7b32b2 delete[] instead of delete
svn-id: r22673
2006-05-27 11:47:44 +00:00
Torbjörn Andersson
79819da301 The GUI never asked for the cursor to be visible. I'm not sure why that used to
work before the cursor manager. Oh well, the launcher should have a visible
cursor again, knock on wood.

svn-id: r22641
2006-05-25 23:20:35 +00:00
Torbjörn Andersson
8062eb6ec3 Set and show/hide mouse cursors through a "cursor manager" (analogous to the
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.

If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?

svn-id: r22639
2006-05-25 22:51:42 +00:00
Torbjörn Andersson
21a74b6f41 Cleanup.
svn-id: r22635
2006-05-25 20:29:17 +00:00
Torbjörn Andersson
0e6831fa32 Fixed stupid error in replaceCursorPalette().
svn-id: r22629
2006-05-25 19:22:28 +00:00
Torbjörn Andersson
a49c64799f Fixed comment to make it less obvious where I copied the general structure of
the palette manager from.

svn-id: r22628
2006-05-25 18:31:56 +00:00
Torbjörn Andersson
d7296ae666 Make it so that if the new cursor palette to be set has zero colours, the
cursor palette is disabled.

Also, when replacing a cursor palette, try to re-use the old palette buffer, as
a minor optimization. (Not that these functions should need any optimization,
but it's simple and shouldn't hurt.)

svn-id: r22554
2006-05-21 13:27:18 +00:00
Torbjörn Andersson
75f226953a Oops, I guess I never got around to fully implement replaceCursorPalette().
svn-id: r22552
2006-05-21 12:32:39 +00:00
Torbjörn Andersson
3e973d2a91 Forgot to set g_initialized to true.
svn-id: r22544
2006-05-20 11:24:45 +00:00
Torbjörn Andersson
6cdd98b617 After the GUI has finished, restore the old cursor palette (if any). For this
to work, cursor palette now has to be set using the new "palette manager". See
graphics/paletteman.cpp

svn-id: r22543
2006-05-20 10:59:25 +00:00
Torbjörn Andersson
e563d0c182 Renamed screenChanged() to handleScreenChanged().
svn-id: r22518
2006-05-18 13:58:33 +00:00
Torbjörn Andersson
5c1f91eed4 Allow changing scaler while playing MPEG cutscenes.
svn-id: r22515
2006-05-18 13:18:02 +00:00
Eugene Sandulenko
14ec3f45fa - Heavily modified patch #1214784: "Disable overlay scaling"
- Eriktorbjorn's patch from same tracker item for scaling sword1/2 cutscenes
  is applied as is. It lacks resolution switch on-the-fly.
- GUI widgets are repositioned on the fly and use most space, even aspect
  ratio corrected screen is used without scaling
- Heavy tesing is required, but works for me in all cases except for bug
  #1483272: "GUI: SCUMM pause dialog breaks upon scaler switch" which needs more
  work.
- I probavly broke some backend or two

svn-id: r22505
2006-05-17 23:52:45 +00:00
Eugene Sandulenko
d2546e3979 - Updated MSVC8 project files
- Renamed base/options.cpp to base/commandLine.cpp because of conflict
  with gui/options.cpp which sit in same directory in MSVC builds
- Moved AudioCDManager singleton declaration outside of Audio namespace
- Fixed numerous MSVC warning of potentially uninitialized variables and
  int <-> bool conversions.

svn-id: r22397
2006-05-09 14:16:43 +00:00
Max Horn
27307acd7c Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
svn-id: r22231
2006-04-29 22:33:31 +00:00
Lars Persson
aec70b0bb2 Implementation and declartion in intern.h differed. Changed so both is using the same datatype.
svn-id: r22074
2006-04-21 20:56:53 +00:00
Eugene Sandulenko
718532b386 Fix ASM HQ routines, because RGBtoYUV and LUT16to32 are on heap now.
svn-id: r22041
2006-04-19 22:53:37 +00:00
Max Horn
a76689ed71 Make use of triple-interpolation function in SuperEagel (should save a few cycles... not that it really matters :)
svn-id: r21985
2006-04-17 18:54:20 +00:00
Max Horn
43143daca7 Replace interpolate32 calls by interpolate16 calls (as we only work on single pixels here currently)
svn-id: r21983
2006-04-17 18:28:19 +00:00
Max Horn
c128bad7df Simple optimization
svn-id: r21982
2006-04-17 18:23:16 +00:00
Max Horn
b47e531425 Renamed and merge some of the pixel interpolation functions (the names still could be better)
svn-id: r21981
2006-04-17 18:17:02 +00:00
Max Horn
340705c138 Allocate LUT/YUV tables on the heap
svn-id: r21971
2006-04-17 11:16:11 +00:00
Max Horn
35a2fc4028 Modify InitLUT to make use of ColorMasks, making it easier to add support for other color modes eventually. This also fixes the computation of LUT16to32 which so far always assumed 565 mode.
svn-id: r21970
2006-04-17 11:11:07 +00:00
Max Horn
2732ed3dce Fixed (A)RGBToColor templates
svn-id: r21969
2006-04-17 11:09:21 +00:00
Max Horn
d7944e839b Since we define alpha value 255 to mean 'opaque', or T::kAlphaMask into the result of RGBToColor
svn-id: r21968
2006-04-17 10:44:02 +00:00
Max Horn
fe9f60e219 Add color conversion functions based on ColorMasks, to demonstrate how this would work
svn-id: r21967
2006-04-17 10:41:18 +00:00
Max Horn
ea85e8c986 Moved ColorMasks to their own new header graphics/colormasks.h, so that both the scalers and the GUI code can access them. Also added (untested) entries for 1555, 444, 888 and 8888 modes
svn-id: r21966
2006-04-17 10:22:05 +00:00
Max Horn
d27396d51d cleanup
svn-id: r21964
2006-04-17 09:35:42 +00:00
Max Horn
de250812e5 Removed my Altivec version of the hqx blitters, since it (a) didn't work with newer GCC versions, (b) speed was improved on some systems, but actually slower on others, and (c) even on my old 400 Mhz G4 hqx is fast enough w/o it
svn-id: r21961
2006-04-17 08:38:26 +00:00
Johannes Schickel
e9cbf5fcbd - Moves Graphics::loadFont to Graphics::NewFont::loadFont
- adds code for caching of fonts (just for Graphics::NewFont)
- implements cache using in the modern theme for custom fonts
- adds cache file for current normal font in the theme zip file

svn-id: r21952
2006-04-16 19:54:39 +00:00
Max Horn
1e47edcd22 cleanup
svn-id: r21921
2006-04-15 21:29:41 +00:00
Johannes Schickel
96cf7028b9 - implements .bdf font loader based on convbdf (sure could have some clean up)
- adds three different font styles to the themes (normal, bold (default one), italic)
- implements code for specifing the font files in the theme config ('fontfile_normal','fontfile_bold' and 'fontfile_italic' in the 'extra' section)
- changes EditTextWidget to use the normal font (has some minor aligment problems with the caret now, though)
- extends the FontManager (new functions: getFontByName, assignFontToName, removeFontName)
- adds the font style constans to the builtin constants for the evaluator)

svn-id: r21868
2006-04-14 02:16:55 +00:00
Max Horn
1470dadb1d Changed File::open to take a Common::String as file name parameter
svn-id: r21867
2006-04-14 01:48:51 +00:00
Max Horn
5072816109 Use const keyword to help compiler optimize code
svn-id: r21866
2006-04-14 01:47:33 +00:00
Max Horn
e4930bd96d Don't use HAVE_CONFIG_H / config.h directly, use scummsys.h instead
svn-id: r21605
2006-04-04 21:45:13 +00:00
Max Horn
9217472f0e With this change, backends are now responsible for instantiating their OSystem class before calling scummvm_main (Note: PalmOS and Symbian are not yet converted, and won't work currently)
svn-id: r21557
2006-04-02 14:16:31 +00:00
Max Horn
8cdee5a931 Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
svn-id: r21500
2006-03-29 15:59:37 +00:00
Oystein Eftevaag
58eed3830b * 'make bundle' now copies the default theme files into the bundle.
* Common::File will now look inside the application bundle on MacOS X for a file if
it can't find it anywhere else (so it'll find default-theme.ini and .zip)
* Cleaned up some #ifs.

svn-id: r21308
2006-03-15 07:43:44 +00:00
Oystein Eftevaag
c3d8674a26 Adds support for building on Intel Macs, using a modified
version of patch 1448395 by Aubin and some of my 
own changes.

Notably:
* Two elements of a struct in backends/midi/quicktime.cpp
needed to be forced to BE.
* NASM set to build Mach-O binaries
* configure now checks for Altivec support on Darwin hosts,
instead of assuming it. Altivec support can also be disabled (not 100% sure if t
his is actually needed, but might be handy for crosscompiling).
* The aliasing of the symbols contained in the .asm files
done on Windows were also needed on MacOS.

Note that while the asm code is properly compiled and linked
in, HQ2/3x support will still not work properly on Intel macs
if NASM is enabled.

svn-id: r21280
2006-03-14 12:18:04 +00:00
Chris Apers
65e688ac15 Fixed compilation, this could be used with all systems (?)
svn-id: r21112
2006-03-06 19:44:15 +00:00
Paweł Kołodziejski
95116f2098 define int types for msvc to allow compile mpeg2 library. msvc does not fully conform C99
svn-id: r21073
2006-03-04 15:26:26 +00:00
Max Horn
48fb7ea979 Fix bug #1436178 (ALL: int8_t in graphics/animation in conflict with ISO99 C)
svn-id: r20877
2006-02-25 14:42:21 +00:00
Max Horn
9cec516e51 Moved fonts to a new dir graphics/fonts
svn-id: r20800
2006-02-20 20:42:03 +00:00
Max Horn
e49e7ebb3f Fixing up my previous commit: finished moving common/scaler* to graphics
svn-id: r20798
2006-02-20 20:40:12 +00:00
Max Horn
7335d348ba Moved common/scaler* to graphics/
svn-id: r20797
2006-02-20 20:29:02 +00:00
Max Horn
80cf2fa46f Reduced data duplication in module.mk files; added module.mk files for null and x11 backends; added engines/module.mk
svn-id: r20584
2006-02-12 00:16:31 +00:00