;/*****************************************************************************
;*  Copyright Statement:
;*  --------------------
;*  This software is protected by Copyright and the information contained
;*  herein is confidential. The software may not be copied and the information
;*  contained herein may not be used or disclosed except with the written
;*  permission of MediaTek Inc. (C) 2007
;*
;*  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
;*  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
;*  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
;*  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
;*  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
;*  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
;*  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
;*  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
;*  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
;*  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
;*  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
;*  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
;*
;*  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
;*  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
;*  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
;*  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
;*  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
;*
;*  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
;*  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
;*  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
;*  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
;*  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
;*
;*****************************************************************************/
;
;/*****************************************************************************
; *
; * Filename:
; * ---------
; *   scatJRD35_09B.txt
; *
; * Project:
; * --------
; *   Maui_Software
; *
; * Description:
; * ------------
; *   defines the memory map for the validation board
; *
; * Author:
; * -------
; *   system auto generator v2.39 -> p2.41 -> p2.45 -> p2.55
; *
; * Auto Generated Date:
; * -------
; *   2011/3/4
; *
; * Revision History:
; * -------
; * $Log: scatJRD35_09B.txt system auto generator v2.39 -> p2.41 -> p2.45 -> p2.55 $
; * 
; ****************************************************************************/
;
;=========================================================================
; This scatter file is auto-generated and please DO NOT change the content at will
;=========================================================================
;
;--------------------
; SCHEME   : external NAND flash and 64MB LPSDRAM
; PLATFORM : MT6235B
; FEATURES : NFB USBDOWNLOAD MULTIBIN SECURE 
;--------------------

