[Scummvm-cvs-logs] SF.net SVN: scummvm:[55365] scummvm/trunk/engines/hugo

strangerke at users.sourceforge.net strangerke at users.sourceforge.net
Thu Jan 20 23:50:51 CET 2011


Revision: 55365
          http://scummvm.svn.sourceforge.net/scummvm/?rev=55365&view=rev
Author:   strangerke
Date:     2011-01-20 22:50:50 +0000 (Thu, 20 Jan 2011)

Log Message:
-----------
HUGO: Merge misc versions of display, intro and scheduler classes

Modified Paths:
--------------
    scummvm/trunk/engines/hugo/display.cpp
    scummvm/trunk/engines/hugo/intro.cpp
    scummvm/trunk/engines/hugo/module.mk
    scummvm/trunk/engines/hugo/schedule.cpp

Removed Paths:
-------------
    scummvm/trunk/engines/hugo/display_v1d.cpp
    scummvm/trunk/engines/hugo/display_v1w.cpp
    scummvm/trunk/engines/hugo/intro_v1d.cpp
    scummvm/trunk/engines/hugo/intro_v1w.cpp
    scummvm/trunk/engines/hugo/intro_v2d.cpp
    scummvm/trunk/engines/hugo/intro_v2w.cpp
    scummvm/trunk/engines/hugo/intro_v3d.cpp
    scummvm/trunk/engines/hugo/intro_v3w.cpp
    scummvm/trunk/engines/hugo/schedule_v1d.cpp
    scummvm/trunk/engines/hugo/schedule_v1w.cpp
    scummvm/trunk/engines/hugo/schedule_v2d.cpp
    scummvm/trunk/engines/hugo/schedule_v3d.cpp

Modified: scummvm/trunk/engines/hugo/display.cpp
===================================================================
--- scummvm/trunk/engines/hugo/display.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/display.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -594,5 +594,112 @@
 void Screen::hideCursor() {
 	CursorMan.showMouse(false);
 }
+
+Screen_v1d::Screen_v1d(HugoEngine *vm) : Screen(vm) {
+}
+
+Screen_v1d::~Screen_v1d() {
+}
+
+/**
+* Load font file, construct font ptrs and reverse data bytes
+* TODO: This uses hardcoded fonts in hugo.dat, it should be replaced
+*       by a proper implementation of .FON files
+*/
+void Screen_v1d::loadFont(int16 fontId) {
+	debugC(2, kDebugDisplay, "loadFont(%d)", fontId);
+
+	assert(fontId < NUM_FONTS);
+
+	_fnt = fontId - FIRST_FONT;                     // Set current font number
+
+	if (fontLoadedFl[_fnt])                         // If already loaded, return
+		return;
+
+	fontLoadedFl[_fnt] = true;
+
+	memcpy(_fontdata[_fnt], _arrayFont[_fnt], _arrayFontSize[_fnt]);
+	_font[_fnt][0] = _fontdata[_fnt];               // Store height,width of fonts
+
+	int16 offset = 2;                               // Start at fontdata[2] ([0],[1] used for height,width)
+
+	// Setup the font array (127 characters)
+	for (int i = 1; i < 128; i++) {
+		_font[_fnt][i] = _fontdata[_fnt] + offset;
+		byte height = *(_fontdata[_fnt] + offset);
+		byte width  = *(_fontdata[_fnt] + offset + 1);
+
+		int16 size = height * ((width + 7) >> 3);
+		for (int j = 0; j < size; j++)
+			Utils::reverseByte(&_fontdata[_fnt][offset + 2 + j]);
+
+		offset += 2 + size;
+	}
+}
+
+/**
+* Load fonts from Hugo.dat
+* These fonts are a workaround to avoid handling TTF fonts used by DOS versions
+* TODO: Properly handle the vector based font files (win31)
+*/
+void Screen_v1d::loadFontArr(Common::File &in) {
+	for (int i = 0; i < NUM_FONTS; i++) {
+		_arrayFontSize[i] = in.readUint16BE();
+		_arrayFont[i] = (byte *)malloc(sizeof(byte) * _arrayFontSize[i]);
+		for (int j = 0; j < _arrayFontSize[i]; j++) {
+			_arrayFont[i][j] = in.readByte();
+		}
+	}
+}
+
+Screen_v1w::Screen_v1w(HugoEngine *vm) : Screen(vm) {
+}
+
+Screen_v1w::~Screen_v1w() {
+}
+
+/**
+* Load font file, construct font ptrs and reverse data bytes
+*/
+void Screen_v1w::loadFont(int16 fontId) {
+	debugC(2, kDebugDisplay, "loadFont(%d)", fontId);
+
+	_fnt = fontId - FIRST_FONT;                     // Set current font number
+
+	if (fontLoadedFl[_fnt])                         // If already loaded, return
+		return;
+
+	fontLoadedFl[_fnt] = true;
+	_vm->_file->readUIFItem(fontId, _fontdata[_fnt]);
+
+	// Compile font ptrs.  Note: First ptr points to height,width of font
+	_font[_fnt][0] = _fontdata[_fnt];               // Store height,width of fonts
+
+	int16 offset = 2;                               // Start at fontdata[2] ([0],[1] used for height,width)
+
+	// Setup the font array (127 characters)
+	for (int i = 1; i < 128; i++) {
+		_font[_fnt][i] = _fontdata[_fnt] + offset;
+		byte height = *(_fontdata[_fnt] + offset);
+		byte width  = *(_fontdata[_fnt] + offset + 1);
+
+		int16 size = height * ((width + 7) >> 3);
+		for (int j = 0; j < size; j++)
+			Utils::reverseByte(&_fontdata[_fnt][offset + 2 + j]);
+
+		offset += 2 + size;
+	}
+}
+
+/**
+* Skips the fonts used by the DOS versions
+*/
+void Screen_v1w::loadFontArr(Common::File &in) {
+	for (int i = 0; i < NUM_FONTS; i++) {
+		uint16 numElem = in.readUint16BE();
+		for (int j = 0; j < numElem; j++)
+			in.readByte();
+	}
+}
 } // End of namespace Hugo
 

