Hi, Guest! Login / Register




Thread Rating:
  • 5 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5

[Tutorial] How to backup / dump a Mediatek Android phone's firmware using Miracle Box

#31

As I sayd earlier my phone is an Allview X3 Soul Style (european version of Gionee S6s) running on MT6753 chipset with a flash memory of 32 GB.
Miracle Box 2.27A saved the firmware in scatter format, as follows:
Code:
############################################################################################################
#
#  General Setting
#
############################################################################################################
- general: MTK_PLATFORM_CFG
 info:
   - config_version: V1.1.1
     platform: MT6753
     project: mtk_android
     storage: EMMC
     boot_channel: MSDC_0
     block_size: 0x20000
############################################################################################################
#
#  Layout Setting
#
############################################################################################################
- partition_index: SYS0
 partition_name: PRELOADER
 file_name: preloader.bin
 is_download: true
 type: SV5_BL_BIN
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x400000
 region: EMMC_BOOT_1
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: BOOTLOADER
 reserve: 0x00

- partition_index: SYS1
 partition_name: PGPT
 file_name: pgpt.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS2
 partition_name: PROINFO
 file_name: proinfo.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x80000
 physical_start_addr: 0x80000
 partition_size: 0x300000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS3
 partition_name: NVRAM
 file_name: nvram.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x380000
 physical_start_addr: 0x380000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS4
 partition_name: PROTECT1
 file_name: protect1.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x880000
 physical_start_addr: 0x880000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS5
 partition_name: PROTECT2
 file_name: protect2.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1280000
 physical_start_addr: 0x1280000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS6
 partition_name: LK
 file_name: lk.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1C80000
 physical_start_addr: 0x1C80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS7
 partition_name: PARA
 file_name: para.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1D00000
 physical_start_addr: 0x1D00000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS8
 partition_name: BOOT
 file_name: boot.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1D80000
 physical_start_addr: 0x1D80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS9
 partition_name: RECOVERY
 file_name: recovery.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x2D80000
 physical_start_addr: 0x2D80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS10
 partition_name: LOGO
 file_name: logo.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x3D80000
 physical_start_addr: 0x3D80000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS11
 partition_name: EXPDB
 file_name: expdb.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x4580000
 physical_start_addr: 0x4580000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS12
 partition_name: SECCFG
 file_name: seccfg.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x4F80000
 physical_start_addr: 0x4F80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS13
 partition_name: OEMKEYSTORE
 file_name: oemkeystore.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x5000000
 physical_start_addr: 0x5000000
 partition_size: 0x200000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS14
 partition_name: SECRO
 file_name: secro.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x5200000
 physical_start_addr: 0x5200000
 partition_size: 0x600000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS15
 partition_name: KEYSTORE
 file_name: keystore.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x5800000
 physical_start_addr: 0x5800000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS16
 partition_name: TEE1
 file_name: tee1.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6000000
 physical_start_addr: 0x6000000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS17
 partition_name: TEE2
 file_name: tee2.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6500000
 physical_start_addr: 0x6500000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS18
 partition_name: FRP
 file_name: frp.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6A00000
 physical_start_addr: 0x6A00000
 partition_size: 0x100000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS19
 partition_name: NVDATA
 file_name: nvdata.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6B00000
 physical_start_addr: 0x6B00000
 partition_size: 0x2000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS20
 partition_name: METADATA
 file_name: metadata.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x8B00000
 physical_start_addr: 0x8B00000
 partition_size: 0x2500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS21
 partition_name: SYSTEM
 file_name: system.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0xB000000
 physical_start_addr: 0xB000000
 partition_size: 0x10C000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS22
 partition_name: CACHE
 file_name: cache.bin
 is_download: true
 type: YAFFS_IMG
 linear_start_addr: 0x117000000
 physical_start_addr: 0x117000000
 partition_size: 0x19000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS23
 partition_name: USERDATA
 file_name: userdata.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x130000000
 physical_start_addr: 0x130000000
 partition_size: 0x616B80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS24
 partition_name: FLASHINFO
 file_name: flashinfo.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x746B80000
 physical_start_addr: 0x746B80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: false
 is_reserved: true
 operation_type: UPDATE
 reserve: 0x00