ROM 0x00
{
    ROM 0x00 
    {
         bootarm.obj                   (C$$code,+First)
         *.obj                         (LEADING_PART)
    }
    ROMHEAD 0x800 FIXED
    {
         *.obj                         (SECINFO)
         *.obj                         (SECOND_PART)
         *.obj                         (MAUI_FOTA_HEAD_INFO)
    }
    ROM0 0xb00 FIXED 0x400 ;1K
    {
        maincode_version_string.obj(MAINCODE_JUMPTABLE)
    }
    ROM1_1 +0x0 
    {
         *.o                           (+RO)
    }
    ROM1 +0x0 
    {
         Regioninit_ads.obj            (+RO-CODE)
         
         
         *adaptation.lib               (+RO)
         *bmt.lib                      (+RO)
         *config.lib                   (+RO)
         *drv.lib                      (+RO)
         *drv_display.lib              (+RO)
         *drv_graphics.lib             (+RO)
         *drv_idp.lib                  (+RO)
         *fdm.lib                      (+RO)
         *init.lib                     (+RO)
         *kal.lib                      (+RO)
         *l1_classb_g2.lib             (+RO)
         *l1_g2.lib                    (+RO)
         *l1_classb_umts.lib           (+RO)
         *stacklib.lib                 (+RO)
         *sst.lib                      (+RO)
         *sss.lib                      (+RO)
         *tst.lib                      (+RO)
         *nucleus.lib                  (+RO)
         *nucleus_int.lib              (+RO)
         *nucleus_debug.lib            (+RO)
         
;nucleus_ctrl_code.lib
         csc.obj                       (+RO)
         tcc.obj                       (+RO)
         tms.obj                       (+RO)
         evc.obj                       (+RO)
         quc.obj                       (+RO)
         pmc.obj                       (+RO)
         smc.obj                       (+RO)
         
; moved from ITCM
         tmt.obj                       (+RO)
         tct.obj                       (+RO)
         stack_timer.obj               (+RO)
         data_buff_pool.obj            (+RO)
         kal_nucleus_timer.obj         (+RO)
         
; C++ related input sections
         cpp_initialise.o              (+RO)
         cpp_finalise.o                (+RO)
         *                             (C$$pi_ctorvec)
         *                             (C$$pi_dtorvec)
         *                             (C$$ddtorvec)
         *                             (C$$ctor)
         *                             (C$$dtor)
         
; libs must be in primary ROM
         *mmi_framework.lib            (+RO)
         *image_codec.lib              (+RO)
         *image_codec16.lib            (+RO)
         *media.lib                    (+RO)
         *media_sec.lib                (+RO)
         *fs.lib                       (+RO)
         *verno.lib                    (+RO)
         *j2me_hi.lib                  (+RO)
         *gdi_arm.lib                  (+RO)
         *dsp_ram.lib                  (+RO)
         
         
         
         
; specific objects in custom.lib
; directory mcu\custom\system
         custom_emi.obj                (+RO)
         custom_config.obj             (+RO)
         custom_flash.obj              (+RO)
         custom_scatstruct.obj         (+RO)
         custom_jump_tbl.obj           (+RO)
         resource_audio.obj            (+RO)
         hwpara_version_string.obj   (+RO)
         shjtag_trace.obj              (+RO)
; directory mcu\custom\drv\common
         gpio_setting.obj              (+RO)
; directory mcu\custom\drv\misc_drv
         adc_channel.obj               (+RO)
         alerter_tone.obj              (+RO)
         alerterdrv.obj                (+RO)
         auxmain.obj                   (+RO)
         chr_parameter.obj             (+RO)
         custom_drv_init.obj           (+RO)
         custom_equipment.obj          (+RO)
         custom_hw_default.obj         (+RO)
         eint_def.obj                  (+RO)
         exif_custom.obj               (+RO)
         gpio_drv.obj                  (+RO)
         irda_custom.obj               (+RO)
         kbdmain_joystick.obj          (+RO)
         keypad_def.obj                (+RO)
         msdc_custom.obj               (+RO)
         pmic_custom.obj               (+RO)
         pwmdrv.obj                    (+RO)
         touch_panel_custom.obj        (+RO)
         touch_panel_spi.obj           (+RO)
         touchpad.obj                  (+RO)
         touchpad_keydef.obj           (+RO)
         tv_custom.obj                 (+RO)
         uart_def.obj                  (+RO)
         uem_gpio.obj                  (+RO)
         lcdbl_custom_*.obj       (+RO)
         usb_custom.obj                (+RO)
         usb_host_ms_custom.obj        (+RO)
         pmu_custom.obj                (+RO)
         
; directory mcu\custom\drv\misc_drv\BB_folder\codegen
         adc_var.obj                   (+RO)
         eint_var.obj                  (+RO)
         gpio_var.obj                  (+RO)
         uem_drv.obj                   (+RO)
; directory mcu\custom\drv\LCD
         lcd.obj                       (+RO)
         lcd_c_*.obj             (+RO)
; directory mcustomdrvxt_Charger
         Ext_Charger_*.obj             (+RO)
; directory mcustomdrvxt_Cable_Detection
         Ext_Cable_*.obj               (+RO)
         
; specific objects in mmiresource.lib
         custNFBProgressImg.obj        (+RO)
         gui_wrapper.obj               (+RO)
         
; specific objects in media_app.lib
         mdi_tv.obj                    (+RO)
         
; specific objects in bcsi.lib ; C++ const data init
         MiscUtils.obj                 (+RO)
         
         ul1dsm.obj                    (+RO)
         *ul1.lib                    (+RO)
         *ll1.lib                     (+RO)
         bl_SC624.obj                  (+RO)
         mmi_create.obj                (+RO)
         mmi_main.obj                  (+RO)
         ws_fs_api.obj                 (+RO)
         
; specific objects in che.lib
         md5_engine.obj                (+RO)
         pm_Hook_Func.obj		(+RO)
         power_measure.obj 		(+RO)
         mcu_monitor.obj			(+RO)
         maincode_version_string.obj (+RO)
         custom_tracdata_config.obj (+RO)
  *usb.lib   (+RO)
; FDE Wed Jan 12 18:31:37 CST 2011 to fix access to demand paging during 2ndary ROM loading
	custom_img_config.obj (+RO)
	       ofn*.obj (+RO)
               
         ; These functions are present in most objects
         ; Make sure they are mapped at right place
         * (i.kal_mem_set)
         * (i.kal_mem_cmp)
         * (i.kal_mem_cpy)
    }
    PRIMARY_CACHED_EXTSRAM +0xF0002000 
    {
         *adaptation.lib               (+RW)
         *config.lib                   (+RW)
         *dsp_ram.lib                  (+RW)
         *fs.lib                       (+RW)
         *kal.lib                      (+RW)
         *nucleus.lib                  (+RW)
         *nucleus_int.lib              (+RW)
         *sst.lib                      (+RW)
         *stacklib.lib                 (+RW)
         *.l                           (+RW)
         
         *drv.lib                      (+RW)
         *drv_display.lib              (+RW)
         *drv_graphics.lib             (+RW)
         *drv_idp.lib                  (+RW)
         *fdm.lib                      (+RW)
         *tst.lib                      (+RW)
         
; libs must be in primary ROM
         *mmi_framework.lib            (+RW)
         *media.lib                    (+RW)
         *media_sec.lib                (+RW)
         *verno.lib                    (+RW)
         *j2me_hi.lib                  (+RW)
         *gdi_arm.lib                  (+RW)
         
         
; init
         *init.lib                     (+RW)
         
; hardware driver
         *bmt.lib                      (+RW)
         
; Crypto, Image, and Graphics
         *image_codec.lib              (+RW)
         *image_codec16.lib            (+RW)
         *sw_png_codec.lib             (+RW)
         
; specific objects in custom.lib
; directory mcu\custom\system
         custom_config.obj             (+RW)
         custom_emi.obj                (+RW)
         custom_flash.obj              (+RW)
         custom_jump_tbl.obj           (+RW)
         custom_scatstruct.obj         (+RW)
         resource_audio.obj            (+RW)
         hwpara_version_string.obj   (+RW)
         
; directory mcu\custom\drv\common
         gpio_setting.obj              (+RW)
; directory mcu\custom\drv\misc_drv
         adc_channel.obj               (+RW)
         alerter_tone.obj              (+RW)
         alerterdrv.obj                (+RW)
         auxmain.obj                   (+RW)
         chr_parameter.obj             (+RW)
         custom_drv_init.obj           (+RW)
         custom_equipment.obj          (+RW)
         custom_hw_default.obj         (+RW)
         eint_def.obj                  (+RW)
         exif_custom.obj               (+RW)
         gpio_drv.obj                  (+RW)
         irda_custom.obj               (+RW)
         kbdmain_joystick.obj          (+RW)
         keypad_def.obj                (+RW)
         msdc_custom.obj               (+RW)
         pmic_custom.obj               (+RW)
         pwmdrv.obj                    (+RW)
         touch_panel_custom.obj        (+RW)
         touch_panel_spi.obj           (+RW)
         touchpad.obj                  (+RW)
         touchpad_keydef.obj           (+RW)
         tv_custom.obj                 (+RW)
         uart_def.obj                  (+RW)
         uem_gpio.obj                  (+RW)
         lcdbl_custom_*.obj       (+RW)
         usb_custom.obj                (+RW)
         usb_host_ms_custom.obj        (+RW)
; directory mcu\custom\drv\misc_drv\BB_folder\codegen
         adc_var.obj                   (+RW)
         eint_var.obj                  (+RW)
         gpio_var.obj                  (+RW)
         uem_drv.obj                   (+RW)
; directory mcu\custom\drv\LCD
         lcd.obj                       (+RW)
         lcd_c_*.obj             (+RW)
; directory mcustomdrvxt_Charger
         Ext_Charger_*.obj             (+RW)
; directory mcustomdrvxt_Cable_Detection
         Ext_Cable_*.obj               (+RW)
         
; specific objects in mmiresource.lib
         custNFBProgressImg.obj        (+RW)
         gui_wrapper.obj               (+RW)
         
; specific objects in media_app.lib
         mdi_tv.obj                    (+RW)
         
         bl_SC624.obj                  (+RW)
         mmi_create.obj                (+RW)
         mmi_main.obj                  (+RW)
         ws_fs_api.obj                 (+RW)
         
; specific objects in che.lib
         md5_engine.obj                (+RW)
         pm_Hook_Func.obj		(+RW)
         power_measure.obj 		(+RW)
         mcu_monitor.obj			(+RW)
         maincode_version_string.obj (+RW) 
; FDE Wed Jan 12 18:31:37 CST 2011 to fix access to demand paging during 2ndary ROM loading
	custom_img_config.obj (+RW)
         fct_trace.obj (+RW, +ZI)
         subs.obj (+RW, +ZI)
         fct_super.obj (+RW, +ZI)
    }
    EMIINIT_CODE 0x50000000 OVERLAY
    {
         * (EMIINITCODE, EMIINITCONST, EMIINITZI)
    }
    INTSRAM_CODE 0x50000000 OVERLAY 0x0000C000
    {
         * (INTSRAM_ROCODE)
; system-realted CODE , ARM9 Family SMALL set
         bootarm.obj (INTERNCODE)
         cache.obj (INTERNCODE)
; Nucleus-related CODE , ARM9 Family SMALL set
         tct.obj (INTERNCODE)
; utilities-related CODE , ARM9 Family STANDARD set
         SST_intrCtrl.obj (INTERNCODE, INTERNCONST)
         emi.obj (INTERNCODE)
         custom_scatstruct.obj (INTERNCODE)
; INTSRAM_CODE_OBJ_others_6235
         m12168.obj (INTERNCODE)
         m11303.obj (INTERNCODE)
         m11305.obj (INTERNCODE)
         m12194.obj (INTERNCODE)
         L1Trc.obj (INTERNCODE)
         l1d_data.obj (INTERNCODE)
         divider.obj (INTERNCODE)
         gpt.obj (INTERNCODE)
         lpwr.obj (INTERNCODE)
         l1dsm.obj (INTERNCODE)
         * (SNORCODE_INT)
         * (SNORCONST_INT)
         cp15.obj (INTERNCODE)
         m11301.obj (INTERNCODE)

; Please Do Not Remove
         l1d_internal_data.obj (INTERNCODE)
         m12100.obj (INTERNCODE)         
         m12110.obj (INTERNCODE)
         m12120.obj (INTERNCODE)
         m12160.obj (INTERNCODE)
         m12167.obj (INTERNCODE)
         m12170.obj (INTERNCODE)
         m12180.obj (INTERNCODE)

         ofn.obj (INTERNCODE)
    }
    INTSRAM_DATA 0x50100000 0x00008C00
    {
         * (INTSRAM_RODATA, INTSRAM_RW, INTSRAM_ZI)
; system-realted data
         bootarm.obj (STACK_POOL_INTSRAM)
         ctrl_buff_pool.obj (INTERNCONST, INTERNRW, INTERNZI)
         stack_ltlcom.obj (INTERNCONST, INTERNRW, INTERNZI)
; Nucleus-related data ; ARM9 Family STANDARD set
         *nucleus_critical_data.lib (+RW, +ZI)
         *nucleus_ctrl_code.lib (+RW, +ZI)
; utilities-related data , ARM9 Family STANDARD set
         emi.obj (INTERNCONST, INTERNRW, INTERNZI)
         custom_scatstruct.obj (INTERNCONST, INTERNRW, INTERNZI)
; INTSRAM_DATA_OBJ_others_6235
         l1d_data.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12168.obj (INTERNCONST, INTERNRW, INTERNZI)
         m11303.obj (INTERNCONST, INTERNRW, INTERNZI)
         m11305.obj (INTERNCONST, INTERNRW, INTERNZI)         
         m12194.obj (INTERNCONST, INTERNRW, INTERNZI)                  
         L1Trc.obj (INTERNCONST, INTERNRW, INTERNZI)
         gdi_image.obj (INTERNCONST, INTERNRW, INTERNZI)
         sw_gif_bytestream.obj (INTERNCONST, INTERNRW, INTERNZI)
         gdi.obj (INTERNZI)         
         interpret.obj (INTERNZI)
         file71.o (INTERNCONST, INTERNRW, INTERNZI)
         l1dsm.obj (INTERNCONST, INTERNRW, INTERNZI)
         drv_gfx_stack_switch_manager.obj (INTERNRW, INTERNZI)

; Please Do Not Remove
         l1d_internal_data.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12100.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12110.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12120.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12160.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12167.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12170.obj (INTERNCONST, INTERNRW, INTERNZI)
         m12180.obj (INTERNCONST, INTERNRW, INTERNZI)                  

         ofn.obj(INTERNZI)
    }   
}

