aboutsummaryrefslogtreecommitdiff
path: root/graphics
AgeCommit message (Collapse)Author
2009-02-01Silenced MSVC warning (MSVC is being silly here...)Filippos Karapetis
svn-id: r36185
2009-02-01Merged r36175 from branch-0-13-0:Marcus Comstedt
Fixed alpha blending in the UI dialogs by adding alpha computation to the blendPixelPtr() function. To minimize impact, pre-multiplied alpha is assumed, meaning that the blending of the R, G and B components is the same both with and without hardware alpha. svn-id: r36177
2009-01-30Got rid of VectorRenderer::surfacePitch() & ↵Max Horn
VectorRenderer::bytesPerPixel(): the latter was not used, for the former it is silly to go through a virtual method to compute that value; all in all, this code performs too many unnecessary divisions ;) svn-id: r36151
2009-01-30Removed unused area convolution code from VectorRendererMax Horn
svn-id: r36148
2009-01-30do not include common/debug.h from common/util.hMax Horn
svn-id: r36143
2009-01-29A ton of code formatting fixes; also fixed warnings about single line loops ↵Max Horn
like 'while(cond);' by inserting newlines svn-id: r36127
2009-01-27Fixed hq2x ASM scalerMax Horn
svn-id: r36115
2009-01-27Re-enabled ASM versions of HQx scalers (oops)Max Horn
svn-id: r36099
2009-01-27Added new interpolate16_1_1_1_1 func, got rid of interpolate32_1_1_1_1Max Horn
svn-id: r36090
2009-01-27Replaced small lookup table in 2xsai by direct computationMax Horn
svn-id: r36089
2009-01-27Removed interpolate16_2 and interpolate16_3Max Horn
svn-id: r36088
2009-01-27Speed up HQ2x/HQ3x C++ version a bit (about 20% faster with -O3 on my system)Max Horn
svn-id: r36087
2009-01-27New code for interpolate32_1_1 overflowed in 565 mode, so reverting to the ↵Max Horn
old code (with some variable name changes to match the other interpolators) svn-id: r36086
2009-01-26Removed use of LUT16to32 in HQx asm versions, replacing some MMX code with ↵Max Horn
'plain' x86 code. Advantage: got rid of a 256kb table (reduces cache load, so over here the code is about as fast as before; in particular, since the affected interpolators are not used that often, it seems). Moreover, the new code is more accurate than the old ASM code, which actually differed from what our C++ HQx did (sacrificing precision for speed, i.e., cheating ;-) svn-id: r36078
2009-01-26Slightly improved interpolate32_1_1Max Horn
svn-id: r36075
2009-01-26error out when no renderer was created due to unknown/unsupported PixelFormatJoost Peters
svn-id: r36074
2009-01-25TUCKER: modified flic playback to make use of dirtyrectsGregory Montoir
svn-id: r36060
2009-01-25Fixed compilationFilippos Karapetis
svn-id: r36054
2009-01-25Renamed lowBits -> kLowBitsMask and highBits -> kHighBitsMaskMax Horn
svn-id: r36049
2009-01-24HQX: Removed some more branches (like in my previous commit) from ↵Max Horn
interpolation macros (they are meant to speed up things, but in reality cause a slowdown -- branches are expensive on modern CPUs) svn-id: r36047
2009-01-24Turned two vars of the HQ2x/HQ3x ASM implementation into global vars, to ↵Max Horn
make it possible to adjust them for 555 vs. 565 mode (555 mode is still a bit buggy, due to the interpolation code they use) svn-id: r36046
2009-01-24Moved 565 mode specific bits of HQ2x/HQ3x asm to 'variables'Max Horn
svn-id: r36034
2009-01-23Changed Graphics::ImageDecoder to allow custom PixelFormatsMax Horn
svn-id: r36026
2009-01-23Remark that the HQnx ASM code only works in 565 modeMax Horn
svn-id: r36025
2009-01-23Added some comments to hq2x/hq3x asm codeMax Horn
svn-id: r36024
2009-01-23Renamed Archive::openFile to createReadStreamForMemberMax Horn
svn-id: r36021
2009-01-23Made InitLUT use a PixelFormat instead of a ColorMaskMax Horn
svn-id: r36008
2009-01-22Added an '!=' operator to PixelFormat.Johannes Schickel
svn-id: r35998
2009-01-22Speed up HQ2x/HQ3x C versions by reordering tests in diffYUV: most likeliest ↵Max Horn
to be taken now is first, least likely is last svn-id: r35996
2009-01-22Got rid of several occurrences of gBitFormatMax Horn
svn-id: r35995
2009-01-22Got rid of gBitFormat in thumbnail scaler code (and even simplified it in ↵Max Horn
the process) svn-id: r35994
2009-01-22Moved Graphics::PixelFormat into its own header file; turned RGBToColor etc. ↵Max Horn
into methods, and added an operator== svn-id: r35993
2009-01-20Moved Surface::blit to backends/vkeybd/virtual-keyboard-gui.cppMax Horn
svn-id: r35965
2009-01-20merge SurfaceKeyColored into SurfaceAndre Heider
svn-id: r35951
2009-01-11Stop recalculating the x and y coordinates for every frame in playVideo()Filippos Karapetis
svn-id: r35819
2009-01-11Oops... *really* fixed compilationFilippos Karapetis
svn-id: r35818
2009-01-11Fixed compilationFilippos Karapetis
svn-id: r35817
2009-01-11Committed a modified version of wjp's patch for the video player:Filippos Karapetis
- Split the video player from the video decoders. It's now possible to have one video player for multiple decoders - Added the palette weight calculation from the BS1 engine into VideoPlayer::setPalette. It's now possible to find the values of the white and black colors via getWhite() and getBlack() (useful for subtitle overlays) - Adapted FTA2's movie playing code to the new changes to video player - Fixed a slight bug in the DXA decoder (_videoinfo.startTime was not initialized) svn-id: r35816
2009-01-11Merge in Virtual Keybpard & KeyMapper branch,Eugene Sandulenko
- Merge is perfromed in order to not let rotting the code - Makefile modifications were avoided Stuff to resolve: - Circular dependency of common/vkeybd from graphics/ - Make it compilable (?) - Add some keyboards - Decide on the key bindings svn-id: r35813
2009-01-07Reduced header depsMax Horn
svn-id: r35781
2009-01-07videoIsLoaded() -> isVideoLoaded()Filippos Karapetis
svn-id: r35777
2009-01-07Clear the screen to black before showing a video with playVideo() (it's ↵Filippos Karapetis
meant to play full screen videos) svn-id: r35776
2009-01-07Initialize DXA buffers to 0 when they're allocatedFilippos Karapetis
svn-id: r35775
2009-01-07Move videoPalette inside setPalette(), as it's only used thereFilippos Karapetis
svn-id: r35774
2009-01-07Further merging of the SMK and DXA players (the FLIC player is not done yet):Filippos Karapetis
- Added a new class, VideoPlayer(), from which both the SMK and the DXA player inherit. This class provides generic functions and public methods for the inherited video classes. Default implementations have been made for these public methods, and the virtual ones can be overriden in inherited classes - There is now a default implementation of the function that sets the video palette - A basic video player for inherited classes has been added with method playVideo(). This is able to play a fullscreen non-interactive video, which can be skipped with events set by the caller. Postprocessing methods, which draw upon each frame (e.g. subtitles) can be done by implementing performPostProcessing() - The FTA2 movie player now uses the new playVideo() method - The new video player code is compatible with the old one (i.e. no changes to the existing engine code are necessary), but it's now possible to reduce engine code for video playing considerably svn-id: r35772
2009-01-06An attempt to unify the different video players (FLIC player is not finished ↵Filippos Karapetis
yet) - step 1 svn-id: r35757
2009-01-06Specify that implementations of setPalette() should use an RGB paletteFilippos Karapetis
svn-id: r35755
2009-01-05Workaround issue in Graphics::Surface code on HaikuMax Horn
svn-id: r35745
2009-01-05Added a copyFrameToBuffer() method to the FLIC player too, like in the other ↵Filippos Karapetis
players svn-id: r35742
2009-01-05Added Doxygen-like comments to the FLIC player, and changed it a bit to have ↵Filippos Karapetis
similar method names as the DXA and Smacker players. Also, removed the convenience method hasFrames(), as it's the same as getFrameCount() > 0 svn-id: r35741