Now I modified the scatter file to be compatible with SP Flash Tool as follows:
Code:
############################################################################################################
#
#  General Setting
#
############################################################################################################
- general: MTK_PLATFORM_CFG
 info:
   - config_version: V1.1.2
     platform: MT6753
     project: mtk_android
     storage: EMMC
     boot_channel: MSDC_0
     block_size: 0x20000
############################################################################################################
#
#  Layout Setting
#
############################################################################################################
- partition_index: SYS0
 partition_name: PRELOADER
 file_name: preloader.bin
 is_download: true
 type: SV5_BL_BIN
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x400000
 region: EMMC_BOOT_1
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: BOOTLOADER
 reserve: 0x00

- partition_index: SYS1
 partition_name: PGPT
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS2
 partition_name: PROINFO
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x80000
 physical_start_addr: 0x80000
 partition_size: 0x300000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS3
 partition_name: NVRAM
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x380000
 physical_start_addr: 0x380000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: BINREGION
 reserve: 0x00

- partition_index: SYS4
 partition_name: PROTECT1
 file_name: protect_f
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x880000
 physical_start_addr: 0x880000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS5
 partition_name: PROTECT2
 file_name: protect_s
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x1280000
 physical_start_addr: 0x1280000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS6
 partition_name: LK
 file_name: bootloader.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1C80000
 physical_start_addr: 0x1C80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS7
 partition_name: PARA
 file_name: misc
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x1D00000
 physical_start_addr: 0x1D00000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS8
 partition_name: BOOT
 file_name: boot.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1D80000
 physical_start_addr: 0x1D80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS9
 partition_name: RECOVERY
 file_name: recovery.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x2D80000
 physical_start_addr: 0x2D80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS10
 partition_name: LOGO
 file_name: logo.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x3D80000
 physical_start_addr: 0x3D80000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS11
 partition_name: EXPDB
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x4580000
 physical_start_addr: 0x4580000
 partition_size: 0xA00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS12
 partition_name: SECCFG
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x4F80000
 physical_start_addr: 0x4F80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS13
 partition_name: OEMKEYSTORE
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x5000000
 physical_start_addr: 0x5000000
 partition_size: 0x200000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS14
 partition_name: SECRO
 file_name: secro.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x5200000
 physical_start_addr: 0x5200000
 partition_size: 0x600000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS15
 partition_name: KEYSTORE
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x5800000
 physical_start_addr: 0x5800000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS16
 partition_name: TEE1
 file_name: tee1.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6000000
 physical_start_addr: 0x6000000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS17
 partition_name: TEE2
 file_name: tee2.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6500000
 physical_start_addr: 0x6500000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS18
 partition_name: FRP
 file_name: persistent
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x6A00000
 physical_start_addr: 0x6A00000
 partition_size: 0x100000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS19
 partition_name: NVDATA
 file_name: NONE
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x6B00000
 physical_start_addr: 0x6B00000
 partition_size: 0x2000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS20
 partition_name: METADATA
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x8B00000
 physical_start_addr: 0x8B00000
 partition_size: 0x2500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS21
 partition_name: SYSTEM
 file_name: system.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0xB000000
 physical_start_addr: 0xB000000
 partition_size: 0x10C000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS22
 partition_name: CACHE
 file_name: cache.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0x117000000
 physical_start_addr: 0x117000000
 partition_size: 0x19000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS23
 partition_name: USERDATA
 file_name: data.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0x130000000
 physical_start_addr: 0x130000000
 partition_size: 0x616B80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS24
 partition_name: FLASHINFO
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x746B80000
 physical_start_addr: 0x746B80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: false
 is_reserved: true
 operation_type: RESERVED
 reserve: 0x00
