Образ Android


  Образ       Файлы       GPT     Разделы     RAW  

  super.fex     boot-resource.fex     boot_package.fex     boot0_sdcard.fex     cardscript.fex       cardtool.fex       split_xxxx.fex     fes1.fex  

Файл cardtool.fex

Примечание. Всё сказанное ниже относится также и к аналогичному файлу usbtool.fex, с той лишь разницей, что он используется прошивальщиком PhoenixSuite, работающем через USB и прошивающим внутреннюю nand-память (если и когда она есть на устройстве).


Файл cardtool.fex используется прошивальщиком PhoenixCard и при его запуске и выборе образа прошивки копируется в текущую папку с именем card.scj как временый файл. После завершения работы и выхода из PhoenixCard файл из папки удаляется.

Если учесть, что PhoenixCard - это достаточно универсальная программа записи образа на карту для любых устройств Allwinner, то можно предположить, что в cardtool.fex содержится специфическая информация (возможно, библиотечная), необходимая для записи данного конкретного образа, поэтому это файл упаковывается в него при сборке.

Однако непосредственно на карту этот файл не записывается, поэтому для целей создания альтернативного образа (и способа записи без PhoenixCard) он не представляет особого интереса, учитывая отсутствие какой-либо документации. А гадать на кофейной гуще не хочется...

Какое-то представление о функциях cardtool.fex можно получить из списка содержащихся в нём текстовых строк (в т.ч. сообщений):


  • text
  • rdata
  • data
  • reloc
  • bad allocation
  • ERROR:%s[%d] FUNC:%s:%s
  • ParseScript: Param(0x%x), script Info(0x%x)
  • thisdata.fex
  • bad4b626-2f05-4308-b7db-697d16ef6641
  • sparse: incompatible format
  • sparse: bad magic
  • sparse: bad chunk size for chunk %d, type Raw
  • sparse: flash write failed Ln--%d
  • sparse: flash write failed Block %d Ln--%d
  • sparse: bad chunk size for chunk %d, type FILL
  • sparse: bogus DONT CARE chunk
  • sparse: unknown chunk ID %x
  • sparse: chunk ID is CHUNK_TYPE_FILL
  • input size = %d
  • 720420d3-fbbe-44a3- 83c3-08d35afa1cca
  • cardtool
  • scottyu
  • cd1bc3b8-afea-403e- bca0-016e4afd92a6
  • c4c12549-6916-4c73- 9cd0-61d97af44a95
  • 571a0639-251e-445f- 8a71-05b7ee2758c5
  • 49b6715e-7bdf-4cc8- ab80-52415d73d677
  • card_work_mode=0x%x
  • toc0 item num=0x%x
  • use default card_work_mode
  • uboot magic is error
  • uboot
  • error:can't find uboot
  • u-boot
  • Entry_name = %s TOC0_00000000000
  • UBOOT_0000000000
  • Write boot0 for secure img end
  • Write boot0 for secure img error
  • Write boot0 for secure img start: Pos = %d,Boot0Len = %d
  • 1234567890BOOT_0
  • thisdata
  • thisfile
  • Start pos over the step[%s] (sta%d(sec) + length:%d (sec) = %d(sec) > %d sec.
  • Burn ([%s] strar pos = %d sec)Error.
  • Please select the image file retry again.
  • Please Check the file cardscript.fex in the image.
  • Check error: [%s] startpos = %d, PreStep End = %d
  • DISKFS_FEX000000
  • PHOENIX_CARD_IMG
  • invalid vector subscript
  • IniParasor.cpp
  • softw311
  • ScriptMan.cpp
  • err = %d
  • Image error, use new version image file!
  • ParseScriptInfo ok
  • UDISK
  • DATA File
  • startpos
  • thisdata00000000
  • IMG File
  • RFSFAT16
  • 1234567890___mbr
  • commchs
  • commen
  • param7
  • param6
  • param5
  • param4
  • param3
  • param2
  • param1
  • param0
  • type
  • sectors
  • start
  • sub
  • main
  • mode
  • Error
  • GetKeyString(%s %s) failed
  • process
  • version
  • Load MBR and dlInfo Failed
  • mbr.fex
  • dlinfo.fex
  • burnkey
  • test
  • update
  • bromrun
  • product
  • null
  • Delete
  • NoRemove
  • ForceRemove
  • Val
  • mfc90.dll
  • __CxxFrameHandler3
  • MSVCR90.dll
  • __CppXcptFilter
  • __dllonexit
  • _type_info_dtor_internal_ method@type_info@@QAEXXZ
  • __clean_type_info_names_internal
  • CloseHandle
  • CreateFileA
  • KERNEL32.dll
  • USER32.dll
  • MSVCP90.dll
  • CardTool.dll
  • GetAuthor
  • GetCopyRight
  • GetInterface
  • GetPlugInName
  • GetPlugInType
  • GetPlugInVersion
  • QueryInterface
  • Start Burning...
  • Invalid Parameter
  • Image File Invalid
  • Script Invalid
  • Burn End...
  • Burn Failed %d
  • File (%s) NOT Exist !
  • Magic Complete
  • Magic Failed %d
  • Check Complete
  • Check Failed
  • Burn Sucess
  • Burn Fail
  • Error
  • Fail
  • Invalid Parameter!
  • DATA_TYPE_l1 Not Support
  • DATA_TYPE_l2 Not Support
  • Not Support
  • DATA_TYPE_RAW Not Support
  • CardCheckEntry Trying to Complete
  • IsValidImage Trying to Complete
  • IsValidInterface Error %d
  • Write DiskSector Failed %d
  • Disk=%c %s %s length=%d start=%d
  • %s %s FileCRC=%x
  • ReadDisk Sector Failed %d
  • %s %s DataCRC=%x
  • Data Not Match %s %s %x %x
  • Device Open Failed
  • AVbad_alloc@std@@
  • AVexception@std@@
  • AVlogic_error@std@@
  • AVlength_error@std@@
  • AVout_of_range@std@@
  • AVIniParasor@@
  • AVPartionInfoAW@@
  • AVPartionInfoA23@@
  • AVPartionInfoA33@@
  • AVScriptMan@@
  • AVCMemoryException@@
  • AV_AFX_DLL_MODULE_STATE@@
  • AVAFX_MODULE_STATE@@
  • AVCNoTrackObject@@
  • AVtype_info

Примечание. Выделены строки сообщений, которые появляются в окне сообщений PhoenixCard в случае нормального и успешного процесса записи образа на карту.