Commit Graph
31 Commits
Author SHA1 Message Date
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Paul Gilbert 509edd7b47 GLK: COMPREHEND: Separate execution of action functions & special opcodes 2020-12-14 19:09:40 -08:00
Paul Gilbert 4665c65d84 GLK: COMPREHEND: Implement CALL_FUNC2 opcode 2020-12-12 11:04:17 -08:00
Paul Gilbert e54fab21c2 GLK: COMPREHEND: Fixes to OO-Topos endgame display 2020-12-07 20:34:13 -08:00
Paul Gilbert 717c7e06c5 GLK: COPMREHEND: Fix OO-Topos fuel check 2020-12-07 20:07:20 -08:00
Paul Gilbert d70bdfa033 GLK: COMPREHEND: Debugger command to allow for unlimited inventory 2020-12-06 19:40:03 -08:00
Paul Gilbert 2e5d5ba9ac GLK: COMPREHEND: Workaround for crash trying to get non-items
In the original interpreter, if the first test following an OR
opcode fails, it doesn't execute the second, whereas ScummVM
does. This causes a crash in function 19h, where an OR
first tests if the noun is an item, and then if the item is
takeable. Rather than risking fiddling around with how the OR
functions, for now I've simply added an extra check to
OPCODE_OBJECT_TAKEABLE to allow for it
2020-11-02 19:54:37 -08:00
Paul Gilbert 27abcdc44c GLK: COMPREHEND: Further opcodes implemented 2020-11-01 15:09:44 -08:00
Paul Gilbert 25cbbb7743 GLK: COMPREHEND: Flag40 operands use parameter rather than noun 2020-11-01 14:55:09 -08:00
Paul Gilbert 0e926f8ab7 GLK: COMPREHEND: Move input line buffer to a class field 2020-11-01 14:55:09 -08:00
Paul Gilbert a5b9eeb7ab GLK: COMPREHEND: Fix answering rhetorical questions 2020-10-31 11:02:34 -07:00
Paul Gilbert 4f168f41f2 GLK: COMPREHEND: Move some v2-only opcodes to v2 class 2020-10-25 21:59:04 -07:00
Paul Gilbert 43d25b567a GLK: COMPREHEND: Fix looking at 4-d mirror in OO-Topos 2020-10-25 21:38:28 -07:00
Paul Gilbert b104ca3fd5 GLK: COMPREHEND: Fix the item indexes for CLEAR_WORD/SET_WORD 2020-10-25 18:17:24 -07:00
Paul Gilbert 586d7ccceb GLK: COMPREHEND: Added SET_WORD and CLEAR_WORD opcodes 2020-10-23 22:20:25 -07:00
Paul Gilbert 280e44f706 GLK: COMPREHEND: Verified v2 opcodes, added OPCODE_RANDOM_MSG 2020-10-23 21:28:13 -07:00
Paul Gilbert 1fef4148a1 GLK: COMPREHEND: More v2 opcodes verified 2020-10-23 20:36:21 -07:00
Paul Gilbert e6674e1cb8 GLK: COMPREHEND: Per-turn script for OO-Topos now working 2020-10-21 22:15:03 -07:00
Paul Gilbert 0f56a48fe4 GLK: COMPREHEND: Handling of v2 inverted comparisons 2020-10-21 20:26:00 -07:00
Paul Gilbert 8b01000876 GLK: COMPREHEND: Proper handling of specified noun in v2 opcodes 2020-10-21 20:26:00 -07:00
Paul Gilbert facceff957 GLK: COMPREHEND: Further v2 opcode verification 2020-10-21 20:26:00 -07:00
Paul Gilbert 7c6e5c0f15 GLK: COMPREHEND: Properly get item for opcodes 2020-10-21 20:26:00 -07:00
Paul Gilbert 10b0f884c6 GLK: COMPREHEND: v2 script opcodes for beforeTurn script 2020-10-17 21:25:56 -07:00
Paul Gilbert 046af3f4c3 GLK: COMPREHEND: First command working in OO-Topis
Yay \o/
2020-10-17 20:27:15 -07:00
Paul Gilbert ebc831fb5a GLK: COMPREHEND: Verifying further opcodes 2020-10-17 20:25:55 -07:00
Paul Gilbert 54980c1f6b GLK: COMPREHEND: Added item flag manipulation opcodes 2020-10-16 22:11:34 -07:00
Paul Gilbert 3933d43dd0 GLK: COMPREHEND: Implementing string replacement and other opcodes 2020-10-16 21:22:37 -07:00
Paul Gilbert b6183f85d7 GLK: COMPREHEND: Fix script dumper for v2 2020-10-16 21:22:37 -07:00
Paul Gilbert 49f6ee2868 GLK: COMPREHEND: Verify more v2 opcodes 2020-10-16 21:22:37 -07:00
Paul Gilbert 6640aa2274 GLK: COMPREHEND: Starting to properly add v2 opcodes 2020-10-15 20:39:33 -07:00
Paul Gilbert 0da4dcde56 GLK: COMPREHEND: Split opcode implementation into their own classes
Version 2 of the engine already has at least one opcode where the
implementation slightly changed and I had to have a version check.
To make things cleaner, there are new v1 and v2 game classes that
derive from ComprehendGame, and the opcode map setup has also been
moved into them.

Currently, the V1 engine has all the opcodes implementation. I need
to start reviewing the opcode calls in v2 again, and shift stuff
that is actually unchanged to the base class shared by both 1 & 2
2020-10-15 20:39:32 -07:00