aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
AgeCommit message (Collapse)Author
2016-02-08SCI: Make kMemory behavior like original SCIMartin Kiewitz
We added 1 to the size as a workaround, but it's not really a workaround, because original SCI allocated at least 2 bytes more. They also made sure the size is even. We now do the same.
2016-02-08SCI: Zero out dynamically allocated memoryMartin Kiewitz
Fixes Mixed Up Mother Goose SCI1.1 crash when saving And could potentially fix all sorts of other issues Original SCI only zeroed out heap on init.
2016-02-08SCI: Script patch for PQ1 stuck in briefing roomMartin Kiewitz
Fixes ego getting stuck when briefing is about to start. Which is bug #5865. Also happened in original interpreter. Quite a complicated issue, details in patch comments
2016-02-08SCI: Script patch for SQ4 getting shot while ropeMartin Kiewitz
Solves Space Quest 4 "getting shot while getting rope" game bug Was an original game bug and happened in original SCI as well. Fixes bug #6076
2016-02-06SCI: Screen pixel optimizationsMartin Kiewitz
Put things like putPixel() into screen.h, so that it can be inlined. Also don't use look up tables for those methods anymore and instead calculate offsets manually, because that should be faster.
2016-02-06SCI: Fix bits size calculation for upscaled hiresMartin Kiewitz
in screen class (calculating how many bytes are needed to save a specified area of various screen maps)
2016-02-06SCI: Implement kernelSyncWithFramebuffer using copyFromScreen.Johannes Schickel
2016-02-06SCI: Properly use pitch in GfxScreen::copyFromScreen.Johannes Schickel
2016-02-05SCI: Clean up the op_infoToa and op_superToa SCI3 opcodesFilippos Karapetis
2016-02-05SCI: Silence false positive warning in MSVCFilippos Karapetis
2016-02-05SCI: Blocking ScummVM auto-save slot 0 for savingMartin Kiewitz
Auto-saving is not used by SCI, but slot 0 is ScummVM "standard" for auto-saving, that's why it's not available for saving anymore. Jones still uses slot 0 for saving/restoring (because it's hardcoded and changing it would break it somewhat) Deleting + restoring is still possible of couse.
2016-02-05SCI: QfG1/2/3/4 character file detection changedMartin Kiewitz
No longer checking for .sav file suffix, but instead checking room number instead. The user is able to change the suffix, which would have resulted in a compressed character file.
2016-02-03SCI: code/define formattingMartin Kiewitz
2016-02-03SCI: Remove hardcoded value in getScummVMEvent()Martin Kiewitz
2016-02-02SCI: make event type, modifiers + character uint16Martin Kiewitz
2016-02-02SCI: Make event handling helper tables staticMartin Kiewitz
2016-02-02SCI: Fix comment about debugger keysMartin Kiewitz
Was changed to Ctrl-Shift-D at some point, because a SCI game uses Ctrl-D. Comment wasn't changed accordingly back then.
2016-02-02SCI: Keyboard event handling cleanupMartin Kiewitz
Renamed "ourModifiers" to "scummVMKeyFlags" Now also using the flags directly from the ScummVM event in case it actually was a Keyboard event.
2016-02-02SCI: Fix regression of previous keycode commitMartin Kiewitz
7aeadba863ed1893fa6095008d35b32ce5117749 Thanks LordHoto for spotting it
2016-02-02SCI: Removed ".data" from SciEventMartin Kiewitz
Was the ScummVM-system-Keycode, sometimes modified. Changed Menu/Portrait/Controls32-code to use .character instead. Cleaned up a bit of code in getScummVMEvent()
2016-02-02SCI: fix typo in commentMartin Kiewitz
2016-02-02SCI: Do not pass/use .data for mouse button typeMartin Kiewitz
Also added comment about .data field. Should be renamed.
2016-02-02SCI: Fix control/Fx keys not working anymoreMartin Kiewitz
Was effectively caused by commit adding the keyboard driver bug for SCI0/SCI01, although the bug is actually real and happens. It seems Sierra did not check the key-modifier in kMenuSelect. We do and that's why the code didn't recognize all sorts of menu keys anymore. We now isolate the lower byte before comparing. I also noticed, that Sierra passed keyboard modifiers in mouse events. This was probably done, so that owners of a 1-button mouse were able to right-click. We do this now too. Also added information about mouse modifiers in kGetEvent. Moved the mouse modifier code into getScummVMEvent(). This should fix bug #7009.
2016-02-01SCI: Revert revert the keyboard handling changesMartin Kiewitz
It seems the issues on AmigaOS aren't actually caused by the new code. Reverting the revert.
2016-02-01SCI: Revert ascii detection for key event handlingMartin Kiewitz
Seems to cause at least issues on AmigaOS probably b/c SDL. See bug #7009. Added FIXME. Underlying issue needs to get fixed in SDL backend or in SDL itself.
2016-01-29SCI: add code to make numpad cursor keys work againMartin Kiewitz
When the users presses keys on the numpad, we get digits in .ascii even when Num-Lock is not enabled. This caused numpad cursor keys not working anymore. Imo we should only get .ascii in those cases, when Num-Lock is enabled.
2016-01-28SCI: change ascii detection for key event handlingMartin Kiewitz
New way is probably better. Sadly we get a few keys atm in the ascii field, like cursor left and the function keys. That's why a check for <= 0xFF is needed.
2016-01-26SCI: Only select save slots for kernel callsMartin Kiewitz
Previous code also selected files called e.g. "[targetname].abc"
2016-01-26SCI: Only request actual save slots in listSaves.Johannes Schickel
2016-01-22SCI32: PQ4 seems to support high resolution tooMartin Kiewitz
2016-01-22SCI: add user option for high resolution graphicsMartin Kiewitz
Instead of choosing Windows as platform, users can now also simply click this option for Gabriel Knight 1 + King's Quest 6 Defaults to high resolution graphics
2016-01-20SCI: Fix SCI32 hires detection making PQ4 unusably slowColin Snover
2016-01-20SCI: Fix SCI32 kPalVary subops 1, 4, 5, 7, 8, 9 using wrong indexesColin Snover
2016-01-15SCI: Do not map SetScroll twiceFilippos Karapetis
2016-01-15SCI: Indent comment properly.Johannes Schickel
2016-01-15SCI3: Add comment re new functionLars Skovlund
2016-01-15SCI: Add an initial implementation of kStringTrimFilippos Karapetis
Thanks to lskovlun for his help
2016-01-15SCI: Use the actual segment in the segment manager for SCI3 gamesFilippos Karapetis
2016-01-15SCI: Add a hack in music init for MUMG Deluxe, so that it startsFilippos Karapetis
2016-01-15SCI: Allow null references to kStringGetData, for Torin's PassageFilippos Karapetis
Added a TODO for rhis, for now
2016-01-15SCI: Fix usage of override functions and silence a warningFilippos Karapetis
2016-01-15Merge pull request #649 from csnover/sci32-kPaletteFilippos Karapetis
SCI32: kPalVary, kPalette fade support, kPalette findColor support, improvements to game time management
2016-01-14SCI: Minor clean-ups to comments and null pointer valuesColin Snover
2016-01-14SCI: Implement SCI32 kPalette findColor and matchColorColin Snover
It seems that findColor is used only by kPalette, and matchColor is used only by Remap.
2016-01-14SCI: fix kernelCoordinateToPriorityMartin Kiewitz
do not check _priorityTop. Sierra never did it (I checked all sorts of SCI versions, kq4 early, kq5, kq6, etc.) and checking it will cause at least a priority issue in lsl2 in room 54 (airplane that is taking off will be drawn using priority 1 instead of 0)
2016-01-14SCI: Use tick-based timing more consistentlyColin Snover
This means tick-based times are saved to save games, as in SCI32 engine, instead of seconds, which are not accurate enough. It also means places in SCI engine that need to access game ticks should do so through g_sci instead of g_system or g_engine.
2016-01-14SCI: Implement SCI32 kPalVary and kPalette setFadeColin Snover
This also fixes kPalCycle signatures to be more accurate.
2016-01-14SCI: Add kPalMorph stubColin Snover
2016-01-14SCI: Fix bad spacing in kernel tablesColin Snover
2016-01-10SCI: Fix compilation when SCI32 is disabledWillem Jan Palenstijn
Thanks bSr43