Deleted: scummvm/trunk/engines/hugo/display_v1d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/display_v1d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/display_v1d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,100 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// Display.c - DIB related code for HUGOWIN
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/display.h"
-#include "hugo/util.h"
-
-namespace Hugo {
-
-Screen_v1d::Screen_v1d(HugoEngine *vm) : Screen(vm) {
-}
-
-Screen_v1d::~Screen_v1d() {
-}
-
-/**
-* Load font file, construct font ptrs and reverse data bytes
-* TODO: This uses hardcoded fonts in hugo.dat, it should be replaced
-*       by a proper implementation of .FON files
-*/
-void Screen_v1d::loadFont(int16 fontId) {
-	debugC(2, kDebugDisplay, "loadFont(%d)", fontId);
-
-	assert(fontId < NUM_FONTS);
-
-	_fnt = fontId - FIRST_FONT;                     // Set current font number
-
-	if (fontLoadedFl[_fnt])                         // If already loaded, return
-		return;
-
-	fontLoadedFl[_fnt] = true;
-
-	memcpy(_fontdata[_fnt], _arrayFont[_fnt], _arrayFontSize[_fnt]);
-	_font[_fnt][0] = _fontdata[_fnt];               // Store height,width of fonts
-
-	int16 offset = 2;                               // Start at fontdata[2] ([0],[1] used for height,width)
-
-	// Setup the font array (127 characters)
-	for (int i = 1; i < 128; i++) {
-		_font[_fnt][i] = _fontdata[_fnt] + offset;
-		byte height = *(_fontdata[_fnt] + offset);
-		byte width  = *(_fontdata[_fnt] + offset + 1);
-
-		int16 size = height * ((width + 7) >> 3);
-		for (int j = 0; j < size; j++)
-			Utils::reverseByte(&_fontdata[_fnt][offset + 2 + j]);
-
-		offset += 2 + size;
-	}
-}
-
-/**
-* Load fonts from Hugo.dat
-* These fonts are a workaround to avoid handling TTF fonts used by DOS versions
-* TODO: Properly handle the vector based font files (win31)
-*/
-void Screen_v1d::loadFontArr(Common::File &in) {
-	for (int i = 0; i < NUM_FONTS; i++) {
-		_arrayFontSize[i] = in.readUint16BE();
-		_arrayFont[i] = (byte *)malloc(sizeof(byte) * _arrayFontSize[i]);
-		for (int j = 0; j < _arrayFontSize[i]; j++) {
-			_arrayFont[i][j] = in.readByte();
-		}
-	}
-}
-} // End of namespace Hugo
-

Deleted: scummvm/trunk/engines/hugo/display_v1w.cpp
===================================================================
--- scummvm/trunk/engines/hugo/display_v1w.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/display_v1w.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,94 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// Display.c - DIB related code for HUGOWIN
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/display.h"
-#include "hugo/file.h"
-#include "hugo/util.h"
-
-namespace Hugo {
-
-Screen_v1w::Screen_v1w(HugoEngine *vm) : Screen(vm) {
-}
-
-Screen_v1w::~Screen_v1w() {
-}
-
-/**
-* Load font file, construct font ptrs and reverse data bytes
-*/
-void Screen_v1w::loadFont(int16 fontId) {
-	debugC(2, kDebugDisplay, "loadFont(%d)", fontId);
-
-	_fnt = fontId - FIRST_FONT;                     // Set current font number
-
-	if (fontLoadedFl[_fnt])                             // If already loaded, return
-		return;
-
-	fontLoadedFl[_fnt] = true;
-	_vm->_file->readUIFItem(fontId, _fontdata[_fnt]);
-
-	// Compile font ptrs.  Note: First ptr points to height,width of font
-	_font[_fnt][0] = _fontdata[_fnt];               // Store height,width of fonts
-
-	int16 offset = 2;                                       // Start at fontdata[2] ([0],[1] used for height,width)
-
-	// Setup the font array (127 characters)
-	for (int i = 1; i < 128; i++) {
-		_font[_fnt][i] = _fontdata[_fnt] + offset;
-		byte height = *(_fontdata[_fnt] + offset);
-		byte width  = *(_fontdata[_fnt] + offset + 1);
-
-		int16 size = height * ((width + 7) >> 3);
-		for (int j = 0; j < size; j++)
-			Utils::reverseByte(&_fontdata[_fnt][offset + 2 + j]);
-
-		offset += 2 + size;
-	}
-}
-
-/**
-* Skips the fonts used by the DOS versions
-*/
-void Screen_v1w::loadFontArr(Common::File &in) {
-	for (int i = 0; i < NUM_FONTS; i++) {
-		uint16 numElem = in.readUint16BE();
-		for (int j = 0; j < numElem; j++)
-			in.readByte();
-	}
-}
-} // End of namespace Hugo
-

Modified: scummvm/trunk/engines/hugo/intro.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -34,6 +34,9 @@
 
 #include "hugo/hugo.h"
 #include "hugo/intro.h"
