Commit Graph
107 Commits
Author SHA1 Message Date
Max Horn 00e6ab43f8 AGI: Add FIXME to cmdCallV1 2011-12-12 17:24:06 +01:00
Filippos Karapetis d3858c359f AGI: Commented out if statements that always evaluate to true 2011-11-03 22:55:22 +02:00
Filippos Karapetis 3fb2973ed5 AGI: Fixed several incorrect substitutions of "game" with "_game" 2011-09-26 15:42:31 +03:00
Filippos Karapetis 397b4968d9 AGI: Rewrote cmdVersion() to use Common::String
This simplifies the code and avoids heap corruption because of the long
version string
2011-09-26 15:15:39 +03:00
Filippos Karapetis 81fdf2c103 AGI: Fixed bug #3074570 - "AGI LSL1: TAB stops working after restart"
Applied eriktorbjorn's patch from that bug tracker item (slightly
modified), which is what NAGI does, and which fixes restarting in LSL1
and PQ1 (bug #2823762), and other AGI games that do not reset the
controller keys when restarting.
2011-09-26 00:56:10 +03:00
Filippos Karapetis bd6a05bdd4 AGI: Fix bug #3080041 - "AGI Mother Goose: White bar in intro" 2011-09-26 00:11:45 +03:00
Filippos Karapetis a1c4aa6d89 AGI: Fixed typo in restart dialog 2011-09-25 18:34:35 +03:00
Eugene Sandulenko b83cf61bfb Checked V1 instructions till 0x42 2011-08-14 21:40:07 +01:00
Eugene Sandulenko 273e37f726 AGI: Renamed some #defines to our code conventions and moved them to enums 2011-08-14 18:48:59 +01:00
Eugene Sandulenko 3cb41b5dfc AGI: Checked V1 instructions till 0x2c 2011-08-13 23:27:32 +01:00
Eugene Sandulenko be9c5c0427 AGI: Checked V1 instructions till 0x20 2011-08-13 23:27:29 +01:00
Eugene Sandulenko 3fb50b815e AGI: Further work on v1 opcode difference 2011-08-13 23:27:27 +01:00
Jussi Pitkanen af691e46c4 AGI: Updates to V1 instruction table, plus an outcommented experiment
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-13 23:27:24 +01:00
Jussi Pitkanen d2f9087f20 AGI: Fix warning messages about undefined opcodes 2011-08-13 23:27:20 +01:00
Jussi Pitkanen 2289ba88b6 AGI: Rename cmd_what_ever to cmdWhatEver 2011-08-13 23:27:15 +01:00
Jussi Pitkanen 9bc25749d6 AGI: Implement V1 SAID test commands
Yes, V1 has three versions of SAID, for one, two and three arguments.

Also add a few corrections to V1 instruction tables.
2011-08-13 23:27:10 +01:00
Jussi Pitkanen a4e0cd53f0 AGI: Refactor interpreter core (somewhat akin to SCI)
* 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)
2011-08-13 23:26:51 +01:00
Jussi Pitkanen d8e1b392d2 AGI: Use a jump table for test commands instead of switch/case
Preparations for V1 support.
2011-08-13 23:26:39 +01:00
Matthew Hoops eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion 9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Max Horn 7c2323bdc3 AGI: Replace report() macro by debug() / warning()
This makes AGI quite a bit less noisy by default.

svn-id: r53868
2010-10-26 22:33:49 +00:00
Torbjörn Andersson 4543855eca AGI: Fix bug in cmd_cancel_line()
We have to update cursor position, not just terminate the input
buffer. This makes Ctrl-C work as intended, which fixes one half of
bug #3054184 ("SQ1 AGI: keyboard special keys are not functioning
properly"). I'm not sure if the second half actually is a bug. 

svn-id: r52899
2010-09-26 11:20:55 +00:00
Eugene Sandulenko aea09cb3a0 AGI: Fix spelling and formatting
svn-id: r51310
2010-07-26 14:21:18 +00:00
Johannes Schickel e75eee21e3 Use "true" instead of "1" in if statements to make clang a bit more happier with -Werror.
svn-id: r50943
2010-07-16 21:50:12 +00:00
Max Horn e7da62763e AGI: Turn timerHack and curLogic into AgiEngine members; get rid of some #defines
svn-id: r50125
2010-06-21 21:33:22 +00:00
Max Horn df569a6c82 AGI: Change AGI commands/opcodes to member methods
svn-id: r50124
2010-06-21 21:32:56 +00:00
Max Horn da28fde4c6 AGI: Change some #defines to enums
svn-id: r50033
2010-06-18 22:07:32 +00:00
Eugene Sandulenko 88421532aa AGI: Implemented immediate update for most of gfx to match original.
This fixes many subtle effects as in many cases there were no
special pausing and engine relied only on the slowliness of the
machine.