Later on i found another scatter file on the internet wich is supposed to be from an Allview X3 Soul Style (stock, unrooted), and it looks like this:
Code:
############################################################################################################
#
#  General Setting
#    
############################################################################################################
- general: MTK_PLATFORM_CFG
 info:
   - config_version: V1.1.2
     platform: MT6753
     project: gionee6753_65u_m0
     storage: EMMC
     boot_channel: MSDC_0
     block_size: 0x20000
############################################################################################################
#
#  Layout Setting
#
############################################################################################################
- partition_index: SYS0
 partition_name: preloader
 file_name: preloader_gionee6753_65u_m0.bin
 is_download: true
 type: SV5_BL_BIN
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x40000
 region: EMMC_BOOT_1
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: BOOTLOADERS
 reserve: 0x00

- partition_index: SYS1
 partition_name: pgpt
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x0
 physical_start_addr: 0x0
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS2
 partition_name: proinfo
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x80000
 physical_start_addr: 0x80000
 partition_size: 0x300000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS3
 partition_name: nvram
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x380000
 physical_start_addr: 0x380000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: BINREGION
 reserve: 0x00

- partition_index: SYS4
 partition_name: protect1
 file_name: NONE
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x880000
 physical_start_addr: 0x880000
 partition_size: 0xa00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS5
 partition_name: protect2
 file_name: NONE
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x1280000
 physical_start_addr: 0x1280000
 partition_size: 0xa00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: PROTECTED
 reserve: 0x00

- partition_index: SYS6
 partition_name: lk
 file_name: lk.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1c80000
 physical_start_addr: 0x1c80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS7
 partition_name: para
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x1d00000
 physical_start_addr: 0x1d00000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS8
 partition_name: boot
 file_name: boot.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x1d80000
 physical_start_addr: 0x1d80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS9
 partition_name: recovery
 file_name: recovery.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x2d80000
 physical_start_addr: 0x2d80000
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS10
 partition_name: logo
 file_name: logo.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x3d80000
 physical_start_addr: 0x3d80000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS11
 partition_name: expdb
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x4580000
 physical_start_addr: 0x4580000
 partition_size: 0xa00000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS12
 partition_name: seccfg
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x4f80000
 physical_start_addr: 0x4f80000
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS13
 partition_name: oemkeystore
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x5000000
 physical_start_addr: 0x5000000
 partition_size: 0x200000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS14
 partition_name: secro
 file_name: secro.img
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x5200000
 physical_start_addr: 0x5200000
 partition_size: 0x600000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS15
 partition_name: keystore
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x5800000
 physical_start_addr: 0x5800000
 partition_size: 0x800000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS16
 partition_name: tee1
 file_name: trustzone.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6000000
 physical_start_addr: 0x6000000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS17
 partition_name: tee2
 file_name: trustzone.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x6500000
 physical_start_addr: 0x6500000
 partition_size: 0x500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS18
 partition_name: frp
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x6a00000
 physical_start_addr: 0x6a00000
 partition_size: 0x100000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS19
 partition_name: nvdata
 file_name: NONE
 is_download: false
 type: EXT4_IMG
 linear_start_addr: 0x6b00000
 physical_start_addr: 0x6b00000
 partition_size: 0x2000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS20
 partition_name: metadata
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0x8b00000
 physical_start_addr: 0x8b00000
 partition_size: 0x2500000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: INVISIBLE
 reserve: 0x00

- partition_index: SYS21
 partition_name: system
 file_name: system.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0xb000000
 physical_start_addr: 0xb000000
 partition_size: 0x10c000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS22
 partition_name: cache
 file_name: cache.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0x117000000
 physical_start_addr: 0x117000000
 partition_size: 0x19000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS23
 partition_name: userdata
 file_name: userdata.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0x130000000
 physical_start_addr: 0x130000000
 partition_size: 0x60000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00

