25 #include "agds/object.h" 26 #include "agds/opcode.h" 27 #include "agds/processExitCode.h" 28 #include "common/debug.h" 29 #include "common/scummsys.h" 30 #include "common/stack.h" 41 enum Status { kStatusActive,
54 unsigned _ip, _lastIp;
57 ProcessExitCode _exitCode;
59 int _exitIntArg1, _exitIntArg2;
60 int _tileWidth, _tileHeight;
71 bool _phaseVarControlled;
77 int _filmSubtitlesResource;
82 void debug(
const char *str, ...);
83 void error(
const char *str, ...);
99 return getString(pop());
104 #define AGDS_PROCESS_METHOD(opcode, method) \ 106 #define AGDS_PROCESS_METHOD_C(opcode, method) \ 108 #define AGDS_PROCESS_METHOD_B(opcode, method) \ 110 #define AGDS_PROCESS_METHOD_W(opcode, method) \ 112 #define AGDS_PROCESS_METHOD_U(opcode, method) \ 114 #define AGDS_PROCESS_METHOD_UD(opcode, method) \ 116 #define AGDS_PROCESS_METHOD_UU(opcode, method) \ 117 void method(uint16, uint16); 119 AGDS_OPCODE_LIST(AGDS_PROCESS_METHOD,
120 AGDS_PROCESS_METHOD_C, AGDS_PROCESS_METHOD_B, AGDS_PROCESS_METHOD_W,
121 AGDS_PROCESS_METHOD_U, AGDS_PROCESS_METHOD_UD, AGDS_PROCESS_METHOD_UU)
123 void moveCharacter(
bool usermove);
130 void suspend(ProcessExitCode exitCode,
int arg1 = 0,
int arg2 = 0);
132 ProcessExitCode resume();
133 void suspendIfPassive();
136 void attachInventoryObjectToMouse(
bool flag);
142 unsigned entryPoint()
const {
153 return _object->getName();
157 return _parentScreen;
160 Status status()
const {
164 bool active()
const {
165 return _status == kStatusActive;
167 bool passive()
const {
168 return _status == kStatusPassive;
175 bool finished()
const {
176 return _status == kStatusDone || _status == kStatusError;
181 ProcessExitCode getExitCode()
const {
189 int getExitIntArg1()
const {
197 int getExitIntArg2()
const {
202 _mousePosition = mousePosition;
204 void updateWithCurrentMousePosition();
211 return _processAnimation;
214 void removeProcessAnimation();
Definition: atari-screen.h:58