scummvm/engines/dreamweb/dreamgen.h

528 lines
20 KiB
C++

#ifndef TASMRECOVER_DREAMGEN_STUBS_H__
#define TASMRECOVER_DREAMGEN_STUBS_H__
/* PLEASE DO NOT MODIFY THIS FILE. ALL CHANGES WILL BE LOST! LOOK FOR README FOR DETAILS */
/* ScummVM - Graphic Adventure Engine
*
* ScummVM is the legal property of its developers, whose names
* are too numerous to list here. Please refer to the COPYRIGHT
* file distributed with this source distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
#include "dreamweb/runtime.h"
#include "dreamweb/structs.h"
#include "dreamweb/dreambase.h"
namespace DreamGen {
static const uint16 offset_rootdir = 0x0407;
static const uint16 offset_operand1 = 0x03f9;
static const uint16 offset_keys = 0x038f;
static const uint16 kStartvars = 0;
static const uint16 kProgresspoints = 1;
static const uint16 kWatchon = 2;
static const uint16 kShadeson = 3;
static const uint16 kSecondcount = 4;
static const uint16 kMinutecount = 5;
static const uint16 kHourcount = 6;
static const uint16 kZoomon = 7;
static const uint16 kLocation = 8;
static const uint16 kExpos = 9;
static const uint16 kExframepos = 10;
static const uint16 kExtextpos = 12;
static const uint16 kCard1money = 14;
static const uint16 kListpos = 16;
static const uint16 kRyanpage = 18;
static const uint16 kWatchingtime = 19;
static const uint16 kReeltowatch = 21;
static const uint16 kEndwatchreel = 23;
static const uint16 kSpeedcount = 25;
static const uint16 kWatchspeed = 26;
static const uint16 kReeltohold = 27;
static const uint16 kEndofholdreel = 29;
static const uint16 kWatchmode = 31;
static const uint16 kDestafterhold = 32;
static const uint16 kNewsitem = 33;
static const uint16 kLiftflag = 34;
static const uint16 kLiftpath = 35;
static const uint16 kLockstatus = 36;
static const uint16 kDoorpath = 37;
static const uint16 kCounttoopen = 38;
static const uint16 kCounttoclose = 39;
static const uint16 kRockstardead = 40;
static const uint16 kGeneraldead = 41;
static const uint16 kSartaindead = 42;
static const uint16 kAidedead = 43;
static const uint16 kBeenmugged = 44;
static const uint16 kGunpassflag = 45;
static const uint16 kCanmovealtar = 46;
static const uint16 kTalkedtoattendant = 47;
static const uint16 kTalkedtosparky = 48;
static const uint16 kTalkedtoboss = 49;
static const uint16 kTalkedtorecep = 50;
static const uint16 kCardpassflag = 51;
static const uint16 kMadmanflag = 52;
static const uint16 kKeeperflag = 53;
static const uint16 kLasttrigger = 54;
static const uint16 kMandead = 55;
static const uint16 kSeed = 56;
static const uint16 kNeedtotravel = 59;
static const uint16 kThroughdoor = 60;
static const uint16 kNewobs = 61;
static const uint16 kRyanon = 62;
static const uint16 kCombatcount = 63;
static const uint16 kLastweapon = 64;
static const uint16 kDreamnumber = 65;
static const uint16 kRoomafterdream = 66;
static const uint16 kShakecounter = 67;
static const uint16 kSpeechcount = 68;
static const uint16 kCharshift = 69;
static const uint16 kKerning = 71;
static const uint16 kBrightness = 72;
static const uint16 kRoomloaded = 73;
static const uint16 kDidzoom = 74;
static const uint16 kLinespacing = 75;
static const uint16 kTextaddressx = 77;
static const uint16 kTextaddressy = 79;
static const uint16 kTextlen = 81;
static const uint16 kLastxpos = 82;
static const uint16 kIcontop = 84;
static const uint16 kIconleft = 86;
static const uint16 kItemframe = 88;
static const uint16 kItemtotran = 89;
static const uint16 kRoomad = 90;
static const uint16 kOldsubject = 92;
static const uint16 kWithobject = 94;
static const uint16 kWithtype = 95;
static const uint16 kLookcounter = 96;
static const uint16 kCommand = 98;
static const uint16 kCommandtype = 99;
static const uint16 kOldcommandtype = 100;
static const uint16 kObjecttype = 101;
static const uint16 kGetback = 102;
static const uint16 kInvopen = 103;
static const uint16 kMainmode = 104;
static const uint16 kPickup = 105;
static const uint16 kLastinvpos = 106;
static const uint16 kExamagain = 107;
static const uint16 kNewtextline = 108;
static const uint16 kOpenedob = 109;
static const uint16 kOpenedtype = 110;
static const uint16 kOldmapadx = 111;
static const uint16 kOldmapady = 113;
static const uint16 kMapadx = 115;
static const uint16 kMapady = 117;
static const uint16 kMapoffsetx = 119;
static const uint16 kMapoffsety = 121;
static const uint16 kMapxstart = 123;
static const uint16 kMapystart = 125;
static const uint16 kMapxsize = 127;
static const uint16 kMapysize = 128;
static const uint16 kHavedoneobs = 129;
static const uint16 kManisoffscreen = 130;
static const uint16 kRainspace = 131;
static const uint16 kFacing = 132;
static const uint16 kLeavedirection = 133;
static const uint16 kTurntoface = 134;
static const uint16 kTurndirection = 135;
static const uint16 kMaintimer = 136;
static const uint16 kIntrocount = 138;
static const uint16 kArrowad = 139;
static const uint16 kCurrentkey = 141;
static const uint16 kOldkey = 142;
static const uint16 kUseddirection = 143;
static const uint16 kCurrentkey2 = 144;
static const uint16 kTimercount = 145;
static const uint16 kOldtimercount = 146;
static const uint16 kMapx = 147;
static const uint16 kMapy = 148;
static const uint16 kNewscreen = 149;
static const uint16 kRyanx = 150;
static const uint16 kRyany = 151;
static const uint16 kLastflag = 152;
static const uint16 kCurrentex = 153;
static const uint16 kCurrentfree = 154;
static const uint16 kFramesad = 155;
static const uint16 kDataad = 157;
static const uint16 kFrsegment = 159;
static const uint16 kObjectx = 161;
static const uint16 kObjecty = 163;
static const uint16 kOffsetx = 165;
static const uint16 kOffsety = 167;
static const uint16 kSavesize = 169;
static const uint16 kSavesource = 171;
static const uint16 kSavex = 173;
static const uint16 kSavey = 174;
static const uint16 kCurrentob = 175;
static const uint16 kPrioritydep = 176;
static const uint16 kDestpos = 177;
static const uint16 kReallocation = 178;
static const uint16 kRoomnum = 179;
static const uint16 kNowinnewroom = 180;
static const uint16 kResetmanxy = 181;
static const uint16 kNewlocation = 182;
static const uint16 kAutolocation = 183;
static const uint16 kMustload = 184;
static const uint16 kAnswered = 185;
static const uint16 kSaidno = 186;
static const uint16 kDoorcheck1 = 187;
static const uint16 kDoorcheck2 = 188;
static const uint16 kDoorcheck3 = 189;
static const uint16 kDoorcheck4 = 190;
static const uint16 kMousex = 191;
static const uint16 kMousey = 193;
static const uint16 kMousebutton = 195;
static const uint16 kMousebutton1 = 197;
static const uint16 kMousebutton2 = 199;
static const uint16 kMousebutton3 = 201;
static const uint16 kMousebutton4 = 203;
static const uint16 kOldbutton = 205;
static const uint16 kOldx = 207;
static const uint16 kOldy = 209;
static const uint16 kLastbutton = 211;
static const uint16 kOldpointerx = 213;
static const uint16 kOldpointery = 215;
static const uint16 kDelherex = 217;
static const uint16 kDelherey = 219;
static const uint16 kPointerxs = 221;
static const uint16 kPointerys = 222;
static const uint16 kDelxs = 223;
static const uint16 kDelys = 224;
static const uint16 kPointerframe = 225;
static const uint16 kPointerpower = 226;
static const uint16 kAuxpointerframe = 227;
static const uint16 kPointermode = 228;
static const uint16 kPointerspeed = 229;
static const uint16 kPointercount = 230;
static const uint16 kInmaparea = 231;
static const uint16 kSlotdata = 232;
static const uint16 kThisslot = 233;
static const uint16 kSlotflags = 234;
static const uint16 kTalkmode = 235;
static const uint16 kTalkpos = 236;
static const uint16 kCharacter = 237;
static const uint16 kPersondata = 238;
static const uint16 kTalknum = 240;
static const uint16 kNumberinroom = 241;
static const uint16 kCurrentcel = 242;
static const uint16 kOldselection = 243;
static const uint16 kStopwalking = 244;
static const uint16 kMouseon = 245;
static const uint16 kPlayed = 246;
static const uint16 kTimer1 = 248;
static const uint16 kTimer2 = 249;
static const uint16 kTimer3 = 250;
static const uint16 kWholetimer = 251;
static const uint16 kTimer1to = 253;
static const uint16 kTimer2to = 254;
static const uint16 kTimer3to = 255;
static const uint16 kWatchdump = 256;
static const uint16 kLogonum = 257;
static const uint16 kOldlogonum = 258;
static const uint16 kNewlogonum = 259;
static const uint16 kNetseg = 260;
static const uint16 kNetpoint = 262;
static const uint16 kKeynum = 264;
static const uint16 kCursorstate = 265;
static const uint16 kPressed = 266;
static const uint16 kPresspointer = 267;
static const uint16 kGraphicpress = 269;
static const uint16 kPresscount = 270;
static const uint16 kLightcount = 271;
static const uint16 kFolderpage = 272;
static const uint16 kDiarypage = 273;
static const uint16 kMenucount = 274;
static const uint16 kSymboltopx = 275;
static const uint16 kSymboltopnum = 276;
static const uint16 kSymboltopdir = 277;
static const uint16 kSymbolbotx = 278;
static const uint16 kSymbolbotnum = 279;
static const uint16 kSymbolbotdir = 280;
static const uint16 kSymboltolight = 281;
static const uint16 kSymbol1 = 282;
static const uint16 kSymbol2 = 283;
static const uint16 kSymbol3 = 284;
static const uint16 kSymbolnum = 285;
static const uint16 kDumpx = 286;
static const uint16 kDumpy = 288;
static const uint16 kWalkandexam = 290;
static const uint16 kWalkexamtype = 291;
static const uint16 kWalkexamnum = 292;
static const uint16 kCurslocx = 293;
static const uint16 kCurslocy = 295;
static const uint16 kCurpos = 297;
static const uint16 kMonadx = 299;
static const uint16 kMonady = 301;
static const uint16 kMonsource = 303;
static const uint16 kNumtodo = 305;
static const uint16 kTimecount = 307;
static const uint16 kCounttotimed = 309;
static const uint16 kTimedseg = 311;
static const uint16 kTimedoffset = 313;
static const uint16 kTimedy = 315;
static const uint16 kTimedx = 316;
static const uint16 kNeedtodumptimed = 317;
static const uint16 kLoadingorsave = 318;
static const uint16 kCurrentslot = 319;
static const uint16 kCursorpos = 320;
static const uint16 kColourpos = 321;
static const uint16 kFadedirection = 322;
static const uint16 kNumtofade = 323;
static const uint16 kFadecount = 324;
static const uint16 kAddtogreen = 325;
static const uint16 kAddtored = 326;
static const uint16 kAddtoblue = 327;
static const uint16 kLastsoundreel = 328;
static const uint16 kSpeechloaded = 330;
static const uint16 kSpeechlength = 331;
static const uint16 kVolume = 333;
static const uint16 kVolumeto = 334;
static const uint16 kVolumedirection = 335;
static const uint16 kVolumecount = 336;
static const uint16 kWongame = 337;
static const uint16 kLasthardkey = 338;
static const uint16 kBufferin = 339;
static const uint16 kBufferout = 341;
static const uint16 kExtras = 343;
static const uint16 kWorkspace = 345;
static const uint16 kMapstore = 347;
static const uint16 kCharset1 = 349;
static const uint16 kBuffers = 351;
static const uint16 kMainsprites = 353;
static const uint16 kBackdrop = 355;
static const uint16 kMapdata = 357;
static const uint16 kSounddata = 359;
static const uint16 kSounddata2 = 361;
static const uint16 kRecordspace = 363;
static const uint16 kFreedat = 365;
static const uint16 kSetdat = 367;
static const uint16 kReel1 = 369;
static const uint16 kReel2 = 371;
static const uint16 kReel3 = 373;
static const uint16 kRoomdesc = 375;
static const uint16 kFreedesc = 377;
static const uint16 kSetdesc = 379;
static const uint16 kBlockdesc = 381;
static const uint16 kSetframes = 383;
static const uint16 kFreeframes = 385;
static const uint16 kPeople = 387;
static const uint16 kReels = 389;
static const uint16 kCommandtext = 391;
static const uint16 kPuzzletext = 393;
static const uint16 kTraveltext = 395;
static const uint16 kTempgraphics = 397;
static const uint16 kTempgraphics2 = 399;
static const uint16 kTempgraphics3 = 401;
static const uint16 kTempsprites = 403;
static const uint16 kTextfile1 = 405;
static const uint16 kTextfile2 = 407;
static const uint16 kTextfile3 = 409;
static const uint16 kBlinkframe = 411;
static const uint16 kBlinkcount = 412;
static const uint16 kReasseschanges = 413;
static const uint16 kPointerspath = 414;
static const uint16 kManspath = 415;
static const uint16 kPointerfirstpath = 416;
static const uint16 kFinaldest = 417;
static const uint16 kDestination = 418;
static const uint16 kLinestartx = 419;
static const uint16 kLinestarty = 421;
static const uint16 kLineendx = 423;
static const uint16 kLineendy = 425;
static const uint16 kLinepointer = 427;
static const uint16 kLinedirection = 428;
static const uint16 kLinelength = 429;
static const uint16 kCh0blockstocopy = 430;
static const uint16 kCh0playing = 432;
static const uint16 kCh0repeat = 433;
static const uint16 kCh1playing = 434;
static const uint16 kCh1blockstocopy = 435;
static const uint16 kSoundbufferwrite = 437;
static const uint16 kCurrentsample = 439;
static const uint16 kRoomssample = 440;
static const uint16 kReelroutines = 441;
static const uint16 kBasicsample = 898;
static const uint16 kCurrentfile = 1045;
static const uint16 kRoomscango = 1120;
static const uint16 kRoompics = 1136;
static const uint16 kOplist = 1151;
static const uint16 kInputline = 1154;
static const uint16 kPresslist = 1282;
static const uint16 kQuitrequested = 1288;
static const uint16 kSubtitles = 1289;
static const uint16 kForeignrelease = 1290;
static const uint16 kBlocktextdat = (0);
static const uint16 kPersonframes = (0);
static const uint16 kDebuglevel1 = (0);
static const uint16 kDebuglevel2 = (0);
static const uint16 kPlayback = (0);
static const uint16 kMap = (0);
static const uint16 kSettextdat = (0);
static const uint16 kSpanish = (0);
static const uint16 kFramedata = (0);
static const uint16 kRecording = (0);
static const uint16 kFlags = (0);
static const uint16 kGerman = (0);
static const uint16 kTextunder = (0);
static const uint16 kPathdata = (0);
static const uint16 kDemo = (0);
static const uint16 kExframedata = (0);
static const uint16 kIntextdat = (0);
static const uint16 kFreetextdat = (0);
static const uint16 kFrframedata = (0);
static const uint16 kSettext = (0+(130*2));
static const uint16 kOpeninvlist = (0+(228*13));
static const uint16 kRyaninvlist = (0+(228*13)+32);
static const uint16 kPointerback = (0+(228*13)+32+60);
static const uint16 kMapflags = (0+(228*13)+32+60+(32*32));
static const uint16 kStartpal = (0+(228*13)+32+60+(32*32)+(11*10*3));
static const uint16 kEndpal = (0+(228*13)+32+60+(32*32)+(11*10*3)+768);
static const uint16 kMaingamepal = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768);
static const uint16 kSpritetable = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768);
static const uint16 kSetlist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32));
static const uint16 kFreelist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5));
static const uint16 kExlist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5));
static const uint16 kPeoplelist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5));
static const uint16 kZoomspace = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5));
static const uint16 kPrintedlist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40));
static const uint16 kListofchanges = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80));
static const uint16 kUndertimedtext = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4));
static const uint16 kRainlist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30));
static const uint16 kInitialreelrouts = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64));
static const uint16 kInitialvars = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+898-441);
static const uint16 kLengthofbuffer = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+898-441+68-0);
static const uint16 kReellist = (0+(36*144));
static const uint16 kIntext = (0+(38*2));
static const uint16 kLengthofmap = (0+(66*60));
static const uint16 kFreetext = (0+(82*2));
static const uint16 kBlocktext = (0+(98*2));
static const uint16 kBlocks = (0+192);
static const uint16 kFrframes = (0+2080);
static const uint16 kExframes = (0+2080);
static const uint16 kFrames = (0+2080);
static const uint16 kExdata = (0+2080+30000);
static const uint16 kExtextdat = (0+2080+30000+(16*114));
static const uint16 kExtext = (0+2080+30000+(16*114)+((114+2)*2));
static const uint16 kLengthofextra = (0+2080+30000+(16*114)+((114+2)*2)+18000);
static const uint16 kPersontxtdat = (0+24);
static const uint16 kPersontext = (0+24+(1026*2));
static const uint16 kInputport = (0x63);
static const uint16 kForeign = (1);
static const uint16 kCd = (1);
static const uint16 kNumexobjects = (114);
static const uint16 kUndertextsizey = (13);
static const uint16 kZoomy = (132);
static const uint16 kFreedatlen = (16*80);
static const uint16 kExtextlen = (18000);
static const uint16 kLenofmapstore = (22*8*20*8);
static const uint16 kUndertextsizex = (228);
static const uint16 kNumchanges = (250);
static const uint16 kUndertimedysize = (30);
static const uint16 kExframeslen = (30000);
static const uint16 kTablesize = (32);
static const uint16 kScreenwidth = (320);
static const uint16 kKeypadx = (36+112);
static const uint16 kItempicsize = (44);
static const uint16 kDiaryy = (48+12);
static const uint16 kOpsy = (52);
static const uint16 kSymboly = (56);
static const uint16 kInventy = (58);
static const uint16 kMenuy = (60);
static const uint16 kOpsx = (60);
static const uint16 kMaplength = (60);
static const uint16 kSymbolx = (64);
static const uint16 kSetdatlen = (64*128);
static const uint16 kMapwidth = (66);
static const uint16 kTextstart = (66*2);
static const uint16 kMaplen = (66*60);
static const uint16 kDiaryx = (68+24);
static const uint16 kLengthofvars = (68-0);
static const uint16 kKeypady = (72);
static const uint16 kZoomx = (8);
static const uint16 kInventx = (80);
static const uint16 kMenux = (80+40);
static const uint16 kLenofreelrouts = (898-441);
static const uint16 kHeaderlen = (96);
class DreamGenContext : public DreamBase, public Context {
public:
DreamGenContext(DreamWeb::DreamWebEngine *en) : DreamBase(en), Context(this) {}
void __start();
#include "stubs.h" // Allow hand-reversed functions to have a signature different than void f()
void fadeDownMon();
void getPersonText();
void getObTextStart();
void checkObjectSize();
void doSomeTalk();
void resetLocation();
void outOfOpen();
void dirCom();
void findFirstPath();
void startTalk();
void getAnyAd();
void reminders();
void inToInv();
void getFreeAd();
void dirFile();
void pickupConts();
void fadeUpMon();
void reExFromInv();
void outOfInv();
void transferMap();
void purgeAnItem();
void purgeALocation();
void getSetAd();
void nextColon();
void findOpenPos();
void searchForSame();
void rollEm();
void lookAtPlace();
void findAllOpen();
void fillOpen();
void getEitherAd();
void dropObject();
void useOpened();
void signOn();
void locationPic();
void swapWithOpen();
void dreamweb();
void findPathOfPoint();
void getDestInfo();
void read();
void searchForString();
void selectOpenOb();
void incRyanPage();
void searchForFiles();
void getExAd();
void initialMonCols();
void swapWithInv();
void transferToEx();
void parser();
void emergencyPurge();
void transferConToEx();
};
} // End of namespace DreamGen
#endif