SECONDARY_ROM +0x4000
{
    SECONDARY_ROM +0x0 0x400000
    {
         *mtkdebug.lib (+RO)
         *interface.lib (+RO)
         *interface_classb.lib (+RO)
         *sim2.lib (+RO)
         *sim.lib (+RO)
         *uas.lib (+RO)
         *rr_classb_umts.lib (+RO)
         *rr_classb2.lib (+RO)
         *mm_classb2.lib (+RO)
         *mm_classb_umts.lib (+RO)
;         *obigo03clib.lib (+RO-CODE)
    }
    ROM2 +0x0 0x400000
	{
		*srmalloc.lib		(+RO)
		*flc2.lib			(+RO)
		*llc.lib			(+RO)
		*data.lib			(+RO)   
		*sm.lib			(+RO)
		*l1audio.lib		(+RO)
		*l1audio32.lib		(+RO)
		*l1audio_secure.lib	(+RO)
		*l1_classb_2.lib	(+RO)
		*btadp.lib	(+RO)
		*btstack.lib	(+RO)
		radiomod.obj (+RO)
		jrd_ssv_mtdflash.obj		(+RO)
		afe.obj (+RO)
		camera_yuv_para_*.obj (+RO)
		custom_techpara_config.obj (+RO)	
	}
    ROM3 +0x0 0x400000
    {
		*dp_engine.lib		(+RO) 
		*drv_sec.lib		(+RO)
		*event_info.lib     (+RO)
		*ratcm.lib        (+RO)
		custom_tracdata_cust_para.obj	(CUST_PARA_TRACE_ABILITY)
		*ratdm.lib (+RO)
		*ciss.lib (+RO)
		*scsi.lib  (+RO)
		*sms.lib (+RO)
		*smslib.lib (+RO)
		*sndcp.lib (+RO)
		*supc.lib (+RO)
		*dt.lib (+RO)
		*fmr.lib (+RO)
		*ftc.lib (+RO)
		*iperf.lib (+RO)
		*media_sec32.lib (+RO)
		*media_rtp.lib  (+RO)
		*lqt.lib (+RO)
		*mtp.lib (+RO)
		*rtsp.lib (+RO)
		*sb51.lib (+RO)
		*sdp.lib (+RO)
		*tls.lib (+RO)
		*mcd.lib (+RO)
		*fmt.lib (+RO)
		*vrt16.lib (+RO)
		*vrt.lib (+RO)	
    }
	ROM4 +0x0 0x400000
	{
		*asn1_re.lib (+RO)
		*cc.lib(+RO)
		*cct.lib(+RO)
		*rsva.lib (+RO)
		*mercury_master.lib (+RO)
		*mercury_gemini.lib  (+RO)
		image_sensor*.obj (+RO)
		camera_sensor_para*.obj (+RO)
		usbvideo_attr*.obj (+RO)
		wifi_common_config.obj (+RO)
		wndrv_configure.obj (+RO)
		usbdevice.obj   (+RO)
		mdi_webcam.obj (+RO)
		wmt_hdlr*.obj (+RO)
	}
    ROM5 +0x0 
    {
     aud_common.obj (+RO)
     audcoeff.obj (+RO)
     bt_common_config.obj (+RO)
     camera_common.obj (+RO)
     camera_hw.obj (+RO)
     camera_info.boj (+RO)
     camera_info_OV*.obj (+RO)
     camera_tuning_*.obj (+RO)
     custom_em.obj (+RO)
     custom_flc_config.obj (+RO)
     custom_fm.obj (+RO)
     custom_gprs_pdp_value_check.obj (+RO)
     custom_idp.obj (+RO)
     custom_led_patterns.obj (+RO)
     custom_recovery_timer.obj (+RO)
     custom_retrofit.obj (+RO)
     custom_video.obj (+RO)
     customer_cm_retry_count.obj (+RO)
     customer_supc_config.obj (+RO)
     customer_sms_tl_retry.obj (+RO)
     customer_pwr_level_report.obj (+RO)
     ft_bt_customize.obj (+RO)
     ft_cct_customize.obj (+RO)
     ft_customize.obj (+RO)
     lens_module.obj (+RO)
     resource_audio_func.obj (+RO)
     syscomp_tasks_create_func.obj (+RO)
     apm_TaskDef.obj (+RO)
     meta_customize.obj (+RO)
     fs_config.obj (+RO)
     sqlite*.obj (+RO)
     l4c_cc_msg.obj (+RO)
    }
    ROM_TAIL +0x0 
    {
         *.obj (SECINFO_TAIL)
    }
    DYNAMIC_CACHEABLE_EXTSRAM_DEFAULT_NONCACHEABLE_ZI +0x2000 
    {
         med_main.obj (LARGEPOOL_ZI)
         * (DYNAMICCACHEABLEZI_NC)
    }
    SECONDARY_EXTSRAM_ZI +0x2000 
    {
         *deniro.lib (+ZI)
         *fs_fig.lib (+ZI)
         *verno.lib  (+ZI)
; Others that voluntarily NOT cached
         * (NONCACHEDZI)
    }
    SECONDARY_EXTSRAM_RW +0x0 
    {
         *deniro.lib (+RW)
         *fs_fig.lib (+RW)
; Others that voluntarily NOT cached
         * (NONCACHEDRW)
    }
    DYNAMIC_CACHEABLE_EXTSRAM_DEFAULT_NONCACHEABLE_RW +0x2000 
    {
         * (DYNAMICCACHEABLERW_NC)
    }
    PAGE_TABLE +0xF0002000 
    {
         cache.obj (PAGETABLE)
         * (PAGETABLE)
    }
    CACHED_EXTSRAM +0x0
    {
; All RW/ZI are put in CACHED region by default
         * (+RW, +ZI)
    }
    DYNAMIC_CACHEABLE_EXTSRAM_DEFAULT_CACHEABLE +0x2000 
    {
         * (DYNAMICCACHEABLERW_C, DYNAMICCACHEABLEZI_C)
    }
    CACHED_CODE_PATCH_CODE 0xF35FF000 0x1000 ; 4KB
    {
         * (CODE_PATCH_REGION)
    }
    CACHED_DUMMY_END 0xF3600000 
    {
         bootarm.obj (DUMMY_POOL)
    }
; DSP execution regions cannot be OVERLAY; its size should be specified as 2^N, larger than 4KB, and should align with its start address
    SECONDARY_EXTSRAM_DSP_TX 0x03fc0000 0x20000
    {
         *.obj (EXTRAM_TXDATA)
    }
    SECONDARY_EXTSRAM_DSP_RX 0x03fe0000 0x20000
    {
         *.obj (EXTRAM_RXDATA)
    }
    INTSRAM_BLINUSED 0x40000000 OVERLAY 0x00004000
    {
    ; Execution Region Reserved for Bootloader
    }
    INTSRAM_TMP_PAGE_TABLE 0x40004000 OVERLAY 0x0000B000
    {
         * (TMPPAGETABLE)
    }
    INTSRAM_MULTIMEDIA 0x40000000 OVERLAY 0x00010000
    {
         med_main.obj (INTERNRW1, INTERNZI1)
         uart_def.obj (INTERNRW1, INTERNZI1)
    }
}

