From 6171cf2f60d6f6d651de8f89c54644ba2d85e83e Mon Sep 17 00:00:00 2001 From: Bertrand Augereau Date: Sun, 4 Dec 2011 20:18:08 +0100 Subject: DREAMWEB: 'readDestIcon' ported to C++ --- engines/dreamweb/dreamgen.cpp | 320 ++++++++++++++++++++---------------------- engines/dreamweb/dreamgen.h | 97 +++++++------ engines/dreamweb/stubs.cpp | 6 + engines/dreamweb/stubs.h | 1 + 4 files changed, 208 insertions(+), 216 deletions(-) (limited to 'engines') diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 21d189f620..9d721d7a4b 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -2046,7 +2046,7 @@ void DreamGenContext::showGun() { data.byte(kRoomssample) = 34; loadRoomsSample(); data.byte(kVolume) = 0; - dx = 1151; + dx = 1125; loadIntoTemp(); createPanel2(); ds = data.word(kTempgraphics); @@ -2069,7 +2069,7 @@ void DreamGenContext::showGun() { al = 12; ah = 0; playChannel0(); - dx = 1125; + dx = 1099; loadTempText(); rollEndCredits2(); getRidOfTempText(); @@ -2317,7 +2317,7 @@ void DreamGenContext::initialMonCols() { void DreamGenContext::endGame() { STACK_CHECK; - dx = 1125; + dx = 1099; loadTempText(); monkSpeaking(); gettingShot(); @@ -2332,7 +2332,7 @@ void DreamGenContext::monkSpeaking() { STACK_CHECK; data.byte(kRoomssample) = 35; loadRoomsSample(); - dx = 1164; + dx = 1138; loadIntoTemp(); clearWork(); showMonk(); @@ -2399,7 +2399,7 @@ void DreamGenContext::gettingShot() { void DreamGenContext::bibleQuote() { STACK_CHECK; mode640x480(); - dx = 1177; + dx = 1151; showPCX(); fadeScreenUps(); cx = 80; @@ -2438,7 +2438,7 @@ hangonloope: void DreamGenContext::intro() { STACK_CHECK; - dx = 1112; + dx = 1086; loadTempText(); loadPalFromIFF(); setMode(); @@ -2571,7 +2571,7 @@ void DreamGenContext::realCredits() { mode640x480(); cx = 35; hangOn(); - dx = 1190; + dx = 1164; showPCX(); al = 12; ah = 0; @@ -2593,7 +2593,7 @@ void DreamGenContext::realCredits() { _cmp(data.byte(kLasthardkey), 1); if (flags.z()) goto realcreditsearly; - dx = 1203; + dx = 1177; showPCX(); al = 12; ah = 0; @@ -2615,7 +2615,7 @@ void DreamGenContext::realCredits() { _cmp(data.byte(kLasthardkey), 1); if (flags.z()) goto realcreditsearly; - dx = 1216; + dx = 1190; showPCX(); al = 12; ah = 0; @@ -2637,7 +2637,7 @@ void DreamGenContext::realCredits() { _cmp(data.byte(kLasthardkey), 1); if (flags.z()) goto realcreditsearly; - dx = 1229; + dx = 1203; showPCX(); al = 12; ah = 0; @@ -2659,7 +2659,7 @@ void DreamGenContext::realCredits() { _cmp(data.byte(kLasthardkey), 1); if (flags.z()) goto realcreditsearly; - dx = 1242; + dx = 1216; showPCX(); al = 12; ah = 0; @@ -2681,7 +2681,7 @@ void DreamGenContext::realCredits() { _cmp(data.byte(kLasthardkey), 1); if (flags.z()) goto realcreditsearly; - dx = 1255; + dx = 1229; showPCX(); fadeScreenUps(); cx = 60; @@ -5112,14 +5112,14 @@ void DreamGenContext::getDestInfo() { push(ax); dx = data; es = dx; - si = 1917; + si = 1891; _add(si, ax); cl = es.byte(si); ax = pop(); push(cx); dx = data; es = dx; - si = 1933; + si = 1907; _add(si, ax); ax = pop(); } @@ -5296,20 +5296,10 @@ clearedlocations: bx = ax; dx = data; es = dx; - _add(bx, 1917); + _add(bx, 1891); es.byte(bx) = 0; } -void DreamGenContext::readDestIcon() { - STACK_CHECK; - dx = 1060; - loadIntoTemp(); - dx = 1073; - loadIntoTemp2(); - dx = 1047; - loadIntoTemp3(); -} - void DreamGenContext::printOuterMon() { STACK_CHECK; di = 40; @@ -5404,7 +5394,7 @@ void DreamGenContext::execCommand() { es = cs; bx = offset_comlist; ds = cs; - si = 1951; + si = 1925; al = ds.byte(si); _cmp(al, 0); if (!flags.z()) @@ -5497,7 +5487,7 @@ dirroot: si = offset_rootdir; _inc(si); es = cs; - di = 1606; + di = 1580; _inc(di); cx = 12; _movsb(cx, true); @@ -5599,7 +5589,7 @@ notyetassigned: push(bx); _add(bx, 2); ds = cs; - si = 1951; + si = 1925; checkpass: _lodsw(); ah = es.byte(bx); @@ -5670,7 +5660,7 @@ void DreamGenContext::read() { return; okcom: es = cs; - di = 1606; + di = 1580; ax = data.word(kTextfile1); data.word(kMonsource) = ax; ds = ax; @@ -5800,7 +5790,7 @@ keyok2: ds = cs; si = offset_operand1+1; es = cs; - di = 1606+1; + di = 1580+1; cx = 12; _movsb(cx, true); monitorLogo(); @@ -5927,7 +5917,7 @@ void DreamGenContext::parser() { al = '='; _stosb(); ds = cs; - si = 1951; + si = 1925; notspace1: _lodsw(); _cmp(al, 32); @@ -9087,9 +9077,9 @@ void DreamGenContext::dumpSymBox() { void DreamGenContext::useDiary() { STACK_CHECK; getRidOfReels(); - dx = 1086; + dx = 1060; loadIntoTemp(); - dx = 1099; + dx = 1073; loadTempText(); dx = 995; loadTempCharset(); @@ -9551,7 +9541,7 @@ void DreamGenContext::getNamePos() { _mul(cx); dx = data; es = dx; - bx = 2085; + bx = 2059; _add(bx, ax); al = data.byte(kCursorpos); ah = 0; @@ -9705,7 +9695,7 @@ void DreamGenContext::showNames() { STACK_CHECK; dx = data; es = dx; - si = 2085+1; + si = 2059+1; di = (60)+21; bx = (52)+10; cl = 0; @@ -10225,7 +10215,7 @@ void DreamGenContext::clearChanges() { di = 0; _stosw(cx, true); es = cs; - di = 1917; + di = 1891; al = 1; _stosb(2); al = 0; @@ -11027,117 +11017,117 @@ void DreamGenContext::__start() { //0x0400: AMWE B.V9 9.DR EAMW 0x45, 0x42, 0x2e, 0x47, 0x30, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, //0x0410: EB.G 02.D REAM WEB. - 0x47, 0x30, 0x38, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x30, 0x35, - //0x0420: G08. DREA MWEB .G05 - 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x30, 0x36, 0x00, 0x44, 0x52, - //0x0430: .DRE AMWE B.G0 6.DR - 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, 0x34, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, - //0x0440: EAMW EB.G 14.D REAM - 0x57, 0x45, 0x42, 0x2e, 0x54, 0x35, 0x31, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, - //0x0450: WEB. T51. DREA MWEB - 0x2e, 0x54, 0x38, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x54, 0x38, - //0x0460: .T82 .DRE AMWE B.T8 - 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x56, 0x4f, 0x4c, 0x00, 0x44, - //0x0470: 3.DR EAMW EB.V OL.D - 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, - //0x0480: REAM WEB. G13. DREA - 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, 0x35, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, - //0x0490: MWEB .G15 .DRE AMWE - 0x42, 0x2e, 0x49, 0x30, 0x30, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, - //0x04a0: B.I0 0.DR EAMW EB.I - 0x30, 0x31, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x32, 0x00, - //0x04b0: 01.D REAM WEB. I02. - 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x33, 0x00, 0x44, 0x52, 0x45, - //0x04c0: DREA MWEB .I03 .DRE - 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x34, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, - //0x04d0: AMWE B.I0 4.DR EAMW - 0x45, 0x42, 0x2e, 0x49, 0x30, 0x35, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, - //0x04e0: EB.I 05.D REAM WEB. - 0x49, 0x30, 0x36, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x37, - //0x04f0: I06. DREA MWEB .I07 - 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x50, 0x41, 0x4c, 0x00, 0x00, 0x01, - //0x0500: .DRE AMWE B.PA L... - 0x11, 0x01, 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, 0xf0, 0x00, 0x22, 0x01, 0x02, 0x00, - //0x0510: ..@. .... |... "... - 0x2c, 0x00, 0x94, 0xc4, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, - //0x0520: ,... ..@. .... .... - 0x11, 0x01, 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, - //0x0530: ..@. .... |... @... - 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0xee, 0x00, 0x02, 0x01, 0x04, 0x00, 0x2c, 0x00, 0xc8, 0xc4, - //0x0540: .... .... .... ,... - 0x68, 0x00, 0x7c, 0x00, 0x04, 0x00, 0x2c, 0x00, 0xcc, 0xc4, 0x18, 0x01, 0x34, 0x01, 0x04, 0x00, - //0x0550: h.|. ..,. .... 4... - 0x2c, 0x00, 0xb0, 0xc4, 0x68, 0x00, 0xd8, 0x00, 0x8a, 0x00, 0xc0, 0x00, 0xd0, 0xc4, 0x11, 0x01, - //0x0560: ,... h... .... .... - 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, - //0x0570: @... ..|. ..@. .... - 0xa0, 0xca, 0xff, 0xff, 0x45, 0x58, 0x49, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x48, 0x45, - //0x0580: .... EXIT HE - 0x4c, 0x50, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x20, 0x20, 0x20, - //0x0590: LP LIST - 0x20, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x47, 0x4f, - //0x05a0: RE AD LOGO - 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4b, 0x45, 0x59, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - //0x05b0: N KE YS - 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, - //0x05c0: ..PU BLIC PU - 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x42, 0x4c, 0x41, 0x43, - //0x05d0: BLIC ... BLAC - 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f, 0x4e, 0x20, 0x52, 0x59, 0x41, 0x4e, 0x20, 0x20, 0x20, 0x20, - //0x05e0: KDRA GON RYAN - 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x48, 0x45, 0x4e, 0x44, 0x52, 0x49, 0x58, 0x20, 0x20, 0x20, - //0x05f0: . ..HE NDRI X - 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, - //0x0600: LO UIS ... - 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d, 0x55, 0x53, 0x20, 0x20, 0x20, 0x20, 0x42, 0x45, 0x43, 0x4b, - //0x0610: SEPT IMUS BECK - 0x45, 0x54, 0x54, 0x20, 0x20, 0x20, 0x20, 0x00, 0xff, 0xff, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - //0x0620: ETT . .. - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x52, 0x4f, 0x4f, 0x54, 0x20, 0x20, 0x20, - //0x0630: . "ROO T - 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - //0x0640: ." - 0x20, 0x20, 0x20, 0x00, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30, 0x00, 0xba, 0x00, 0xca, 0x00, - //0x0650: . 0000 .00. .... - 0x9d, 0x00, 0xad, 0x00, 0x1c, 0xc8, 0xf3, 0x00, 0x03, 0x01, 0x83, 0x00, 0x93, 0x00, 0x18, 0xc8, - //0x0660: .... .... .... .... - 0x0c, 0x01, 0x1c, 0x01, 0xa8, 0x00, 0xb8, 0x00, 0x50, 0xc7, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, - //0x0670: .... .... P... @... - 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x77, 0x00, 0xae, 0x00, 0x52, 0x00, 0x80, 0x00, 0x34, 0xc8, - //0x0680: .... ..w. ..R. ..4. - 0x46, 0x00, 0x89, 0x00, 0x3e, 0x00, 0x6f, 0x00, 0x80, 0xc8, 0xbc, 0x00, 0xfa, 0x00, 0x44, 0x00, - //0x0690: F... >.o. .... ..D. - 0x98, 0x00, 0x4c, 0xc8, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, - //0x06a0: ..L. ..@. .... .... - 0x77, 0x00, 0xae, 0x00, 0x52, 0x00, 0x80, 0x00, 0x44, 0xc8, 0x46, 0x00, 0x8b, 0x00, 0x3e, 0x00, - //0x06b0: w... R... D.F. ..>. - 0x6f, 0x00, 0x50, 0xc8, 0xec, 0x00, 0xfc, 0x00, 0x70, 0x00, 0x80, 0x00, 0x48, 0xc8, 0x00, 0x00, - //0x06c0: o.P. .... p... H... - 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x0d, 0x0a, 0x0d, 0x0a, 0x24, 0x81, - //0x06d0: @... .... .... ..$. - 0x00, 0xb8, 0x00, 0x52, 0x00, 0x80, 0x00, 0xc0, 0xc8, 0x50, 0x00, 0x93, 0x00, 0x3e, 0x00, 0x6f, - //0x06e0: ...R .... .P.. .>.o - 0x00, 0x80, 0xc8, 0xb7, 0x00, 0xfa, 0x00, 0x3e, 0x00, 0x6f, 0x00, 0xc4, 0xc8, 0x00, 0x00, 0x40, - //0x06f0: .... ...> .o.. ...@ - 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x52, - //0x0700: .... .... .SPE ECHR - 0x32, 0x34, 0x43, 0x30, 0x30, 0x30, 0x35, 0x2e, 0x52, 0x41, 0x57, 0x00, 0x4f, 0x42, 0x4a, 0x45, - //0x0710: 24C0 005. RAW. OBJE - 0x43, 0x54, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x4f, 0x4e, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, - //0x0720: CT N AME ONE - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - //0x0730: - 0x20, 0x20, 0x20, 0x20, 0x00, 0x10, 0x12, 0x12, 0x11, 0x10, 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, - //0x0740: .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, - //0x0750: .... .... .... .D:. + 0x47, 0x30, 0x38, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, 0x34, + //0x0420: G08. DREA MWEB .G14 + 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x54, 0x35, 0x31, 0x00, 0x44, 0x52, + //0x0430: .DRE AMWE B.T5 1.DR + 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x54, 0x38, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, + //0x0440: EAMW EB.T 82.D REAM + 0x57, 0x45, 0x42, 0x2e, 0x54, 0x38, 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, + //0x0450: WEB. T83. DREA MWEB + 0x2e, 0x56, 0x4f, 0x4c, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, + //0x0460: .VOL .DRE AMWE B.G1 + 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x47, 0x31, 0x35, 0x00, 0x44, + //0x0470: 3.DR EAMW EB.G 15.D + 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x30, 0x00, 0x44, 0x52, 0x45, 0x41, + //0x0480: REAM WEB. I00. DREA + 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x31, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, + //0x0490: MWEB .I01 .DRE AMWE + 0x42, 0x2e, 0x49, 0x30, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, + //0x04a0: B.I0 2.DR EAMW EB.I + 0x30, 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x34, 0x00, + //0x04b0: 03.D REAM WEB. I04. + 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x35, 0x00, 0x44, 0x52, 0x45, + //0x04c0: DREA MWEB .I05 .DRE + 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x49, 0x30, 0x36, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, + //0x04d0: AMWE B.I0 6.DR EAMW + 0x45, 0x42, 0x2e, 0x49, 0x30, 0x37, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, + //0x04e0: EB.I 07.D REAM WEB. + 0x50, 0x41, 0x4c, 0x00, 0x00, 0x01, 0x11, 0x01, 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, + //0x04f0: PAL. .... @... ..|. + 0xf0, 0x00, 0x22, 0x01, 0x02, 0x00, 0x2c, 0x00, 0x94, 0xc4, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, + //0x0500: ..". ..,. .... @... + 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x11, 0x01, 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, + //0x0510: .... .... @... ..|. + 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0xee, 0x00, 0x02, 0x01, + //0x0520: ..@. .... .... .... + 0x04, 0x00, 0x2c, 0x00, 0xc8, 0xc4, 0x68, 0x00, 0x7c, 0x00, 0x04, 0x00, 0x2c, 0x00, 0xcc, 0xc4, + //0x0530: ..,. ..h. |... ,... + 0x18, 0x01, 0x34, 0x01, 0x04, 0x00, 0x2c, 0x00, 0xb0, 0xc4, 0x68, 0x00, 0xd8, 0x00, 0x8a, 0x00, + //0x0540: ..4. ..,. ..h. .... + 0xc0, 0x00, 0xd0, 0xc4, 0x11, 0x01, 0x40, 0x01, 0x9d, 0x00, 0xc6, 0x00, 0x7c, 0xc4, 0x00, 0x00, + //0x0550: .... ..@. .... |... + 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x45, 0x58, 0x49, 0x54, 0x20, 0x20, + //0x0560: @... .... ..EX IT + 0x20, 0x20, 0x20, 0x20, 0x48, 0x45, 0x4c, 0x50, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x49, + //0x0570: HELP LI + 0x53, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x20, 0x20, 0x20, + //0x0580: ST READ + 0x20, 0x20, 0x4c, 0x4f, 0x47, 0x4f, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4b, 0x45, 0x59, 0x53, + //0x0590: LO GON KEYS + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, + //0x05a0: .. PUBL IC + 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, + //0x05b0: PUBL IC . + 0x00, 0x00, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f, 0x4e, 0x20, 0x52, 0x59, + //0x05c0: ..BL ACKD RAGO N RY + 0x41, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x48, 0x45, 0x4e, 0x44, + //0x05d0: AN ... HEND + 0x52, 0x49, 0x58, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49, 0x53, 0x20, 0x20, 0x20, + //0x05e0: RIX LOUI S + 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d, 0x55, 0x53, 0x20, 0x20, + //0x05f0: . ..SE PTIM US + 0x20, 0x20, 0x42, 0x45, 0x43, 0x4b, 0x45, 0x54, 0x54, 0x20, 0x20, 0x20, 0x20, 0x00, 0xff, 0xff, + //0x0600: BE CKET T ... + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x52, + //0x0610: ."R + 0x4f, 0x4f, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x20, 0x20, 0x20, + //0x0620: OOT . " + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, + //0x0630: .00 00.0 + 0x30, 0x00, 0xba, 0x00, 0xca, 0x00, 0x9d, 0x00, 0xad, 0x00, 0x1c, 0xc8, 0xf3, 0x00, 0x03, 0x01, + //0x0640: 0... .... .... .... + 0x83, 0x00, 0x93, 0x00, 0x18, 0xc8, 0x0c, 0x01, 0x1c, 0x01, 0xa8, 0x00, 0xb8, 0x00, 0x50, 0xc7, + //0x0650: .... .... .... ..P. + 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x77, 0x00, 0xae, 0x00, + //0x0660: ..@. .... .... w... + 0x52, 0x00, 0x80, 0x00, 0x34, 0xc8, 0x46, 0x00, 0x89, 0x00, 0x3e, 0x00, 0x6f, 0x00, 0x80, 0xc8, + //0x0670: R... 4.F. ..>. o... + 0xbc, 0x00, 0xfa, 0x00, 0x44, 0x00, 0x98, 0x00, 0x4c, 0xc8, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, + //0x0680: .... D... L... @... + 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x77, 0x00, 0xae, 0x00, 0x52, 0x00, 0x80, 0x00, 0x44, 0xc8, + //0x0690: .... ..w. ..R. ..D. + 0x46, 0x00, 0x8b, 0x00, 0x3e, 0x00, 0x6f, 0x00, 0x50, 0xc8, 0xec, 0x00, 0xfc, 0x00, 0x70, 0x00, + //0x06a0: F... >.o. P... ..p. + 0x80, 0x00, 0x48, 0xc8, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, + //0x06b0: ..H. ..@. .... .... + 0x0d, 0x0a, 0x0d, 0x0a, 0x24, 0x81, 0x00, 0xb8, 0x00, 0x52, 0x00, 0x80, 0x00, 0xc0, 0xc8, 0x50, + //0x06c0: .... $... .R.. ...P + 0x00, 0x93, 0x00, 0x3e, 0x00, 0x6f, 0x00, 0x80, 0xc8, 0xb7, 0x00, 0xfa, 0x00, 0x3e, 0x00, 0x6f, + //0x06d0: ...> .o.. .... .>.o + 0x00, 0xc4, 0xc8, 0x00, 0x00, 0x40, 0x01, 0x00, 0x00, 0xc8, 0x00, 0xa0, 0xca, 0xff, 0xff, 0x53, + //0x06e0: .... .@.. .... ...S + 0x50, 0x45, 0x45, 0x43, 0x48, 0x52, 0x32, 0x34, 0x43, 0x30, 0x30, 0x30, 0x35, 0x2e, 0x52, 0x41, + //0x06f0: PEEC HR24 C000 5.RA + 0x57, 0x00, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x4f, 0x4e, + //0x0700: W.OB JECT NAM E ON + 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + //0x0710: E + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x10, 0x12, 0x12, 0x11, 0x10, + //0x0720: .. .... + 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, + //0x0730: .... .... .... .... + 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + //0x0740: ...D :... .... .... 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + //0x0750: .... .... .... .... + 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //0x0760: .... .... .... .... - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x02, 0x04, 0x01, 0x0a, 0x09, 0x08, 0x06, 0x0b, 0x04, 0x07, //0x0770: .... .... .... .... - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //0x0780: .... .... .... .... - 0x02, 0x04, 0x01, 0x0a, 0x09, 0x08, 0x06, 0x0b, 0x04, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //0x0790: .... .... .... .... 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //0x07a0: .... .... .... .... @@ -11151,37 +11141,35 @@ void DreamGenContext::__start() { //0x07e0: .... .... .... .... 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //0x07f0: .... .... .... .... - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x00, 0x01, 0x01, 0x01, //0x0800: .... .... .... .... - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, //0x0810: .... .... .... .... - 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, //0x0820: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, //0x0830: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, //0x0840: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, //0x0850: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, //0x0860: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, //0x0870: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x01, - //0x0880: .... .... .... .... - 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x44, 0x52, 0x45, 0x41, - //0x0890: .... .... .... DREA - 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x30, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, - //0x08a0: MWEB .D00 .DRE AMWE - 0x42, 0x2e, 0x44, 0x30, 0x31, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, - //0x08b0: B.D0 1.DR EAMW EB.D - 0x30, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x33, 0x00, - //0x08c0: 02.D REAM WEB. D03. - 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x34, 0x00, 0x44, 0x52, 0x45, - //0x08d0: DREA MWEB .D04 .DRE - 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x35, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, - //0x08e0: AMWE B.D0 5.DR EAMW - 0x45, 0x42, 0x2e, 0x44, 0x30, 0x36, 0x00, 0x00, 0x00, 0x00, }; + 0x01, 0x01, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x30, 0x00, 0x44, + //0x0880: ..DR EAMW EB.D 00.D + 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x31, 0x00, 0x44, 0x52, 0x45, 0x41, + //0x0890: REAM WEB. D01. DREA + 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x32, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, + //0x08a0: MWEB .D02 .DRE AMWE + 0x42, 0x2e, 0x44, 0x30, 0x33, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, + //0x08b0: B.D0 3.DR EAMW EB.D + 0x30, 0x34, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x35, 0x00, + //0x08c0: 04.D REAM WEB. D05. + 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x44, 0x30, 0x36, 0x00, 0x00, 0x00, 0x00, + //0x08d0: DREA MWEB .D06 .... + }; ds.assign(src, src + sizeof(src)); dreamweb(); } diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index 5c11bd9ff5..830d389dfb 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -36,23 +36,23 @@ public: void __start(); #include "stubs.h" // Allow hand-reversed functions to have a signature different than void f() - static const uint16 offset_speechfile = 0x070f; - static const uint16 offset_operand1 = 0x062a; - static const uint16 offset_keys = 0x05c0; - static const uint16 offset_quitlist = 0x0530; - static const uint16 offset_speechfilename = 0x0709; - static const uint16 offset_discopslist = 0x06b0; - static const uint16 offset_talklist = 0x0510; - static const uint16 offset_money2poke = 0x0659; - static const uint16 offset_diarylist = 0x065c; - static const uint16 offset_openchangesize = 0x050e; - static const uint16 offset_comlist = 0x0584; - static const uint16 offset_rootdir = 0x0638; - static const uint16 offset_decidelist = 0x06df; - static const uint16 offset_money1poke = 0x0654; - static const uint16 offset_destlist = 0x0546; - static const uint16 offset_commandline = 0x071c; - static const uint16 offset_opslist = 0x0686; + static const uint16 offset_comlist = 0x056a; + static const uint16 offset_speechfile = 0x06f5; + static const uint16 offset_rootdir = 0x061e; + static const uint16 offset_quitlist = 0x0516; + static const uint16 offset_decidelist = 0x06c5; + static const uint16 offset_talklist = 0x04f6; + static const uint16 offset_speechfilename = 0x06ef; + static const uint16 offset_diarylist = 0x0642; + static const uint16 offset_destlist = 0x052c; + static const uint16 offset_openchangesize = 0x04f4; + static const uint16 offset_operand1 = 0x0610; + static const uint16 offset_money2poke = 0x063f; + static const uint16 offset_keys = 0x05a6; + static const uint16 offset_discopslist = 0x0696; + static const uint16 offset_opslist = 0x066c; + static const uint16 offset_money1poke = 0x063a; + static const uint16 offset_commandline = 0x0702; static const uint16 kStartvars = 0; static const uint16 kProgresspoints = 1; static const uint16 kWatchon = 2; @@ -433,35 +433,33 @@ public: static const uint16 kBasicsample = 1021; static const uint16 kExtragraphics1 = 1034; static const uint16 kIcongraphics8 = 1047; - static const uint16 kTravelgraphic1 = 1060; - static const uint16 kTravelgraphic2 = 1073; - static const uint16 kDiarygraphic = 1086; - static const uint16 kDiarytext = 1099; - static const uint16 kIntrotextname = 1112; - static const uint16 kEndtextname = 1125; - static const uint16 kVolumetabname = 1138; - static const uint16 kGungraphic = 1151; - static const uint16 kMonkface = 1164; - static const uint16 kTitle0graphics = 1177; - static const uint16 kTitle1graphics = 1190; - static const uint16 kTitle2graphics = 1203; - static const uint16 kTitle3graphics = 1216; - static const uint16 kTitle4graphics = 1229; - static const uint16 kTitle5graphics = 1242; - static const uint16 kTitle6graphics = 1255; - static const uint16 kTitle7graphics = 1268; - static const uint16 kPalettescreen = 1281; - static const uint16 kCurrentfile = 1606; - static const uint16 kRoomscango = 1917; - static const uint16 kRoompics = 1933; - static const uint16 kOplist = 1948; - static const uint16 kInputline = 1951; - static const uint16 kPresslist = 2079; - static const uint16 kSavenames = 2085; - static const uint16 kSavefiles = 2204; - static const uint16 kQuitrequested = 2295; - static const uint16 kSubtitles = 2296; - static const uint16 kForeignrelease = 2297; + static const uint16 kDiarygraphic = 1060; + static const uint16 kDiarytext = 1073; + static const uint16 kIntrotextname = 1086; + static const uint16 kEndtextname = 1099; + static const uint16 kVolumetabname = 1112; + static const uint16 kGungraphic = 1125; + static const uint16 kMonkface = 1138; + static const uint16 kTitle0graphics = 1151; + static const uint16 kTitle1graphics = 1164; + static const uint16 kTitle2graphics = 1177; + static const uint16 kTitle3graphics = 1190; + static const uint16 kTitle4graphics = 1203; + static const uint16 kTitle5graphics = 1216; + static const uint16 kTitle6graphics = 1229; + static const uint16 kTitle7graphics = 1242; + static const uint16 kPalettescreen = 1255; + static const uint16 kCurrentfile = 1580; + static const uint16 kRoomscango = 1891; + static const uint16 kRoompics = 1907; + static const uint16 kOplist = 1922; + static const uint16 kInputline = 1925; + static const uint16 kPresslist = 2053; + static const uint16 kSavenames = 2059; + static const uint16 kSavefiles = 2178; + static const uint16 kQuitrequested = 2269; + static const uint16 kSubtitles = 2270; + static const uint16 kForeignrelease = 2271; static const uint16 kBlocktextdat = (0); static const uint16 kPersonframes = (0); static const uint16 kDebuglevel1 = (0); @@ -728,7 +726,6 @@ public: void useDryer(); void outOfInv(); void diaryKeyP(); - void reExFromOpen(); void manSatStill(); void transferMap(); void showMonk(); @@ -736,7 +733,6 @@ public: void set16ColPalette(); void purgeAnItem(); void enableSoundInt(); - void volumeAdjust(); void purgeALocation(); void notHeldError(); void getSetAd(); @@ -796,7 +792,7 @@ public: void setSoundOff(); void setPickup(); void dropObject(); - void openOb(); + void reExFromOpen(); void drawItAll(); void useStereo(); void candles2(); @@ -919,12 +915,13 @@ public: void introMusic(); void quitKey(); void processTrigger(); - void readDestIcon(); + void volumeAdjust(); void loadSecondSample(); void transferConToEx(); void businessMan(); void adjustDown(); void withWhat(); + void openOb(); void createFile(); void useRailing(); void useHole(); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index d171d87582..03e416e5f2 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -3114,6 +3114,12 @@ void DreamGenContext::readCityPic() { loadIntoTemp("DREAMWEB.G04"); } +void DreamGenContext::readDestIcon() { + loadIntoTemp("DREAMWEB.G05"); + loadIntoTemp2("DREAMWEB.G06"); + loadIntoTemp3("DREAMWEB.G08"); +} + void DreamGenContext::readKey() { uint16 bufOut = data.word(kBufferout); diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 3e62396d63..082a94cd6e 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -64,6 +64,7 @@ void quickQuit(); void readOneBlock(); void readCityPic(); + void readDestIcon(); void printUnderMon(); void seeCommandTail(); void randomNumber(); -- cgit v1.2.3