Adaptation/GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita
changeset 15 307f4279f433
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Adaptation/GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita	Fri Oct 15 14:32:18 2010 +0100
@@ -0,0 +1,467 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"Eclipse Public License v1.0" which accompanies this distribution, 
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
+<!-- Initial Contributors:
+    Nokia Corporation - initial contribution.
+Contributors: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C" xml:lang="en"><title>Keyword reference (P-R)</title><prolog><metadata><keywords/></metadata></prolog><conbody>
+<p>This page lists the keywords starting from P to R. </p>
+<section id="GUID-C95FF58E-B556-4B31-AC67-9B8FCB283D0F"><title>paged</title><codeblock xml:space="preserve">paged</codeblock><p><i>rombuild and rofsbuild</i></p><p>Use the <codeph>paged</codeph> keyword to specify that the executable
+is code paged.   If an executable is marked as code paged, the pages
+are loaded into the RAM on demand one page after another. This can
+reduce application startup time and memory usage. </p><p>This is the
+same as specifying the <codeph>pagedcode</codeph> keyword for an executable.</p></section>
+<section id="GUID-1314D06A-FA06-4D08-87FA-4B4927081127"><title>pagedcode</title><codeblock xml:space="preserve">pagedcode</codeblock><p><i>rombuild and rofsbuild</i></p><p>Same as <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-C95FF58E-B556-4B31-AC67-9B8FCB283D0F"><codeph>paged</codeph></xref>.</p></section>
+<section id="GUID-23A28BEA-1AF4-42B6-887F-60C7B0EE2DEC"><title>pageddata</title><codeblock xml:space="preserve">pageddata</codeblock><p><i>rombuild and rofsbuild</i></p><p>Use the <codeph>pageddata</codeph> keyword to specify that the
+executable is <xref href="http://developer.symbian.org/main/documentation/reference/s3/pdk/GUID-1391CDCC-9A09-54FB-BA7D-BC7A91DB2351.html" scope="external">data paged</xref>. This controls the paging of both
+heap and stacks for an executable. For more fine-grained control of
+memory usage, specify the paging of heap and stack data during the
+creation of new threads and processes. </p></section>
+<section id="GUID-ADB633E8-8DD1-514C-9560-A6A2429DA199"><title>pagingoverride</title> <codeblock id="GUID-B519894B-22BB-516A-A955-093ED800767B" xml:space="preserve">pagingoverride [NOPAGING | ALWAYSPAGE | DEFAULTUNPAGED | DEFAULTPAGED]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>This overrides the code
+and data paging settings for all the files, such as EXE and DLL in
+an OBY file. It takes a single argument, which can be one of the following: </p> <table id="GUID-CB22C2A3-68E8-51DD-9314-3ABC6AC71FE5">
+<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
+<thead>
+<row>
+<entry>Argument</entry>
+<entry>Purpose</entry>
+</row>
+</thead>
+<tbody>
+<row>
+<entry><p> <i>NOPAGING</i>  </p> </entry>
+<entry><p>To mark all executables as unpaged, irrespective of whether
+they are marked as paged or unpaged in the <filepath>MMP</filepath> file. </p> </entry>
+</row>
+<row>
+<entry><p> <i>ALWAYSPAGE</i>  </p> </entry>
+<entry><p>To mark all executables as paged, irrespective of whether
+they are marked as paged or unpaged in the <filepath>MMP</filepath> file. </p> </entry>
+</row>
+<row>
+<entry><p> <i>DEFAULTUNPAGED</i>  </p> </entry>
+<entry><p>All executables, which are not marked as paged or unpaged
+are marked as unpaged by default. </p> </entry>
+</row>
+<row>
+<entry><p> <i>DEFAULTPAGED</i>  </p> </entry>
+<entry><p>All executables, which are not marked as paged or unpaged
+are marked as paged by default. </p> </entry>
+</row>
+</tbody>
+</tgroup>
+</table> <p>For example, the following entry in the Obey file marks
+all the executables as unpaged: </p> <codeblock id="GUID-A6794DD3-049A-5C5C-A68D-E54316DF30DD" xml:space="preserve">pagingoverride NOPAGING</codeblock> </section>
+<section id="GUID-29A1FB89-E364-5C90-99D3-92247B514810"><title>pagingpolicy</title> <codeblock id="GUID-AE92F332-CAF1-5BA7-918C-0BD8FE0F11C0" xml:space="preserve">pagingpolicy [NOPAGING | ALWAYSPAGE | DEFAULTUNPAGED | DEFAULTPAGED]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>This overrides the default
+settings for both code and data paging. It also overrides the settings
+from all the <xref href="GUID-85B33746-074D-5B54-ACF4-1B1620D48FF6.dita#GUID-85B33746-074D-5B54-ACF4-1B1620D48FF6/GUID-08CFF2B1-63CC-5358-AD13-B4152A83B640">previous levels</xref>. This keyword takes a single argument, which
+can be one of the possible values listed in <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-ADB633E8-8DD1-514C-9560-A6A2429DA199">pagingoverride</xref>. </p> <p>For example, the following entry in
+the Obey file instructs the loader not to page the executables in
+the default state: </p> <codeblock id="GUID-065D951C-4AD1-5DCB-A470-2B11D025D43F" xml:space="preserve">pagingpolicy NOPAGING</codeblock> </section>
+<section id="GUID-C3734F82-AAB3-438F-BE32-C3EF2C26B4FD"><title>payloaduid</title><p><codeblock xml:space="preserve">payloaduid = &lt;payloaduid&gt;</codeblock></p><p>Identifies
+the payload of the SMR partition. This field allows kernel consumers
+(such as HCR) at runtime to locate the memory regions that contain
+their data.</p></section>
+<section id="GUID-871843B7-9AB6-4BEC-92BD-4BB1D6E81B34"><title>payloadflags</title><p><codeblock xml:space="preserve">payloadflags = &lt;payloadflags&gt;</codeblock></p><p>Specifies the payload specific flags that are defined at runtime
+by the the payload provider tools or user and payload consumer. This
+field allows the provider to give metadata to the consumer of the
+payload.</p></section>
+<section id="GUID-705897FD-9EC4-5F54-9198-A93C5080B80E"><title>patchdata</title> <codeblock id="GUID-AC20808F-B7E1-5A92-8C61-94E3E93D0AC1" xml:space="preserve">patchdata &lt;binary_name&gt; @ &lt;symbolname&gt; &lt;newvalue&gt;
+</codeblock> <p> <i>BUILDROM only</i>  </p> <p>This keyword is introduced
+since Symbian OS v9.3, and it enables you to change the value of a
+constant that is exported by a binary while building the ROM image. </p> <p>This means that the value of the constant can be changed without
+rebuilding the binary. This is useful for quickly building ROM images
+with different values for the constant, allowing you to make comparisons
+in behaviour between the ROMs. This keyword must be placed before
+or after the binary that it patches in the <filepath>OBY</filepath> file. </p> <table id="GUID-AF61DE84-7208-52B6-A586-2493E4CDA6FC">
+<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
+<tbody>
+<row>
+<entry><p>&lt;binary_name&gt; </p> </entry>
+<entry><p>The name of the binary on the PC and not the name in the
+ROM image. </p> </entry>
+</row>
+<row>
+<entry><p>&lt;symbolname&gt; </p> </entry>
+<entry><p>The symbolic name of the constant exported by the binary. </p> </entry>
+</row>
+<row>
+<entry><p>&lt;newvalue&gt; </p> </entry>
+<entry><p>The replacement value. This can be specified either as an
+integer or as a hexadecimal value. </p> <p>It is assumed that the
+exported constant is an integer that is either 1 byte, 2 bytes or
+4 bytes in length, which means that the size of this replacement value
+must not exceed the capacity of the constant to represent it. </p> </entry>
+</row>
+</tbody>
+</tgroup>
+</table> <p>For example, if a DLL named <filepath>dllA.dll</filepath> is created based on the header file <filepath>dllA.h</filepath> and
+source file <filepath>dllA.cpp</filepath>: </p> <codeblock id="GUID-D711F52C-2888-5AFA-AD38-F234CFC39A20" xml:space="preserve">//dllA.h
+IMPORT_C int bar();
+...
+</codeblock> <codeblock id="GUID-F5663D32-3ABC-5C08-8145-624459278F5C" xml:space="preserve">//dllA.cpp
+#include “dllA.h”
+EXPORT_C extern const unsigned int foo = 0x1234;
+EXPORT_C int bar ()
+    {
+    return foo;
+    ...
+    }
+</codeblock> <p>then an executable file can import this constant;
+for example: </p> <codeblock id="GUID-CB782D99-4860-59E3-8E0F-2A6078A7DF55" xml:space="preserve">#include &lt;e32cons.h&gt;
+#include &lt;e32base.h&gt;
+#include “dllA.h”
+...
+int importValue = bar();
+...
+</codeblock> <p>If you add the following statement to the <filepath>.oby</filepath> file to change the value of constant "foo" while
+building the ROM, then the actual value of <codeph>foo</codeph> accessed
+by the executable file is <codeph>0x100</codeph>, and not <codeph>0x1234</codeph> as specified when <filepath>DllA</filepath> was originally
+built. </p> <codeblock id="GUID-39DF91C3-AD49-5FCB-9825-3A6CE73F8B4C" xml:space="preserve">patchdata dllA @ foo 0x100</codeblock> <p> <b> Notes:</b>  </p> <ul>
+<li id="GUID-825461D9-E933-531C-AD97-398AE781105F"><p>The value of
+the constant in the source is not changed. It is only its value in
+the copy of the binary incorporated into the ROM image that is changed. </p> </li>
+<li id="GUID-0BAAF169-F04B-5E3C-B7E1-E66132034D4D"><p>Do not define
+a patchable constant (exported data) in the source file in which it
+is referred to, because the compiler may inline it. If a constant
+is inlined, it cannot be patched. Hence, the constant must be defined
+in a separate source file and must be referred to in other source
+files by using the <codeph>extern</codeph> qualifier. </p> </li>
+</ul> </section>
+<section id="GUID-19D81B5A-A13E-5468-B886-2EF65139C950"><title>patched</title> <codeblock id="GUID-3C8C1038-E677-5583-9E68-0BF6CADDB586" xml:space="preserve">patched</codeblock> <p> <i>rombuild only</i>  </p> <p>This is used when sectioning a
+ROM for language variants etc. If an executable is to be replaced,
+make it patched in the first section of the ROM and include a replacement
+in the top section of the ROM, after the <xref href="GUID-6843109A-1567-5287-9AFF-3AE5E80334AF.dita#GUID-6843109A-1567-5287-9AFF-3AE5E80334AF/GUID-D31658A3-6346-5BBE-B79C-D274113C6120">section</xref> keyword. </p> <p>This keyword appears at the point
+in the obey file where the ROM is to be split. All files before this
+line appear in the first (constant) section and files after appear
+in the second (patch/language) section. </p> </section>
+<section id="GUID-1950C3F1-BB6A-5560-955B-41D8A62FF041"><title>platsecdiagnostics</title> <codeblock id="GUID-438A1C0E-6526-5907-A1A5-77FDE415B191" xml:space="preserve">platsecdiagnostics [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
+Symbian platform security when building a ROM. </p> <p>It controls
+whether or not diagnostic messages are emitted when a capability or
+other platform security policy check fails. A diagnostic message takes
+the general form: </p> <codeblock id="GUID-5D417FA2-0C87-5D56-A9A7-24D13A3DDDE2" xml:space="preserve">*PlatSec* ERROR - xxxxx</codeblock> <p>if platform security is enforced </p> <codeblock id="GUID-0FD5A8AA-FCDB-539E-ACE4-1B8FFD1659D8" xml:space="preserve">*PlatSec* WARNING - xxxxx</codeblock> <p>if platform security is <i>NOT</i> enforced. </p> <p>The string
+xxxxx represents the text of the message that describes the capability
+being violated or the security policy check that is failing. </p> <ul>
+<li id="GUID-9D53B858-A308-597B-B2D9-D9FF3A2996CC"><p>Specify <codeph>on</codeph> to <i>enable</i> diagnostic messages to be emitted. </p> </li>
+<li id="GUID-EA18D791-E5C6-5B83-8B50-BD24A1292583"><p>Specify <codeph>off</codeph> to <i>disable</i> diagnostic messages from being emitted. </p> </li>
+<li id="GUID-3FAF9887-5C75-5892-B0A6-F85D75DC2188"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
+</ul> </section>
+<section id="GUID-2644E195-4339-5809-ACA0-6B15244AA4AD"><title>platsecdisabledcaps</title> <codeblock id="GUID-9377A178-7A9D-5B48-8F6F-FB832180F483" xml:space="preserve">platsecdisabledcaps [+|-]cap1 [+|- cap2] [+|- cap3] ...[+|-capn]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
+Symbian platform security when building a ROM. </p> <p>It allows capabilities
+to be added to, or removed from, all executables in the ROM image. </p> <p>Specify a list of capability names prefixed either by a <codeph>+</codeph> character or a <codeph>-</codeph> character. The first
+capability name in the list does not need to prefixed by either of
+these characters, but if it is omitted a <codeph>+</codeph> character
+is assumed. </p> <p>Capabilities preceded by a <codeph>+</codeph> character
+are added to all executables, while those preceded by a <codeph>-</codeph> character are removed from all executables. </p> <p>Any of the capabilities
+listed in the left hand column in the table below can be specified;
+follow the corresponding link in the right hand column for a description
+of that capability. Note that you can also use: </p> <codeblock id="GUID-D27E91F6-4522-5A78-AA36-5F21F6893B89" xml:space="preserve">+ALL</codeblock> <p>to add all capabilities, and </p> <codeblock id="GUID-005016EE-7B7C-5B92-98AF-12176CEBEEBF" xml:space="preserve">+NONE</codeblock> <p>to remove all capabilities. </p> <p>Note, however, that the combinations <codeph>-ALL</codeph> and <codeph>-NONE</codeph> are not permitted </p> <table id="GUID-60D9A9D6-420C-593E-A67B-FA10572DBC3D">
+<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
+<tbody>
+<row>
+<entry><p><table id="GUID-F0A90295-7468-5559-BDF7-68E70E10EFCE">
+<tgroup cols="1"><colspec colname="col0"/>
+
+<tbody>
+<row>
+<entry>Capability</entry>
+</row>
+</tbody>
+</tgroup>
+</table> </p> </entry>
+<entry><p><table id="GUID-E1446E24-51B8-53CB-902F-5DB0EF66323D">
+<tgroup cols="1"><colspec colname="col0"/>
+
+<tbody>
+<row>
+<entry>TCapability Enum value</entry>
+</row>
+</tbody>
+</tgroup>
+</table> </p> </entry>
+</row>
+<row>
+<entry><p>TCB </p> </entry>
+<entry><p> <xref href="GUID-0C19208D-732F-3B2B-9B0F-81CB1CB56DFC.dita"><apiname>ECapabilityTCB</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>CommDD </p> </entry>
+<entry><p> <xref href="GUID-2714B609-120A-31C1-9415-235A2FEB9D9A.dita"><apiname>ECapabilityCommDD</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>PowerMgmt </p> </entry>
+<entry><p> <xref href="GUID-76F4383B-4EA5-391A-A271-A8F65ED77EC0.dita"><apiname>ECapabilityPowerMgmt</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>MultimediaDD </p> </entry>
+<entry><p> <xref href="GUID-48AA1686-C619-3C36-B4B5-6C5DE1F50B0A.dita"><apiname>ECapabilityMultimediaDD</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>ReadDeviceData </p> </entry>
+<entry><p> <xref href="GUID-1AC4E327-14CE-382D-AA1A-1A7EDBA1863E.dita"><apiname>ECapabilityReadDeviceData</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>WriteDeviceData </p> </entry>
+<entry><p> <xref href="GUID-C607209F-6FC5-31DE-8034-E5B799B857A8.dita"><apiname>ECapabilityWriteDeviceData</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>DRM </p> </entry>
+<entry><p> <xref href="GUID-C0EF5A59-F716-313A-911F-2D3D773DF597.dita"><apiname>ECapabilityDRM</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>TrustedUI </p> </entry>
+<entry><p> <xref href="GUID-AFB7AB40-B829-37B8-AAB1-7A6FAED9671B.dita"><apiname>ECapabilityTrustedUI</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>ProtServ </p> </entry>
+<entry><p> <xref href="GUID-200CA018-2CB3-3E4A-A505-085FAD2E3E8B.dita"><apiname>ECapabilityProtServ</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>DiskAdmin </p> </entry>
+<entry><p> <xref href="GUID-99D8A4E8-BC4F-39FF-A3DF-832CF0411629.dita"><apiname>ECapabilityDiskAdmin</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>NetworkControl </p> </entry>
+<entry><p> <xref href="GUID-4AFB561B-34D7-3570-A4C9-24B4952C787A.dita"><apiname>ECapabilityNetworkControl</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>AllFiles </p> </entry>
+<entry><p> <xref href="GUID-89631CF3-4AEE-3C2F-8AAE-5D9C3EB3B373.dita"><apiname>ECapabilityAllFiles</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>SwEvent </p> </entry>
+<entry><p> <xref href="GUID-369B6584-AB7F-3AA2-B912-E912D2BCBE98.dita"><apiname>ECapabilitySwEvent</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>NetworkServices </p> </entry>
+<entry><p> <xref href="GUID-07A09CBA-CB4E-3CBE-9FA3-930C455F3B0C.dita"><apiname>ECapabilityNetworkServices</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>LocalServices </p> </entry>
+<entry><p> <xref href="GUID-7D0E447B-EC32-355B-8BBF-F074A1B10D8A.dita"><apiname>ECapabilityLocalServices</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>ReadUserData </p> </entry>
+<entry><p> <xref href="GUID-4897D21D-5ACF-30A5-A38C-371A3983814D.dita"><apiname>ECapabilityReadUserData</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>WriteUserData </p> </entry>
+<entry><p> <xref href="GUID-8908E5F7-AC6A-333B-8F65-6DDC46798F48.dita"><apiname>ECapabilityWriteUserData</apiname></xref>  </p> </entry>
+</row>
+<row>
+<entry><p>Location </p> </entry>
+<entry><p> <xref href="GUID-1B530864-C77B-3CDE-B761-83C2EED44DB8.dita"><apiname>ECapabilityLocation</apiname></xref>  </p> </entry>
+</row>
+</tbody>
+</tgroup>
+</table> <p>For example: </p> <codeblock id="GUID-9EB9582E-7FD8-525D-872A-50B6E6D0AAE0" xml:space="preserve">PlatSecDisabledCaps LocalServices+ReadDeviceData+ReadUserData</codeblock> </section>
+<section id="GUID-275FDBE0-D0AA-5976-9886-B0D56C075C7F"><title>platsecenforcement</title> <codeblock id="GUID-CEAAB920-F6C4-5079-BD58-88ECC541D8D5" xml:space="preserve">platsecenforcement [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
+Symbian platform security when building a ROM. </p> <p>It controls
+whether or not platform security is enforced. </p> <ul>
+<li id="GUID-E33ED82C-6870-59CE-8240-B60E4C5C33E9"><p>Specify <codeph>on</codeph> to <i>enable</i> platform security enforcement. If enforcement
+is enabled, and a capability or other platform security policy check
+fails, then the appropriate action for a failed platform security
+check occurs. </p> </li>
+<li id="GUID-35B93E8F-A341-5246-A400-FD501FE2F4C8"><p>Specify <codeph>off</codeph> to <i>disable</i> platform security enforcement. If
+enforcement is disabled, and a capability or other platform security
+policy check fails, then the system continues as though the original
+platform security check had in fact passed. </p> </li>
+<li id="GUID-DAEBBB42-DBF7-5821-B4E9-2FAC23057FEF"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
+</ul> </section>
+<section id="GUID-83F419EE-9ECD-5B19-9B9E-11F2066E5C8D"><title>platsecenforcesysbin</title> <codeblock id="GUID-8913D68B-F934-5D8B-9095-1493770E060B" xml:space="preserve">platsecenforcesysbin [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
+Symbian platform security when building a ROM. </p> <p>It controls
+whether or not to force the location of binary executables into the <filepath>\Sys\Bin\</filepath> directory. </p> <ul>
+<li id="GUID-C9712785-EC25-598A-AEAD-69197B032D7B"><p>Specifying <codeph>on</codeph> has the following effects: </p> <ul>
+<li id="GUID-DD14B43D-B1F1-5C39-9B05-176276664D73"><p> <codeph>rombuild</codeph> places all executables into <filepath>Z:\Sys\Bin\</filepath>, and
+overrides any file path specified in any of the <filepath>.IBY</filepath> files. </p> </li>
+<li id="GUID-3DF8A9CE-46E5-5125-B562-62F747346B01"><p>the loader only
+looks for files in the <filepath>\Sys\Bin\</filepath> directory and
+only loads files from the <filepath>\Sys\Bin\</filepath> directory.
+If a different path is specified this path is ignored and the <filepath>\Sys\Bin\</filepath> directory is searched. </p> </li>
+</ul> </li>
+<li id="GUID-4BEFDE6C-4E52-570A-9804-76A864AB501E"><p>Specifying <codeph>off</codeph> causes <codeph>rombuild</codeph> to place files according
+to the file path specified in the <filepath>.IBY</filepath> files
+and permits the loader to load files from any specified path. </p> </li>
+<li id="GUID-1860E5D0-B8C3-5FCB-A023-87DF6935B958"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
+</ul> </section>
+<section id="GUID-B5EE7071-532B-591B-904B-93108A42D939"><title>platsecprocessisolation</title> <codeblock id="GUID-835546BD-69EB-5CBC-AB8C-B6CAC38A5193" xml:space="preserve">platsecprocessisolation [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
+Symbian platform security when building a ROM. </p> <p>It controls
+whether or not insecure APIs inherited from EKA1 (Versions 8.1a, 8.0a,
+7.0s, and earlier) are to be disabled. These are APIs whose use is
+intended to be restricted. The kernel provides run-time checks for
+their correct usage. </p> <p>See the <xref href="GUID-DB441DFF-0075-5122-A2EB-A6EF76375D71.dita">list of APIs affected
+by the platsecprocessisolation keyword</xref>. </p> <ul>
+<li id="GUID-78A05AA6-49AC-54CF-AB53-6FEACBC2AB86"><p>Specify <codeph>on</codeph> to <i>disable</i> insecure APIs. Incorrect use of this
+set of restricted APIs results in diagnostic messages, if <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-1950C3F1-BB6A-5560-955B-41D8A62FF041">platsecdiagnostics</xref> is <codeph>on</codeph>, and raises panics
+or causes errors if <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-275FDBE0-D0AA-5976-9886-B0D56C075C7F">platsecenforcement</xref> is <codeph>on</codeph>. </p> </li>
+<li id="GUID-F1160335-4D72-5FEC-B1EF-02724A4F70C3"><p>Specify <codeph>off</codeph> to <i>allow</i> insecure APIs. </p> </li>
+<li id="GUID-9B48AE55-EBFA-587D-AB37-0C609D1066AC"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified then <codeph>on</codeph> is assumed as a default. </p> </li>
+</ul> </section>
+<section id="PREFERREDPREFERREDROMBUILDONLYTHIS-0399C898"><title>preferred</title><codeblock xml:space="preserve">preferred</codeblock><p><i>rombuild only</i></p><p>This
+keyword specifies that the major version of the executable binary
+must be preferred over its minor versions.  The minor version specifies
+the revision of the executable. The major version enables you to identify
+whether two versions of an executable are compatible.  The two versions
+of an executable can be compatible only if they have same major version.</p><p>The executable's header stores minor and major versions of the
+executable. </p></section>
+<section id="GUID-D14ECB32-00DD-574B-9301-2EF11AE55BA5"><title>primary[[HWVD]]</title> <codeblock id="GUID-F15C440F-EBAB-55EE-B785-D345B5131A45" xml:space="preserve">primary[[HWVD]] = &lt;source-file&gt; &lt;destination-image-file&gt; [File-attribute-list] [Override-Attribute-list]</codeblock> <p> <i>rombuild only</i>  </p> <p>A standard executable file that
+is loaded directly, bypassing the file server. The Boot program loads
+and gives control to the primary; this is the Kernel. </p> <p>As with
+all standard executable files, this is loaded, relocated and stripped
+of its relocation information. </p> <p>Note that the <codeph>HWVD</codeph> is optional but, if specified, must be enclosed within square brackets. </p> </section>
+<section id="GUID-02DE8552-5FE0-52D4-8A82-A0B679E934AA"><title>priority</title> <codeblock id="GUID-AD178D79-3C2B-5E64-BFF3-9C8BB0B6A0A2" xml:space="preserve">priority = &lt;hex-number&gt; | &lt;priority-keyword&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>Sets the priority of the process.
+The priority can be a hexadecimal number, or one of the keywords listed
+below. The keywords correspond to the associated priority value. </p> <table id="GUID-CA739D33-23F5-536F-B65D-DE43B699BEC1">
+<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
+<tbody>
+<row>
+<entry><p>Keyword </p> </entry>
+<entry><p>Process priority </p> </entry>
+</row>
+<row>
+<entry><p>low </p> </entry>
+<entry><p>EPriorityLow </p> </entry>
+</row>
+<row>
+<entry><p>background </p> </entry>
+<entry><p>EPriorityBackground </p> </entry>
+</row>
+<row>
+<entry><p>foreground </p> </entry>
+<entry><p>EPriorityForeground </p> </entry>
+</row>
+<row>
+<entry><p>high </p> </entry>
+<entry><p>EPriorityHigh </p> </entry>
+</row>
+<row>
+<entry><p>windowserver </p> </entry>
+<entry><p>EPriorityWindowServer </p> </entry>
+</row>
+<row>
+<entry><p>fileserver </p> </entry>
+<entry><p>EPriorityFileServer </p> </entry>
+</row>
+<row>
+<entry><p>realtimeserver </p> </entry>
+<entry><p>EPriorityRealTimeServer </p> </entry>
+</row>
+<row>
+<entry><p>supervisor </p> </entry>
+<entry><p>EPrioritySupervisor </p> </entry>
+</row>
+</tbody>
+</tgroup>
+</table> </section>
+<section id="GUID-39CDB129-CE41-4ACD-952E-72D9DDA61556"><title>process</title><codeblock xml:space="preserve">process = &lt;file path of process being attached&gt;</codeblock><p><i>rombuild only</i></p><p>This keyword specifies the process
+to which a DLL is attached.</p></section>
+<section id="GUID-E816D875-0CE6-5C0A-BB1A-93F9A3E2DE90"><title>reloc</title> <codeblock id="GUID-4533709F-6D95-59C0-90F2-DFE95BC6C7A1" xml:space="preserve">reloc = &lt;hex-address&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>Overrides the default stack size
+for the executable. </p> </section>
+<section id="GUID-9724A786-4431-595F-8945-C29914D63A40"><title>rem</title> <codeblock id="GUID-9D98CF44-6DC6-5A74-8C71-5784C0CDEFA7" xml:space="preserve">rem &lt;comment&gt;</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>Defines a comment line.
+Text that appears after the rem keyword is interpreted as a comment. </p> </section>
+<section id="GUID-4584DD65-6861-5B2A-A4FB-B7F366DCE13A"><title>rename</title> <codeblock id="GUID-6A57E3F9-48D8-521F-A5AC-0CB6ADFB2F5F" xml:space="preserve">rename[[HWVD]]= &lt;existing-file&gt; &lt;destination-file&gt; [ full-attribute-list ]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>Adding a file and then
+renaming it is equivalent to adding it directly at the rename destination.
+The existing and destination directories do not have to be the same. </p> </section>
+<section id="GUID-04CE5B92-FF2B-53BB-BC21-C66731B94CC1"><title>RIGHT_NOW</title> <codeblock id="GUID-292B46AF-28A6-5DC0-9F11-2A2B1747701C" xml:space="preserve">RIGHT_NOW</codeblock> <p> <i>BUILDROM only</i>  </p> <p>A pre-defined substitution. This
+is replaced with the exact time in the format <codeph>dd/mm/yy hh:mm:ss</codeph>  </p> <p>Note that there is no UNDEFINE facility, and substitutions
+are applied in an unspecified order. </p> </section>
+<section id="GUID-660AC1A4-948B-53AA-96F2-BFE48E478474"><title>rofsname</title> <codeblock id="GUID-B1A58F72-83B7-5BB0-9503-014849231AD0" xml:space="preserve">rofsname = &lt;filename&gt;</codeblock> <p> <i>rofsbuild only</i>  </p> <p>Defines the name of the core
+image. </p> </section>
+<section id="GUID-208C0FE4-DFC0-55C3-B6D7-F18C74F1A699"><title>rofssize</title> <codeblock id="GUID-46F9AD5E-9B59-5B21-A621-00116062A867" xml:space="preserve">rofssize = &lt;size in bytes&gt;</codeblock> <p> <i>rofsbuild only</i>  </p> <p>Specifies the maximum size of
+the core image, or the maximum size of the extension. </p> </section>
+<section id="GUID-C956A0A9-F8F0-5144-896C-1DBF32E76915"><title>romalign</title> <codeblock id="GUID-211623DD-B905-5CF2-98DD-E07FFA977C5B" xml:space="preserve">romalign = &lt;hex-alignment&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>The address alignment boundary
+for files in the ROM. </p> <p>This value should be greater than 4
+and a multiple of 4. The recommended value is 0x10. If no value is
+specified, <codeph>rombuild</codeph> defaults to using a value of
+0x1000. If the value specified is not a multiple of 4, it is rounded
+off. </p> </section>
+<section id="GUID-9841CB4D-D71F-53E8-AF0E-22B393ADF2CD"><title>ROMBUILD_OPTION</title> <codeblock id="GUID-CC19021A-0462-52FC-8461-07158AA23B28" xml:space="preserve">ROMBUILD_OPTION &lt;command-line-option&gt;</codeblock> <p> <i>BUILDROM only</i>  </p> <p>Adds additional command line parameters
+to the eventual invocation of <xref href="GUID-003D2C5B-09DC-5BD1-AF45-A0FCB56F567B.dita">rombuild</xref>.
+It is primarily used to specify the <codeph>-no-header</codeph> option
+for platforms which don't want the 256-byte REPRO header. The <codeph>ROMBUILD_OPTION</codeph> keyword can be used multiple times if desired. </p> </section>
+<section id="GUID-D9A6B254-D76E-51C2-A943-FA360CDB3F0E"><title>romchecksum</title> <codeblock id="GUID-6FCDB34E-93C4-56A0-98D8-AF1BBE007B13" xml:space="preserve">romchecksum = &lt;32 bit hex-number&gt;</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>The checksum in the final
+ROM image is made using the following algorithm: </p> <p>checksum
+= romchecksum - sum of 32bit words in ROM image. </p> </section>
+<section id="GUID-C88976BA-6381-5DEB-830F-5ED63CB929FA"><title>ROM_IMAGE</title> <codeblock id="GUID-49013022-96F0-5A17-BA76-C582AAB7B57F" xml:space="preserve">ROM_IMAGE &lt;id&gt; &lt;name&gt; [size=&lt;rom max size&gt;] [xip | non-xip] [compress | no-compress] [extension]</codeblock> <p> <i>BUILDROM only</i>  </p> <p>Defines a ROM image. </p> <p>This
+is a ROM configuration feature; up to 8 ROM images can be defined
+for a device. </p> <table id="GUID-393CADB8-1B1B-58EA-B368-E05B6F3A37D3">
+<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
+<tbody>
+<row>
+<entry><p> <codeph>id</codeph>  </p> </entry>
+<entry><p>A value in the range 0..7 to identify the ROM image. </p> </entry>
+</row>
+<row>
+<entry><p> <codeph>name</codeph>  </p> </entry>
+<entry><p>A name suitable as a suffix for the ROM image, IBY and logs. </p> </entry>
+</row>
+<row>
+<entry><p> <codeph>non-xip</codeph>  </p> </entry>
+<entry><p>Specifies a non-XIP ROM. If not specified, a XIP ROM is
+the default </p> </entry>
+</row>
+<row>
+<entry><p> <codeph>size = &lt;rom-max-size&gt;</codeph>  </p> </entry>
+<entry><p>Defines the maximum size of the ROM. Not required for XIP
+ROMs. </p> </entry>
+</row>
+<row>
+<entry><p> <codeph>compress</codeph>  </p> </entry>
+<entry><p>Compresses an XIP ROM. If not specified, no compression
+is the default behaviour. </p> </entry>
+</row>
+<row>
+<entry><p> <codeph>extension</codeph>  </p> </entry>
+<entry><p>Defines this image as an extension to the previous image. </p> </entry>
+</row>
+</tbody>
+</tgroup>
+</table> <p>To mark a file for inclusion in a ROM it is prefixed with
+the keyword ROM_IMAGE. For example: </p> <codeblock id="GUID-52FA6075-B4D4-53D2-AECB-D5D72A2DB839" xml:space="preserve">ROM_IMAGE[2] data=\private\&lt;process SID&gt;\Apps\Calc\calc.INSTCOL_MBM \private\&lt;process SID&gt;\Apps\Calc\Calc.mbm</codeblock> <p>A Block of files can be included using '{' '}'
+braces, for example: </p> <codeblock id="GUID-E95D224C-EDA2-5BB4-A293-5E07F9142C74" xml:space="preserve">ROM_IMAGE[2]
+    {
+    #include "calc.iby"
+    #include "word.iby"
+    }
+      </codeblock> <p>File blocks can be nested, for example: </p> <codeblock id="GUID-7C33BDB8-A0B4-5A22-BC03-0FB2982CB249" xml:space="preserve">ROM_IMAGE[2]
+    {
+    #include "calc.iby"
+    ROM_IMAGE[0]
+        {
+        #include "word.iby"
+        }
+    #include "video.iby"
+    }
+      </codeblock> </section>
+<section id="GUID-6D4D4AF5-92E2-5E87-97D0-B5233E700287"><title>romlinearbase</title> <codeblock id="GUID-C9EA7FE3-CF87-52E4-9230-944D86463D13" xml:space="preserve">romlinearbase = &lt;hex-address&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>The virtual address of the start
+of ROM, in hex. </p> <p>This is the address at which the kernel expects
+to find the start of the ROM. The recommended value depends on the
+memory model: </p> <ul>
+<li id="GUID-4C4DAAF0-9FC6-5E2C-BF7C-832C453F4765"><p>For the Multiple
+Memory Model, typically used on ARMV6 based hardware platforms, the
+recommended value is 0x80000000. </p> </li>
+<li id="GUID-C9BADF29-5772-5C4C-8445-F78DBB3DA013"><p>For the Moving
+Memory Model, typically used on ARMV5 based hardware platforms, the
+recommended value is 0xF8000000. </p> </li>
+</ul> </section>
+<section id="GUID-29BEF45C-2361-5245-9184-0261B99B6FB1"><title>romname</title> <codeblock id="GUID-E6CCF8AD-B22B-5F89-852B-491B331A8ECA" xml:space="preserve">romname = &lt;rom-file-name&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>This is the name of the output
+file. It contains the ROM image that <codeph>rombuild</codeph> creates. </p> </section>
+<section id="GUID-2F1CEC9A-CC82-5029-9EC2-A03A491FEC09"><title>romnameeven</title> <codeblock id="GUID-F1C48F8F-A8E9-5861-A49F-E49C509D5339" xml:space="preserve">romnameeven = &lt;rom-file-name-even&gt;
+</codeblock> <p> <i>rombuild only</i>  </p> <p> <codeph>rombuild</codeph> can write two separate ROM images, one containing the odd bytes
+of the image and the other the even. This is done if this keyword
+and the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-FB2E9BFF-B5B3-50D8-AFAD-F120D2007173">romnameodd</xref> keyword are used to specify the output filenames
+for the two half-images. A filename of "*" can be specified, which
+means use the file name specified on the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-29BEF45C-2361-5245-9184-0261B99B6FB1">romname</xref> keyword and append <filepath>.even</filepath>. </p> </section>
+<section id="GUID-FB2E9BFF-B5B3-50D8-AFAD-F120D2007173"><title>romnameodd</title> <codeblock id="GUID-5D110E11-FFEC-5389-A0C4-FDCEB96BC190" xml:space="preserve">romnameodd = &lt;rom-file-name-odd&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p> <codeph>rombuild</codeph> can
+write two separate ROM images, one containing the odd bytes of the
+image and the other the even. This is done if this keyword and the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-2F1CEC9A-CC82-5029-9EC2-A03A491FEC09">romnameeven</xref> keyword are used to specify the output filenames
+for the two half-images. A filename of "*" can be specified, which
+means use the file name specified on the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-29BEF45C-2361-5245-9184-0261B99B6FB1">romname</xref> keyword and append <filepath>.odd</filepath>. </p> </section>
+<section id="GUID-4F40AAAE-A6CE-5492-99E3-95B0D74F3229"><title>romsize</title> <codeblock id="GUID-639E3B10-FBFC-5172-8C40-FA243B174B6E" xml:space="preserve">romsize = &lt;hex-size&gt;</codeblock><p> <i>rombuild and rofsbuild</i> </p><p>The size of the entire ROM,
+in hex, for example, <codeph>0x400000</codeph> for a 4MB ROM. </p> </section>
+</conbody></concept>
\ No newline at end of file