- partition_index: SYS24
 partition_name: flashinfo
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0xFFFF0084
 physical_start_addr: 0xFFFF0084
 partition_size: 0x1000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: false
 is_reserved: true
 operation_type: RESERVED
 reserve: 0x00

- partition_index: SYS25
 partition_name: sgpt
 file_name: NONE
 is_download: false
 type: NORMAL_ROM
 linear_start_addr: 0xFFFF0004
 physical_start_addr: 0xFFFF0004
 partition_size: 0x80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: false
 is_reserved: true
 operation_type: RESERVED
 reserve: 0x00
As you can see for yourselves, the are some differencies between the scatter file made by Miracle Box and the last one (above).
First, if you compare the Miracle Box scatter with the scatter from the internet, you can see that they are similar, except for the following:
Miracle Box scatter:
Code:
- partition_index: SYS23
 partition_name: USERDATA
 file_name: userdata.bin
 is_download: true
 type: NORMAL_ROM
 linear_start_addr: 0x130000000
 physical_start_addr: 0x130000000
 partition_size: 0x616B80000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00
Internet scatter:
Code:
- partition_index: SYS23
 partition_name: userdata
 file_name: userdata.img
 is_download: true
 type: EXT4_IMG
 linear_start_addr: 0x130000000
 physical_start_addr: 0x130000000
 partition_size: 0x60000000
 region: EMMC_USER
 storage: HW_STORAGE_EMMC
 boundary_check: true
 is_reserved: false
 operation_type: UPDATE
 reserve: 0x00
In the Miracle Box scatter, the USERDATA partition size is 0x616B80000 (Hexadecimal) = 26150961152 (Decimal Bytes) = 24.35498 GB
In the internet scatter file, the USERDATA partition size is 0x60000000 (Hexadecimal) = 1610612736 (Decimal Bytes) = 1.5 GB
At the same time, the internet scatter contains an extra partition called SGPT.
I tend to believe the internet scatter may be wrong in some way because the USERDATA partition can not be so small (1.5 GB) for a phone with 32 GB internal memory.
Miracle Box saved the userdata.bin file with a size of 24.2 GB.
I do not like to think that Miracle Box could read the wrong values from the phone.
I would like to hear some opinions from you about this.
Thank you!


Reply
#32
(10-27-2016, 07:59 PM)djtetei Wrote: Miracle Box saved the userdata.bin file with a size of 24.2 GB.
I do not like to think that Miracle Box could read the wrong values from the phone.
I would like to hear some opinions from you about this.
Thank you!


Both cases could be correct depending on the tool / situation.
The first scatter file (1.5GB userdata) is stock / factory which doesn't account for unused space. Thats why you'll find userdata in the stock ROMs some what smaller that system.
When you do a dump like Miracle box does, the entire partition is dumped. So if you have a 32GB ROM with just 2GB used, you'll find the userdata partitions dump still about 32GB because both used and unused space are dumped as a partition.
Reply
#33
(This post was last modified: 10-28-2016, 09:36 AM by djtetei. Edit Reason: Update )
(10-27-2016, 10:45 PM)hovatek Wrote:
(10-27-2016, 07:59 PM)djtetei Wrote: Miracle Box saved the userdata.bin file with a size of 24.2 GB.
I do not like to think that Miracle Box could read the wrong values from the phone.
I would like to hear some opinions from you about this.
Thank you!


Both cases could be correct depending on the tool / situation.
The first scatter file (1.5GB userdata) is stock / factory which doesn't account for unused space. Thats why you'll find userdata in the stock ROMs some what smaller that system.
When you do a dump like Miracle box does, the entire partition is dumped. So if you have a 32GB ROM with just 2GB used, you'll find the userdata partitions dump still about 32GB because both used and unused space are dumped as a partition.

