Skip to content

tiredboffin/fffw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fffw

fffw is a set of research tools for Fujifilm firmware.

Quick usage: python ff80 -h

Functions

  • ff80 - jig mode.

    • tool to research native interface provided by the firmware for adjustments and debugging.
    • can be used to copy (dump) RAM content, for code injections and to selectively enable native debug logging susbsytem(s).
    • can read, modify and save adjustment and calibration data.
  • ffun (unpublished yet) - tool to manipulate firmware image DAT files.

    • split DAT files (camers, lenses etc) into pieces, decompress compressed 'segments' and construct a new valid DAT files out of the modified pieces.
    • convert the decompressed DAT into ELF container for furher analysis in Ghidra. Supports most models starting from EXR processor (for e.g XF1) and up to "X Processor 5" cameras (X-T5, X100VI).
    • Note: Only ARM portions of the image are included into ELF, RX/RL78 code is not supported. GFX is work in progress.
  • ffui (todo)

    • extract and convert UI localized text resources (menu, help etc) into an editable format (work in porgress)
    • compile the resources back into camera format (work in porgress)
  • ffre (unpublished) - bricked camera recovery (work in progress)

    • runs firmware updater from SD card. Partially tested only on XE2. Can be made to work on other cameras with EXR-II SoC (XA2, XM1 etc). Porting to other SoC-s depends on bootrom availabilty.
  • ffem (unpublished) - research emulator (work in porgress)

    • code to emulate (select) functions. At this stage can be used to
      • demangle the event driven parts of the code
      • research SD and NAND controllers that are used by ffre

Instructions

To put the camera into service ("ff80") mode

  • Power off the camera
  • Connect USB cable to PC
  • Power on the camera holding the Shutter and Up buttons

Then test connectivity with

python ff80 info

Windows

Additional step is required to install WinUSB driver for 04CB:FF80 :

image

License

See the LICENSE file for license rights and limitations (MIT).

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published