Symbian3/PDK/Source/GUID-C2C48AED-4376-5BC3-9865-D371F47E48F1.dita
changeset 1 25a17d01db0c
child 3 46218c8b8afa
equal deleted inserted replaced
0:89d6a7a84779 1:25a17d01db0c
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-C2C48AED-4376-5BC3-9865-D371F47E48F1" xml:lang="en"><title>Replacing
       
    13 and Hiding Plug-ins in Composite ROMs</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p>From v9.3, Symbian platform supports building a composite NAND ROM, which
       
    15 allows several ROM images to be mapped to a single ROM (e.g. <filepath>Z:</filepath>)
       
    16 drive. This provides an easy method of customising ROMs, as new ROM images
       
    17 can be added without requiring rebuilding and reflashing of the ROM images
       
    18 already present on a device. </p>
       
    19 <p>This page describes how to use this technique to: </p>
       
    20 <ul>
       
    21 <li id="GUID-12E33FF0-F793-5758-9733-596312143945"><p>hide an existing ROM
       
    22 ECom plug-in, effectively removing it from the ROM drive. </p> </li>
       
    23 <li id="GUID-DFD60BE8-F68F-5F7B-A4A6-6EDE402C8A93"><p>update or customise
       
    24 an existing ROM ECom plug-in </p> </li>
       
    25 </ul>
       
    26 <p>When Static Plug-in Information (SPI) is used (see <xref href="GUID-D8ECC83A-4B48-5F5C-9334-5B79CDA95054.dita">How
       
    27 to improve load time with SPI files</xref>), each ROM section that contains
       
    28 ECom plug-ins will have an SPI file, and ECom will read each file. </p>
       
    29 <p>Note: this functionality depends on the rule that the ordering of images
       
    30 defined using <codeph>rom_image</codeph> matches the ordering of the mounting
       
    31 drives configured in the <filepath>estart</filepath> component. For more information
       
    32 on how drives are mounted for composite ROMs, see <xref href="GUID-E55EE9B5-AC5B-5C67-A23C-DDB3F40D174A.dita">Mounting
       
    33 multiple ROM images as a single ROM drive</xref>. </p>
       
    34 <section><title>Hiding an ECom plug-in</title> <p>To hide an ECom plug-in,
       
    35 use the <codeph>HIDE_ECOM_PLUGIN</codeph> keyword in the obey (<filepath>.iby</filepath>)
       
    36 file. Its first argument is the DLL name, and the second argument is the registration
       
    37 file name. </p> <p>The following example shows ROM image 2 hiding <filepath>plugin1</filepath> from
       
    38 ROM image 1: </p> <codeblock id="GUID-761B0B0C-1801-5B2D-AF22-B49A977A46FB" xml:space="preserve">//romimage1.iby
       
    39 ECOM_PLUGIN(plugin1.dll,plugin1.rsc)
       
    40 ECOM_PLUGIN(plugin2.dll,plugin2.rsc)
       
    41 </codeblock> <codeblock id="GUID-E5464F52-5D15-5BA6-A1E2-799D2E149804" xml:space="preserve">//romimage2.iby
       
    42 ROM_IMAGE[2] HIDE_ECOM_PLUGIN(plugin1.dll,plugin1.rsc) //hide ECom plugin 1 from image 1</codeblock> </section>
       
    43 <section><title>Replacing an ECom plug-in</title> <p>To replace a plug-in,
       
    44 simply re-define the plug-in, using the <codeph>ECOM_PLUGIN</codeph> macro
       
    45 in the Obey file. </p> <p>The following example shows ROM image 2 replacing <filepath>plugin1</filepath> from
       
    46 ROM image 1: </p> <codeblock id="GUID-0EEDEC68-7011-55BA-9496-D2127942F5B9" xml:space="preserve">//romimage1.iby
       
    47 ECOM_PLUGIN(plugin1.dll,plugin1.rsc)
       
    48 ECOM_PLUGIN(plugin2.dll,plugin2.rsc)
       
    49
       
    50 </codeblock> <codeblock id="GUID-11E2606D-B54D-59A0-BA8F-0831B2D12752" xml:space="preserve">//romimage2.iby
       
    51 ROM_IMAGE[2] ECOM_PLUGIN(plugin1.dll,plugin1.rsc) //replace ECOM plugin 1 in image 1</codeblock><p>For
       
    52 reference information on the relevant obey file keywords, and their related
       
    53 macros, see: </p><ul>
       
    54 <li><p>__ECOM_PLUGIN, which also discusses the macro ECOM_PLUGIN. </p></li>
       
    55 <li><p>_HIDE__ECOM_PLUGIN, which also discusses the macro HIDE_ECOM_PLUGIN. </p></li>
       
    56 </ul> </section>
       
    57 </conbody></concept>