[Scummvm-git-logs] scummvm master -> 89ae8da5de16e199ab944211785d75cded81493b

sev- sev at scummvm.org
Wed Jun 30 14:33:57 UTC 2021


This automated email contains information about 8 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
af8b8a0f34 SYMBIAN: Add more generators for project files.
8ed482b5fe Update backends/platform/symbian/symbian_builder/build_apps.py
3cda4cd555 Update backends/platform/symbian/symbian_builder/piper.py
3af8c7bc2e Update backends/platform/symbian/symbian_builder/common_names.py
e519b49a4a Update backends/platform/symbian/symbian_builder/common_names.py
714120466a Update backends/platform/symbian/symbian_builder/piper.py
54ca2dcd82 Update backends/platform/symbian/symbian_builder/piper.py
89ae8da5de Update backends/platform/symbian/symbian_builder/piper.py


Commit: af8b8a0f34316a7a792019baa44b52d6e75d2188
    https://github.com/scummvm/scummvm/commit/af8b8a0f34316a7a792019baa44b52d6e75d2188
Author: Fiodar Stryzhniou (fedor_qd at mail.ru)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
SYMBIAN: Add more generators for project files.

Add handler for command line options.
Fix for generators for project files.
Remove function duplicate: Common::KeymapperDefaultBindings *OSystem_SDL_Symbian::getKeymapperDefaultBindings().

Changed paths:
  A backends/platform/symbian/S60v3/build_app_config.mmh
  A backends/platform/symbian/symbian_builder/parse_gamedata.py
  A backends/platform/symbian/symbian_builder/parse_lua.py
  A backends/platform/symbian/symbian_builder/scummvm_hrh.py
  R backends/platform/symbian/S60v3/ScummVM_common.mmh
  R backends/platform/symbian/src/ScummVm.hrh
    backends/platform/symbian/help/ScummVM.rtf
    backends/platform/symbian/src/ScummApp.cpp
    backends/platform/symbian/src/SymbianMain.cpp
    backends/platform/symbian/src/SymbianOS.cpp
    backends/platform/symbian/src/SymbianOS.h
    backends/platform/symbian/src/portdefs.h
    backends/platform/symbian/symbian_builder/__init__.py
    backends/platform/symbian/symbian_builder/build_apps.py
    backends/platform/symbian/symbian_builder/common_names.py
    backends/platform/symbian/symbian_builder/create_installers.py
    backends/platform/symbian/symbian_builder/mmp_gen.py
    backends/platform/symbian/symbian_builder/parse_base.py
    backends/platform/symbian/symbian_builder/parse_codecs.py
    backends/platform/symbian/symbian_builder/piper.py
    backends/platform/symbian/symbian_builder/prj_generator.py


diff --git a/backends/platform/symbian/S60v3/ScummVM_common.mmh b/backends/platform/symbian/S60v3/build_app_config.mmh
similarity index 81%
rename from backends/platform/symbian/S60v3/ScummVM_common.mmh
rename to backends/platform/symbian/S60v3/build_app_config.mmh
index c85656830d..94b43adab9 100644
--- a/backends/platform/symbian/S60v3/ScummVM_common.mmh
+++ b/backends/platform/symbian/S60v3/build_app_config.mmh
@@ -53,24 +53,6 @@ STATICLIBRARY	libtremor.lib
 STATICLIBRARY	zlib.lib
 STATICLIBRARY	esdl.lib
 
-// *** Include paths
-
-USERINCLUDE	    ..\..\..\.. ..\..\..\..\gui ..\..\..\..\engines
-USERINCLUDE		..\..\..\..\backends\fs ..\src ..\..\..\..\backends\platform\sdl ..\..\..\..\audio
-
-SYSTEMINCLUDE	\epoc32\include\freetype
-SYSTEMINCLUDE	\epoc32\include\mpeg2dec
-SYSTEMINCLUDE   \epoc32\include\jpeg
-SYSTEMINCLUDE   \epoc32\include\png
-SYSTEMINCLUDE	\epoc32\include\ESDL
-SYSTEMINCLUDE	\epoc32\include\ZLIB // before \epoc32\include because symbian already has older version
-SYSTEMINCLUDE   \epoc32\include\libc
-SYSTEMINCLUDE 	\epoc32\include\theora
-SYSTEMINCLUDE   \epoc32\include\tremor
-SYSTEMINCLUDE   \epoc32\include\site
-SYSTEMINCLUDE   \epoc32\include
-SYSTEMINCLUDE   ..\src // for portdefs.h
-
 // *** SOURCE files
 
 SOURCEPATH ..\..\..\..\base
