Commit Graph
4861 Commits
Author SHA1 Message Date
sluicebox 25a7fc6ab1 SCI: Don't create PRN file in ECO2
Ticket #14640
2023-10-05 13:46:00 -07:00
sluicebox 0ff2062cfa SCI: Update flag debugger for ECO1 floppy 1.1 2023-10-05 13:46:00 -07:00
Ralph Caraveo eeddc6fce2 SCI: Fix crash in Island of Dr. Brain microscope puzzle - bug 14546
When clicking "buy clue" in the microscope puzzle, the game could crash with a division by zero in
cartesian:buyClue, depending on the initialization of the puzzle itself. Because the initialization is
random and non-deterministic, this crash would only occur very rarely
2023-09-30 12:41:28 +03:00
sluicebox 2a9439182a SCI32: Fix QFG4 crash on empty import dialog
QFG4 attempts to copy from a null array/string, and this had no effect
in the original interpreter. Now we behave the same.

Update kFileIOOpen to handle the script's subsequent attempt to open a
nameless file.

Fixes bug #14646
2023-09-26 11:31:54 -07:00
Eugene Sandulenko 755086d5f4 SCI: Shut several "unused variable" warnings 2023-09-19 14:50:09 +02:00
sluicebox 3faf0d163b SCI: Fix kMessage crash when message stack is empty
Fixes a crash due to an assertion failure that appeared in Google Play
Console. This would occur if a script somehow called kMessage to get
the next message from the stack before calling kMessage to initialize.

We don't know what game caused this, but I have confirmed that this was
not a fatal error in the original interpreter. I then tested this with
a custom script that calls kMessage in the wrong order.

Now our behavior matches the original and we log a warning.

Fixes bug #14613
2023-09-18 16:16:45 -07:00
sluicebox d2b85bf473 SCI32: Update HOYLE5 Solitaire workarounds for Mac 2023-09-17 15:34:21 -07:00
sluicebox 0de0beb15f SCI32: Update kDoSoundMac32 for HOYLE5 Solitaire 2023-09-17 15:34:20 -07:00
sluicebox 49da510f80 SCI32: Fix PHANT1 dragon passage lockup
Fixes bug #14568

Thanks to @DustyShinigami for reporting this
2023-09-17 15:34:19 -07:00
Ralph Caraveo 9ed43c6fa5 SCI: Tweak dissassembly for push opcodes
Tweak in scriptdebug.cpp disassembler logic because the new logging wasn't quite working how it was expected.

- These opcodes weren't showing up with their selectors in all scenarios
- Improve output formatting
2023-09-12 13:56:01 +03:00
Ralph Caraveo f2c2453b80 SCI: Improve debugger disassembly selector name context
Show additional selector name context when push0, push1, push2 opcodes are used.

Possible matching selector names are always shown for the debugger disassembly when a `pushi` opcode is encountered. This is great as it gives additional context when push is used for call/send related invocations.

It would be nice to additionally show *possible* matching `selector` methods/properties when `push0`, `push1` or `push2` is encountered because selector names start at 0 so the dissassembly never shows selectors 0 through 2 inclusive.
2023-08-28 23:15:20 +03:00
sluicebox 2c7803d711 SCI32: Fix SQ6 trash can priority 2023-07-28 14:05:24 -07:00
sluicebox fb47444a4e SCI: Add error handling when listing QFG import files 2023-07-22 07:15:13 -07:00
sluicebox 5a9f14cc4e SCI32: Fix kSetShowStyle version checks
Fix version checks and divisions table. Now the early SQ6 demos start.

Fix version typo introduced in e23f5fe855
2023-07-18 11:48:26 -07:00
sluicebox c3f6ccfdca SCI32: Add fixes for early SQ6 demos 2023-07-18 11:48:26 -07:00
sluicebox f16f8c792f SCI32: Fix SQ6 demo inventory crash
Fixes bug #14547
2023-07-18 11:46:38 -07:00
sluicebox 6a83bcbd95 SCI32: Fix SQ6 broken walk icon
Fixes bug #14537

Thanks to @Twixxi691 for reporting this
2023-07-15 12:18:25 -07:00
sluicebox 7cee0a5480 SCI: Update speed test overflow fix for more versions 2023-07-13 16:34:37 -07:00
sluicebox ddb0ef1de5 SCI: Fix overflow in SCI0 speed test script
Fixes a long delay on a black screen at the end of KQ4 introduction.