STUDYPARA_ROM 0x03600000  0x4000
{
    STUDYPARA_ROM +0x00
    { 
        resource_techpara_jtbl.obj (RESOURCE_JUMP_TBL, +First) 
        resource_techpara_jtbl.obj (+RW)

   }
   STUDYPARA_ROM_CONTENT +0x00
   { 
        custom_techpara_cust_pack.obj (+RW)
        custom_techpara_cust_pack.obj (+RO)

        custom_techpara_acoustic_*.obj (+RO)
        custom_techpara_audcoeff_*.obj (+RO)
        custom_techpara_equalizer_*.obj (+RO)
        custom_techpara_camera.obj (+RO)
        custom_techpara_hw.obj (+RO)
        custom_techpara_bmt_chr.obj (+RO) 

    }
}

; if modify CUSTPACK_ROM base address, we should modify SSV_CUSTPACK_ROM and CUSTPACK_ROM_CONTENT


;Please modify scat_custpack.txt and scatSSV_CUSTPACK_XXX.txt simultaneously
CUSTPACK_ROM 0x03604000 0x9A6000
{
    CUSTPACK_ROM +0x00 0x200
    {
         resource_custpack_jtbl.obj (RESOURCE_JUMP_TBL, +First)
         resource_custpack_jtbl.obj (CUSTPACK_2ND_JUMP_TBL)
;         resource_custpack_jtbl.obj (+RW)
    }
    
    ; CUSTPACK_ROM max size is 0x200, CUSTPACK_ROM is 0x03604000
    ; SSV_CUSTPACK_ROM = 0x03604000 + 0x200 = 0x03604200
    SSV_CUSTPACK_ROM 0x03604200 FIXED 0x100
    { 
        Jrd_ssv_custpack_jmbtl.obj (SSV_JUMP_TBL)
    }
    SSV_CUSTPACK_ROM_CONTENT +0x00 0x3B800
    { 
        nvram_cust_pack.obj (+RO)
        custom_extdata_cust_pack.obj (+RW, +RO)
        custom_wap_cust_pack.obj (+RO)
        Jrd_ssv_custpack_jmbtl.obj (+RO-Data) 
    }

    ; We should guarantee that CUSTPACK_ROM_CONTENT execution region
    ; behind SSV_CUSTPACK_ROM_CONTENT execution region
    ; because SSV length calculated by function jrd_ssv_loaded_zone_size()
    ; uses CUSTPACK_ROM_CONTENT base address - SSV_CUSTPACK_ROM base address
    ; SSV_CUSTPACK_ROM max size is 0x100, SSV_CUSTPACK_ROM_CONTENT max size is 0x3B800


    ; CUSTPACK_ROM_CONTENT = SSV_CUSTPACK_ROM + 0x100 + 0x3B800
    CUSTPACK_ROM_CONTENT 0x0363FB00 FIXED
    {
         plmnname.obj (+RO)
	       CustMenuRes.obj (+RO)
	       CustImgRes.obj (+RO)
	       CustStrRes.obj (+RO)
	       CustImgResExt.obj (+RO)
	       CustAdoRes.obj (+RO)
	       CustImgMap.obj (+RO)
	       CustImgMap.obj (+RW)
	       CustImgMapExt.obj (+RO)
	       CustImgMapExt.obj (+RW)
	       CharsetTable_jrd.obj (+RO) 
	       CharsetTable_jrd.obj (+RW)
	       CustFontResExt.obj (+RO)
	       CustFontMapExt.obj (+RO)
	       CustFontMapExt.obj (+RW)
	       FontRes.obj (+RO)
	       FontRes.obj (+RW)
	       IMERes.obj (+RO) 
	       IMERes.obj (+RW)
	       CustStrMap.obj (+RO)
         CustMidletMap.obj (+RO)
	       mtkmultitap_cust.obj (+RO)
;language package
	       resource_lang_pack_jtbl.obj (+RW)
	       resource_world_clock_city.obj (+RO)              
         ThemeRes.obj (+RW)
         ThemeRes.obj (+RO)
         CustImgResExt.obj (+RO)
         CustAdoResExt.obj (+RO)
         custpack_audio.obj (+RO)
         custpack_certs.obj (+RO)
;         custpack_certs.obj (+RW)
         custpack_java_certs.obj (+RO)
         custpack_java_certs.obj (+RW)
    	   j2me_custom_mids_jtbl.obj (+RW)
    	   j2me_custom_mids.obj (+RW,+RO)
         resource_custpack_jtbl.obj (+RO)
         hand_writing_dic.obj(+RO) 
         Conversions.obj(CHSET_STATE_TBL)
         jrd_ssv_resources_generate.obj(SSV_RES) 
         vf_*.obj (+RO)
    }

}

