mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-05 17:20:30 +00:00
.. | ||
help | ||
res | ||
S60 | ||
S60v3 | ||
S80 | ||
S90 | ||
src | ||
symbian_builder | ||
UIQ2 | ||
UIQ3 | ||
.placeholder | ||
AdaptAllMMPs.pl | ||
build_me.py | ||
BuildPackageUpload_AllVersions.pl | ||
BuildPackageUpload_LocalSettings.pl | ||
README |
ScummVM - ScummVM ported to EPOC/SymbianOS
Copyright (C) 2008-2021 ScummVM Team
Copyright (C) 2013-2021 Fiodar Stryzhniou aka zanac
Copyright (C) 2003-2013 Lars 'AnotherGuest' Persson
Copyright (C) 2002-2008 Jurgen 'SumthinWicked' Braam
Copyright (C) 2003-2005 Andreas 'Sprawl' Karlsson
Using parts of snprintf.c by
Mark Martinec <mark.martinec@ijs.si>, April 1999, June 2000
Copyright <20> 1999,2000,2001,2002 Mark Martinec. All rights reserved.
under these conditions:
"Terms and conditions ...
This program is free software; it is dual licensed, the terms of the "Frontier Artistic License" or
the "GNU General Public License" can be chosen at your discretion.
The chosen license then applies solely and in its entirety.
Both licenses come with this Kit."
About ScummVM.
--------------
The original ports (uptil 0.7.1) were made by Andreas Karlsson and Lars Persson.
The main transition to 0.8.0CVS and all relevant changes were done by Jurgen Braam.
Jurgen and Lars have successfully transfered all needed changes into CVS/SVN, with additional helpful tools for Symbian OS.
Current port maintained by Fiodar Stryzhniou.
Release History:
Release version: 2.3.0
* Symbian port now split in nine parts, ScummVM 1, ScummVM and so on to keep the exe size amd memory pressure down.
For engines layout see ScummVM in OS help menu.
* Git builds (not frequently updated) can be found at https://sourceforge.net/projects/scummvms60git/
Release version: 2.2.0.1
* Symbian port now split in five parts, ScummVM 1, ScummVM and so on to keep the exe size down.
For engines layout see ScummVM in OS help menu.
Release version: 1.7.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
Release version: 1.6.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
Release version: 1.5.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
Release version: 1.4.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
* See main readme for general ScummVM improvements, major update.
Release version: 1.3.1
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
* See main readme for general ScummVM improvements, major update.
Release version: 1.3.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
* See main readme for general ScummVM improvements, major update.
Release version: 1.2.1
* Symbian port now split in two parts, ScummVM 1 and ScummVM 2 to keep the exe size down.
ScummVM 1 contains the following engines:
scumm, queen, groovie, saga, drascula, touche,
parallaction, cine, cruise, made, tucker.
ScummVM 2 contains the following engines:
agos, sky, gob, kyra, lure, agi, tinsel, sword1, sword2, draci, sci, teenagent.
* See main readme for general ScummVM improvements, minor update.
Release version: 1.2.0
* Nothing significant in the Symbian port, except SDL improvements (new SDL version used).
* See main readme for general ScummVM improvements, major update.
Release version: 1.1.0
* Nothing significant in the Symbian port, except SDL improvements.
* See main readme for general ScummVM improvements, minor update.
Release version: 1.0.0
* Nothing significant in the Symbian port, except SDL improvements.
* See main readme for general ScummVM improvements, minor update.
Release version: 0.13.1
* Nothing significant in the Symbian port, except SDL improvements.
* See main readme for general ScummVM improvements, minor update.
Release version: 0.13.1
* Nothing significant in the Symbian port, except SDL improvements.
Release version: 0.13.0
* Nothing significant in the Symbian port, except SDL improvements.
Release version: 0.12.0
* This version is only supported on Symbian OS 9 devices due to compiler constraints for older devices. (That means UIQ3 and S60V3 devices)
* Updated to SDL version 1.2.13 (previous version used was 1.2.2).
* Information about S60 devices can be found here https://wiki.scummvm.org/index.php/SymbianOS_S60.
* Information about UIQ devices can be found here https://wiki.scummvm.org/index.php/SymbianOS_UIQ.
* Best source of general information is the ScummVM forum, https://forums.scummvm.org.
* SVN builds (not frequently updated) can be found at http://www.anotherguest.se.
Games supported
---------------
The Symbian port of ScummVM supports all games. Some games might not run properly due to screenresolution or memory constraints.
Minimum free memory requirement is about 12MB to be able to start and run ScummVM, this is enough for most older games,
but newer more resource hungry games, might require more.
Building ScummVM
---------------------
Nescessary components
---------------------
Building ScummVM yourself using the UIQ 2.1/Nokia S60 SDK/Nokia S80 SDK/Nokia S90 SDK framework is not an easy task!
Lets just say the framework needs quite some time to set up and takes a while
to get used to. If you choose to continue you will need the following items:
- GCC 5.x and above for best perfomance(UIQ 3 and S60v3). Build it by yourself.
https://github.com/fedor4ever/GCC-4-Symbian/tree/master
- UIQ 3.x SDK (To build for UIQ3 devices)(Build scripts in SDK need tweaking in order to build scummvm since Symbian OS GCCE never builds as large projects as ScummVM before)
- UIQ 2.1 SDK (To build for UIQ2 devices);
http://www.symbian.com/developer/sdks_uiq.asp
- Nokia S60 1st, 2nd edition,3rd edition SDK (To build for S60 devices)
- Nokia S80 SDK (To build for S80 devices)
- Nokia 7710 SDK (To build for the 7710/S90 device)
- ECompXL, an EPOC application compression library
http://www.yipton.demon.co.uk/ecompxl/latest/readme.html (To build for UIQ devices)
- Python 2.7
https://www.python.org/downloads/
- required libraries can be found here
https://sourceforge.net/projects/scummvms60git/files/libs/
- libsdl, Simple Directmedia Layer, a cross-platform multimedia library
http://www.libsdl.org/ (see note about ESDL below)
- libmad, a high-quality MPEG audio decoder
http://www.underbit.com/products/mad/
- zlib, a massively spiffy yet delicately unobtrusive compression library
http://www.zlib.net/
- libogg, the free media file container format
http://www.xiph.org/ogg/
- libvorbis, the free audio codec
http://www.vorbis.com/
These are probably too heavy-duty for your phone:
- flac, the Free Lossless Audio Codec
https://xiph.org/flac/
- theora
https://www.theora.org/
- mpeg2
https://libmpeg2.sourceforge.io/
Compiling ScummVM
-----------------
ECompXL (Only needed for UIQ2):
this is a tool that will compress your executable with GZIP and glue
it to a predefined loader app. The app will uncompress your application at
runtime and run it without you even knowing it. A really interesting byproduct
of this method is that the general restriction of not having any writeable
static data (WSD) for Symbian APP executables no longer applies. This makes
the life of an EPOC porter a lot easier! To install this tool you need to add
its \bin path to your PATH above the sybmian epocs32\tools path, so that ECompXL's
PETRAN.EXE will be the executable that is started.
ScummVM:
In <DevRoot>\scummvm\backends\platform\symbian\ :
run build_me.py
Now you should have yourself a nice ScummVM_xxx.sis installer package in the packages folder for use
on your phone. Please note that for development it will be a lot faster if you
transfer the SCUMMVM.APP/Scummvm.EXE file directly to your !:\system\apps\ScummVM\ dir! (pre Symbian 9 only)
Platforms can be one of: ARMi, ARM4, THUMB, WINS, WINSCW, GCCE. The SE P900 uses the ARMi platform,
which is a combined ARM4/THUMB programming mode. Configurations can be one of:
UREL or UDEB.
Greetz & such
-------------
Kudos fly out to:
- Sprawl for having the nerve to start & carry this puppy for so long
- AnotherGuest for having the nerve to start & carry this puppy for so long
- Fingolfin for taking the time to go through 1000 patch versions with me
- Myself (SumthinWicked), for writing this entire README and adopting all sources together with Fingolfin :)
- the entire ScummVM Dev team for making a kicka$$ program
- the folks in #scummvm @ irc.libera.chat for their help, comfort and support
- everybody else who wants to give me 'the look' for not including them here :P
it's been swell,
gotta go now,
greetz,
SumthinWicked & Anotherguest