aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/opcodes.cpp
AgeCommit message (Collapse)Author
2017-02-23AGI: Clean up VM opcode handlingMartin Kiewitz
so that invalid opcodes won't crash ScummVM anymore
2016-02-14AGI: set.pri.base was actually available in AGI2.425Martin Kiewitz
Was available only in 2.425 and in 2.936+. Fixing comment accordingly. Also allowing the command for 2.425.
2016-02-13AGI: Fix priority band handlingMartin Kiewitz
- Fix saving/loading priority bands table. Now saving the actual raw data - Now also saving the flag, that defines if the priority table got modified by scripts - For older saved games it will try to figure out the state of that flag - Blocking set.pri.base for AGI below 2.936 - set.pri.base was actually introduced in 2.936 and not AGI3 - The set.pri.base bug was present in 2.936 as well - Saved games created between the graphics rewrite and this commit may have priority issues for games, that used AGI2.936+
2016-02-02AGI: Fix formatting.Johannes Schickel
This mostly enforces tabs for indentation and spaces for formatting. But also fixes spaces on empty lines, some extra/missing spaces. astyle + manual fixup
2016-01-29AGI: graphics rewrite + cleanupMartin Kiewitz
- graphics code fully rewritten - Apple IIgs font support - Amiga Topaz support - Word parser rewritten - menu code rewritten - removed forced 2 second delay on all room changes replaced with heuristic to detect situations, where it's required - lots of naming cleanup - new console commands show_map, screenobj, vmvars and vmflags - all sorts of hacks/workarounds removed - added SCI wait mouse cursor - added Apple IIgs mouse cursor - added Atari ST mouse cursor - added Amiga/Apple IIgs transition - added Atari ST transition - user can select another render mode and use Apple IIgs palette + transition for PC versions - inventory screen rewritten - SetSimple command now properly implemented - PreAGI Mickey: Sierra logo now shown - saved games: now saving controller key mapping also saving automatic save data (SetSimple command) - fixed invalid memory access when saving games (31 bytes were saved using Common::String c_ptr() Special Thanks to: - fuzzie for helping out with the Apple IIgs font + valgrind - eriktorbjorn for helping out with valgrind - LordHoto for figuring out the code, that caused invalid memory access in the original code, when saving a game - sev for help out with reversing the Amiga transition currently missing: - mouse support for menu - mouse support for system dialogs - predictive dialog support
2015-12-05AGI: stub for AGI1 newRoom()Eugene Sandulenko
2014-02-18AGI: Make GPL headers consistent in themselves.Johannes Schickel
2013-10-07AGI: Fix potential buffer overrun. CID 1004028Eugene Sandulenko
2012-11-07AGI: Fix the Apple IIGS versions of Manhunter 1 and Gold RushFilippos Karapetis
Both games use an additional parameter for show.mouse and hide.mouse. Ignoring these confused the script parser, which started parsing junk. Fixes bugs #3577754 and #3426946.
2012-09-26JANITORIAL: Remove trailing whitespaces.Johannes Schickel
Powered by: git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2011-11-02AGI: Fix buffer overflowEugene Sandulenko
2011-08-27AGI: Fix bug #3398171: AGI: SQ1/SQ2: problem entering nameEugene Sandulenko
Was introduced during refactoring to SCI-like opcode handling. Also restored original comments about opcode parameter differences between AGI versions.
2011-08-14Checked V1 instructions till 0x42Eugene Sandulenko
2011-08-13AGI: Checked V1 instructions till 0x2cEugene Sandulenko
2011-08-13AGI: Checked V1 instructions till 0x20Eugene Sandulenko
2011-08-13AGI: Further work on v1 opcode differenceEugene Sandulenko
2011-08-13AGI: Updates to V1 instruction table, plus an outcommented experimentJussi Pitkanen
The experiment tries to implement the program control of the V1 interpreter. Maybe it is better to add another method for doing that once the workings of it are more clear.
2011-08-13AGI: Add last undefined V1 test command that tests if a bit of var is setJussi Pitkanen
Also fix skipInstruction() for V1.
2011-08-13AGI: Rename cmd_what_ever to cmdWhatEverJussi Pitkanen
2011-08-13AGI: Fix and clarify IF expression handlingJussi Pitkanen
2011-08-13AGI: Implement V1 SAID test commandsJussi Pitkanen
Yes, V1 has three versions of SAID, for one, two and three arguments. Also add a few corrections to V1 instruction tables.
2011-08-13AGI: Add still incomplete V1 instruction tablesJussi Pitkanen
2011-08-13AGI: Execute test commands only when neededJussi Pitkanen
2011-08-13AGI: Refactor interpreter core (somewhat akin to SCI)Jussi Pitkanen
* Instruction tables are now defined in opcodes.{cpp,h}. * Move opcode handlers from Agi::AgiEngine to Agi * Opcode handlers take as parameter a pointer to AGI state (AgiGame)