+#include "hugo/util.h"
+#include "hugo/display.h"
+#include "hugo/sound.h"
 
 namespace Hugo {
 
@@ -43,4 +46,363 @@
 IntroHandler::~IntroHandler() {
 }
 
+intro_v1d::intro_v1d(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v1d::~intro_v1d() {
+}
+
+void intro_v1d::preNewGame() {
+}
+
+void intro_v1d::introInit() {
+	introTicks = 0;
+	surf.w = 320;
+	surf.h = 200;
+	surf.pixels = _vm->_screen->getFrontBuffer();
+	surf.pitch = 320;
+	surf.bytesPerPixel = 1;
+}
+
+bool intro_v1d::introPlay() {
+	static int state = 0;
+	byte introSize = _vm->getIntroSize();
+
+	if (_vm->getGameStatus().skipIntroFl)
+		return true;
+
+	if (introTicks < introSize) {
+		switch (state++) {
+		case 0:
+			_vm->_screen->drawRectangle(true, 0, 0, 319, 199, _TMAGENTA);
+			_vm->_screen->drawRectangle(true, 10, 10, 309, 189, _TBLACK);
+			break;
+
+		case 1:
+			_vm->_screen->drawShape(20, 92,_TLIGHTMAGENTA,_TMAGENTA);
+			_vm->_screen->drawShape(250,92,_TLIGHTMAGENTA,_TMAGENTA);
+
+			// TROMAN, size 10-5
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
+
+			char buffer[80];
+			if (_boot.registered)
+				strcpy(buffer, "Registered Version");
+			else
+				strcpy(buffer, "Shareware Version");
+
+			font.drawString(&surf, buffer, 0, 163, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			font.drawString(&surf, COPYRIGHT, 0, 176, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+
+			if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
+				sprintf(buffer, "Distributed by %s.", _boot.distrib);
+				font.drawString(&surf, buffer, 0, 75, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			}
+
+			// SCRIPT, size 24-16
+			strcpy(buffer, "Hugo's");
+
+			if (font.loadFromFON("SCRIPT.FON")) {
+				font.drawString(&surf, buffer, 0, 20, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			} else {
+				// Workaround: SCRIPT.FON doesn't load properly at the moment
+				_vm->_screen->loadFont(2);
+				_vm->_screen->writeStr(CENTER, 20, buffer, _TMAGENTA);
+			}
+
+			// TROMAN, size 30-24
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 24)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 24");
+
+			strcpy(buffer, "House of Horrors !");
+			font.drawString(&surf, buffer, 0, 50, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 2:
+			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
+
+			// TROMAN, size 16-9
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 14)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 14");
+
+			strcpy(buffer, "S t a r r i n g :");
+			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 3:
+			// TROMAN, size 20-9
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 18)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 18");
+
+			strcpy(buffer, "Hugo !");
+			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 4:
+			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
+
+			// TROMAN, size 16-9
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 14)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 14");
+
+			strcpy(buffer, "P r o d u c e d  b y :");
+			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 5:
+			// TROMAN size 16-9
+			strcpy(buffer, "David P Gray !");
+			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 6:
+			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
+
+			// TROMAN, size 16-9
+			strcpy(buffer, "D i r e c t e d   b y :");
+			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 7:
+			// TROMAN, size 16-9
+			strcpy(buffer, "David P Gray !");
+			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 8:
+			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
+
+			// TROMAN, size 16-9
+			strcpy(buffer, "M u s i c   b y :");
+			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 9:
+			// TROMAN, size 16-9
+			strcpy(buffer, "David P Gray !");
+			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		case 10:
+			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
+
+			// TROMAN, size 20-14
+			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 18)))
+				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 18");
+
+			strcpy(buffer, "E n j o y !");
+			font.drawString(&surf, buffer, 0, 100, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
+			break;
+		}
+
+		_vm->_screen->displayBackground();
+		g_system->updateScreen();
+		g_system->delayMillis(1000);
+	}
+
+	return (++introTicks >= introSize);
+}
+
+intro_v2d::intro_v2d(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v2d::~intro_v2d() {
+}
+
+void intro_v2d::preNewGame() {
+}
+
+void intro_v2d::introInit() {
+	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
+	surf.w = 320;
+	surf.h = 200;
+	surf.pixels = _vm->_screen->getFrontBuffer();
+	surf.pitch = 320;
+	surf.bytesPerPixel = 1;
+
+	char buffer[128];
+
+	// TROMAN, size 10-5
+	if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
+		error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
+
+	if (_boot.registered)
+		sprintf(buffer, "%s  Registered Version", COPYRIGHT);
+	else
+		sprintf(buffer, "%s  Shareware Version", COPYRIGHT);
+
+	font.drawString(&surf, buffer, 0, 186, 320, _TLIGHTRED, Graphics::kTextAlignCenter);
+
+	if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
+		// TROMAN, size 10-5
+		sprintf(buffer, "Distributed by %s.", _boot.distrib);
+		font.drawString(&surf, buffer, 0, 1, 320, _TLIGHTRED, Graphics::kTextAlignCenter);
+	}
+
+	_vm->_screen->displayBackground();
+	g_system->updateScreen();
+	g_system->delayMillis(5000);
+}
+
+bool intro_v2d::introPlay() {
+	return true;
+}
+
+intro_v3d::intro_v3d(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v3d::~intro_v3d() {
+}
+
+void intro_v3d::preNewGame() {
+}
+
+void intro_v3d::introInit() {
+	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
+	surf.w = 320;
+	surf.h = 200;
+	surf.pixels = _vm->_screen->getFrontBuffer();
+	surf.pitch = 320;
+	surf.bytesPerPixel = 1;
+
+	char buffer[128];
+	if (_boot.registered)
+		sprintf(buffer, "%s  Registered Version", COPYRIGHT);
+	else
+		sprintf(buffer,"%s  Shareware Version", COPYRIGHT);
+
+	// TROMAN, size 10-5
+	if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
+		error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
+
+	font.drawString(&surf, buffer, 0, 190, 320, _TBROWN, Graphics::kTextAlignCenter);
+
+	if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
+		sprintf(buffer, "Distributed by %s.", _boot.distrib);
+		font.drawString(&surf, buffer, 0, 0, 320, _TBROWN, Graphics::kTextAlignCenter);
+	}
+
+	_vm->_screen->displayBackground();
+	g_system->updateScreen();
+	g_system->delayMillis(5000);
+
+	_vm->_file->readBackground(22); // display screen MAP_3d
+	_vm->_screen->displayBackground();
+	introTicks = 0;
+	_vm->_sound->DOSSongPtr = _vm->_sound->DOSIntroSong;
+}
+
+/**
+* Hugo 3 - Preamble screen before going into game.  Draws path of Hugo's plane.
+* Called every tick.  Returns TRUE when complete
+*/
+bool intro_v3d::introPlay() {
+	if (_vm->getGameStatus().skipIntroFl)
+		return true;
+
+	if (introTicks < _vm->getIntroSize()) {
+		font.drawString(&surf, ".", _vm->_introX[introTicks], _vm->_introY[introTicks] - DIBOFF_Y, 320, _TBRIGHTWHITE);
+		_vm->_screen->displayBackground();
+
+		// Text boxes at various times
+		switch (introTicks) {
+		case 4:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro1]);
+			break;
+		case 9:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro2]);
+			break;
+		case 35:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro3]);
+			break;
+		}
+	}
+
+	return (++introTicks >= _vm->getIntroSize());
+}
+
+intro_v1w::intro_v1w(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v1w::~intro_v1w() {
+}
+
+void intro_v1w::preNewGame() {
+	_vm->getGameStatus().viewState = V_INTROINIT;
+}
+
+void intro_v1w::introInit() {
+}
+
+bool intro_v1w::introPlay() {
+	return true;
+}
+
+intro_v2w::intro_v2w(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v2w::~intro_v2w() {
+}
+
+void intro_v2w::preNewGame() {
+}
+
+void intro_v2w::introInit() {
+	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
+
+	_vm->_screen->displayBackground();
+	g_system->updateScreen();
+	g_system->delayMillis(3000);
+}
+
+bool intro_v2w::introPlay() {
+	return true;
+}
+
+intro_v3w::intro_v3w(HugoEngine *vm) : IntroHandler(vm) {
+}
+
+intro_v3w::~intro_v3w() {
+}
+
+void intro_v3w::preNewGame() {
+}
+
+/**
+* Hugo 3 - show map and set up for introPlay()
+*/
+void intro_v3w::introInit() {
+
+	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
+
+	_vm->_screen->displayBackground();
+	g_system->updateScreen();
+	g_system->delayMillis(3000);
+	_vm->_file->readBackground(22); // display screen MAP_3w
+	_vm->_screen->displayBackground();
+	introTicks = 0;
+	_vm->_screen->loadFont(0);
+}
+
+/**
+* Hugo 3 - Preamble screen before going into game.  Draws path of Hugo's plane.
+* Called every tick.  Returns TRUE when complete
+*/
+bool intro_v3w::introPlay() {
+	if (_vm->getGameStatus().skipIntroFl)
+		return true;
+
+	if (introTicks < _vm->getIntroSize()) {
+		// Scale viewport x_intro,y_intro to screen (offsetting y)
+		_vm->_screen->writeStr(_vm->_introX[introTicks], _vm->_introY[introTicks] - DIBOFF_Y, "x", _TBRIGHTWHITE);
+		_vm->_screen->displayBackground();
+
+		// Text boxes at various times
+		switch (introTicks) {
+		case 4:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro1]);
+			break;
+		case 9:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro2]);
+			break;
+		case 35:
+			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro3]);
+			break;
+		}
+	}
+
+	return (++introTicks >= _vm->getIntroSize());
+}
 } // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v1d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v1d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v1d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,189 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/display.h"
