Make fw

From iPodLinux

Jump to: navigation, search
The title of this article should be make_fw. The initial letter is capitalized due to technical limitations.

make_fw is a program to modifiy the firmware file(s) stored on the firmware partition.

It is a command line tool that you can use on Linux, OS X and Windows (provided you have a unix-like shell installed, such as MinGW or Cygwin). There is also a prebuilt version you can use in a Windows Command Prompt on the Rockbox installation page, called ipod_fw.exe.

Download

Usage

Basically, it has two modes of operation:

  1. Extract an image file from the firmware partition (backup) file
  2. Create a new firmware partition file from a set of separate image files

Here's the usage info it prints (note that while it says patch_fw, it really means make_fw):

Usage: patch_fw [-h]
  patch_fw [-v] -o outfile -e img_no fw_file
  patch_fw [-v] -g gen [-r rev] -o outfile [-i img_from_-e]* [-l raw_img]* ldr_img

  -g:    set target ipod generation, valid options are: 1g, 2g, 3g
         4g, 5g, scroll, touch, dock, mini, photo, color, nano and video
  -e:    extract the image at img_no in boot table to outfile
         fw_file is an original firmware image
         the original firmware has the sw at 0, and a flash updater at 1
  -i|-l: create new image to outfile
         up to 5 images, any of -i or -l allowed
  -i:    image extracted with -e, load and entry address preserved
  -l:    raw image, loaded to 0x28000000, entry at 0x00000000
  -r:    set master revision to rev (for example 210 for 2.10)
         may be needed if newest -e img is not the same as the flash rev
         ldr_img is the iPodLinux loader binary.
         first image is loaded by default, 2., 3., 4. or 5. loaded if
         rew, menu, play or ff is hold while booting
  -v:    verbose