[Scummvm-cvs-logs] SF.net SVN: scummvm: [20585] scummvm/trunk/backends/epoc/src

anotherguest at users.sourceforge.net anotherguest at users.sourceforge.net
Sat Feb 11 16:30:03 CET 2006


Revision: 20585
Author:   anotherguest
Date:     2006-02-11 16:27:19 -0800 (Sat, 11 Feb 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm?rev=20585&view=rev

Log Message:
-----------
* 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

Modified Paths:
--------------
    scummvm/trunk/backends/epoc/S60/ScummVM_S60_App.mmp
    scummvm/trunk/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg
    scummvm/trunk/backends/epoc/S80/ScummVM_S80_App.mmp
    scummvm/trunk/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg
    scummvm/trunk/backends/epoc/S90/Scummvm_S90_App.mmp
    scummvm/trunk/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg
    scummvm/trunk/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
    scummvm/trunk/backends/epoc/mmp/initial_mmps.zip
    scummvm/trunk/backends/epoc/src/ScummApp.cpp
    scummvm/trunk/backends/epoc/src/ScummApp.h
    scummvm/trunk/backends/epoc/src/ScummVm.hrh
    scummvm/trunk/backends/epoc/src/SymbianOS.cpp
    scummvm/trunk/backends/epoc/src/portdefs.h
    scummvm/trunk/backends/fs/symbian/symbian-fs.cpp

Added Paths:
-----------
    scummvm/trunk/backends/epoc/S60v3/ScummVM_Loc.rss
    scummvm/trunk/backends/epoc/S60v3/scummvm_reg.rss
    scummvm/trunk/backends/epoc/res/ScummSmall.bmp
    scummvm/trunk/backends/epoc/res/scummLarge.bmp
    scummvm/trunk/backends/epoc/res/scummLargeMask.bmp
    scummvm/trunk/backends/epoc/res/scummSmallMask.bmp
    scummvm/trunk/backends/epoc/res/scummvm.rss
    scummvm/trunk/backends/epoc/res/scummxLarge.bmp
    scummvm/trunk/backends/epoc/res/scummxLargeMask.bmp
    scummvm/trunk/backends/epoc/src/ScummVMApp.cpp
    scummvm/trunk/backends/epoc/src/ScummVMApp.h
    scummvm/trunk/backends/epoc/src/main_features.inl

Removed Paths:
-------------
    scummvm/trunk/backends/epoc/S60/ScummVMApp.cpp
    scummvm/trunk/backends/epoc/S60/ScummVMApp.h
    scummvm/trunk/backends/epoc/S60/ScummVMS60.rss
    scummvm/trunk/backends/epoc/S60v3/ScummVM.rss
    scummvm/trunk/backends/epoc/S60v3/ScummVMApp.cpp
    scummvm/trunk/backends/epoc/S60v3/ScummVMApp.h
    scummvm/trunk/backends/epoc/S60v3/ScummVMS60.rss
    scummvm/trunk/backends/epoc/S80/ScummVMApp.cpp
    scummvm/trunk/backends/epoc/S80/ScummVMApp.h
    scummvm/trunk/backends/epoc/S80/ScummvmS80.rss
    scummvm/trunk/backends/epoc/S90/ScummVMApp.cpp
    scummvm/trunk/backends/epoc/S90/ScummVMApp.h
    scummvm/trunk/backends/epoc/S90/ScummvmS90.rss
    scummvm/trunk/backends/epoc/UIQ3/ScummVM.rss
Deleted: scummvm/trunk/backends/epoc/S60/ScummVMApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/S60/ScummVMApp.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60/ScummVMApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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;
-}

Deleted: scummvm/trunk/backends/epoc/S60/ScummVMApp.h
===================================================================
--- scummvm/trunk/backends/epoc/S60/ScummVMApp.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60/ScummVMApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Deleted: scummvm/trunk/backends/epoc/S60/ScummVMS60.rss
===================================================================
--- scummvm/trunk/backends/epoc/S60/ScummVMS60.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60/ScummVMS60.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";}
-    };
-}

Modified: scummvm/trunk/backends/epoc/S60/ScummVM_S60_App.mmp
===================================================================
--- scummvm/trunk/backends/epoc/S60/ScummVM_S60_App.mmp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60/ScummVM_S60_App.mmp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 

Deleted: scummvm/trunk/backends/epoc/S60v3/ScummVM.rss
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/ScummVM.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60v3/ScummVM.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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
-	{
-	}
-

