Merge remote branch 'upstream/master' into pegasus

Conflicts:
	video/qt_decoder.cpp
This commit is contained in:
Matthew Hoops 2011-10-07 14:34:22 -04:00
commit e1dc4db7aa
481 changed files with 81715 additions and 47932 deletions

View File

@ -60,6 +60,10 @@ ScummVM Team
Oliver Kiehl - (retired)
Ludvig Strigeus - (retired)
CGE:
Arnaud Boutonne
Paul Gilbert
Cine:
Vincent Hamm - (retired)
Pawel Kolodziejski
@ -228,7 +232,8 @@ ScummVM Team
Lubomyr Lisen
Maemo:
Frantisek Dufka
Frantisek Dufka - (retired)
Tarek Soliman
Nintendo 64:
Fabio Battaglia

33
NEWS
View File

@ -4,11 +4,34 @@ For a more comprehensive changelog of the latest experimental code, see:
1.4.0 (????-??-??)
New Games:
- Added support for Lands of Lore: The Throne of Chaos.
- Added support for Blue's Birthday Adventure
- Added support for Ringworld: Revenge Of The Patriarch
- Added support for Blue's Birthday Adventure.
- Added support for Ringworld: Revenge Of The Patriarch.
- Added support for the Amiga version of Conquests of the Longbow.
New Ports:
- Added PlayStation 3 port.
AGI:
- Implemented sound support for the DOS version of Winnie the Pooh in the Hundred Acre Wood.
- Implemented sound support for the DOS version of Winnie the Pooh in the
Hundred Acre Wood.
AGOS:
- Implemented support for loading data directly from InstallShield
cabinets in The Feeble Files and Simon the Sorcerer's Puzzle Pack.
- Fixed loading and saving in the PC version of Waxworks.
- Fixed music in the PC versions of Elvira 1/2 and Waxworks.
Groovie:
- Added support for the iOS version of The 7th Guest.
Lure:
- Fixed crash when trying to talk and ask something at the same time.
SCI:
- Added better handling of digital vs. synthesized sound effects. If the
"Mixed Adlib / MIDI mode" checkbox is checked, the engine will prefer
digital sound effects, otherwise their synthesized counterparts will be
preferred instead, if both versions of the same effect exist.
SCUMM:
- Implemented PC Speaker support for SCUMM v5 games.
@ -16,13 +39,15 @@ For a more comprehensive changelog of the latest experimental code, see:
better, since important notes are not interrupted anymore.
- Implemented CMS support for Loom, The Secret of Monkey Island and
Indiana Jones and the Last Crusade.
- Improved palette handling for the Amiga version of Indiana Jones and the
Fate of Atlantis.
SDL ports:
- Added support for OpenGL (GSoC Task).
TINSEL:
- Fixed deleting saved games from the list of saved games (from the launcher
and the in-game ScummVM menu)
and the in-game ScummVM menu).
1.3.1 (2011-07-12)
General:

9
README
View File

