Commit graph

18 commits

Author SHA1 Message Date
Martin Kiewitz
9dd0cd51d5 AGI: Clean up VM opcode handling
so that invalid opcodes won't crash ScummVM anymore
2017-02-23 23:54:45 +01:00
Johannes Schickel
6778175f6d AGI: Fix formatting.
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-02-02 20:15:18 +01:00
Martin Kiewitz
8a595e7771 AGI: graphics rewrite + cleanup
- 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
2016-01-29 13:22:22 +01:00
Johannes Schickel
6aac905dfd AGI: Make GPL headers consistent in themselves. 2014-02-18 02:39:32 +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
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02: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
Max Horn
03953bf292 AGI: Remove some global vars
svn-id: r45255
2009-10-19 22:51:37 +00:00
Eugene Sandulenko
93d62da652 Whitespace fixes and C++ comments
svn-id: r41239
2009-06-06 17:39:13 +00:00
Kari Salminen
6b372d97ee Disable moving using mouse in mines (Rooms 147-162) and 'adj.ego.move.to.x.y'-command (Which uses 2 arguments) in Amiga's Gold Rush. This temporary hack fixes bug #1733297 (GR: Actor stuck (Amiga version)).
svn-id: r30375
2008-01-10 12:02:03 +00:00
Kari Salminen
d604f51d42 Implement unknown test command 19 (hopefully) properly and name it unofficially as the in.motion.using.mouse-command.
svn-id: r30251
2008-01-05 20:35:18 +00:00
Nicola Mettifogo
258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Paweł Kołodziejski
b47eb95316 Formating names in source code
svn-id: r25101
2007-01-16 12:40:51 +00:00
Paweł Kołodziejski
1d3ca2e409 first phase of objectisation of agi engine
svn-id: r24808
2006-12-06 19:27:02 +00:00
Paweł Kołodziejski
383b598c5c converted to scummvm console style
svn-id: r22618
2006-05-24 21:40:24 +00:00
Torbjörn Andersson
4a583216fb Fixed most - not all - GCC warnings.
svn-id: r22614
2006-05-24 19:51:37 +00:00
Paweł Kołodziejski
107073537e imported AGI engine
svn-id: r22588
2006-05-23 23:43:52 +00:00