-
-namespace Hugo {
-intro_v1d::intro_v1d(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v1d::~intro_v1d() {
-}
-
-void intro_v1d::preNewGame() {
-}
-
-void intro_v1d::introInit() {
-	introTicks = 0;
-	surf.w = 320;
-	surf.h = 200;
-	surf.pixels = _vm->_screen->getFrontBuffer();
-	surf.pitch = 320;
-	surf.bytesPerPixel = 1;
-}
-
-bool intro_v1d::introPlay() {
-	static int state = 0;
-	byte introSize = _vm->getIntroSize();
-
-	if (_vm->getGameStatus().skipIntroFl)
-		return true;
-
-	if (introTicks < introSize) {
-		switch (state++) {
-		case 0:
-			_vm->_screen->drawRectangle(true, 0, 0, 319, 199, _TMAGENTA);
-			_vm->_screen->drawRectangle(true, 10, 10, 309, 189, _TBLACK);
-			break;
-
-		case 1:
-			_vm->_screen->drawShape(20, 92,_TLIGHTMAGENTA,_TMAGENTA);
-			_vm->_screen->drawShape(250,92,_TLIGHTMAGENTA,_TMAGENTA);
-
-			// TROMAN, size 10-5
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
-
-			char buffer[80];
-			if (_boot.registered)
-				strcpy(buffer, "Registered Version");
-			else
-				strcpy(buffer, "Shareware Version");
-
-			font.drawString(&surf, buffer, 0, 163, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			font.drawString(&surf, COPYRIGHT, 0, 176, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-
-			if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
-				sprintf(buffer, "Distributed by %s.", _boot.distrib);
-				font.drawString(&surf, buffer, 0, 75, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			}
-
-			// SCRIPT, size 24-16
-			strcpy(buffer, "Hugo's");
-
-			if (font.loadFromFON("SCRIPT.FON")) {
-				font.drawString(&surf, buffer, 0, 20, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			} else {
-				// Workaround: SCRIPT.FON doesn't load properly at the moment
-				_vm->_screen->loadFont(2);
-				_vm->_screen->writeStr(CENTER, 20, buffer, _TMAGENTA);
-			}
-
-			// TROMAN, size 30-24
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 24)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 24");
-
-			strcpy(buffer, "House of Horrors !");
-			font.drawString(&surf, buffer, 0, 50, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 2:
-			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
-
-			// TROMAN, size 16-9
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 14)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 14");
-
-			strcpy(buffer, "S t a r r i n g :");
-			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 3:
-			// TROMAN, size 20-9
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 18)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 18");
-
-			strcpy(buffer, "Hugo !");
-			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 4:
-			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
-
-			// TROMAN, size 16-9
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 14)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 14");
-
-			strcpy(buffer, "P r o d u c e d  b y :");
-			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 5:
-			// TROMAN size 16-9
-			strcpy(buffer, "David P Gray !");
-			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 6:
-			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
-
-			// TROMAN, size 16-9
-			strcpy(buffer, "D i r e c t e d   b y :");
-			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 7:
-			// TROMAN, size 16-9
-			strcpy(buffer, "David P Gray !");
-			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 8:
-			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
-
-			// TROMAN, size 16-9
-			strcpy(buffer, "M u s i c   b y :");
-			font.drawString(&surf, buffer, 0, 95, 320, _TMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 9:
-			// TROMAN, size 16-9
-			strcpy(buffer, "David P Gray !");
-			font.drawString(&surf, buffer, 0, 115, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		case 10:
-			_vm->_screen->drawRectangle(true, 82, 92, 237, 138, _TBLACK);
-
-			// TROMAN, size 20-14
-			if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 18)))
-				error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 18");
-
-			strcpy(buffer, "E n j o y !");
-			font.drawString(&surf, buffer, 0, 100, 320, _TLIGHTMAGENTA, Graphics::kTextAlignCenter);
-			break;
-		}
-
-		_vm->_screen->displayBackground();
-		g_system->updateScreen();
-		g_system->delayMillis(1000);
-	}
-
-	return (++introTicks >= introSize);
-}
-
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v1w.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v1w.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v1w.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,62 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/file.h"
-
-
-
-namespace Hugo {
-intro_v1w::intro_v1w(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v1w::~intro_v1w() {
-}
-
-/**
-* Auto-start a new game
-*/
-void intro_v1w::preNewGame() {
-	_vm->getGameStatus().viewState = V_INTROINIT;
-}
-
-void intro_v1w::introInit() {
-}
-
-bool intro_v1w::introPlay() {
-	return true;
-}
-
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v2d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v2d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v2d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,87 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-
-namespace Hugo {
-
-intro_v2d::intro_v2d(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v2d::~intro_v2d() {
-}
-
-void intro_v2d::preNewGame() {
-}
-
-void intro_v2d::introInit() {
-	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
-	surf.w = 320;
-	surf.h = 200;
-	surf.pixels = _vm->_screen->getFrontBuffer();
-	surf.pitch = 320;
-	surf.bytesPerPixel = 1;
-
-	char buffer[128];
-
-	// TROMAN, size 10-5
-	if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
-		error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
-
-	if (_boot.registered)
-		sprintf(buffer, "%s  Registered Version", COPYRIGHT);
-	else
-		sprintf(buffer, "%s  Shareware Version", COPYRIGHT);
-
-	font.drawString(&surf, buffer, 0, 186, 320, _TLIGHTRED, Graphics::kTextAlignCenter);
-
-	if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
-		// TROMAN, size 10-5
-		sprintf(buffer, "Distributed by %s.", _boot.distrib);
-		font.drawString(&surf, buffer, 0, 1, 320, _TLIGHTRED, Graphics::kTextAlignCenter);
-	}
-
-	_vm->_screen->displayBackground();
-	g_system->updateScreen();
-	g_system->delayMillis(5000);
-}
-
-bool intro_v2d::introPlay() {
-	return true;
-}
-
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v2w.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v2w.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v2w.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,63 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/display.h"
-
-
-namespace Hugo {
-
-intro_v2w::intro_v2w(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v2w::~intro_v2w() {
-}
-
-void intro_v2w::preNewGame() {
-}
-
-void intro_v2w::introInit() {
-	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
-
-	_vm->_screen->displayBackground();
-	g_system->updateScreen();
-	g_system->delayMillis(3000);
-}
-
-bool intro_v2w::introPlay() {
-	return true;
-}
-
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v3d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v3d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v3d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,117 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/util.h"
-#include "hugo/sound.h"
-
-
-namespace Hugo {
-intro_v3d::intro_v3d(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v3d::~intro_v3d() {
-}
-
-void intro_v3d::preNewGame() {
-}
-
-void intro_v3d::introInit() {
-	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
-	surf.w = 320;
-	surf.h = 200;
-	surf.pixels = _vm->_screen->getFrontBuffer();
-	surf.pitch = 320;
-	surf.bytesPerPixel = 1;
-
-	char buffer[128];
-	if (_boot.registered)
-		sprintf(buffer, "%s  Registered Version", COPYRIGHT);
-	else
-		sprintf(buffer,"%s  Shareware Version", COPYRIGHT);
-
-	// TROMAN, size 10-5
-	if (!font.loadFromFON("TMSRB.FON", Graphics::WinFontDirEntry("Tms Rmn", 8)))
-		error("Unable to load font TMSRB.FON, face 'Tms Rmn', size 8");
-
-	font.drawString(&surf, buffer, 0, 190, 320, _TBROWN, Graphics::kTextAlignCenter);
-
-	if (scumm_stricmp(_boot.distrib, "David P. Gray")) {
-		sprintf(buffer, "Distributed by %s.", _boot.distrib);
-		font.drawString(&surf, buffer, 0, 0, 320, _TBROWN, Graphics::kTextAlignCenter);
-	}
-
-	_vm->_screen->displayBackground();
-	g_system->updateScreen();
-	g_system->delayMillis(5000);
-
-	_vm->_file->readBackground(22); // display screen MAP_3d
-	_vm->_screen->displayBackground();
-	introTicks = 0;
-	_vm->_sound->DOSSongPtr = _vm->_sound->DOSIntroSong;
-}
-
-/**
-* Hugo 3 - Preamble screen before going into game.  Draws path of Hugo's plane.
-* Called every tick.  Returns TRUE when complete
-*/
-bool intro_v3d::introPlay() {
-	if (_vm->getGameStatus().skipIntroFl)
-		return true;
-
-	if (introTicks < _vm->getIntroSize()) {
-		font.drawString(&surf, ".", _vm->_introX[introTicks], _vm->_introY[introTicks] - DIBOFF_Y, 320, _TBRIGHTWHITE);
-		_vm->_screen->displayBackground();
-
-		// Text boxes at various times
-		switch (introTicks) {
-		case 4:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro1]);
-			break;
-		case 9:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro2]);
-			break;
-		case 35:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro3]);
-			break;
-		}
-	}
-
-	return (++introTicks >= _vm->getIntroSize());
-}
-
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/intro_v3w.cpp
===================================================================
--- scummvm/trunk/engines/hugo/intro_v3w.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/intro_v3w.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,97 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-#include "common/system.h"
-
-#include "hugo/hugo.h"
-#include "hugo/intro.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/util.h"
-
-namespace Hugo {
-
-intro_v3w::intro_v3w(HugoEngine *vm) : IntroHandler(vm) {
-}
-
-intro_v3w::~intro_v3w() {
-}
-
-void intro_v3w::preNewGame() {
-}
-
-/**
-* Hugo 3 - show map and set up for introPlay()
-*/
-void intro_v3w::introInit() {
-
-	_vm->_file->readBackground(_vm->_numScreens - 1); // display splash screen
-
-	_vm->_screen->displayBackground();
-	g_system->updateScreen();
-	g_system->delayMillis(3000);
-	_vm->_file->readBackground(22); // display screen MAP_3w
-	_vm->_screen->displayBackground();
-	introTicks = 0;
-	_vm->_screen->loadFont(0);
-}
-
-/**
-* Hugo 3 - Preamble screen before going into game.  Draws path of Hugo's plane.
-* Called every tick.  Returns TRUE when complete
-*/
-bool intro_v3w::introPlay() {
-	if (_vm->getGameStatus().skipIntroFl)
-		return true;
-
-	if (introTicks < _vm->getIntroSize()) {
-		// Scale viewport x_intro,y_intro to screen (offsetting y)
-		_vm->_screen->writeStr(_vm->_introX[introTicks], _vm->_introY[introTicks] - DIBOFF_Y, "x", _TBRIGHTWHITE);
-		_vm->_screen->displayBackground();
-
-		// Text boxes at various times
-		switch (introTicks) {
-		case 4:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro1]);
-			break;
-		case 9:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro2]);
-			break;
-		case 35:
-			Utils::Box(BOX_OK, "%s", _vm->_textIntro[kIntro3]);
-			break;
-		}
-	}
-
-	return (++introTicks >= _vm->getIntroSize());
-}
-} // End of namespace Hugo

