Added ogg and addon support for Symbian.
git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3096 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
+21
-12
@@ -6,12 +6,11 @@ unclear. If you encounter any problems or have suggestions how to improve this
|
||||
document, please report them to our Bugzilla at
|
||||
http://bugs.uqm.stack.nl/
|
||||
|
||||
UQM's Symbian support is currently at experimental stage and is tested only on
|
||||
Nokia N73, which has too little memory to run it reliably for long time.
|
||||
Reports of successes and failures on other devices are very welcome.
|
||||
UQM's Symbian support is currently at experimental stage. Development is
|
||||
being done on Nokia N73, which has too little memory for longer playing
|
||||
sessions. Reports of successes and failures on other devices are very welcome.
|
||||
|
||||
Known problems:
|
||||
- No OGG support so voices and 3DO music are not available.
|
||||
- No netmelee.
|
||||
|
||||
|
||||
@@ -41,6 +40,9 @@ Prerequisites:
|
||||
* Download from http://koti.mbnet.fi/mertama/sdl.html
|
||||
* You also need the sources from http://www.libsdl.org/
|
||||
|
||||
- Tremor
|
||||
* Check out from SVN repository at http://svn.xiph.org/trunk/Tremor/
|
||||
|
||||
Building:
|
||||
---------
|
||||
|
||||
@@ -51,7 +53,7 @@ Building:
|
||||
2) Subst your Symbian SDK to a new drive along the following example:
|
||||
subst z: C:\Symbian\9.1\S60_3rd_MR_2
|
||||
|
||||
3) Put UQM sources inside the substed drive, if not already there.
|
||||
3) Put UQM sources and Tremor inside the substed drive, if not already there.
|
||||
|
||||
4) Install and build SDL, instructions are inside the package.
|
||||
|
||||
@@ -61,9 +63,16 @@ Building:
|
||||
bldmake bldfiles
|
||||
abld build
|
||||
|
||||
6) Open MSYS terminal. All following steps are done inside it.
|
||||
6) Build Tremor. First apply a patch found from UQM SVN repository
|
||||
at trunk/symbian/tremor:
|
||||
cd Tremor
|
||||
patch -p0 </path/to/tremor_symbian.patch
|
||||
bldmake bldfiles
|
||||
abld build
|
||||
|
||||
7) Two environment variables control the building, BUILD_EPOCROOT and BUILD_HOST.
|
||||
7) Open MSYS terminal. All following steps are done inside it.
|
||||
|
||||
8) Two environment variables control the building, BUILD_EPOCROOT and BUILD_HOST.
|
||||
|
||||
Set BUILD_EPOCROOT to point to the substed drive:
|
||||
export BUILD_EPOCROOT=/z
|
||||
@@ -72,14 +81,14 @@ Building:
|
||||
for which target you want to build:
|
||||
export BUILD_HOST=GCCE
|
||||
|
||||
8) Compile (you don't need to change any options from the interactive menu):
|
||||
9) Compile (you don't need to change any options from the interactive menu):
|
||||
./build.sh uqm
|
||||
|
||||
9) Install. It builds the content zip and puts everything to proper
|
||||
place (WINSCW) or creates a self-signed SIS package (GCCE / ARMV5):
|
||||
./build.sh uqm install
|
||||
10) Install. It builds the content zip and puts everything to proper
|
||||
place (WINSCW) or creates a self-signed SIS package (GCCE / ARMV5):
|
||||
./build.sh uqm install
|
||||
|
||||
10) If you built for GCCE or ARMV5, you should now have uqm.sisx in the same
|
||||
11) If you built for GCCE or ARMV5, you should now have uqm.sisx in the same
|
||||
directory from where you did the build. Remember to also install SDL SIS
|
||||
package and if device does not support FP2, Open C plugins before
|
||||
attempting to run UQM on actual device.
|
||||
|
||||
@@ -219,7 +219,7 @@ case "$HOST_SYSTEM" in
|
||||
LIB_tremor_LDFLAGS="-framework Tremor"
|
||||
;;
|
||||
ARMV5|WINSCW|GCCE)
|
||||
LIB_tremor_DETECT="false"
|
||||
LIB_tremor_DETECT="true"
|
||||
;;
|
||||
*)
|
||||
LIB_tremor_CFLAGS=""
|
||||
|
||||
@@ -3,7 +3,7 @@ config.alwaysgl = no
|
||||
config.sfxvol = 20
|
||||
config.iconicscan = no
|
||||
config.pulseshield = no
|
||||
config.3domusic = no
|
||||
config.3domusic = yes
|
||||
config.smoothmelee = no
|
||||
config.positionalsfx = no
|
||||
config.resheight = 240
|
||||
@@ -20,7 +20,7 @@ config.subtitles = yes
|
||||
config.3domovies = yes
|
||||
config.scanlines = no
|
||||
config.showfps = no
|
||||
config.speechvol = 0
|
||||
config.speechvol = 20
|
||||
config.remixmusic = no
|
||||
config.smoothscroll = no
|
||||
config.audioquality = low
|
||||
|
||||
@@ -33,6 +33,7 @@ LIBRARY eikcore.lib
|
||||
LIBRARY ws32.lib
|
||||
LIBRARY bafl.lib
|
||||
LIBRARY euser.lib
|
||||
LIBRARY efsrv.lib
|
||||
LIBRARY sdl.lib
|
||||
LIBRARY libc.lib
|
||||
LIBRARY libm.lib
|
||||
@@ -41,3 +42,4 @@ LIBRARY libpthread.lib
|
||||
|
||||
STATICLIBRARY uqm.lib
|
||||
STATICLIBRARY SDL_image.lib
|
||||
STATICLIBRARY tremor.lib
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <aknnotewrappers.h>
|
||||
#include <eikstart.h>
|
||||
#include <badesca.h>
|
||||
#include <bautils.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <SDL/SDL_keysym.h>
|
||||
@@ -84,6 +85,7 @@ private:
|
||||
void DoExit(TInt aErr);
|
||||
void HandleWsEventL(const TWsEvent& aEvent, CCoeControl* aDestination);
|
||||
void HandleResourceChangeL(TInt aType);
|
||||
void AddCmdLineParamsL(CDesC8Array& aArgs);
|
||||
private:
|
||||
CExitWait* iWait;
|
||||
CSDLWin* iSDLWin;
|
||||
@@ -164,7 +166,9 @@ void CSdlAppUi::ConstructL()
|
||||
|
||||
iWait = new (ELeave) CExitWait(*this);
|
||||
CDesC8ArrayFlat* args = new (ELeave)CDesC8ArrayFlat(10);
|
||||
iSdl->CallMainL(iWait->iStatus, *args, CSDL::ENoParamFlags, 81920);
|
||||
AddCmdLineParamsL(*args);
|
||||
|
||||
iSdl->CallMainL(iWait->iStatus, *args, CSDL::ENoFlags, 81920);
|
||||
delete args;
|
||||
|
||||
iWait->Start();
|
||||
@@ -218,6 +222,28 @@ void CSdlAppUi::HandleResourceChangeL(TInt aType)
|
||||
}
|
||||
}
|
||||
|
||||
void CSdlAppUi::AddCmdLineParamsL(CDesC8Array& aArgs)
|
||||
{
|
||||
_LIT8(KAddonParam, "--addondir=?:\\uqm-addons");
|
||||
_LIT16(KTestFolder, "?:\\uqm-addons");
|
||||
RFs fs;
|
||||
|
||||
fs.Connect();
|
||||
for (TInt8 c = 'e'; c < 'z'; ++c)
|
||||
{
|
||||
TBuf16<32> buf(KTestFolder);
|
||||
buf[0] = c;
|
||||
if (BaflUtils::FolderExists(fs, buf))
|
||||
{
|
||||
TBuf8<32> arg(KAddonParam);
|
||||
arg[11] = c;
|
||||
aArgs.AppendL(arg);
|
||||
break;
|
||||
}
|
||||
}
|
||||
fs.Close();
|
||||
}
|
||||
|
||||
CSdlAppUi::~CSdlAppUi()
|
||||
{
|
||||
if(iWait != NULL)
|
||||
|
||||
Reference in New Issue
Block a user