Commit Graph
4076 Commits
Author SHA1 Message Date
Filippos Karapetis e7836beabb SCI: Silence some very chatty warnings
Also, add an example room where kRemapToGray is called
2012-07-25 12:13:35 +03:00
Filippos Karapetis 6ade0e1457 SCI: Expand an uninitialized read workaround for SQ6 2012-07-25 02:29:57 +03:00
Filippos Karapetis 55e508b91f SCI: Add a workaround for QFG4, screen 140 (character selection screen) 2012-07-25 01:32:34 +03:00
Filippos Karapetis fe3fb1873c SCI: Cleanup of the palette remapping code 2012-07-24 22:54:37 +03:00
Filippos Karapetis 6f35130204 SCI: More work on color remapping
More transparency/color mapping effects are now working (e.g. the
flashlight at the Gedde tomb in GK1, the rays of light at Schloss Ritter
in GK1, the torch in the QFG4 demo and the shadows in QFG4, PQ4 and KQ7)
2012-07-24 22:34:46 +03:00
Filippos Karapetis bd281928cb SCI: Initial implementation of kRemapColors(kRemapByPercent)
Fixes some graphics glitches in the QFG4 demo and the menus of QFG4, by
implementing one of the transparency effects used mainly in SCI32.
Many thanks to fuzzie for her debugging info on QFG4 demo and to wjp for
his great help on the dissassembly
2012-07-24 03:53:44 +03:00
Filippos Karapetis 61e8fdbf1d SCI: Separate the early SCI11 version of kRemapColors from the SCI32 one 2012-07-24 00:18:31 +03:00
Matthew Hoops d4231fda1c SCI: Rewrite RobotDecoder to use the AdvancedVideoDecoder API 2012-07-22 23:17:36 -04:00
Matthew Hoops 0f0c6f9354 VIDEO: Rewrite the AVI code to use AdvancedVideoDecoder
In addition to using the new API, it should theoretically support multiple audio and video tracks now but that has not been tested.
2012-07-22 14:13:20 -04:00
Matthew Hoops a12b3ea2dd SCI: Move the SEQ code to the new VideoDecoder API 2012-07-20 20:52:58 -04:00
Filippos Karapetis eba2ed99f8 SCI: Bugfix for kCreateTextBitmap(). Fixes the ComPost text in the SQ6 demo 2012-07-17 00:50:02 +03:00
Filippos Karapetis 49c76c835b SCI: Only skip text in room 100 in the SQ6 demo 2012-07-16 12:11:22 +03:00
Filippos Karapetis 59ea918745 SCI: Temporarily disable text display in the demo of SQ6 to stop crashes 2012-07-16 12:04:34 +03:00
Filippos Karapetis 078c09c13e SCI: Update comments in kGetAngleWorker() 2012-07-09 01:33:38 +03:00
Filippos Karapetis b2fb2730d6 SCI: Also set the filename of the videoState struct when playing AVIs 2012-07-08 22:01:15 +03:00
Filippos Karapetis 262c7a1fb7 SCI: Fix a typo and add some comments to kGetAngleWorker() 2012-07-08 22:01:13 +03:00
Filippos Karapetis 10b3fdf247 SCI: Show information for correct file naming in the QFG4 import room
This information is shown in previous QFG versions, but it had to be
placed in a SCI32 graphics function in order to be shown in QFG4 too
2012-07-08 16:15:47 +03:00
Filippos Karapetis 2ef3f5e695 SCI: Update the virtual file selected in the QFG4 character import screen
This makes the character import screen in QFG4 functional, as the virtual
file index was never updated
2012-07-08 16:15:45 +03:00
Filippos Karapetis 4c43d6d85d SCI: Add a hack in kGetAngleWorker to fix bug #3540976
kGetAngle(Worker) has been implemented based on behavior observed
with a test program created with SCI Studio. However, the return values
have subtle differences from the original, which uses atan(). This
temporary hack will do for now till the implementation of kGetAngle is
done again. A simpler atan2-based implementation has also been added for
future reference
2012-07-08 16:15:43 +03:00
Filippos Karapetis 4ced5ccf30 SCI: Handle calls from MessageState::outputString() to arrays
This happens during the intro of LSL6 hires (room 110)
2012-07-05 13:58:43 +03:00
Filippos Karapetis fb215929ef SCI: Some updates to SCI32 kernel graphics functions
- Added a stub for kSetScroll, which sets the target picture immediately
for now
- Added an initial stub of kPalCycle (doesn't work correctly yet)
- Adjusted the signatures of kUpdateLine and kDeleteLine for LSL6
- Unmapped kSetHotRectangles again, with updated information on how it
is used in Phantasmagoria
2012-07-05 13:58:41 +03:00
Filippos Karapetis d61c5ae529 SCI: make g_base_opcode_formats and SciOpcodes a bit more readable 2012-07-04 11:57:40 +03:00
Filippos Karapetis dc1a097e50 SCI: Make the debug message in kSetShowStyle more verbose 2012-07-04 02:21:09 +03:00
Filippos Karapetis d74d211479 SCI: Mark the SetScroll and SetHotRectangles kernel functions as unused 2012-07-04 02:21:08 +03:00
Filippos Karapetis a0ad504059 SCI: Update some kernel table related comments 2012-07-04 01:06:58 +03:00
Filippos Karapetis 43224076e7 SCI: Handle the autosave call of Torin's Passage 2012-07-04 01:02:19 +03:00
Filippos Karapetis e0a3cfd21c SCI: FileIO subop 19 checks for directory validity
This is used in Torin's Passage and LSL7 when autosaving
2012-07-04 01:02:17 +03:00
Filippos Karapetis 72c59baf24 SCI: Merge and simplify the code that sets the kernel functions 2012-07-04 01:02:15 +03:00
Filippos Karapetis 5a47afea9e SCI: Move kGetWindowsOption together with the other misc kernel functions 2012-07-03 18:11:41 +03:00
Filippos Karapetis c80429008f SCI: Remove an unnecessary warning and related FIXME comments
It's perfectly normal behavior to have locals with a smaller segment ID
than the ID of their respective script, e.g. when scripts are
uninstantiated and then instantiated again
2012-07-03 03:34:30 +03:00
Willem Jan Palenstijn b091c0bd09 SCI: Remove unnecessary const-cast 2012-07-03 00:00:48 +02:00
Filippos Karapetis f6e4312665 SCI: Add a hack for a bug in the script handling code
When resetting the segment manager, sometimes the locals block for a
script is placed in a segment smaller than the script itself. This
shouldn't be happening, but it isn't fatal, however it should be resolved
in a proper manner
2012-07-02 12:49:10 +03:00
Filippos Karapetis 44935117f4 SCI: Fix a workaround for an uninitialized variable in SQ4CD
This makes sure that the workaround works for subclassed objects as well,
such as "theProfessor" talker. Fixes bug #3539350 - "SCI: SQ4 CD -
Crash in sewer when text and speech enabled"
2012-07-02 12:49:08 +03:00
Filippos Karapetis 2c161796c5 Merge pull request #239 from bluegr/skipsavecompression
COMMON: Allow the savefile manager to create uncompressed saves
2012-07-01 11:08:08 -07:00
Filippos Karapetis 848575b826 SCI: Fix bug #3538418 in SQ4CD
Add a script patch for another speech/subtitles script, which handles
the babble icon shown in the quit/death dialogs (e.g. the two guys from
Andromeda in the quit dialog). Now, these dialogs have speech both in the
speech and the speech + subtitles modes
2012-06-28 04:06:58 +03:00
Filippos Karapetis cc77688696 SCI: Remove an incorrect error check in validateExportFunc() 2012-06-28 03:29:34 +03:00
Filippos Karapetis 7e66cbd468 SCI: Rename a parameter in validateExportFunc()
This ensures that it won't be confused with a function with the same name
2012-06-26 11:13:14 +03:00
Filippos Karapetis 99de89c974 SCI: Add a workaround for script bug #3537232
The bug in question is "SCI: SQ4 Floppy DOS title screen skipping too
quickly", and is caused by game scripts not waiting between palette calls
2012-06-24 19:55:28 +03:00
Filippos Karapetis 20b6770808 SCI: Change the program counter (PC) to be a 32-bit variable
This is needed for future support of large SCI3 scripts. The program
counter is isolated and does not interfere with other parts of the VM,
plus it does not get stored in saved games, so it's pretty straightforward
to convert
2012-06-23 21:45:26 +03:00
Filippos Karapetis c1eb93bc5a SCI: Clean up validateExportFunc() and related functions
Also renamed some SCI3 related code to indicate when it's SCI3 specific
2012-06-23 21:45:24 +03:00
Filippos Karapetis c075aafddb SCI: Add support for the debug opcode "file" in our script dissassembler
Also set the correct name for the debug opcode "line"
2012-06-23 21:45:22 +03:00
Filippos Karapetis d78ed6f6ad SCI: Remove a duplicate sanity check 2012-06-23 21:45:20 +03:00
Filippos Karapetis f06eb05e8c SCI: Implement kPlayVMD subop 23 (set palette range)
Fixes the wrong palette during video sequences in GK2 and the demo of RAMA
2012-06-23 21:45:18 +03:00
Filippos Karapetis 99b1c73639 SCI: Fix silly typo
Thanks to digitall for spotting this
2012-06-21 22:57:00 +03:00
Filippos Karapetis 76f3f1b136 SCI: Fix warnings 2012-06-21 22:24:22 +03:00
Filippos Karapetis eb8230988a SCI: Don't compress exported heroes in the Quest for Glory games
This allows them to be used by other games in the series not supported
by ScummVM (i.e. QFG4, QFG5 and the fanmade AGS version of QFG2)
2012-06-21 12:15:25 +03:00
Johannes Schickel 4fb9bceabc Merge pull request #246 from lordhoto/osystem-void-buffers
OSYSTEM: Use void buffers for screen/overlay/mouse buffers and proper pitch values for overlay code
2012-06-20 08:02:26 -07:00
Filippos Karapetis 5a2e65469f SCI: Change kRemapColors(5) again. Fixes the colors in QFG4 2012-06-20 13:36:29 +03:00
Filippos Karapetis bd3366c208 SCI: Add a warning for kRemapColors(RemapByPercent) 2012-06-20 12:35:59 +03:00
Filippos Karapetis c27741ac3b SCI: Implement kRemapColors(5 - set color intensity)
It's finally nighttime in the first murder scene in PQ4
2012-06-20 12:31:51 +03:00