Thank you for your reply.
But in this case it means that the internet scatter was created by a software that takes into account the used data on partitions.
In my opinion the partition size from the scatter file should represent the size of the entire partition and not the size of the used space in the partition.
In our case, if the userdata partition size is indeed 24.2 GB, and the used space is only 1.5 GB, the scatter file should represent the entire partition size and not the used space size because if you try to flash the partition like this it means you resize the partition to a smaller size.
Why the partitions above userdata have the same start addresses and sizes like in the scatter created by Miracle Box?
My scatter file is the same as the one from the internet, except for the userdata partition size and the presence of another partition at the end (SGPT).
Reply
#34
(This post was last modified: 10-28-2016, 11:12 AM by hovatek. )
(10-28-2016, 08:59 AM)djtetei Wrote: Thank you for your reply.
But in this case it means that the internet scatter was created by a software that takes into account the used data on partitions.
In my opinion the partition size from the scatter file should represent the size of the entire partition and not the size of the used space in the partition.
In our case, if the userdata partition size is indeed 24.2 GB, and the used space is only 1.5 GB, the scatter file should represent the entire partition size and not the used space size because if you try to flash the partition like this it means you resize the partition to a smaller size.
Why the partitions above userdata have the same start addresses and sizes like in the scatter created by Miracle Box?
My scatter file is the same as the one from the internet, except for the userdata partition size and the presence of another partition at the end (SGPT).

First, I need you to see userdata and cache as not so critical partitions during flashing (compared to other partitions). This is why a simple factory reset can correct them after flashing. This is also why you could take userdata and cache form a different ROM entirely and still flash successfully (then boot up fine after a reset).
The size of userdata could vary (large or small), it just shouldn't be LARGER than the partition size else,you would get the no space error. At the end of the day, A simple factory reset would correct the userdata partition regardless of the data.img (and size) flashed. If the data.img is compatible, you won't need a factory reset, else,a factory reset would set things right. The size isn't really an issue
Reply
#35
Here's another issue:
I know that there was another method to obtain a scatter file for a device within SP Flash Toll itself.
For that purpose you could obtain a SPFT ROM that is known to be good for any phone, preferrably with the same chip as yours.
Make sure that scatter file loads into SPFT without error. SPFT checks the PRELOADER and if it is not present in the scatter directory, it will fail and maybe crash.
Close SPFT.
Now modify the MT*_Android_scatter.txt file and introduce a few errors in the partition names, but don't change PRELOADER.
For example, instead of "SYSTEM" replace it with "MYERROR". You would do this to make SURE that the "Download" feature fails. You DON'T want the "Download" to actually work and write your random SPFT ROM to your new device. After loading the freshly broken scatter file, click "Download" and hook up your MTK device in preloader / META Mode. It will say your PMT block does not match the scatter file and it will fail with an ERROR.
Then browse to "C:\ProgramData\SP_FT_Logs" and find the latest date. Open the BROM_DLL*.log in a text editor and look for a text line like "CMD_ReadPartitionInfo()". You could you the data from here to create your own scatter file.
Just make sure that you find the partition dump from your device and not the dump of the broken scatter (the one that contains the "MYERROR" partition name).
Is it still possible to do that in the latest versions of SP Flash Tool?
Reply
#36
(10-28-2016, 12:15 PM)djtetei Wrote: Here's another issue:
I know that there was another method to obtain a scatter file for a device within SP Flash Toll itself.
For that purpose you could obtain a SPFT ROM that is known to be good for any phone, preferrably with the same chip as yours.
Make sure that scatter file loads into SPFT without error. SPFT checks the PRELOADER and if it is not present in the scatter directory, it will fail and maybe crash.
Close SPFT.
Now modify the MT*_Android_scatter.txt file and introduce a few errors in the partition names, but don't change PRELOADER.
For example, instead of "SYSTEM" replace it with "MYERROR". You would do this to make SURE that the "Download" feature fails. You DON'T want the "Download" to actually work and write your random SPFT ROM to your new device. After loading the freshly broken scatter file, click "Download" and hook up your MTK device in preloader / META Mode. It will say your PMT block does not match the scatter file and it will fail with an ERROR.
Then browse to "C:\ProgramData\SP_FT_Logs" and find the latest date. Open the BROM_DLL*.log in a text editor and look for a text line like "CMD_ReadPartitionInfo()". You could you the data from here to create your own scatter file.
Just make sure that you find the partition dump from your device and not the dump of the broken scatter (the one that contains the "MYERROR" partition name).
Is it still possible to do that in the latest versions of SP Flash Tool?