diff --git a/backends/platform/symbian/help/ScummVM.rtf b/backends/platform/symbian/help/ScummVM.rtf
index 112fda9bee..f743c4a434 100644
--- a/backends/platform/symbian/help/ScummVM.rtf
+++ b/backends/platform/symbian/help/ScummVM.rtf
@@ -1,14 +1,14 @@
 {\rtf1\ansi\ansicpg1251\uc1 \deff1\deflang1049\deflangfe1049{\fonttbl{\f0\froman\fcharset204\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset204\fprq2{\*\panose 020b0604020202020204}Arial;}
 {\f2\fmodern\fcharset204\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f8\froman\fcharset0\fprq2{\*\panose 00000000000000000000}Tms Rmn;}
 {\f14\fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}{\f28\fswiss\fcharset204\fprq2{\*\panose 020b0604020202020204}Arial CYR;}{\f29\froman\fcharset2\fprq2{\*\panose 05030102010509060703}Webdings;}
-{\f30\fswiss\fcharset204\fprq2{\*\panose 020b0506020202030204}Arial Narrow;}{\f176\froman\fcharset0\fprq2 Times New Roman;}{\f174\froman\fcharset238\fprq2 Times New Roman CE;}{\f177\froman\fcharset161\fprq2 Times New Roman Greek;}
-{\f178\froman\fcharset162\fprq2 Times New Roman Tur;}{\f179\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f180\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f181\froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\f184\fswiss\fcharset0\fprq2 Arial;}{\f182\fswiss\fcharset238\fprq2 Arial CE;}{\f185\fswiss\fcharset161\fprq2 Arial Greek;}{\f186\fswiss\fcharset162\fprq2 Arial Tur;}{\f187\fswiss\fcharset177\fprq2 Arial (Hebrew);}
-{\f188\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f189\fswiss\fcharset186\fprq2 Arial Baltic;}{\f192\fmodern\fcharset0\fprq1 Courier New;}{\f190\fmodern\fcharset238\fprq1 Courier New CE;}{\f193\fmodern\fcharset161\fprq1 Courier New Greek;}
-{\f194\fmodern\fcharset162\fprq1 Courier New Tur;}{\f195\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f196\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f197\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f400\fswiss\fcharset0\fprq2 Arial CYR;}
-{\f398\fswiss\fcharset238\fprq2 Arial CYR CE;}{\f401\fswiss\fcharset161\fprq2 Arial CYR Greek;}{\f402\fswiss\fcharset162\fprq2 Arial CYR Tur;}{\f403\fswiss\fcharset177\fprq2 Arial CYR (Hebrew);}{\f404\fswiss\fcharset178\fprq2 Arial CYR (Arabic);}
-{\f405\fswiss\fcharset186\fprq2 Arial CYR Baltic;}{\f416\fswiss\fcharset0\fprq2 Arial Narrow;}{\f414\fswiss\fcharset238\fprq2 Arial Narrow CE;}{\f417\fswiss\fcharset161\fprq2 Arial Narrow Greek;}{\f418\fswiss\fcharset162\fprq2 Arial Narrow Tur;}
-{\f421\fswiss\fcharset186\fprq2 Arial Narrow Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;
+{\f30\fswiss\fcharset204\fprq2{\*\panose 020b0506020202030204}Arial Narrow;}{\f41\froman\fcharset0\fprq2 Times New Roman;}{\f39\froman\fcharset238\fprq2 Times New Roman CE;}{\f42\froman\fcharset161\fprq2 Times New Roman Greek;}
+{\f43\froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f45\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f46\froman\fcharset186\fprq2 Times New Roman Baltic;}
+{\f49\fswiss\fcharset0\fprq2 Arial;}{\f47\fswiss\fcharset238\fprq2 Arial CE;}{\f50\fswiss\fcharset161\fprq2 Arial Greek;}{\f51\fswiss\fcharset162\fprq2 Arial Tur;}{\f52\fswiss\fcharset177\fprq2 Arial (Hebrew);}
+{\f53\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f54\fswiss\fcharset186\fprq2 Arial Baltic;}{\f57\fmodern\fcharset0\fprq1 Courier New;}{\f55\fmodern\fcharset238\fprq1 Courier New CE;}{\f58\fmodern\fcharset161\fprq1 Courier New Greek;}
+{\f59\fmodern\fcharset162\fprq1 Courier New Tur;}{\f60\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f61\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f62\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f265\fswiss\fcharset0\fprq2 Arial CYR;}
+{\f263\fswiss\fcharset238\fprq2 Arial CYR CE;}{\f266\fswiss\fcharset161\fprq2 Arial CYR Greek;}{\f267\fswiss\fcharset162\fprq2 Arial CYR Tur;}{\f268\fswiss\fcharset177\fprq2 Arial CYR (Hebrew);}{\f269\fswiss\fcharset178\fprq2 Arial CYR (Arabic);}
+{\f270\fswiss\fcharset186\fprq2 Arial CYR Baltic;}{\f281\fswiss\fcharset0\fprq2 Arial Narrow;}{\f279\fswiss\fcharset238\fprq2 Arial Narrow CE;}{\f282\fswiss\fcharset161\fprq2 Arial Narrow Greek;}{\f283\fswiss\fcharset162\fprq2 Arial Narrow Tur;}
+{\f286\fswiss\fcharset186\fprq2 Arial Narrow Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;
 \red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{
 \ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 \snext0 Normal;}{\s1\ql \li0\ri0\sb360\sa240\keepn\widctlpar\nooverflow\faroman\rin0\lin0\itap0 
 \b\f1\fs32\lang2057\langfe1033\kerning28\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext0 heading 1;}{\s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072\nooverflow\faroman\rin0\lin0\itap0 
@@ -58,31 +58,33 @@ Synonyms;}{\*\cs33 \additive \super \sbasedon10 endnote reference;}{\s34\ql \fi-
 {\listoverride\listid-120\listoverridecount0\ls57}{\listoverride\listid-129\listoverridecount0\ls58}{\listoverride\listid-119\listoverridecount0\ls59}{\listoverride\listid-125\listoverridecount0\ls60}{\listoverride\listid-120\listoverridecount0\ls61}
 {\listoverride\listid-129\listoverridecount0\ls62}{\listoverride\listid-119\listoverridecount0\ls63}{\listoverride\listid-125\listoverridecount0\ls64}{\listoverride\listid-120\listoverridecount0\ls65}{\listoverride\listid-129\listoverridecount0\ls66}
 {\listoverride\listid-119\listoverridecount0\ls67}{\listoverride\listid-125\listoverridecount0\ls68}{\listoverride\listid-120\listoverridecount0\ls69}{\listoverride\listid-129\listoverridecount0\ls70}{\listoverride\listid-119\listoverridecount0\ls71}
-{\listoverride\listid-125\listoverridecount0\ls72}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext
-\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls73}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls74}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat
-{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-4026 ?;}{\levelnumbers;}\f14\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls75}
-{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3934 ?;}{\levelnumbers;}\f29\chbrdr
-\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls76}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0
-\levelindent283{\leveltext\'01\u-4033 ?;}{\levelnumbers;}\f14\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls77}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23
-\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls78}{\listoverride\listid-2
-\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 
-\chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls79}}{\info{\author Fedor}{\operator Fedor}{\creatim\yr2013\mo11\dy30\hr23\min4}{\revtim\yr2020\mo10\dy10\hr20\min38}{\version177}{\edmins2350}{\nofpages9}{\nofwords1545}{\nofchars8808}{\*\company DEV}
-{\nofcharsws10816}{\vern8249}}\margl1701\margr850\margt1134\margb1134 \deftab708\widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3
-\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0{\*\template E:\\Documents and Settings\\Administrator\\Application Data\\Microsoft\\\'d8\'e0\'e1\'eb\'ee\'ed\'fb\\cshelp2000.dot}\sectd \linex0\sectdefaultcl {\*\pnseclvl1
-\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5
-\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang
-{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \s17\ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \i\f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {
-\lang1033\langfe1033\langnp1033 Author: Fedor Strizhniou.}{\f28 
-\par }{\lang1033\langfe1033\langnp1033 Date: }{\lang1059\langfe1033\langnp1059 October}{\lang1033\langfe1033\langnp1033  2020}{\f28\lang1059\langfe1033\langnp1059 
-\par }{\lang1033\langfe1033\langnp1033 Version: 2.2.0
+{\listoverride\listid-125\listoverridecount0\ls72}{\listoverride\listid-120\listoverridecount0\ls73}{\listoverride\listid-129\listoverridecount0\ls74}{\listoverride\listid-119\listoverridecount0\ls75}{\listoverride\listid-125\listoverridecount0\ls76}
+{\listoverride\listid-120\listoverridecount0\ls77}{\listoverride\listid-129\listoverridecount0\ls78}{\listoverride\listid-119\listoverridecount0\ls79}{\listoverride\listid-125\listoverridecount0\ls80}{\listoverride\listid-2\listoverridecount1{\lfolevel
+\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 
+}}\ls81}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr
+\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls82}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0
+\levelindent283{\leveltext\'01\u-4026 ?;}{\levelnumbers;}\f14\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls83}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23
+\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3934 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls84}{\listoverride\listid-2
+\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-4033 ?;}{\levelnumbers;}\f14\chbrdr\brdrnone\brdrcf1 
+\chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls85}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext
+\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls86}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
+\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls87}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat
+{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent283{\leveltext\'01\u-3991 ?;}{\levelnumbers;}\f29\chbrdr\brdrnone\brdrcf1 \chshdng0\chcfpat1\chcbpat1\fbias0 \fi-283\li283 }}\ls88}}{\info
+{\author Fedor}{\operator Fedor}{\creatim\yr2013\mo11\dy30\hr23\min4}{\revtim\yr2021\mo6\dy26\min55}{\version193}{\edmins5169}{\nofpages9}{\nofwords1545}{\nofchars8808}{\*\company DEV}{\nofcharsws0}{\vern8249}}\margl1701\margr850\margt1134\margb1134 
+\deftab708\widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind4\viewscale100\nolnhtadjtbl \fet0{\*\template 
+E:\\Documents and Settings\\Administrator\\Application Data\\Microsoft\\\'d8\'e0\'e1\'eb\'ee\'ed\'fb\\cshelp2000.dot}\sectd \linex0\sectdefaultcl {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang
+{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang
+{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain 
+\s17\ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \i\f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1033\langfe1033\langnp1033 Author: Fedor Strizhniou.}{\f28 
+\par }{\lang1033\langfe1033\langnp1033 Date: June 2021}{\f28\lang1059\langfe1033\langnp1059 
+\par }{\lang1033\langfe1033\langnp1033 Version: 2.3.0
 \par }\pard\plain \s1\ql \li0\ri0\sb360\sa240\keepn\widctlpar\nooverflow\faroman\outlinelevel0\rin0\lin0\itap0 \b\f1\fs32\lang2057\langfe1033\kerning28\cgrid\langnp2057\langfenp1033 {ScummVM Help
 \par }\pard\plain \s16\ql \li0\ri0\sb360\sa240\keepn\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \b\f1\fs32\cf9\lang2057\langfe1033\kerning28\cgrid\langnp2057\langfenp1033 {\lang1033\langfe1033\langnp1033 0x100039ce}{\lang1059\langfe1033\langnp1059 
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 { About ScummVM Help
 
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls73\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls73\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {About ScummVM Help
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls81\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls81\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {About ScummVM Help
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 
 \par }{
 This help file based on ScummVM forum thread with some elaborations(in Anotherguest section) and text correction. If you wish add some text or translate you may download and modify source document from https://sourceforge.net/projects/scummvms60git/ and t
@@ -93,8 +95,8 @@ hen send me to fedor_qd at mail.ru
 \par }{
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {1st guide
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls73\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls73\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, UIQ, UIQ3, S80, s80, S90, s90
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls81\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls81\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, UIQ, UIQ3, S80, s80, S90, s90
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 
 \par }{UIQ3 devices: To the top right (holding the phone portrait) you four icons, from the top they are
 \par 
@@ -149,8 +151,8 @@ o center view. Upscale tries to fill the larger screens on S80/S90 devices in a
 \par 
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {2nd guide
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls73\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls73\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, s60
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls81\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls81\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, s60
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 
 \par 
 \par }{More user-friendly guide for Nokia phones (based on N96 but should apply to most phones)
@@ -212,8 +214,8 @@ level.
 \par 
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 3rd guide
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls73\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls73\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, s60
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls81\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls81\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Controls, Virtual keyboard, Shortcuts, ScummVM, Tips, S60, s60
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\f28 
 \par 
 \par }{ScummVM keys on Nokia e71 (most likely on any other qwerty-device, too), tested on version 0.14.0svn (Feb. 18 200
@@ -289,8 +291,8 @@ ou can't turn on sirens in Police Quest, which kinda makes it unplayable.
 \par }{\f28 
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {ScummVM1 engines list
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls74\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls74\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls82\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls82\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {access
 \par adl
 \par agi
@@ -315,8 +317,8 @@ ou can't turn on sirens in Police Quest, which kinda makes it unplayable.
 \par \tab SCUMM_7_8
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {ScummVM2 engines list
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls74\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls74\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls82\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls82\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 { glk
 \par griffon
 \par groovie
@@ -333,8 +335,8 @@ ou can't turn on sirens in Police Quest, which kinda makes it unplayable.
 \par }{mortevielle
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {ScummVM3 engines list}{\lang1059\langfe1033\langnp1059 
-\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls78\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls78\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines}{\lang1059\langfe1033\langnp1059 
+\par {\pntext\pard\plain\s26 \f29\fs20\lang2057\langfe1033\langnp2057\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls86\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls86\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {Supported engines}{\lang1059\langfe1033\langnp1059 
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {mads
 \par mohawk
 \par \tab RIVEN
@@ -358,8 +360,8 @@ ou can't turn on sirens in Police Quest, which kinda makes it unplayable.
 \par tinsel}{\lang1059\langfe1033\langnp1059 
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 ScummVM4 engines list
-\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls79\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls79\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
+\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls87\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls87\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
 \par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 titanic
 \par }{toltecs
 \par tony
@@ -372,8 +374,40 @@ ou can't turn on sirens in Police Quest, which kinda makes it unplayable.
 \par wintermute
 \par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
 \b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 ScummVM5 engines list
-\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls79\pnrnot0
-\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls79\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
-\par }\pard\plain \ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {bladerunner}{\lang1049\langfe1033\langnp1049 
+\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls87\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls87\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
+\par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {bladerunner}{\lang1049\langfe1033\langnp1049 
 \par xeen}{\lang1033\langfe1033\langnp1033 
+\par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
+\b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 ScummVM6 engines list
+\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls88\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls88\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
+\par }\pard\plain \ql \li0\ri0\sa120\widctlpar{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 avalanche
+\par chewy
+\par cryo
+\par }{\lang1033\langfe1033\langnp1033 d}{\lang1059\langfe1033\langnp1059 irector
+\par dm
+\par }{\lang1033\langfe1033\langnp1033 grim
+\par \tab MONKEY4
+\par hadesch
+\par Icb
+\par kingdom
+\par lastexpress
+\par lilliput
+\par macventure
+\par }\pard\plain \s2\ql \li0\ri0\sb120\sa120\keepn\widctlpar\brdrt\brdrs\brdrw30\brsp20 \brdrb\brdrs\brdrw30\brsp20 \tqr\tx9072{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\nooverflow\faroman\outlinelevel1\rin0\lin0\itap0 
+\b\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 ScummVM7 engines list
+\par {\pntext\pard\plain\s26 \f29\fs20\lang1059\langfe1033\langnp1059\langfenp1033 \loch\af29\dbch\af0\hich\f29 \'69\tab}}\pard\plain \s26\ql \fi-283\li283\ri0\sa120\widctlpar\brdrb\brdrs\brdrw15\brsp20 {\*\pn \pnlvlblt\ilvl0\ls88\pnrnot0
+\pnf29\pnstart1\pnindent283\pnhang{\pntxtb i}}\nooverflow\faroman\ls88\rin0\lin283\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1059\langfe1033\langnp1059 Supported engines
+\par }\pard\plain \ql \li0\ri0\sa120\widctlpar\nooverflow\faroman\rin0\lin0\itap0 \f1\fs20\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\lang1033\langfe1033\langnp1033 mutationofjb
+\par myst3
+\par pegasus
+\par petka
+\par pink
+\par sludge
+\par stark
+\par startrek
+\par twine
+\par wage
+\par zvision}{\lang1059\langfe1033\langnp1059 
 \par }}
\ No newline at end of file
diff --git a/backends/platform/symbian/src/ScummApp.cpp b/backends/platform/symbian/src/ScummApp.cpp
index 5256c81dcc..e7ccdf6ce8 100644
--- a/backends/platform/symbian/src/ScummApp.cpp
+++ b/backends/platform/symbian/src/ScummApp.cpp
@@ -75,7 +75,10 @@ CApaApplication* NewApplication() {
 #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);
+	__UHEAP_MARK;
+	TInt i = EikStart::RunApplication(NewApplication);
+	__UHEAP_MARKEND;
+	return i;
 }
 #endif
 
diff --git a/backends/platform/symbian/src/ScummVm.hrh b/backends/platform/symbian/src/ScummVm.hrh
deleted file mode 100644
index cedf644879..0000000000
--- a/backends/platform/symbian/src/ScummVm.hrh
+++ /dev/null
@@ -1,38 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- * 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-2017 The ScummVM Team
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * 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 ScummHRH
-#define ScummHRH
-#if defined (UIQ3) || defined (S60V3)
-#ifdef SECOND_EXE
-#define ScummUid 0xA0000658
-#else
-#define ScummUid 0xA0000657
-#endif
-#else
-#define ScummUid 0x101f9b57
-#endif
-#endif
diff --git a/backends/platform/symbian/src/SymbianMain.cpp b/backends/platform/symbian/src/SymbianMain.cpp
index f6350abf0b..cc02637b4f 100644
--- a/backends/platform/symbian/src/SymbianMain.cpp
+++ b/backends/platform/symbian/src/SymbianMain.cpp
@@ -20,6 +20,9 @@
  *
  */
 
+
+#include <bacline.h>	// CCommandLineArguments
+
 #include "backends/platform/symbian/src/portdefs.h"
 #include "base/main.h"
 #include "backends/platform/symbian/src/SymbianOS.h"
@@ -72,7 +75,7 @@ int main(int argc, char *argv[]) {
 		}
 #endif
 	}
-	setbuf(stderr, NULL);			/* No buffering */
+	setbuf(stderr, NULL);	/* No buffering */
 
 	// Create our OSystem instance
 	g_system = new OSystem_SDL_Symbian();
@@ -85,9 +88,42 @@ int main(int argc, char *argv[]) {
 	PluginManager::instance().addPluginProvider(new SDLPluginProvider());
 #endif
 
+	// catch input params and pass to argv/argc
+	CCommandLineArguments *cmdline = CCommandLineArguments::NewL();
+	if (!cmdline) {
+		error("Failure to alloc CCommandLineArguments!");
+		return -1;
+	}
+	
+	argc = cmdline->Count();
+	if (argc > 1) {
+		debug("console arg count by CCommandLineArguments: %d", argc);
+		argv = new char* [argc];
+		HBufC8 *buf = HBufC8::NewMax(20); //this suffice for most cases
+		for (TInt i = 0; i < argc; ++i) {
+			TPtrC arg = cmdline->Arg(i);
+			argv[i] = new char[arg.Length() + 1](); //hold zero terminated string
+			if (arg.Length() > buf->Length())
+				buf->ReAlloc(arg.Length());
+
+			TPtr arg2((TUint16 *)arg.Ptr(), arg.Length(), arg.Length());
+			TPtr8 pbuf2(buf->Des());
+			pbuf2 = arg2.Collapse();
+			pbuf2.Copy((TUint8 *)argv[i], arg.Length());
+			debug("argv[%d]: %s", i, argv[i]);
+		}
+		delete buf;
+	}
 	// Invoke the actual ScummVM main entry point:
 	int res = scummvm_main(argc, argv);
 
+	// clear argv
+	for (TInt i = 0; i < argc; ++i) {
+		delete[] argv[i];
+	}
+	delete[] argv;
+	delete cmdline;
+
 	// Free OSystem
 	g_system->destroy();
 
diff --git a/backends/platform/symbian/src/SymbianOS.cpp b/backends/platform/symbian/src/SymbianOS.cpp
index 1f40419bc3..73ca203476 100644
--- a/backends/platform/symbian/src/SymbianOS.cpp
+++ b/backends/platform/symbian/src/SymbianOS.cpp
@@ -66,14 +66,11 @@ char *GetExecutablePath() {
 
 ////////// OSystem_SDL_Symbian //////////////////////////////////////////
 
-OSystem_SDL_Symbian::OSystem_SDL_Symbian()
-	:
-	_RFs(0) {
-
+OSystem_SDL_Symbian::OSystem_SDL_Symbian() {
+	_RFs = CEikonEnv::Static()->FsSession();
 }
 
 void OSystem_SDL_Symbian::init() {
-	_RFs = &CEikonEnv::Static()->FsSession();
 	// Use iconless window: it uses the EScummVM.aif file for the icon.
 	initSDL();
 	_window = new SdlIconlessWindow();
@@ -92,6 +89,15 @@ void OSystem_SDL_Symbian::initBackend() {
 	if (!ConfMan.hasKey("savepath")) {
 		ConfMan.set("savepath", savePath);
 	}
+	
+#if !RELEASE_BUILD
+	_LIT(KDefaultBetaExtraPath,"!:\\DATA\\ScummVM\\BETA\\");
+	_RFs.SessionPath(_localpath);
+	_RFs.SetSessionPath(KDefaultBetaExtraPath);
+	
+	Common::String extrapath;
+	ConfMan.registerDefault("extrapath", extrapath);
+#endif
 
 #if _DEBUG
 #warning "set debuglevel = 20"
@@ -118,7 +124,7 @@ void OSystem_SDL_Symbian::initBackend() {
 	ConfMan.setBool("fullscreen", true);
 	ConfMan.flushToDisk();
 
-	if (_mixerManager == 0) {
+	if (_mixerManager == nullptr) {
 		_mixerManager = new SymbianSdlMixerManager();
 
 		// Setup and start mixer
@@ -159,7 +165,7 @@ bool OSystem_SDL_Symbian::hasFeature(Feature f) {
 
 
 RFs& OSystem_SDL_Symbian::FsSession() {
-	return *_RFs;
+	return _RFs;
 }
 
 Common::KeymapperDefaultBindings *OSystem_SDL_Symbian::getKeymapperDefaultBindings(){
@@ -169,13 +175,6 @@ Common::KeymapperDefaultBindings *OSystem_SDL_Symbian::getKeymapperDefaultBindin
 }
 
 
-Common::KeymapperDefaultBindings *OSystem_SDL_Symbian::getKeymapperDefaultBindings(){
-	Common::KeymapperDefaultBindings *keymapperDefaultBindings = new Common::KeymapperDefaultBindings();
-	keymapperDefaultBindings->setDefaultBinding(Common::kGlobalKeymapName, "MENU", "ASTERISK");
-	return keymapperDefaultBindings;
-}
-
-
 // Symbian bsearch implementation is flawed
 void* scumm_bsearch(const void *key, const void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *)) {
 	// Perform binary search
diff --git a/backends/platform/symbian/src/SymbianOS.h b/backends/platform/symbian/src/SymbianOS.h
index eac5889f26..2d034da681 100644
--- a/backends/platform/symbian/src/SymbianOS.h
+++ b/backends/platform/symbian/src/SymbianOS.h
@@ -49,9 +49,8 @@ public:
 	Common::KeymapperDefaultBindings *getKeymapperDefaultBindings() override;
 
 protected:
-	RFs* _RFs;
-public:
-	Common::KeymapperDefaultBindings *getKeymapperDefaultBindings() override;
+	RFs &_RFs;
+	TFileName _localpath;
 };
 
 #endif
diff --git a/backends/platform/symbian/src/portdefs.h b/backends/platform/symbian/src/portdefs.h
index 18adc1ee54..a48873c525 100644
--- a/backends/platform/symbian/src/portdefs.h
+++ b/backends/platform/symbian/src/portdefs.h
@@ -88,6 +88,12 @@ namespace std
 #undef remove
 #endif
 
+#if __cplusplus >= 201103L
+#define USE_CXX11
+#define NO_CXX11_INITIALIZER_LIST
+#define NO_CXX11_NULLPTR_T
+#endif //USE_CXX11
+
 #define DISABLE_COMMAND_LINE
 #define USE_RGB_COLOR
 #define USE_TINYGL
@@ -182,16 +188,18 @@ namespace std
 
 // Functions from openlibm not declared in Symbian math.h
 extern "C"{
-	float roundf (float x);
+	float  roundf (float x);
 	double nearbyint(double x);
 	double round(double x);
-	int __signbit(double);
-	int __signbitf(float);
-	int __signbitl(long double);
-	float truncf(float);
-	float fminf(float x, float y);
-	float fmaxf(float x, float y);
+	long   lround(double);
+	int  __signbit(double);
+	int  __signbitf(float);
+	int  __signbitl(long double);
+	float  truncf(float);
+	float  fminf(float x, float y);
+	float  fmaxf(float x, float y);
 	double fmax (double x, double y);
+	long long int strtoll(const char* start, char** end, int radix);
 }
 
 
diff --git a/backends/platform/symbian/symbian_builder/__init__.py b/backends/platform/symbian/symbian_builder/__init__.py
index a964054e7d..376f3cf724 100644
--- a/backends/platform/symbian/symbian_builder/__init__.py
+++ b/backends/platform/symbian/symbian_builder/__init__.py
@@ -20,35 +20,41 @@
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
-from prj_generator import create_mmps, SafeWriteFile
+from prj_generator import create_mmps
 from mmp_gen import create_engine_mmps
 from build_apps import build_apps
 from create_installers import create_installers
 from datetime import datetime
+import time
 from piper import build_mmp
 from parse_codecs import parse_codecs
 from parse_base import parse_base
 from common_names import *
+from scummvm_hrh import Generate_ScummVm_hrh
+from parse_lua import parse_lua
+from parse_gamedata import parse_gamedata
 
 def minimal_whitelist(engine):
    data = "#ifdef SCUMMVM_PT_1\nscummvm_base.mmp\nscummvm_codecs.mmp\n%s\n#endif // SCUMMVM_PT_%s\n" %engine
    SafeWriteFile(os.path.join(mmps, whitelist), data)
 
 def run(build, pkgs, only_begotten_engine = None):
-   log = "Build started at: %s\n" %datetime.now()
+   log = "Build started at: %s\n" %time.ctime()
    SafeWriteFile(build_log, log)
    SafeWriteFile(build_err, '')
+   Generate_ScummVm_hrh(build)
    create_mmps(build, pkgs)
    create_engine_mmps(build)
-   parse_codecs()
+   parse_codecs(pkgs)
    parse_base()
+   parse_lua()
+   parse_gamedata(build, pkgs)
 
-   log = "Build engines started at: %s\n" %datetime.now()
    SafeWriteFile(build_log, log, 'a')
    if only_begotten_engine:
       minimal_whitelist(build_log)
    build_mmp(only_begotten_engine)
-   log = "Build engines ended at: %s\n" %datetime.now()
+   log = "Build engines ended at: %s\n" %time.ctime()
    SafeWriteFile(build_log, log, 'a')
 
    build_apps(pkgs)
diff --git a/backends/platform/symbian/symbian_builder/build_apps.py b/backends/platform/symbian/symbian_builder/build_apps.py
index cb7a654ca9..60949b7c42 100644
--- a/backends/platform/symbian/symbian_builder/build_apps.py
+++ b/backends/platform/symbian/symbian_builder/build_apps.py
@@ -21,7 +21,6 @@
 
 
 import subprocess
-from prj_generator import SafeWriteFile
 from common_names import *
 
 
@@ -30,8 +29,12 @@ def build_apps(plats = "S60v3"):
    out, err = cmd.communicate()
    cmd1 = subprocess.Popen('abld build gcce urel', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=plats, shell=True)
    out1, err1 = cmd1.communicate()
-   SafeWriteFile(build_log, out + out1, 'a')
-   SafeWriteFile(build_err, err + err1, 'a')
+   out = out + out1
+   err = err + err1
+   # I hope it correctly store logs in parallel tasks
+   # after cmd.communicate() we have ugly 'crcrlf' line endings
+   SafeWriteFile(build_log, out.replace(u"\r", u""), 'a')
+   SafeWriteFile(build_err, err.replace(u"\r", u""), 'a')
 
 if __name__ == "__main__":
    build_apps(plats = "S60v3")
diff --git a/backends/platform/symbian/symbian_builder/common_names.py b/backends/platform/symbian/symbian_builder/common_names.py
index 75fb53a7f4..7d8e592ab0 100644
--- a/backends/platform/symbian/symbian_builder/common_names.py
+++ b/backends/platform/symbian/symbian_builder/common_names.py
@@ -28,12 +28,17 @@ timestamp = datetime.now().strftime('_%H_%M_%d_%m_%Y')
 
 build_log = "ScummVM_build%s.log" %timestamp
 build_err = "ScummVM_build%s.err" %timestamp
+build_time = "ScummVM_build_time%s.log" %timestamp
 
 whitelist = 'whitelist.txt'
 
 build = 'full'
 # build = 'release'
 
+#sis package version
+sis_major_version, sis_minor_version, sis_build_number = 2, 3, 0
+
+
 uids = ("0xA0000657", "0xA0000658", "0x2006FE7C", "0x2006FE7D", "0x2006FE7E", "0x2006FE7F", "0x2006FE80")
 # Test uids 3
 uids_tests = ("0xAA000657", "0xAA000658", "0xA006FE7C", "0xA006FE7D", "0xA006FE7E", "0xA006FE7F", "0xA006FE80")
@@ -43,10 +48,20 @@ def get_UIDs(build):
       return uids_tests
    return uids
 
+def SafeWriteFile(path, data, mode = 'w'):
+   """Save list elments as strings. Save strings as is"""
+   with open(path, mode) as f:
+      if type(data) is list:
+         for s in data:
+            f.write(s + '\n')
+      else:
+         f.write(data)
+
 active_config = ("DISABLE_NUKED_OPL", "USE_A52", "USE_MPEG2",  "USE_BINK", "USE_THEORADEC", "USE_TINYGL",
 "ENABLE_VKEYBD")
 #activate USE_SCALERS USE_ARM_SCALER_ASM USE_TTS USE_SPEECH_DISPATCHER USE_CLOUD USE_LIBCURL
-# USE_SDL_NET USE_DISCORD USE_UPDATES USE_LUA
+# USE_SDL_NET USE_DISCORD USE_UPDATES
+#Lua disabled by default due conflict declaration between struct TKey in lobject.h and system header e32std.h
 disabled_config = ("USE_ALSA", "ENABLE_OPL2LPT", "USE_SCALERS", "USE_ARM_SCALER_ASM",
 "USE_HQ_SCALERS", "USE_NASM", "USE_ELF_LOADER", "USE_SDL2", "USE_FLUIDSYNTH", "USE_TTS", "USE_SPEECH_DISPATCHER",
 "USE_CLOUD", "USE_LIBCURL", "USE_SDL_NET", "USE_OPENGL", "USE_DISCORD", "USE_LINUXCD", "ENABLE_EVENTRECORDER",
diff --git a/backends/platform/symbian/symbian_builder/create_installers.py b/backends/platform/symbian/symbian_builder/create_installers.py
index dc01a98402..4fe22b729f 100644
--- a/backends/platform/symbian/symbian_builder/create_installers.py
+++ b/backends/platform/symbian/symbian_builder/create_installers.py
@@ -21,7 +21,6 @@
 
 
 from __future__ import with_statement
-from prj_generator import SafeWriteFile
 import os, subprocess
 from common_names import *
 
diff --git a/backends/platform/symbian/symbian_builder/mmp_gen.py b/backends/platform/symbian/symbian_builder/mmp_gen.py
index d22d5bafda..bae1351b15 100644
--- a/backends/platform/symbian/symbian_builder/mmp_gen.py
+++ b/backends/platform/symbian/symbian_builder/mmp_gen.py
@@ -21,7 +21,7 @@
 
 
 from __future__ import with_statement
-import os, shutil, stat
+import os, shutil
 from collections import defaultdict as defdict
 from common_names import *
 
@@ -107,10 +107,12 @@ def processModule_mk(path, buildparams):
 
 
 # Add per engine fixes
-libc_engines = ("bladerunner", "glk", "illusions", "stark", "titanic", "ultima")
+libc_engines = ("ags", "bladerunner", "glk", "illusions", "nancy", "stark", "titanic", "ultima")
 def CheckEngine(lst, game):
    if game == "sword25":
       return None
+   if game == "testbed":
+      return None
    if game in libc_engines:
       lst = lst + "\nOPTION    GCCE -I'/Symbian/S60_5th_Edition_SDK_v1.0/epoc32/include/libc'\n"
    if game == "zvision":
@@ -205,7 +207,7 @@ def FilterSrcs(src, engine):
    if "ultima" in engine:
       return FilterUltima(src)
    # if "" in engine:
-      # Filter(src)
+      # return Filter(src)
    return src
 
 
@@ -215,6 +217,7 @@ ro_warning = """
 /* Warning! Carbide can silently change file.
 Set read-onle attribute after manual update!!! */
 """
+
 def MakeMMP(engine):
    global firstRun, currentEngine
    print "Start processing engine: %s" %engine
@@ -236,7 +239,7 @@ TARGETTYPE lib\n
 #include "../S60v3/build_config.mmh"
 
 #include "build_parts.mmh"
-#include "macros.mmh"\n
+#include "../S60v3/macros.mmh"\n
 USERINCLUDE    ..\..\..\..\engines\%s\n
 // *** SOURCE files
 SOURCEPATH   ..\..\..\..\engines\%s\n
@@ -267,14 +270,6 @@ LINK_PLUGIN(%s_DETECTION)
    dtable = os.path.join(pt, "detection_table.h")
    macros = os.path.join(local, "macros.mmh")
    engines = os.path.join(local, "engines.mmh")
-   #save old macros.mmh
-   macros_new = os.path.join(local, "macros.mmh.new")
-   engines_new = os.path.join(local, "engines.mmh.new")
-   if os.path.exists(macros_new):
-      macros = macros_new
-      firstRun = False
-   if os.path.exists(engines_new):
-      engines = engines_new
 #create files and add bld.inf header
    if firstRun is True:
       SafeWriteFile(bldinf, 'w', "PRJ_MMPFILES\n")
@@ -308,45 +303,12 @@ local = mmps
 # pt = 'e:\Scu\engines'
 # local = pt
 
-def data_dump(macros):
-   with open(macros) as ff:
-      f = ff.readlines()
-   n = [x.strip() for x in f if x.startswith(('STATICLIBRARY', 'MACRO'))]
-   n.sort()
-   return n
-
-def check_cashed():
-   macros_new = os.path.join(local, "macros.mmh.new")
-   if os.path.exists(macros_new):
-      macros = os.path.join(local, "macros.mmh")
-      engines = os.path.join(local, "engines.mmh")
-      engines_new = os.path.join(local, "engines.mmh.new")
-
-      macros_dump = data_dump(macros)
-      macros_dump_new = data_dump(macros_new)
-      macros_diff = set(macros_dump).symmetric_difference(set(macros_dump_new))
-      if not macros_diff:
-         return
-      SafeWriteFile(build_log, 'a', "new macro found: ")
-      SafeWriteFile(build_log, 'a', list(macros_diff))
-      SafeWriteFile(macros, 'a', list(macros_diff))
-
-      engines_dump = data_dump(engines)
-      engines_dump_new = data_dump(engines_new)
-      engines_diff = set(engines_dump).symmetric_difference(set(engines_dump_new))
-      SafeWriteFile(engines, 'a', list(engines_diff))
-
-      os.chmod(macros, stat.S_IREAD)
-      os.chmod(engines, stat.S_IREAD)
-
 def count_sc_parts():
    t = []
    for i in range(len(uids)):
-      idx = i+1
-      d = "#define SCUMMVM_PT_%d" %idx
+      d = "#define SCUMMVM_PT_%d" %(i+1)
       t.append(d)
    pth = os.path.join(local, "build_parts.mmh")
-   print t
    SafeWriteFile(pth, 'w', ro_warning)
    SafeWriteFile(pth, 'a', t)
 
@@ -362,22 +324,10 @@ def create_engine_mmps(arg = 'full'):
          try:
             shutil.rmtree(local)
             os.mkdir(local)
-         except:
-            macros = os.path.join(local, "macros.mmh")
-            engines = os.path.join(local, "engines.mmh")
-
-            macros_new = os.path.join(local, "macros.mmh.new")
-            engines_new = os.path.join(local, "engines.mmh.new")
-            SafeWriteFile(macros_new, 'w', ro_warning)
-            SafeWriteFile(engines_new, 'w', ro_warning)
-            os.chmod(macros, stat.S_IWRITE)
-            try:
-               os.chmod(engines, stat.S_IWRITE)
-            except: pass
+         except: pass
    t = os.listdir(pt)
    [MakeMMP(m) for m in t if os.path.isdir(os.path.join(pt, m))]
    count_sc_parts()
-   check_cashed()
 
 if __name__ == "__main__":
    create_engine_mmps()
diff --git a/backends/platform/symbian/symbian_builder/parse_base.py b/backends/platform/symbian/symbian_builder/parse_base.py
index 7b86b9860d..dc663c50b7 100644
--- a/backends/platform/symbian/symbian_builder/parse_base.py
+++ b/backends/platform/symbian/symbian_builder/parse_base.py
@@ -22,7 +22,6 @@
 from __future__ import with_statement
 import os
 from common_names import *
-from prj_generator import SafeWriteFile
 
 excluded = ("", "")
 
@@ -51,15 +50,24 @@ SOURCE     fs\symbian\symbianstream.cpp
 SOURCE     mixer\symbiansdl\symbiansdl-mixer.cpp
 // end porter job\n
 #include "build_parts.mmh"
-\n#include \"../mmp/macros.mmh\"\n
+\n#include \"../%s/macros.mmh\"\n
 """
 
 
-def processModule_mk(dir, mmp_file):
-   pth = os.path.join('..\..\..', dir)
+def checkMacro(macro, active_conf = active_config):
+   t = macro.split()[-1]
+   if t in active_conf:
+      return True
+   else:
+      if t not in disabled_config:
+         print "New macro found: %s" %t
+      return False
+
+def processModule_mk(folder, mmp_file, active_conf = active_config):
+   pth = os.path.join('..\..\..', folder)
    with open(os.path.join(pth, "module.mk")) as ff:
       f = ff.readlines()
-   pth = os.path.join('..\..\..\..', dir)
+   pth = os.path.join('..\..\..\..', folder)
    SafeWriteFile(mmp_file, "\nSOURCEPATH  %s\n" %pth, 'a')
 
    src = []
@@ -68,35 +76,16 @@ def processModule_mk(dir, mmp_file):
    for i in f:
       if "MODULE_OBJS :=" in i:
          addsrc = True
-         if addsrc is None:
-            addsrc = True
       elif "endif" in i:
          addsrc = False
       elif "SDL_BACKEND" in i:
          addsrc = True
       elif "ENABLE_" in i:
-         t = i.split()[-1]
-         if t in active_config:
-            addsrc = True
-         else:
-            addsrc = False
-            if t not in disabled_config:
-               print "New macro found: %s" %t
+         addsrc = checkMacro(i, active_conf)
       elif "USE_" in i:
-         t = i.split()[-1]
-         if t in active_config:
-            addsrc = True
-         else:
-            addsrc = False
-            if t not in disabled_config:
-               print "New macro found: %s" %t
+         addsrc = checkMacro(i, active_conf)
       elif "DISABLE_" in i:
-         t = i.split()[-1]
-         if t in active_config:
-            addsrc = True
-            addsrc = False
-            if t not in disabled_config:
-               print "New macro found: %s" %t
+         addsrc = checkMacro(i, active_conf)
       elif addsrc is True:
          tmp = i.strip()
          tmp = tmp.rstrip("\\")
@@ -106,11 +95,12 @@ def processModule_mk(dir, mmp_file):
             src += ["SOURCE   %s.cpp" %tmp[:-2]]
    SafeWriteFile(mmp_file, src, 'a')
 
+
 def parse_base(platform = "S60v3"):
    uids = get_UIDs(build)
-   codecs_mmp = os.path.join(mmps, mmp_name)
-   SafeWriteFile(codecs_mmp, mmp_template %platform)
-   [processModule_mk(i, codecs_mmp) for i in src_dirs]
+   mmp_file = os.path.join(mmps, mmp_name)
+   SafeWriteFile(mmp_file, mmp_template %(platform, platform) )
+   [processModule_mk(i, mmp_file) for i in src_dirs]
 
 if __name__ == "__main__":
    parse_base()
diff --git a/backends/platform/symbian/symbian_builder/parse_codecs.py b/backends/platform/symbian/symbian_builder/parse_codecs.py
index 283fe12b03..c766269e4f 100644
--- a/backends/platform/symbian/symbian_builder/parse_codecs.py
+++ b/backends/platform/symbian/symbian_builder/parse_codecs.py
@@ -22,7 +22,6 @@
 from __future__ import with_statement
 import os
 from common_names import *
-from prj_generator import SafeWriteFile
 
 excluded = ("renderer.cpp", "sjis.cpp", "coktel_decoder.cpp")
 
@@ -103,15 +102,15 @@ def processModule_mk(dir, mmp_file):
             src += ["SOURCE   %s.cpp" %tmp[:-2]]
    SafeWriteFile(mmp_file, src, 'a')
 
-def parse_codecs(platform = "S60v3"):
+def parse_codecs(platform):
    uids = get_UIDs(build)
    codecs_mmp = os.path.join(mmps, mmp_name)
    SafeWriteFile(codecs_mmp, mmp_template %platform)
    for i in range(len(uids)):
       idx = i+1
       SafeWriteFile(codecs_mmp, "#define SCUMMVM_PT_%d\n" %idx, 'a')
-   SafeWriteFile(codecs_mmp, "\n#include \"../mmp/macros.mmh\"\n", 'a')
+   SafeWriteFile(codecs_mmp, "\n#include \"../%s/macros.mmh\"\n" %platform, 'a')
    [processModule_mk(i, codecs_mmp) for i in src_dirs]
 
 if __name__ == "__main__":
-   parse_codecs()
+   parse_codecs(platform = "S60v3")
diff --git a/backends/platform/symbian/symbian_builder/parse_gamedata.py b/backends/platform/symbian/symbian_builder/parse_gamedata.py
new file mode 100644
index 0000000000..4b2d86b5b7
--- /dev/null
+++ b/backends/platform/symbian/symbian_builder/parse_gamedata.py
@@ -0,0 +1,100 @@
+# ScummVM - Graphic Adventure Engine
+# Copyright (C) 2021 Stryzhniou Fiodar
+
+# ScummVM is the legal property of its developers, whose names
+# are too numerous to list here. Please refer to the COPYRIGHT
+# file distributed with this source distribution.
+
+# 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.
+
+from __future__ import with_statement
+import os
+from common_names import *
+
+pkg_file = "ScummVM_gamedata.pkg"
+component_name = "ScummVM gamedata package"
+component_name_test = "ScummVM teting gamedata package"
+data_path = "..\\..\\..\\dists\\engine-data"
+theme_path = "..\\..\\..\\gui\\themes"
+
+# install_path has trailing '\'
+install_path = "!:\data\scummvm\\"
+
+# Template args = (Component name, UID, major version, minor version, build number, list of datafiles)
+pkg_template = """;;;
+;;; ScummVM .PKG file for .SIS generation
+;;;
+
+;Language - standard language definitions
+&EN
+
+; List of localised vendor names - one per language. At least one must be provided (English [EN]).
+; List must correspond to list of languages specified elsewhere in the .pkg
+%%{"ScummVM"}
+; The non-localised, globally unique vendor name (mandatory)
+:"ScummVM"
+
+; UID is the app's UID
+#{"%s"},(%s),%s,%s,%s,  TYPE=SISPATCH
+
+;Supports Series 60 v 3.0
+[0x101F7961], 0, 0, 0, {"Series60ProductID"}
+;Supports Series 60 v 5.0
+[0x1028315F], 0, 0, 0, {"Series60ProductID"}
+; Scummvm Documentation
+"..\..\..\..\COPYRIGHT"-"!:\\resource\\apps\\scummvm\\COPYRIGHT", FT, TC
+"..\..\..\..\COPYING"-"!:\\resource\\apps\\scummvm\\COPYING", FT, TC
+"..\README"-"!:\\resource\\apps\\scummvm\\SYMBIAN_README", FT, TC
+"..\..\..\..\AUTHORS"-"!:\\resource\\apps\scummvm\\AUTHORS"
+"..\..\..\..\README.md"-"!:\\resource\\apps\\scummvm\\README.md"
+"..\..\..\..\NEWS.md"-"!:\\resource\\apps\\scummvm\\NEWS.md"
+
+; Scummvm help
+"..\help\ScummVM.hlp"-"!:\\resource\help\ScummVM.hlp"
+
+; Common datafiles needed for some games
+"""
+
+pkg_string_template = "\"%s\" - \"!:\\data\\scummvm\%s\""
+pkg_string_template_beta = "\"%s\" - \"!:\\data\\scummvm\\beta\\%s\""
+
+
+def make_install_path(x, data_pth, build):
+   data_pth = os.path.join("..", data_pth)
+   if build == 'full':
+      return pkg_string_template_beta %(os.path.join(data_pth, x),x)
+   return pkg_string_template %(os.path.join(data_pth, x),x)
+
+
+def get_gamedata(data_pth, build):
+   files = os.listdir(data_pth)
+   files = [make_install_path(x, data_pth, build) for x in files if os.path.isfile(os.path.join(data_pth, x))]
+   return files
+
+
+def parse_gamedata(build, platform = "S60v3"):
+   uids = get_UIDs(build)
+   comp_name = component_name
+   if build == 'full':
+      comp_name = component_name_test
+   t = get_gamedata(data_path, build)
+   t += get_gamedata(data_path, build)
+   pkg = os.path.join(platform, pkg_file)
+   SafeWriteFile(pkg, pkg_template %(comp_name, uids[0], sis_major_version, sis_minor_version, sis_build_number) )
+   SafeWriteFile(pkg, t, mode = 'a')
+
+
+if __name__ == "__main__":
+   parse_gamedata(build = 'full', platform = "S60v3")
diff --git a/backends/platform/symbian/symbian_builder/parse_lua.py b/backends/platform/symbian/symbian_builder/parse_lua.py
new file mode 100644
index 0000000000..e91dc399e3
--- /dev/null
+++ b/backends/platform/symbian/symbian_builder/parse_lua.py
@@ -0,0 +1,75 @@
+# ScummVM - Graphic Adventure Engine
+# Copyright (C) 2021 Stryzhniou Fiodar
+
+# ScummVM is the legal property of its developers, whose names
+# are too numerous to list here. Please refer to the COPYRIGHT
+# file distributed with this source distribution.
+
+# 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.
+
+from __future__ import with_statement
+import os
+from common_names import *
+
+
+active_config = ("USE_LUA", )
+src_dirs = ("common", )
+mmp_name = "scummvm_lua.mmp"
+
+
+mmp_template = """
+TARGET          scummvm_lua.lib
+TARGETTYPE      lib
+
+MACRO           __IGNORE__E32STD_H__
+
+#include        "../%s/build_config.mmh"
+"""
+
+
+def processModule_mk(folder, mmp_file, active_conf = active_config):
+   pth = os.path.join('..\..\..', folder)
+   with open(os.path.join(pth, "module.mk")) as ff:
+      f = ff.readlines()
+   pth = os.path.join('..\..\..\..', folder)
+   SafeWriteFile(mmp_file, "\nSOURCEPATH  %s\n" %pth, 'a')
+
+   src = []
+   addsrc = None
+
+   for i in f:
+      if "MODULE_OBJS :=" in i:
+         continue
+      elif "endif" in i:
+         addsrc = False
+      elif "USE_LUA" in i:
+         addsrc = True
+      elif addsrc is True:
+         tmp = i.strip()
+         tmp = tmp.rstrip("\\")
+         tmp = tmp.strip()
+         if tmp.endswith(".o"):
+            src += ["SOURCE   %s.cpp" %tmp[:-2]]
+   SafeWriteFile(mmp_file, src, 'a')
+
+
+def parse_lua(platform = "S60v3"):
+   mmp_file = os.path.join(mmps, mmp_name)
+   SafeWriteFile(mmp_file, mmp_template %platform)
+   [processModule_mk(i, mmp_file, active_config) for i in src_dirs]
+
+
+if __name__ == "__main__":
+   parse_lua()
\ No newline at end of file
diff --git a/backends/platform/symbian/symbian_builder/piper.py b/backends/platform/symbian/symbian_builder/piper.py
index 24cd369df7..5f0856fb4c 100644
--- a/backends/platform/symbian/symbian_builder/piper.py
+++ b/backends/platform/symbian/symbian_builder/piper.py
@@ -21,9 +21,8 @@
 
 
 from __future__ import with_statement
-import os, subprocess, Queue, threading, errno
+import os, subprocess, Queue, threading, errno, time
 import multiprocessing as mp
-from prj_generator import SafeWriteFile
 
 from common_names import *
 
@@ -31,7 +30,7 @@ prj_template = "PRJ_MMPFILES\n%s"
 prj_path = "paralell_build"
 
 
-def tread_func(q):
+def thread_func(q):
    while True:
       fileName = q.get()
       if fileName is None:  # EOF?
@@ -51,14 +50,28 @@ def tread_func(q):
       tmp = os.path.join(pth, "bld.inf")
       SafeWriteFile(tmp, prj_template %fname)
 
+#That timed stuff done because datetime.now() return same time at every call
+      start = time.strftime("%H:%M:%S")
+
       cmd = subprocess.Popen('bldmake bldfiles', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pth, shell=True)
       out, err = cmd.communicate()
-      print "err: %s\n\n" %err
+      if len(err) > 0:
+         print "err: %s\n\n" %err
       cmd = subprocess.Popen('abld build gcce urel', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pth, shell=True)
       out1, err1 = cmd.communicate()
-      # I hope it correctly store logs in parallel tasks
-      SafeWriteFile(build_log, out + out1, mode = 'a')
-      SafeWriteFile(build_err, err + err1, mode = 'a')
+
+      end = time.strftime("%H:%M:%S" )
+      start_dt = datetime.strptime(start, '%H:%M:%S')
+      end_dt = datetime.strptime(end, '%H:%M:%S')
+      diff = (end_dt - start_dt)
+
+      out = out + out1
+      err = err + err1
+#After cmd.communicate() we have ugly 'crcrlf' line endings
+      SafeWriteFile(build_log, out.replace(u"\r", u""), mode = 'a')
+      SafeWriteFile(build_err, err.replace(u"\r", u""), mode = 'a')
+      SafeWriteFile(build_time, "Engine %s build time: %s.\n" %(fileName, str(diff)) , mode = 'a')
+
 
 
 def build_mmp(try_fix = False):
@@ -74,7 +87,8 @@ def build_mmp(try_fix = False):
    for fileName in fileNames:
       q.put(fileName)
    print q.qsize()
-   threads = [ threading.Thread(target=tread_func, args=(q, )) for i in range(mp.cpu_count()) ]
+   print "Thread count: %s" %mp.cpu_count()
+   threads = [ threading.Thread(target=thread_func, args=(q, )) for i in range(mp.cpu_count()) ]
    for thread in threads:
       thread.start()
       q.put(None)  # one EOF marker for each thread
diff --git a/backends/platform/symbian/symbian_builder/prj_generator.py b/backends/platform/symbian/symbian_builder/prj_generator.py
index 732110054d..f572bda9e6 100644
--- a/backends/platform/symbian/symbian_builder/prj_generator.py
+++ b/backends/platform/symbian/symbian_builder/prj_generator.py
@@ -21,7 +21,7 @@
 
 
 from __future__ import with_statement
-import os
+import os, stat
 from common_names import *
 
 
@@ -126,7 +126,7 @@ RESOURCE MENU_PANE r_scum_menu                                  // *** Submenu
 """
 
 # ---------------------------
-# Expect: mmp_template %(ordnum, UID3, ordnum, ordnum, ordnum, ordnum)
+# Expect: mmp_template %(ordnum, UID3, ordnum, ordnum, ordnum, ordnum, ordnum)
 mmp_template = """
 /*
  * Warning: autogenerated file
@@ -170,12 +170,13 @@ END
 EPOCSTACKSIZE	80000
 EPOCHEAPSIZE	5000000 64000000
 
+MACRO   SCUMMVM_PT_%s
 
 #define SCUMMVM_PT_%s
-#include "../mmp/macros.mmh"
-#include "ScummVM_common.mmh" // must be above engines.mmh
-
-#include "../mmp/engines.mmh"
+#include "macros.mmh"
+#include "build_config.mmh"
+#include "build_app_config.mmh" // must be above engines.mmh
+#include "engines.mmh"
 """
 # ---------------------------
 bld_inf_template = """
@@ -190,14 +191,45 @@ gnumakefile ..\\help\\build_help.mk
 """
 # ---------------------------
 
-def SafeWriteFile(path, data, mode = 'w'):
-   """Save list elments as strings. Save strings as is"""
-   with open(path, mode) as f:
-      if type(data) is list:
-         for s in data:
-            f.write(s + '\n')
-      else:
-         f.write(data)
+
+def data_dump(macros):
+   with open(macros) as ff:
+      f = ff.readlines()
+   n = [x.strip() for x in f if x.startswith(('STATICLIBRARY', 'MACRO'))]
+   n.sort()
+   return n
+
+
+def data_diff(data_cached, data):
+   data_cached = data_dump(data_cached)
+   data = data_dump(data)
+   return set(data_cached).symmetric_difference(set(data))
+
+
+def check_cashed(path):
+   macros_cached = os.path.join(path, "macros.mmh")
+   if os.path.exists(macros_cached):
+      macros = os.path.join(mmps, "macros.mmh")
+      engines_cached = os.path.join(path, "engines.mmh")
+      engines = os.path.join(mmps, "engines.mmh")
+
+      engines_diff = data_diff(engines_cached, engines)
+      macros_diff = data_diff(macros_cached, macros)
+      if not macros_diff:
+         return
+
+      print "new macro found: %s" %macros_diff
+      SafeWriteFile(build_log, "new macro found: ", 'a')
+      SafeWriteFile(build_log, list(macros_diff), 'a')
+      SafeWriteFile(build_log, '\n', 'a')
+
+      os.chmod(macros_cached, stat.S_IWRITE)
+      os.chmod(engines_cached, stat.S_IWRITE)
+      SafeWriteFile(macros_cached, list(macros_diff), 'a')
+      SafeWriteFile(engines_cached, list(engines_diff), 'a')
+      os.chmod(macros_cached, stat.S_IREAD)
+      os.chmod(engines_cached, stat.S_IREAD)
+
 
 def create_mmps(build, path = ''):
    uids = get_UIDs(build)
@@ -218,10 +250,11 @@ def create_mmps(build, path = ''):
       data = reg_rss_template %(UID3, idx, idx)
       rss_reg_name = "ScummVM%s_reg.rss" %idx
       SafeWriteFile(os.path.join(path, rss_reg_name), data)
-      data = mmp_template %(idx, UID3, idx, idx, idx, idx2)
+      data = mmp_template %(idx, UID3, idx, idx, idx, idx2, idx2)
       mmp_name = "ScummVM%s.mmp" %idx2
       SafeWriteFile(os.path.join(path, mmp_name), data)
       SafeWriteFile(bld_inf, mmp_name + "\n", mode = 'a')
+   check_cashed(path)
 
 if __name__ == "__main__":
-   create_mmps(build = 'release')
+   create_mmps(build = 'release', path = "S60v3")
diff --git a/backends/platform/symbian/symbian_builder/scummvm_hrh.py b/backends/platform/symbian/symbian_builder/scummvm_hrh.py
new file mode 100644
index 0000000000..7910537c76
--- /dev/null
+++ b/backends/platform/symbian/symbian_builder/scummvm_hrh.py
@@ -0,0 +1,61 @@
+# ScummVM - Graphic Adventure Engine
+# Copyright (C) 2021 Stryzhniou Fiodar
+
+# ScummVM is the legal property of its developers, whose names
+# are too numerous to list here. Please refer to the COPYRIGHT
+# file distributed with this source distribution.
+
+# 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.
+
+
+from __future__ import with_statement
+import os
+from common_names import *
+
+hrh_template = """
+/*
+ * Warning: autogenerated file
+ */
+#ifndef ScummHRH
+#define ScummHRH
+
+#if defined (UIQ3) || defined (__SERIES60_3X__)
+#ifdef SCUMMVM_PT_1
+#define ScummUid %s
+%s#endif // SCUMMVM_PT_1
+
+#else
+#define ScummUid 0x101f9b57
+#endif // defined (UIQ3) || defined (__SERIES60_3X__)
+
+#endif
+"""
+macro_templatte = """#elif defined (SCUMMVM_PT_%s)
+#define ScummUid %s
+"""
+
+def Generate_ScummVm_hrh(build):
+   uids = get_UIDs(build)
+   defines = ""
+   for i in range(len(uids)):
+      if i > 1:
+         defines += macro_templatte %(i, uids[i])
+   data = hrh_template %(uids[0], defines)
+   SafeWriteFile(os.path.join("src", "ScummVm.hrh"), data)
+
+if __name__ == "__main__":
+   Generate_ScummVm_hrh(build = "S60v3")
+
+   
\ No newline at end of file


Commit: 8ed482b5fe3a61e4c03c610a87610c706aa89baf
    https://github.com/scummvm/scummvm/commit/8ed482b5fe3a61e4c03c610a87610c706aa89baf
Author: Fiodar (fedor4ever at users.noreply.github.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/build_apps.py

Co-authored-by: Filippos Karapetis <bluegr at gmail.com>

Changed paths:
    backends/platform/symbian/symbian_builder/build_apps.py


diff --git a/backends/platform/symbian/symbian_builder/build_apps.py b/backends/platform/symbian/symbian_builder/build_apps.py
index 60949b7c42..e2c5062d6a 100644
--- a/backends/platform/symbian/symbian_builder/build_apps.py
+++ b/backends/platform/symbian/symbian_builder/build_apps.py
@@ -31,7 +31,7 @@ def build_apps(plats = "S60v3"):
    out1, err1 = cmd1.communicate()
    out = out + out1
    err = err + err1
-   # I hope it correctly store logs in parallel tasks
+   # I hope it correctly stores logs in parallel tasks
    # after cmd.communicate() we have ugly 'crcrlf' line endings
    SafeWriteFile(build_log, out.replace(u"\r", u""), 'a')
    SafeWriteFile(build_err, err.replace(u"\r", u""), 'a')


Commit: 3cda4cd5557ccf217010e7a273e8a66d2dc85cfc
    https://github.com/scummvm/scummvm/commit/3cda4cd5557ccf217010e7a273e8a66d2dc85cfc
Author: Fiodar (fedor4ever at users.noreply.github.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/piper.py

Co-authored-by: Filippos Karapetis <bluegr at gmail.com>

Changed paths:
    backends/platform/symbian/symbian_builder/piper.py


diff --git a/backends/platform/symbian/symbian_builder/piper.py b/backends/platform/symbian/symbian_builder/piper.py
index 5f0856fb4c..93d7c2ad88 100644
--- a/backends/platform/symbian/symbian_builder/piper.py
+++ b/backends/platform/symbian/symbian_builder/piper.py
@@ -50,7 +50,7 @@ def thread_func(q):
       tmp = os.path.join(pth, "bld.inf")
       SafeWriteFile(tmp, prj_template %fname)
 
-#That timed stuff done because datetime.now() return same time at every call
+#Needed because datetime.now() returns the same time for every call
       start = time.strftime("%H:%M:%S")
 
       cmd = subprocess.Popen('bldmake bldfiles', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pth, shell=True)
@@ -95,4 +95,4 @@ def build_mmp(try_fix = False):
 
 
 if __name__ == "__main__":
-   build_mmp()
\ No newline at end of file
+   build_mmp()


Commit: 3af8c7bc2e90c47219d4cc1a46f77b86b010bb7e
    https://github.com/scummvm/scummvm/commit/3af8c7bc2e90c47219d4cc1a46f77b86b010bb7e
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/common_names.py

Changed paths:
    backends/platform/symbian/symbian_builder/common_names.py


diff --git a/backends/platform/symbian/symbian_builder/common_names.py b/backends/platform/symbian/symbian_builder/common_names.py
index 7d8e592ab0..ae0b39101e 100644
--- a/backends/platform/symbian/symbian_builder/common_names.py
+++ b/backends/platform/symbian/symbian_builder/common_names.py
@@ -49,7 +49,7 @@ def get_UIDs(build):
    return uids
 
 def SafeWriteFile(path, data, mode = 'w'):
-   """Save list elments as strings. Save strings as is"""
+   """Save list elements as strings. Save strings as is"""
    with open(path, mode) as f:
       if type(data) is list:
          for s in data:


Commit: e519b49a4af47378a7f5102352f12db915364545
    https://github.com/scummvm/scummvm/commit/e519b49a4af47378a7f5102352f12db915364545
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/common_names.py

Changed paths:
    backends/platform/symbian/symbian_builder/common_names.py


diff --git a/backends/platform/symbian/symbian_builder/common_names.py b/backends/platform/symbian/symbian_builder/common_names.py
index ae0b39101e..485f302d7c 100644
--- a/backends/platform/symbian/symbian_builder/common_names.py
+++ b/backends/platform/symbian/symbian_builder/common_names.py
@@ -61,7 +61,7 @@ active_config = ("DISABLE_NUKED_OPL", "USE_A52", "USE_MPEG2",  "USE_BINK", "USE_
 "ENABLE_VKEYBD")
 #activate USE_SCALERS USE_ARM_SCALER_ASM USE_TTS USE_SPEECH_DISPATCHER USE_CLOUD USE_LIBCURL
 # USE_SDL_NET USE_DISCORD USE_UPDATES
-#Lua disabled by default due conflict declaration between struct TKey in lobject.h and system header e32std.h
+#LUA disabled by default due to conflicting declaration of struct TKey in lobject.h and system header e32std.h
 disabled_config = ("USE_ALSA", "ENABLE_OPL2LPT", "USE_SCALERS", "USE_ARM_SCALER_ASM",
 "USE_HQ_SCALERS", "USE_NASM", "USE_ELF_LOADER", "USE_SDL2", "USE_FLUIDSYNTH", "USE_TTS", "USE_SPEECH_DISPATCHER",
 "USE_CLOUD", "USE_LIBCURL", "USE_SDL_NET", "USE_OPENGL", "USE_DISCORD", "USE_LINUXCD", "ENABLE_EVENTRECORDER",


Commit: 714120466ada61fff82f465b7ec362364e8fc818
    https://github.com/scummvm/scummvm/commit/714120466ada61fff82f465b7ec362364e8fc818
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/piper.py

Changed paths:
    backends/platform/symbian/symbian_builder/piper.py


diff --git a/backends/platform/symbian/symbian_builder/piper.py b/backends/platform/symbian/symbian_builder/piper.py
index 93d7c2ad88..30a29f48e2 100644
--- a/backends/platform/symbian/symbian_builder/piper.py
+++ b/backends/platform/symbian/symbian_builder/piper.py
@@ -50,7 +50,7 @@ def thread_func(q):
       tmp = os.path.join(pth, "bld.inf")
       SafeWriteFile(tmp, prj_template %fname)
 
-#Needed because datetime.now() returns the same time for every call
+        #Needed because datetime.now() returns the same time for every call
       start = time.strftime("%H:%M:%S")
 
       cmd = subprocess.Popen('bldmake bldfiles', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pth, shell=True)


Commit: 54ca2dcd8266bf1846d215fdb919ccbd613b7ad6
    https://github.com/scummvm/scummvm/commit/54ca2dcd8266bf1846d215fdb919ccbd613b7ad6
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/piper.py

Changed paths:
    backends/platform/symbian/symbian_builder/piper.py


diff --git a/backends/platform/symbian/symbian_builder/piper.py b/backends/platform/symbian/symbian_builder/piper.py
index 30a29f48e2..534a74556d 100644
--- a/backends/platform/symbian/symbian_builder/piper.py
+++ b/backends/platform/symbian/symbian_builder/piper.py
@@ -50,7 +50,7 @@ def thread_func(q):
       tmp = os.path.join(pth, "bld.inf")
       SafeWriteFile(tmp, prj_template %fname)
 
-        #Needed because datetime.now() returns the same time for every call
+      #Needed because datetime.now() returns the same time for every call
       start = time.strftime("%H:%M:%S")
 
       cmd = subprocess.Popen('bldmake bldfiles', stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pth, shell=True)


Commit: 89ae8da5de16e199ab944211785d75cded81493b
    https://github.com/scummvm/scummvm/commit/89ae8da5de16e199ab944211785d75cded81493b
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2021-06-30T16:33:47+02:00

Commit Message:
Update backends/platform/symbian/symbian_builder/piper.py

Changed paths:
    backends/platform/symbian/symbian_builder/piper.py


diff --git a/backends/platform/symbian/symbian_builder/piper.py b/backends/platform/symbian/symbian_builder/piper.py
index 534a74556d..b4ae3bdafe 100644
--- a/backends/platform/symbian/symbian_builder/piper.py
+++ b/backends/platform/symbian/symbian_builder/piper.py
@@ -67,7 +67,7 @@ def thread_func(q):
 
       out = out + out1
       err = err + err1
-#After cmd.communicate() we have ugly 'crcrlf' line endings
+      #After cmd.communicate() we have ugly 'crcrlf' line endings
       SafeWriteFile(build_log, out.replace(u"\r", u""), mode = 'a')
       SafeWriteFile(build_err, err.replace(u"\r", u""), mode = 'a')
       SafeWriteFile(build_time, "Engine %s build time: %s.\n" %(fileName, str(diff)) , mode = 'a')




More information about the Scummvm-git-logs mailing list