Modified: scummvm/trunk/engines/hugo/module.mk
===================================================================
--- scummvm/trunk/engines/hugo/module.mk	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/module.mk	2011-01-20 22:50:50 UTC (rev 55365)
@@ -4,8 +4,6 @@
 	console.o \
 	detection.o \
 	display.o \
-	display_v1d.o \
-	display_v1w.o \
 	file.o \
 	file_v1d.o \
 	file_v2d.o \
@@ -14,12 +12,6 @@
 	file_v2w.o \
 	hugo.o \
 	intro.o \
-	intro_v1d.o \
-	intro_v2d.o \
-	intro_v3d.o \
-	intro_v1w.o \
-	intro_v2w.o \
-	intro_v3w.o \
 	inventory.o \
 	menu.o \
 	mouse.o \
@@ -35,10 +27,6 @@
 	parser_v3d.o \
 	route.o \
 	schedule.o \
-	schedule_v1d.o \
-	schedule_v1w.o \
-	schedule_v2d.o \
-	schedule_v3d.o \
 	sound.o \
 	util.o
 

Modified: scummvm/trunk/engines/hugo/schedule.cpp
===================================================================
--- scummvm/trunk/engines/hugo/schedule.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/schedule.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1241,4 +1241,239 @@
 		return wrkEvent;                            // Return next event ptr
 	}
 }
