aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/stubs.h
blob: a4eb596ede94e82b47bba562f550b5908179158b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
/* 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.
 *
 */
#ifndef DREAMWEB_STUBS_H
#define DREAMWEB_STUBS_H

	void screenUpdate();
	bool quitRequested();
	void startup();
	void startup1();
	void switchRyanOn();
	void switchRyanOff();
	uint16 allocateMem(uint16 paragraphs);
	void deallocateMem(uint16 segment);
	uint8 *workspace();
	uint8 *textUnder();
	void allocateWork();
	void clearWork();
	void standardLoad();
	uint16 standardLoad(const char *fileName, uint16 *outSizeInBytes = NULL); // Returns a segment handle which needs to be freed with deallocatemem for symmetry
	void *standardLoadCPP(const char *fileName, uint16 *outSizeInBytes = NULL); // And this one should be 'free'd
	void loadIntoTemp();
	void loadIntoTemp(const char *fileName);
	void loadIntoTemp2(const char *fileName);
	void loadIntoTemp3(const char *fileName);
	void loadTempCharset();
	void loadTempCharset(const char *fileName);
	void saveLoad();
	void printCurs();
	void delCurs();
	void delChar();
	void hangOnCurs(uint16 frameCount);
	void hangOnCurs();
	void multiDump();
	void multiDump(uint16 x, uint16 y, uint8 width, uint8 height);
	void frameOutV(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, int16 x, int16 y);
	void frameOutNm(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
	void frameOutBh(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
	void frameOutFx(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
	void workToScreen();
	void workToScreenCPP();
	uint8 *mapStore();
	void multiGet();
	void multiGet(uint8 *dst, uint16 x, uint16 y, uint8 width, uint8 height);
	void cls();
	void printSprites();
	void quickQuit();
	void readOneBlock();
	void readCityPic();
	void readDestIcon();
	void printUnderMon();
	void seeCommandTail();
	void randomNumber();
	void quickQuit2();
	uint8 getNextWord(const Frame *charSet, const uint8 *string, uint8 *totalWidth, uint8 *charCount);
	void printBoth(const Frame* charSet, uint16 *x, uint16 y, uint8 c, uint8 nextChar);
	void printChar();
	void printChar(const Frame* charSet, uint16 *x, uint16 y, uint8 c, uint8 nextChar, uint8 *width, uint8 *height);
	void printChar(const Frame* charSet, uint16 x, uint16 y, uint8 c, uint8 nextChar, uint8 *width, uint8 *height);
	void printDirect();
	uint8 printDirect(const uint8** string, uint16 x, uint16 *y, uint8 maxWidth, bool centered);
	uint8 printDirect(const uint8* string, uint16 x, uint16 y, uint8 maxWidth, bool centered);
	void printMessage(uint16 x, uint16 y, uint8 index, uint8 maxWidth, bool centered);
	void printMessage();
	void useTimedText();
	void dumpTimedText();
	void setupTimedTemp();
	void setupTimedTemp(uint8 textIndex, uint8 voiceIndex, uint8 x, uint8 y, uint16 countToTimed, uint16 timeCount);
	void getUnderTimed();
	void putUnderTimed();
	uint8 printSlow(const uint8 *string, uint16 x, uint16 y, uint8 maxWidth, bool centered);
	void printSlow();
	void dumpTextLine();
	uint8 getNumber(const Frame *charSet, const uint8 *string, uint16 maxWidth, bool centered, uint16 *offset);
	uint8 kernChars(uint8 firstChar, uint8 secondChar, uint8 width);
	void oldToNames();
	void namesToOld();
	void loadPalFromIFF();
	void fillSpace();
	void startLoading(const Room &room);
	Sprite *spriteTable();
	void showFrame();
	void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height);
	void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag);
	void printASprite(const Sprite *sprite);
	void width160();
	void multiPut(const uint8 *src, uint16 x, uint16 y, uint8 width, uint8 height);
	void multiPut();
	void eraseOldObs();
	void clearSprites();
	Sprite *makeSprite(uint8 x, uint8 y, uint16 updateCallback, uint16 frameData, uint16 somethingInDi);
	void spriteUpdate();
	void initMan();
	void mainMan(Sprite *sprite);
	void mainMan();
	void faceRightWay();
	void walking(Sprite *sprite);
	void autoSetWalk();
	void checkDest(const RoomPaths *roomsPaths);
	void aboutTurn(Sprite *sprite);
	void backObject(Sprite *sprite);
	void backObject();
	void constant(Sprite *sprite, SetObject *objData);
	void steady(Sprite *sprite, SetObject *objData);
	void randomSprite(Sprite *sprite, SetObject *objData);
	void doDoor(Sprite *sprite, SetObject *objData, Common::Rect check);
	void doorway(Sprite *sprite, SetObject *objData);
	void wideDoor(Sprite *sprite, SetObject *objData);
	void lockedDoorway(Sprite *sprite, SetObject *objData);
	void liftSprite(Sprite *sprite, SetObject *objData);
	Frame *findSource();
	void showGameReel();
	void showGameReel(ReelRoutine *routine);
	void showReelFrame(Reel *reel);
	const Frame *getReelFrameAX(uint16 frame);
	void turnPathOn(uint8 param);
	void turnPathOff(uint8 param);
	void turnPathOn();
	void turnPathOff();
	void turnAnyPathOn(uint8 param, uint8 room);
	void turnAnyPathOff(uint8 param, uint8 room);
	void turnAnyPathOn();
	void turnAnyPathOff();
	RoomPaths *getRoomsPaths();
	void makeBackOb(SetObject *objData);
	void modifyChar();
	void lockMon();
	void cancelCh0();
	void cancelCh1();
	void plotReel();
	Reel *getReelStart();
	void dealWithSpecial(uint8 firstParam, uint8 secondParam);
	void zoom();
	void crosshair();
	void showRain();
	void delTextLine();
	void commandOnly();
	void commandOnly(uint8 command);
	void doBlocks();
	void checkIfPerson();
	bool checkIfPerson(uint8 x, uint8 y);
	void checkIfFree();
	bool checkIfFree(uint8 x, uint8 y);
	void checkIfEx();
	bool checkIfEx(uint8 x, uint8 y);
	const uint8 *findObName(uint8 type, uint8 index);
	void copyName();
	void copyName(uint8 type, uint8 index, uint8 *dst);
	void commandWithOb();
	void commandWithOb(uint8 command, uint8 type, uint8 index);
	void showPanel();
	void updatePeople();
	void madman(ReelRoutine &routine);
	void madmanText();
	void madMode();
	void moveMap(uint8 param);
	bool addAlong(const uint8 *mapFlags);
	bool addLength(const uint8 *mapFlags);
	void getDimension();
	void getDimension(uint8 *mapXstart, uint8 *mapYstart, uint8 *mapXsize, uint8 *mapYsize);
	void getMapAd();
	void calcMapAd();
	uint8 getMapAd(const uint8 *setData);
	uint8 getXAd(const uint8 *setData, uint8 *result);
	uint8 getYAd(const uint8 *setData, uint8 *result);
	void calcFrFrame();
	void calcFrFrame(uint8* width, uint8* height);
	void finalFrame();
	void finalFrame(uint16 *x, uint16 *y);
	void showAllObs();
	void blockNameText();
	void walkToText();
	void personNameText();
	void findXYFromPath();
	void findOrMake();
	void findOrMake(uint8 index, uint8 value, uint8 type);
	DynObject *getFreeAd(uint8 index);
	DynObject *getExAd(uint8 index);
	DynObject *getEitherAdCPP();
	SetObject *getSetAd(uint8 index);
	void *getAnyAd(uint8 *value1, uint8 *value2);
	void *getAnyAdDir(uint8 index, uint8 flag);
	void setAllChanges();
	void doChange(uint8 index, uint8 value, uint8 type);
	void deleteTaken();
	bool isCD();
	void placeSetObject();
	void placeSetObject(uint8 index);
	void removeSetObject();
	void removeSetObject(uint8 index);
	void showAllFree();
	void showAllEx();
	bool finishedWalkingCPP();
	void finishedWalking();
	void checkOne();
	void checkOne(uint8 x, uint8 y, uint8 *flag, uint8 *flagEx, uint8 *type, uint8 *flagX, uint8 *flagY);
	void getFlagUnderP();
	void getFlagUnderP(uint8 *flag, uint8 *flagEx);
	void walkAndExamine();
	void obName();
	void obName(uint8 command, uint8 commandType);
	void delPointer();
	void showBlink();
	void dumpBlink();
	void dumpPointer();
	void showPointer();
	void animPointer();
	void checkCoords();
	void checkCoords(const RectWithCallback *rectWithCallbacks);
	void readMouse();
	uint16 readMouseState();
	uint16 waitFrames();
	void drawFlags();
	void addToPeopleList();
	void addToPeopleList(ReelRoutine *routine);
	void getExPos();
	void panelToMap();
	void mapToPanel();
	void dumpMap();
	void obPicture();
	void transferInv();
	void obIcons();
	void compare();
	bool compare(uint8 index, uint8 flag, const char id[4]);
	bool pixelCheckSet(const ObjPos *pos, uint8 x, uint8 y);
	bool isItDescribed(const ObjPos *objPos);
	void checkIfSet();
	bool checkIfSet(uint8 x, uint8 y);
	void checkIfPathIsOn();
	bool checkIfPathIsOn(uint8 index);
	void isItWorn();
	bool isItWorn(const DynObject *object);
	void wornError();
	void makeWorn();
	void makeWorn(DynObject *object);
	void obToInv();
	void obToInv(uint8 index, uint8 flag, uint16 x, uint16 y);
	void showRyanPage();
	void findAllRyan();
	void findAllRyan(uint8 *inv);
	void fillRyan();
	void useRoutine();
	void hangOn();
	void hangOn(uint16 frameCount);
	void hangOnW();
	void hangOnW(uint16 frameCount);
	void hangOnP();
	void hangOnP(uint16 count);
	void showIcon();
	uint8 findNextColon(uint8 **string);
	void findNextColon();
	uint8 *getObTextStartCPP();
	void useText(const uint8 *string);
	void useText();
	void getBlockOfPixel();
	uint8 getBlockOfPixel(uint8 x, uint8 y);
	void bresenhams();
	void examineObText();
	void sortOutMap();
	void showCity();
	uint16 getPersFrame(uint8 index);
	void convIcons();
	void examineOb(bool examineAgain = true);
	void showWatch();
	void dumpWatch();
	void showTime();
	void roomName();
	void transferText();
	void initRain();
	Rain *splitIntoLines(uint8 x, uint8 y, Rain *rain);
	uint8 *mainPalette();
	uint8 *startPalette();
	uint8 *endPalette();
	void clearStartPal();
	void clearEndPal();
	void palToStartPal();
	void endPalToStart();
	void startPalToEnd();
	void palToEndPal();
	void fadeCalculation();
	void watchCount();
	void zoomIcon();
	void loadRoom();
	void getUnderMenu();
	void putUnderMenu();
	void textForMonk();
	void textForEnd();
	void readSetData();
	void loadRoomsSample();
	void fadeupYellows();
	void fadeupMonFirst();
	void printLogo();
	void loadMenu();
	void showMenu();
	void dumpMenu();
	void useMenu();
	void useMon();
	void scrollMonitor();
	void showCurrentFile();
	void input();
	void monPrint();
	const char *monPrint(const char *string);
	Frame *tempGraphics();
	Frame *tempGraphics2();
	Frame *tempGraphics3();
	void accessLightOn();
	void accessLightOff();
	void randomAccess(uint16 count);
	void randomAccess();
	void monMessage(uint8 index);
	void monMessage();
	void netError();
	void turnOnPower();
	void powerLightOn();
	void powerLightOff();
	void playChannel0();
	void playChannel0(uint8 index, uint8 repeat);
	void playChannel1();
	void playChannel1(uint8 index);
	void showMainOps();
	void showDiscOps();
	void createPanel();
	void createPanel2();
	void findRoomInLoc();
	void reelsOnScreen();
	void reconstruct();
	void look();
	void autoLook();
	void doLook();
	void useTempCharset();
	void useCharset1();
	void getBackFromOb();
	void getRidOfAll();
	void getRidOfTemp();
	void getRidOfTempText();
	void getRidOfTemp2();
	void getRidOfTemp3();
	void getRidOfTempCharset();
	void getRidOfTempsP();
	void showFirstUse();
	void showSecondUse();
	void actualSave();
	void actualLoad();
	void loadPosition(unsigned int slot);
	void savePosition(unsigned int slot, const uint8 *descbuf);
	void openForSave(unsigned int slot);
	bool openForLoad(unsigned int slot);
	uint16 allocateAndLoad(unsigned int size);
	void clearAndLoad(uint16 seg, uint8 c, unsigned int size, unsigned int maxSize);
	void loadRoomData(const Room &room, bool skipDat);
	void restoreAll();
	void restoreReels();
	void enterSymbol();
	void viewFolder();
	void edensCDPlayer();
	void hotelBell();
	void playGuitar();
	void callEdensDLift();
	void callEdensLift();
	void sitDownInBar();
	void trapDoor();
	void useBalcony();
	void useChurchHole();
	void useCoveredBox();
	void useElevator1();
	void useElevator2();
	void useElevator3();
	void useElevator4();
	void useElevator5();
	void useDryer();
	void useRailing();
	void useWindow();
	void useHatch();
	void wheelSound();
	void callHotelLift();
	void useShield();
	void wearWatch();
	void wearShades();
	void checkFolderCoords();
	void loadFolder();
	void showFolder();
	void showLeftPage();
	void showRightPage();
	void nextFolder();
	void lastFolder();
	void folderHints();
	void folderExit();
	uint8 getLocation(uint8 index);
	void getLocation();
	void setLocation(uint8 index);
	void setLocation();
	const uint8 *getTextInFile1(uint16 index);
	void loadTempText();
	void loadTempText(const char *fileName);
	void loadTravelText();
	void drawFloor();
	void allocateBuffers();
	void workToScreenM();
	bool checkSpeed(ReelRoutine &routine);
	void checkSpeed();
	void sparkyDrip(ReelRoutine &routine);
	void genericPerson(ReelRoutine &routine);
	void gamer(ReelRoutine &routine);
	void eden(ReelRoutine &routine);
	void sparky(ReelRoutine &routine);
	void rockstar(ReelRoutine &routine);
	void madmansTelly(ReelRoutine &routine);
	void smokeBloke(ReelRoutine &routine);
	void manAsleep(ReelRoutine &routine);
	void drunk(ReelRoutine &routine);
	void introMagic1(ReelRoutine &routine);
	void introMusic(ReelRoutine &routine);
	void candles(ReelRoutine &routine);
	void gates(ReelRoutine &routine);
	void security(ReelRoutine &routine);
	void edenInBath(ReelRoutine &routine);
	void louis(ReelRoutine &routine);
	void handClap(ReelRoutine &routine);
	void carParkDrip(ReelRoutine &routine);
	void foghornSound(ReelRoutine &routine);
	void singleKey(uint8 key, uint16 x, uint16 y);
	void loadSaveBox();
	void loadKeypad();
	void showKeypad();
	void showOuterPad();
	uint8 nextSymbol(uint8 symbol);
	void showSymbol();
	void showExit();
	void showMan();
	void panelIcons1();
	void examIcon();
	void buttonOne();
	void buttonTwo();
	void buttonThree();
	void buttonFour();
	void buttonFive();
	void buttonSix();
	void buttonSeven();
	void buttonEight();
	void buttonNine();
	void buttonNought();
	void buttonEnter();
	void buttonPress(uint8 buttonId);
	void addToPressList();
	bool isItRight(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3);
	void enterCode(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3);
	unsigned int scanForNames();
	void doLoad(int slot);
	void loadOld();
	void inventory();
	void mainScreen();
	void loadGame();
	void saveGame();
	void zoomOnOff();
	void doShake();
	void atmospheres();
	void loadPersonal();
	void loadNews();
	void loadCart();
	void soundOnReels();
	void readKey();
	void hangOne(uint16 delay);
	void hangOne();
	void showPCX(const Common::String &name);
	void showPCX();
	void bibleQuote();
	void realCredits();
	void intro();
	Common::String getFilename(Context &context);
	void fadeScreenUp();
	void fadeScreenUps();
	void fadeScreenUpHalf();
	void fadeScreenDown();
	void fadeScreenDowns();
	void clearBeforeLoad();
	void clearReels();
	void getRidOfReels();
	void setMode();
	void liftNoise(uint8 index);
	void setTopLeft();
	void setTopRight();
	void setBotLeft();
	void setBotRight();
	void newGame();
	void getBackFromOps();
	void getBackToOps();
	void pickupOb(uint8 command, uint8 pos);
	void initialInv();
	void walkIntoRoom();
	void loadIntroRoom();
	void afterIntroRoom();
	void gettingShot();
	void redrawMainScrn();
	void selectSlot2();
	void blank();
	void allPointer();
	void openYourNeighbour();
	void openRyan();
	void openPoolBoss();
	void openEden();
	void openSarters();
	void openLouis();

#endif