aboutsummaryrefslogtreecommitdiff
path: root/engines/cine/gfx.cpp
AgeCommit message (Collapse)Author
2008-11-18Make the 256 color transformPaletteRange-function and Future Wars's ↵Kari Salminen
refreshPalette-function compliant with disassembly. svn-id: r35118
2008-10-22Remove unnecessary function overloadings for loadBg16 and loadBg256.Kari Salminen
svn-id: r34840
2008-10-22Make incrustMask and incrustSprite only draw to the current background in ↵Kari Salminen
Operation Stealth. svn-id: r34838
2008-08-25Added a warning to bug #2055912's fix committed in revision 34132.Kari Salminen
svn-id: r34146
2008-08-24Fix for bug #2055912: FW: incrustSprite fails on savegame loading.Kari Salminen
What little testing I did, this seems to work, but more testing would be nice. svn-id: r34132
2008-08-20Fix font loading:Kari Salminen
Fixes bug #2058539: OS: Assert starting demo (regression). May possibly also fix bug #2019344: FW: crash with Amiga Italian version (photocopy room), but not sure about that because I couldn't reproduce the bug myself. svn-id: r34065
2008-08-17Added some documentation about how data is unpacked in gfxConvertSpriteToRaw ↵Kari Salminen
(Learned this from trying to implement convertPI1_2 i.e. gfxConvertSpriteToRaw myself to see if that was the problem with the Operation Stealth's labyrinth arcade sequence). svn-id: r33976
2008-08-17Forwardport of branch-0-12-0's r33966: Fix to Future Wars's rendering of ↵Kari Salminen
type 0 overlays (i.e. color sprites). Objects with negative frame values are supposed to be jumped over (Verified with disassembly). svn-id: r33967
2008-08-14Moved showing of the collision page from Alt-key to F11-key because Alt ↵Kari Salminen
conflicted with taking screenshots using Alt-s. Great. Hopefully F11 doesn't conflict with anything useful. svn-id: r33877
2008-08-14Added debug showing of the collision page when pressing the Alt key. Alt ↵Kari Salminen
isn't used for anything else so one might as well use it for this. svn-id: r33871
2008-08-13Type 21 overlay comment update (Found the drawing routine in the disassembly ↵Kari Salminen
and checked the original for how the oxygen gauge during the first arcade sequence looks like. They're some kind of sprites most likely and not just simply filled rectangles). svn-id: r33826
2008-08-12Fixed drawPlainBox's boundary checking (It wrote outside the screen ↵Kari Salminen
occasionally). Now using the Common::Rect for clipping, yay! It's good. svn-id: r33811
2008-08-12Fix for GCC warning in OSRenderer::renderOverlay: declaration of 'len' ↵Kari Salminen
shadows a previous local. svn-id: r33808
2008-08-12Changed commandBuffer from a char[80] to Common::String and made ↵Kari Salminen
FWRenderer::setCommand use a Common::String. Hopefully this might help with the command buffer overflow stuff, although this isn't a fix for the problem behind it, just a bandaid. svn-id: r33793
2008-08-11Made Operation Stealth's action failure messages use a background color set ↵Kari Salminen
by the opcode 0x49 'o1_setDefaultMenuBgColor'. Should fix the 'text hard to read' problems. svn-id: r33792
2008-08-11Implemented drawMessage changes for Operation Stealth's timed cutscenes ↵Kari Salminen
(Negative colors are used for timed text boxes that are totally transparent, only the text is drawn). svn-id: r33790
2008-08-11Moved fontParamTable inside TextHandler struct and made it a constant size ↵Kari Salminen
as that's what it is (No need for using malloc & free anymore). Previously we would've tried to free an array that wasn't heap-allocated in freePoldatDat (Freeing fontParamTable_standard or fontParamTable_alt), that's fixed. svn-id: r33786
2008-08-09Converted animDataTable from a plain array to a Common::Array. Should help ↵Kari Salminen
to catch out of bounds access errors which may cause memory corruption. svn-id: r33726
2008-08-09Converted objectTable from a plain array to a Common::Array. Should help to ↵Kari Salminen
catch out of bounds access errors that may cause memory corruption. svn-id: r33725
2008-08-09Made type 21 & 22 overlays not be flipped (The oxygen gauge looks actually ↵Kari Salminen
better when it reaches zero this way although in its fully charged state it still does look a bit off. Disassembly seems to agree with not flipping the overlays so I'm going with this one for now). svn-id: r33722
2008-08-09Made drawPlainBox's effective width and height always at least one.Kari Salminen
- Makes oxygen gauge during first arcade sequence visible as it gave drawPlainBox a height of zero. Made type 21 overlays be drawn as type 22 (Filled rectangle). - For an example the oxygen gauge during the first arcade sequence is a type 21 overlay. Flipped type 21 & 22 overlays as it looks correct for the oxygen gauge. These features are quite WIP, they need testing to see if they're correct. svn-id: r33721
2008-08-09Added preliminary version of drawing type 22 overlays (Such overlays are ↵Kari Salminen
added with opcode 0xA4 (o2_loadMask22) and removed with opcode 0xA5 (o2_unloadMask22)). Things might be wrong so needs testing! WIP! svn-id: r33713
2008-08-09Added updating of global variable var5 to Operation Stealth's renderOverlay ↵Kari Salminen
function's type 20 overlay case (Previously var5 wasn't updated anywhere!). Also added a lower bound for var5's value into a comparison (Previously only the upper bound was tested for). svn-id: r33712
2008-08-07Added precautionary tests to background scrolling function in Operation ↵Kari Salminen
Stealth to avoid possible memory corruptions. svn-id: r33688
2008-08-07Made drawPlainBox handle border cases so it won't corrupt memory so easily. ↵Kari Salminen
This may help with some memory corruption issues when for an example trying to draw the player's command string out of screen. svn-id: r33687
2008-08-07Fix for popup boxes sometimes blocking animation when they shouldn't in ↵Kari Salminen
Operation Stealth: - Made waitForPlayerClick updating more like in the original. - Moved removeMessages to after the frame drawing in main loop hoping to be more like the original. - Added an additional test to Operation Stealth's implementation of overlay type 2 drawing. - Added an additional parameter incrementing and testing to Operation Stealth's removeMessages. Hopefully this won't cause any regressions in Future Wars! svn-id: r33686
2008-08-06Renamed page3Raw to collisionPage so it's more apparent what it does.Kari Salminen
svn-id: r33669
2008-08-06HACK: Force oxygen to maximum during Operation Stealth's first arcade sequence.Kari Salminen
This way the arcade sequence is completable now. This hack should be removed later and the first arcade sequence be made properly playable! svn-id: r33667
2008-07-28Added loading of temporary Operation Stealth savegames. Needs testing!Kari Salminen
- Music related settings and adBgVar0 & adBgVar1 aren't loaded currently. Modified resetEngine to also reset more of the Operation Stealth specific variables. Added getter for background scrolling value. Changed additional background indices 1 & 2 from byte to uint16. Made savegame loading functions return !in.ioFailed() as return value instead of true as previously. svn-id: r33379
2008-07-27Added a preliminary saving routine for Operation Stealth (Disabled by ↵Kari Salminen
default, needs more work still. WIP!). Added backgrounds' name saving (8 names in Operation Stealth instead of just 1 like in Future Wars). Added 256 color palette saving and restoring (One of the palettes isn't properly handled yet though). svn-id: r33349
2008-07-22Fix for bug #2019355 (FW: broken compatibility with 0.11.1 saves):Kari Salminen
- Changed savegame loading related functions to use SeekableReadStream rather than InSaveFile so MemoryReadStream can be used transparently. - Fixed loadResourcesFromSave to load multiframe animations correctly and to load 0.11.0/0.11.1 Future Wars savegames which used a slightly different format. - Added a savegame format detector that tries to detect between the old Future Wars savegame format, the new one and a broken revision of the new one. - Changed makeLoad to first load the savegame fully into memory and only then handle it (If the savegame's packed then it's unpacked first). If the packed savegame can't tell its unpacked size (i.e. it's using zlib format) then we'll try to load up to 256kB of the savegame data. Thanks to wjp for his help with nailing this release critical bug. svn-id: r33192
2008-07-17Patch #2019455: Patch for reducing the BSS size of Cine engine.Kari Salminen
svn-id: r33087
2008-07-07Fix for bathroom door opening crash in Operation Stealth's start.Kari Salminen
svn-id: r32951
2008-06-09Fixed warnings. (Mainly, GCC 4.3 doesn't want you to use "char" as an arrayTorbjörn Andersson
index. Probably because it's undefined whether or not it's signed.) svn-id: r32637
2008-05-29Fixed a crash that occurs when OS startsFilippos Karapetis
svn-id: r32366
2008-05-24Patch #1969189: "CinE renderer rewrite"Eugene Sandulenko
svn-id: r32257
2008-04-21Patch #1941066: "CinE sprite overlay rewrite" courtsey of next_ghostEugene Sandulenko
svn-id: r31651
2008-04-07Patch #1913862: "CinE Script system"Eugene Sandulenko
svn-id: r31444
2007-12-14renamed several structures, variables and functionsGregory Montoir
svn-id: r29860
2007-12-13use CLIP template for clipping, made an array static const and renamed ↵Gregory Montoir
MAX_OBJECTDATA to MAX_VAR svn-id: r29853
2007-12-13CleanupFilippos Karapetis
svn-id: r29843
2007-12-09- minor screen fix for OSGregory Montoir
- added new debug channel for sound - updated 2 opcodes comments svn-id: r29790
2007-12-08simplified gfxConvertSpriteToRaw, some renamingGregory Montoir
svn-id: r29758
2007-05-30Updated legal headers in source files, based on what Pidgin (the IM client ↵Max Horn
formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots svn-id: r27024
2007-05-19removed 4 unused offscreen buffers ; also changed several 64k buffers to be ↵Gregory Montoir
dynamically allocated. svn-id: r26879
2007-05-18added debug code to display sprite masksGregory Montoir
svn-id: r26865
2007-05-18added missing MIN() callsGregory Montoir
svn-id: r26864
2007-05-17moved gfx related functions from various.cpp/.h to gfx.cpp/.h and fixed ↵Gregory Montoir
indentation of previous commit svn-id: r26863
2007-05-17added code for gfxSpriteFunc1 and gfxSpriteFunc2, which are used for sprite ↵Gregory Montoir
masking (see also bug #1624797) svn-id: r26861
2007-02-12Merged the "palette manager" into the cursor manager. It was only used toTorbjörn Andersson
manage *cursor* palettes, so the name was misleading. svn-id: r25500