THIRD_ROM +0x0
{
    THIRD_ROM 0x04000004
    {
         * (NFB3RDROM_HEADER_HINT)
    }
}

DEMAND_PAGING_ROM0 0xf4000000 0x1000000
{
    DEMAND_PAGING_ROM0 0xf4000000 0x400000
    {
; FT
         *ft.lib (+RO-CODE)
         *ft.lib (+RO-DATA)
; FMGR
         filemanagersrc.obj (+RO-CODE, +RO-DATA)
         filemgr.obj (+RO-CODE, +RO-DATA)
         filemgrcore.obj (+RO-CODE, +RO-DATA)
         filemgrui.obj (+RO-CODE, +RO-DATA)
; Engineering mode
         engineermodedevice.obj (+RO-CODE, +RO-DATA)
         engineermodebt.obj (+RO-CODE, +RO-DATA)
         engineermodeminigps.obj (+RO-CODE, +RO-DATA)
         engineermodeprofiling.obj (+RO-CODE, +RO-DATA)
         engineermodesocketapp.obj (+RO-CODE, +RO-DATA)
         engineermodesocketdemoapp.obj (+RO-CODE, +RO-DATA)
         engineermodeiperf.obj (+RO-CODE, +RO-DATA)
         engineermodemain.obj (+RO-CODE, +RO-DATA)
         engineermodedm.obj (+RO-CODE, +RO-DATA)
         engineermodestorage.obj (+RO-CODE, +RO-DATA)
         engineermodedebuginfo.obj (+RO-CODE, +RO-DATA)
         engineermodemultimedia.obj (+RO-CODE, +RO-DATA)
         engineermoderftest.obj (+RO-CODE, +RO-DATA)
         engineermodevoip.obj (+RO-CODE, +RO-DATA)
         engineermodegprs.obj (+RO-CODE, +RO-DATA)
         engineermodeaudio.obj (+RO-CODE, +RO-DATA)
         engineermodemmiframework.obj (+RO-CODE, +RO-DATA)
         engineermodemisc.obj (+RO-CODE, +RO-DATA)
         engineermodepmic.obj (+RO-CODE, +RO-DATA)
         engineermodepcsnetwork.obj (+RO-CODE, +RO-DATA)
; MMI game
         F1Race.obj (+RO-CODE, +RO-DATA)
         TOH.obj (+RO-CODE, +RO-DATA)
         Riches.obj (+RO-CODE, +RO-DATA)
         ColorBalls.obj (+RO-CODE, +RO-DATA)
         Snake.obj (+RO-CODE, +RO-DATA)
         Smash.obj (+RO-CODE, +RO-DATA)
         Doll.obj (+RO-CODE, +RO-DATA)
         Majung.obj (+RO-CODE, +RO-DATA)
         Puzzle.obj (+RO-CODE, +RO-DATA)
         Ufo.obj (+RO-CODE, +RO-DATA)
         Magicsushi.obj (+RO-CODE, +RO-DATA)
         Vsmj.obj (+RO-CODE, +RO-DATA)
; EXTRA
         bmi.obj (+RO-CODE, +RO-DATA)
         Calculator.obj (+RO-CODE, +RO-DATA)
         Calorie.obj (+RO-CODE, +RO-DATA)
         currencyconvertor.obj (+RO-CODE, +RO-DATA)
         CurrencyConvertorE.obj (+RO-CODE, +RO-DATA)
         Extra.obj (+RO-CODE, +RO-DATA)
         healthmenstural.obj (+RO-CODE, +RO-DATA)
         Shortcuts.obj (+RO-CODE, +RO-DATA)
         StopwatchMultiPurpose.obj (+RO-CODE, +RO-DATA)
         StopwatchTypical.obj (+RO-CODE, +RO-DATA)
         unitconvertor.obj (+RO-CODE, +RO-DATA)
; EBOOK
         EbookFramework.obj (+RO-CODE, +RO-DATA)
         EbookSrc.obj (+RO-CODE, +RO-DATA)
    }
    DEMAND_PAGING_ROM1 +0x00 0x400000
    {
         *obigo03cadp.lib (+RO-CODE)
         *obigo03capp.lib (+RO-CODE)
         *obigo03clib.lib (+RO-CODE)
    }
    DEMAND_PAGING_ROM2 +0x00 
    {
         *obigo03cadp.lib (+RO-DATA)
         *obigo03capp.lib (+RO-DATA)
         *obigo03clib.lib (+RO-DATA)
    }
	DEMAND_PAGING_ROM3 +0x00 0x00400000 
	{ 
		; J2ME
		*jal.lib (+RO-CODE)
		*jal.lib (+RO-DATA)
		*ijet_adp.lib (+RO-CODE)
		*ijet_adp.lib (+RO-DATA)
		; WAP family
		*wapadp.lib (+RO-CODE)
		*wap.lib (+RO-CODE)
		*wae.lib (+RO-CODE)
		*jataayu.lib (+RO-CODE)
		*jataayuapp.lib (+RO-CODE)
		*wapapp.lib (+RO-CODE) 
	}
	DEMAND_PAGING_ROM4 +0x0 0x400000
	{
		*obigo05aadp.lib (+RO-CODE)
		*obigo05alib.lib (+RO-CODE) 
		;*obigo03capp.lib (+RO-CODE)
		;*obigo03cadp.lib (+RO-CODE)
		;*obigo03clib.lib (+RO-CODE)
		*obigo03cmmsadp.lib (+RO-CODE)
		*obigo03cmmslib.lib (+RO-CODE) 
	}

	DEMAND_PAGING_ROM5 +0x00 0x00400000
	{
		.ANY (+RO-CODE)
	} 
	DEMAND_PAGING_ROM6 +0x0 0x400000 
	{
		.ANY (+RO-CODE)
	}
	DEMAND_PAGING_ROM7 +0x0
	{
		.ANY (+RO-DATA)
	}

    DYNAMIC_CODE12 0x50108c00 OVERLAY 0x3c00
    {
         * (MP4DEC2_DYNAMIC_ZI, MP4DEC2_DYNAMIC_RO)
    }
    DYNAMIC_CODE13 0x50108c00 OVERLAY 0x3c00
    {
         * (MP4ENC2_DYNAMIC_ZI, MP4ENC2_DYNAMIC_RO)
    }
    DYNAMIC_CODE14 0x50108c00 OVERLAY 0x3c00
    {
         * (264DEC2_DYNAMIC_ZI, 264DEC2_DYNAMIC_RO)
    }
    DYNAMIC_CODE15 0x5010c800 OVERLAY 0x2800
    {
         * (MP4DEC1_DYNAMIC_ZI, MP4DEC1_DYNAMIC_RO)
    }
    DYNAMIC_CODE16 0x5010c800 OVERLAY 0x2800
    {
         * (MP4ENC1_DYNAMIC_ZI, MP4ENC1_DYNAMIC_RO)
    }
    DYNAMIC_CODE17 0x5010c800 OVERLAY 0x2800
    {
         * (264DEC1_DYNAMIC_ZI, 264DEC1_DYNAMIC_RO)
    }
    DYNAMIC_CODE2 0x5010c800 OVERLAY 0x2800
    {
         * (G3D_DYNAMIC_ZI)
    }
    DYNAMIC_CODE1 0x5010f000 OVERLAY 0x5000
    {
         * (AMR515_DYNAMIC_ZI)
    }
    DYNAMIC_CODE11 0x5010f000 OVERLAY 0x5000
    {
         * (VRENGINE_DYNAMIC_ZI)
    }
    DYNAMIC_CODE3 0x5010f000 OVERLAY 0x5000
    {
         * (CTM_DYNAMIC_ZI)
    }
    DYNAMIC_CODE4 0x5010f000 OVERLAY 0x5000
    {
         * (G729_DYNAMIC_ZI)
    }
    DYNAMIC_CODE5 0x5010f000 OVERLAY 0x5000
    {
         * (SBC_DYNAMIC_ZI)
    }
}