+
+Scheduler_v1d::Scheduler_v1d(HugoEngine *vm) : Scheduler(vm) {
+}
+
+Scheduler_v1d::~Scheduler_v1d() {
+}
+
+const char *Scheduler_v1d::getCypher() {
+	return "Copyright (c) 1990, Gray Design Associates";
+}
+
+uint32 Scheduler_v1d::getTicks() {
+	return getDosTicks(false);
+}
+
+/**
+* Delete an event structure (i.e. return it to the free list)
+* Note that event is assumed at head of queue (i.e. earliest).  To delete
+* an event from the middle of the queue, merely overwrite its action type
+* to be ANULL
+*/
+void Scheduler_v1d::delQueue(event_t *curEvent) {
+	debugC(4, kDebugSchedule, "delQueue()");
+
+	if (curEvent == _headEvent)                     // If p was the head ptr
+		_headEvent = curEvent->nextEvent;           // then make new head_p
+
+	if (_headEvent)
+		_headEvent->prevEvent = 0;                  // Mark end of list
+	else
+		_tailEvent = 0;                             // Empty queue
+
+	curEvent->nextEvent = _freeEvent;               // Return p to free list
+	if (_freeEvent)                                 // Special case, if free list was empty
+		_freeEvent->prevEvent = curEvent;
+	_freeEvent = curEvent;
+}
+
+/**
+* This is the scheduler which runs every tick.  It examines the event queue
+* for any events whose time has come.  It dequeues these events and performs
+* the action associated with the event, returning it to the free queue
+*/
+void Scheduler_v1d::runScheduler() {
+	debugC(6, kDebugSchedule, "runScheduler");
+
+	uint32 ticker = getTicks();                     // The time now, in ticks
+	event_t *curEvent = _headEvent;                 // The earliest event
+
+	while (curEvent && (curEvent->time <= ticker))  // While mature events found
+		curEvent = doAction(curEvent);              // Perform the action (returns next_p)
+}
+
+void Scheduler_v1d::delEventType(action_t actTypeDel) {
+	// Note: actions are not deleted here, simply turned into NOPs!
+	event_t *wrkEvent = _headEvent;                 // The earliest event
+	while (wrkEvent) {                              // While events found in list
+		if (wrkEvent->action->a20.actType == actTypeDel)
+			wrkEvent->action->a20.actType = ANULL;
+		wrkEvent = wrkEvent->nextEvent;
+	}
+}
+
+void Scheduler_v1d::promptAction(act *action) {
+	Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
+
+	warning("STUB: doAction(act3)");
+	// TODO: The answer of the player is not handled currently! Once it'll be read in the messageBox, uncomment this block
+#if 0
+	char response[256];
+	// TODO: Put user input in response
+
+	Utils::strlwr(response);
+	if (action->a3.encodedFl) {
+		warning("Encrypted flag set");
+		decodeString(response);
+	}
+
+	if (strstr(response, _vm->_file->fetchString(action->a3.responsePtr[0]))
+		insertActionList(action->a3.actPassIndex);
+	else
+		insertActionList(action->a3.actFailIndex);
+#endif
+
+	// HACK: As the answer is not read, currently it's always considered correct
+	insertActionList(action->a3.actPassIndex);
+}
+
+/**
+* Decode a response to a prompt
+*/
+void Scheduler_v1d::decodeString(char *line) {
+	debugC(1, kDebugSchedule, "decodeString(%s)", line);
+
+	static const char *cypher = getCypher();
+
+	for(uint16 i = 0; i < strlen(line); i++) {
+		line[i] = (line[i] + cypher[i]) % '~';
+		if (line[i] < ' ')
+			line[i] += ' ';
+	}
+}
+
+Scheduler_v2d::Scheduler_v2d(HugoEngine *vm) : Scheduler_v1d(vm) {
+}
+
+Scheduler_v2d::~Scheduler_v2d() {
+}
+
+const char *Scheduler_v2d::getCypher() {
+	return "Copyright 1991, Gray Design Associates";
+}
+
+/**
+* Delete an event structure (i.e. return it to the free list)
+* Historical note:  Originally event p was assumed to be at head of queue
+* (i.e. earliest) since all events were deleted in order when proceeding to
+* a new screen.  To delete an event from the middle of the queue, the action
+* was overwritten to be ANULL.  With the advent of GLOBAL events, delQueue
+* was modified to allow deletes anywhere in the list, and the DEL_EVENT
+* action was modified to perform the actual delete.
+*/
+void Scheduler_v2d::delQueue(event_t *curEvent) {
+	debugC(4, kDebugSchedule, "delQueue()");
+
+	if (curEvent == _headEvent) {                   // If p was the head ptr
+		_headEvent = curEvent->nextEvent;           // then make new head_p
+	} else {                                        // Unlink p
+		curEvent->prevEvent->nextEvent = curEvent->nextEvent;
+		if (curEvent->nextEvent)
+			curEvent->nextEvent->prevEvent = curEvent->prevEvent;
+		else
+			_tailEvent = curEvent->prevEvent;
+	}
+
+	if (_headEvent)
+		_headEvent->prevEvent = 0;                  // Mark end of list
+	else
+		_tailEvent = 0;                             // Empty queue
+
+	curEvent->nextEvent = _freeEvent;               // Return p to free list
+	if (_freeEvent)                                 // Special case, if free list was empty
+		_freeEvent->prevEvent = curEvent;
+	_freeEvent = curEvent;
+}
+
+void Scheduler_v2d::delEventType(action_t actTypeDel) {
+	// Note: actions are not deleted here, simply turned into NOPs!
+	event_t *wrkEvent = _headEvent;                 // The earliest event
+	event_t *saveEvent;
+
+	while (wrkEvent) {                              // While events found in list
+		saveEvent = wrkEvent->nextEvent;
+		if (wrkEvent->action->a20.actType == actTypeDel)
+			delQueue(wrkEvent);
+		wrkEvent = saveEvent;
+	}
+}
+
+void Scheduler_v2d::promptAction(act *action) {
+	Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
+	warning("STUB: doAction(act3), expecting answer %s", _vm->_file->fetchString(action->a3.responsePtr[0]));
+
+	// TODO: The answer of the player is not handled currently! Once it'll be read in the messageBox, uncomment this block
+#if 0
+	char *response = Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
+
+	bool  found = false;
+	char *tmpStr;                                   // General purpose string ptr
+
+	for (dx = 0; !found && (action->a3.responsePtr[dx] != -1); dx++) {
+		tmpStr = _vm->_file->fetchString(action->a3.responsePtr[dx]);
+		if (strstr(Utils::strlwr(response) , tmpStr))
+			found = true;
+	}
+
+	if (found)
+		insertActionList(action->a3.actPassIndex);
+	else
+		insertActionList(action->a3.actFailIndex);
+#endif
+
+	// HACK: As the answer is not read, currently it's always considered correct
+	insertActionList(action->a3.actPassIndex);
+}
+
+/**
+* Decode a string
+*/
+void Scheduler_v2d::decodeString(char *line) {
+	debugC(1, kDebugSchedule, "decodeString(%s)", line);
+
+	static const char *cypher = getCypher();
+
+	for (uint16 i = 0; i < strlen(line); i++)
+		line[i] -= cypher[i % strlen(cypher)];
+	debugC(1, kDebugSchedule, "result : %s", line);
+}
+
+Scheduler_v3d::Scheduler_v3d(HugoEngine *vm) : Scheduler_v2d(vm) {
+}
+
+Scheduler_v3d::~Scheduler_v3d() {
+}
+
+const char *Scheduler_v3d::getCypher() {
+	return "Copyright 1992, Gray Design Associates";
+}
+
+Scheduler_v1w::Scheduler_v1w(HugoEngine *vm) : Scheduler_v3d(vm) {
+}
+
+Scheduler_v1w::~Scheduler_v1w() {
+}
+
+uint32 Scheduler_v1w::getTicks() {
+	return getWinTicks();
+}
+
+/**
+* This is the scheduler which runs every tick.  It examines the event queue
+* for any events whose time has come.  It dequeues these events and performs
+* the action associated with the event, returning it to the free queue
+*/
+void Scheduler_v1w::runScheduler() {
+	debugC(6, kDebugSchedule, "runScheduler");
+
+	uint32 ticker = getTicks();                     // The time now, in ticks
+	event_t *curEvent = _headEvent;                 // The earliest event
+
+	while (curEvent && (curEvent->time <= ticker))  // While mature events found
+		curEvent = doAction(curEvent);              // Perform the action (returns next_p)
+
+	_vm->getGameStatus().tick++;                    // Accessed elsewhere via getTicks()
+}
 } // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/schedule_v1d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/schedule_v1d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/schedule_v1d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,147 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// This module contains all the scheduling and timing stuff