If not tested this with the latest version but you could give it a shot
Reply
#37
is this method work with :
  1. locked phone with pattern
  2. bootloader locked
  3. usb debugging not enabled
all of them together ( bad luck )
????
Reply
#38
(11-16-2016, 09:42 AM)[email protected] Wrote: is this method work with :
  1. locked phone with pattern
  2. bootloader locked
  3. usb debugging not enabled
all of them together ( bad luck )
????

Yes, it works.
It only needs VCOM drivers on your PC
Reply
#39
(06-04-2016, 09:57 AM)hovatek Wrote: This guide will enable you easily backup an MTK phone's firmware without having to root it. Other methods you could consider are MTK Droid tools @ https://forum.hovatek.com/thread-468.html (root required) and SP Flash tool Readback / ROM dump @ https://forum.hovatek.com/thread-526.html (root not required)

Note

* If you get the inactive start button error when using Miracle, then see https://forum.hovatek.com/thread-14815.html

Requirements

* Download Miracle Box v2.27a + Loader @ https://forum.hovatek.com/thread-15700.html
* PC
* USB cord
* Manually install Mediatek VCOM drivers (see https://forum.hovatek.com/thread-440.html )

Procedure

See the video tutorial below or @ https://youtu.be/_rIXJ4eSxgg





1. Extract the Miracle Box zip into a folder and launch Miracle loader exe

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-0.jpg]

2. Wait till Miracle Box opens to the Dashboard

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-1.jpg]

3. Click the MTK tab

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-2.jpg]

4. Tick Read

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-3.jpg]

5. Select the phone's chipset type from the dropdown

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-4.jpg]

5a. If you want the backup saved in an SP Flash tool friendly format (with a scatter file) then tick Save as scatter file.

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...Box-5a.jpg]

6. Click the Start button

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-5.jpg]

7. You should now see >> Waiting for USB Port at the bottom left corner. Connect the phone to the PC (must be switched off still with battery inside) then press the Power button just once (this is to ensure that your device is detected immediately). DO NOT hold down the power button else the phone will boot up normally

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-6.jpg]

8. If you did not tick Save as scatter file, a box should pop up. Navigate to the location you wish to save the firmware (in .bin format) then click Save

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-7.jpg]

8a. If you ticked Save as scatter file then a box should popup asking you to select which block / partition you would like to backup. Tick all if you want a full firmware backup / dump or tick only what you need to backup then click OK

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...Box-8a.jpg]

8b. Navigate to the location you wish to save the files to then click OK

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...Box-8b.jpg]

9. Wait while Miracle Box begins backing up the phone. If you did not tick Save as scatter file, it should look something like

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...-Box-9.jpg]

9a. If you ticked Save as scatter file, it should look something like

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...Box-9a.jpg]

10. Once backup has been completed, you should see a Done message

[Image: Hovatek-How-to-backup-or-dump-a-Mediatek...Box-10.jpg]

11. Disconnect then power on the phone

Note

For the scatter backup, you can rename the file extensions in order to use them in SP flash tool, e.g recovery.bin to recovery.img
Reply
#40
Thanks i have done the backup.. now i need to know how to install the xposed framework tool and install custom rom in my wiko slide 2. please help out..

Thanks
Reply










Users browsing this thread:
1 Guest(s)