JDL_ROM 0xf8000000
{
	JDL_ROM +0x00
	{
	    jdl_bin_dummy.obj (+RO-CODE, +RO-DATA)
	}
}

;=========================================================================
; This load region must be behind all the protected load region
;=========================================================================
; 1. Only address is configurable.
; 2. Region address must be fixed address.
; 4. DO NOT modify load region order, load region naming and pragma naming!
;=========================================================================
__HIDDEN_SECURE_MAC 0x03fbb000 0x00001000
{
    __HIDDEN_SECURE_MAC +0x0
    {
         *.obj (SECURE_MAC_SIZE)
    }
    __HIDDEN_SECURE_MAC_CONTENT +0x0
    {
         *.obj (SECURE_MAC_CONTENT)
    }
}

__HIDDEN_SECURE_RO 0x03fbc000 0x00001000
{
    SECURE_RO +0x0 
    {
         *.obj (SECURE_RO)
    }
}

__HIDDEN_FLASHTOOL_CFG 0x03fbd000 0x00001000
{
    __HIDDEN_FLASHTOOL_CFG +0x0 
    {
         *.obj (FLASHTOOL_CFG)
    }
}

__HIDDEN_CUST_PARA 0x03fbe000 0x00002000
{
    __HIDDEN_CUST_PARA +0x0 
    {
         *.obj (CUST_PARA)
    }
    __HIDDEN_CUST_PARA_TAIL +0x0 
    {
         *.obj (CUST_PARA_TAIL)
    }
}