@ -884,7 +884,7 @@ Supported platforms include (but are not limited to):
Dreamcast
GP2x
iPhone (also includes iPod Touch and iPad)
Maemo (Nokia Internet tablets 770, N800, N810, N900)
Maemo (Nokia Internet tablet N810)
Nintendo 64
Nintendo DS
Nintendo GameCube
@ -2127,12 +2127,11 @@ debug messages (see http://www.sysinternals.com/ntw2k/freeware/debugview.shtml).
http://wiki.scummvm.org/index.php/Compiling_ScummVM/iPhone
Maemo:
* Get Scratchbox environment with Maemo 2.2 rootstrap (2.2 is for 770 and up)
* Install Maemo SDK with 4.1.2 rootstrap
* Install libmad, Tremor, FLAC from source
* patch scummvm source (some stuff is currently too dirty to be in git directly):
patch -p1 < backends/platform/maemo/scummvm-[currentversion]-maemo.patch
* run 'ln -s backends/platform/maemo/debian'
* update debian/changelog
* run 'fakeroot dpkg-buildpackage -b -d'
* run 'sb2 dpkg-buildpackage -b'
------------------------------------------------------------------------
Good Luck and Happy Adventuring!

View File

@ -563,7 +563,7 @@ int TownsMidiOutputChannel::getEffectModLevel(int lvl, int mod) {
if (lvl < 0)
return -_driver->_operatorLevelTable[((-lvl) << 5) + mod];
else
return _driver->_operatorLevelTable[((-lvl) << 5) + mod];
return _driver->_operatorLevelTable[(lvl << 5) + mod];
}
return 0;

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2002-2010 The DOSBox Team
* Copyright (C) 2002-2011 The DOSBox Team
*
* 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
@ -32,7 +32,7 @@
//DUNNO Keyon in 4op, switch to 2op without keyoff.
*/
// Last synch with DOSBox SVN trunk r3556
// Last synch with DOSBox SVN trunk r3752
#include "dbopl.h"
@ -572,7 +572,7 @@ INLINE Bits Operator::GetWave( Bitu index, Bitu vol ) {
return (waveBase[ index & waveMask ] * MulTable[ vol >> ENV_EXTRA ]) >> MUL_SH;
#elif ( DBOPL_WAVE == WAVE_TABLELOG )
Bit32s wave = waveBase[ index & waveMask ];
Bit32u total = ( wave & 0x7fff ) + ( vol << ( 3 - ENV_EXTRA ) );
Bit32u total = ( wave & 0x7fff ) + vol << ( 3 - ENV_EXTRA );
Bit32s sig = ExpTable[ total & 0xff ];
Bit32u exp = total >> 8;
Bit32s neg = wave >> 16;
@ -1236,7 +1236,7 @@ void Chip::GenerateBlock2( Bitu total, Bit32s* output ) {
void Chip::GenerateBlock3( Bitu total, Bit32s* output ) {
while ( total > 0 ) {
Bit32u samples = ForwardLFO( total );
memset(output, 0, sizeof(Bit32s) * 2 * samples);
memset(output, 0, sizeof(Bit32s) * samples * 2);
int count = 0;
for( Channel* ch = chan; ch < chan + 18; ) {
count++;

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2002-2010 The DOSBox Team
* Copyright (C) 2002-2011 The DOSBox Team
*
* 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
@ -16,7 +16,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// Last synch with DOSBox SVN trunk r3556
// Last synch with DOSBox SVN trunk r3752
#ifndef SOUND_SOFTSYNTH_OPL_DBOPL_H
#define SOUND_SOFTSYNTH_OPL_DBOPL_H

View File

@ -42,167 +42,141 @@
#define JOY_YAXIS 1
/* Quick default button states for modifiers. */
int BUTTON_STATE_L = false;
int BUTTON_STATE_L = false;
#if defined(CAANOO)
/* Caanoo: Main Joystick Button Mappings */
/* The Caanoo has an analogue stick so no digital DPAD */
enum {
/* Joystick Buttons */
BUTTON_A = 0,
BUTTON_X = 1,
BUTTON_B = 2,
BUTTON_Y = 3,
BUTTON_L = 4,
BUTTON_R = 5,
BUTTON_HOME = 6, // Home
BUTTON_HOLD = 7, // Hold (on Power)
BUTTON_HELP = 8, // Help I
BUTTON_HELP2 = 9, // Help II
BUTTON_CLICK = 10 // Stick Click
};
/* Caanoo: Main Joystick Button Mappings */
/* The Caanoo has an analogue stick so no digital DPAD */
enum {
/* Joystick Buttons */
BUTTON_A = 0,
BUTTON_X = 1,
BUTTON_B = 2,
BUTTON_Y = 3,
BUTTON_L = 4,
BUTTON_R = 5,
BUTTON_HOME = 6, // Home
BUTTON_HOLD = 7, // Hold (on Power)
BUTTON_HELP = 8, // Help I
BUTTON_HELP2 = 9, // Help II
BUTTON_CLICK = 10 // Stick Click
};
enum {
/* Unused Joystick Buttons on the Caanoo */
BUTTON_VOLUP = 51,
BUTTON_VOLDOWN = 52,
BUTTON_UP = 53,
BUTTON_UPLEFT = 54,
BUTTON_LEFT = 55,
BUTTON_DOWNLEFT = 56,
BUTTON_DOWN = 57,
BUTTON_DOWNRIGHT = 58,
BUTTON_RIGHT = 59,
BUTTON_UPRIGHT = 60,
BUTTON_MENU = 61,
BUTTON_SELECT = 62
};
enum {
/* Unused Joystick Buttons on the Caanoo */
BUTTON_VOLUP = 51,
BUTTON_VOLDOWN = 52,
BUTTON_UP = 53,
BUTTON_UPLEFT = 54,
BUTTON_LEFT = 55,
BUTTON_DOWNLEFT = 56,
BUTTON_DOWN = 57,
BUTTON_DOWNRIGHT = 58,
BUTTON_RIGHT = 59,
BUTTON_UPRIGHT = 60,
BUTTON_MENU = 61,
BUTTON_SELECT = 62
};
#endif
#elif defined(GP2XWIZ)
#if defined(GP2XWIZ)
/* Wiz: Main Joystick Mappings */
enum {
/* DPAD */
BUTTON_UP = 0,
BUTTON_UPLEFT = 1,
BUTTON_LEFT = 2,
BUTTON_DOWNLEFT = 3,
BUTTON_DOWN = 4,
BUTTON_DOWNRIGHT = 5,
BUTTON_RIGHT = 6,
BUTTON_UPRIGHT = 7,
/* Joystick Buttons */
BUTTON_MENU = 8,
BUTTON_SELECT = 9,
BUTTON_L = 10,
BUTTON_R = 11,
BUTTON_A = 12,
BUTTON_B = 13,
BUTTON_X = 14,
BUTTON_Y = 15,
BUTTON_VOLUP = 16,
BUTTON_VOLDOWN = 17
};
/* Wiz: Main Joystick Mappings */
enum {
/* DPAD */
BUTTON_UP = 0,
BUTTON_UPLEFT = 1,
BUTTON_LEFT = 2,
BUTTON_DOWNLEFT = 3,
BUTTON_DOWN = 4,
BUTTON_DOWNRIGHT = 5,
BUTTON_RIGHT = 6,
BUTTON_UPRIGHT = 7,
/* Joystick Buttons */
BUTTON_MENU = 8,
BUTTON_SELECT = 9,
BUTTON_L = 10,
BUTTON_R = 11,
BUTTON_A = 12,
BUTTON_B = 13,
BUTTON_X = 14,
BUTTON_Y = 15,
BUTTON_VOLUP = 16,
BUTTON_VOLDOWN = 17
};
enum {
/* Unused Joystick Buttons on the Wiz */
BUTTON_HOME = 51,
BUTTON_HOLD = 52,
BUTTON_CLICK = 53,
BUTTON_HELP = 54,
BUTTON_HELP2 = 55
};
enum {
/* Unused Joystick Buttons on the Wiz */
BUTTON_HOME = 51,
BUTTON_HOLD = 52,
BUTTON_CLICK = 53,
BUTTON_HELP = 54,
BUTTON_HELP2 = 55
};
#endif
#if defined(GP2X)
#elif defined(GP2X)
enum {
/* DPAD/Stick */
BUTTON_UP = 0,
BUTTON_UPLEFT = 1,
BUTTON_LEFT = 2,
BUTTON_DOWNLEFT = 3,
BUTTON_DOWN = 4,
BUTTON_DOWNRIGHT = 5,
BUTTON_RIGHT = 6,
BUTTON_UPRIGHT = 7,
BUTTON_UP = 0,
BUTTON_UPLEFT = 1,
BUTTON_LEFT = 2,
BUTTON_DOWNLEFT = 3,
BUTTON_DOWN = 4,
BUTTON_DOWNRIGHT = 5,
BUTTON_RIGHT = 6,
BUTTON_UPRIGHT = 7,
/* Joystick Buttons */
BUTTON_MENU = 8, // Start on F100 GP2X
BUTTON_SELECT = 9,
BUTTON_L = 10,
BUTTON_R = 11,
BUTTON_A = 12,
BUTTON_B = 13,
BUTTON_X = 14,
BUTTON_Y = 15,
BUTTON_VOLUP = 16,
BUTTON_VOLDOWN = 17,
BUTTON_CLICK = 18
BUTTON_MENU = 8, // Start on F100 GP2X
BUTTON_SELECT = 9,
BUTTON_L = 10,
BUTTON_R = 11,
BUTTON_A = 12,
BUTTON_B = 13,
BUTTON_X = 14,
BUTTON_Y = 15,
BUTTON_VOLUP = 16,
BUTTON_VOLDOWN = 17,
BUTTON_CLICK = 18
};
enum {
/* Unused Joystick Buttons on the GP2X */
BUTTON_HOME = 51,
BUTTON_HOLD = 52,
BUTTON_HELP = 53,
BUTTON_HELP2 = 54
BUTTON_HOME = 51,
BUTTON_HOLD = 52,
BUTTON_HELP = 53,
BUTTON_HELP2 = 54
};
#endif
enum {
/* Touchscreen TapMode */
TAPMODE_LEFT = 0,
TAPMODE_RIGHT = 1,
TAPMODE_HOVER = 2
TAPMODE_LEFT = 0,
TAPMODE_RIGHT = 1,
TAPMODE_HOVER = 2
};
GPHEventSource::GPHEventSource()
: _buttonStateL(false){
: _buttonStateL(false) {
}
//void GPHEventSource::processMouseEvent(Common::Event &event, int x, int y) {
// if (GPHGraphicsManager::_videoMode.mode == GFX_HALF && !GPHGraphicsManager::_overlayVisible){
// event.mouse.x = x*2;
// event.mouse.y = y*2;
// } else {
// event.mouse.x = x;
// event.mouse.y = y;
// }
//
// // Update the "keyboard mouse" coords
// _km.x = x;
// _km.y = y;
//
// // Adjust for the screen scaling
// if (!_overlayVisible) {
// event.mouse.x /= _videoMode.scaleFactor;
// event.mouse.y /= _videoMode.scaleFactor;
// if (_videoMode.aspectRatioCorrection)
// event.mouse.y = aspect2Real(event.mouse.y);
// }
//}
void GPHEventSource::moveStick() {
bool stickBtn[32];
memcpy(stickBtn, _stickBtn, sizeof(stickBtn));
if ((stickBtn[0])||(stickBtn[2])||(stickBtn[4])||(stickBtn[6]))
if ((stickBtn[0]) || (stickBtn[2]) || (stickBtn[4]) || (stickBtn[6]))
stickBtn[1] = stickBtn[3] = stickBtn[5] = stickBtn[7] = 0;
if ((stickBtn[1])||(stickBtn[2])||(stickBtn[3])) {
if (_km.x_down_count!=2) {
if ((stickBtn[1]) || (stickBtn[2]) || (stickBtn[3])) {
if (_km.x_down_count != 2) {
_km.x_vel = -1;
_km.x_down_count = 1;
} else
_km.x_vel = -4;
} else if ((stickBtn[5])||(stickBtn[6])||(stickBtn[7])) {
if (_km.x_down_count!=2) {
} else if ((stickBtn[5]) || (stickBtn[6]) || (stickBtn[7])) {
if (_km.x_down_count != 2) {
_km.x_vel = 1;
_km.x_down_count = 1;
} else
@ -212,14 +186,14 @@ void GPHEventSource::moveStick() {
_km.x_down_count = 0;
}
if ((stickBtn[0])||(stickBtn[1])||(stickBtn[7])) {
if (_km.y_down_count!=2) {
if ((stickBtn[0]) || (stickBtn[1]) || (stickBtn[7])) {
if (_km.y_down_count != 2) {
_km.y_vel = -1;
_km.y_down_count = 1;
} else
_km.y_vel = -4;
} else if ((stickBtn[3])||(stickBtn[4])||(stickBtn[5])) {
if (_km.y_down_count!=2) {
} else if ((stickBtn[3]) || (stickBtn[4]) || (stickBtn[5])) {
if (_km.y_down_count != 2) {
_km.y_vel = 1;
_km.y_down_count = 1;
} else
@ -233,7 +207,7 @@ void GPHEventSource::moveStick() {
/* Custom handleMouseButtonDown/handleMouseButtonUp to deal with 'Tap Mode' for the touchscreen */
bool GPHEventSource::handleMouseButtonDown(SDL_Event &ev, Common::Event &event) {
if (ev.button.button == SDL_BUTTON_LEFT){
if (ev.button.button == SDL_BUTTON_LEFT) {
if (BUTTON_STATE_L == true) /* BUTTON_STATE_L = Left Trigger Held, force Right Click */
event.type = Common::EVENT_RBUTTONDOWN;
else if (GPH::tapmodeLevel == TAPMODE_LEFT) /* TAPMODE_LEFT = Left Click Tap Mode */
@ -244,8 +218,7 @@ bool GPHEventSource::handleMouseButtonDown(SDL_Event &ev, Common::Event &event)
event.type = Common::EVENT_MOUSEMOVE;
else
event.type = Common::EVENT_LBUTTONDOWN; /* For normal mice etc. */
}
else if (ev.button.button == SDL_BUTTON_RIGHT)
} else if (ev.button.button == SDL_BUTTON_RIGHT)
event.type = Common::EVENT_RBUTTONDOWN;
#if defined(SDL_BUTTON_WHEELUP) && defined(SDL_BUTTON_WHEELDOWN)
else if (ev.button.button == SDL_BUTTON_WHEELUP)
@ -266,7 +239,7 @@ bool GPHEventSource::handleMouseButtonDown(SDL_Event &ev, Common::Event &event)
}
bool GPHEventSource::handleMouseButtonUp(SDL_Event &ev, Common::Event &event) {
if (ev.button.button == SDL_BUTTON_LEFT){
if (ev.button.button == SDL_BUTTON_LEFT) {
if (BUTTON_STATE_L == true) /* BUTTON_STATE_L = Left Trigger Held, force Right Click */
event.type = Common::EVENT_RBUTTONUP;
else if (GPH::tapmodeLevel == TAPMODE_LEFT) /* TAPMODE_LEFT = Left Click Tap Mode */
@ -277,8 +250,7 @@ bool GPHEventSource::handleMouseButtonUp(SDL_Event &ev, Common::Event &event) {
event.type = Common::EVENT_MOUSEMOVE;
else
event.type = Common::EVENT_LBUTTONUP; /* For normal mice etc. */
}
else if (ev.button.button == SDL_BUTTON_RIGHT)
} else if (ev.button.button == SDL_BUTTON_RIGHT)
event.type = Common::EVENT_RBUTTONUP;
#if defined(SDL_BUTTON_MIDDLE)
else if (ev.button.button == SDL_BUTTON_MIDDLE)
@ -354,8 +326,8 @@ bool GPHEventSource::handleJoyButtonDown(SDL_Event &ev, Common::Event &event) {
if (BUTTON_STATE_L == true) {
event.type = Common::EVENT_PREDICTIVE_DIALOG;
} else {
event.kbd.keycode = Common::KEYCODE_PERIOD;
event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
event.kbd.keycode = Common::KEYCODE_PERIOD;
event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
}
break;
case BUTTON_Y:
@ -500,7 +472,7 @@ bool GPHEventSource::handleJoyButtonUp(SDL_Event &ev, Common::Event &event) {
return true;
}
bool GPHEventSource::remapKey(SDL_Event &ev,Common::Event &event) {
bool GPHEventSource::remapKey(SDL_Event &ev, Common::Event &event) {
return false;
}

View File

@ -0,0 +1,123 @@
/* 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.
*
*/
#if defined(MAEMO)
#include "common/scummsys.h"
#include "backends/events/maemosdl/maemosdl-events.h"
#include "common/translation.h"
MaemoSdlEventSource::MaemoSdlEventSource() : SdlEventSource(), _clickEnabled(true) {
}
bool MaemoSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) {
// List of special N810 keys:
// SDLK_F4 -> menu
// SDLK_F5 -> home
// SDLK_F6 -> fullscreen
// SDLK_F7 -> zoom +
// SDLK_F8 -> zoom -
switch (ev.type) {
case SDL_KEYDOWN:{
if (ev.key.keysym.sym == SDLK_F4) {
event.type = Common::EVENT_MAINMENU;
return true;
} else if (ev.key.keysym.sym == SDLK_F6) {
// handled in keyup
} else if (ev.key.keysym.sym == SDLK_F7) {
event.type = Common::EVENT_RBUTTONDOWN;
processMouseEvent(event, _km.x, _km.y);
return true;
} else if (ev.key.keysym.sym == SDLK_F8) {
if (ev.key.keysym.mod & KMOD_CTRL) {
event.type = Common::EVENT_KEYDOWN;
event.kbd.keycode = Common::KEYCODE_F7;
event.kbd.ascii = Common::ASCII_F7;
event.kbd.flags = 0;
return true;
} else {
// handled in keyup
return true;
}
}
break;
}
case SDL_KEYUP: {
if (ev.key.keysym.sym == SDLK_F4) {
event.type = Common::EVENT_MAINMENU;
return true;
} else if (ev.key.keysym.sym == SDLK_F6) {
bool currentState = ((OSystem_SDL *)g_system)->getGraphicsManager()->getFeatureState(OSystem::kFeatureFullscreenMode);
g_system->beginGFXTransaction();
((OSystem_SDL *)g_system)->getGraphicsManager()->setFeatureState(OSystem::kFeatureFullscreenMode, !currentState);
g_system->endGFXTransaction();
return true;
} else if (ev.key.keysym.sym == SDLK_F7) {
event.type = Common::EVENT_RBUTTONUP;
processMouseEvent(event, _km.x, _km.y);
return true;
} else if (ev.key.keysym.sym == SDLK_F8) {
if (ev.key.keysym.mod & KMOD_CTRL) {
event.type = Common::EVENT_KEYUP;
event.kbd.keycode = Common::KEYCODE_F7;
event.kbd.ascii = Common::ASCII_F7;
event.kbd.flags = 0;
return true;
} else {
_clickEnabled = !_clickEnabled;
((SurfaceSdlGraphicsManager*) _graphicsManager)->displayMessageOnOSD(
_clickEnabled ? _("Clicking Enabled") : _("Clicking Disabled"));
return true;
}
}
break;
}
}
// Invoke parent implementation of this method
return SdlEventSource::remapKey(ev, event);
}
bool MaemoSdlEventSource::handleMouseButtonDown(SDL_Event &ev, Common::Event &event) {
if (ev.button.button == SDL_BUTTON_LEFT && !_clickEnabled) {
return false;
}
// Invoke parent implementation of this method
return SdlEventSource::handleMouseButtonDown(ev, event);
}
bool MaemoSdlEventSource::handleMouseButtonUp(SDL_Event &ev, Common::Event &event) {
if (ev.button.button == SDL_BUTTON_LEFT && !_clickEnabled) {
return false;
}
// Invoke parent implementation of this method
return SdlEventSource::handleMouseButtonUp(ev, event);
}
#endif

View File

@ -0,0 +1,48 @@
/* 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.
*
*/
#if defined(MAEMO)
#if !defined(BACKEND_EVENTS_SDL_MAEMO_H) && !defined(DISABLE_DEFAULT_EVENTMANAGER)
#define BACKEND_EVENTS_SDL_MAEMO_H
#include "backends/events/sdl/sdl-events.h"
#include "backends/platform/sdl/sdl.h"
#include "backends/graphics/surfacesdl/surfacesdl-graphics.h"
/**
* SDL events manager for Maemo
*/
class MaemoSdlEventSource : public SdlEventSource {
public:
MaemoSdlEventSource();
protected:
virtual bool remapKey(SDL_Event &ev, Common::Event &event);
virtual bool handleMouseButtonDown(SDL_Event &ev, Common::Event &event);
virtual bool handleMouseButtonUp(SDL_Event &ev, Common::Event &event);
bool _clickEnabled;
};
#endif
#endif

View File

@ -436,6 +436,14 @@ bool SdlEventSource::handleKeyDown(SDL_Event &ev, Common::Event &event) {
event.type = Common::EVENT_QUIT;
return true;
}
#ifdef WIN32
// On Windows, also use the default Alt-F4 quit combination
if ((ev.key.keysym.mod & KMOD_ALT) && ev.key.keysym.sym == SDLK_F4) {
event.type = Common::EVENT_QUIT;
return true;
}
#endif
#endif
// Ctrl-u toggles mute

View File

@ -36,7 +36,7 @@ static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
};
GPHGraphicsManager::GPHGraphicsManager(SdlEventSource *sdlEventSource)
: SurfaceSdlGraphicsManager(sdlEventSource) {
: SurfaceSdlGraphicsManager(sdlEventSource) {
}
const OSystem::GraphicsMode *GPHGraphicsManager::getSupportedGraphicsModes() const {
@ -138,7 +138,7 @@ void GPHGraphicsManager::initSize(uint w, uint h, const Graphics::PixelFormat *f
_videoMode.screenWidth = w;
_videoMode.screenHeight = h;
if (w > 320 || h > 240){
if (w > 320 || h > 240) {
setGraphicsMode(GFX_HALF);
setGraphicsModeIntern();
_eventSource->toggleMouseGrab();
@ -161,9 +161,9 @@ void GPHGraphicsManager::drawMouse() {
int width, height;
int hotX, hotY;
if (_videoMode.mode == GFX_HALF && !_overlayVisible){
dst.x = _mouseCurState.x/2;
dst.y = _mouseCurState.y/2;
if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
dst.x = _mouseCurState.x / 2;
dst.y = _mouseCurState.y / 2;
} else {
dst.x = _mouseCurState.x;
dst.y = _mouseCurState.y;
@ -230,9 +230,9 @@ void GPHGraphicsManager::undrawMouse() {
if (!_overlayVisible && (x >= _videoMode.screenWidth || y >= _videoMode.screenHeight))
return;
if (_mouseBackup.w != 0 && _mouseBackup.h != 0){
if (_videoMode.mode == GFX_HALF && !_overlayVisible){
addDirtyRect(x*2, y*2, _mouseBackup.w*2, _mouseBackup.h*2);
if (_mouseBackup.w != 0 && _mouseBackup.h != 0) {
if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
addDirtyRect(x * 2, y * 2, _mouseBackup.w * 2, _mouseBackup.h * 2);
} else {
addDirtyRect(x, y, _mouseBackup.w, _mouseBackup.h);
}
@ -252,8 +252,8 @@ void GPHGraphicsManager::internUpdateScreen() {
// If the shake position changed, fill the dirty area with blackness
if (_currentShakePos != _newShakePos ||
(_mouseNeedsRedraw && _mouseBackup.y <= _currentShakePos)) {
SDL_Rect blackrect = {0, 0, _videoMode.screenWidth * _videoMode.scaleFactor, _newShakePos * _videoMode.scaleFactor};
(_mouseNeedsRedraw && _mouseBackup.y <= _currentShakePos)) {
SDL_Rect blackrect = {0, 0, _videoMode.screenWidth *_videoMode.scaleFactor, _newShakePos *_videoMode.scaleFactor};
if (_videoMode.aspectRatioCorrection && !_overlayVisible)
blackrect.h = real2Aspect(blackrect.h - 1) + 1;
@ -269,8 +269,8 @@ void GPHGraphicsManager::internUpdateScreen() {
// screen surface accordingly.
if (_screen && _paletteDirtyEnd != 0) {
SDL_SetColors(_screen, _currentPalette + _paletteDirtyStart,
_paletteDirtyStart,
_paletteDirtyEnd - _paletteDirtyStart);
_paletteDirtyStart,
_paletteDirtyEnd - _paletteDirtyStart);
_paletteDirtyEnd = 0;
@ -326,6 +326,9 @@ void GPHGraphicsManager::internUpdateScreen() {
_dirtyRectList[0].y = 0;
_dirtyRectList[0].w = width;
_dirtyRectList[0].h = height;
// HACK: Make sure the full hardware screen is wiped clean.
SDL_FillRect(_hwscreen, NULL, 0);
}
// Only draw anything if necessary
@ -337,8 +340,8 @@ void GPHGraphicsManager::internUpdateScreen() {
for (r = _dirtyRectList; r != lastRect; ++r) {
dst = *r;
dst.x++; // Shift rect by one since 2xSai needs to access the data around
dst.y++; // any pixel to scale it, and we want to avoid mem access crashes.
dst.x++; // Shift rect by one since 2xSai needs to access the data around
dst.y++; // any pixel to scale it, and we want to avoid mem access crashes.
if (SDL_BlitSurface(origSurf, r, srcSurf, &dst) != 0)
error("SDL_BlitSurface failed: %s", SDL_GetError());
@ -374,11 +377,11 @@ void GPHGraphicsManager::internUpdateScreen() {
assert(scalerProc != NULL);
if ((_videoMode.mode == GFX_HALF) && (scalerProc == DownscaleAllByHalf)) {
if (dst_x%2==1){
if (dst_x % 2 == 1) {
dst_x--;
dst_w++;
}
if (dst_y%2==1){
if (dst_y % 2 == 1) {
dst_y--;
dst_h++;
}
@ -388,14 +391,14 @@ void GPHGraphicsManager::internUpdateScreen() {
dst_y = dst_y / 2;
scalerProc((byte *)srcSurf->pixels + (src_x * 2 + 2) + (src_y + 1) * srcPitch, srcPitch,
(byte *)_hwscreen->pixels + dst_x * 2 + dst_y * dstPitch, dstPitch, dst_w, dst_h);
(byte *)_hwscreen->pixels + dst_x * 2 + dst_y * dstPitch, dstPitch, dst_w, dst_h);
} else {
scalerProc((byte *)srcSurf->pixels + (r->x * 2 + 2) + (r->y + 1) * srcPitch, srcPitch,
(byte *)_hwscreen->pixels + r->x * 2 + dst_y * dstPitch, dstPitch, r->w, dst_h);
}
}
if (_videoMode.mode == GFX_HALF && scalerProc == DownscaleAllByHalf){
if (_videoMode.mode == GFX_HALF && scalerProc == DownscaleAllByHalf) {
r->w = r->w / 2;
r->h = dst_h / 2;
} else {
@ -419,7 +422,7 @@ void GPHGraphicsManager::internUpdateScreen() {
// This is necessary if shaking is active.
if (_forceFull) {
_dirtyRectList[0].y = 0;
_dirtyRectList[0].h = (_videoMode.mode == GFX_HALF) ? effectiveScreenHeight()/2 : effectiveScreenHeight();
_dirtyRectList[0].h = (_videoMode.mode == GFX_HALF) ? effectiveScreenHeight() / 2 : effectiveScreenHeight();
}
drawMouse();
@ -439,7 +442,7 @@ void GPHGraphicsManager::internUpdateScreen() {
}
void GPHGraphicsManager::showOverlay() {
if (_videoMode.mode == GFX_HALF){
if (_videoMode.mode == GFX_HALF) {
_mouseCurState.x = _mouseCurState.x / 2;
_mouseCurState.y = _mouseCurState.y / 2;
}
@ -447,89 +450,41 @@ void GPHGraphicsManager::showOverlay() {
}
void GPHGraphicsManager::hideOverlay() {
if (_videoMode.mode == GFX_HALF){
if (_videoMode.mode == GFX_HALF) {
_mouseCurState.x = _mouseCurState.x * 2;
_mouseCurState.y = _mouseCurState.y * 2;
}
SurfaceSdlGraphicsManager::hideOverlay();
}
//bool GPHGraphicsManager::loadGFXMode() {
// _videoMode.overlayWidth = 320;
// _videoMode.overlayHeight = 240;
// _videoMode.fullscreen = true;
//
// /* Forcefully disable aspect ratio correction for games
// that start with a native 240px height resolution
// This corrects games with non-standard resolutions
// such as MM Nes (256x240).
// */
// if(_videoMode.screenHeight == 240) {
// _videoMode.aspectRatioCorrection = false;
// }
// debug("Game ScreenMode = %d*%d", _videoMode.screenWidth, _videoMode.screenHeight);
// if (_videoMode.screenWidth > 320 || _videoMode.screenHeight > 240) {
// _videoMode.aspectRatioCorrection = false;
// setGraphicsMode(GFX_HALF);
// debug("GraphicsMode set to HALF");
// } else {
// setGraphicsMode(GFX_NORMAL);
// debug("GraphicsMode set to NORMAL");
// }
// if ((_videoMode.mode == GFX_HALF) && !_overlayVisible) {
// //_videoMode.overlayWidth = _videoMode.screenWidth / 2;
// //_videoMode.overlayHeight = _videoMode.screenHeight / 2;
// _videoMode.overlayWidth = 320;
// _videoMode.overlayHeight = 240;
// _videoMode.fullscreen = true;
// } else {
//
// _videoMode.overlayWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
// _videoMode.overlayHeight = _videoMode.screenHeight * _videoMode.scaleFactor;
//
// if (_videoMode.aspectRatioCorrection)
// _videoMode.overlayHeight = real2Aspect(_videoMode.overlayHeight);
//
// //_videoMode.hardwareWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
// //_videoMode.hardwareHeight = effectiveScreenHeight();
// _videoMode.hardwareWidth = 320;
// _videoMode.hardwareHeight = 240;
//
// }
// return SurfaceSdlGraphicsManager::loadGFXMode();
//}
bool GPHGraphicsManager::loadGFXMode() {
// We don't offer anything other than fullscreen on GPH devices so lets not even pretend.
_videoMode.fullscreen = true;
// Set the hardware stats to match the LCD.
_videoMode.hardwareWidth = 320;
_videoMode.hardwareHeight = 240;
if (_videoMode.screenHeight != 200)
_videoMode.aspectRatioCorrection = false;
if (_videoMode.screenWidth > 320 || _videoMode.screenHeight > 240) {
_videoMode.aspectRatioCorrection = false;
setGraphicsMode(GFX_HALF);
// printf("GFX_HALF\n");
} else {
setGraphicsMode(GFX_NORMAL);
// printf("GFX_NORMAL\n");
}
if ((_videoMode.mode == GFX_HALF) && !_overlayVisible) {
_videoMode.overlayWidth = _videoMode.screenWidth / 2;
_videoMode.overlayHeight = _videoMode.screenHeight / 2;
_videoMode.fullscreen = true;
} else {
_videoMode.overlayWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
_videoMode.overlayHeight = _videoMode.screenHeight * _videoMode.scaleFactor;
if (_videoMode.aspectRatioCorrection)
_videoMode.overlayHeight = real2Aspect(_videoMode.overlayHeight);
_videoMode.hardwareWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
_videoMode.hardwareHeight = effectiveScreenHeight();
}
return SurfaceSdlGraphicsManager::loadGFXMode();
}
@ -542,9 +497,13 @@ bool GPHGraphicsManager::hasFeature(OSystem::Feature f) {
void GPHGraphicsManager::setFeatureState(OSystem::Feature f, bool enable) {
switch (f) {
case OSystem::kFeatureAspectRatioCorrection:
case OSystem::kFeatureAspectRatioCorrection:
setAspectRatioCorrection(enable);
break;
case OSystem::kFeatureCursorPalette:
_cursorPaletteDisabled = !enable;
blitCursor();
break;
default:
break;
}
@ -554,8 +513,10 @@ bool GPHGraphicsManager::getFeatureState(OSystem::Feature f) {
assert(_transactionMode == kTransactionNone);
switch (f) {
case OSystem::kFeatureAspectRatioCorrection:
case OSystem::kFeatureAspectRatioCorrection:
return _videoMode.aspectRatioCorrection;
case OSystem::kFeatureCursorPalette:
return !_cursorPaletteDisabled;
default:
return false;
}
@ -571,7 +532,7 @@ SurfaceSdlGraphicsManager::VideoState *GPHGraphicsManager::getVideoMode() {
void GPHGraphicsManager::warpMouse(int x, int y) {
if (_mouseCurState.x != x || _mouseCurState.y != y) {
if (_videoMode.mode == GFX_HALF && !_overlayVisible){
if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
x = x / 2;
y = y / 2;
}

View File

@ -24,7 +24,7 @@
#define BACKENDS_GRAPHICS_GPH_H
#include "backends/graphics/surfacesdl/surfacesdl-graphics.h"
#include "graphics/scaler/aspect.h" // for aspect2Real
#include "graphics/scaler/aspect.h" // for aspect2Real
#include "graphics/scaler/downscaler.h"
enum {

View File

@ -460,6 +460,10 @@ void OpenGLSdlGraphicsManager::toggleFullScreen(int loop) {
_activeFullscreenMode = -2;
setFullscreenMode(!isFullscreen);
}
// HACK: We need to force a refresh here, since we change the
// fullscreen mode.
_transactionDetails.needRefresh = true;
endGFXTransaction();
// Ignore resize events for the next 10 frames

View File

@ -731,7 +731,8 @@ bool SurfaceSdlGraphicsManager::loadGFXMode() {
_videoMode.hardwareWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
_videoMode.hardwareHeight = effectiveScreenHeight();
#else
// On GPH devices ALL the _videoMode.hardware... are setup in GPHGraphicsManager::loadGFXMode()
#elif !defined(GPH_DEVICE)
_videoMode.hardwareWidth = _videoMode.overlayWidth;
_videoMode.hardwareHeight = _videoMode.overlayHeight;
#endif

View File

@ -147,6 +147,11 @@ MODULE_OBJS += \
graphics/linuxmotosdl/linuxmotosdl-graphics.o
endif
ifeq ($(BACKEND),maemo)
MODULE_OBJS += \
events/maemosdl/maemosdl-events.o
endif
ifeq ($(BACKEND),n64)
MODULE_OBJS += \
fs/n64/n64-fs.o \

View File

@ -2,6 +2,16 @@
echo Quick script to make building a distribution of the GP2X Wiz backend more consistent.
# Set the paths up here to support the build.
export PATH=/opt/open2x/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/bin:$PATH
export PATH=/opt/open2x/gcc-4.1.1-glibc-2.3.6/bin:$PATH
export CXX=arm-open2x-linux-g++
export CC=arm-open2x-linux-gcc
export CXXFLAGS=-march=armv4t
export LDFLAGS=-static
export ASFLAGS=-mfloat-abi=soft
cd ../../../..
echo Building ScummVM for GP2X Wiz.

View File

@ -25,10 +25,9 @@
#include "backends/platform/sdl/sdl-sys.h"
// #include "backends/platform/gph/gph-options.h"
#include "backends/mixer/doublebuffersdl/doublebuffersdl-mixer.h"
#include "backends/platform/gph/gph-hw.h"
#include "backends/platform/gph/gph-sdl.h"
#include "backends/platform/gph/gph.h"
#include "backends/plugins/posix/posix-provider.h"
#include "backends/saves/default/default-saves.h"
#include "backends/timer/default/default-timer.h"
@ -51,7 +50,7 @@
#include <limits.h>
#include <errno.h>
#include <sys/stat.h>
#include <time.h> // for getTimeAndDate()
#include <time.h> // for getTimeAndDate()
/* Dump console info to files. */
#define DUMP_STDOUT
@ -104,49 +103,50 @@ void OSystem_GPH::initBackend() {
_savefileManager = new DefaultSaveFileManager(savePath);
#ifdef DUMP_STDOUT
// The GP2X Wiz has a serial console on the breakout board but most users do not use this so we
// output all our STDOUT and STDERR to files for debug purposes.
char STDOUT_FILE[PATH_MAX+1];
char STDERR_FILE[PATH_MAX+1];
#ifdef DUMP_STDOUT
// The GPH devices have a serial console on the breakout board
// but most users do not use this so we output all our STDOUT
// and STDERR to files for debug purposes.
char STDOUT_FILE[PATH_MAX+1];
char STDERR_FILE[PATH_MAX+1];
strcpy(STDOUT_FILE, workDirName);
strcpy(STDERR_FILE, workDirName);
strcat(STDOUT_FILE, "/scummvm.stdout.txt");
strcat(STDERR_FILE, "/scummvm.stderr.txt");
strcpy(STDOUT_FILE, workDirName);
strcpy(STDERR_FILE, workDirName);
strcat(STDOUT_FILE, "/scummvm.stdout.txt");
strcat(STDERR_FILE, "/scummvm.stderr.txt");
// Flush the output in case anything is queued
fclose(stdout);
fclose(stderr);
// Flush the output in case anything is queued
fclose(stdout);
fclose(stderr);
// Redirect standard input and standard output
FILE *newfp = freopen(STDOUT_FILE, "w", stdout);
if (newfp == NULL) {
#if !defined(stdout)
stdout = fopen(STDOUT_FILE, "w");
#else
newfp = fopen(STDOUT_FILE, "w");
if (newfp) {
*stdout = *newfp;
}
#endif
// Redirect standard input and standard output
FILE *newfp = freopen(STDOUT_FILE, "w", stdout);
if (newfp == NULL) {
#if !defined(stdout)
stdout = fopen(STDOUT_FILE, "w");
#else
newfp = fopen(STDOUT_FILE, "w");
if (newfp) {
*stdout = *newfp;
}
#endif
}
newfp = freopen(STDERR_FILE, "w", stderr);
if (newfp == NULL) {
#if !defined(stderr)
stderr = fopen(STDERR_FILE, "w");
#else
newfp = fopen(STDERR_FILE, "w");
if (newfp) {
*stderr = *newfp;
}
#endif
newfp = freopen(STDERR_FILE, "w", stderr);
if (newfp == NULL) {
#if !defined(stderr)
stderr = fopen(STDERR_FILE, "w");
#else
newfp = fopen(STDERR_FILE, "w");
if (newfp) {
*stderr = *newfp;
}
#endif
}
setbuf(stderr, NULL);
printf("%s\n", "Debug: STDOUT and STDERR redirected to text files.");
#endif /* DUMP_STDOUT */
setbuf(stderr, NULL);
printf("%s\n", "Debug: STDOUT and STDERR redirected to text files.");
#endif /* DUMP_STDOUT */
/* Initialize any GP2X Wiz specific stuff we may want (Batt Status, scaler etc.) */
WIZ_HW::deviceInit();
@ -169,9 +169,6 @@ void OSystem_GPH::initBackend() {
/* Make sure SDL knows that we have a joystick we want to use. */
ConfMan.setInt("joystick_num", 0);
/* Now setup any device specific user options (Left handed mode, that sort of thing). */
// GPH::setOptions();
/* Pass to POSIX method to do the heavy lifting */
OSystem_POSIX::initBackend();
@ -217,11 +214,11 @@ void OSystem_GPH::quit() {
WIZ_HW::deviceDeinit();
#ifdef DUMP_STDOUT
printf("%s\n", "Debug: STDOUT and STDERR text files closed.");
fclose(stdout);
fclose(stderr);
#endif /* DUMP_STDOUT */
#ifdef DUMP_STDOUT
printf("%s\n", "Debug: STDOUT and STDERR text files closed.");
fclose(stdout);
fclose(stderr);
#endif /* DUMP_STDOUT */
OSystem_POSIX::quit();
}

View File

@ -43,13 +43,13 @@
namespace WIZ_HW {
enum {
VOLUME_NOCHG = 0,
VOLUME_DOWN = 1,
VOLUME_UP = 2,
VOLUME_CHANGE_RATE = 8,
VOLUME_MIN = 0,
VOLUME_INITIAL = 60,
VOLUME_MAX = 100
VOLUME_NOCHG = 0,
VOLUME_DOWN = 1,
VOLUME_UP = 2,
VOLUME_CHANGE_RATE = 8,
VOLUME_MIN = 0,
VOLUME_INITIAL = 60,
VOLUME_MAX = 100
};
int volumeLevel = VOLUME_INITIAL;
@ -61,24 +61,24 @@ void deviceDeinit() {
}
void mixerMoveVolume(int direction) {
if (volumeLevel <= 10) {
if (direction == VOLUME_UP) volumeLevel += VOLUME_CHANGE_RATE/2;
if (direction == VOLUME_DOWN) volumeLevel -= VOLUME_CHANGE_RATE/2;
} else {
if (direction == VOLUME_UP) volumeLevel += VOLUME_CHANGE_RATE;
if (direction == VOLUME_DOWN) volumeLevel -= VOLUME_CHANGE_RATE;
}
if (volumeLevel <= 10) {
if (direction == VOLUME_UP) volumeLevel += VOLUME_CHANGE_RATE / 2;
if (direction == VOLUME_DOWN) volumeLevel -= VOLUME_CHANGE_RATE / 2;
} else {
if (direction == VOLUME_UP) volumeLevel += VOLUME_CHANGE_RATE;
if (direction == VOLUME_DOWN) volumeLevel -= VOLUME_CHANGE_RATE;
}
if (volumeLevel < VOLUME_MIN) volumeLevel = VOLUME_MIN;
if (volumeLevel > VOLUME_MAX) volumeLevel = VOLUME_MAX;
if (volumeLevel < VOLUME_MIN) volumeLevel = VOLUME_MIN;
if (volumeLevel > VOLUME_MAX) volumeLevel = VOLUME_MAX;
unsigned long soundDev = open("/dev/mixer", O_RDWR);
unsigned long soundDev = open("/dev/mixer", O_RDWR);
if (soundDev) {
int vol = ((volumeLevel << 8) | volumeLevel);
ioctl(soundDev, SOUND_MIXER_WRITE_PCM, &vol);
close(soundDev);
}
if (soundDev) {
int vol = ((volumeLevel << 8) | volumeLevel);
ioctl(soundDev, SOUND_MIXER_WRITE_PCM, &vol);
close(soundDev);
}
}
} /* namespace WIZ_HW */
@ -87,9 +87,9 @@ namespace GPH {
enum {
/* Touchscreen TapMode */
TAPMODE_LEFT = 0,
TAPMODE_RIGHT = 1,
TAPMODE_HOVER = 2
TAPMODE_LEFT = 0,
TAPMODE_RIGHT = 1,
TAPMODE_HOVER = 2
};
int tapmodeLevel = TAPMODE_LEFT;
@ -103,7 +103,7 @@ void ToggleTapMode() {
tapmodeLevel = TAPMODE_LEFT;
} else {
tapmodeLevel = TAPMODE_LEFT;
}
}
}
} /* namespace GPH */

View File

@ -32,9 +32,9 @@ namespace WIZ_HW {
extern int volumeLevel;
extern void deviceInit();
extern void deviceDeinit();
extern void mixerMoveVolume(int);
extern void deviceInit();
extern void deviceDeinit();
extern void mixerMoveVolume(int);
} /* namespace WIZ_HW */
@ -42,7 +42,7 @@ namespace GPH {
extern int tapmodeLevel;
extern void ToggleTapMode();
extern void ToggleTapMode();
} /* namespace GPH */

View File

@ -20,7 +20,7 @@
*
*/
#include "backends/platform/gph/gph-sdl.h"
#include "backends/platform/gph/gph.h"
#include "backends/plugins/posix/posix-provider.h"
#include "base/main.h"
@ -43,7 +43,7 @@ int main(int argc, char *argv[]) {
int res = scummvm_main(argc, argv);
// Free OSystem
delete (OSystem_GPH *)g_system;
delete(OSystem_GPH *)g_system;
return res;
}

View File

@ -34,7 +34,7 @@
#define __GP2XWIZ__
#ifndef PATH_MAX
#define PATH_MAX 255
#define PATH_MAX 255
#endif
class OSystem_GPH : public OSystem_POSIX {

View File

@ -0,0 +1,227 @@
scummvm (1.4.0~git) unstable; urgency=low
* development snapshot
-- Tarek Soliman <tsoliman@scummvm.org> Wed, 05 Oct 2011 19:01:25 -0500
scummvm (1.2.1~pre) unstable; urgency=low
* 1.2.1 testing release
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 8 Dec 2010 21:43:29 +0100
scummvm (1.2.0~pre) unstable; urgency=low
* 1.2.0 testing release
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 8 Oct 2010 21:38:12 +0200
scummvm (1.1.0~pre) unstable; urgency=low
* 1.1.0 testing release
* cleanup for N900 (new firmwares need less hacks)
* unified binary for all devices now have datafiles included (~2MB)
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 24 Mar 2010 01:48:05 +0100
scummvm (1.0.0-4) unstable; urgency=low
* datadir optified (/usr/share/scummvm -> /opt/scummvm/share)
* added engine files to datadir
* Application Manager icon enlarged to 48x48
-- Frantisek Dufka <dufkaf@seznam.cz> Thu, 17 Dec 2009 13:54:51 +0100
scummvm (1.0.0-3) unstable; urgency=low
* disable taskmanager topleft button in fullscreen mode (N900)
* map shift+click to right button click
* mam ctrl+click to mouse move (no click)
* set fullscreen window as _HILDON_NON_COMPOSITED_WINDOW (N900)
-- Frantisek Dufka <dufkaf@seznam.cz> Tue, 15 Dec 2009 23:12:51 +0100
scummvm (1.0.0-2) unstable; urgency=low
* grab N900 volume keys
* map Shift+Backspace to Escape key, shift+enter to Menu key (N900)
* optified = main binary moved to /opt/scummvm/bin/scummvm
-- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Dec 2009 23:39:04 +0100
scummvm (1.0.0-1) unstable; urgency=low
* -mcpu=arm1136j-s -mfpu=vfp -mfloat-abi=softfp breaks Gobliins, reverted
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Dec 2009 10:25:11 +0100
scummvm (1.0.0) unstable; urgency=low
* upstream 1.0 release
* Initial support for N900
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 6 Nov 2009 22:02:25 +0100
scummvm (1.0.0~rc1-3) unstable; urgency=low
* updated to 1.0 branch revision 43999 to fix bugs (Cruise pause, ..)
* Cruise for Corpse mapping added to zoom+ for N800/770
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 7 Sep 2009 09:03:13 +0200
scummvm (1.0.0~rc1-2) unstable; urgency=low
* Cruise for Corpse key bindings added
- menu key for menu, zoom-=right click, zoom+=context menu
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Sep 2009 23:03:59 +0200
scummvm (1.0.0~rc1-1) unstable; urgency=low
* Discworld key bindings added - menu key for menu, zoom-=right click, zoom+=Enter/y key
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 2 Sep 2009 09:53:08 +0200
scummvm (1.0.0~rc1) unstable; urgency=low
* upstream 1.0.0rc1 release
-- Frantisek Dufka <dufkaf@seznam.cz> Thu, 20 Aug 2009 23:33:59 +0200
scummvm (0.13.1) unstable; urgency=low
* upstream 0.13.1 release
-- Frantisek Dufka <dufkaf@seznam.cz> Sat, 18 Apr 2009 22:40:42 +0200
scummvm (0.13.0-2) unstable; urgency=low
* dbus_service.patch is incomplete - needs also install line in debian/rules
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 27 Feb 2009 20:37:29 +0100
scummvm (0.13.0-1) unstable; urgency=low
* fix crash in task switcher caption code when .scummvmrc had fullscreen value set
* enabled also dbus_service.patch for home key switching back (not needed in OS < 2008)
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 27 Feb 2009 09:29:01 +0100
scummvm (0.13.0) unstable; urgency=low
* upstream 0.13.0 release
* Feeble Files mapping
* task switcher item name patch from mikkov
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 18 Feb 2009 21:52:33 +0100
scummvm (0.11.99-4) unstable; urgency=low
* Maemo extras-devel test version
- maemo-taskswitcher.patch: title shown right from the beginning
and title not fixed to "ScummVM" only
- dbus_service.patch: modify scummvm.desktop, scummvm.wrapper and
scummvm.service to make switching application automatically back
via second home key long press to work
-- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 03 Jan 2009 01:59:52 +0200
scummvm (0.11.99-3) unstable; urgency=low
* Maemo extras-devel test version
- maemo-taskswitcher.patch
-- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 01 Jan 2009 13:13:13 +0200
scummvm (0.11.99-2) unstable; urgency=low
* Maemo extras-devel test version
- keeping version below 0.12.0
- not in user/ category
-- Mikko Vartiainen <mvartiainen@gmail.com> Thu, 01 Jan 2009 02:04:14 +0200
scummvm (0.12.0) unstable; urgency=low
* upstream 0.12.0 release
* update description
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 25 Aug 2008 21:47:41 +0200
scummvm (0.11.99) unstable; urgency=low
* upstream 0.12.0 testing pre-release
* big icons added for OS2008 menu
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 22 Aug 2008 08:20:48 +0200
scummvm (0.11.1) unstable; urgency=low
* upstream 0.11.1 release
* mapping for N810: zoom+ = menu for all games (except FW)
-- Frantisek Dufka <dufkaf@seznam.cz> Sat, 23 Feb 2008 20:41:37 +0100
scummvm (0.11.0-2) unstable; urgency=low
* mapping for N800/770: zoom+ = y, zoom- = 1 (all games except FW)
this fixes save dialog in BS1 and also allows to exit some games via 'y'
* mapping for N810: zoom- = rightclick for all games
* updated to revision 30849 from 0.11 branch (some bugfixes for 0.11.1)
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 11 Feb 2008 22:22:48 +0100
scummvm (0.11.0-1) unstable; urgency=low
* theme files added back
* SWORD2,SAGA - added zoom keys =1/2 for saved games
* different mapping for N810 rightclick=zoom-,menu=zoom+ (currently only in LURE)
* added NEWS README COPYRIGHT do doc dir as per scummvm project guidelines
-- Frantisek Dufka <dufkaf@seznam.cz> Sun, 13 Jan 2008 22:58:41 +0100
scummvm (0.11.0-0) unstable; urgency=low
* upstream 0.11 release
-- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Jan 2008 22:26:34 +0100
scummvm (0.10.0-5) unstable; urgency=low
* fixed for chinook, menu selection postinst script added
-- Frantisek Dufka <dufkaf@seznam.cz> Thu, 25 Oct 2007 09:56:32 +0200
scummvm (0.10.0-4) unstable; urgency=low
* AGI - added pred.dic to DATA_PATH (=/usr/share/scummvm) to enable
predictive input
-- Frantisek Dufka <dufkaf@seznam.cz> Tue, 28 Aug 2007 09:58:29 +0200
scummvm (0.10.0-3) unstable; urgency=low
* SCUMM - added mapping also for key up events (may fix right button in FT?)
* SWORD2 - added right button press mapping (not tested)
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 20 Aug 2007 22:39:07 +0200
scummvm (0.10.0-2) unstable; urgency=low
* Future Wars - add mapping for left/up/down/right,zoom +/-
* fix SDL backend to set mouse position on button down event
as we may not have mousemove events with touchscreen
-- Frantisek Dufka <dufkaf@seznam.cz> Fri, 13 Jul 2007 09:56:37 +0200
scummvm (0.10.0-1) unstable; urgency=low
* mapped F10 in Future Wars to menu key
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 11 Jul 2007 22:20:00 +0200
scummvm (0.10.0) unstable; urgency=low
* upstream 0.10 release, enabled FLAC too
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 4 Jul 2007 12:48:48 +0200
scummvm (0.9.1-1) unstable; urgency=low
* 0.9.1 mapped right mouse button in sword1
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 18 Jun 2007 21:15:31 +0200
scummvm (0.9.1) unstable; urgency=low
* 0.9.1 upstream release
-- Frantisek Dufka <dufkaf@seznam.cz> Wed, 1 Nov 2006 20:40:51 +0100
scummvm (0.9.0-3) unstable; urgency=low
* merged fixes in 0.9.0 upstream branch
-- Frantisek Dufka <dufkaf@seznam.cz> Mon, 9 Oct 2006 15:40:59 +0200
scummvm (0.9.0-2) unstable; urgency=low
* merged fixes in 0.9.0 upstream branch
-- Frantisek Dufka <dufkaf@seznam.cz> Sat, 12 Aug 2006 20:10:47 +0200
scummvm (0.9.0-1) unstable; urgency=low
* merged changes in 0.9.0 upstream release
-- Frantisek Dufka <dufkaf@seznam.cz> Sun, 23 Jul 2006 22:29:51 +0200
scummvm (0.9.0) unstable; urgency=low
* 0.9.0 upstream release
-- Frantisek Dufka <dufkaf@seznam.cz> Tue, 27 Jun 2006 20:30:54 +0200

View File

@ -0,0 +1 @@
4

View File

@ -0,0 +1,51 @@
Source: scummvm
Section: user/games
Priority: optional
Maintainer: Tarek Soliman <tsoliman@scummvm.org>
Build-Depends: debhelper (>> 4.0.0), libsdl1.2-dev, libmad0-dev, libasound2-dev, libvorbisidec-dev, libmpeg2-4-dev, libflac-dev (>= 1.1.2), libz-dev, quilt
Standards-Version: 3.6.1.1
Package: scummvm
Depends: ${shlibs:Depends}
Architecture: i386 armel
Section: user/games
Description: interpreter that will play graphic adventure games
written for LucasArts' SCUMM virtual machine, Sierra's AGI adventures,
Adventure Soft's Simon the Sorcerer 1, 2 and Feeble Files,
Revolution Software's Beneath a Steel Sky and Broken Sword 1 and 2,
Interactive Binary Illusions' Flight of the Amazon Queen,
Coktel Vision's Gobliiins, Wyrmkeep's Inherit the Earth,
Westwood's Legend of Kyrandia, and various others.
This package does not contain any actual games.
XBS-Maemo-Icon-26:
iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAMAAACelLz8AAAC/VBMVEUICwcH
CQUKDAgLDQoMDwsOEAwREAUPEQ0QEg8PFQoRExAUEwoVFAwPGAcTFBIRFg0W
FQ0XFg4RGgkTGA8XGQsTGwwUHA0aGRIWGxMXHQkVHQ8aGhMbGxQcHQocGxUZ
HwsYIgcfHxgeIRUbJQwhIBofJAweJwgfKQocKwwgKgshKw0gLggfLg8jLQ8n
LwwpLhEmMwcoMRQjNgotLCYmNwQlNwwqOBQtOQgsOQ8xNh4sPQswNyQqQAUw
PAsuOiAsQgcwOyIqRgIsSAQvRgs0PyY1Rg06RA0+PDAwSwg2RxUzTQE4TQsz
VAc/SSo6VAk4VwE6VRM2XAVAUC85XwlJVCNEXQo+YwJGXwxMWS1JXC5AagBI
awJUagRIcQBSbwpHeAJTaD9OdwNXcwJKewZNfABacRlOfQBPfgBQfwBMggBW
fgBNgwNSgQJOhAVecUJjdSZefwNUiABZhgBjeDZieDxhezFQjQBgghZkhQ5j
iQJUkAZcixJmgDZnhCtckQpblgBekw5clwBqgkthlQBdmAJriz90hz5omgBs
mAhxlgd0mAB5lgBpnA16khdzmAtxnABooQBtnwB4jUpzngBkpQR5nQF8j0Vr
pQduoRZ4nRR3k014oQBzpAt8oAh/ogBvqA5trACBmypwqRF1pw+GogCAow+D
pQB8phJ/nUNurxh0rRd4rwmHqQd6qDOArwCJqwyDsgCMrgB8ryiFtAB7uQN8
sDKBuAWOsBWJqFR8ti2IsiOSswaBuRt6vxCOtgqXsgePrjR9wQCFuw2KuQyB
uSeSuACEux6JuR2OvACAxACEvCuSuhOHujSMwQGTtiqfuACRvwGOvRWHuz2T
wASPwwmYvwaLvTebuxiWvhmSwBqZwAmNu0aevgiKvkCVviaMvE6bwQycuTid
vhylvQyZwB2cwg+QywCawR6fwB+bwyGI0gaewCudxCOjwyOT1ACmwjiX0g+j
xTqmxzOd1gCV0i6kyyuoyTah1Sif2h6tzjukzF+pz1uq1Eeg2Uml3U1kaLAB
AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAHrSURBVCjPY2BAAC5ubkFB
BkzAzggDfKgSUFEmKCmOIsPvktA0aVpbSYQ+FwsjkwpMBsi2m/X7z89v3759
+ngg1UqIlZEVponJYcW/rw9unH/04u2bc0vbo+WZWGCahEv/fj+6Yc2SZfv3
b5w6+eACHVYWmCazMz+unN44b3ZfV3dnx5yDiaKsUAOZGD2/fL58+PSGg3Gu
buEVWyZacLCzw6S8X324fOHqibMxWpKy5okBIjAZoNOt9r47e+HOnafbe/ND
DNWkOGAyDKwsCtXPTly4eufqm+fvHy4M1RRggsnJMLI6z9x99Oqtx7cuPP/2
ele5LjtCGyObbcHcDfuevHn+5s319RuSpOByrEwcwsqhlcvXHbp38+LxiXP6
DeBSTKzWvkrCun5Zq04dO7S6p67ZHibFziiRt6PYUk5YtfbUqSMTGnKyHaFS
rMDA3fHr7tqayKDWa0dWVmXHp5lCpRgZ2QI2HTl25NLt+1t3rppRFJ8SrwGX
4g9rmbJo0cpVqxZNaK5OS0nzF4NLMWkHZ1TVN9bXlxXmAo2L0uNgZITaxcjI
axAYH5+RATQrPtZHk5udA+Z2cIpQN3Hy8vOwMVLmYGTidoenDSawLAsnJz8L
kMUiY4ySpviYoKmKRVAcIyXKyIiLyygi+ADqVqrAkApevwAAAABJRU5ErkJg
gg==

View File

@ -0,0 +1,22 @@
ScummVM was debianized by Bastien Nocera <hadess@hadess.net> the 5th Apr 2002.
It was adopted by Tore Anderson <tore@linpro.no> the 4th Oct 2002.
Packaged for the Maemo platform by Tomas Junnoen <tomas@fs-security.com> Oct 2005
From 0.8.2 to 1.2.1, packaging for Maemo was done by Frantisek Dufka <dufkaf@seznam.cz>
Since 1.4 packaging for Maemo is done by Tarek Soliman <tarek@bashasoliman.com>
It was downloaded from <http://www.scummvm.org/>.
Upstream Authors: see AUTHORS file of the ScummVM source distribution.
Copyright:
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, or (at your option) any
later version. In addition, some parts are also licensed under LGPL and
BSD licenses. See COPYING.BSD and COPYING.LGPL.
On Debian GNU/Linux systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.
This copyright also applies to the Debian-related build scripts.

View File

@ -0,0 +1,25 @@
#! /bin/sh
# This is a workaround for older maemo versions related to the icon.
# The /usr/share/icons/scummvm.xpm icon is needed for OS2006 (Nokia 770)
# but if present it overrides nicer icons for newer systems in /usr/share/icons/hicolor.
# This workaround removes it if the OS isn't old (2006/2007).
if [ "$1" = "configure" ] ; then
OSVER=$OSSO_VERSION
[ -z "$OSVER" -a -f /etc/osso_software_version ] && OSVER=`cat /etc/osso_software_version`
OSVER=`echo $OSVER | cut -d _ -f 2`
case $OSVER in
2006*|2007*)
#nothing to do
true
;;
*)
#ugly trick, until this icon is removed big icon in menu does not show
[ -f /usr/share/icons/scummvm.xpm ] && rm /usr/share/icons/scummvm.xpm
;;
esac
[ -x /usr/bin/gtk-update-icon-cache ] && /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor
[ -x /usr/bin/maemo-select-menu-location -a -z "$2" ] && /usr/bin/maemo-select-menu-location scummvm.desktop tana_fi_games
fi
exit 0

View File

@ -0,0 +1,71 @@
#!/usr/bin/make -f
#include /usr/share/quilt/quilt.make
build: scummvm
scummvm:
dh_testdir
./configure --host=maemo
$(MAKE)
clean:
dh_testdir
dh_testroot
-$(MAKE) distclean
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean
dh_installdirs
# run as fake dbus-service to enable switching back to application from desktop via home key
install -m0755 dists/maemo/scummvm.servicewrapper debian/scummvm/usr/games/scummvm
install -m0644 dists/maemo/scummvm.servicedesktop debian/scummvm/usr/share/applications/hildon/scummvm.desktop
install -m0644 dists/maemo/scummvm.service debian/scummvm/usr/share/dbus-1/services
# the following commented out lines are the alternative for not running scummvm as a fake service
# install -m0755 dists/maemo/scummvm.wrapper debian/scummvm/usr/games/scummvm
# install -m0644 dists/maemo/scummvm.desktop debian/scummvm/usr/share/applications/hildon
install -m0644 dists/maemo/scummvm26.png debian/scummvm/usr/share/icons/hicolor/26x26/hildon/scummvm.png
install -m0644 dists/maemo/scummvm40.png debian/scummvm/usr/share/icons/hicolor/40x40/hildon/scummvm.png
install -m0644 dists/maemo/scummvm48.png debian/scummvm/usr/share/icons/hicolor/48x48/hildon/scummvm.png
install -m0644 dists/maemo/scummvm64.png debian/scummvm/usr/share/icons/hicolor/64x64/hildon/scummvm.png
install -m0644 icons/scummvm.xpm debian/scummvm/usr/share/icons
# install -m0644 -d debian/scummvm/usr/lib/scummvm
# install -m0644 plugins/lib*.so debian/scummvm/usr/lib/scummvm
##non-optified version
# install -m0755 scummvm debian/scummvm/usr/games/scummvm.bin
# install -m0644 -d debian/scummvm/usr/share/scummvm
# install -m0644 dists/pred.dic debian/scummvm/usr/share/scummvm
# install -m0644 gui/themes/scummclassic.zip gui/themes/scummmodern.zip debian/scummvm/usr/share/scummvm
# optified version (save rootfs space on N900), see also configure prefix and datadir paths above
install -m0644 -d debian/scummvm/opt/scummvm/bin
install -m0755 scummvm debian/scummvm/opt/scummvm/bin
install -m0644 -d debian/scummvm/opt/scummvm/share
install -m0644 dists/pred.dic debian/scummvm/opt/scummvm/share
install -m0644 gui/themes/scummclassic.zip gui/themes/scummmodern.zip debian/scummvm/opt/scummvm/share
install -m0644 backends/vkeybd/packs/vkeybd_default.zip debian/scummvm/opt/scummvm/share
# for optified version we can also add engine datafiles
install -m0644 dists/engine-data/drascula.dat dists/engine-data/hugo.dat dists/engine-data/kyra.dat dists/engine-data/lure.dat dists/engine-data/m4.dat dists/engine-data/mads.dat dists/engine-data/queen.tbl dists/engine-data/sky.cpt dists/engine-data/teenagent.dat dists/engine-data/toon.dat debian/scummvm/opt/scummvm/share
install -m0644 -d debian/scummvm/usr/share/doc/scummvm
install -m0644 NEWS README COPYRIGHT debian/scummvm/usr/share/doc/scummvm
binary: binary-arch
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs NEWS
dh_link
dh_strip
dh_fixperms
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary-indep:
.PHONY: build clean binary install binary-arch binary-indep

View File

@ -0,0 +1,8 @@
usr/games
usr/share/icons
usr/share/icons/hicolor/26x26/hildon
usr/share/icons/hicolor/40x40/hildon
usr/share/icons/hicolor/48x48/hildon
usr/share/icons/hicolor/64x64/hildon
usr/share/applications/hildon
usr/share/dbus-1/services

View File

@ -0,0 +1,97 @@
/* 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.
*
*/
#if defined(MAEMO)
#include "common/scummsys.h"
#include "common/config-manager.h"
#include "backends/platform/maemo/maemo.h"
#include "backends/events/maemosdl/maemosdl-events.h"
#include "common/textconsole.h"
#include <SDL/SDL_syswm.h>
#include <X11/Xutil.h>
OSystem_SDL_Maemo::OSystem_SDL_Maemo()
:
OSystem_POSIX() {
}
void OSystem_SDL_Maemo::initBackend() {
// Create the events manager
if (_eventSource == 0)
_eventSource = new MaemoSdlEventSource();
ConfMan.set("vkeybdpath", DATA_PATH);
// Call parent implementation of this method
OSystem_POSIX::initBackend();
}
void OSystem_SDL_Maemo::quit() {
delete this;
}
void OSystem_SDL_Maemo::fatalError() {
delete this;
}
void OSystem_SDL_Maemo::setXWindowName(const char *caption) {
SDL_SysWMinfo info;
SDL_VERSION(&info.version);
if (SDL_GetWMInfo(&info)) {
Display *dpy = info.info.x11.display;
Window win;
win = info.info.x11.fswindow;
if (win) XStoreName(dpy, win, caption);
win = info.info.x11.wmwindow;
if (win) XStoreName(dpy, win, caption);
}
}
void OSystem_SDL_Maemo::setWindowCaption(const char *caption) {
Common::String cap;
byte c;
// The string caption is supposed to be in LATIN-1 encoding.
// SDL expects UTF-8. So we perform the conversion here.
while ((c = *(const byte *)caption++)) {
if (c < 0x80)
cap += c;
else {
cap += 0xC0 | (c >> 6);
cap += 0x80 | (c & 0x3F);
}
}
SDL_WM_SetCaption(cap.c_str(), cap.c_str());
Common::String cap2("ScummVM - "); // 2 lines in OS2008 task switcher, set first line
cap = cap2 + cap;
setXWindowName(cap.c_str());
}
#endif

View File

@ -0,0 +1,45 @@
/* 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.
*
*/
#if defined(MAEMO)
#ifndef PLATFORM_SDL_MAEMO_H
#define PLATFORM_SDL_MAEMO_H
#include "backends/platform/sdl/posix/posix.h"
class OSystem_SDL_Maemo : public OSystem_POSIX {
public:
OSystem_SDL_Maemo();
virtual void initBackend();
virtual void quit();
virtual void fatalError();
virtual void setWindowCaption(const char *caption);
private:
virtual void setXWindowName(const char *caption);
};
#endif
#endif

View File

@ -0,0 +1,52 @@
/* 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.
*
*/
#if defined(MAEMO)
#define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#include "backends/platform/maemo/maemo.h"
#include "backends/plugins/sdl/sdl-provider.h"
#include "base/main.h"
#include <unistd.h>
int main(int argc, char* argv[]) {
g_system = new OSystem_SDL_Maemo();
assert(g_system);
((OSystem_SDL_Maemo *)g_system)->init();
#ifdef DYNAMIC_MODULES
PluginManager::instance().addPluginProvider(new SDLPluginProvider());
#endif
// Invoke the actual ScummVM main entry point:
int res = scummvm_main(argc, argv);
// Free OSystem
delete (OSystem_SDL_Maemo *)g_system;
return res;
}
#endif

View File

@ -0,0 +1,13 @@
MODULE := backends/platform/maemo
MODULE_OBJS := \
main.o \
maemo.o
# We don't use rules.mk but rather manually update OBJS and MODULE_DIRS.
MODULE_OBJS := $(addprefix $(MODULE)/, $(MODULE_OBJS))
OBJS := $(MODULE_OBJS) $(OBJS)
MODULE_DIRS += $(sort $(dir $(MODULE_OBJS)))
# Hack to ensure the SDL backend is built so we can use OSystem_SDL.
-include $(srcdir)/backends/platform/sdl/module.mk

File diff suppressed because it is too large Load Diff

View File

@ -118,4 +118,51 @@ bool OSystem_MacOSX::displayLogFile() {
return err != noErr;
}
Common::String OSystem_MacOSX::getSystemLanguage() const {
#if defined(USE_DETECTLANG) && defined(USE_TRANSLATION)
CFArrayRef availableLocalizations = CFBundleCopyBundleLocalizations(CFBundleGetMainBundle());
if (availableLocalizations) {
CFArrayRef preferredLocalizations = CFBundleCopyPreferredLocalizationsFromArray(availableLocalizations);
CFRelease(availableLocalizations);
if (preferredLocalizations) {
CFIndex localizationsSize = CFArrayGetCount(preferredLocalizations);
// Since we have a list of sorted preferred localization, I would like here to
// check that they are supported by the TranslationManager and take the first
// one that is supported. The listed localizations are taken from the Bundle
// plist file, so they should all be supported, unless the plist file is not
// synchronized with the translations.dat file. So this is not really a big
// issue. And because getSystemLanguage() is called from the constructor of
// TranslationManager (therefore before the instance pointer is set), calling
// TransMan here results in an infinite loop and creation of a lot of TransMan
// instances.
/*
for (CFIndex i = 0 ; i < localizationsSize ; ++i) {
CFStringRef language = (CFStringRef)CFArrayGetValueAtIndex(preferredLocalizations, i);
char buffer[10];
CFStringGetCString(language, buffer, 50, kCFStringEncodingASCII);
int32 languageId = TransMan.findMatchingLanguage(buffer);
if (languageId != -1) {
CFRelease(preferredLocalizations);
return TransMan.getLangById(languageId);
}
}
*/
if (localizationsSize > 0) {
CFStringRef language = (CFStringRef)CFArrayGetValueAtIndex(preferredLocalizations, 0);
char buffer[10];
CFStringGetCString(language, buffer, 50, kCFStringEncodingASCII);
CFRelease(preferredLocalizations);
return buffer;
}
CFRelease(preferredLocalizations);
}
}
// Falback to POSIX implementation
return OSystem_POSIX::getSystemLanguage();
#else // USE_DETECTLANG
return OSystem_POSIX::getSystemLanguage();
#endif // USE_DETECTLANG
}
#endif

View File

@ -32,6 +32,8 @@ public:
virtual bool hasFeature(Feature f);
virtual bool displayLogFile();
virtual Common::String getSystemLanguage() const;
virtual void initBackend();
virtual void addSysArchivesToSearchSet(Common::SearchSet &s, int priority = 0);

View File

@ -26,7 +26,7 @@
// of this file. The following "#if" ensures that.
#if !defined(POSIX) && \
!defined(WIN32) && \
!defined(__MAEMO__) && \
!defined(MAEMO) && \
!defined(__SYMBIAN32__) && \
!defined(_WIN32_WCE) && \
!defined(__amigaos4__) && \

View File

@ -22,7 +22,7 @@
#include "common/scummsys.h"
#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(WEBOS) && !defined(LINUXMOTO) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3)
#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(MAEMO) && !defined(WEBOS) && !defined(LINUXMOTO) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3)
#include "backends/platform/sdl/posix/posix.h"
#include "backends/plugins/sdl/sdl-provider.h"

View File

@ -103,7 +103,7 @@ static const EnginePlugin *detectPlugin() {
// Query the plugins and find one that will handle the specified gameid
printf("User picked target '%s' (gameid '%s')...\n", ConfMan.getActiveDomainName().c_str(), gameid.c_str());
printf("%s", " Looking for a plugin supporting this gameid... ");
printf(" Looking for a plugin supporting this gameid... ");
GameDescriptor game = EngineMan.findGame(gameid, &plugin);
@ -111,7 +111,7 @@ static const EnginePlugin *detectPlugin() {
printf("failed\n");
warning("%s is an invalid gameid. Use the --list-games option to list supported gameid", gameid.c_str());
} else {
printf("%s\n Starting '%s'\n", plugin->getName(), game.description().c_str());
printf("%s\n Starting '%s'\n", plugin->getName(), game.description().c_str());
}
return plugin;

View File

@ -94,6 +94,9 @@ public:
#if PLUGIN_ENABLED_STATIC(AGOS)
LINK_PLUGIN(AGOS)
#endif
#if PLUGIN_ENABLED_STATIC(CGE)
LINK_PLUGIN(CGE)
#endif
#if PLUGIN_ENABLED_STATIC(CINE)
LINK_PLUGIN(CINE)
#endif

View File

@ -26,16 +26,8 @@
#include "common/system.h"
#include "common/textconsole.h"
#define MAXLINELEN 256
namespace Common {
/**
* Check whether the given string is a valid section or key name.
* For that, it must only consist of letters, numbers, dashes and
* underscores. In particular, white space and "#", "=", "[", "]"
* are not valid!
*/
bool ConfigFile::isValidName(const String &name) {
const char *p = name.c_str();
while (*p && (isalnum(static_cast<unsigned char>(*p)) || *p == '-' || *p == '_' || *p == '.'))
@ -255,10 +247,15 @@ void ConfigFile::renameSection(const String &oldName, const String &newName) {
assert(isValidName(oldName));
assert(isValidName(newName));
//Section *os = getSection(oldName);
Section *ns = getSection(newName);
if (ns) {
ns->name = newName;
Section *os = getSection(oldName);
const Section *ns = getSection(newName);
if (os) {
// HACK: For now we just print a warning, for more info see the TODO
// below.
if (ns)
warning("ConfigFile::renameSection: Section name \"%s\" already used", newName.c_str());
else
os->name = newName;
}
// TODO: Check here whether there already is a section with the
// new name. Not sure how to cope with that case, we could:

View File

@ -49,6 +49,35 @@ bool uncompress(byte *dst, unsigned long *dstLen, const byte *src, unsigned long
return Z_OK == ::uncompress(dst, dstLen, src, srcLen);
}
bool inflateZlibHeaderless(byte *dst, uint dstLen, const byte *src, uint srcLen) {
if (!dst || !dstLen || !src || !srcLen)
return false;
// Initialize zlib
z_stream stream;
stream.next_in = const_cast<byte *>(src);
stream.avail_in = srcLen;
stream.next_out = dst;
stream.avail_out = dstLen;
stream.zalloc = Z_NULL;
stream.zfree = Z_NULL;
stream.opaque = Z_NULL;
// Negative MAX_WBITS tells zlib there's no zlib header
int err = inflateInit2(&stream, -MAX_WBITS);
if (err != Z_OK)
return false;
err = inflate(&stream, Z_SYNC_FLUSH);
if (err != Z_OK && err != Z_STREAM_END) {
inflateEnd(&stream);
return false;
}
inflateEnd(&stream);
return true;
}
/**
* A simple wrapper class which can be used to wrap around an arbitrary
* other SeekableReadStream and will then provide on-the-fly decompression support.

View File

@ -41,6 +41,15 @@ class WriteStream;
*/
bool uncompress(byte *dst, unsigned long *dstLen, const byte *src, unsigned long srcLen);
/**
* Wrapper around zlib's inflate functions. This function will call the
* necessary inflate functions to uncompress data compressed with deflate
* but *not* with the standard zlib header.
*
* @return true on success (Z_OK or Z_STREAM_END), false otherwise
*/
bool inflateZlibHeaderless(byte *dst, uint dstLen, const byte *src, uint srcLen);
#endif
/**

100
configure vendored
View File

@ -83,6 +83,7 @@ add_engine he "HE71+ games" yes
add_engine agi "AGI" yes
add_engine agos "AGOS" yes "agos2"
add_engine agos2 "AGOS 2 games" yes
add_engine cge "CGE" no
add_engine cine "Cinematique evo 1" yes
add_engine composer "Magic Composer" no
add_engine cruise "Cinematique evo 2" yes
@ -166,6 +167,7 @@ _translation=yes
# Default platform settings
_backend=sdl
_16bit=auto
_savegame_timestamp=auto
_dynamic_modules=no
_elf_loader=no
_plugins_default=static
@ -745,6 +747,7 @@ Special configuration feature:
gp2xwiz for GP2X Wiz
iphone for Apple iPhone
linupy for Yopy PDA
maemo for Nokia Maemo
motoezx for MotoEZX
motomagx for MotoMAGX
n64 for Nintendo 64
@ -772,6 +775,7 @@ Optional Features:
--default-dynamic make plugins dynamic by default
--disable-mt32emu don't enable the integrated MT-32 emulator
--disable-16bit don't enable 16bit color support
--disable-savegame-timestamp don't use timestamps for blank savegame descriptions
--disable-scalers exclude scalers
--disable-hq-scalers exclude HQ2x and HQ3x scalers
--disable-translation don't build support for translated messages
@ -851,6 +855,7 @@ done # for parm in ...
for ac_option in $@; do
case "$ac_option" in
--disable-16bit) _16bit=no ;;
--disable-savegame-timestamp) _savegame_timestamp=no ;;
--disable-scalers) _build_scalers=no ;;
--disable-hq-scalers) _build_hq_scalers=no ;;
--enable-alsa) _alsa=yes ;;
@ -1131,6 +1136,22 @@ linupy)
_host_os=linux
_host_cpu=arm
;;
maemo)
_host_os=maemo
_host_cpu=arm
_host_alias=arm-linux
# The prefix is always the same on Maemo so we hardcode the default
# here. It is still possible to define a custom prefix which is
# needed when packaging the app with a user-specific app ID.
test "x$prefix" = xNONE && prefix=/opt/scummvm
# Maemo apps are installed into app-specific directories. The
# default directory structure of ScummVM makes no sense here so we
# hardcode Maemo specific directories here.
datarootdir='${prefix}/share'
datadir=/opt/scummvm/share
docdir='${datarootdir}/doc/scummvm'
;;
motoezx)
_host_os=linux
_host_cpu=arm
@ -1921,6 +1942,9 @@ case $_host_os in
CXXFLAGS="$CXXFLAGS $(getconf LFS_CFLAGS 2>/dev/null)"
fi
;;
maemo)
DEFINES="$DEFINES -DMAEMO"
;;
mingw*)
DEFINES="$DEFINES -DWIN32"
DEFINES="$DEFINES -D__USE_MINGW_ANSI_STDIO=0"
@ -2085,6 +2109,7 @@ if test -n "$_host"; then
ASFLAGS="$ASFLAGS"
_backend="gph"
_build_hq_scalers=no
_savegame_timestamp=no
_vkeybd=yes
_seq_midi=no
_mt32emu=no
@ -2175,6 +2200,7 @@ if test -n "$_host"; then
LDFLAGS="$LDFLAGS -static"
_backend="gph"
_build_hq_scalers=no
_savegame_timestamp=no
_vkeybd=yes
_seq_midi=no
_mt32emu=no
@ -2194,6 +2220,7 @@ if test -n "$_host"; then
ASFLAGS="$ASFLAGS -mfloat-abi=soft"
_backend="gph"
_build_hq_scalers=no
_savegame_timestamp=no
_vkeybd=yes
_seq_midi=no
_mt32emu=no
@ -2212,6 +2239,23 @@ if test -n "$_host"; then
_ar="m68k-atari-mint-ar cru"
_seq_midi=no
;;
maemo)
CXXFLAGS="$CXXFLAGS -Os"
CXXFLAGS="$CXXFLAGS -mcpu=arm926ej-s"
CXXFLAGS="$CXXFLAGS -fomit-frame-pointer"
INCLUDES="$INCLUDES -I/usr/X11R6/include"
LIBS="$LIBS -lpthread"
LIBS="$LIBS -L/usr/lib"
_backend="maemo"
_vkeybd=yes
_build_hq_scalers=no
_mt32emu=no
_alsa=no
_mad=yes
_tremor=yes
_zlib=yes
;;
*mingw32*)
_sdlconfig=$_host-sdl-config
_windres=$_host-windres
@ -2260,6 +2304,7 @@ if test -n "$_host"; then
_backend="n64"
_mt32emu=no
_build_scalers=no
_savegame_timestamp=no
_translation=no
_keymapper=no
_text_console=no
@ -2462,6 +2507,9 @@ case $_backend in
linuxmoto)
DEFINES="$DEFINES -DLINUXMOTO"
;;
maemo)
DEFINES="$DEFINES -DMAEMO"
;;
n64)
INCLUDES="$INCLUDES "'-I$(N64SDK)/include'
INCLUDES="$INCLUDES "'-I$(N64SDK)/mips64/include'
@ -2544,7 +2592,7 @@ MODULES="$MODULES backends/platform/$_backend"
# Setup SDL specifics for SDL based backends
#
case $_backend in
dingux | gp2x | gph | linuxmoto | openpandora | samsungtv | sdl)
dingux | gp2x | gph | linuxmoto | maemo | openpandora | samsungtv | sdl)
find_sdlconfig
INCLUDES="$INCLUDES `$_sdlconfig --prefix="$_sdlpath" --cflags`"
LIBS="$LIBS `$_sdlconfig --prefix="$_sdlpath" --libs`"
@ -2567,7 +2615,7 @@ esac
# Enable 16bit support only for backends which support it
#
case $_backend in
android | bada | dingux | dreamcast | gph | openpandora | psp | samsungtv | sdl | webos | wii)
android | bada | dingux | dreamcast | gph | maemo | openpandora | psp | samsungtv | sdl | webos | wii)
if test "$_16bit" = auto ; then
_16bit=yes
else
@ -2579,6 +2627,26 @@ case $_backend in
;;
esac
#
# Disable savegame timestamp support for backends which don't have a reliable real time clock
#
case $_backend in
gph | n64)
if test "$_savegame_timestamp" = auto ; then
_savegame_timestamp=no
else
_savegame_timestamp=yes
fi
;;
*)
if test "$_savegame_timestamp" = auto ; then
_savegame_timestamp=yes
else
_savegame_timestamp=no
fi
;;
esac
#
# Determine whether host is POSIX compliant, or at least POSIX
@ -2593,7 +2661,7 @@ case $_host_os in
amigaos* | cygwin* | dreamcast | ds | gamecube | mingw* | n64 | ps2 | ps3 | psp | wii | wince)
_posix=no
;;
android | beos* | bsd* | darwin* | freebsd* | gph-linux | haiku* | hpux* | iphone | irix* | linux* | mint* | netbsd* | openbsd* | solaris* | sunos* | uclinux* | webos)
android | beos* | bsd* | darwin* | freebsd* | gph-linux | haiku* | hpux* | iphone | irix* | linux* | maemo | mint* | netbsd* | openbsd* | solaris* | sunos* | uclinux* | webos)
_posix=yes
;;
os2-emx*)
@ -2713,6 +2781,19 @@ PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive
POST_OBJS_FLAGS := -Wl,-no-whole-archive
'
;;
irix*)
_plugin_prefix="lib"
_plugin_suffix=".so"
CXXFLAGS="$CXXFLAGS -fpic"
LIBS="$LIBS -ldl"
_mak_plugins='
PLUGIN_EXTRA_DEPS =
PLUGIN_LDFLAGS += -shared -static-libgcc
PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive
POST_OBJS_FLAGS := -Wl,-no-whole-archive
'
;;
linux*)
_plugin_prefix="lib"
_plugin_suffix=".so"
@ -2821,6 +2902,11 @@ define_in_config_if_yes "$_mt32emu" 'USE_MT32EMU'
#
define_in_config_if_yes "$_16bit" 'USE_RGB_COLOR'
#
# Check whether save games use the current time as default description
#
define_in_config_if_yes "$_savegame_timestamp" 'USE_SAVEGAME_TIMESTAMP'
#
# Check whether to enable the (hq) scalers
#
@ -3449,8 +3535,8 @@ case $_backend in
# Add ../plugins as a path so plugins can be found when running from a .PND.
DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"../plugins\\\""
;;
webos)
# The WebOS app wants the plugins in the "lib" directory
maemo | webos)
# The WebOS and Maemo apps want the plugins in the "lib" directory
# without a scummvm sub directory.
DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"$libdir\\\""
;;
@ -3484,6 +3570,10 @@ if test "$_16bit" = yes ; then
echo_n ", 16bit color"
fi
if test "$_savegame_timestamp" = yes ; then
echo_n ", savegame timestamp"
fi
if test "$_build_scalers" = yes ; then
if test "$_build_hq_scalers" = yes ; then
echo_n ", HQ scalers"

View File

@ -1,4 +0,0 @@
# $Id$
all:
g++ -I../.. create_drascula.cpp -o create_drascula

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_drascula", "create_drascula.vcproj", "{5F280130-349D-11DD-AE16-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,191 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8,00"
Name="create_drascula"
ProjectGUID="{5F280130-349D-11DD-AE16-0800200C9A66}"
RootNamespace="create_drascula"
Keyword="Win32Proj"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_drascula.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_drascula.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_drascula.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath="..\..\create_drascula.cpp"
>
</File>
<File
RelativePath="..\..\create_drascula.h"
>
</File>
<File
RelativePath="..\..\staticdata.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,32 +0,0 @@
@echo off
rem This batch file is used to convert MSVC8 (Visual Studio 2005) project files to MSVC9 (Visual Studio 2008) ones
rem You need the Windows version of GNU rpl
rem Get it here:
rem http://gnuwin32.sourceforge.net/packages/rpl.htm
rem Place rpl.exe from the bin folder inside the archive in the folder where
rem this batch file resides
if not exist rpl.exe goto no_rpl
echo Creating MSVC9 project files from the MSVC8 ones
copy /y msvc8\*.vcproj msvc9\
copy /y msvc8\*.sln msvc9\
rpl -e -q "Version=\"8.00\"" "Version=\"9.00\"" msvc9\*.vcproj
rpl -e -q "Version=\"8,00\"" "Version=\"9,00\"" msvc9\*.vcproj
rpl -e -q "Keyword=\"Win32Proj\"" "Keyword=\"Win32Proj\"\n\tTargetFrameworkVersion=\"131072\"" msvc9\*.vcproj
rpl -e -q "EntryPointSymbol=\"WinMainCRTStartup\"" "EntryPointSymbol=\"WinMainCRTStartup\"\n\t\t\t\tRandomizedBaseAddress=\"1\"\n\t\t\t\tDataExecutionPrevention=\"0\"" msvc9\*.vcproj
rpl -e -q "Format Version 9.00" "Format Version 10.00" msvc9\*.sln
rpl -e -q "Format Version 9,00" "Format Version 10,00" msvc9\*.sln
rpl -e -q "# Visual C++ Express 2005" "# Visual C++ Express 2008" msvc9\*.sln
rpl -e -q "# Visual Studio 2005" "# Visual Studio 2008" msvc9\*.sln
goto the_end
:no_rpl
echo You need the Windows version of GNU rpl
echo Get it here:
echo http://gnuwin32.sourceforge.net/packages/rpl.htm
echo Place rpl.exe from the bin folder inside the archive in the folder where
echo this batch file resides
:the_end
pause

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_drascula", "create_drascula.vcproj", "{5F280130-349D-11DD-AE16-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,192 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="create_drascula"
ProjectGUID="{5F280130-349D-11DD-AE16-0800200C9A66}"
RootNamespace="create_drascula"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_drascula.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_drascula.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_drascula.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath="..\..\create_drascula.cpp"
>
</File>
<File
RelativePath="..\..\create_drascula.h"
>
</File>
<File
RelativePath="..\..\staticdata.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,33 +0,0 @@
@echo off
rem This batch file is used to convert MSVC9 (Visual Studio 2008) project files to MSVC8 (Visual Studio 2005) ones
rem You need the Windows version of GNU rpl
rem Get it here:
rem http://gnuwin32.sourceforge.net/packages/rpl.htm
rem Place rpl.exe from the bin folder inside the archive in the folder where
rem this batch file resides
if not exist rpl.exe goto no_rpl
echo Creating MSVC8 project files from the MSVC9 ones
copy /y msvc9\*.vcproj msvc8\
copy /y msvc9\*.sln msvc8\
rpl -e -q "Version=\"9.00\"" "Version=\"8.00\"" msvc8\*.vcproj
rpl -e -q "Version=\"9,00\"" "Version=\"8,00\"" msvc8\*.vcproj
rpl -e -q "\tTargetFrameworkVersion=\"131072\"\n" "" msvc8\*.vcproj
rpl -e -q "\t\t\t\tRandomizedBaseAddress=\"1\"\n" "" msvc8\*.vcproj
rpl -e -q "\t\t\t\tDataExecutionPrevention=\"0\"\n" "" msvc8\*.vcproj
rpl -e -q "Format Version 10.00" "Format Version 9.00" msvc8\*.sln
rpl -e -q "Format Version 10,00" "Format Version 9,00" msvc8\*.sln
rpl -e -q "# Visual C++ Express 2008" "# Visual C++ Express 2005" msvc8\*.sln
rpl -e -q "# Visual Studio 2008" "# Visual Studio 2005" msvc8\*.sln
goto the_end
:no_rpl
echo You need the Windows version of GNU rpl
echo Get it here:
echo http://gnuwin32.sourceforge.net/packages/rpl.htm
echo Place rpl.exe from the bin folder inside the archive in the folder where
echo this batch file resides
:the_end
pause

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_hugo", "create_hugo.vcxproj", "{5F280130-349D-11DD-AE16-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,113 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5F280130-349D-11DD-AE16-0800200C9A66}</ProjectGuid>
<RootNamespace>create_hugo</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<AdditionalOptions>/wd4996 %(AdditionalOptions)</AdditionalOptions>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)create_hugo.exe</OutputFile>
<IgnoreSpecificDefaultLibraries>libc.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)create_hugo.pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalOptions>/wd4996 %(AdditionalOptions)</AdditionalOptions>
<Optimization>Full</Optimization>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)create_hugo.exe</OutputFile>
<IgnoreSpecificDefaultLibraries>libc.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\create_hugo.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\create_hugo.h" />
<ClInclude Include="..\..\enums.h" />
<ClInclude Include="..\..\staticdata.h" />
<ClInclude Include="..\..\staticdisplay.h" />
<ClInclude Include="..\..\staticengine.h" />
<ClInclude Include="..\..\staticfont.h" />
<ClInclude Include="..\..\staticintro.h" />
<ClInclude Include="..\..\staticmouse.h" />
<ClInclude Include="..\..\staticparser.h" />
<ClInclude Include="..\..\staticutil.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_hugo", "create_hugo.vcproj", "{5F280130-349D-11DD-AE16-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,219 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="create_hugo"
ProjectGUID="{5F280130-349D-11DD-AE16-0800200C9A66}"
RootNamespace="create_hugo"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\.."
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_hugo.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_hugo.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_hugo.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath="..\..\create_hugo.cpp"
>
</File>
<File
RelativePath="..\..\create_hugo.h"
>
</File>
<File
RelativePath="..\..\enums.h"
>
</File>
<File
RelativePath="..\..\staticdata.h"
>
</File>
<File
RelativePath="..\..\staticdisplay.h"
>
</File>
<File
RelativePath="..\..\staticengine.h"
>
</File>
<File
RelativePath="..\..\staticfont.h"
>
</File>
<File
RelativePath="..\..\staticintro.h"
>
</File>
<File
RelativePath="..\..\staticmouse.h"
>
</File>
<File
RelativePath="..\..\staticparser.h"
>
</File>
<File
RelativePath="..\..\staticutil.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -277,7 +277,7 @@ enum kSpecial {
kTalkieVersion,
kDemoVersion,
kTalkieDemoVersion,
kOldFloppy,
kOldFloppy
};
enum kGame {

View File

@ -1,4 +0,0 @@
# $Id$
all:
g++ -I../.. create_lure_dat.cpp process_actions.cpp -o create_lure

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_lure", "create_lure.vcproj", "{63E18A70-17D2-11DE-8C30-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,222 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8,00"
Name="create_lure"
ProjectGUID="{63E18A70-17D2-11DE-8C30-0800200C9A66}"
RootNamespace="create_lure"
Keyword="Win32Proj"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
AdditionalIncludeDirectories="../../../../"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_lure.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_lure.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_lure.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="common"
>
<File
RelativePath="..\..\..\..\common\hashmap.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\hashmap.h"
>
</File>
<File
RelativePath="..\..\..\..\common\memorypool.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\memorypool.h"
>
</File>
<File
RelativePath="..\..\..\..\common\scummsys.h"
>
</File>
<File
RelativePath="..\..\..\..\common\str.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\str.h"
>
</File>
<File
RelativePath="..\..\..\..\common\util.h"
>
</File>
</Filter>
<File
RelativePath="..\..\create_lure_dat.cpp"
>
</File>
<File
RelativePath="..\..\create_lure_dat.h"
>
</File>
<File
RelativePath="..\..\process_actions.cpp"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,32 +0,0 @@
@echo off
rem This batch file is used to convert MSVC8 (Visual Studio 2005) project files to MSVC9 (Visual Studio 2008) ones
rem You need the Windows version of GNU rpl
rem Get it here:
rem http://gnuwin32.sourceforge.net/packages/rpl.htm
rem Place rpl.exe from the bin folder inside the archive in the folder where
rem this batch file resides
if not exist rpl.exe goto no_rpl
echo Creating MSVC9 project files from the MSVC8 ones
copy /y msvc8\*.vcproj msvc9\
copy /y msvc8\*.sln msvc9\
rpl -e -q "Version=\"8.00\"" "Version=\"9.00\"" msvc9\*.vcproj
rpl -e -q "Version=\"8,00\"" "Version=\"9,00\"" msvc9\*.vcproj
rpl -e -q "Keyword=\"Win32Proj\"" "Keyword=\"Win32Proj\"\n\tTargetFrameworkVersion=\"131072\"" msvc9\*.vcproj
rpl -e -q "EntryPointSymbol=\"WinMainCRTStartup\"" "EntryPointSymbol=\"WinMainCRTStartup\"\n\t\t\t\tRandomizedBaseAddress=\"1\"\n\t\t\t\tDataExecutionPrevention=\"0\"" msvc9\*.vcproj
rpl -e -q "Format Version 9.00" "Format Version 10.00" msvc9\*.sln
rpl -e -q "Format Version 9,00" "Format Version 10,00" msvc9\*.sln
rpl -e -q "# Visual C++ Express 2005" "# Visual C++ Express 2008" msvc9\*.sln
rpl -e -q "# Visual Studio 2005" "# Visual Studio 2008" msvc9\*.sln
goto the_end
:no_rpl
echo You need the Windows version of GNU rpl
echo Get it here:
echo http://gnuwin32.sourceforge.net/packages/rpl.htm
echo Place rpl.exe from the bin folder inside the archive in the folder where
echo this batch file resides
:the_end
pause

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_lure", "create_lure.vcproj", "{63E18A70-17D2-11DE-8C30-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{63E18A70-17D2-11DE-8C30-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,223 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="create_lure"
ProjectGUID="{63E18A70-17D2-11DE-8C30-0800200C9A66}"
RootNamespace="create_lure"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
AdditionalIncludeDirectories="../../../../"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_lure.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_lure.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_lure.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="common"
>
<File
RelativePath="..\..\..\..\common\hashmap.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\hashmap.h"
>
</File>
<File
RelativePath="..\..\..\..\common\memorypool.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\memorypool.h"
>
</File>
<File
RelativePath="..\..\..\..\common\scummsys.h"
>
</File>
<File
RelativePath="..\..\..\..\common\str.cpp"
>
</File>
<File
RelativePath="..\..\..\..\common\str.h"
>
</File>
<File
RelativePath="..\..\..\..\common\util.h"
>
</File>
</Filter>
<File
RelativePath="..\..\create_lure_dat.cpp"
>
</File>
<File
RelativePath="..\..\create_lure_dat.h"
>
</File>
<File
RelativePath="..\..\process_actions.cpp"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -1,33 +0,0 @@
@echo off
rem This batch file is used to convert MSVC9 (Visual Studio 2008) project files to MSVC8 (Visual Studio 2005) ones
rem You need the Windows version of GNU rpl
rem Get it here:
rem http://gnuwin32.sourceforge.net/packages/rpl.htm
rem Place rpl.exe from the bin folder inside the archive in the folder where
rem this batch file resides
if not exist rpl.exe goto no_rpl
echo Creating MSVC8 project files from the MSVC9 ones
copy /y msvc9\*.vcproj msvc8\
copy /y msvc9\*.sln msvc8\
rpl -e -q "Version=\"9.00\"" "Version=\"8.00\"" msvc8\*.vcproj
rpl -e -q "Version=\"9,00\"" "Version=\"8,00\"" msvc8\*.vcproj
rpl -e -q "\tTargetFrameworkVersion=\"131072\"\n" "" msvc8\*.vcproj
rpl -e -q "\t\t\t\tRandomizedBaseAddress=\"1\"\n" "" msvc8\*.vcproj
rpl -e -q "\t\t\t\tDataExecutionPrevention=\"0\"\n" "" msvc8\*.vcproj
rpl -e -q "Format Version 10.00" "Format Version 9.00" msvc8\*.sln
rpl -e -q "Format Version 10,00" "Format Version 9,00" msvc8\*.sln
rpl -e -q "# Visual C++ Express 2008" "# Visual C++ Express 2005" msvc8\*.sln
rpl -e -q "# Visual Studio 2008" "# Visual Studio 2005" msvc8\*.sln
goto the_end
:no_rpl
echo You need the Windows version of GNU rpl
echo Get it here:
echo http://gnuwin32.sourceforge.net/packages/rpl.htm
echo Place rpl.exe from the bin folder inside the archive in the folder where
echo this batch file resides
:the_end
pause

View File

@ -1,4 +0,0 @@
# $Id$
all:
g++ -I../.. main.cpp parser.cpp -o create_mads

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual C++ Express 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_mads", "create_mads.vcproj", "{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}.Debug|Win32.ActiveCfg = Debug|Win32
{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}.Debug|Win32.Build.0 = Debug|Win32
{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}.Release|Win32.ActiveCfg = Release|Win32
{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,187 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="create_mads"
ProjectGUID="{0332F6FD-D511-4AF6-ABCC-24A85F1489A4}"
RootNamespace="create_mads"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
AdditionalIncludeDirectories="../../../../"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_mads.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_mads.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_mads.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath="..\..\main.cpp"
>
</File>
<File
RelativePath="..\..\parser.cpp"
>
</File>
<File
RelativePath="..\..\parser.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -32,20 +32,20 @@ CodeBlocksProvider::CodeBlocksProvider(StringList &global_warnings, std::map<std
}
void CodeBlocksProvider::createWorkspace(const BuildSetup &setup) {
std::ofstream workspace((setup.outputDir + '/' + PROJECT_NAME + ".workspace").c_str());
std::ofstream workspace((setup.outputDir + '/' + setup.projectName + ".workspace").c_str());
if (!workspace)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_NAME + ".workspace\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectName + ".workspace\" for writing");
workspace << "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\" ?>\n"
"<CodeBlocks_workspace_file>\n";
workspace << "\t<Workspace title=\"" << PROJECT_DESCRIPTION << "\">\n";
workspace << "\t<Workspace title=\"" << setup.projectDescription << "\">\n";
writeReferences(workspace);
writeReferences(setup, workspace);
// Note we assume that the UUID map only includes UUIDs for enabled engines!
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
if (i->first == setup.projectName)
continue;
workspace << "\t\t<Project filename=\"" << i->first << ".cbp\" />\n";
@ -88,15 +88,15 @@ void CodeBlocksProvider::createProjectFile(const std::string &name, const std::s
"\t\t<Option compiler=\"gcc\" />\n"
"\t\t<Build>\n";
if (name == PROJECT_NAME) {
if (name == setup.projectName) {
std::string libraries;
for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i)
libraries += processLibraryName(*i) + ".a;";
project << "\t\t\t<Target title=\"default\">\n"
"\t\t\t\t<Option output=\"" << PROJECT_NAME << "\\" << PROJECT_NAME << "\" prefix_auto=\"1\" extension_auto=\"1\" />\n"
"\t\t\t\t<Option object_output=\"" << PROJECT_NAME << "\" />\n"
"\t\t\t\t<Option output=\"" << setup.projectName << "\\" << setup.projectName << "\" prefix_auto=\"1\" extension_auto=\"1\" />\n"
"\t\t\t\t<Option object_output=\"" << setup.projectName << "\" />\n"
"\t\t\t\t<Option external_deps=\"" << libraries /* + list of engines engines\name\name.a */ << "\" />\n"
"\t\t\t\t<Option type=\"1\" />\n"
"\t\t\t\t<Option compiler=\"gcc\" />\n"
@ -125,10 +125,10 @@ void CodeBlocksProvider::createProjectFile(const std::string &name, const std::s
project << "\t\t\t\t\t<Add library=\"" << processLibraryName(*i) << "\" />\n";
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
if (i->first == setup.projectName)
continue;
project << "\t\t\t\t\t<Add library=\"" << PROJECT_NAME << "\\engines\\" << i->first << "\\lib" << i->first << ".a\" />\n";
project << "\t\t\t\t\t<Add library=\"" << setup.projectName << "\\engines\\" << i->first << "\\lib" << i->first << ".a\" />\n";
}
project << "\t\t\t\t\t<Add directory=\"$(" << LIBS_DEFINE << ")lib\\mingw\" />\n"
@ -139,7 +139,7 @@ void CodeBlocksProvider::createProjectFile(const std::string &name, const std::s
// Resource compiler
project << "\t\t\t\t<ResourceCompiler>\n"
"\t\t\t\t\t<Add directory=\"..\\..\\dists\" />\n"
"\t\t\t\t\t<Add directory=\"..\\..\\..\\" << PROJECT_NAME << "\" />\n"
"\t\t\t\t\t<Add directory=\"..\\..\\..\\" << setup.projectName << "\" />\n"
"\t\t\t\t</ResourceCompiler>\n"
"\t\t\t</Target>\n"
"\t\t</Build>\n";
@ -148,9 +148,9 @@ void CodeBlocksProvider::createProjectFile(const std::string &name, const std::s
} else {
project << "\t\t\t<Target title=\"default\">\n"
"\t\t\t\t<Option output=\"" << PROJECT_NAME << "\\engines\\" << name << "\\lib" << name << "\" prefix_auto=\"1\" extension_auto=\"1\" />\n"
"\t\t\t\t<Option output=\"" << setup.projectName << "\\engines\\" << name << "\\lib" << name << "\" prefix_auto=\"1\" extension_auto=\"1\" />\n"
"\t\t\t\t<Option working_dir=\"\" />\n"
"\t\t\t\t<Option object_output=\"" << PROJECT_NAME << "\" />\n"
"\t\t\t\t<Option object_output=\"" << setup.projectName << "\" />\n"
"\t\t\t\t<Option type=\"2\" />\n"
"\t\t\t\t<Option compiler=\"gcc\" />\n"
"\t\t\t\t<Option createDefFile=\"1\" />\n"
@ -161,7 +161,7 @@ void CodeBlocksProvider::createProjectFile(const std::string &name, const std::s
project << "\t\t\t\t\t<Add option=\"-g\" />\n"
"\t\t\t\t\t<Add directory=\"..\\..\\engines\" />\n"
"\t\t\t\t\t<Add directory=\"..\\..\\..\\" << PROJECT_NAME << "\" />\n";
"\t\t\t\t\t<Add directory=\"..\\..\\..\\" << setup.projectName << "\" />\n";
// Sword2.5 engine needs theora and vorbis includes
if (name == "sword25")
@ -240,8 +240,8 @@ void CodeBlocksProvider::writeFileListToProject(const FileNode &dir, std::ofstre
}
}
void CodeBlocksProvider::writeReferences(std::ofstream &output) {
output << "\t\t<Project filename=\"" << PROJECT_NAME << ".cbp\" active=\"1\">\n";
void CodeBlocksProvider::writeReferences(const BuildSetup &setup, std::ofstream &output) {
output << "\t\t<Project filename=\"" << setup.projectName << ".cbp\" active=\"1\">\n";
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == " << PROJECT_NAME << ")

View File

@ -43,7 +43,7 @@ protected:
void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation,
const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix);
void writeReferences(std::ofstream &output);
void writeReferences(const BuildSetup &setup, std::ofstream &output);
const char *getProjectExtension();

View File

@ -20,6 +20,8 @@
*
*/
//#define ENABLE_XCODE
// HACK to allow building with the SDL backend on MinGW
// see bug #1800764 "TOOLS: MinGW tools building broken"
#ifdef main
@ -177,6 +179,7 @@ int main(int argc, char *argv[]) {
projectType = kProjectMSVC;
#ifdef ENABLE_XCODE
} else if (!std::strcmp(argv[i], "--xcode")) {
if (projectType != kProjectNone) {
std::cerr << "ERROR: You cannot pass more than one project type!\n";
@ -184,6 +187,7 @@ int main(int argc, char *argv[]) {
}
projectType = kProjectXcode;
#endif
} else if (!std::strcmp(argv[i], "--msvc-version")) {
if (i + 1 >= argc) {
@ -255,6 +259,8 @@ int main(int argc, char *argv[]) {
} else if (!std::strcmp(argv[i], "--installer")) {
setup.runBuildEvents = true;
setup.createInstaller = true;
} else if (!std::strcmp(argv[i], "--tools")) {
setup.devTools = true;
} else {
std::cerr << "ERROR: Unknown parameter \"" << argv[i] << "\"\n";
return -1;
@ -323,6 +329,11 @@ int main(int argc, char *argv[]) {
return -1;
case kProjectCodeBlocks:
if (setup.devTools) {
std::cerr << "ERROR: Building tools is not supported for the CodeBlocks project type!\n";
return -1;
}
////////////////////////////////////////////////////////////////////////////
// Code::Blocks is using GCC behind the scenes, so we need to pass a list
// of options to enable or disable warnings
@ -480,6 +491,11 @@ int main(int argc, char *argv[]) {
break;
case kProjectXcode:
if (setup.devTools) {
std::cerr << "ERROR: Building tools is not supported for the XCode project type!\n";
return -1;
}
////////////////////////////////////////////////////////////////////////////
// Xcode is also using GCC behind the scenes. See Code::Blocks comment
// for info on all warnings
@ -506,6 +522,15 @@ int main(int argc, char *argv[]) {
break;
}
// Setup project name and description
setup.projectName = PROJECT_NAME;
setup.projectDescription = PROJECT_DESCRIPTION;
if (setup.devTools) {
setup.projectName += "-tools";
setup.projectDescription += "Tools";
}
provider->createProject(setup);
delete provider;
@ -560,6 +585,9 @@ void displayHelp(const char *exe) {
" (default: false)\n"
" --installer Create NSIS installer after the build (implies --build-events)\n"
" (default: false)\n"
" --tools Create project files for the devtools\n"
" (ignores --build-events and --installer, as well as engine settings)\n"
" (default: false)\n"
"\n"
"Engines settings:\n"
" --list-engines list all available engines and their default state\n"
@ -786,6 +814,18 @@ const Feature s_features[] = {
{ "langdetect", "USE_DETECTLANG", "", true, "System language detection support" } // This feature actually depends on "translation", there
// is just no current way of properly detecting this...
};
const Tool s_tools[] = {
{ "create_drascula", true},
{ "create_hugo", true},
{ "create_kyradat", true},
{ "create_lure", true},
{ "create_mads", true},
{ "create_teenagent", true},
{ "create_toon", true},
{ "create_translations", true},
{ "qtable", true}
};
} // End of anonymous namespace
FeatureList getAllFeatures() {
@ -832,6 +872,16 @@ bool setFeatureBuildState(const std::string &name, FeatureList &features, bool e
}
}
ToolList getAllTools() {
const size_t toolCount = sizeof(s_tools) / sizeof(s_tools[0]);
ToolList tools;
for (size_t i = 0; i < toolCount; ++i)
tools.push_back(s_tools[i]);
return tools;
}
namespace CreateProjectTool {
//////////////////////////////////////////////////////////////////////////
@ -1057,63 +1107,90 @@ ProjectProvider::ProjectProvider(StringList &global_warnings, std::map<std::stri
}
void ProjectProvider::createProject(const BuildSetup &setup) {
_uuidMap = createUUIDMap(setup);
if (setup.devTools) {
_uuidMap = createToolsUUIDMap();
// We also need to add the UUID of the main project file.
const std::string svmUUID = _uuidMap[PROJECT_NAME] = createUUID();
// We also need to add the UUID of the main project file.
const std::string svmUUID = _uuidMap[setup.projectName] = createUUID();
// Create Solution/Workspace file
createWorkspace(setup);
createWorkspace(setup);
StringList in, ex;
StringList in, ex;
// Create engine project files
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
continue;
// Create tools project files
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == setup.projectName)
continue;
in.clear(); ex.clear();
const std::string moduleDir = setup.srcDir + "/devtools/" + i->first;
createModuleList(moduleDir, setup.defines, in, ex);
createProjectFile(i->first, i->second, setup, moduleDir, in, ex);
}
// Create other misc. build files
createOtherBuildFiles(setup);
} else {
_uuidMap = createUUIDMap(setup);
// We also need to add the UUID of the main project file.
const std::string svmUUID = _uuidMap[setup.projectName] = createUUID();
// Create Solution/Workspace file
createWorkspace(setup);
StringList in, ex;
// Create engine project files
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == setup.projectName)
continue;
in.clear(); ex.clear();
const std::string moduleDir = setup.srcDir + "/engines/" + i->first;
createModuleList(moduleDir, setup.defines, in, ex);
createProjectFile(i->first, i->second, setup, moduleDir, in, ex);
}
// Last but not least create the main project file.
in.clear(); ex.clear();
const std::string moduleDir = setup.srcDir + "/engines/" + i->first;
createModuleList(moduleDir, setup.defines, in, ex);
createProjectFile(i->first, i->second, setup, moduleDir, in, ex);
}
// Last but not least create the main project file.
in.clear(); ex.clear();
// File list for the Project file
createModuleList(setup.srcDir + "/backends", setup.defines, in, ex);
createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, in, ex);
createModuleList(setup.srcDir + "/base", setup.defines, in, ex);
createModuleList(setup.srcDir + "/common", setup.defines, in, ex);
createModuleList(setup.srcDir + "/engines", setup.defines, in, ex);
createModuleList(setup.srcDir + "/graphics", setup.defines, in, ex);
createModuleList(setup.srcDir + "/gui", setup.defines, in, ex);
createModuleList(setup.srcDir + "/audio", setup.defines, in, ex);
createModuleList(setup.srcDir + "/audio/softsynth/mt32", setup.defines, in, ex);
// File list for the Project file
createModuleList(setup.srcDir + "/backends", setup.defines, in, ex);
createModuleList(setup.srcDir + "/backends/platform/sdl", setup.defines, in, ex);
createModuleList(setup.srcDir + "/base", setup.defines, in, ex);
createModuleList(setup.srcDir + "/common", setup.defines, in, ex);
createModuleList(setup.srcDir + "/engines", setup.defines, in, ex);
createModuleList(setup.srcDir + "/graphics", setup.defines, in, ex);
createModuleList(setup.srcDir + "/gui", setup.defines, in, ex);
createModuleList(setup.srcDir + "/audio", setup.defines, in, ex);
createModuleList(setup.srcDir + "/audio/softsynth/mt32", setup.defines, in, ex);
#if HAS_VIDEO_FOLDER
createModuleList(setup.srcDir + "/video", setup.defines, in, ex);
createModuleList(setup.srcDir + "/video", setup.defines, in, ex);
#endif
// Resource files
in.push_back(setup.srcDir + "/icons/" + PROJECT_NAME + ".ico");
in.push_back(setup.srcDir + "/dists/" + PROJECT_NAME + ".rc");
// Resource files
in.push_back(setup.srcDir + "/icons/" + setup.projectName + ".ico");
in.push_back(setup.srcDir + "/dists/" + setup.projectName + ".rc");
// Various text files
in.push_back(setup.srcDir + "/AUTHORS");
in.push_back(setup.srcDir + "/COPYING");
in.push_back(setup.srcDir + "/COPYING.LGPL");
in.push_back(setup.srcDir + "/COPYRIGHT");
in.push_back(setup.srcDir + "/NEWS");
in.push_back(setup.srcDir + "/README");
in.push_back(setup.srcDir + "/TODO");
// Various text files
in.push_back(setup.srcDir + "/AUTHORS");
in.push_back(setup.srcDir + "/COPYING");
in.push_back(setup.srcDir + "/COPYING.LGPL");
in.push_back(setup.srcDir + "/COPYRIGHT");
in.push_back(setup.srcDir + "/NEWS");
in.push_back(setup.srcDir + "/README");
in.push_back(setup.srcDir + "/TODO");
// Create the main project file.
createProjectFile(PROJECT_NAME, svmUUID, setup, setup.srcDir, in, ex);
// Create the main project file.
createProjectFile(setup.projectName, svmUUID, setup, setup.srcDir, in, ex);
// Create other misc. build files
createOtherBuildFiles(setup);
// Create other misc. build files
createOtherBuildFiles(setup);
}
}
ProjectProvider::UUIDMap ProjectProvider::createUUIDMap(const BuildSetup &setup) const {
@ -1129,6 +1206,20 @@ ProjectProvider::UUIDMap ProjectProvider::createUUIDMap(const BuildSetup &setup)
return result;
}
ProjectProvider::UUIDMap ProjectProvider::createToolsUUIDMap() const {
UUIDMap result;
ToolList tools = getAllTools();
for (ToolList::const_iterator i = tools.begin(); i != tools.end(); ++i) {
if (!i->enable)
continue;
result[i->name] = createUUID();
}
return result;
}
std::string ProjectProvider::createUUID() const {
#ifdef USE_WIN32_API
UUID uuid;

View File

@ -137,6 +137,12 @@ struct Feature {
};
typedef std::list<Feature> FeatureList;
struct Tool {
const char *name; ///< Name of the tools
bool enable; ///< Whether the tools is enabled or not
};
typedef std::list<Tool> ToolList;
/**
* Creates a list of all features available for MSVC.
*
@ -179,6 +185,9 @@ bool setFeatureBuildState(const std::string &name, FeatureList &features, bool e
* It also contains the path to the project source root.
*/
struct BuildSetup {
std::string projectName; ///< Project name
std::string projectDescription; ///< Project description
std::string srcDir; ///< Path to the sources.
std::string filePrefix; ///< Prefix for the relative path arguments in the project files.
std::string outputDir; ///< Path where to put the MSVC project files.
@ -189,10 +198,12 @@ struct BuildSetup {
StringList defines; ///< List of all defines for the build.
StringList libraries; ///< List of all external libraries required for the build.
bool devTools; ///< Generate project files for the tools
bool runBuildEvents; ///< Run build events as part of the build (generate revision number and copy engine/theme data & needed files to the build folder
bool createInstaller; ///< Create NSIS installer after the build
BuildSetup() {
devTools = false;
runBuildEvents = false;
createInstaller = false;
}
@ -360,7 +371,7 @@ protected:
*
* @param output File stream to write to.
*/
virtual void writeReferences(std::ofstream &) {};
virtual void writeReferences(const BuildSetup &, std::ofstream &) {};
/**
* Get the file extension for project files
@ -401,6 +412,14 @@ protected:
*/
UUIDMap createUUIDMap(const BuildSetup &setup) const;
/**
* Creates an UUID for every enabled tool of the
* passed build description.
*
* @return A map, which includes UUIDs for all enabled engines.
*/
UUIDMap createToolsUUIDMap() const;
/**
* Creates an UUID and returns it in string representation.
*

View File

@ -58,9 +58,9 @@ inline void outputConfiguration(std::ostream &project, const std::string &config
"\t\t</ProjectConfiguration>\n";
}
inline void outputConfigurationType(std::ostream &project, const std::string &name, const std::string &config) {
inline void outputConfigurationType(const BuildSetup &setup, std::ostream &project, const std::string &name, const std::string &config) {
project << "\t<PropertyGroup Condition=\"'$(Configuration)|$(Platform)'=='" << config << "'\" Label=\"Configuration\">\n"
"\t\t<ConfigurationType>" << (name == PROJECT_NAME ? "Application" : "StaticLibrary") << "</ConfigurationType>\n"
"\t\t<ConfigurationType>" << ((name == setup.projectName || setup.devTools) ? "Application" : "StaticLibrary") << "</ConfigurationType>\n"
"\t</PropertyGroup>\n";
}
@ -103,23 +103,23 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri
// Shared configuration
project << "\t<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.Default.props\" />\n";
outputConfigurationType(project, name, "Release|Win32");
outputConfigurationType(project, name, "Analysis|Win32");
outputConfigurationType(project, name, "Debug|Win32");
outputConfigurationType(project, name, "Release|x64");
outputConfigurationType(project, name, "Analysis|x64");
outputConfigurationType(project, name, "Debug|x64");
outputConfigurationType(setup, project, name, "Release|Win32");
outputConfigurationType(setup, project, name, "Analysis|Win32");
outputConfigurationType(setup, project, name, "Debug|Win32");
outputConfigurationType(setup, project, name, "Release|x64");
outputConfigurationType(setup, project, name, "Analysis|x64");
outputConfigurationType(setup, project, name, "Debug|x64");
project << "\t<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.props\" />\n"
"\t<ImportGroup Label=\"ExtensionSettings\">\n"
"\t</ImportGroup>\n";
outputProperties(project, "Release|Win32", PROJECT_DESCRIPTION "_Release.props");
outputProperties(project, "Analysis|Win32", PROJECT_DESCRIPTION "_Analysis.props");
outputProperties(project, "Debug|Win32", PROJECT_DESCRIPTION "_Debug.props");
outputProperties(project, "Release|x64", PROJECT_DESCRIPTION "_Release64.props");
outputProperties(project, "Analysis|x64", PROJECT_DESCRIPTION "_Analysis64.props");
outputProperties(project, "Debug|x64", PROJECT_DESCRIPTION "_Debug64.props");
outputProperties(project, "Release|Win32", setup.projectDescription + "_Release.props");
outputProperties(project, "Analysis|Win32", setup.projectDescription + "_Analysis.props");
outputProperties(project, "Debug|Win32", setup.projectDescription + "_Debug.props");
outputProperties(project, "Release|x64", setup.projectDescription + "_Release64.props");
outputProperties(project, "Analysis|x64", setup.projectDescription + "_Analysis64.props");
outputProperties(project, "Debug|x64", setup.projectDescription + "_Debug64.props");
project << "\t<PropertyGroup Label=\"UserMacros\" />\n";
@ -145,8 +145,8 @@ void MSBuildProvider::createProjectFile(const std::string &name, const std::stri
addFilesToProject(moduleDir, project, includeList, excludeList, setup.filePrefix);
// Output references for the main project
if (name == PROJECT_NAME)
writeReferences(project);
if (name == setup.projectName)
writeReferences(setup, project);
project << "\t<Import Project=\"$(VCTargetsPath)\\Microsoft.Cpp.targets\" />\n"
"\t<ImportGroup Label=\"ExtensionTargets\">\n"
@ -213,11 +213,11 @@ void MSBuildProvider::outputFilter(std::ostream &filters, const FileEntries &fil
}
}
void MSBuildProvider::writeReferences(std::ofstream &output) {
void MSBuildProvider::writeReferences(const BuildSetup &setup, std::ofstream &output) {
output << "\t<ItemGroup>\n";
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
if (i->first == setup.projectName)
continue;
output << "\t<ProjectReference Include=\"" << i->first << ".vcxproj\">\n"
@ -235,7 +235,7 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
std::map<std::string, StringList>::iterator warningsIterator = _projectWarnings.find(name);
// Nothing to add here, move along!
if (name != PROJECT_NAME && name != "sword25" && name != "tinsel" && name != "grim" && warningsIterator == _projectWarnings.end())
if (!setup.devTools && name != setup.projectName && name != "sword25" && name != "tinsel" && name != "grim" && warningsIterator == _projectWarnings.end())
return;
std::string warnings = "";
@ -247,7 +247,7 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
"\t\t<ClCompile>\n";
// Compile configuration
if (name == PROJECT_NAME || name == "sword25" || name == "grim") {
if (setup.devTools || name == setup.projectName || name == "sword25" || name == "grim") {
project << "\t\t\t<DisableLanguageExtensions>false</DisableLanguageExtensions>\n";
} else {
if (name == "tinsel" && !isRelease)
@ -260,18 +260,18 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
project << "\t\t</ClCompile>\n";
// Link configuration for main project
if (name == PROJECT_NAME) {
if (name == setup.projectName || setup.devTools) {
std::string libraries;
for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i)
libraries += *i + ".lib;";
project << "\t\t<Link>\n"
"\t\t\t<OutputFile>$(OutDir)" << PROJECT_NAME << ".exe</OutputFile>\n"
"\t\t\t<OutputFile>$(OutDir)" << (setup.devTools ? name : setup.projectName) << ".exe</OutputFile>\n"
"\t\t\t<AdditionalDependencies>" << libraries << "%(AdditionalDependencies)</AdditionalDependencies>\n"
"\t\t</Link>\n";
if (setup.runBuildEvents) {
if (!setup.devTools && setup.runBuildEvents) {
project << "\t\t<PreBuildEvent>\n"
"\t\t\t<Message>Generate revision</Message>\n"
"\t\t\t<Command>" << getPreBuildEvent() << "</Command>\n"
@ -288,7 +288,7 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
project << "\t</ItemDefinitionGroup>\n";
}
void MSBuildProvider::outputGlobalPropFile(std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) {
void MSBuildProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) {
std::string warnings;
for (StringList::const_iterator i = _globalWarnings.begin(); i != _globalWarnings.end(); ++i)
@ -306,7 +306,7 @@ void MSBuildProvider::outputGlobalPropFile(std::ofstream &properties, int bits,
"<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n"
"\t<PropertyGroup>\n"
"\t\t<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>\n"
"\t\t<_PropertySheetDisplayName>" << PROJECT_DESCRIPTION << "_Global</_PropertySheetDisplayName>\n"
"\t\t<_PropertySheetDisplayName>" << setup.projectDescription << "_Global</_PropertySheetDisplayName>\n"
"\t\t<ExecutablePath>$(" << LIBS_DEFINE << ")\\bin;$(ExecutablePath)</ExecutablePath>\n"
"\t\t<LibraryPath>$(" << LIBS_DEFINE << ")\\lib\\" << (bits == 32 ? "x86" : "x64") << ";$(LibraryPath)</LibraryPath>\n"
"\t\t<IncludePath>$(" << LIBS_DEFINE << ")\\include;$(IncludePath)</IncludePath>\n"
@ -319,7 +319,7 @@ void MSBuildProvider::outputGlobalPropFile(std::ofstream &properties, int bits,
"\t\t\t<DisableSpecificWarnings>" << warnings << ";%(DisableSpecificWarnings)</DisableSpecificWarnings>\n"
"\t\t\t<AdditionalIncludeDirectories>$(" << LIBS_DEFINE << ")\\include;" << prefix << ";" << prefix << "\\engines;$(TargetDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n"
"\t\t\t<PreprocessorDefinitions>" << definesList << "%(PreprocessorDefinitions)</PreprocessorDefinitions>\n"
"\t\t\t<ExceptionHandling></ExceptionHandling>\n";
"\t\t\t<ExceptionHandling>" << (setup.devTools ? "Sync" : "") << "</ExceptionHandling>\n";
#if NEEDS_RTTI
properties << "\t\t\t<RuntimeTypeInfo>true</RuntimeTypeInfo>\n";
@ -333,9 +333,12 @@ void MSBuildProvider::outputGlobalPropFile(std::ofstream &properties, int bits,
"\t\t</ClCompile>\n"
"\t\t<Link>\n"
"\t\t\t<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\n"
"\t\t\t<SubSystem>Console</SubSystem>\n"
"\t\t\t<EntryPointSymbol>WinMainCRTStartup</EntryPointSymbol>\n"
"\t\t</Link>\n"
"\t\t\t<SubSystem>Console</SubSystem>\n";
if (!setup.devTools)
properties << "\t\t\t<EntryPointSymbol>WinMainCRTStartup</EntryPointSymbol>\n";
properties << "\t\t</Link>\n"
"\t\t<ResourceCompile>\n"
"\t\t\t<AdditionalIncludeDirectories>" << prefix << ";%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\n"
"\t\t</ResourceCompile>\n"
@ -349,18 +352,18 @@ void MSBuildProvider::createBuildProp(const BuildSetup &setup, bool isRelease, b
const std::string outputType = (enableAnalysis ? "Analysis" : (isRelease ? "Release" : "Debug"));
const std::string outputBitness = (isWin32 ? "32" : "64");
std::ofstream properties((setup.outputDir + '/' + PROJECT_DESCRIPTION "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension()).c_str());
std::ofstream properties((setup.outputDir + '/' + setup.projectDescription + "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension()).c_str());
if (!properties)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_DESCRIPTION "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension() + "\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectDescription + "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension() + "\" for writing");
properties << "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
"<Project DefaultTargets=\"Build\" ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\">\n"
"\t<ImportGroup Label=\"PropertySheets\">\n"
"\t\t<Import Project=\"" << PROJECT_DESCRIPTION << "_Global" << (isWin32 ? "" : "64") << ".props\" />\n"
"\t\t<Import Project=\"" << setup.projectDescription << "_Global" << (isWin32 ? "" : "64") << ".props\" />\n"
"\t</ImportGroup>\n"
"\t<PropertyGroup>\n"
"\t\t<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>\n"
"\t\t<_PropertySheetDisplayName>" << PROJECT_DESCRIPTION << "_" << outputType << outputBitness << "</_PropertySheetDisplayName>\n"
"\t\t<_PropertySheetDisplayName>" << setup.projectDescription << "_" << outputType << outputBitness << "</_PropertySheetDisplayName>\n"
"\t\t<LinkIncremental>" << (isRelease ? "false" : "true") << "</LinkIncremental>\n"
"\t</PropertyGroup>\n"
"\t<ItemDefinitionGroup>\n"

View File

@ -40,9 +40,9 @@ protected:
void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation,
const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix);
void writeReferences(std::ofstream &output);
void writeReferences(const BuildSetup &setup, std::ofstream &output);
void outputGlobalPropFile(std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents);
void outputGlobalPropFile(const BuildSetup &setup, std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents);
void createBuildProp(const BuildSetup &setup, bool isRelease, bool isWin32, bool enableAnalysis);

View File

@ -36,33 +36,36 @@ MSVCProvider::MSVCProvider(StringList &global_warnings, std::map<std::string, St
}
void MSVCProvider::createWorkspace(const BuildSetup &setup) {
UUIDMap::const_iterator svmUUID = _uuidMap.find(PROJECT_NAME);
UUIDMap::const_iterator svmUUID = _uuidMap.find(setup.projectName);
if (svmUUID == _uuidMap.end())
error("No UUID for \"" PROJECT_NAME "\" project created");
error("No UUID for \"" + setup.projectName + "\" project created");
const std::string svmProjectUUID = svmUUID->second;
assert(!svmProjectUUID.empty());
std::string solutionUUID = createUUID();
std::ofstream solution((setup.outputDir + '/' + PROJECT_NAME ".sln").c_str());
std::ofstream solution((setup.outputDir + '/' + setup.projectName + ".sln").c_str());
if (!solution)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_NAME ".sln\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectName + ".sln\" for writing");
solution << "Microsoft Visual Studio Solution File, Format Version " << _version + 1 << ".00\n";
solution << "# Visual Studio " << getVisualStudioVersion() << "\n";
solution << "Project(\"{" << solutionUUID << "}\") = \"" << PROJECT_NAME << "\", \"" << PROJECT_NAME << getProjectExtension() << "\", \"{" << svmProjectUUID << "}\"\n";
// Write main project
if (!setup.devTools) {
solution << "Project(\"{" << solutionUUID << "}\") = \"" << setup.projectName << "\", \"" << setup.projectName << getProjectExtension() << "\", \"{" << svmProjectUUID << "}\"\n";
// Project dependencies are moved to vcxproj files in Visual Studio 2010
if (_version < 10)
writeReferences(solution);
// Project dependencies are moved to vcxproj files in Visual Studio 2010
if (_version < 10)
writeReferences(setup, solution);
solution << "EndProject\n";
solution << "EndProject\n";
}
// Note we assume that the UUID map only includes UUIDs for enabled engines!
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
if (i->first == setup.projectName)
continue;
solution << "Project(\"{" << solutionUUID << "}\") = \"" << i->first << "\", \"" << i->first << getProjectExtension() << "\", \"{" << i->second << "}\"\n"
@ -117,16 +120,16 @@ void MSVCProvider::createOtherBuildFiles(const BuildSetup &setup) {
}
void MSVCProvider::createGlobalProp(const BuildSetup &setup) {
std::ofstream properties((setup.outputDir + '/' + PROJECT_DESCRIPTION "_Global" + getPropertiesExtension()).c_str());
std::ofstream properties((setup.outputDir + '/' + setup.projectDescription + "_Global" + getPropertiesExtension()).c_str());
if (!properties)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_DESCRIPTION "_Global" + getPropertiesExtension() + "\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectDescription + "_Global" + getPropertiesExtension() + "\" for writing");
outputGlobalPropFile(properties, 32, setup.defines, convertPathToWin(setup.filePrefix), setup.runBuildEvents);
outputGlobalPropFile(setup, properties, 32, setup.defines, convertPathToWin(setup.filePrefix), setup.runBuildEvents);
properties.close();
properties.open((setup.outputDir + '/' + PROJECT_DESCRIPTION "_Global64" + getPropertiesExtension()).c_str());
properties.open((setup.outputDir + '/' + setup.projectDescription + "_Global64" + getPropertiesExtension()).c_str());
if (!properties)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_DESCRIPTION "_Global64" + getPropertiesExtension() + "\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectDescription + "_Global64" + getPropertiesExtension() + "\" for writing");
// HACK: We must disable the "nasm" feature for x64. To achieve that we must duplicate the feature list and
// recreate a define list.
@ -140,7 +143,7 @@ void MSVCProvider::createGlobalProp(const BuildSetup &setup) {
x64Defines.push_back("WIN32");
x64Defines.push_back("SDL_BACKEND");
outputGlobalPropFile(properties, 64, x64Defines, convertPathToWin(setup.filePrefix), setup.runBuildEvents);
outputGlobalPropFile(setup, properties, 64, x64Defines, convertPathToWin(setup.filePrefix), setup.runBuildEvents);
}
std::string MSVCProvider::getPreBuildEvent() const {

View File

@ -58,7 +58,7 @@ protected:
* @param prefix File prefix, used to add additional include paths.
* @param runBuildEvents true if generating a revision number, false otherwise
*/
virtual void outputGlobalPropFile(std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) = 0;
virtual void outputGlobalPropFile(const BuildSetup &setup, std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) = 0;
/**
* Generates the project properties for debug and release settings.

View File

@ -83,7 +83,7 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
// Check for project-specific warnings:
std::map< std::string, std::list<std::string> >::iterator warningsIterator = _projectWarnings.find(name);
if (name == PROJECT_NAME) {
if (setup.devTools || name == setup.projectName) {
std::string libraries;
for (StringList::const_iterator i = setup.libraries.begin(); i != setup.libraries.end(); ++i)
@ -115,12 +115,12 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
toolConfig += (name == "grim" ? "DisableLanguageExtensions=\"false\" " : "");
// Win32
outputConfiguration(project, toolConfig, "Debug", "Win32", "");
outputConfiguration(project, toolConfig, "Analysis", "Win32", "");
outputConfiguration(project, toolConfig, "Release", "Win32", "");
outputConfiguration(project, toolConfig, "Debug", "x64", "64");
outputConfiguration(project, toolConfig, "Analysis", "x64", "64");
outputConfiguration(project, toolConfig, "Release", "x64", "64");
outputConfiguration(setup, project, toolConfig, "Debug", "Win32", "");
outputConfiguration(setup, project, toolConfig, "Analysis", "Win32", "");
outputConfiguration(setup, project, toolConfig, "Release", "Win32", "");
outputConfiguration(setup, project, toolConfig, "Debug", "x64", "64");
outputConfiguration(setup, project, toolConfig, "Analysis", "x64", "64");
outputConfiguration(setup, project, toolConfig, "Release", "x64", "64");
}
project << "\t</Configurations>\n"
@ -143,23 +143,23 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
}
void VisualStudioProvider::outputConfiguration(std::ostream &project, const BuildSetup &setup, const std::string &libraries, const std::string &config, const std::string &platform, const std::string &props, const bool isWin32) {
project << "\t\t<Configuration Name=\"" << config << "|" << platform << "\" ConfigurationType=\"1\" InheritedPropertySheets=\".\\" << PROJECT_DESCRIPTION << "_" << config << props << ".vsprops\">\n"
project << "\t\t<Configuration Name=\"" << config << "|" << platform << "\" ConfigurationType=\"1\" InheritedPropertySheets=\".\\" << setup.projectDescription << "_" << config << props << ".vsprops\">\n"
"\t\t\t<Tool\tName=\"VCCLCompilerTool\" DisableLanguageExtensions=\"false\" />\n"
"\t\t\t<Tool\tName=\"VCLinkerTool\" OutputFile=\"$(OutDir)/" << PROJECT_NAME << ".exe\"\n"
"\t\t\t<Tool\tName=\"VCLinkerTool\" OutputFile=\"$(OutDir)/" << setup.projectName << ".exe\"\n"
"\t\t\t\tAdditionalDependencies=\"" << libraries << "\"\n"
"\t\t\t/>\n";
outputBuildEvents(project, setup, isWin32);
project << "\t\t</Configuration>\n";
}
void VisualStudioProvider::outputConfiguration(std::ostream &project, const std::string &toolConfig, const std::string &config, const std::string &platform, const std::string &props) {
project << "\t\t<Configuration Name=\"" << config << "|" << platform << "\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\" << PROJECT_DESCRIPTION << "_" << config << props << ".vsprops\">\n"
void VisualStudioProvider::outputConfiguration(const BuildSetup &setup, std::ostream &project, const std::string &toolConfig, const std::string &config, const std::string &platform, const std::string &props) {
project << "\t\t<Configuration Name=\"" << config << "|" << platform << "\" ConfigurationType=\"4\" InheritedPropertySheets=\".\\" << setup.projectDescription << "_" << config << props << ".vsprops\">\n"
"\t\t\t<Tool Name=\"VCCLCompilerTool\" "<< toolConfig << "/>\n"
"\t\t</Configuration>\n";
}
void VisualStudioProvider::outputBuildEvents(std::ostream &project, const BuildSetup &setup, const bool isWin32) {
if (setup.runBuildEvents) {
if (!setup.devTools && setup.runBuildEvents) {
project << "\t\t\t<Tool\tName=\"VCPreBuildEventTool\"\n"
"\t\t\t\tCommandLine=\"" << getPreBuildEvent() << "\"\n"
"\t\t\t/>\n"
@ -169,11 +169,11 @@ void VisualStudioProvider::outputBuildEvents(std::ostream &project, const BuildS
}
}
void VisualStudioProvider::writeReferences(std::ofstream &output) {
void VisualStudioProvider::writeReferences(const BuildSetup &setup, std::ofstream &output) {
output << "\tProjectSection(ProjectDependencies) = postProject\n";
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
if (i->first == PROJECT_NAME)
if (i->first == setup.projectName)
continue;
output << "\t\t{" << i->second << "} = {" << i->second << "}\n";
@ -182,7 +182,7 @@ void VisualStudioProvider::writeReferences(std::ofstream &output) {
output << "\tEndProjectSection\n";
}
void VisualStudioProvider::outputGlobalPropFile(std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) {
void VisualStudioProvider::outputGlobalPropFile(const BuildSetup &setup, std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents) {
std::string warnings;
for (StringList::const_iterator i = _globalWarnings.begin(); i != _globalWarnings.end(); ++i)
warnings += *i + ';';
@ -202,17 +202,17 @@ void VisualStudioProvider::outputGlobalPropFile(std::ofstream &properties, int b
"<VisualStudioPropertySheet\n"
"\tProjectType=\"Visual C++\"\n"
"\tVersion=\"8.00\"\n"
"\tName=\"" << PROJECT_DESCRIPTION << "_Global\"\n"
"\tName=\"" << setup.projectDescription << "_Global\"\n"
"\tOutputDirectory=\"$(ConfigurationName)" << bits << "\"\n"
"\tIntermediateDirectory=\"$(ConfigurationName)" << bits << "/$(ProjectName)\"\n"
"\t>\n"
"\t<Tool\n"
"\t\tName=\"VCCLCompilerTool\"\n"
"\t\tDisableLanguageExtensions=\"true\"\n"
"\t\tDisableLanguageExtensions=\"" << (setup.devTools ? "false" : "true") << "\"\n"
"\t\tDisableSpecificWarnings=\"" << warnings << "\"\n"
"\t\tAdditionalIncludeDirectories=\"" << prefix << ";" << prefix << "\\engines;$(" << LIBS_DEFINE << ")\\include;$(TargetDir)\"\n"
"\t\tPreprocessorDefinitions=\"" << definesList << "\"\n"
"\t\tExceptionHandling=\"0\"\n";
"\t\tExceptionHandling=\"" << (setup.devTools ? "1" : "0") << "\"\n";
#if NEEDS_RTTI
properties << "\t\tRuntimeTypeInfo=\"true\"\n";
@ -231,9 +231,12 @@ void VisualStudioProvider::outputGlobalPropFile(std::ofstream &properties, int b
"\t<Tool\n"
"\t\tName=\"VCLinkerTool\"\n"
"\t\tIgnoreDefaultLibraryNames=\"\"\n"
"\t\tSubSystem=\"1\"\n"
"\t\tEntryPointSymbol=\"WinMainCRTStartup\"\n"
"\t\tAdditionalLibraryDirectories=\"$(" << LIBS_DEFINE << ")\\lib\\" << ((bits == 32) ? "x86" : "x64") << "\"\n"
"\t\tSubSystem=\"1\"\n";
if (!setup.devTools)
properties << "\t\tEntryPointSymbol=\"WinMainCRTStartup\"\n";
properties << "\t\tAdditionalLibraryDirectories=\"$(" << LIBS_DEFINE << ")\\lib\\" << ((bits == 32) ? "x86" : "x64") << "\"\n"
"\t/>\n"
"\t<Tool\n"
"\t\tName=\"VCResourceCompilerTool\"\n"
@ -248,16 +251,16 @@ void VisualStudioProvider::createBuildProp(const BuildSetup &setup, bool isRelea
const std::string outputType = (enableAnalysis ? "Analysis" : (isRelease ? "Release" : "Debug"));
const std::string outputBitness = (isWin32 ? "32" : "64");
std::ofstream properties((setup.outputDir + '/' + PROJECT_DESCRIPTION "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension()).c_str());
std::ofstream properties((setup.outputDir + '/' + setup.projectDescription + "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension()).c_str());
if (!properties)
error("Could not open \"" + setup.outputDir + '/' + PROJECT_DESCRIPTION "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension() + "\" for writing");
error("Could not open \"" + setup.outputDir + '/' + setup.projectDescription + "_" + outputType + (isWin32 ? "" : "64") + getPropertiesExtension() + "\" for writing");
properties << "<?xml version=\"1.0\" encoding=\"Windows-1252\"?>\n"
"<VisualStudioPropertySheet\n"
"\tProjectType=\"Visual C++\"\n"
"\tVersion=\"8.00\"\n"
"\tName=\"" << PROJECT_DESCRIPTION << "_" << outputType << outputBitness << "\"\n"
"\tInheritedPropertySheets=\".\\" << PROJECT_DESCRIPTION << "_Global" << (isWin32 ? "" : "64") << ".vsprops\"\n"
"\tName=\"" << setup.projectDescription << "_" << outputType << outputBitness << "\"\n"
"\tInheritedPropertySheets=\".\\" << setup.projectDescription << "_Global" << (isWin32 ? "" : "64") << ".vsprops\"\n"
"\t>\n"
"\t<Tool\n"
"\t\tName=\"VCCLCompilerTool\"\n";

View File

@ -38,9 +38,9 @@ protected:
void writeFileListToProject(const FileNode &dir, std::ofstream &projectFile, const int indentation,
const StringList &duplicate, const std::string &objPrefix, const std::string &filePrefix);
void writeReferences(std::ofstream &output);
void writeReferences(const BuildSetup &setup, std::ofstream &output);
void outputGlobalPropFile(std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents);
void outputGlobalPropFile(const BuildSetup &setup, std::ofstream &properties, int bits, const StringList &defines, const std::string &prefix, bool runBuildEvents);
void createBuildProp(const BuildSetup &setup, bool isRelease, bool isWin32, bool enableAnalysis);
@ -49,7 +49,7 @@ protected:
int getVisualStudioVersion();
void outputConfiguration(std::ostream &project, const BuildSetup &setup, const std::string &libraries, const std::string &config, const std::string &platform, const std::string &props, const bool isWin32);
void outputConfiguration(std::ostream &project, const std::string &toolConfig, const std::string &config, const std::string &platform, const std::string &props);
void outputConfiguration(const BuildSetup &setup, std::ostream &project, const std::string &toolConfig, const std::string &config, const std::string &platform, const std::string &props);
void outputBuildEvents(std::ostream &project, const BuildSetup &setup, const bool isWin32);
};

View File

@ -1,20 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "create_toon", "create_toon.vcproj", "{5F280130-349D-11DD-AE16-0800200C9A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.ActiveCfg = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Debug|Win32.Build.0 = Debug|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.ActiveCfg = Release|Win32
{5F280130-349D-11DD-AE16-0800200C9A66}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -1,187 +0,0 @@
<?xml version="1.0" encoding="windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="create_toon"
ProjectGUID="{5F280130-349D-11DD-AE16-0800200C9A66}"
RootNamespace="create_toon"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\.."
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_toon.exe"
LinkIncremental="2"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(OutDir)/create_toon.pdb"
SubSystem="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/wd4996"
Optimization="3"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/create_toon.exe"
LinkIncremental="1"
IgnoreDefaultLibraryNames="libc.lib;libcmt.lib"
GenerateDebugInformation="true"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath="..\..\create_toon.cpp"
>
</File>
<File
RelativePath="..\..\create_toon.h"
>
</File>
<File
RelativePath="..\..\staticdata.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -515,6 +515,11 @@ begin_credits("Credits");
add_person("Ludvig Strigeus", "ludde", "(retired)");
end_section();
begin_section("CGE");
add_person("Arnaud Boutonn&eacute;", "Strangerke", "");
add_person("Paul Gilbert", "dreammaster", "");
end_section();
begin_section("Cine");
add_person("Vincent Hamm", "yaz0r", "(retired)");
add_person("Pawe&#322; Ko&#322;odziejski", "aquadran", "");
@ -720,7 +725,8 @@ begin_credits("Credits");
end_section();
begin_section("Maemo");
add_person("Frantisek Dufka", "fanoush", "");
add_person("Frantisek Dufka", "fanoush", "(retired)");
add_person("Tarek Soliman", "tsoliman", "");
end_section();
begin_section("Nintendo 64");

View File

@ -472,7 +472,6 @@ fbpack Fatty Bear's Fun Pack
freddi Freddi Fish 1: The Case of the Missing Kelp Seeds
d4cccb5af88f3e77f370896e9ba8c5f9 -1 All Windows HE 71 - - sev
c0039ad982999c92d0de81910d640fa0 -1 nl Windows HE 71 - - adutchguy
e63a0b9249b5ca4cc4d3ac34305ae360 -1 nb Windows HE 71 - - Karl Ove Hufthammer
68530d2e15f339fbbf3150b78b4d2ffb -1 en Mac HE 73 - - satz
6d1baa1065ac5f7b210be8ebe4235e49 -1 nl Mac HE 73 - - daniel9
c782fbbe74a987c3df8ac73cd3e289ed -1 se Mac HE 73 - - Torbjörn Andersson
@ -485,6 +484,7 @@ freddi Freddi Fish 1: The Case of the Missing Kelp Seeds
746e88c172a5b7a1ae89ac0ee3ee681a -1 ru Windows HE 90 Updated - sev
a197a87ae77f3b3333f09a7a2c448fe2 -1 en Windows HE 99 Updated - Jonathan
af2bd1a43b50b55915d87994e093203d 34829 de Windows HE 99 Updated - Lightkey
e63a0b9249b5ca4cc4d3ac34305ae360 -1 nb Windows HE 99 - - Karl Ove Hufthammer
57a5cfec9ef231a007043cc1917e8988 -1 en Wii HE 100 - - sanguinehearts
56b5922751be7ffd771b38dda56b028b 34837 nl Wii HE 100 - - George Kormendi
3ae7f002d9256b8bdf76aaf8a3a069f8 34837 gb Wii HE 100 - - George Kormendi

View File

@ -1,21 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AsciiCptCompile", "AsciiCptCompile.vcproj", "{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}.Debug.ActiveCfg = Debug|Win32
{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}.Debug.Build.0 = Debug|Win32
{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}.Release.ActiveCfg = Release|Win32
{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

View File

@ -1,402 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="AsciiCptCompile"
ProjectGUID="{BDAC73AF-42DE-45E7-95A8-C1D906AD19EF}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="5"
UsePrecompiledHeader="3"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="4"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/AsciiCptCompile.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/AsciiCptCompile.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="4"
UsePrecompiledHeader="3"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/AsciiCptCompile.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Quelldateien"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
<File
RelativePath=".\AsciiCptCompile.cpp">
</File>
<File
RelativePath=".\cptcompiler.cpp">
</File>
<File
RelativePath=".\cpthelp.cpp">
</File>
<File
RelativePath=".\idFinder.cpp">
</File>
<File
RelativePath=".\KmpSearch.cpp">
</File>
<File
RelativePath=".\stdafx.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
</File>
<File
RelativePath=".\TextFile.cpp">
</File>
</Filter>
<Filter
Name="Headerdateien"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
<File
RelativePath=".\cpthelp.h">
</File>
<File
RelativePath=".\KmpSearch.h">
</File>
<File
RelativePath=".\stdafx.h">
</File>
<File
RelativePath=".\TextFile.h">
</File>
</Filter>
<Filter
Name="Ressourcendateien"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
<File
RelativePath=".\asmSrc\0compact.inc">
</File>
<File
RelativePath=".\asmSrc\101comp.inc">
</File>
<File
RelativePath=".\asmSrc\102comp.inc">
</File>
<File
RelativePath=".\asmSrc\10comp.inc">
</File>
<File
RelativePath=".\asmSrc\11comp.inc">
</File>
<File
RelativePath=".\asmSrc\12comp.inc">
</File>
<File
RelativePath=".\asmSrc\13comp.inc">
</File>
<File
RelativePath=".\asmSrc\14comp.inc">
</File>
<File
RelativePath=".\asmSrc\15comp.inc">
</File>
<File
RelativePath=".\asmSrc\16comp.inc">
</File>
<File
RelativePath=".\asmSrc\17comp.inc">
</File>
<File
RelativePath=".\asmSrc\18comp.inc">
</File>
<File
RelativePath=".\asmSrc\19comp.inc">
</File>
<File
RelativePath=".\asmSrc\1compact.inc">
</File>
<File
RelativePath=".\asmSrc\20comp.inc">
</File>
<File
RelativePath=".\asmSrc\21comp.inc">
</File>
<File
RelativePath=".\asmSrc\22comp.inc">
</File>
<File
RelativePath=".\asmSrc\23comp.inc">
</File>
<File
RelativePath=".\asmSrc\24comp.inc">
</File>
<File
RelativePath=".\asmSrc\25comp.inc">
</File>
<File
RelativePath=".\asmSrc\26comp.inc">
</File>
<File
RelativePath=".\asmSrc\27comp.inc">
</File>
<File
RelativePath=".\288diff.txt">
</File>
<File
RelativePath=".\asmSrc\28comp.inc">
</File>
<File
RelativePath=".\asmSrc\29comp.inc">
</File>
<File
RelativePath=".\asmSrc\2compact.inc">
</File>
<File
RelativePath=".\asmSrc\30comp.inc">
</File>
<File
RelativePath=".\asmSrc\31comp.inc">
</File>
<File
RelativePath=".\asmSrc\32comp.inc">
</File>
<File
RelativePath=".\asmSrc\33comp.inc">
</File>
<File
RelativePath=".\asmSrc\34comp.inc">
</File>
<File
RelativePath=".\asmSrc\36comp.inc">
</File>
<File
RelativePath=".\asmSrc\37comp.inc">
</File>
<File
RelativePath=".\asmSrc\38comp.inc">
</File>
<File
RelativePath=".\asmSrc\39comp.inc">
</File>
<File
RelativePath=".\asmSrc\3compact.inc">
</File>
<File
RelativePath=".\asmSrc\40comp.inc">
</File>
<File
RelativePath=".\asmSrc\41comp.inc">
</File>
<File
RelativePath=".\asmSrc\42comp.inc">
</File>
<File
RelativePath=".\asmSrc\44comp.inc">
</File>
<File
RelativePath=".\asmSrc\45comp.inc">
</File>
<File
RelativePath=".\asmSrc\46comp.inc">
</File>
<File
RelativePath=".\asmSrc\47comp.inc">
</File>
<File
RelativePath=".\asmSrc\48comp.inc">
</File>
<File
RelativePath=".\asmSrc\4compact.inc">
</File>
<File
RelativePath=".\asmSrc\5compact.inc">
</File>
<File
RelativePath=".\asmSrc\65comp.inc">
</File>
<File
RelativePath=".\asmSrc\66comp.inc">
</File>
<File
RelativePath=".\asmSrc\67comp.inc">
</File>
<File
RelativePath=".\asmSrc\68comp.inc">
</File>
<File
RelativePath=".\asmSrc\69comp.inc">
</File>
<File
RelativePath=".\asmSrc\70comp.inc">
</File>
<File
RelativePath=".\asmSrc\71comp.inc">
</File>
<File
RelativePath=".\asmSrc\72comp.inc">
</File>
<File
RelativePath=".\asmSrc\73comp.inc">
</File>
<File
RelativePath=".\asmSrc\74comp.inc">
</File>
<File
RelativePath=".\asmSrc\75comp.inc">
</File>
<File
RelativePath=".\asmSrc\76comp.inc">
</File>
<File
RelativePath=".\asmSrc\77comp.inc">
</File>
<File
RelativePath=".\asmSrc\78comp.inc">
</File>
<File
RelativePath=".\asmSrc\79comp.inc">
</File>
<File
RelativePath=".\asmSrc\80comp.inc">
</File>
<File
RelativePath=".\asmSrc\81comp.inc">
</File>
<File
RelativePath=".\asmSrc\82comp.inc">
</File>
<File
RelativePath=".\asmSrc\85comp.inc">
</File>
<File
RelativePath=".\asmSrc\90comp.inc">
</File>
<File
RelativePath=".\asmSrc\91comp.inc">
</File>
<File
RelativePath=".\asmSrc\92comp.inc">
</File>
<File
RelativePath=".\asmSrc\93comp.inc">
</File>
<File
RelativePath=".\asmSrc\94comp.inc">
</File>
<File
RelativePath=".\asmSrc\95comp.inc">
</File>
<File
RelativePath=".\asmSrc\96comp.inc">
</File>
<File
RelativePath=".\asmSrc\9compact.inc">
</File>
<File
RelativePath=".\COMPACT.TXT">
</File>
<File
RelativePath=".\savedata.txt">
</File>
</Filter>
<File
RelativePath=".\ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@ -336,11 +336,16 @@ waitexam: ;call delpointer
jz notuseinv
mov bx,offset cs:withlist1
notuseinv: call checkcoords
cmp quitrequested, 0
jnz stopwaiting
cmp examagain,0
jz norex
jmp examineagain
norex: cmp getback,0
jz waitexam
stopwaiting:
mov pickup,0
cmp watchingtime,0

View File

@ -51,6 +51,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'printchar',
'printdirect',
'printslow',
'printmessage',
'usetimedtext',
'dumptimedtext',
'setuptimedtemp',
@ -107,6 +108,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'doblocks',
'checkifperson',
'checkiffree',
'checkifex',
'getreelstart',
'findobname',
'copyname',
@ -142,9 +144,11 @@ generator = cpp(context, "DreamGen", blacklist = [
'placesetobject',
'removesetobject',
'showallfree',
'showallex',
'adjustlen',
'finishedwalking',
'checkone',
'getblockofpixel',
'getflagunderp',
'walkandexamine',
'obname',
@ -162,6 +166,39 @@ generator = cpp(context, "DreamGen", blacklist = [
'readmouse4',
'waitframes',
'drawflags',
'addtopeoplelist',
'getexpos',
'paneltomap',
'maptopanel',
'dumpmap',
'obpicture',
'delthisone',
'transferinv',
'obicons',
'compare',
'pixelcheckset',
'turnpathon',
'turnpathoff',
'turnanypathon',
'turnanypathoff',
'isitdescribed',
'checkifset',
'checkifpathison',
'delsprite',
'dumpeverything',
'isitworn',
'makeworn',
'obtoinv',
'showryanpage',
'findallryan',
'fillryan',
'useroutine',
'hangon',
'hangonp',
'findnextcolon',
'usetext',
'bresenhams',
'examineobtext',
], skip_output = [
# These functions are processed but not output
'dreamweb',

View File

@ -4,6 +4,25 @@
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>ca</string>
<string>cs</string>
<string>da</string>
<string>de</string>
<string>es</string>
<string>fr</string>
<string>hu</string>
<string>it</string>
<string>nb</string>
<string>nn</string>
<string>pl</string>
<string>pt</string>
<string>ru</string>
<string>se</string>
<string>uk</string>
</array>
<key>CFBundleDisplayName</key>
<string>ScummVM</string>
<key>CFBundleExecutable</key>

View File

@ -4,6 +4,25 @@
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>ca</string>
<string>cs</string>
<string>da</string>
<string>de</string>
<string>es</string>
<string>fr</string>
<string>hu</string>
<string>it</string>
<string>nb</string>
<string>nn</string>
<string>pl</string>
<string>pt</string>
<string>ru</string>
<string>se</string>
<string>uk</string>
</array>
<key>CFBundleDisplayName</key>
<string>ScummVM</string>
<key>CFBundleExecutable</key>

View File

@ -8,6 +8,8 @@ if "%~1"=="/stable" goto stable
if "%~1"=="/STABLE" goto stable
if "%~1"=="/all" goto all
if "%~1"=="/ALL" goto all
if "%~1"=="/tools" goto tools
if "%~1"=="/TOOLS" goto tools
if "%~1"=="/clean" goto clean_check
if "%~1"=="/CLEAN" goto clean_check
if "%~1"=="/help" goto command_help
@ -23,6 +25,7 @@ echo.
echo Valid command parameters are:
echo stable Generated stable engines project files
echo all Generate all engines project files
echo tools Generate project files for the devtools
echo clean Clean generated project files
echo help Show help message
goto done
@ -60,6 +63,13 @@ echo.
create_project ..\.. --msvc --msvc-version 10
goto done
:tools
echo.
echo Creating tools project files
echo.
create_project ..\.. --tools --msvc --msvc-version 10
goto done
:clean_check
echo.
set cleananswer=N
@ -77,6 +87,7 @@ del /Q *.vcxproj* > NUL 2>&1
del /Q *.props > NUL 2>&1
del /Q *.sln* > NUL 2>&1
del /Q scummvm* > NUL 2>&1
del /Q devtools* > NUL 2>&1
goto done
:done

View File

@ -8,6 +8,8 @@ if "%~1"=="/stable" goto stable
if "%~1"=="/STABLE" goto stable
if "%~1"=="/all" goto all
if "%~1"=="/ALL" goto all
if "%~1"=="/tools" goto tools
if "%~1"=="/TOOLS" goto tools
if "%~1"=="/clean" goto clean_check
if "%~1"=="/CLEAN" goto clean_check
if "%~1"=="/help" goto command_help
@ -23,6 +25,7 @@ echo.
echo Valid command parameters are:
echo stable Generated stable engines project files
echo all Generate all engines project files
echo tools Generate project files for the devtools
echo clean Clean generated project files
echo help Show help message
goto done
@ -60,6 +63,13 @@ echo.
create_project ..\.. --msvc --msvc-version 8
goto done
:tools
echo.
echo Creating tools project files
echo.
create_project ..\.. --tools --msvc --msvc-version 8
goto done
:clean_check
echo.
set cleananswer=N
@ -77,6 +87,7 @@ del /Q *.vcproj* > NUL 2>&1
del /Q *.vsprops > NUL 2>&1
del /Q *.sln* > NUL 2>&1
del /Q scummvm* > NUL 2>&1
del /Q devtools* > NUL 2>&1
goto done
:done

View File

@ -8,6 +8,8 @@ if "%~1"=="/stable" goto stable
if "%~1"=="/STABLE" goto stable
if "%~1"=="/all" goto all
if "%~1"=="/ALL" goto all
if "%~1"=="/tools" goto tools
if "%~1"=="/TOOLS" goto tools
if "%~1"=="/clean" goto clean_check
if "%~1"=="/CLEAN" goto clean_check
if "%~1"=="/help" goto command_help
@ -23,6 +25,7 @@ echo.
echo Valid command parameters are:
echo stable Generated stable engines project files
echo all Generate all engines project files
echo tools Generate project files for the devtools
echo clean Clean generated project files
echo help Show help message
goto done
@ -60,6 +63,13 @@ echo.
create_project ..\.. --msvc --msvc-version 9
goto done
:tools
echo.
echo Creating tools project files
echo.
create_project ..\.. --tools --msvc --msvc-version 9
goto done
:clean_check
echo.
set cleananswer=N
@ -77,6 +87,7 @@ del /Q *.vcproj* > NUL 2>&1
del /Q *.vsprops > NUL 2>&1
del /Q *.sln* > NUL 2>&1
del /Q scummvm* > NUL 2>&1
del /Q devtools* > NUL 2>&1
goto done
:done

View File

@ -46,12 +46,17 @@ Name: {group}\Authors; Filename: {app}\AUTHORS.txt; WorkingDir: {app}; Comment:
Name: {group}\Copying; Filename: {app}\COPYING.txt; WorkingDir: {app}; Comment: COPYING; Flags: createonlyiffileexists
Name: {group}\Copying.LGPL; Filename: {app}\COPYING.LGPL.txt; WorkingDir: {app}; Comment: COPYING.LGPL; Flags: createonlyiffileexists
Name: {group}\Copyright; Filename: {app}\COPYRIGHT.txt; WorkingDir: {app}; Comment: COPYRIGHT; Flags: createonlyiffileexists
Name: {group}\News; Filename: {app}\NEWS.txt; WorkingDir: {app}; Comment: NEWS; Flags: createonlyiffileexists
Name: {group}\QuickStart; Filename: {app}\QUICKSTART.txt; WorkingDir: {app}; Comment: QUICKSTART; Flags: createonlyiffileexists; Languages: not (fr or de)
Name: {group}\QuickStart_fr; Filename: {app}\QuickStart_fr.txt; WorkingDir: {app}; Comment: QuickStart_fr; Flags: createonlyiffileexists; Languages: fr
;NEWS
Name: {group}\News; Filename: {app}\NEWS.txt; WorkingDir: {app}; Comment: NEWS; Flags: createonlyiffileexists; Languages: not de
Name: {group}\Neues; Filename: {app}\Neues.txt; WorkingDir: {app}; Comment: Neues; Flags: createonlyiffileexists; Languages: de
;QUICKSTART
Name: {group}\QuickStart; Filename: {app}\QUICKSTART.txt; WorkingDir: {app}; Comment: QUICKSTART; Flags: createonlyiffileexists; Languages: not (fr or de or nb)
Name: {group}\DemarrageRapide; Filename: {app}\DemarrageRapide.txt; WorkingDir: {app}; Comment: DemarrageRapide; Flags: createonlyiffileexists; Languages: fr
Name: {group}\Schnellstart; Filename: {app}\Schnellstart.txt; WorkingDir: {app}; Comment: Schnellstart; Flags: createonlyiffileexists; Languages: de
Name: {group}\HurtigStart; Filename: {app}\HurtigStart.txt; WorkingDir: {app}; Comment: HurtigStart; Flags: createonlyiffileexists; Languages: nb
;README
Name: {group}\Readme; Filename: {app}\README.txt; WorkingDir: {app}; Comment: README; Flags: createonlyiffileexists; Languages: not de
Name: {group}\Liesmich; Filename: {app}\Liesmich.txt; WorkingDir: {app}; Comment: Liesmich; Flags: createonlyiffileexists; Languages: de
Name: {group}\Schnellstart; Filename: {app}\Schnellstart.txt; WorkingDir: {app}; Comment: Schnellstart; Flags: createonlyiffileexists; Languages: de
[Run]
Filename: {app}\ScummVM.exe; Flags: nowait skipifdoesntexist postinstall skipifsilent
@ -64,10 +69,12 @@ Source: AUTHORS.txt; DestDir: {app}; Flags: ignoreversion
Source: COPYING.txt; DestDir: {app}; Flags: ignoreversion
Source: COPYING.LGPL.txt; DestDir: {app}; Flags: ignoreversion
Source: COPYRIGHT.txt; DestDir: {app}; Flags: ignoreversion
Source: NEWS.txt; DestDir: {app}; Flags: ignoreversion
Source: doc/QUICKSTART.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: not (fr or de)
Source: doc/fr/QuickStart_fr.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: fr
Source: NEWS.txt; DestDir: {app}; Flags: ignoreversion; Languages: not de
Source: doc/de/Neues.txt; DestDir: {app}; Flags: ignoreversion; Languages: de
Source: doc/QUICKSTART.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: not (fr or de or nb)
Source: doc/fr/DemarrageRapide.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: fr
Source: doc/de/Schnellstart.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: de
Source: doc/no-nb/HurtigStart.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: nb
Source: README.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: not de
Source: doc/de/Liesmich.txt; DestDir: {app}; Flags: ignoreversion isreadme; Languages: de
Source: README-SDL.txt; DestDir: {app}; Flags: ignoreversion

1599
doc/de/Neues Normal file

File diff suppressed because it is too large Load Diff

156
doc/no-nb/HurtigStart Normal file
View File

@ -0,0 +1,156 @@
Dette dokumentet er en delvis oversettelse av den engelske README-filen.
Originaldokumentet har vesentlig mer informasjon, så dersom du ikke finner
det du leter etter her, og forstår litt engelsk, kan du prøve å lete videre
i den engelske README-filen.
For mer informasjon, kompatibilitetslister, donasjonsdetaljer, nyeste versjon
av ScummVM, fremdriftsoversikt med mer, besøk ScummVMs hjemmeside på:
http://www.scummvm.org/
Innholdsfortegnelse:
-------------------
1.0) Introduksjon
* 1.1 Om ScummVM
* 1.2 Hurtigstart
2.0) Kontaktinfo
* 2.1 Rapportering av Bugs
1.0) Introduksjon:
---- -------------
1.1) Om ScummVM:
---- --------------
ScummVM er et program som lar deg kjøre visse klassiske grafiske
pek-og-klikk eventyrspill hvis du har datafilene til disse fra før.
Den interessante detaljen er at ScummVM bare erstatter programfilene
som kom med spillet, slik at du kan spille spillene på systemer de
aldri ble designet for i grunnlaget.
Opprinnelig var ScummVM bare designet for å kjøre LucasArts sine SCUMM-
spill, slik som Maniac Mansion, Monkey Island, Day of The Tentacle eller
Sam and Max. SCUMM står for «Script Creation Utility for Maniac Mansion»,
(Skriptproduksjonsverktøy for Maniac Mansion), som var det første spillet
LucasArts designet for dette systemet. I nyere tid har det da også døpt
ScummVM (der 'VM' betyr Virtuell Maskin).
Over tid har det blitt lagt til støtte for flere ikke-SCUMM-spill, så
ScummVM støtter nå også mange av Sierras AGI og SCI-spill (slik som
King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 og 2, Simon the
Sorcerer 1 og 2, Beneath A Steel Sky, Lure of the Temptress, Broken
Sword I og II, Flight of the Amazon Queen, Gobliiins 1-3, The Legend of
Kyrandia-serien, mange av Humongous Entertainment sine SCUMM-spill for
barn (inkludert Freddi Fish-, og Putt Putt-spillene) mfl. Du finner
en utfyllende liste med detaljer rundt hvilke eventyrspill som støttes,
og hvor godt de støttes på kompatibilitets-siden. ScummVM forbedres
stadig, så det kan lønne seg å kikke innom med jevne mellomrom.
Blant systemene som spillene nå kan spilles på, finner vi vanlige
stasjonære datamaskiner (med Windows, Linux, Mac OS X, etc), spillkonsoller
(Dreamcast, Nintendo DS & Wii, PS2, PSP, ...), smarttelefoner (Android,
iPhone, PocketPC, Symbian ...) mfl.
På nåværende tidspunkt er ScummVM fortsatt under kraftig utvikling. Så
være obs på at selv om vi forsøker å sikre oss at de fleste spillene kan
fullføres uten større feil og mangler, kan det forekomme at spill krasjer,
og vi gir ingen garanti for at ting fungerer. Når det er sagt, så har
enkelte av spillene vært støttet i lang tid, og bør fungere finfint med
enhver ny «stable»-versjon av ScummVM. Du kan finne en pekepinn på hvor
godt hvert enkelt spill fungerer ved å se på kompatibilitetssiden vår.
Faktisk, hvis man ser litt rundtom på nettet, vil man oppdage at ScummVM
brukes kommersielt for å relansere noen av de støttede spillene på moderne
platformer. Dette viser at flere firma er fornøyd med kvaliteten på
programmet, og hvor godt det kjører enkelte av spillene.
Hvis du liker ScummVM, doner gjerne ved å bruke PayPal-knappen på hjemme-
siden vår. Dette hjelper oss til å kunne kjøpe verktøyene vi trenger for
å utvikle ScummVM enklere og mer effektivt. Hvis du ikke kan donere, hjelp
gjerne ved å sende inn en patch.
1.2) Hurtigstart:
---- ------------
VIKTIG: Denne korte gaiden antar at du bruker ScumMVM på bokmål. Som standard
bruker ScummVM samme språk som operativsystemet ditt. Hvis du foretrekker å
bruker ScummVM på engelsk, vil du muligens også foretrekke å følge gaiden
i den engelske README-filen.
For de rastløse; en enkel femstegs-gaid til å få ScummVM opp og kjøre:
1. Last ned ScummVM fra <http://www.scummvm.org/downloads.php> og installer.
2. Lag en mappe på harddisken din, og kopier spill-datafilene fra original-
mediene til denne mappen. Gjenta dette for alle spillene du ønsker å spille.
(Det er en fordel om du bruker en adskilt mappe for hvert spill)
3. Start ScummVM.
Dersom ScummVM starter på engelsk istedenfor på bokmål, gjør følgende
for å endre språk:
- Klikk på «Options».
- Klikk på den høyre pilen i fanelinjen og velg fanen «Misc».
- Velg «Norsk (bokmål)» i «GUI Language» boksen, og klikk OK.
- Godkjenn meldingen som dukker opp, og klikk på «Quit» for å avslutte
ScummVM, start så programmet på nytt.
Velg «Legg til spill», velg mappen som inneholder spillfilene (ikke
prøv å velge datafilene direkte!) og klikk «Velg».
4. Det skal nå dukke opp en dialog som lar deg konfigurere forskjellige
instillinger om det er ønskelig (det fungerer som oftest helt fint å
la standardinstillingene være). Godkjenn denne dialogen.
5. Velg spillet du vil spille i lista, og klikk 'Start'.
ScummVM husker spillene du har lagt til. Så om du lukker ScummVM, vil
listen over spill du har lagt til tidligere fortsatt være der. Derfor
kan du ved senere anledninger gå direkte til steg 5, med mindre du vil
legge til flere spill.
Tips: Om du vil legge til flere spill samtidig, prøv å holde shift-
tasten nede mens du klikker på «Legg til spill» da vil teksten der
forandre seg til «Legg til flere» og om du klikker på den, får du også
samme spørsmål om å velge en mappe, men nå vil ScummVM lete gjennom
alle undermapper etter støttede spill.
2.0) Kontaktinfo:
---- ------------
Den enkleste måten å komme i kontakt med ScummVM-teamet på er ved å
sende inn en bug-rapport, eller ved å bruke forumet du finner på
http://forums.scummvm.org . Du kan også bli med og delta på epost-
listen scummvm-devel , eller chatte med oss på IRC (#scummvm på
irc.freenode.net) Vær så snill å ikke spør oss om å legge til støtte
for et ustøttet spill -- les FAQen på hjemmesiden vår først. Legg merke
til at det offisielle språket på forum, epostliste og chat er engelsk,
så andre språk bør unngås.
2.1) Rapportering av Bugs:
---- ---------------------
For å rapportere en bug, må du lage deg en SourceForge-konto, og følge
«Bug Tracker»-lenken på hjemmesiden vår. Vennligst forsikre deg om at
buggen du skal rapportere kan reproduseres, og at den fortsatt opptrer
i den ferskeste SVN/Daily-versjonen. Sjekk også listen over kjente feil
lenger ned i dette dokumentet, og kompatibilitetslisten på hjemmesiden
vår angående spillet det gjelder, for å forsikre deg om at problemet ikke
allerede har blitt rapportert:
http://www.scummvm.org/compatibility_stable.php
Vennligst ikke rapporter bugs om spill som ikke står listet som
«completable» i «Supported Games»-seksjonen, eller på kompatibilitetslisten.
Vi VET at de spillene har bugs.
Vennligst inkluder følgende informasjon:
- ScummVM-versjon (VÆR SÅ SNILL; test den ferskeste SVN/Daily-builden)
- Bug-detaljer, inkludert instruksjoner om hvordan man reproduserer buggen.
- Spillets språk (Engelsk, Tysk, ...)
- Spillversjon (med tale, diskettversjon, ...)
- Platform og kompilator ( Win32, Linux, FreeBSD, ...)
- Legg ved et lagret spill om mulig
- Dersom denne buggen kun oppsto nylig, vennligst nevn hvilken
versjon som var den siste som ikke hadde problemet. På den måten
kan vi løse problemet raskere ved å kikke på hvilke endringer som
har skjedd.
Til slutt: Vennligst rapporter hvert problem for seg, ikke inkluder
flere problemer i samme rapport. (Ellers blir det problematisk å
holde orden på statusen til hver enkelt bug). Husk også at ALLE
bug-rapporter MÅ skrives på engelsk.

View File

@ -362,9 +362,15 @@ int AgiEngine::agiInit() {
initPriTable();
// clear string buffer
for (i = 0; i < MAX_STRINGS; i++)
_game.strings[i][0] = 0;
// Clear the string buffer on startup, but not when the game restarts, as
// some scripts expect that the game strings remain unaffected after a
// restart. An example is script 98 in SQ2, which is not invoked on restart
// to ask Ego's name again. The name is supposed to be maintained in string 1.
// Fixes bug #3292784.
if (!_restartGame) {
for (i = 0; i < MAX_STRINGS; i++)
_game.strings[i][0] = 0;
}
// setup emulation
@ -519,6 +525,21 @@ AgiBase::~AgiBase() {
}
}
void AgiBase::initRenderMode() {
_renderMode = Common::kRenderEGA;
if (ConfMan.hasKey("platform")) {
Common::Platform platform = Common::parsePlatform(ConfMan.get("platform"));
_renderMode = (platform == Common::kPlatformAmiga) ? Common::kRenderAmiga : Common::kRenderEGA;
}
if (ConfMan.hasKey("render_mode")) {
Common::RenderMode tmpMode = Common::parseRenderMode(ConfMan.get("render_mode").c_str());
if (tmpMode != Common::kRenderDefault)
_renderMode = tmpMode;
}
}
AgiEngine::AgiEngine(OSystem *syst, const AGIGameDescription *gameDesc) : AgiBase(syst, gameDesc) {
// Setup mixer
@ -572,11 +593,7 @@ AgiEngine::AgiEngine(OSystem *syst, const AGIGameDescription *gameDesc) : AgiBas
_predictiveDictLineCount = 0;
_firstSlot = 0;
// NOTE: On game reload the keys do not get set again,
// thus it is incorrect to reset it in agiInit(). Fixes bug #2823762
_game.lastController = 0;
for (int i = 0; i < MAX_DIRS; i++)
_game.controllerOccured[i] = false;
resetControllers();
setupOpcodes();
_game._curLogic = NULL;
@ -618,23 +635,7 @@ void AgiEngine::initialize() {
}
}
if (ConfMan.hasKey("render_mode")) {
_renderMode = Common::parseRenderMode(ConfMan.get("render_mode").c_str());
} else if (ConfMan.hasKey("platform")) {
switch (Common::parsePlatform(ConfMan.get("platform"))) {
case Common::kPlatformAmiga:
_renderMode = Common::kRenderAmiga;
break;
case Common::kPlatformPC:
_renderMode = Common::kRenderEGA;
break;
default:
_renderMode = Common::kRenderEGA;
break;
}
} else {
_renderMode = Common::kRenderDefault;
}
initRenderMode();
_buttonStyle = AgiButtonStyle(_renderMode);
_defaultButtonStyle = AgiButtonStyle();

View File

@ -124,7 +124,6 @@ enum AgiGameID {
GID_XMASCARD,
GID_FANMADE,
GID_GETOUTTASQ, // Fanmade
GID_SQ0, // Fanmade
GID_MICKEY, // PreAGI
GID_WINNIE, // PreAGI
GID_TROLL // PreAGI
@ -614,7 +613,6 @@ struct AgiGame {
bool controllerOccured[MAX_DIRS]; /**< keyboard keypress events */
AgiController controllers[MAX_CONTROLLERS];
int lastController;
char strings[MAX_STRINGS + 1][MAX_STRINGLEN]; /**< strings */
@ -778,6 +776,8 @@ protected:
virtual void initialize() = 0;
void initRenderMode();
public:
GfxMgr *_gfx;
@ -809,8 +809,8 @@ public:
virtual void replayImageStackCall(uint8 type, int16 p1, int16 p2, int16 p3,
int16 p4, int16 p5, int16 p6, int16 p7) = 0;
virtual void releaseImageStack() = 0;
virtual int saveGame(const char *fileName, const char *saveName) = 0;
virtual int loadGame(const char *fileName, bool checkId = true) = 0;
virtual int saveGame(const Common::String &fileName, const Common::String &saveName) = 0;
virtual int loadGame(const Common::String &fileName, bool checkId = true) = 0;
int _soundemu;
@ -881,13 +881,13 @@ public:
StringData _stringdata;
const char *getSavegameFilename(int num);
Common::String getSavegameFilename(int num) const;
void getSavegameDescription(int num, char *buf, bool showEmpty = true);
int selectSlot();
int saveGame(const char *fileName, const char *saveName);
int saveGame(const Common::String &fileName, const Common::String &saveName);
int loadGame(const Common::String &fileName, bool checkId = true);
int saveGameDialog();
int saveGameSimple();
int loadGame(const char *fileName, bool checkId = true);
int loadGameDialog();
int loadGameSimple();
@ -1076,7 +1076,7 @@ public:
char *agiSprintf(const char *);
void writeStatus();
void writePrompt();
void clearPrompt();
void clearPrompt(bool useBlackBg = false);
void clearLines(int, int, int);
void flushLines(int, int);
bool predictiveDialog();

View File

@ -384,7 +384,6 @@ int AgiEngine::runGame() {
if (_restartGame) {
setflag(fRestartGame, true);
_game.lastController = 0;
setvar(vTimeDelay, 2); // "normal" speed
_restartGame = false;
}

View File

@ -276,6 +276,8 @@ SaveStateDescriptor AgiMetaEngine::querySaveMetaInfos(const char *target, int sl
SaveStateDescriptor desc(slot, name);
// Do not allow save slot 0 (used for auto-saving) to be deleted or
// overwritten.
desc.setDeletableFlag(slot != 0);
desc.setWriteProtectedFlag(slot == 0);
@ -306,9 +308,12 @@ SaveStateDescriptor AgiMetaEngine::querySaveMetaInfos(const char *target, int sl
delete in;
return desc;
} else {
SaveStateDescriptor emptySave;
// Do not allow save slot 0 (used for auto-saving) to be overwritten.
emptySave.setWriteProtectedFlag(slot == 0);
return emptySave;
}
return SaveStateDescriptor();
}
const ADGameDescription *AgiMetaEngine::fallbackDetect(const FileMap &allFilesXXX, const Common::FSList &fslist) const {

View File

@ -299,8 +299,8 @@ static const AGIGameDescription gameDescriptions[] = {
// King's Quest 2 (IIgs) 2.0A 6/16/88 (CE)
GAME_P("kq2", "2.0A 1988-06-16 (CE)", "5203c8b95250a2ecfee93ddb99414753", 0x2917, GID_KQ2, Common::kPlatformApple2GS),
// King's Quest 2 (Amiga) 2.0J (Broken)
GAME_P("kq2", "2.0J 1987-01-29 [OBJECT decrypted]", "b866f0fab2fad91433a637a828cfa410", 0x2440, GID_KQ2, Common::kPlatformAmiga),
// King's Quest 2 (Amiga) 2.0J
GAME_P("kq2", "2.0J 1987-01-29", "b866f0fab2fad91433a637a828cfa410", 0x2440, GID_KQ2, Common::kPlatformAmiga),
// King's Quest 2 (Mac) 2.0R
GAME_P("kq2", "2.0R 1988-03-23", "cbdb0083317c8e7cfb7ac35da4bc7fdc", 0x2440, GID_KQ2, Common::kPlatformMacintosh),
@ -708,39 +708,11 @@ static const AGIGameDescription gameDescriptions[] = {
FANMADE("Go West, Young Hippie", "ff31484ea465441cb5f3a0f8e956b716"),
FANMADE("Good Man (demo v3.41)", "3facd8a8f856b7b6e0f6c3200274d88c"),
{
// Groza
{
"agi-fanmade",
"Groza (russian) [AGDS sample]",
AD_ENTRY1("logdir", "421da3a18004122a966d64ab6bd86d2e"),
Common::RU_RUS,
Common::kPlatformPC,
ADGF_USEEXTRAASTITLE,
GUIO_NONE
},
GID_FANMADE,
GType_V2,
GF_AGDS,
0x2440
},
GAME_LVFPNF("agi-fanmade", "Groza (russian) [AGDS sample]", "logdir", "421da3a18004122a966d64ab6bd86d2e", -1,
Common::RU_RUS, 0x2440, GF_AGDS, GID_FANMADE, Common::kPlatformPC,GType_V2),
{
// Get Outta SQ
{
"agi-fanmade",
"Get Outta Space Quest",
AD_ENTRY1("logdir", "aaea5b4a348acb669d13b0e6f22d4dc9"),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_USEEXTRAASTITLE,
GUIO_NONE
},
GID_GETOUTTASQ,
GType_V2,
0,
0x2440
},
GAME_LVFPNF("agi-fanmade", "Get Outta Space Quest", "logdir", "aaea5b4a348acb669d13b0e6f22d4dc9", -1,
Common::EN_ANY, 0x2440, GF_FANMADE, GID_GETOUTTASQ, Common::kPlatformPC,GType_V2),
FANMADE_F("Half-Death - Terror At White-Mesa", "b62c05d0ace878261392073f57ae788c", GF_AGIMOUSE),
FANMADE("Hank's Quest (v1.0 English) - Victim of Society", "64c15b3d0483d17888129100dc5af213"),

View File

@ -1192,7 +1192,6 @@ void GfxMgr::flushScreen() {
flushBlock(0, 0, GFX_WIDTH - 1, GFX_HEIGHT - 1);
doUpdate();
g_system->updateScreen();
}
/**

View File

@ -114,7 +114,7 @@ int AgiEngine::handleController(int key) {
debugC(3, kDebugLevelInput, "key = %04x", key);
for (i = 0; i < _game.lastController; i++) {
for (i = 0; i < MAX_CONTROLLERS; i++) {
if (_game.controllers[i].keycode == key) {
debugC(3, kDebugLevelInput, "event %d: key press", _game.controllers[i].controller);
_game.controllerOccured[_game.controllers[i].controller] = true;
@ -180,10 +180,17 @@ int AgiEngine::handleController(int key) {
if (!(getFeatures() & GF_AGIMOUSE)) {
// Handle mouse button events
if (key == BUTTON_LEFT) {
v->flags |= fAdjEgoXY;
v->parm1 = WIN_TO_PIC_X(_mouse.x);
v->parm2 = WIN_TO_PIC_Y(_mouse.y);
return true;
if (getGameID() == GID_PQ1 && _game.vars[vCurRoom] == 116) {
// WORKAROUND: Special handling for mouse clicks in the newspaper
// screen of PQ1. Fixes bug #3018770.
d = 3; // fake a right arrow key (next page)
} else {
// Click-to-walk mouse interface
v->flags |= fAdjEgoXY;
v->parm1 = WIN_TO_PIC_X(_mouse.x);
v->parm2 = WIN_TO_PIC_Y(_mouse.y);
return true;
}
}
}

View File

@ -68,15 +68,20 @@ int AgiEngine::decodeObjects(uint8 *mem, uint32 flen) {
for (i = 0, so = spos; i < _game.numObjects; i++, so += padsize) {
int offset;
(_objects + i)->location = *(mem + so + 2);
_objects[i].location = *(mem + so + 2);
offset = READ_LE_UINT16(mem + so) + spos;
if ((uint) offset < flen) {
(_objects + i)->name = (char *)strdup((const char *)mem + offset);
_objects[i].name = (char *)strdup((const char *)mem + offset);
} else {
warning("object %i name beyond object filesize (%04x > %04x)", i, offset, flen);
(_objects + i)->name = strdup("");
_objects[i].name = strdup("");
}
// Don't show the invalid "?" object in ego's inventory in the fanmade
// game Beyond the Titanic 2 (bug #3116541).
if (!strcmp(_objects[i].name, "?") && _objects[i].location == EGO_OWNED)
_objects[i].location = 0;
}
debug(0, "Reading objects: %d objects read.", _game.numObjects);

Some files were not shown because too many files have changed in this diff Show More