-
-#include "common/system.h"
-
-#include "hugo/game.h"
-#include "hugo/hugo.h"
-#include "hugo/schedule.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/util.h"
-
-namespace Hugo {
-
-Scheduler_v1d::Scheduler_v1d(HugoEngine *vm) : Scheduler(vm) {
-}
-
-Scheduler_v1d::~Scheduler_v1d() {
-}
-
-const char *Scheduler_v1d::getCypher() {
-	return "Copyright (c) 1990, Gray Design Associates";
-}
-
-uint32 Scheduler_v1d::getTicks() {
-	return getDosTicks(false);
-}
-
-/**
-* Delete an event structure (i.e. return it to the free list)
-* Note that event is assumed at head of queue (i.e. earliest).  To delete
-* an event from the middle of the queue, merely overwrite its action type
-* to be ANULL
-*/
-void Scheduler_v1d::delQueue(event_t *curEvent) {
-	debugC(4, kDebugSchedule, "delQueue()");
-
-	if (curEvent == _headEvent)                     // If p was the head ptr
-		_headEvent = curEvent->nextEvent;           // then make new head_p
-
-	if (_headEvent)
-		_headEvent->prevEvent = 0;                  // Mark end of list
-	else
-		_tailEvent = 0;                             // Empty queue
-
-	curEvent->nextEvent = _freeEvent;               // Return p to free list
-	if (_freeEvent)                                 // Special case, if free list was empty
-		_freeEvent->prevEvent = curEvent;
-	_freeEvent = curEvent;
-}
-
-/**
-* This is the scheduler which runs every tick.  It examines the event queue
-* for any events whose time has come.  It dequeues these events and performs
-* the action associated with the event, returning it to the free queue
-*/
-void Scheduler_v1d::runScheduler() {
-	debugC(6, kDebugSchedule, "runScheduler");
-
-	uint32 ticker = getTicks();                     // The time now, in ticks
-	event_t *curEvent = _headEvent;                 // The earliest event
-
-	while (curEvent && (curEvent->time <= ticker))  // While mature events found
-		curEvent = doAction(curEvent);              // Perform the action (returns next_p)
-}
-
-void Scheduler_v1d::delEventType(action_t actTypeDel) {
-	// Note: actions are not deleted here, simply turned into NOPs!
-	event_t *wrkEvent = _headEvent;                 // The earliest event
-	while (wrkEvent) {                              // While events found in list
-		if (wrkEvent->action->a20.actType == actTypeDel)
-			wrkEvent->action->a20.actType = ANULL;
-		wrkEvent = wrkEvent->nextEvent;
-	}
-}
-
-void Scheduler_v1d::promptAction(act *action) {
-	Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
-
-	warning("STUB: doAction(act3)");
-	// TODO: The answer of the player is not handled currently! Once it'll be read in the messageBox, uncomment this block
-#if 0
-	char response[256];
-	// TODO: Put user input in response
-
-	Utils::strlwr(response);
-	if (action->a3.encodedFl) {
-		warning("Encrypted flag set");
-		decodeString(response);
-	}
-
-	if (strstr(response, _vm->_file->fetchString(action->a3.responsePtr[0]))
-		insertActionList(action->a3.actPassIndex);
-	else
-		insertActionList(action->a3.actFailIndex);
-#endif
-
-	// HACK: As the answer is not read, currently it's always considered correct
-	insertActionList(action->a3.actPassIndex);
-}
-
-/**
-* Decode a response to a prompt
-*/
-void Scheduler_v1d::decodeString(char *line) {
-	debugC(1, kDebugSchedule, "decodeString(%s)", line);
-
-	static const char *cypher = getCypher();
-
-	for(uint16 i = 0; i < strlen(line); i++) {
-		line[i] = (line[i] + cypher[i]) % '~';
-		if (line[i] < ' ')
-			line[i] += ' ';
-	}
-}
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/schedule_v1w.cpp
===================================================================
--- scummvm/trunk/engines/hugo/schedule_v1w.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/schedule_v1w.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,76 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// This module contains all the scheduling and timing stuff
-
-#include "common/system.h"
-
-#include "hugo/game.h"
-#include "hugo/hugo.h"
-#include "hugo/schedule.h"
-#include "hugo/global.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/parser.h"
-#include "hugo/util.h"
-#include "hugo/sound.h"
-#include "hugo/object.h"
-
-namespace Hugo {
-
-Scheduler_v1w::Scheduler_v1w(HugoEngine *vm) : Scheduler_v3d(vm) {
-}
-
-Scheduler_v1w::~Scheduler_v1w() {
-}
-
-uint32 Scheduler_v1w::getTicks() {
-	return getWinTicks();
-}
-
-/**
-* This is the scheduler which runs every tick.  It examines the event queue
-* for any events whose time has come.  It dequeues these events and performs
-* the action associated with the event, returning it to the free queue
-*/
-void Scheduler_v1w::runScheduler() {
-	debugC(6, kDebugSchedule, "runScheduler");
-
-	uint32 ticker = getTicks();                     // The time now, in ticks
-	event_t *curEvent = _headEvent;                 // The earliest event
-
-	while (curEvent && (curEvent->time <= ticker))  // While mature events found
-		curEvent = doAction(curEvent);              // Perform the action (returns next_p)
-
-	_vm->getGameStatus().tick++;                    // Accessed elsewhere via getTicks()
-}
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/schedule_v2d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/schedule_v2d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/schedule_v2d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,142 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// This module contains all the scheduling and timing stuff
-
-#include "common/system.h"
-
-#include "hugo/game.h"
-#include "hugo/hugo.h"
-#include "hugo/schedule.h"
-#include "hugo/global.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/util.h"
-
-namespace Hugo {
-
-Scheduler_v2d::Scheduler_v2d(HugoEngine *vm) : Scheduler_v1d(vm) {
-}
-
-Scheduler_v2d::~Scheduler_v2d() {
-}
-
-const char *Scheduler_v2d::getCypher() {
-	return "Copyright 1991, Gray Design Associates";
-}
-
-/**
-* Delete an event structure (i.e. return it to the free list)
-* Historical note:  Originally event p was assumed to be at head of queue
-* (i.e. earliest) since all events were deleted in order when proceeding to
-* a new screen.  To delete an event from the middle of the queue, the action
-* was overwritten to be ANULL.  With the advent of GLOBAL events, delQueue
-* was modified to allow deletes anywhere in the list, and the DEL_EVENT
-* action was modified to perform the actual delete.
-*/
-void Scheduler_v2d::delQueue(event_t *curEvent) {
-	debugC(4, kDebugSchedule, "delQueue()");
-
-	if (curEvent == _headEvent) {                   // If p was the head ptr
-		_headEvent = curEvent->nextEvent;           // then make new head_p
-	} else {                                        // Unlink p
-		curEvent->prevEvent->nextEvent = curEvent->nextEvent;
-		if (curEvent->nextEvent)
-			curEvent->nextEvent->prevEvent = curEvent->prevEvent;
-		else
-			_tailEvent = curEvent->prevEvent;
-	}
-
-	if (_headEvent)
-		_headEvent->prevEvent = 0;                  // Mark end of list
-	else
-		_tailEvent = 0;                             // Empty queue
-
-	curEvent->nextEvent = _freeEvent;               // Return p to free list
-	if (_freeEvent)                                 // Special case, if free list was empty
-		_freeEvent->prevEvent = curEvent;
-	_freeEvent = curEvent;
-}
-
-void Scheduler_v2d::delEventType(action_t actTypeDel) {
-	// Note: actions are not deleted here, simply turned into NOPs!
-	event_t *wrkEvent = _headEvent;                 // The earliest event
-	event_t *saveEvent;
-
-	while (wrkEvent) {                              // While events found in list
-		saveEvent = wrkEvent->nextEvent;
-		if (wrkEvent->action->a20.actType == actTypeDel)
-			delQueue(wrkEvent);
-		wrkEvent = saveEvent;
-	}
-}
-
-void Scheduler_v2d::promptAction(act *action) {
-	Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
-	warning("STUB: doAction(act3), expecting answer %s", _vm->_file->fetchString(action->a3.responsePtr[0]));
-
-	// TODO: The answer of the player is not handled currently! Once it'll be read in the messageBox, uncomment this block
-#if 0
-	char *response = Utils::Box(BOX_PROMPT, "%s", _vm->_file->fetchString(action->a3.promptIndex));
-
-	bool  found = false;
-	char *tmpStr;                                   // General purpose string ptr
-
-	for (dx = 0; !found && (action->a3.responsePtr[dx] != -1); dx++) {
-		tmpStr = _vm->_file->fetchString(action->a3.responsePtr[dx]);
-		if (strstr(Utils::strlwr(response) , tmpStr))
-			found = true;
-	}
-
-	if (found)
-		insertActionList(action->a3.actPassIndex);
-	else
-		insertActionList(action->a3.actFailIndex);
-#endif
-
-	// HACK: As the answer is not read, currently it's always considered correct
-	insertActionList(action->a3.actPassIndex);
-}
-
-/**
-* Decode a string
-*/
-void Scheduler_v2d::decodeString(char *line) {
-	debugC(1, kDebugSchedule, "decodeString(%s)", line);
-
-	static const char *cypher = getCypher();
-
-	for (uint16 i = 0; i < strlen(line); i++)
-		line[i] -= cypher[i % strlen(cypher)];
-	debugC(1, kDebugSchedule, "result : %s", line);
-}
-} // End of namespace Hugo

Deleted: scummvm/trunk/engines/hugo/schedule_v3d.cpp
===================================================================
--- scummvm/trunk/engines/hugo/schedule_v3d.cpp	2011-01-20 22:32:30 UTC (rev 55364)
+++ scummvm/trunk/engines/hugo/schedule_v3d.cpp	2011-01-20 22:50:50 UTC (rev 55365)
@@ -1,60 +0,0 @@
-/* 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.
- *
- * $URL$
- * $Id$
- *
- */
-
-/*
- * This code is based on original Hugo Trilogy source code
- *
- * Copyright (c) 1989-1995 David P. Gray
- *
- */
-
-// This module contains all the scheduling and timing stuff
-
-#include "common/system.h"
-
-#include "hugo/game.h"
-#include "hugo/hugo.h"
-#include "hugo/schedule.h"
-#include "hugo/global.h"
-#include "hugo/file.h"
-#include "hugo/display.h"
-#include "hugo/parser.h"
-#include "hugo/util.h"
-#include "hugo/sound.h"
-#include "hugo/object.h"
-
-namespace Hugo {
-
-Scheduler_v3d::Scheduler_v3d(HugoEngine *vm) : Scheduler_v2d(vm) {
-}
-
-Scheduler_v3d::~Scheduler_v3d() {
-}
-
-const char *Scheduler_v3d::getCypher() {
-	return "Copyright 1992, Gray Design Associates";
-}
-
-} // End of namespace Hugo


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list