Thanks to @eriktorbjorn for reporting and reproducing this
2023-07-13 14:56:24 -07:00
sluicebox 0243c1f775 SCI: Update LSL5 palette animation patch 2023-07-12 21:57:00 -07:00
Torbjörn Andersson 636e2d341d SCI: Speed up the palette animation for Mr. Bigg's closeup in LSL5
This happens during the first meeting in the LSL5 intro. There is no
consensus on how fast this animation should run, but ScummVM runs it
extremely slow, possibly due to speed throttling. This speeds it up
by updating the animation ever 6th time the doit script is run,
rather than the original every 32nd time.
2023-07-12 21:57:00 -07:00
sluicebox 811033288e SCI32: Add compatibility with GK1 CD Italian fan translation
Fixes errors when displaying text and using the Walkman.
2023-05-24 13:49:50 -07:00
Filippos Karapetis a1eed24c22 SCI: More work on the Hoyle 5 poker logic 2023-05-21 23:30:12 +03:00
sluicebox 042693c52a SCI: Resolve TODO about script exports 2023-05-03 15:33:37 -07:00
sluicebox 03af299b6a SCI: Use kMoveCursor in ECO1 Demo
Fixes crash when pressing tab or arrow keys on demo dialog
2023-04-29 23:41:02 -07:00
Miro Kropacek 864bc308ad SCI: Inline reg_t::getOffset() & reg_t::setOffset() 2023-04-29 12:20:58 +02:00
Miro Kropacek d9d087ac3f SCI: Inline getSciVersion() 2023-04-29 12:20:58 +02:00
Miro Kropacek 0a1d1cb29b SCI: Inline Script::offsetIsObject() 2023-04-29 12:20:58 +02:00
sluicebox 036c390478 SCI: Update LSL1 elevator polygon patch
The patch is now only applied to versions with the script bug
2023-04-28 13:39:32 -07:00
sluicebox 0c91983ee9 SCI: Update QFG2 patch notes for saurus freeze
I confirmed that the potential conflict identified in the notes
is not an issue, but added an alternate approach if needed.
2023-04-26 10:13:45 -07:00
sluicebox 6fe44fcbbf SCI: Update ECO1 stayAndHelp script patch
Simplifies the patch
2023-04-24 16:38:15 -07:00
sluicebox 9b6d2314dc SCI: Fix QFG2 visa crash 2023-04-24 15:41:30 -07:00
sluicebox b3a522914f SCI: Cleanup Script::initializeObjects version checks
Coverity issue 1498711
2023-04-13 14:55:08 -07:00
sluicebox c2526b1fa0 SCI32: kFileIOReadRaw error handling
Coverity issue 1422008
2023-04-13 14:26:22 -07:00
sluicebox f05625a32b SCI: Initialize Script::_codeOffset
Coverity issue 1365197
2023-04-13 14:26:21 -07:00
sluicebox 67dd46c397 SCI: Fix LB2 debugger dialog 2023-04-08 15:41:24 -07:00
sluicebox 88242bc57e SCI: Fix LB2 dinosaur bone verb handler 2023-04-08 15:41:24 -07:00
sluicebox 591d2a801e SCI32: Fix PHANT1 basement fast-forward lockup
Fixes bug #14368
2023-04-05 16:07:59 -07:00
sluicebox ea2244dd84 SCI: Add detection and workaround for SQ1 Demo variant
Thanks to @einstein95 for finding this
2023-03-26 15:21:30 -07:00
sluicebox 2f5b5b4e28 SCI32: Show all PHANT1 saves on delete screen
Fixes a script bug that crashes when all 10 saves are in
the chapter 7 chase, and makes saves easier to manage.

Fixes bug #14361

Thanks to @darkshoxx for reporting this!
2023-03-25 19:55:10 -07:00
sluicebox 07818cae58 SCI: Add misc error handling
Fixes several Coverity issues
2023-03-20 13:43:25 -07:00
sluicebox 238acfebfe SCI: Fix LSL5 warnings when printing messages 2023-03-20 11:58:28 -07:00
sluicebox c7743b3422 SCI: Fix LSL5 Hollywood sign 2023-03-20 10:58:11 -07:00
sluicebox 19d4f63af4 SCI: Fix crash in script debugger
Stepping through an instruction that accesses an invalid property caused
an error. This code is only used by the disassembler when debugging, and
the disassembler already displays when a property is invalid.
2023-03-20 10:58:11 -07:00
sluicebox 75ee16011d SCI: Remove redundant check from kPlatform
Coverity CID 1361761
2023-03-18 14:03:16 -07:00
sluicebox 67712218bd SCI: Fix LONGBOW emerald lockup 2023-03-12 17:48:06 -07:00
sluicebox 69071f0a28 SCI: Fix LONGBOW crash during pub party 2023-02-22 13:40:43 -08:00
sluicebox 62ca8c9cf1 SCI: Fix KQ5 sinking boat position
Fixes bug #14218
2023-02-20 12:39:31 -08:00
sluicebox 0ffcd593b1 SCI: Fix early KQ4 saves when a dialog is on screen 2023-01-26 21:05:53 -08:00
sluicebox ad9305e10f SCI: Add workarounds for original save/restore dialogs 2023-01-25 18:25:00 -08:00