aboutsummaryrefslogtreecommitdiff
path: root/backends
diff options
context:
space:
mode:
authorLars Persson2006-02-12 00:27:19 +0000
committerLars Persson2006-02-12 00:27:19 +0000
commit37f433a7ad516df85cd62e32e1a178635212b047 (patch)
tree9128c436cc09d6bb2ab1031ee0aeb0c0a28dab5b /backends
parent80cf2fa46ff638ae25fe85a3a89997ceb7f09aae (diff)
downloadscummvm-rg350-37f433a7ad516df85cd62e32e1a178635212b047.tar.gz
scummvm-rg350-37f433a7ad516df85cd62e32e1a178635212b047.tar.bz2
scummvm-rg350-37f433a7ad516df85cd62e32e1a178635212b047.zip
* New and tested builds for S60V3 and UIQ3
* New upscaled icons for UIQ3/S60V3. SVG/Scalable version needed for S60V3 for proper good looks * Critical bug in Symbian-fs fixed (exception for UIQ3/S60V3) *Removed duplicate files for easier maintanence *New handling for Symbian error messages, save paths etc *All naming now is ScummVM for all apps and targets svn-id: r20585
Diffstat (limited to 'backends')
-rw-r--r--backends/epoc/S60/ScummVMApp.cpp166
-rw-r--r--backends/epoc/S60/ScummVMApp.h85
-rw-r--r--backends/epoc/S60/ScummVMS60.rss62
-rw-r--r--backends/epoc/S60/ScummVM_S60_App.mmp13
-rw-r--r--backends/epoc/S60v3/ScummVM.rss46
-rw-r--r--backends/epoc/S60v3/ScummVMApp.cpp165
-rw-r--r--backends/epoc/S60v3/ScummVMApp.h80
-rw-r--r--backends/epoc/S60v3/ScummVM_Loc.rss22
-rw-r--r--backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg11
-rw-r--r--backends/epoc/S60v3/scummvm_reg.rss18
-rw-r--r--backends/epoc/S80/ScummVMApp.cpp168
-rw-r--r--backends/epoc/S80/ScummVM_S80_App.mmp12
-rw-r--r--backends/epoc/S80/ScummvmS80.rss62
-rw-r--r--backends/epoc/S80/scummvm-CVS-SymbianS80.pkg4
-rw-r--r--backends/epoc/S90/ScummVMApp.h84
-rw-r--r--backends/epoc/S90/ScummvmS90.rss62
-rw-r--r--backends/epoc/S90/Scummvm_S90_App.mmp10
-rw-r--r--backends/epoc/S90/scummvm-CVS-SymbianS90.pkg4
-rw-r--r--backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg10
-rw-r--r--backends/epoc/mmp/initial_mmps.zipbin29227 -> 29047 bytes
-rw-r--r--backends/epoc/res/ScummSmall.bmpbin0 -> 1062 bytes
-rw-r--r--backends/epoc/res/scummLarge.bmpbin0 -> 4854 bytes
-rw-r--r--backends/epoc/res/scummLargeMask.bmpbin0 -> 382 bytes
-rw-r--r--backends/epoc/res/scummSmallMask.bmpbin0 -> 1062 bytes
-rw-r--r--backends/epoc/res/scummvm.rss (renamed from backends/epoc/S60v3/ScummVMS60.rss)2
-rw-r--r--backends/epoc/res/scummxLarge.bmpbin0 -> 12342 bytes
-rw-r--r--backends/epoc/res/scummxLargeMask.bmpbin0 -> 574 bytes
-rw-r--r--backends/epoc/src/ScummApp.cpp23
-rw-r--r--backends/epoc/src/ScummApp.h7
-rw-r--r--backends/epoc/src/ScummVMApp.cpp (renamed from backends/epoc/S90/ScummVMApp.cpp)4
-rw-r--r--backends/epoc/src/ScummVMApp.h (renamed from backends/epoc/S80/ScummVMApp.h)6
-rw-r--r--backends/epoc/src/ScummVm.hrh9
-rw-r--r--backends/epoc/src/SymbianOS.cpp30
-rw-r--r--backends/epoc/src/main_features.inl (renamed from backends/epoc/UIQ3/ScummVM.rss)60
-rw-r--r--backends/epoc/src/portdefs.h11
-rw-r--r--backends/fs/symbian/symbian-fs.cpp11
36 files changed, 178 insertions, 1069 deletions
diff --git a/backends/epoc/S60/ScummVMApp.cpp b/backends/epoc/S60/ScummVMApp.cpp
deleted file mode 100644
index 917f997385..0000000000
--- a/backends/epoc/S60/ScummVMApp.cpp
+++ /dev/null
@@ -1,166 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#include "ScummVMapp.h"
-#include <scummvms60.rsg>
-#include <apgcli.h>
-#include <eikdll.h>
-
-EXPORT_C CApaApplication *NewApplication() {
- return (new CScummVM);
-}
-
-CScummVM::CScummVM() {
-}
-
-CScummVM::~CScummVM() {
-}
-
-CApaDocument *CScummVM::CreateDocumentL() {
- return new (ELeave)CScummVMDoc(*this);
-}
-
-TUid CScummVM::AppDllUid() const {
- return TUid::Uid(0x101f9b57);
-}
-
-CScummVMDoc::CScummVMDoc(CEikApplication &aApp) : CAknDocument(aApp) {
-}
-
-CScummVMDoc::~CScummVMDoc() {
-}
-
-CEikAppUi *CScummVMDoc::CreateAppUiL() {
- return new (ELeave)CScummVMUi;
-}
-
-void CScummVMUi::HandleForegroundEventL(TBool aForeground) {
- if (aForeground) {
- BringUpEmulatorL();
- }
-}
-
-CScummVMUi::CScummVMUi() {
-}
-
-CScummVMUi::~CScummVMUi() {
- if(iWatcher) {
- iThreadWatch.LogonCancel(iWatcher->iStatus);
- iWatcher->Cancel();
- }
- delete iWatcher;
-
- iThreadWatch.Close();
-}
-
-void CScummVMUi::ConstructL() {
- BaseConstructL();
- TApaTaskList taskList(iEikonEnv->WsSession());
- TApaTask myTask=taskList.FindApp(TUid::Uid(0x101f9b57));
- myTask.SendToBackground();
-
- TBuf<128> startFile;
- startFile = iEikonEnv->EikAppUi()->Application()->AppFullName();
- TParse parser;
- parser.Set(startFile, NULL, NULL);
-
- startFile = parser.DriveAndPath();
-#ifndef __WINS__
- startFile.Append( _L("ScummVM.exe"));
-#else
- startFile.Append( _L("ScummVM.dll"));
-#endif
- CApaCommandLine *cmdLine = CApaCommandLine::NewLC(startFile);
- RApaLsSession lsSession;
-
- lsSession.Connect();
- CleanupClosePushL(lsSession);
- lsSession.StartApp(*cmdLine, iThreadId);
- CleanupStack::PopAndDestroy(); //close lsSession
- CleanupStack::PopAndDestroy(cmdLine);
-
- User::After(500000); // Let the application start
-
- TApaTask exeTask=taskList.FindByPos(0);
- iExeWgId=exeTask.WgId();
-
- if(iExeWgId == myTask.WgId()) { // Should n't be the same
- Exit();
- }
-
- if(iThreadWatch.Open(iThreadId) == KErrNone) {
- iWatcher = new (ELeave)CScummWatcher;
- iWatcher->iAppUi=this;
- iThreadWatch.Logon(iWatcher->iStatus);
- }
-}
-
-CScummWatcher::CScummWatcher():CActive(EPriorityStandard) {
- CActiveScheduler::Add(this);
- iStatus=KRequestPending;
- SetActive();
-}
-
-CScummWatcher::~CScummWatcher() {
-}
-
-void CScummWatcher::DoCancel() {
-}
-
-void CScummWatcher::RunL() {
- iAppUi->HandleCommandL(EEikCmdExit);
-}
-
-void CScummVMUi::BringUpEmulatorL() {
- RThread thread;
-
- if (thread.Open(iThreadId) == KErrNone) {
- thread.Close();
- TApaTask apaTask(iEikonEnv->WsSession());
- apaTask.SetWgId(iExeWgId);
- apaTask.BringToForeground();
- } else {
- iExeWgId = -1;
- }
-}
-
-void CScummVMUi::HandleCommandL(TInt aCommand) {
- switch(aCommand) {
- case EEikCmdExit:
- {
- RThread thread;
-
- if(thread.Open(iThreadId) == KErrNone) {
- thread.Terminate(0);
- thread.Close();
- }
- Exit();
- }
- break;
- }
-}
-
-GLDEF_C TInt E32Dll(TDllReason) {
- return KErrNone;
-}
diff --git a/backends/epoc/S60/ScummVMApp.h b/backends/epoc/S60/ScummVMApp.h
deleted file mode 100644
index cccef76c8c..0000000000
--- a/backends/epoc/S60/ScummVMApp.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#ifndef ScummVMapps60h
-#define ScummVMapps60h
-
-#include <aknapp.h>
-#include <eikapp.h>
-#include <e32base.h>
-#include <coecntrl.h>
-#include <eikenv.h>
-#include <coeview.h>
-#include <eikappui.h>
-
-class CScummVM:public CEikApplication {
-public:
- CScummVM();
- ~CScummVM();
-
- CApaDocument *CreateDocumentL();
- TUid AppDllUid() const;
-};
-
-
-#include <AKNdoc.h>
-
-class CScummVMDoc:public CAknDocument {
-public:
- CScummVMDoc(CEikApplication &aApplicaiton);
- ~CScummVMDoc();
-
- CEikAppUi *CreateAppUiL();
- void ConstructL();
-};
-
-#include <aknappui.h>
-class CScummVMUi;
-class CScummWatcher : public CActive {
-public:
- CScummWatcher();
- ~CScummWatcher();
-
- void DoCancel();
- void RunL();
- CScummVMUi *iAppUi;
-};
-
-class CScummVMUi : public CAknAppUi {
-public:
- CScummVMUi();
- ~CScummVMUi();
-
- void ConstructL();
- void HandleCommandL(TInt aCommand);
- void HandleForegroundEventL(TBool aForeground);
- void BringUpEmulatorL();
-
-private:
- TThreadId iThreadId;
- TInt iExeWgId;
- RThread iThreadWatch;
- CScummWatcher *iWatcher;
-};
-#endif
diff --git a/backends/epoc/S60/ScummVMS60.rss b/backends/epoc/S60/ScummVMS60.rss
deleted file mode 100644
index 0b699ea305..0000000000
--- a/backends/epoc/S60/ScummVMS60.rss
+++ /dev/null
@@ -1,62 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
- *
- * 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.
- *
- * $Header:
- */
-
-// ScummVM.RSS
-
-NAME SCUM
-
-// Include definitions of resource STRUCTS used by this
-// resource script
-#include <eikon.rh>
-#include "..\src\Scummvm.hrh"
-// Include the standard Eikon resource ids
-#include <eikon.rsg>
-
-
-RESOURCE RSS_SIGNATURE
- {
- }
-
-RESOURCE TBUF16 { buf=""; }
-
-RESOURCE EIK_APP_INFO
- {
- menubar = r_scum_menubar;
- }
-
-RESOURCE MENU_BAR r_scum_menubar // *** Menu bar
-{
- titles =
- {
- MENU_TITLE { menu_pane = r_scum_menu; txt = "ScummVM"; }
- };
-}
-
-RESOURCE MENU_PANE r_scum_menu // *** Submenu
-{
- items =
- {
-
- MENU_ITEM{command = EEikCmdExit;txt = "Exit";}
- };
-}
diff --git a/backends/epoc/S60/ScummVM_S60_App.mmp b/backends/epoc/S60/ScummVM_S60_App.mmp
index 44bbf1a2a0..030175b286 100644
--- a/backends/epoc/S60/ScummVM_S60_App.mmp
+++ b/backends/epoc/S60/ScummVM_S60_App.mmp
@@ -25,22 +25,23 @@
// MAKEFILE.MMP S60 ScummVM Launcher
//
-TARGET ScummVMS60.app
-TARGETPATH system\apps\ScummVMS60
+TARGET ScummVM.app
+TARGETPATH system\apps\ScummVM
TARGETTYPE app
UID 0x100039ce 0x101f9b57
-RESOURCE SCUMMVMS60.rss
+sourcepath ..\res
+RESOURCE SCUMMVM.rss
-SOURCEPATH .
-USERINCLUDE .
+USERINCLUDE ..\src
SYSTEMINCLUDE \epoc32\include \epoc32\include\libc
// app source
+sourcepath ..\src
SOURCE ScummVMApp.cpp
sourcepath ..
-AIF ScummVmS60.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
+AIF ScummVm.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
// libraries
LIBRARY cone.lib EIKCORE.lib
diff --git a/backends/epoc/S60v3/ScummVM.rss b/backends/epoc/S60v3/ScummVM.rss
deleted file mode 100644
index 41aa0a59e2..0000000000
--- a/backends/epoc/S60v3/ScummVM.rss
+++ /dev/null
@@ -1,46 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-// ScummVM.RSS
-
-NAME SCUM
-
-// Include definitions of resource STRUCTS used by this
-// resource script
-#include <eikon.rh>
-#include "..\src\Scummvm.hrh"
-// Include the standard Eikon resource ids
-#include <eikon.rsg>
-
-
-RESOURCE RSS_SIGNATURE
- {
- }
-
-RESOURCE TBUF16 { buf=""; }
-
-RESOURCE EIK_APP_INFO
- {
- }
-
diff --git a/backends/epoc/S60v3/ScummVMApp.cpp b/backends/epoc/S60v3/ScummVMApp.cpp
deleted file mode 100644
index 33e3614059..0000000000
--- a/backends/epoc/S60v3/ScummVMApp.cpp
+++ /dev/null
@@ -1,165 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#include "ScummVMapp.h"
-#include <scummvms60.rsg>
-#include <apgcli.h>
-#include <eikdll.h>
-
-EXPORT_C CApaApplication* NewApplication() {
- return (new CScummVM);
-}
-
-CScummVM::CScummVM() {
-}
-
-CScummVM::~CScummVM() {
-}
-
-CApaDocument* CScummVM::CreateDocumentL()
-{
- return new (ELeave) CScummVMDoc(*this);
-}
-
-TUid CScummVM::AppDllUid() const
-{
- return TUid::Uid(0x101f9b57);
-}
-
-CScummVMDoc::CScummVMDoc(CEikApplication& aApp):CAknDocument(aApp) {
-}
-
-CScummVMDoc::~CScummVMDoc() {
-}
-
-CEikAppUi* CScummVMDoc::CreateAppUiL() {
- return new (ELeave) CScummVMUi;
-}
-
-void CScummVMUi::HandleForegroundEventL(TBool aForeground) {
- if(aForeground) {
- BringUpEmulatorL();
- }
-}
-
-CScummVMUi::CScummVMUi() {
-}
-
-CScummVMUi::~CScummVMUi() {
- if(iWatcher) {
- iThreadWatch.LogonCancel(iWatcher->iStatus);
- iWatcher->Cancel();
- }
- delete iWatcher;
-
- iThreadWatch.Close();
-}
-
-void CScummVMUi::ConstructL() {
- BaseConstructL();
- TApaTaskList taskList(iEikonEnv->WsSession());
- TApaTask myTask=taskList.FindApp(TUid::Uid(0x101f9b57));
- myTask.SendToBackground();
-
- TBuf<128> startFile;
- startFile = iEikonEnv->EikAppUi()->Application()->AppFullName();
- TParse parser;
- parser.Set(startFile,NULL,NULL);
-
- startFile = parser.DriveAndPath();
-#ifndef __WINS__
- startFile.Append( _L("ScummVM.exe"));
-#else
- startFile.Append( _L("ScummVM.dll"));
-#endif
- CApaCommandLine* cmdLine=CApaCommandLine::NewLC(startFile);
- RApaLsSession lsSession;
- lsSession.Connect();
- CleanupClosePushL(lsSession);
- lsSession.StartApp(*cmdLine,iThreadId);
- CleanupStack::PopAndDestroy();//close lsSession
- CleanupStack::PopAndDestroy(cmdLine);
- User::After(500000);// Let the application start
- TApaTask exeTask=taskList.FindByPos(0);
- iExeWgId=exeTask.WgId();
-
- if(iExeWgId == myTask.WgId()) { // Should n't be the same
- Exit();
- }
- if(iThreadWatch.Open(iThreadId)==KErrNone) {
- iWatcher = new (ELeave)CScummWatcher;
- iWatcher->iAppUi=this;
- iThreadWatch.Logon(iWatcher->iStatus);
- }
-}
-
-CScummWatcher::CScummWatcher():CActive(EPriorityStandard) {
- CActiveScheduler::Add(this);
- iStatus=KRequestPending;
- SetActive();
-}
-
-CScummWatcher::~CScummWatcher() {
-}
-
-void CScummWatcher::DoCancel() {
-}
-
-void CScummWatcher::RunL() {
- iAppUi->HandleCommandL(EEikCmdExit);
-}
-
-void CScummVMUi::BringUpEmulatorL() {
- RThread thread;
- if(thread.Open(iThreadId)==KErrNone) {
- thread.Close();
- TApaTask apaTask(iEikonEnv->WsSession());
- apaTask.SetWgId(iExeWgId);
- apaTask.BringToForeground();
- }
- else
- {
- iExeWgId=-1;
- }
-}
-
-void CScummVMUi::HandleCommandL(TInt aCommand) {
- switch(aCommand) {
- case EEikCmdExit:
- {
- RThread thread;
- if(thread.Open(iThreadId)==KErrNone)
- {
- thread.Terminate(0);
- thread.Close();
- }
- Exit();
- }
- break;
- }
-}
-
-GLDEF_C TInt E32Dll(TDllReason) {
- return KErrNone;
-}
diff --git a/backends/epoc/S60v3/ScummVMApp.h b/backends/epoc/S60v3/ScummVMApp.h
deleted file mode 100644
index 5ffeeee46a..0000000000
--- a/backends/epoc/S60v3/ScummVMApp.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#ifndef ScummVMapps60h
-#define ScummVMapps60h
-
-#include <aknapp.h>
-#include <eikapp.h>
-#include <e32base.h>
-#include <coecntrl.h>
-#include <eikenv.h>
-#include <coeview.h>
-#include <eikappui.h>
-
-class CScummVM:public CEikApplication {
-public:
- CScummVM();
- ~CScummVM();
- CApaDocument* CreateDocumentL();
- TUid AppDllUid() const;
-};
-
-
-#include <AKNdoc.h>
-
-class CScummVMDoc:public CAknDocument {
-public:
- ~CScummVMDoc();
- CEikAppUi* CreateAppUiL();
- void ConstructL();
- CScummVMDoc(CEikApplication& aApplicaiton);
-};
-
-#include <aknappui.h>
-class CScummVMUi;
-class CScummWatcher:public CActive {
-public:
- CScummWatcher();
- ~CScummWatcher();
- void DoCancel();
- void RunL();
- CScummVMUi* iAppUi;
-};
-
-class CScummVMUi:public CAknAppUi {
-public:
- CScummVMUi();
- ~CScummVMUi();
- void ConstructL();
- void HandleCommandL(TInt aCommand);
- void HandleForegroundEventL(TBool aForeground);
- void BringUpEmulatorL();
-private:
- TThreadId iThreadId;
- TInt iExeWgId;
- RThread iThreadWatch;
- CScummWatcher* iWatcher;
-};
-#endif
diff --git a/backends/epoc/S60v3/ScummVM_Loc.rss b/backends/epoc/S60v3/ScummVM_Loc.rss
new file mode 100644
index 0000000000..83a8cfcc4c
--- /dev/null
+++ b/backends/epoc/S60v3/ScummVM_Loc.rss
@@ -0,0 +1,22 @@
+#include <AppInfo.rh>
+
+// This file localise the applications icons and caption
+RESOURCE LOCALISABLE_APP_INFO
+ {
+ caption_and_icon =
+ {
+ CAPTION_AND_ICON_INFO
+ {
+ // The caption text is defined in the rls file
+ caption = "ScummVM";
+ // Icons are used to represent applications in the
+ // application launcher and application title bar.
+ // The number_of_icons value identifies how many icons
+ // that exist in the icon_file.
+ number_of_icons = 3;
+ // Using the application icons.
+ icon_file = "\\Resource\\Apps\\ScummVM.mbm";
+ }
+ };
+ }
+
diff --git a/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg b/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg
index dc73df4b63..a2e1a56e1a 100644
--- a/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg
+++ b/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg
@@ -6,16 +6,17 @@
;&EN
; UID is the app's UID
-#{"ScummVM S60v3"},(0x101f9b57),0,80,3
+#{"ScummVM S60v3"},(0xA0000657),0,82.0
; Platform type
(0x101F6F88), 0, 0, 0, {"Series60ProductID"}
; Launcher, Application, AIF & Resource file
-"\epoc32\release\armi\urel\ScummVM.app"-"!:\system\apps\ScummVM\ScummVM.app"
-"\epoc32\release\armi\urel\ScummVM.exe"-"!:\system\apps\ScummVM\ScummVM.exe"
-"\epoc32\data\z\system\apps\ScummVM\ScummVM.aif"-"!:\system\apps\ScummVM\ScummVM.aif"
-"\epoc32\data\z\system\apps\ScummVM\ScummVM.rsc"-"!:\system\apps\ScummVM\ScummVM.rsc"
+"\s60v3\epoc32\release\gcce\urel\ScummVM.exe"- "!:\sys\bin\ScummVM.exe"
+"\s60v3\epoc32\data\z\resource\apps\ScummVM.rsc"- "!:\resource\apps\ScummVM.rsc"
+"\s60v3\epoc32\Data\Z\resource\apps\scummvm_loc.rsc"- "!:\resource\apps\scummvm_loc.rsc"
+"\s60v3\epoc32\data\Z\resource\APPS\scummvm.MBM"- "!:\resource\apps\scummvm.MBM"
+"\s60v3\epoc32\data\z\private\10003a3f\apps\scummvm_reg.rsc"-"!:\private\10003a3f\import\apps\scummvm_reg.rsc"
; Config/log files: 'empty' will automagically be removed on uninstall
""-"!:\system\apps\ScummVM\scummvm.ini",FILENULL
diff --git a/backends/epoc/S60v3/scummvm_reg.rss b/backends/epoc/S60v3/scummvm_reg.rss
new file mode 100644
index 0000000000..df99094b2e
--- /dev/null
+++ b/backends/epoc/S60v3/scummvm_reg.rss
@@ -0,0 +1,18 @@
+// All registration files need to #include appinfo.rh.
+#include <AppInfo.rh>
+
+// All registration files must define UID2, which is always
+// KUidAppRegistrationResourceFile, and UID3, which is the application's UID.
+UID2 KUidAppRegistrationResourceFile
+UID3 0xA0000657 // application UID
+
+// Registration file need to containo an APP_REGISTRATION_INFO resource that
+// minimally needs to provide the name of the application binary (using the
+// app_file statement).
+RESOURCE APP_REGISTRATION_INFO
+ {
+ app_file = "ScummVM"; // filename of application binary (minus extension)
+ // Specify the location of the localisable icon/caption definition file
+ localisable_resource_file = "\\Resource\\Apps\\ScummVM_loc";
+ }
+
diff --git a/backends/epoc/S80/ScummVMApp.cpp b/backends/epoc/S80/ScummVMApp.cpp
deleted file mode 100644
index f835de5d0c..0000000000
--- a/backends/epoc/S80/ScummVMApp.cpp
+++ /dev/null
@@ -1,168 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#include "ScummVMapp.h"
-#include <scummvms80.rsg>
-#include <apgcli.h>
-#include <eikdll.h>
-#include <apgtask.h>
-
-EXPORT_C CApaApplication *NewApplication() {
- return (new CScummVM);
-}
-
-CScummVM::CScummVM() {
-}
-
-CScummVM::~CScummVM() {
-}
-
-CApaDocument *CScummVM::CreateDocumentL() {
- return new (ELeave)CScummVMDoc(*this);
-}
-
-TUid CScummVM::AppDllUid() const {
- return TUid::Uid(0x101f9b57);
-}
-
-CScummVMDoc::CScummVMDoc(CEikApplication &aApp) : CEikDocument(aApp) {
-}
-
-CScummVMDoc::~CScummVMDoc() {
-}
-
-CEikAppUi *CScummVMDoc::CreateAppUiL() {
- return new (ELeave)CScummVMUi;
-}
-
-void CScummVMUi::HandleForegroundEventL(TBool aForeground) {
- if(aForeground) {
- BringUpEmulatorL();
- }
-}
-
-CScummVMUi::CScummVMUi() {
-}
-
-CScummVMUi::~CScummVMUi() {
- if(iWatcher) {
- iThreadWatch.LogonCancel(iWatcher->iStatus);
- iWatcher->Cancel();
- }
- delete iWatcher;
-
- iThreadWatch.Close();
-}
-
-void CScummVMUi::ConstructL() {
- BaseConstructL();
- TBuf<128> startFile;
- startFile = iEikonEnv->EikAppUi()->Application()->AppFullName();
- TParse parser;
- parser.Set(startFile,NULL,NULL);
-
- startFile = parser.DriveAndPath();
-#ifndef __WINS__
- startFile.Append( _L("ScummVM.exe"));
-#else
- startFile.Append( _L("ScummVM.dll"));
-#endif
- CApaCommandLine *cmdLine = CApaCommandLine::NewLC(startFile);
- RApaLsSession lsSession;
-
- lsSession.Connect();
- CleanupClosePushL(lsSession);
- lsSession.StartApp(*cmdLine, iThreadId);
-
- CleanupStack::PopAndDestroy(); // close lsSession
- CleanupStack::PopAndDestroy(cmdLine);
-
- User::After(500000); // Let the application start
-
- TApaTaskList taskList(iEikonEnv->WsSession());
-
- TApaTask myTask = taskList.FindApp(TUid::Uid(0x101f9b57));
- myTask.SendToBackground();
-
- TApaTask exeTask = taskList.FindByPos(0);
-
- iExeWgId = exeTask.WgId();
- exeTask.BringToForeground();
-
- if(iExeWgId == myTask.WgId()) { // Should n't be the same
- Exit();
- }
- if(iThreadWatch.Open(iThreadId) == KErrNone) {
- iWatcher = new (ELeave)CScummWatcher;
- iWatcher->iAppUi = this;
- iThreadWatch.Logon(iWatcher->iStatus);
- }
-}
-
-CScummWatcher::CScummWatcher() : CActive(EPriorityStandard) {
- CActiveScheduler::Add(this);
- iStatus = KRequestPending;
- SetActive();
-}
-
-CScummWatcher::~CScummWatcher() {
-}
-
-void CScummWatcher::DoCancel() {
-}
-
-void CScummWatcher::RunL() {
- iAppUi->HandleCommandL(EEikCmdExit);
-}
-
-void CScummVMUi::BringUpEmulatorL() {
- RThread thread;
- if(thread.Open(iThreadId) == KErrNone) {
- thread.Close();
- TApaTask apaTask(iEikonEnv->WsSession());
- apaTask.SetWgId(iExeWgId);
- apaTask.BringToForeground();
- } else {
- iExeWgId = -1;
- }
-}
-
-void CScummVMUi::HandleCommandL(TInt aCommand) {
- switch(aCommand) {
- case EEikCmdExit:
- {
- RThread thread;
- if(thread.Open(iThreadId) == KErrNone) {
- thread.Terminate(0);
- thread.Close();
- }
- Exit();
- }
- break;
- }
-}
-
-GLDEF_C TInt E32Dll(TDllReason) {
- return KErrNone;
-}
diff --git a/backends/epoc/S80/ScummVM_S80_App.mmp b/backends/epoc/S80/ScummVM_S80_App.mmp
index 268fd18a40..6cc6d044c4 100644
--- a/backends/epoc/S80/ScummVM_S80_App.mmp
+++ b/backends/epoc/S80/ScummVM_S80_App.mmp
@@ -25,22 +25,24 @@
// MAKEFILE.MMP S80 ScummVM Launcher
//
-TARGET ScummVMS80.app
-TARGETPATH system\apps\ScummVMS80
+TARGET ScummVM.app
+TARGETPATH system\apps\ScummVM
TARGETTYPE app
UID 0x100039ce 0x101f9b57
-RESOURCE SCUMMVMS80.rss
+sourcepath ..\res
+RESOURCE SCUMMVM.rss
SOURCEPATH .
-USERINCLUDE .
+USERINCLUDE ..\src
SYSTEMINCLUDE \epoc32\include \epoc32\include\libc
// app source
+sourcepath ..\src
SOURCE ScummVMApp.cpp
sourcepath ..
-AIF ScummVmS80.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
+AIF ScummVm.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
// libraries
LIBRARY cone.lib EIKCORE.lib
diff --git a/backends/epoc/S80/ScummvmS80.rss b/backends/epoc/S80/ScummvmS80.rss
deleted file mode 100644
index 73988dab42..0000000000
--- a/backends/epoc/S80/ScummvmS80.rss
+++ /dev/null
@@ -1,62 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
- *
- * 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.
- *
- * $Header:
- */
-
-// ScummVM.RSS
-
-NAME SCUM
-
-// Include definitions of resource STRUCTS used by this
-// resource script
-#include <eikon.rh>
-#include "..\src\Scummvm.hrh"
-// Include the standard Eikon resource ids
-#include <eikon.rsg>
-
-
-RESOURCE RSS_SIGNATURE
- {
- }
-
-RESOURCE TBUF16 { buf=""; }
-
-RESOURCE EIK_APP_INFO
- {
- menubar = r_scum_menubar;
- }
-
-RESOURCE MENU_BAR r_scum_menubar // *** Menu bar
-{
- titles =
- {
- MENU_TITLE { menu_pane = r_scum_menu; txt = "ScummVM"; }
- };
-}
-
-RESOURCE MENU_PANE r_scum_menu // *** Submenu
-{
- items =
- {
-
- MENU_ITEM{command = EEikCmdExit;txt = "Exit";}
- };
-}
diff --git a/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg b/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg
index 5f72d6d905..e48d37b08e 100644
--- a/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg
+++ b/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg
@@ -8,8 +8,8 @@
; UID is the app's UID
#{"ScummVM S80"},(0x101f9b57),0,80,3
-; Platform type
-(0x101F8ED2), 0, 0, 0, {"Series80ProductID"}
+; Platform type -- disabled: seems to be causing trouble
+;(0x101F8ED2), 0, 0, 0, {"Series80ProductID"}
; Launcher, Application, AIF & Resource file
"\epoc32\release\armi\urel\ScummVM.app"-"!:\system\apps\ScummVM\ScummVM.app"
diff --git a/backends/epoc/S90/ScummVMApp.h b/backends/epoc/S90/ScummVMApp.h
deleted file mode 100644
index 096cbc6f1d..0000000000
--- a/backends/epoc/S90/ScummVMApp.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005-2006 The ScummVM project
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- */
-
-#ifndef ScummVMapps60h
-#define ScummVMapps60h
-
-#include <eikapp.h>
-#include <e32base.h>
-#include <coecntrl.h>
-#include <eikenv.h>
-#include <coeview.h>
-#include <eikappui.h>
-
-class CScummVM : public CEikApplication {
-public:
- CScummVM();
- ~CScummVM();
-
- CApaDocument *CreateDocumentL();
- TUid AppDllUid() const;
-};
-
-
-#include <eikdoc.h>
-
-class CScummVMDoc : public CEikDocument {
-public:
- CScummVMDoc(CEikApplication &aApplicaiton);
- ~CScummVMDoc();
-
- CEikAppUi *CreateAppUiL();
- void ConstructL();
-};
-
-#include <eikappui.h>
-class CScummVMUi;
-class CScummWatcher : public CActive {
-public:
- CScummWatcher();
- ~CScummWatcher();
-
- void DoCancel();
- void RunL();
- CScummVMUi *iAppUi;
-};
-
-class CScummVMUi : public CEikAppUi {
-public:
- CScummVMUi();
- ~CScummVMUi();
-
- void ConstructL();
- void HandleCommandL(TInt aCommand);
- void HandleForegroundEventL(TBool aForeground);
- void BringUpEmulatorL();
-
-private:
- TThreadId iThreadId;
- TInt iExeWgId;
- RThread iThreadWatch;
- CScummWatcher *iWatcher;
-};
-#endif
diff --git a/backends/epoc/S90/ScummvmS90.rss b/backends/epoc/S90/ScummvmS90.rss
deleted file mode 100644
index 73988dab42..0000000000
--- a/backends/epoc/S90/ScummvmS90.rss
+++ /dev/null
@@ -1,62 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
- * Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
- * Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
- *
- * 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.
- *
- * $Header:
- */
-
-// ScummVM.RSS
-
-NAME SCUM
-
-// Include definitions of resource STRUCTS used by this
-// resource script
-#include <eikon.rh>
-#include "..\src\Scummvm.hrh"
-// Include the standard Eikon resource ids
-#include <eikon.rsg>
-
-
-RESOURCE RSS_SIGNATURE
- {
- }
-
-RESOURCE TBUF16 { buf=""; }
-
-RESOURCE EIK_APP_INFO
- {
- menubar = r_scum_menubar;
- }
-
-RESOURCE MENU_BAR r_scum_menubar // *** Menu bar
-{
- titles =
- {
- MENU_TITLE { menu_pane = r_scum_menu; txt = "ScummVM"; }
- };
-}
-
-RESOURCE MENU_PANE r_scum_menu // *** Submenu
-{
- items =
- {
-
- MENU_ITEM{command = EEikCmdExit;txt = "Exit";}
- };
-}
diff --git a/backends/epoc/S90/Scummvm_S90_App.mmp b/backends/epoc/S90/Scummvm_S90_App.mmp
index a3bed01978..4fdd245a51 100644
--- a/backends/epoc/S90/Scummvm_S90_App.mmp
+++ b/backends/epoc/S90/Scummvm_S90_App.mmp
@@ -25,22 +25,24 @@
// MAKEFILE.MMP S90 ScummVM Launcher
//
-TARGET ScummVMS90.app
-TARGETPATH system\apps\ScummVMS90
+TARGET ScummVM.app
+TARGETPATH system\apps\ScummVM
TARGETTYPE app
UID 0x100039ce 0x101f9b57
-RESOURCE SCUMMVMS90.rss
+sourcepath ..\res
+RESOURCE SCUMMVM.rss
SOURCEPATH .
USERINCLUDE .
SYSTEMINCLUDE \epoc32\include \epoc32\include\libc
// app source
+sourcepath ..\src
SOURCE ScummVMApp.cpp
sourcepath ..
-AIF ScummVmS90.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
+AIF ScummVm.Aif ..\res\ ScummVmAif.rss c16 ScummL.bmp ScummLM.bmp ScummS.bmp ScummSM.bmp
// libraries
LIBRARY cone.lib EIKCORE.lib
diff --git a/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg b/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg
index 1471a02f0b..a913bd15ec 100644
--- a/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg
+++ b/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg
@@ -8,8 +8,8 @@
; UID is the app's UID
#{"ScummVM S90"},(0x101f9b57),0,80,3
-; Platform type
-(0x101FBE04), 0, 0, 0, {"Series90ProductID"}
+; Platform type -- disabled: seems to be causing trouble
+;(0x101FBE04), 0, 0, 0, {"Series90ProductID"}
; Launcher, Application, AIF & Resource file
"\epoc32\release\armi\urel\ScummVM.app"-"!:\system\apps\ScummVM\ScummVM.app"
diff --git a/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg b/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
index 6c1f21cd95..2574cd99cf 100644
--- a/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
+++ b/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
@@ -18,16 +18,16 @@
; Application, AIF & Resource file
"\uiq3\epoc32\release\gcce\urel\ScummVM.exe"-"!:\sys\bin\ScummVM.exe"
-"\uiq3\epoc32\data\z\resource\apps\ScummVM.rsc"-"!:\resource\apps\ScummVM\ScummVM.rsc"
+"\uiq3\epoc32\data\z\resource\apps\ScummVM.rsc"- "!:\resource\apps\ScummVM.rsc"
"\uiq3\epoc32\Data\Z\resource\apps\scummvm_loc.rsc"-"!:\resource\apps\scummvm_loc.rsc"
"\uiq3\epoc32\data\Z\resource\APPS\scummvm.MBM"-"!:\resource\apps\scummvm.MBM"
"\uiq3\epoc32\data\z\private\10003a3f\apps\scummvm_reg.rsc"-"!:\private\10003a3f\import\apps\scummvm_reg.rsc"
; Config/log files: 'empty' will automagically be removed on uninstall
-""-"!:\shared\ScummVM\scummvm.ini",FILENULL
-""-"!:\shared\ScummVM\scummvm.stdout.txt",FILENULL
-""-"!:\shared\ScummVM\scummvm.stderr.txt",FILENULL
-""-"!:\shared\ScummVM\ScummVM\sdl.ini",FILENULL
+""-"d:\shared\ScummVM\scummvm.ini",FILENULL
+""-"d:\shared\ScummVM\scummvm.stdout.txt",FILENULL
+""-"d:\shared\ScummVM\scummvm.stderr.txt",FILENULL
+""-"d:\shared\ScummVM\sdl.ini",FILENULL
; This install layout will let you upgrade to newer versions wihout loss of scummvm.ini.
; It will remove the config file, std***.txt files & dirs on uninstall. \ No newline at end of file
diff --git a/backends/epoc/mmp/initial_mmps.zip b/backends/epoc/mmp/initial_mmps.zip
index 4509dffb2c..0a64eb577a 100644
--- a/backends/epoc/mmp/initial_mmps.zip
+++ b/backends/epoc/mmp/initial_mmps.zip
Binary files differ
diff --git a/backends/epoc/res/ScummSmall.bmp b/backends/epoc/res/ScummSmall.bmp
new file mode 100644
index 0000000000..029fbb3412
--- /dev/null
+++ b/backends/epoc/res/ScummSmall.bmp
Binary files differ
diff --git a/backends/epoc/res/scummLarge.bmp b/backends/epoc/res/scummLarge.bmp
new file mode 100644
index 0000000000..834c8ca008
--- /dev/null
+++ b/backends/epoc/res/scummLarge.bmp
Binary files differ
diff --git a/backends/epoc/res/scummLargeMask.bmp b/backends/epoc/res/scummLargeMask.bmp
new file mode 100644
index 0000000000..088ebb2fcb
--- /dev/null
+++ b/backends/epoc/res/scummLargeMask.bmp
Binary files differ
diff --git a/backends/epoc/res/scummSmallMask.bmp b/backends/epoc/res/scummSmallMask.bmp
new file mode 100644
index 0000000000..0b5fac21f8
--- /dev/null
+++ b/backends/epoc/res/scummSmallMask.bmp
Binary files differ
diff --git a/backends/epoc/S60v3/ScummVMS60.rss b/backends/epoc/res/scummvm.rss
index 0b699ea305..f47c643fb4 100644
--- a/backends/epoc/S60v3/ScummVMS60.rss
+++ b/backends/epoc/res/scummvm.rss
@@ -18,7 +18,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * $Header:
+ * $URL$
*/
// ScummVM.RSS
diff --git a/backends/epoc/res/scummxLarge.bmp b/backends/epoc/res/scummxLarge.bmp
new file mode 100644
index 0000000000..3ace76b58a
--- /dev/null
+++ b/backends/epoc/res/scummxLarge.bmp
Binary files differ
diff --git a/backends/epoc/res/scummxLargeMask.bmp b/backends/epoc/res/scummxLargeMask.bmp
new file mode 100644
index 0000000000..358112569f
--- /dev/null
+++ b/backends/epoc/res/scummxLargeMask.bmp
Binary files differ
diff --git a/backends/epoc/src/ScummApp.cpp b/backends/epoc/src/ScummApp.cpp
index 55cd274962..09edfb3215 100644
--- a/backends/epoc/src/ScummApp.cpp
+++ b/backends/epoc/src/ScummApp.cpp
@@ -27,7 +27,7 @@
#include "backends/epoc/src/ScummVM.hrh"
#define _PAGESIZE_ 0x1000
-#if defined (__WINS__)
+#if defined (__WINS__) && !defined (__SERIES60_30__)
extern "C" int _chkstk(int /*a*/) {
_asm {
push ecx
@@ -63,16 +63,31 @@ _asm {
#endif
#ifdef EPOC_AS_APP
-// this function is called by Symbian to deliver the new CApaApplication object
-EXPORT_C CApaApplication *NewApplication() {
+
+// this function is called automatically by the SymbianOS to deliver the new CApaApplication object
+#if !defined (UIQ3)
+EXPORT_C
+#endif
+CApaApplication* NewApplication() {
// Return pointer to newly created CQMApp
- return (new CScummApp);
+ return new CScummApp;
+}
+
+#if defined (UIQ3) || defined (__SERIES60_30__)
+#include <eikstart.h>
+// E32Main() contains the program's start up code, the entry point for an EXE.
+GLDEF_C TInt E32Main() {
+ return EikStart::RunApplication(NewApplication);
}
#endif
+#endif // EPOC_AS_APP
+
+#if !defined (UIQ3) && !defined (__SERIES60_30__)
GLDEF_C TInt E32Dll(TDllReason) {
return KErrNone;
}
+#endif
CScummApp::CScummApp() {
}
diff --git a/backends/epoc/src/ScummApp.h b/backends/epoc/src/ScummApp.h
index 1bcf92522c..56ca8b68c3 100644
--- a/backends/epoc/src/ScummApp.h
+++ b/backends/epoc/src/ScummApp.h
@@ -28,7 +28,8 @@
#include <eikapp.h>
#include <e32base.h>
#include <sdlapp.h>
-#ifdef EPOC_AS_APP
+
+#if defined (EPOC_AS_APP) && !defined (UIQ3) && !(__SERIES60_30__)
#include "ECompXL.h"
#endif
@@ -38,8 +39,10 @@ public:
~CScummApp();
TUid AppDllUid() const;
-#ifdef EPOC_AS_APP
+#if defined (EPOC_AS_APP) && !defined (UIQ3) && !(__SERIES60_30__)
TECompXL iECompXL;
#endif
};
#endif
+
+
diff --git a/backends/epoc/S90/ScummVMApp.cpp b/backends/epoc/src/ScummVMApp.cpp
index c958321b1c..e30cb62e87 100644
--- a/backends/epoc/S90/ScummVMApp.cpp
+++ b/backends/epoc/src/ScummVMApp.cpp
@@ -18,12 +18,10 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * $URL$
- * $Id$
*/
#include "ScummVMapp.h"
-#include <scummvms90.rsg>
+#include <scummvm.rsg>
#include <apgcli.h>
#include <eikdll.h>
#include <apgtask.h>
diff --git a/backends/epoc/S80/ScummVMApp.h b/backends/epoc/src/ScummVMApp.h
index 096cbc6f1d..0c422ad178 100644
--- a/backends/epoc/S80/ScummVMApp.h
+++ b/backends/epoc/src/ScummVMApp.h
@@ -18,12 +18,10 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * $URL$
- * $Id$
*/
-#ifndef ScummVMapps60h
-#define ScummVMapps60h
+#ifndef ScummVMapph
+#define ScummVMapph
#include <eikapp.h>
#include <e32base.h>
diff --git a/backends/epoc/src/ScummVm.hrh b/backends/epoc/src/ScummVm.hrh
index f62ef1b789..3f7bfc19d6 100644
--- a/backends/epoc/src/ScummVm.hrh
+++ b/backends/epoc/src/ScummVm.hrh
@@ -2,7 +2,7 @@
* Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
* Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
* Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
+ * Copyright (C) 2005-2006 The ScummVM project
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -18,12 +18,13 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * $Header$
*/
#ifndef ScummHRH
#define ScummHRH
-
+#if defined (UIQ3) || defined (__SERIES60_30__)
+#define ScummUid 0xA0000657
+#else
#define ScummUid 0x101f9b57
-
+#endif
#endif
diff --git a/backends/epoc/src/SymbianOS.cpp b/backends/epoc/src/SymbianOS.cpp
index 07199c5cfa..dc8a79fe47 100644
--- a/backends/epoc/src/SymbianOS.cpp
+++ b/backends/epoc/src/SymbianOS.cpp
@@ -24,27 +24,26 @@
#include "backends/epoc/src/SymbianOS.h"
#include "backends/epoc/src/SymbianActions.h"
+#include "common/config-manager.h"
#include "gui/Actions.h"
#include "gui/Key.h"
#include "gui/message.h"
-#include <eikenv.h> // for CEikonEnv::Static() @ SymbianFatalError()
+#include <eikenv.h> // for CEikonEnv::Static() @ Symbian::FatalError()
+#include "ESDL/sdlapp.h" // for CSDLApp::GetExecutablePathCStr() @ Symbian::GetExecutablePath()
-#include "common/config-manager.h"
+////////// extern "C" ///////////////////////////////////////////////////
extern Common::ConfigManager *g_config;
-static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
- {"1x", "Fullscreen", GFX_NORMAL},
- {0, 0, 0}
-};
-
OSystem *OSystem_SymbianOS_create() {
return new OSystem_SDL_Symbian();
}
+namespace Symbian {
+
// Show a simple Symbian Info win with Msg & exit
-void SymbianFatalError(const char *msg) {
+void FatalError(const char *msg) {
TPtrC8 msgPtr((const TUint8 *)msg);
TBuf<512> msg16Bit;
msg16Bit.Copy(msgPtr);
@@ -54,6 +53,21 @@ void SymbianFatalError(const char *msg) {
g_system->quit();
}
+// make this easily available everywhere
+char* GetExecutablePath()
+{
+ return CSDLApp::GetExecutablePathCStr();
+}
+
+} // namespace Symbian {
+
+////////// OSystem_SDL_Symbian //////////////////////////////////////////
+
+static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
+ {"1x", "Fullscreen", GFX_NORMAL},
+ {0, 0, 0}
+};
+
bool OSystem_SDL_Symbian::hasFeature(Feature f) {
switch(f) {
case kFeatureFullscreenMode:
diff --git a/backends/epoc/UIQ3/ScummVM.rss b/backends/epoc/src/main_features.inl
index 41aa0a59e2..b17b0b4feb 100644
--- a/backends/epoc/UIQ3/ScummVM.rss
+++ b/backends/epoc/src/main_features.inl
@@ -2,7 +2,7 @@
* Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson - Original EPOC port, ESDL
* Copyright (C) 2003-2005 Lars 'AnotherGuest' Persson - Original EPOC port, Audio System
* Copyright (C) 2005 Jurgen 'SumthinWicked' Braam - EPOC/CVS maintainer
- * Copyright (C) 2005 The ScummVM project
+ * Copyright (C) 2005-2006 The ScummVM project
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -18,29 +18,39 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * $URL$
- * $Id$
*/
-// ScummVM.RSS
-
-NAME SCUM
-
-// Include definitions of resource STRUCTS used by this
-// resource script
-#include <eikon.rh>
-#include "..\src\Scummvm.hrh"
-// Include the standard Eikon resource ids
-#include <eikon.rsg>
-
-
-RESOURCE RSS_SIGNATURE
- {
- }
-
-RESOURCE TBUF16 { buf=""; }
-
-RESOURCE EIK_APP_INFO
- {
- }
-
+#ifdef USE_VIBRA_SE_PXXX
+ "Vibra "
+#endif
+ "\n"
+
+// we want a list of supported engines visible in the program,
+// because we also release special builds with only one engine
+#ifndef DISABLE_SCUMM
+ "SCUMM "
+#endif
+#ifndef DISABLE_SIMON
+ "Simon "
+#endif
+#ifndef DISABLE_SKY
+ "Sky "
+#endif
+#ifndef DISABLE_QUEEN
+ "Queen "
+#endif
+#ifndef DISABLE_GOB
+ "Gob "
+#endif
+#ifndef DISABLE_SAGA
+ "Saga "
+#endif
+#ifndef DISABLE_KYRA
+ "Kyra "
+#endif
+#ifndef DISABLE_SWORD1
+ "Sword1 "
+#endif
+#ifndef DISABLE_SWORD2
+ "Sword2 "
+#endif
diff --git a/backends/epoc/src/portdefs.h b/backends/epoc/src/portdefs.h
index a97d971d60..d84db8cdd9 100644
--- a/backends/epoc/src/portdefs.h
+++ b/backends/epoc/src/portdefs.h
@@ -34,8 +34,6 @@
#include <e32std.h>
#include <math.h>
-// the place in Symbian FS where scummvm.ini & std***.txt are saved
-#define SYMBIAN32_DOC_DIR "C:\\documents\\ScummVM\\" // includes final \\!
#define DISABLE_SCALERS // we only need 1x
#if defined(USE_TREMOR) && !defined(USE_VORBIS)
@@ -136,7 +134,8 @@ void inline *scumm_bsearch(const void *key, const void *base, size_t nmemb, size
}
#define bsearch scumm_bsearch
-// make sure SymbianFatalError() @ SymbianOS.cpp is known in error() @ engine.cpp
-extern void SymbianFatalError(const char *msg) ;
-
-
+// we cannot include SymbianOS.h everywhere, but this works too (functions code is in SymbianOS.cpp)
+namespace Symbian {
+extern void FatalError(const char *msg);
+extern char* GetExecutablePath();
+}
diff --git a/backends/fs/symbian/symbian-fs.cpp b/backends/fs/symbian/symbian-fs.cpp
index 7a26a0f437..0e9cbba86c 100644
--- a/backends/fs/symbian/symbian-fs.cpp
+++ b/backends/fs/symbian/symbian-fs.cpp
@@ -114,6 +114,7 @@ FSList SymbianFilesystemNode::listDir(ListMode mode) const {
RFs fs = CEikonEnv::Static()->FsSession();
TInt driveNumber;
TChar driveLetter;
+ TUint driveLetterValue;
TVolumeInfo volumeInfo;
TBuf8<30> driveLabel8;
TBuf8<30> driveString8;
@@ -122,12 +123,16 @@ FSList SymbianFilesystemNode::listDir(ListMode mode) const {
TInt err = fs.Volume(volumeInfo, driveNumber);
if (err != KErrNone)
continue;
- User::LeaveIfError(fs.DriveToChar(driveNumber,driveLetter));
+ if(fs.DriveToChar(driveNumber,driveLetter) != KErrNone)
+ continue;
+
+ driveLetterValue = driveLetter;
+
if(volumeInfo.iName.Length() > 0) {
driveLabel8.Copy(volumeInfo.iName); // 16 to 8bit des // enabling this line alone gives KERN-EXEC 3 with non-optimized GCC? WHY? grrr
- driveString8.Format(_L8("Drive %c: (%S)"), driveLetter, &driveLabel8);
+ driveString8.Format(_L8("Drive %c: (%S)"), driveLetterValue, &driveLabel8);
} else {
- driveString8.Format(_L8("Drive %c:"), driveLetter);
+ driveString8.Format(_L8("Drive %c:"), driveLetterValue);
}
char path[10];