svn-id: r49745
2010-06-15 10:32:25 +00:00
Eugene Sandulenko ffc390e64c AGI: Fix bug #1945716.
Bug #1945716: "AGI: Fan(Kings Quest 2 1/4) - Sprite not erased".
Added a workaround, since it is design flaw of our rendering
system.

svn-id: r49742
2010-06-15 10:31:18 +00:00
Eugene Sandulenko 7034d071b6 AGI: proper fix for sprite leftover-related bugs. Removed workarounds.
svn-id: r49741
2010-06-15 10:30:54 +00:00
Eugene Sandulenko 295edafdc4 AGI: improve script-related debug output.
svn-id: r49740
2010-06-15 10:30:26 +00:00
Max Horn d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Eugene Sandulenko 8ad5694cb1 Reduce header dependencies for AGI engine.
svn-id: r46942
2010-01-03 20:15:44 +00:00
Max Horn 50435d6bae AGI: Turn g_tickTimer & g_mouse into members of class AgiEngine resp. AgiBase
svn-id: r45259
2009-10-20 11:13:00 +00:00
Max Horn 03953bf292 AGI: Remove some global vars
svn-id: r45255
2009-10-19 22:51:37 +00:00
Eugene Sandulenko 0d4fc81698 Fix bug #2838551: "PSP: AGI games are unbearably slow"
svn-id: r43452
2009-08-16 19:48:13 +00:00
Kari Salminen 9a2785bc3b Partially fix automatic restarting of AGI games (Addresses bug #2798797 ('AGI: larry 1 doesn't restart after dying') but doesn't fully fix it. There seems to be more to the problem still. Automatic restarting after dying of an STD doesn't take away the STD-condition and Larry continues to die in a loop).
svn-id: r42482
2009-07-14 15:02:17 +00:00
Eugene Sandulenko 8bcdd8d7f6 Run AGIMOUSE hack as a side effect always
svn-id: r41536
2009-06-15 07:06:52 +00:00
Eugene Sandulenko 0057d9b9b2 Add guard check to set.key opcode.
svn-id: r41260
2009-06-06 17:48:30 +00:00
Eugene Sandulenko ea3373708c Correct implementation for set.key opcode. Fixes #2605104: "AGI: Manhunter, F3 hotkey dosent work", removed number of hacks
svn-id: r41259
2009-06-06 17:48:09 +00:00
Eugene Sandulenko d6a4dbeb1d Implement fence.mouse opcode
svn-id: r41258
2009-06-06 17:47:29 +00:00
Eugene Sandulenko 8792628a46 Implement hide.mouse and show.mouse opcodes
svn-id: r41257
2009-06-06 17:46:55 +00:00
Eugene Sandulenko 9ff714a2db Implement allow.menu opcode
svn-id: r41256
2009-06-06 17:46:38 +00:00
Eugene Sandulenko c393144b19 Implement hold.key and release.key opcodes
svn-id: r41255
2009-06-06 17:46:19 +00:00
Eugene Sandulenko 1a321a2064 Cleanup
svn-id: r41254
2009-06-06 17:45:52 +00:00
Eugene Sandulenko 2113060c43 Implement cancel.line. Consider obj.status.f implemented
svn-id: r41253
2009-06-06 17:45:06 +00:00
Eugene Sandulenko ed797c0709 Implement debug commands "room" and "bt"
svn-id: r41249
2009-06-06 17:43:26 +00:00
Eugene Sandulenko a5d762c029 Fix bug #1745954: "GR: Intro "jumpy" in parts (Amiga version)"
svn-id: r41244
2009-06-06 17:41:29 +00:00
Eugene Sandulenko 26d8b2bb72 Fix bug #2721940: "AGI: Gold Rush! Restart Option differs from original"
svn-id: r41243
2009-06-06 17:40:56 +00:00