Deleted: scummvm/trunk/backends/epoc/S60v3/ScummVMApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/ScummVMApp.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60v3/ScummVMApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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;
-}

Deleted: scummvm/trunk/backends/epoc/S60v3/ScummVMApp.h
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/ScummVMApp.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60v3/ScummVMApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Deleted: scummvm/trunk/backends/epoc/S60v3/ScummVMS60.rss
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/ScummVMS60.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60v3/ScummVMS60.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";}
-    };
-}

Added: scummvm/trunk/backends/epoc/S60v3/ScummVM_Loc.rss
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/ScummVM_Loc.rss	                        (rev 0)
+++ scummvm/trunk/backends/epoc/S60v3/ScummVM_Loc.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";
+			}
+		};
+	}
+


Property changes on: scummvm/trunk/backends/epoc/S60v3/ScummVM_Loc.rss
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: scummvm/trunk/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S60v3/scummvm-CVS-SymbianS60v3.pkg	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Added: scummvm/trunk/backends/epoc/S60v3/scummvm_reg.rss
===================================================================
--- scummvm/trunk/backends/epoc/S60v3/scummvm_reg.rss	                        (rev 0)
+++ scummvm/trunk/backends/epoc/S60v3/scummvm_reg.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";
+	}
+


Property changes on: scummvm/trunk/backends/epoc/S60v3/scummvm_reg.rss
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Deleted: scummvm/trunk/backends/epoc/S80/ScummVMApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/S80/ScummVMApp.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S80/ScummVMApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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;
-}

Deleted: scummvm/trunk/backends/epoc/S80/ScummVMApp.h
===================================================================
--- scummvm/trunk/backends/epoc/S80/ScummVMApp.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S80/ScummVMApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Modified: scummvm/trunk/backends/epoc/S80/ScummVM_S80_App.mmp
===================================================================
--- scummvm/trunk/backends/epoc/S80/ScummVM_S80_App.mmp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S80/ScummVM_S80_App.mmp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 

Deleted: scummvm/trunk/backends/epoc/S80/ScummvmS80.rss
===================================================================
--- scummvm/trunk/backends/epoc/S80/ScummvmS80.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S80/ScummvmS80.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";}
-    };
-}

Modified: scummvm/trunk/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg
===================================================================
--- scummvm/trunk/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S80/scummvm-CVS-SymbianS80.pkg	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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"

Deleted: scummvm/trunk/backends/epoc/S90/ScummVMApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/S90/ScummVMApp.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S90/ScummVMApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -1,172 +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 <scummvms90.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;
-		Exit();
-	}
-}
-
-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;
-}

Deleted: scummvm/trunk/backends/epoc/S90/ScummVMApp.h
===================================================================
--- scummvm/trunk/backends/epoc/S90/ScummVMApp.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S90/ScummVMApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Deleted: scummvm/trunk/backends/epoc/S90/ScummvmS90.rss
===================================================================
--- scummvm/trunk/backends/epoc/S90/ScummvmS90.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S90/ScummvmS90.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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";}
-    };
-}

Modified: scummvm/trunk/backends/epoc/S90/Scummvm_S90_App.mmp
===================================================================
--- scummvm/trunk/backends/epoc/S90/Scummvm_S90_App.mmp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S90/Scummvm_S90_App.mmp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 

Modified: scummvm/trunk/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg
===================================================================
--- scummvm/trunk/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/S90/scummvm-CVS-SymbianS90.pkg	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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"

Deleted: scummvm/trunk/backends/epoc/UIQ3/ScummVM.rss
===================================================================
--- scummvm/trunk/backends/epoc/UIQ3/ScummVM.rss	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/UIQ3/ScummVM.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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
-	{
-	}
-

Modified: scummvm/trunk/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
===================================================================
--- scummvm/trunk/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/UIQ3/scummvm-CVS-SymbianUIQ3.pkg	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Modified: scummvm/trunk/backends/epoc/mmp/initial_mmps.zip
===================================================================
(Binary files differ)

Added: scummvm/trunk/backends/epoc/res/ScummSmall.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/ScummSmall.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: scummvm/trunk/backends/epoc/res/scummLarge.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/scummLarge.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: scummvm/trunk/backends/epoc/res/scummLargeMask.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/scummLargeMask.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: scummvm/trunk/backends/epoc/res/scummSmallMask.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/scummSmallMask.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: scummvm/trunk/backends/epoc/res/scummvm.rss
===================================================================
--- scummvm/trunk/backends/epoc/res/scummvm.rss	                        (rev 0)
+++ scummvm/trunk/backends/epoc/res/scummvm.rss	2006-02-12 00:27:19 UTC (rev 20585)
@@ -0,0 +1,62 @@
+/* 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$
+ */
+
+// 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";}
+    };
+}


