aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Bacca2003-07-13 12:37:16 +0000
committerNicolas Bacca2003-07-13 12:37:16 +0000
commit3e629bbd97ad98952936b57afcb39e27e7a2d136 (patch)
tree7b51f358888406c1567ecb0740488ab0afea5901
parentfb52d4da18227fa02ab9c85bc56259f9ff8c2298 (diff)
downloadscummvm-rg350-3e629bbd97ad98952936b57afcb39e27e7a2d136.tar.gz
scummvm-rg350-3e629bbd97ad98952936b57afcb39e27e7a2d136.tar.bz2
scummvm-rg350-3e629bbd97ad98952936b57afcb39e27e7a2d136.zip
Fix save key (EGA games)
svn-id: r8982
-rw-r--r--backends/wince/smartphone.cpp21
1 files changed, 17 insertions, 4 deletions
diff --git a/backends/wince/smartphone.cpp b/backends/wince/smartphone.cpp
index 15429a0b42..ad71b550e8 100644
--- a/backends/wince/smartphone.cpp
+++ b/backends/wince/smartphone.cpp
@@ -58,6 +58,7 @@ extern void getSelectedGame(int result, char *id, TCHAR *directory, char* is_dem
extern TCHAR* getGameName(int);
extern Engine *engine;
extern bool is_simon;
+extern bool is_bass;
extern bool sound_activated;
extern void Cls();
@@ -295,21 +296,31 @@ void SmartfonRightUp(OSystem_WINCE3 *wm, BOOL repeat) {
void SmartfonSave(OSystem_WINCE3 *wm, BOOL repeat) {
+ if (is_simon)
+ return;
wm->_event.event_code = OSystem::EVENT_KEYDOWN;
- if (g_scumm->_features & GF_OLD256)
+ if (is_bass)
+ wm->_event.kbd.ascii = 63;
+ else
+ if (g_scumm->_version <= 2)
+ wm->_event.kbd.ascii = 5;
+ else
+ if ((g_scumm->_features & GF_OLD256) || (g_scumm->_gameId == GID_CMI) || (g_scumm->_features & GF_16COLOR))
wm->_event.kbd.ascii = 319;
else
- wm->_event.kbd.ascii = g_scumm->VAR_SAVELOADDIALOG_KEY;
+ wm->_event.kbd.ascii = g_scumm->VAR(g_scumm->VAR_SAVELOADDIALOG_KEY);
}
void SmartfonSkip(OSystem_WINCE3 *wm, BOOL repeat) {
- if (is_simon) {
+
+ wm->_event.event_code = OSystem::EVENT_KEYDOWN;
+ if (is_simon || is_bass) {
wm->_event.kbd.ascii = VK_ESCAPE;
return;
}
- wm->_event.event_code = OSystem::EVENT_KEYDOWN;
+ /*
if (g_scumm->vm.cutScenePtr[g_scumm->vm.cutSceneStackPointer] || g_scumm->_insaneState)
wm->_event.kbd.ascii = g_scumm->_vars[g_scumm->VAR_CUTSCENEEXIT_KEY];
else
@@ -317,6 +328,8 @@ void SmartfonSkip(OSystem_WINCE3 *wm, BOOL repeat) {
wm->_event.kbd.ascii = g_scumm->VAR_TALKSTOP_KEY;
else
wm->_event.kbd.ascii = VK_ESCAPE;
+ */
+ wm->_event.kbd.ascii = KEY_ALL_SKIP;
}
void SmartfonBoss(OSystem_WINCE3 *wm, BOOL repeat) {