Go to |
---|
CL2 |
PDIS |
HIIT |
Miscellaneous software?
Mixture of utilities for Symbian OS?
味噌?
Your guess is as good as ours.
Miso is a Python for S60 utility library, which was developed in the PDIS project at HIIT. The idea of the library is to provide simple utility functions and classes that are easy to implement using native Symbian OS resources, but which would be difficult or impossible to implement in pure Python.
The library consists of a single Symbian OS native dynamic link library that has a Python interface. We have tested it on S60 v2, v3 and v5 phones only, but don't know of any reason why it would fail to run on S60 v1 phones. We have found the library to build with a number of different Nokia S60 SDKs, using GCC, GCCE and MSVC 6.0 compilers. We have done both Windows and Linux hosted builds, with Nokia (on Windows), GnuPoc (on Linux), and sdk2unix (on Linux) style SDK installations, respectively.
Most of the Miso functionality has been around for a long time, and is thus reasonably well tested. We are not, however, too worried about adding (or removing) features of a more experimental nature.
The programs used to test Miso features also serve as example programs.
API documentation for the current (possibly unstable) version of Miso is available in both HTML and Python formats.
is_app_installed
function. There now is an S60 v5.0 build of
the py2
variant, which does away with an incompatibility warning during
installation. 3rd and 5th Edition builds are now against PyS60 2.0.0.
imp.load_dynamic
, now building
without a .py
wrapper—were not using it for pure Python
additions anyway. S60 v3.1 and v3.2 py2
variants now built for
PyS60 1.9.7.
have_process
(cf. kill_process
) and miso_version
functions.
stack_info
actually built in.
stack_info
function, inspired by LogMan and its RLogMan::StackInfo
function for logging stack usage. stack_info
may be useful when getting KERN-EXEC 3 panics, and wondering whether there is enough stack space.
CHWRMVibra
API for vibra functionality in 3rd edition builds.
Added kill_process
function.
Made initmiso
the only C++ export, also for GCCE builds.
For binaries, source, and documentation of older releases of Miso, see the older releases page.
A collection of release builds is available. The sisx
installation packages are signed, while the sis
ones are not. s60_3x
variants require signing, whereas s60_1x
and s60_2x
variants do not. The self
variants have maximum self-signed capabilities, while the dev
variants have maximum Symbian Open Signed capabilities. The py1
variants are for Python for S60 v1.3/v1.4, while the py2
variants are for Python for S60 v1.9/v2.0.
Note that we are supplying binaries built for a number of different S60 platform versions, despite all S60 releases except for 3rd Edition having so far retained—to an extent—binary compatibility. While most of the utilities in the library only make use of well-established APIs, and are thus likely to run on any somewhat binary compatible S60 device regardless of which build is being used, the library does have some platform specificity, to the extent that some functionality hasn't even been implemented for all versions of the S60 platform. To reduce the likelihood of incompatibilities, you're best off installing whichever SIS file is the closest match for your phone.
You may or may not find the changelog useful in trying to determine what has changed between releases.
A Git repository of the source code (with change history) is also available, hosted on GitHub at http://github.com/contextlogger/miso.
Depends on the Python for S60 runtime. Does not depend on non-public APIs or anything exotic. Python must be installed on the target device to run this software. The appropriate Python SDK plugin(s) must be installed on the development host to build this software.
The work was initiated in the PDIS project at HIIT.