Property changes on: scummvm/trunk/backends/epoc/res/scummvm.rss
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: scummvm/trunk/backends/epoc/res/scummxLarge.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/scummxLarge.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: scummvm/trunk/backends/epoc/res/scummxLargeMask.bmp
===================================================================
(Binary files differ)


Property changes on: scummvm/trunk/backends/epoc/res/scummxLargeMask.bmp
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: scummvm/trunk/backends/epoc/src/ScummApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/src/ScummApp.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/src/ScummApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 @@
 #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() {
 }

Modified: scummvm/trunk/backends/epoc/src/ScummApp.h
===================================================================
--- scummvm/trunk/backends/epoc/src/ScummApp.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/src/ScummApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 @@
 	~CScummApp();
 
 	TUid AppDllUid() const;
-#ifdef EPOC_AS_APP
+#if defined (EPOC_AS_APP) && !defined (UIQ3) && !(__SERIES60_30__)
 	TECompXL    iECompXL;
 #endif
 };
 #endif
+
+

Added: scummvm/trunk/backends/epoc/src/ScummVMApp.cpp
===================================================================
--- scummvm/trunk/backends/epoc/src/ScummVMApp.cpp	                        (rev 0)
+++ scummvm/trunk/backends/epoc/src/ScummVMApp.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -0,0 +1,170 @@
+/* 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.
+ *
+ */
+
+#include "ScummVMapp.h"
+#include <scummvm.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;
+		Exit();
+	}
+}
+
+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;
+}


Property changes on: scummvm/trunk/backends/epoc/src/ScummVMApp.cpp
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Added: scummvm/trunk/backends/epoc/src/ScummVMApp.h
===================================================================
--- scummvm/trunk/backends/epoc/src/ScummVMApp.h	                        (rev 0)
+++ scummvm/trunk/backends/epoc/src/ScummVMApp.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -0,0 +1,82 @@
+/* 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.
+ *
+ */
+
+#ifndef ScummVMapph
+#define ScummVMapph
+
+#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


Property changes on: scummvm/trunk/backends/epoc/src/ScummVMApp.h
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: scummvm/trunk/backends/epoc/src/ScummVm.hrh
===================================================================
--- scummvm/trunk/backends/epoc/src/ScummVm.hrh	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/src/ScummVm.hrh	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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

Modified: scummvm/trunk/backends/epoc/src/SymbianOS.cpp
===================================================================
--- scummvm/trunk/backends/epoc/src/SymbianOS.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/src/SymbianOS.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 @@
 		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:

Added: scummvm/trunk/backends/epoc/src/main_features.inl
===================================================================
--- scummvm/trunk/backends/epoc/src/main_features.inl	                        (rev 0)
+++ scummvm/trunk/backends/epoc/src/main_features.inl	2006-02-12 00:27:19 UTC (rev 20585)
@@ -0,0 +1,56 @@
+/* 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.
+ *
+ */
+
+#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


Property changes on: scummvm/trunk/backends/epoc/src/main_features.inl
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native

Modified: scummvm/trunk/backends/epoc/src/portdefs.h
===================================================================
--- scummvm/trunk/backends/epoc/src/portdefs.h	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/epoc/src/portdefs.h	2006-02-12 00:27:19 UTC (rev 20585)
@@ -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 @@
 }
 #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();
+}

Modified: scummvm/trunk/backends/fs/symbian/symbian-fs.cpp
===================================================================
--- scummvm/trunk/backends/fs/symbian/symbian-fs.cpp	2006-02-12 00:16:31 UTC (rev 20584)
+++ scummvm/trunk/backends/fs/symbian/symbian-fs.cpp	2006-02-12 00:27:19 UTC (rev 20585)
@@ -114,6 +114,7 @@
 		RFs fs = CEikonEnv::Static()->FsSession();
 		TInt driveNumber;
 		TChar driveLetter;
+		TUint driveLetterValue;
 		TVolumeInfo volumeInfo;
 		TBuf8<30> driveLabel8;
 		TBuf8<30> driveString8;
@@ -122,12 +123,16 @@
 			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];







More information about the Scummvm-git-logs mailing list