aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Linux/README1013
-rw-r--r--OSX/README.txt1074
-rw-r--r--Win32/README.txt31
-rw-r--r--heimdall-frontend/Source/Alerts.cpp2
-rw-r--r--heimdall-frontend/Source/Alerts.h2
-rw-r--r--heimdall-frontend/Source/FirmwareInfo.cpp2
-rw-r--r--heimdall-frontend/Source/FirmwareInfo.h2
-rw-r--r--heimdall-frontend/Source/PackageData.cpp2
-rw-r--r--heimdall-frontend/Source/PackageData.h2
-rw-r--r--heimdall-frontend/Source/Packaging.cpp2
-rw-r--r--heimdall-frontend/Source/Packaging.h2
-rw-r--r--heimdall-frontend/Source/aboutform.cpp2
-rw-r--r--heimdall-frontend/Source/aboutform.h2
-rw-r--r--heimdall-frontend/Source/main.cpp2
-rw-r--r--heimdall-frontend/Source/mainwindow.cpp2
-rw-r--r--heimdall-frontend/Source/mainwindow.h2
-rw-r--r--heimdall-frontend/aboutform.ui16
-rw-r--r--heimdall/source/Arguments.cpp2
-rw-r--r--heimdall/source/Arguments.h2
-rw-r--r--heimdall/source/BeginDumpPacket.h2
-rw-r--r--heimdall/source/BeginSessionPacket.h2
-rw-r--r--heimdall/source/BridgeManager.cpp2
-rw-r--r--heimdall/source/BridgeManager.h2
-rw-r--r--heimdall/source/ClosePcScreenAction.cpp4
-rw-r--r--heimdall/source/ClosePcScreenAction.h2
-rw-r--r--heimdall/source/ControlPacket.h2
-rw-r--r--heimdall/source/DetectAction.cpp2
-rw-r--r--heimdall/source/DetectAction.h2
-rw-r--r--heimdall/source/DeviceTypePacket.h2
-rw-r--r--heimdall/source/DownloadPitAction.cpp2
-rw-r--r--heimdall/source/DownloadPitAction.h2
-rw-r--r--heimdall/source/DumpPartFileTransferPacket.h2
-rw-r--r--heimdall/source/DumpPartPitFilePacket.h2
-rw-r--r--heimdall/source/DumpResponse.h2
-rw-r--r--heimdall/source/EndFileTransferPacket.h2
-rw-r--r--heimdall/source/EndModemFileTransferPacket.h2
-rw-r--r--heimdall/source/EndPhoneFileTransferPacket.h2
-rw-r--r--heimdall/source/EndPitFileTransferPacket.h2
-rw-r--r--heimdall/source/EndSessionPacket.h2
-rw-r--r--heimdall/source/FilePartSizePacket.h2
-rw-r--r--heimdall/source/FileTransferPacket.h2
-rw-r--r--heimdall/source/FlashAction.cpp2
-rw-r--r--heimdall/source/FlashAction.h2
-rw-r--r--heimdall/source/FlashPartFileTransferPacket.h2
-rw-r--r--heimdall/source/FlashPartPitFilePacket.h2
-rw-r--r--heimdall/source/Heimdall.h2
-rw-r--r--heimdall/source/HelpAction.cpp2
-rw-r--r--heimdall/source/HelpAction.h2
-rw-r--r--heimdall/source/InboundPacket.h2
-rw-r--r--heimdall/source/InfoAction.cpp2
-rw-r--r--heimdall/source/InfoAction.h2
-rw-r--r--heimdall/source/Interface.cpp10
-rw-r--r--heimdall/source/Interface.h2
-rw-r--r--heimdall/source/OutboundPacket.h2
-rw-r--r--heimdall/source/Packet.h2
-rw-r--r--heimdall/source/PitFilePacket.h2
-rw-r--r--heimdall/source/PitFileResponse.h2
-rw-r--r--heimdall/source/PrintPitAction.cpp2
-rw-r--r--heimdall/source/PrintPitAction.h2
-rw-r--r--heimdall/source/ReceiveFilePartPacket.h2
-rw-r--r--heimdall/source/ResponsePacket.h2
-rw-r--r--heimdall/source/SendFilePartPacket.h2
-rw-r--r--heimdall/source/SendFilePartResponse.h2
-rw-r--r--heimdall/source/SessionSetupPacket.h2
-rw-r--r--heimdall/source/SessionSetupResponse.h2
-rw-r--r--heimdall/source/TotalBytesPacket.h2
-rw-r--r--heimdall/source/Utility.cpp2
-rw-r--r--heimdall/source/Utility.h2
-rw-r--r--heimdall/source/VersionAction.cpp2
-rw-r--r--heimdall/source/VersionAction.h2
-rw-r--r--heimdall/source/main.cpp2
-rw-r--r--libpit/Source/libpit.cpp2
-rw-r--r--libpit/Source/libpit.h2
73 files changed, 1155 insertions, 1127 deletions
diff --git a/Linux/README b/Linux/README
index a181796..78cf3af 100644
--- a/Linux/README
+++ b/Linux/README
@@ -1,535 +1,538 @@
-Heimdall (c) 2010-2012 Benjamin Dobell, Glass Echidna
-http://www.glassechidna.com.au/products/heimdall/
-
-DISCLAIMER:
-
- This software attempts to flash your Galaxy S device. The very nature of
- flashing is dangerous. As with all flashing software, Heimdall has the
- potential to damage (brick) your device if not used carefully. If you're
- concerned, don't use this software. Flashing ROMs onto your phone may also
- void your warranty. Benjamin Dobell and Glass Echidna are not responsible
- for the result of your actions.
-
-
-These instructions are for Linux operating systems.
-
-
-Flashing Heimdall Firmware Package with Heimdall Frontend:
-
- As of Heimdall Frontend 1.3 there are now two main ways to flash a ROM from
- Heimdall Frontend. The simpler and preferred option is to download a
- Heimdall Firmware Package and follow the following steps.
-
-
- 1. Fully charge your device (use the wall charger as it's faster).
-
- 2. Open the a terminal and run Heimdall Frontend by typing:
-
- heimdall-frontend
-
- 3. From the "Load Package" tab, under the "Heimdall Firmware Package"
- section click the "Browse" button.
-
- 4. Use the dialogue that appears to navigate to, and select, the Heimdall
- firmware package that you wish to flash.
-
- 5. You will see progress bars appear as the package is decompressed and
- extracted.
-
- When the package has finished being decompressed you should see
- information about the particular firmware package that has been
- selected.
-
- 6. Verify that your device is listed under "Supported Devices". If it's not
- then STOP immediately! DO NOT flash this firmware to your device!
- Instead search for an appropriate firmware package for your device.
-
- If you believe there is a mistake and your device is actually
- supported please get in contact with the firmware developer (not Glass
- Echidna!) and ask them to rectify the issue. If the developer provided
- a URL you may be able to contact them by pressing the "Homepage" button.
-
- 7. If you've verified your device is supported you may continue to press
- the "Load / Customise" button.
-
- 8. You should now be looking at the "Flash" tab. If not verify that you did
- in fact push the "Load / Customise" button.
-
- Generally, you won't NEED or WANT to customise a firmware package! In
- which case you can safely move on to step 9.
-
- Nonetheless, the "Flash" tab provides you with a means to customise the
- firmware package before flashing it to your device. See "Performing a
- Custom Flash with Heimdall Frontend" for more details.
-
- 9. Put your Galaxy S device into download mode and plug it in to your PC.
-
- Download mode can be accessed several different ways depending on your
- particular device model. If you're unsure how to do this please search
- online for the appropriate method.
-
- 10. Press the "Start" button.
-
- 11. Heimdall Frontend will display the progress and inform you when the
- flash is complete.
-
- If something went wrong i.e. your device wasn't detected because it
- wasn't in download mode, then the status section will let you know the
- cause of the problem.
-
-
-
-Performing a Custom Flash with Heimdall Frontend:
-
- This is the advanced means of flashing firmware to your device.
-
- If you're not an advanced user or a developer, in the event that a Heimdall
+Heimdall (c) 2010-2013 Benjamin Dobell, Glass Echidna
+http://www.glassechidna.com.au/products/heimdall/
+
+DISCLAIMER:
+
+ This software attempts to flash your Galaxy S device. The very nature of
+ flashing is dangerous. As with all flashing software, Heimdall has the
+ potential to damage (brick) your device if not used carefully. If you're
+ concerned, don't use this software. Flashing ROMs onto your phone may also
+ void your warranty. Benjamin Dobell and Glass Echidna are not responsible
+ for the result of your actions.
+
+
+These instructions are for Linux operating systems.
+
+
+Flashing Heimdall Firmware Package with Heimdall Frontend:
+
+ As of Heimdall Frontend 1.3 there are now two main ways to flash a ROM from
+ Heimdall Frontend. The simpler and preferred option is to download a
+ Heimdall Firmware Package and follow the following steps.
+
+
+ 1. Fully charge your device (use the wall charger as it's faster).
+
+ 2. Open the a terminal and run Heimdall Frontend by typing:
+
+ heimdall-frontend
+
+ 3. From the "Load Package" tab, under the "Heimdall Firmware Package"
+ section click the "Browse" button.
+
+ 4. Use the dialogue that appears to navigate to, and select, the Heimdall
+ firmware package that you wish to flash.
+
+ 5. You will see progress bars appear as the package is decompressed and
+ extracted.
+
+ When the package has finished being decompressed you should see
+ information about the particular firmware package that has been
+ selected.
+
+ 6. Verify that your device is listed under "Supported Devices". If it's not
+ then STOP immediately! DO NOT flash this firmware to your device!
+ Instead search for an appropriate firmware package for your device.
+
+ If you believe there is a mistake and your device is actually
+ supported please get in contact with the firmware developer (not Glass
+ Echidna!) and ask them to rectify the issue. If the developer provided
+ a URL you may be able to contact them by pressing the "Homepage" button.
+
+ 7. If you've verified your device is supported you may continue to press
+ the "Load / Customise" button.
+
+ 8. You should now be looking at the "Flash" tab. If not verify that you did
+ in fact push the "Load / Customise" button.
+
+ Generally, you won't NEED or WANT to customise a firmware package! In
+ which case you can safely move on to step 9.
+
+ Nonetheless, the "Flash" tab provides you with a means to customise the
+ firmware package before flashing it to your device. See "Performing a
+ Custom Flash with Heimdall Frontend" for more details.
+
+ 9. Put your Galaxy S device into download mode and plug it in to your PC.
+
+ Download mode can be accessed several different ways depending on your
+ particular device model. If you're unsure how to do this please search
+ online for the appropriate method.
+
+ 10. Press the "Start" button.
+
+ 11. Heimdall Frontend will display the progress and inform you when the
+ flash is complete.
+
+ If something went wrong i.e. your device wasn't detected because it
+ wasn't in download mode, then the status section will let you know the
+ cause of the problem.
+
+
+
+Performing a Custom Flash with Heimdall Frontend:
+
+ This is the advanced means of flashing firmware to your device.
+
+ If you're not an advanced user or a developer, in the event that a Heimdall
Firmware Package doesn't exist for the particular firmware (or files) that
you wish to flash, then I strongly recommend you get in touch with the
developer of the firmware (or files) and politely ask them to create a
Heimdall Firmware Package for you. In doing so, you avoid the risk of
making mistakes due to inexperience.
-
-
- If you're looking to customise an existing Heimdall Firmware Package then
- follow steps 1-8 of "Flashing Heimdall Firmware Package with Heimdall
- Frontend" then start from below with step 5.
-
-
- 1. Fully charge your device (use the wall charger as it's faster).
-
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
- and extract everything to the one directory.
-
- 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
- as multiple archives (nested or otherwise), extract them all to the same
- location.
-
- NOTE: If you want to use the CSC then extract it last. If you're asked
- to overwrite files then do so.
-
- 3. Open the a terminal and run Heimdall Frontend by typing:
-
- heimdall-frontend
-
- 4. Select the "Flash" tab. From the "Flash" tab you're able to completely
- customise a flash.
-
- 5. Before you can chose which partitions you want to flash with particular
- files you MUST first select a PIT file. To do this click the "Browse"
- button in the "PIT" section. This will open a dialogue allowing you to
+
+
+ If you're looking to customise an existing Heimdall Firmware Package then
+ follow steps 1-8 of "Flashing Heimdall Firmware Package with Heimdall
+ Frontend" then start from below with step 5.
+
+
+ 1. Fully charge your device (use the wall charger as it's faster).
+
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
+ and extract everything to the one directory.
+
+ 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
+ as multiple archives (nested or otherwise), extract them all to the same
+ location.
+
+ NOTE: If you want to use the CSC then extract it last. If you're asked
+ to overwrite files then do so.
+
+ 3. Open the a terminal and run Heimdall Frontend by typing:
+
+ heimdall-frontend
+
+ 4. Select the "Flash" tab. From the "Flash" tab you're able to completely
+ customise a flash.
+
+ 5. Before you can chose which partitions you want to flash with particular
+ files you MUST first select a PIT file. To do this click the "Browse"
+ button in the "PIT" section. This will open a dialogue allowing you to
navigate to and select a valid PIT (.pit) file.
-
+
If you do not already have a valid PIT file stored on your computer you
can download your device's PIT file from the "Utilities" tab.
6. If a valid PIT file has been selected then the "Add" button below the
"Partitions (Files)" list-box will be enabled. Press this button to add
a partition to your flash.
-
- 7. When you first add a partition you will see the "Partition Name" and
- "Partition ID" be populated with information. Use the "Partition Name"
- drop down to select which partition you wish to flash. "Partition ID"
- will automatically update and is never directly editable.
-
- 8. You must then select a file to flash to the partition that you just
- specified using the "Browse" button under the "File / Partition". You
- will not be able to flash, create a firmware package or add another
- partition until you have selected a file. However, you're still able to
- press the "Remove" button if you've decided not to flash the partition
- you've just specified.
-
- 9. When you've specified a file name then you'll be able to see the updated
- information in the partition list to the right. You can select any
- partition from this list and customise it as you see fit.
-
- You can also remove a partition from the list by selecting it and
- clicking the "Remove" button. Removing a partition from the list doesn't
- remove it from your device, it simply means it will not be flashed.
-
- 10. Repeat steps 7-9 as often as needed to specify all the partions/files
- that you wish to flash.
-
- 11. Now you can chose whether you would like to repartition your device as
- well as whether you would like to prevent the device rebooting once a
- flash has been completed. These options can be enabled or disabled by
- toggling the "Repartition" and "No Reboot" check-boxes.
-
- In the general case you will only need to enable repartition if you wish
- to change the PIT file on your device. Keep in mind that repartitioning
- will wipe your device!
-
- The "No Reboot" option is rarely required. It's mostly in place so you
- can manually boot straight into recovery mode after a flash (rather than
- booting up normally).
-
- 12. If you've added at least one partition to your flash (and selected a
- file for that partition) then the "Start" button will be enabled. Press
- the "Start" button to begin the flashing process.
-
- You may notice that the "Create Package" tab becomes available at the
- whenever the "Start" button becomes available. From this tab you're able
- to create a reusable, redistributable Heimdall Firmware Package with the
- files and partitions you just selected. See "How to Create a Heimdall
- Firmware Package" for details.
-
- 13. Heimdall Frontend will display the progress and inform you when the
- flash is complete.
-
- If something went wrong i.e. your device wasn't detected because it
- wasn't in download mode, then the status section will let you know the
- cause of the problem.
-
-
-
-Flashing Firmware from Command Line:
-
- 1. Fully charge your phone (use the wall charger as it's faster).
-
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
- and extract everything to the one directory.
-
- 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
- as multiple archives (nested or otherwise), extract them all to the same
- location.
-
- NOTE: If you want to use the CSC then extract it last.
-
- 4. Put your Galaxy S device into download mode and plug it in..
-
- 5. Open a terminal and navigate to the directory where you extracted
- the ROM/firmware files.
-
- 6. Type the following to list all the functionality Heimdall supports:
-
- heimdall help
-
- 7. Use the instructions to manually enter a command with all the files you
- want to flash.
-
- Here is an example that does a full flash and repartition on a GT-I9000:
-
- heimdall flash --repartition --pit s1_odin_20100512.pit --factoryfs factoryfs.rfs --cache cache.rfs --dbdata dbdata.rfs --primary-boot boot.bin --secondary-boot Sbl.bin --param param.lfs --kernel zImage --modem modem.bin
-
-
- 8. Heimdall will display the progress as it flashes so that you know things
- are working as they should.
-
-
-
-How to Create a Heimdall Firmware Package:
-
- Firstly, Heimdall's firmware package format is just a regular TAR archive
- compressed with gzip. The only two real requirements are that a valid
- firmware.xml must be included (refer to Appendix A) and you can only
- include files (no directories, links etc.) As such if you'd like there is
- nothing preventing you from creating Heimdall packages manually. Of course
- Heimdall Frontend provides a simple user interface that takes care of all
- the hard work for you.
-
- There are two ways in which you can create a firmware package. You can
- create a package from scratch, or you can load an existing package, apply
- modifications and then save the package. Creating a package from scratch
- is the preferred approach, by taking this approach you're far less likely
- to run into file name length limitations.
-
- Before you can access Heimdall Frontend's firmware creation functionality
- (available from the "Create Package" tab) you must first specify which
- files will be included in your package, as well as a few flashing options
- i.e. Whether or not users should repartition when flashing. This
- information must be filled out from the "Flash" tab in exactly the same
- fashion you would provide information to flash your device (see "Performing
- a Custom Flash with Heimdall Frontend"). As mentioned above, it's not the
- preferred means, but you're able to load an existing package as a starting
- point for this information.
-
- Once you've specified the files/partitions you wish to include in your
- firmware package the "Create Package" tab will become available. Clicking
- this tab will display additional information that you can include in your
- package. In order to continue you must fill out all sections except for the
- URLs section, which is optional. The following is a break-down of what all
- these options mean.
-
- - General Firmware Information: -
-
- Firmware Name - This is the name of your particular firmware. An
- example would be "Cyanogenmod".
-
+
+ 7. When you first add a partition you will see the "Partition Name" and
+ "Partition ID" be populated with information. Use the "Partition Name"
+ drop down to select which partition you wish to flash. "Partition ID"
+ will automatically update and is never directly editable.
+
+ 8. You must then select a file to flash to the partition that you just
+ specified using the "Browse" button under the "File / Partition". You
+ will not be able to flash, create a firmware package or add another
+ partition until you have selected a file. However, you're still able to
+ press the "Remove" button if you've decided not to flash the partition
+ you've just specified.
+
+ 9. When you've specified a file name then you'll be able to see the updated
+ information in the partition list to the right. You can select any
+ partition from this list and customise it as you see fit.
+
+ You can also remove a partition from the list by selecting it and
+ clicking the "Remove" button. Removing a partition from the list doesn't
+ remove it from your device, it simply means it will not be flashed.
+
+ 10. Repeat steps 7-9 as often as needed to specify all the partions/files
+ that you wish to flash.
+
+ 11. Now you can chose whether you would like to repartition your device as
+ well as whether you would like to prevent the device rebooting once a
+ flash has been completed. These options can be enabled or disabled by
+ toggling the "Repartition" and "No Reboot" check-boxes.
+
+ In the general case you will only need to enable repartition if you wish
+ to change the PIT file on your device. Keep in mind that repartitioning
+ will wipe your device!
+
+ The "No Reboot" option is rarely required. It's mostly in place so you
+ can manually boot straight into recovery mode after a flash (rather than
+ booting up normally).
+
+ 12. If you've added at least one partition to your flash (and selected a
+ file for that partition) then the "Start" button will be enabled. Press
+ the "Start" button to begin the flashing process.
+
+ You may notice that the "Create Package" tab becomes available at the
+ whenever the "Start" button becomes available. From this tab you're able
+ to create a reusable, redistributable Heimdall Firmware Package with the
+ files and partitions you just selected. See "How to Create a Heimdall
+ Firmware Package" for details.
+
+ 13. Heimdall Frontend will display the progress and inform you when the
+ flash is complete.
+
+ If something went wrong i.e. your device wasn't detected because it
+ wasn't in download mode, then the status section will let you know the
+ cause of the problem.
+
+
+
+Flashing Firmware from Command Line:
+
+ 1. Fully charge your phone (use the wall charger as it's faster).
+
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
+ and extract everything to the one directory.
+
+ 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
+ as multiple archives (nested or otherwise), extract them all to the same
+ location.
+
+ NOTE: If you want to use the CSC then extract it last.
+
+ 4. Put your Galaxy S device into download mode and plug it in..
+
+ 5. Open a terminal and navigate to the directory where you extracted
+ the ROM/firmware files.
+
+ 6. Type the following to list all the functionality Heimdall supports:
+
+ heimdall help
+
+ 7. Before flashing, you must first know the names of the partitions you
+ wish to flash. These can be obtained by executing:
+
+ heimdall print-pit --no-reboot
+
+ The inclusion of --no-reboot ensures the phone will not reboot after PIT
+ file has been downloaded and displayed. After executing a command with
+ the --no-reboot argument, the next command should include the --resume
+ argument.
+
+ NOTE: You can still safely reboot your phone manually (with the power
+ button) after executing --no-reboot commands.
+
+ 8. Use the help and print-pit output to construct a command with all the
+ files you want to flash.
+
+ Here is an example that does a full flash and repartition on a GT-I9000:
+
+ heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin
+
+ 9. Heimdall will display the progress as it flashes so that you know things
+ are working as they should.
+
+
+
+How to Create a Heimdall Firmware Package:
+
+ Firstly, Heimdall's firmware package format is just a regular TAR archive
+ compressed with gzip. The only two real requirements are that a valid
+ firmware.xml must be included (refer to Appendix A) and you can only
+ include files (no directories, links etc.) As such if you'd like there is
+ nothing preventing you from creating Heimdall packages manually. Of course
+ Heimdall Frontend provides a simple user interface that takes care of all
+ the hard work for you.
+
+ There are two ways in which you can create a firmware package. You can
+ create a package from scratch, or you can load an existing package, apply
+ modifications and then save the package. Creating a package from scratch
+ is the preferred approach, by taking this approach you're far less likely
+ to run into file name length limitations.
+
+ Before you can access Heimdall Frontend's firmware creation functionality
+ (available from the "Create Package" tab) you must first specify which
+ files will be included in your package, as well as a few flashing options
+ i.e. Whether or not users should repartition when flashing. This
+ information must be filled out from the "Flash" tab in exactly the same
+ fashion you would provide information to flash your device (see "Performing
+ a Custom Flash with Heimdall Frontend"). As mentioned above, it's not the
+ preferred means, but you're able to load an existing package as a starting
+ point for this information.
+
+ Once you've specified the files/partitions you wish to include in your
+ firmware package the "Create Package" tab will become available. Clicking
+ this tab will display additional information that you can include in your
+ package. In order to continue you must fill out all sections except for the
+ URLs section, which is optional. The following is a break-down of what all
+ these options mean.
+
+ - General Firmware Information: -
+
+ Firmware Name - This is the name of your particular firmware. An
+ example would be "Cyanogenmod".
+
Firmware Version - This is the version identifier for your package. Any
valid string will be accepted, although the inclusion of decimal
point version number is preferred i.e. "7.1". If it makes sense
then feel free to append a text string like "RC1" or "Beta 1" to
the decimal point version.
-
- Platform Name - This is the name of platform (or operating system) that
- your firmware is based on. In most cases this will simply be
- "Android".
-
- Platform Version - This is the operating system version that your
- firmware is based on. Again decimal point version numbers are
- preferred over text, i.e. "2.3.4" is preferred over "Gingerbread".
-
-
- - Developers -
-
- URLs (Optional):
-
- Homepage - Here you can enter your personal URL or a URL particularly
- pertaining to the firmware being packaged. The URL must be well
- formed for it to work. An example of a well formed URL is
- "http://www.glassechidna.com.au/products/heimdall/". It is
- important to include "http://" in order to specify the protocol as
- other protocols such as "ftp://" are equally valid although
- unlikely to be used.
-
- Donate - Here you can enter a URL that will link users to a page to
- make donations for the effort you've put into developing your
- firmware. Once again the URL must be well formed but there is no
- requirement on how your donation page should work. For instance
- both "http://www.glassechidna.com.au/donate/" and
- "http://forum.xda-developers.com/donatetome.php?u=2710388" are
- equally valid.
-
- Developer Info:
-
- Name - Here you can enter in the name of individual team members or a
- team name. Click "Add" and the developer will be added to the list
- on the right. If you make a mistake you can select a developer from
- the list and click "Remove". You can list as many developers as you
+
+ Platform Name - This is the name of platform (or operating system) that
+ your firmware is based on. In most cases this will simply be
+ "Android".
+
+ Platform Version - This is the operating system version that your
+ firmware is based on. Again decimal point version numbers are
+ preferred over text, i.e. "2.3.4" is preferred over "Gingerbread".
+
+
+ - Developers -
+
+ URLs (Optional):
+
+ Homepage - Here you can enter your personal URL or a URL particularly
+ pertaining to the firmware being packaged. The URL must be well
+ formed for it to work. An example of a well formed URL is
+ "http://www.glassechidna.com.au/products/heimdall/". It is
+ important to include "http://" in order to specify the protocol as
+ other protocols such as "ftp://" are equally valid although
+ unlikely to be used.
+
+ Donate - Here you can enter a URL that will link users to a page to
+ make donations for the effort you've put into developing your
+ firmware. Once again the URL must be well formed but there is no
+ requirement on how your donation page should work. For instance
+ both "http://www.glassechidna.com.au/donate/" and
+ "http://forum.xda-developers.com/donatetome.php?u=2710388" are
+ equally valid.
+
+ Developer Info:
+
+ Name - Here you can enter in the name of individual team members or a
+ team name. Click "Add" and the developer will be added to the list
+ on the right. If you make a mistake you can select a developer from
+ the list and click "Remove". You can list as many developers as you
like, however visual constraints of the "Load Package" tab means
only a few names will be visible. Where possible you may want to
- opt for team names over listing individual team members.
-
-
- - Supported Devices -
-
- This section allows you to create a list of devices that are supported by
- your particular firmware. Although Heimdall isn't capable of enforcing this
- we strongly recommend you take this section seriously. If filled out
- correctly you could help save a number of accidental bricks!
-
- Device Info:
-
- Manufacturer - This is where you can enter the name of the manufacturer
- for a particular device. For now this will most likely be
- "Samsung".
-
- Name - This is the human readable name for a particular device.
- "Galaxy S", "Galaxy S II", "Droid Charge", "Vibrant" and
- "Galaxy S (Telstra)" are all valid names. There are a lot of
- possible variations here so be as specific as you think is
- necessary.
-
- Product Code - This is by far the most important bit of device
- information. Device names tend to be region specific and further
- subject to the whims of telecommunication companies and resellers.
- Product Codes (or product IDs) are designated by manufacturers and
- are generally the definitive means of referring to a particular
- device. Examples are "GT-I9000", "GT-I9100" and "SCH-I897". If
- you're unsure of a particular product code then both Google and
- GSMArena are your friends!
-
-
- After filling out all the necessary information the "Build" button will be
- enabled. If it's still disabled then you know you're missing some required
- information. In particular you must specify at least one developer and at
- least one supported device. Pressing the "Build" button will bring up a
- save dialogue where you must chose a file name for your particular package.
- Don't worry about specifying the ".tar.gz" extension Heimdall Frontend will
- take care of this automatically.
-
- Once you've chosen a file name Heimdall Frontend will begin the process of
- building the firmware package. In doing so a valid firmware.xml file will
- be generated from the information entered. All files will be archived in a
- single TAR file then the TAR archive will be compressed via gzip
- compression. Compression will take a little while but you will see progress
- bars so you know the application hasn't hung. When the progress bars
- disappear you're finished making your package.
-
- Congratulations! You're now ready to redistribute your firmware package
- online or by any means you see fit.
-
-
-
-Appendix A - firmware.xml
-
-The following details a part of the Heimdall Firmware Package format. This
-is only relevant to developers or advanced users who wish to create Heimdall
-Firmware Packages outside of Heimdall Frontend or in some way integrate support
-for the format in their own software.
-
-
-All Heimdall Firmware Packages must contain a file called firmware.xml. This
+ opt for team names over listing individual team members.
+
+
+ - Supported Devices -
+
+ This section allows you to create a list of devices that are supported by
+ your particular firmware. Although Heimdall isn't capable of enforcing this
+ we strongly recommend you take this section seriously. If filled out
+ correctly you could help save a number of accidental bricks!
+
+ Device Info:
+
+ Manufacturer - This is where you can enter the name of the manufacturer
+ for a particular device. For now this will most likely be
+ "Samsung".
+
+ Name - This is the human readable name for a particular device.
+ "Galaxy S", "Galaxy S II", "Droid Charge", "Vibrant" and
+ "Galaxy S (Telstra)" are all valid names. There are a lot of
+ possible variations here so be as specific as you think is
+ necessary.
+
+ Product Code - This is by far the most important bit of device
+ information. Device names tend to be region specific and further
+ subject to the whims of telecommunication companies and resellers.
+ Product Codes (or product IDs) are designated by manufacturers and
+ are generally the definitive means of referring to a particular
+ device. Examples are "GT-I9000", "GT-I9100" and "SCH-I897". If
+ you're unsure of a particular product code then both Google and
+ GSMArena are your friends!
+
+
+ After filling out all the necessary information the "Build" button will be
+ enabled. If it's still disabled then you know you're missing some required
+ information. In particular you must specify at least one developer and at
+ least one supported device. Pressing the "Build" button will bring up a
+ save dialogue where you must chose a file name for your particular package.
+ Don't worry about specifying the ".tar.gz" extension Heimdall Frontend will
+ take care of this automatically.
+
+ Once you've chosen a file name Heimdall Frontend will begin the process of
+ building the firmware package. In doing so a valid firmware.xml file will
+ be generated from the information entered. All files will be archived in a
+ single TAR file then the TAR archive will be compressed via gzip
+ compression. Compression will take a little while but you will see progress
+ bars so you know the application hasn't hung. When the progress bars
+ disappear you're finished making your package.
+
+ Congratulations! You're now ready to redistribute your firmware package
+ online or by any means you see fit.
+
+
+
+Appendix A - firmware.xml
+
+The following details a part of the Heimdall Firmware Package format. This
+is only relevant to developers or advanced users who wish to create Heimdall
+Firmware Packages outside of Heimdall Frontend or in some way integrate support
+for the format in their own software.
+
+
+All Heimdall Firmware Packages must contain a file called firmware.xml. This
file stores flash information and meta-data for the package as well as
information about other files contained within the package.
-
-
-The format is fairly straight-forward so it won't be explained in great detail.
-Nonetheless the following is an example of a valid firmware.xml file.
-
-<?xml version="1.0" encoding="UTF-8"?>
-<firmware version="1">
- <name>Test Firmware</name>
- <version>1.1</version>
- <platform>
- <name>Android</name>
- <version>2.3.4</version>
- </platform>
- <developers>
- <name>Benjamin Dobell</name>
- <name>Hedonism Bot</name>
- </developers>
- <url>http://www.glassechidna.com.au/</url>
- <donateurl>http://www.glassechidna.com.au/donate/</donateurl>
- <devices>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000</product>
- <name>Galaxy S</name>
- </device>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000T</product>
- <name>Galaxy S (Telstra)</name>
- </device>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000M</product>
- <name>Vibrant</name>
- </device>
- </devices>
- <pit>Nl3276-I9000 s1_odin_20100512.pit</pit>
- <repartition>0</repartition>
- <noreboot>0</noreboot>
- <files>
- <file>
- <id>0</id>
- <filename>gq3276-boot.bin</filename>
- </file>
- <file>
- <id>24</id>
- <filename>Uh3276-cache.rfs</filename>
- </file>
- <file>
- <id>22</id>
- <filename>em3276-factoryfs.rfs</filename>
- </file>
- <file>
- <id>11</id>
- <filename>fl3276-modem.bin</filename>
- </file>
- <file>
- <id>21</id>
- <filename>Xd3276-param.lfs</filename>
- </file>
- <file>
- <id>3</id>
- <filename>if3276-Sbl.bin</filename>
- </file>
- <file>
- <id>6</id>
- <filename>cr3276-zImage</filename>
- </file>
- </files>
-</firmware>
-
-
-New lines need not be included and the order in which elements are specified
-does not need to match that of the above example.
-
-One and only one <firmware> element must be included. The <firmware> element
-must also have a version attribute specified. The version must be parsable as
-an integer and indicates what version of the Heimdall Firmware Package
-specification the package adheres to.
-
-All data is stored as strings, however a <file>'s <id> element must be parsable
-as an integer. The <id> value represents the partition ID (according to the
-specified PIT file) that the file should be flashed to.
-
-A <firmware>'s <repartition> and <noreboot> elements must also be parsable as
-an integer. However, as they represent boolean values, a value of zero ("0")
-means false (or disabled) where as a non-zero value (typically "1") means true
-(or enabled).
-
-File names are specified relative to the TAR archive in which firmware.xml and
-all other files are to be stored. Heimdall Firmware Packages do not support
-directories or links, as such file names should only be a name and not a path.
-
-<url> and <donateurl> are the only optional elements, all other elements must
-be included.
-
-
-
-Appendix B - Installing Heimdall from Source:
-
+
+
+The format is fairly straight-forward so it won't be explained in great detail.
+Nonetheless the following is an example of a valid firmware.xml file.
+
+<?xml version="1.0" encoding="UTF-8"?>
+<firmware version="1">
+ <name>Test Firmware</name>
+ <version>1.1</version>
+ <platform>
+ <name>Android</name>
+ <version>2.3.4</version>
+ </platform>
+ <developers>
+ <name>Benjamin Dobell</name>
+ <name>Hedonism Bot</name>
+ </developers>
+ <url>http://www.glassechidna.com.au/</url>
+ <donateurl>http://www.glassechidna.com.au/donate/</donateurl>
+ <devices>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000</product>
+ <name>Galaxy S</name>
+ </device>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000T</product>
+ <name>Galaxy S (Telstra)</name>
+ </device>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000M</product>
+ <name>Vibrant</name>
+ </device>
+ </devices>
+ <pit>Nl3276-I9000 s1_odin_20100512.pit</pit>
+ <repartition>0</repartition>
+ <noreboot>0</noreboot>
+ <files>
+ <file>
+ <id>0</id>
+ <filename>gq3276-boot.bin</filename>
+ </file>
+ <file>
+ <id>24</id>
+ <filename>Uh3276-cache.rfs</filename>
+ </file>
+ <file>
+ <id>22</id>
+ <filename>em3276-factoryfs.rfs</filename>
+ </file>
+ <file>
+ <id>11</id>
+ <filename>fl3276-modem.bin</filename>
+ </file>
+ <file>
+ <id>21</id>
+ <filename>Xd3276-param.lfs</filename>
+ </file>
+ <file>
+ <id>3</id>
+ <filename>if3276-Sbl.bin</filename>
+ </file>
+ <file>
+ <id>6</id>
+ <filename>cr3276-zImage</filename>
+ </file>
+ </files>
+</firmware>
+
+
+New lines need not be included and the order in which elements are specified
+does not need to match that of the above example.
+
+One and only one <firmware> element must be included. The <firmware> element
+must also have a version attribute specified. The version must be parsable as
+an integer and indicates what version of the Heimdall Firmware Package
+specification the package adheres to.
+
+All data is stored as strings, however a <file>'s <id> element must be parsable
+as an integer. The <id> value represents the partition ID (according to the
+specified PIT file) that the file should be flashed to.
+
+A <firmware>'s <repartition> and <noreboot> elements must also be parsable as
+an integer. However, as they represent boolean values, a value of zero ("0")
+means false (or disabled) where as a non-zero value (typically "1") means true
+(or enabled).
+
+File names are specified relative to the TAR archive in which firmware.xml and
+all other files are to be stored. Heimdall Firmware Packages do not support
+directories or links, as such file names should only be a name and not a path.
+
+<url> and <donateurl> are the only optional elements, all other elements must
+be included.
+
+
+
+Appendix B - Installing Heimdall from Source:
+
1. First make sure you have installed build-tools, pkgconfig, zlib-dev and
- libusb-1.0-dev (v1.0.8 or newer).
-
- NOTE: Package names may not be absolutely identical to those above.
-
- 2. Open a terminal and navigate to the directory you downloaded,
- or extracted, Heimdall to.
-
- 3. Enter the following commands to compile libpit:
-
- cd libpit
+ libusbx.
+
+ NOTE: Package names may not be absolutely identical to those above.
+
+ 2. Open a terminal and navigate to the directory you downloaded,
+ or extracted, Heimdall to.
+
+ 3. Enter the following commands to compile libpit:
+
+ cd libpit
./configure
make
- cd ..
-
- If you have problems please consult http://www.libusb.org/
-
- 4. Enter the following commands to compile libpit.
-
- cd libusb-1.0
- ./configure
- make
- cd ..
-
- NOTE: There is no need to run "sudo make install".
-
- 4. Enter the following commands to compile and install Heimdall:
-
- cd heimdall
- ./configure
- make
- sudo make install
- cd ..
-
+ cd ..
+
+ NOTE: There is no need to run "sudo make install".
+
+ 4. Enter the following commands to compile and install Heimdall:
+
+ cd heimdall
+ ./configure
+ make
+ sudo make install
+ cd ..
+
NOTE: As an alternative to "sudo make install" you may chose to generate
a package by typing the following:
sudo checkinstall --pkgversion <version>
- Where <version> is the current Heimdall release e.g. 1.3.0
-
- 5. Done
-
-
-
-Appendix C - Installing Heimdall Frontend from Source:
-
- 1. Compile and install Heimdall, see Appendix B.
-
- 2. First make sure you have installed Qt 4.7 or later, available from:
-
- http://qt.nokia.com/downloads/
-
- 3. Open a terminal and navigate to the directory you extracted Heimdall to.
-
- 4. Enter the following commands to compile and install Heimdall Frontend:
-
- cd heimdall-frontend
- qmake-qt4 heimdall-frontend.pro
- make
+ Where <version> is the current Heimdall release e.g. 1.3.0
+
+ 5. Done
+
+
+
+Appendix C - Installing Heimdall Frontend from Source:
+
+ 1. Compile and install Heimdall, see Appendix B.
+
+ 2. First make sure you have installed Qt 4.7 or later, available from:
+
+ http://qt.nokia.com/downloads/
+
+ 3. Open a terminal and navigate to the directory you extracted Heimdall to.
+
+ 4. Enter the following commands to compile and install Heimdall Frontend:
+
+ cd heimdall-frontend
+ qmake-qt4 heimdall-frontend.pro
+ make
sudo make install
-
- NOTE: As an alternative to "sudo make install" you may chose to generate
- a package by typing the following:
-
- sudo checkinstall --pkgversion <version>
-
- Where <version> is the current Heimdall release e.g. 1.3.0
-
- 5. Done
-
+
+ NOTE: As an alternative to "sudo make install" you may chose to generate
+ a package by typing the following:
+
+ sudo checkinstall --pkgversion <version>
+
+ Where <version> is the current Heimdall release e.g. 1.3.0
+
+ 5. Done
+
diff --git a/OSX/README.txt b/OSX/README.txt
index 3f27a04..47b0bf4 100644
--- a/OSX/README.txt
+++ b/OSX/README.txt
@@ -1,533 +1,545 @@
-Heimdall (c) 2010-2011 Benjamin Dobell, Glass Echidna
-http://www.glassechidna.com.au/products/heimdall/
-
-DISCLAIMER:
-
- This software attempts to flash your Galaxy S device. The very nature of
- flashing is dangerous. As with all flashing software, Heimdall has the
- potential to damage (brick) your device if not used carefully. If you're
- concerned, don't use this software. Flashing ROMs onto your phone may also
- void your warranty. Benjamin Dobell and Glass Echidna are not responsible
- for the result of your actions.
-
-
-These instructions are for OS X operating systems.
-
-
-Installing Heimdall and Heimdall Frontend Binaries:
-
- 1. Run "Heimdall Suite.pkg" and follow the instructions.
-
- 2. Reboot your system.
-
- 3. Done
-
-
-
-Flashing Heimdall Firmware Package with Heimdall Frontend:
-
- As of Heimdall Frontend 1.3 there are now two main ways to flash a ROM from
- Heimdall Frontend. The simpler and preferred option is to download a
- Heimdall Firmware Package and follow the following steps.
-
-
- 1. Fully charge your device (use the wall charger as it's faster).
-
- 2. Open the Heimdall Frontend (heimdall-frontend) application.
-
- 3. From the "Load Package" tab, under the "Heimdall Firmware Package"
- section click the "Browse" button.
-
- 4. Use the dialogue that appears to navigate to, and select, the Heimdall
- firmware package that you wish to flash.
-
- 5. You will see progress bars appear as the package is decompressed and
- extracted.
-
- When the package has finished being decompressed you should see
- information about the particular firmware package that has been
- selected.
-
- 6. Verify that your device is listed under "Supported Devices". If it's not
- then STOP immediately! DO NOT flash this firmware to your device!
- Instead search for an appropriate firmware package for your device.
-
- If you believe there is a mistake and your device is actually
- supported please get in contact with the firmware developer (not Glass
- Echidna!) and ask them to rectify the issue. If the developer provided
- a URL you may be able to contact them by pressing the "Homepage" button.
-
- 7. If you've verified your device is supported you may continue to press
- the "Load / Customise" button.
-
- 8. You should now be looking at the "Flash" tab. If not verify that you did
- in fact push the "Load / Customise" button.
-
- Generally, you won't NEED or WANT to customise a firmware package! In
- which case you can safely move on to step 9.
-
- Nonetheless, the "Flash" tab provides you with a means to customise the
- firmware package before flashing it to your device. See "Performing a
- Custom Flash with Heimdall Frontend" for more details.
-
- 9. Put your Galaxy S device into download mode and plug it in to your PC.
-
- Download mode can be accessed several different ways depending on your
- particular device model. If you're unsure how to do this please search
- online for the appropriate method.
-
- 10. Press the "Start" button.
-
- 11. Heimdall Frontend will display the progress and inform you when the
- flash is complete.
-
- If something went wrong i.e. your device wasn't detected because it
- wasn't in download mode, then the status section will let you know the
- cause of the problem.
-
-
-
-Performing a Custom Flash with Heimdall Frontend:
-
- This is the advanced means of flashing firmware to your device.
-
- If you're not an advanced user or a developer, in the event that a Heimdall
- Firmware Package doesn't exist for the particular firmware (or files) that
- you wish to flash, then I strongly recommend you get in touch with developer
- of the firmware (or files) and politely ask them to create a Heimdall
- Firmware Package for you. In doing so then you don't have to worry about
- making mistakes due to inexperience.
-
- If you're looking to customise an existing Heimdall Firmware Package then
- follow steps 1-8 of "Flashing Heimdall Firmware Package with Heimdall
- Frontend" then start from below with step 5.
-
-
- 1. Fully charge your device (use the wall charger as it's faster).
-
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
- and extract everything to the one directory.
-
- 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
- as multiple archives (nested or otherwise), extract them all to the same
- location.
-
- NOTE: If you want to use the CSC then extract it last.
-
- 3. Open the Heimdall Frontend (heimdall-frontend) application.
-
- 4. Select the "Flash" tab. From the "Flash" tab you're able to completely
- customise a flash.
-
- 5. Before you can chose which partitions you want to flash with particular
- files you MUST first select a PIT file. To do this click the "Browse"
- button in the "PIT" section. This will open a dialogue allowing you to
- navigate to and select a valid PIT (.pit) file.
-
- If you do not already have a valid PIT file stored on your computer you
- can download your device's PIT file from the "Utilities" tab.
-
- 6. If a valid PIT file has been selected then "Add" button below the
- "Partitions (Files)" list-box will become enabled. Press this button to
- add a partition to your flash.
-
- 7. When you first add a partition you will see the "Partition Name" and
- "Partition ID" be populated with information. Use the "Partition Name"
- drop down to select which partition you wish to flash. "Partition ID"
- will automatically update and is never directly editable.
-
- 8. You must then select a file to flash to the partition that you just
- specified using the "Browse" button under the "File / Partition". You
- will not be able to flash, create a firmware package or add another
- partition until you have selected a file. However, you're still able to
- press the "Remove" button if you've decided not to flash the partition
- you've just specified.
-
- 9. When you've specified a file name then you'll be able to see the updated
- information in the partition list to the right. You can select any
- partition from this list and customise it as you see fit.
-
- You can also remove a partition from the list by selecting it and
- clicking the "Remove" button. Removing a partition from the list doesn't
- remove it from your device, it simply means it will not be flashed.
-
- 10. Repeat steps 7-9 as often as needed to specify all the partions/files
- that you wish to flash.
-
- 11. Now you can chose whether you would like to repartition your device as
- well as whether you would like to prevent the device rebooting once a
- flash has been completed. These options can be enabled or disabled by
- toggling the "Repartition" and "No Reboot" check-boxes.
-
- In the general case you will only need to enable repartition if you wish
- to change the PIT file on your device. Keep in mind that repartitioning
- will wipe your device!
-
- The "No Reboot" option is rarely required. It's mostly in place so you
- can manually boot straight into recovery mode after a flash (rather than
- booting up normally).
-
- 12. If you've added at least one partition to your flash (and selected a
- file for that partition) then the "Start" button will be enabled. Press
- the "Start" button to begin the flashing process.
-
- You may notice that the "Create Package" tab becomes available at the
- whenever the "Start" button becomes available. From this tab you're able
- to create a reusable, redistributable Heimdall Firmware Package with the
- files and partitions you just selected. See "How to Create a Heimdall
- Firmware Package" for details.
-
- 13. Heimdall Frontend will display the progress and inform you when the
- flash is complete.
-
- If something went wrong i.e. your device wasn't detected because it
- wasn't in download mode, then the status section will let you know the
- cause of the problem.
-
-
-
-Flashing Firmware from Command Line:
-
- 1. Fully charge your phone (use the wall charger as it's faster).
-
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
- and extract everything to the one directory.
-
- 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
- as multiple archives (nested or otherwise), extract them all to the same
- location.
-
- NOTE: If you want to use the CSC then extract it last. If you're asked
- to overwrite files then do so.
-
- 4. Put your Galaxy S device into download mode and plug it in..
-
- 5. Open a terminal and navigate to the directory where you extracted
- the ROM/firmware files.
-
- 6. Type the following to list all the functionality Heimdall supports:
-
- heimdall help
-
- 7. Use the instructions to manually enter a command with all the files you
- want to flash.
-
- Here is an example that does a full flash and repartition on a GT-I9000:
-
- heimdall flash --repartition --pit s1_odin_20100512.pit --factoryfs factoryfs.rfs --cache cache.rfs --dbdata dbdata.rfs --primary-boot boot.bin --secondary-boot Sbl.bin --param param.lfs --kernel zImage --modem modem.bin
-
-
- 8. Heimdall will display the progress as it flashes so that you know things
- are working as they should.
-
-
-
-How to Create a Heimdall Firmware Package:
-
- Firstly, Heimdall's firmware package format is just a regular TAR archive
- compressed with gzip. The only two real requirements are that a valid
- firmware.xml must be included (refer to Appendix A) and you can only
- include files (no directories, links etc.) As such if you'd like there is
- nothing preventing you from creating Heimdall packages manually. Of course
- Heimdall Frontend provides a simple user interface that takes care of all
- the hard work for you.
-
- There are two ways in which you can create a firmware package. You can
- create a package from scratch, or you can load an existing package, apply
- modifications and then save the package. Creating a package from scratch
- is the preferred approach, by taking this approach you're far less likely
- to run into file name length limitations. These are not Heimdall's own
- limitation but rather a limitation of the TAR archive format.
-
- Before you can access Heimdall Frontend's firmware creation functionality
- (available from the "Create Package" tab) you must first specify which
- files will be included in your package, as well as a few flashing options
- i.e. Whether or not users should repartition when flashing. This
- information must be filled out from the "Flash" tab in exactly the same
- fashion you would provide information to flash your device (see "Performing
- a Custom Flash with Heimdall Frontend"). As mentioned above, it's not the
- preferred means, but you're able to load an existing package as a starting
- point for this information.
-
- Once you've specified the files/partitions you wish to include in your
- firmware package the "Create Package" tab will become available. Clicking
- this tab will display additional information that you can include in your
- package. In order to continue you must fill out all sections except for the
- URLs section, which is optional. The following is a break-down of what all
- these options mean.
-
- - General Firmware Information: -
-
- Firmware Name - This is the name of your particular firmware. An
- example would be "Cyanogenmod".
-
- Firmware Version - This is the version identifier for your package. Any
- valid string will be accepted although a the inclusion of decimal
- point version number is preferred i.e. "7.1". If it makes sense
- then feel free to append a text string like "RC1" or "Beta 1" to
- the decimal point version.
-
- Platform Name - This is the name of the platform (or operating system)
- that your firmware is based on. In most cases this will simply be
- "Android".
-
- Platform Version - This is the operating system version that your
- firmware is based on. Again decimal point version numbers are
- preferred over text, i.e. "2.3.4" is preferred over "Gingerbread".
-
-
- - Developers -
-
- URLs (Optional):
-
- Homepage - Here you can enter your personal URL or a URL particularly
- pertaining to the firmware being packaged. The URL must be well
- formed for it to work. An example of a well formed URL is
- "http://www.glassechidna.com.au/products/heimdall/". It is
- important to include "http://" in order to specify the protocol as
- other protocols such as "ftp://" are equally valid although
- unlikely to be used.
-
- Donate - Here you can enter a URL that will link users to a page to
- make donations for the effort you've put into developing your
- firmware. Once again the URL must be well formed but there is no
- requirement on how your donation page should work. For instance
- both "http://www.glassechidna.com.au/donate/" and
- "http://forum.xda-developers.com/donatetome.php?u=2710388" are
- equally valid.
-
- Developer Info:
-
- Name - Here you can enter in the name of individual team members or a
- team name. Click "Add" and the developer will be added to the list
- on the right. If you make a mistake you can select a developer from
- the list and click "Remove". You can list as many developers as you
- like however visual constraints of the "Load Package" tab means
- only a few names will be visible. Where possible you may want to
- opt for team names over listing individual team members.
-
-
- - Supported Devices -
-
- This section allows you to create a list of devices that are supported by
- your particular firmware. Although Heimdall isn't capable of enforcing this
- we strongly recommend you take this section seriously. If filled out
- correctly you could help save a number of accidental bricks!
-
- Device Info:
-
- Manufacturer - This is where you can enter the name of the manufacturer
- for a particular device. For now this will most likely be
- "Samsung".
-
- Name - This is the human readable name for a particular device.
- "Galaxy S", "Galaxy S II", "Droid Charge", "Vibrant" and
- "Galaxy S (Telstra)" are all valid names. There are a lot of
- possible variations here so be as specific as you think is
- necessary.
-
- Product Code - This is by far the most important bit of device
- information. Device names tend to be region specific and further
- subject to the whims of telecommunication companies and resellers.
- Product Codes (or product IDs) are designated by manufacturers and
- are generally the definitive means of referring to a particular
- device. Examples are "GT-I9000", "GT-I9100" and "SCH-I897". If
- you're unsure of a particular product code then both Google and
- GSMArena are your friends!
-
-
- After filling out all the necessary information the "Build" button will be
- enabled. If it's still disabled then you know you're missing some required
- information. In particular you must specify at least one developer and at
- least one supported device. Pressing the "Build" button will bring up a
- save dialogue where you must chose a file name for your particular package.
- Don't worry about specifying the ".tar.gz" extension Heimdall Frontend will
- take care of this automatically.
-
- Once you've chosen a file name Heimdall Frontend will begin the process of
- building the firmware package. In doing so a valid firmware.xml file will
- be generated from the information entered. All files will be archived in a
- single TAR file then the TAR archive will be compressed via gzip
- compression. Compression will take a little while but you will see progress
- bars so you know the application hasn't hung. When the progress bars
- disappear you're finished making your package.
-
- Congratulations! You're now ready to redistribute your firmware package
- online or by any means you see fit.
-
-
-
-Appendix A - firmware.xml
-
-The following details a part of the Heimdall Firmware Package format. This
-is only relevant to developers or advanced users who wish to create Heimdall
-Firmware Packages outside of Heimdall Frontend or in some way integrate support
-for the format in their own software.
-
-
-All Heimdall Firmware Packages must contain a file called firmware.xml. This
-file stores flash information and meta-data for the package as well as
-information about other files contained within the package.
-
-The format is fairly straight-forward so it won't be explained in great detail.
-Nonetheless the following is an example of a valid firmware.xml file.
-
-<?xml version="1.0" encoding="UTF-8"?>
-<firmware version="1">
- <name>Test Firmware</name>
- <version>1.1</version>
- <platform>
- <name>Android</name>
- <version>2.3.4</version>
- </platform>
- <developers>
- <name>Benjamin Dobell</name>
- <name>Hedonism Bot</name>
- </developers>
- <url>http://www.glassechidna.com.au/</url>
- <donateurl>http://www.glassechidna.com.au/donate/</donateurl>
- <devices>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000</product>
- <name>Galaxy S</name>
- </device>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000T</product>
- <name>Galaxy S (Telstra)</name>
- </device>
- <device>
- <manufacturer>Samsung</manufacturer>
- <product>GT-I9000M</product>
- <name>Vibrant</name>
- </device>
- </devices>
- <pit>Nl3276-I9000 s1_odin_20100512.pit</pit>
- <repartition>0</repartition>
- <noreboot>0</noreboot>
- <files>
- <file>
- <id>0</id>
- <filename>gq3276-boot.bin</filename>
- </file>
- <file>
- <id>24</id>
- <filename>Uh3276-cache.rfs</filename>
- </file>
- <file>
- <id>22</id>
- <filename>em3276-factoryfs.rfs</filename>
- </file>
- <file>
- <id>11</id>
- <filename>fl3276-modem.bin</filename>
- </file>
- <file>
- <id>21</id>
- <filename>Xd3276-param.lfs</filename>
- </file>
- <file>
- <id>3</id>
- <filename>if3276-Sbl.bin</filename>
- </file>
- <file>
- <id>6</id>
- <filename>cr3276-zImage</filename>
- </file>
- </files>
-</firmware>
-
-
-New lines need not be included and the order in which elements are specified
-does not need to match that of the above example.
-
-One and only one <firmware> element must be included. The <firmware> element
-must also have a version attribute specified. The version must be parsable as
-an integer and indicates what version of the Heimdall Firmware Package
-specification the package adheres to.
-
-All data is stored as strings, however a <file>'s <id> element must be parsable
-as an integer. The <id> value represents the partition ID (according to the
-specified PIT file) that the file should be flashed to.
-
-A <firmware>'s <repartition> and <noreboot> elements must also be parsable as
-an integer. However, as they represent boolean values, a value of zero ("0")
-means false (or disabled) where as a non-zero value (typically "1") means true
-(or enabled).
-
-File names are specified relative to the TAR archive in which firmware.xml and
-all other files are to be stored. Heimdall Firmware Packages do not support
-directories or links, as such file names should only be a name and not a path.
-
-<url> and <donateurl> are the only optional elements, all other elements must
-be included.
-
-
-
-Appendix B - Installing Heimdall from Source:
-
- 1. First make sure you have installed XCode and pkgconfig.
-
- NOTE: There are several different ways you can install pkgconfig, one
- option is to use Macports (http://www.macports.org/).
-
- 2. Open a terminal and navigate to the directory you downloaded,
- or extracted, Heimdall to.
-
- 3. Download, compile and install libusb-1.0:
-
+Heimdall (c) 2010-2013 Benjamin Dobell, Glass Echidna
+http://www.glassechidna.com.au/products/heimdall/
+
+DISCLAIMER:
+
+ This software attempts to flash your Galaxy S device. The very nature of
+ flashing is dangerous. As with all flashing software, Heimdall has the
+ potential to damage (brick) your device if not used carefully. If you're
+ concerned, don't use this software. Flashing ROMs onto your phone may also
+ void your warranty. Benjamin Dobell and Glass Echidna are not responsible
+ for the result of your actions.
+
+
+These instructions are for OS X operating systems.
+
+
+Installing Heimdall and Heimdall Frontend Binaries:
+
+ 1. Run "Heimdall Suite.pkg" and follow the instructions.
+
+ 2. Reboot your system.
+
+ 3. Done
+
+
+
+Flashing Heimdall Firmware Package with Heimdall Frontend:
+
+ As of Heimdall Frontend 1.3 there are now two main ways to flash a ROM from
+ Heimdall Frontend. The simpler and preferred option is to download a
+ Heimdall Firmware Package and follow the following steps.
+
+
+ 1. Fully charge your device (use the wall charger as it's faster).
+
+ 2. Open the Heimdall Frontend (heimdall-frontend) application.
+
+ 3. From the "Load Package" tab, under the "Heimdall Firmware Package"
+ section click the "Browse" button.
+
+ 4. Use the dialogue that appears to navigate to, and select, the Heimdall
+ firmware package that you wish to flash.
+
+ 5. You will see progress bars appear as the package is decompressed and
+ extracted.
+
+ When the package has finished being decompressed you should see
+ information about the particular firmware package that has been
+ selected.
+
+ 6. Verify that your device is listed under "Supported Devices". If it's not
+ then STOP immediately! DO NOT flash this firmware to your device!
+ Instead search for an appropriate firmware package for your device.
+
+ If you believe there is a mistake and your device is actually
+ supported please get in contact with the firmware developer (not Glass
+ Echidna!) and ask them to rectify the issue. If the developer provided
+ a URL you may be able to contact them by pressing the "Homepage" button.
+
+ 7. If you've verified your device is supported you may continue to press
+ the "Load / Customise" button.
+
+ 8. You should now be looking at the "Flash" tab. If not verify that you did
+ in fact push the "Load / Customise" button.
+
+ Generally, you won't NEED or WANT to customise a firmware package! In
+ which case you can safely move on to step 9.
+
+ Nonetheless, the "Flash" tab provides you with a means to customise the
+ firmware package before flashing it to your device. See "Performing a
+ Custom Flash with Heimdall Frontend" for more details.
+
+ 9. Put your Galaxy S device into download mode and plug it in to your PC.
+
+ Download mode can be accessed several different ways depending on your
+ particular device model. If you're unsure how to do this please search
+ online for the appropriate method.
+
+ 10. Press the "Start" button.
+
+ 11. Heimdall Frontend will display the progress and inform you when the
+ flash is complete.
+
+ If something went wrong i.e. your device wasn't detected because it
+ wasn't in download mode, then the status section will let you know the
+ cause of the problem.
+
+
+
+Performing a Custom Flash with Heimdall Frontend:
+
+ This is the advanced means of flashing firmware to your device.
+
+ If you're not an advanced user or a developer, in the event that a Heimdall
+ Firmware Package doesn't exist for the particular firmware (or files) that
+ you wish to flash, then I strongly recommend you get in touch with developer
+ of the firmware (or files) and politely ask them to create a Heimdall
+ Firmware Package for you. In doing so then you don't have to worry about
+ making mistakes due to inexperience.
+
+ If you're looking to customise an existing Heimdall Firmware Package then
+ follow steps 1-8 of "Flashing Heimdall Firmware Package with Heimdall
+ Frontend" then start from below with step 5.
+
+
+ 1. Fully charge your device (use the wall charger as it's faster).
+
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
+ and extract everything to the one directory.
+
+ 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
+ as multiple archives (nested or otherwise), extract them all to the same
+ location.
+
+ NOTE: If you want to use the CSC then extract it last.
+
+ 3. Open the Heimdall Frontend (heimdall-frontend) application.
+
+ 4. Select the "Flash" tab. From the "Flash" tab you're able to completely
+ customise a flash.
+
+ 5. Before you can chose which partitions you want to flash with particular
+ files you MUST first select a PIT file. To do this click the "Browse"
+ button in the "PIT" section. This will open a dialogue allowing you to
+ navigate to and select a valid PIT (.pit) file.
+
+ If you do not already have a valid PIT file stored on your computer you
+ can download your device's PIT file from the "Utilities" tab.
+
+ 6. If a valid PIT file has been selected then "Add" button below the
+ "Partitions (Files)" list-box will become enabled. Press this button to
+ add a partition to your flash.
+
+ 7. When you first add a partition you will see the "Partition Name" and
+ "Partition ID" be populated with information. Use the "Partition Name"
+ drop down to select which partition you wish to flash. "Partition ID"
+ will automatically update and is never directly editable.
+
+ 8. You must then select a file to flash to the partition that you just
+ specified using the "Browse" button under the "File / Partition". You
+ will not be able to flash, create a firmware package or add another
+ partition until you have selected a file. However, you're still able to
+ press the "Remove" button if you've decided not to flash the partition
+ you've just specified.
+
+ 9. When you've specified a file name then you'll be able to see the updated
+ information in the partition list to the right. You can select any
+ partition from this list and customise it as you see fit.
+
+ You can also remove a partition from the list by selecting it and
+ clicking the "Remove" button. Removing a partition from the list doesn't
+ remove it from your device, it simply means it will not be flashed.
+
+ 10. Repeat steps 7-9 as often as needed to specify all the partions/files
+ that you wish to flash.
+
+ 11. Now you can chose whether you would like to repartition your device as
+ well as whether you would like to prevent the device rebooting once a
+ flash has been completed. These options can be enabled or disabled by
+ toggling the "Repartition" and "No Reboot" check-boxes.
+
+ In the general case you will only need to enable repartition if you wish
+ to change the PIT file on your device. Keep in mind that repartitioning
+ will wipe your device!
+
+ The "No Reboot" option is rarely required. It's mostly in place so you
+ can manually boot straight into recovery mode after a flash (rather than
+ booting up normally).
+
+ 12. If you've added at least one partition to your flash (and selected a
+ file for that partition) then the "Start" button will be enabled. Press
+ the "Start" button to begin the flashing process.
+
+ You may notice that the "Create Package" tab becomes available at the
+ whenever the "Start" button becomes available. From this tab you're able
+ to create a reusable, redistributable Heimdall Firmware Package with the
+ files and partitions you just selected. See "How to Create a Heimdall
+ Firmware Package" for details.
+
+ 13. Heimdall Frontend will display the progress and inform you when the
+ flash is complete.
+
+ If something went wrong i.e. your device wasn't detected because it
+ wasn't in download mode, then the status section will let you know the
+ cause of the problem.
+
+
+
+Flashing Firmware from Command Line:
+
+ 1. Fully charge your phone (use the wall charger as it's faster).
+
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
+ and extract everything to the one directory.
+
+ 3. If the ROM is not a Heimdall Firmware Package it may instead be provided
+ as multiple archives (nested or otherwise), extract them all to the same
+ location.
+
+ NOTE: If you want to use the CSC then extract it last. If you're asked
+ to overwrite files then do so.
+
+ 4. Put your Galaxy S device into download mode and plug it in..
+
+ 5. Open a terminal and navigate to the directory where you extracted
+ the ROM/firmware files.
+
+ 6. Type the following to list all the functionality Heimdall supports:
+
+ heimdall help
+
+ 7. Before flashing, you must first know the names of the partitions you
+ wish to flash. These can be obtained by executing:
+
+ heimdall print-pit --no-reboot
+
+ The inclusion of --no-reboot ensures the phone will not reboot after PIT
+ file has been downloaded and displayed. After executing a command with
+ the --no-reboot argument, the next command should include the --resume
+ argument.
+
+ NOTE: You can still safely reboot your phone manually (with the power
+ button) after executing --no-reboot commands.
+
+ 8. Use the help and print-pit output to construct a command with all the
+ file you want to flash.
+
+ Here is an example that does a full flash and repartition on a GT-I9000:
+
+ heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin
+
+ 9. Heimdall will display the progress as it flashes so that you know things
+ are working as they should.
+
+
+
+How to Create a Heimdall Firmware Package:
+
+ Firstly, Heimdall's firmware package format is just a regular TAR archive
+ compressed with gzip. The only two real requirements are that a valid
+ firmware.xml must be included (refer to Appendix A) and you can only
+ include files (no directories, links etc.) As such if you'd like there is
+ nothing preventing you from creating Heimdall packages manually. Of course
+ Heimdall Frontend provides a simple user interface that takes care of all
+ the hard work for you.
+
+ There are two ways in which you can create a firmware package. You can
+ create a package from scratch, or you can load an existing package, apply
+ modifications and then save the package. Creating a package from scratch
+ is the preferred approach, by taking this approach you're far less likely
+ to run into file name length limitations. These are not Heimdall's own
+ limitation but rather a limitation of the TAR archive format.
+
+ Before you can access Heimdall Frontend's firmware creation functionality
+ (available from the "Create Package" tab) you must first specify which
+ files will be included in your package, as well as a few flashing options
+ i.e. Whether or not users should repartition when flashing. This
+ information must be filled out from the "Flash" tab in exactly the same
+ fashion you would provide information to flash your device (see "Performing
+ a Custom Flash with Heimdall Frontend"). As mentioned above, it's not the
+ preferred means, but you're able to load an existing package as a starting
+ point for this information.
+
+ Once you've specified the files/partitions you wish to include in your
+ firmware package the "Create Package" tab will become available. Clicking
+ this tab will display additional information that you can include in your
+ package. In order to continue you must fill out all sections except for the
+ URLs section, which is optional. The following is a break-down of what all
+ these options mean.
+
+ - General Firmware Information: -
+
+ Firmware Name - This is the name of your particular firmware. An
+ example would be "Cyanogenmod".
+
+ Firmware Version - This is the version identifier for your package. Any
+ valid string will be accepted although a the inclusion of decimal
+ point version number is preferred i.e. "7.1". If it makes sense
+ then feel free to append a text string like "RC1" or "Beta 1" to
+ the decimal point version.
+
+ Platform Name - This is the name of the platform (or operating system)
+ that your firmware is based on. In most cases this will simply be
+ "Android".
+
+ Platform Version - This is the operating system version that your
+ firmware is based on. Again decimal point version numbers are
+ preferred over text, i.e. "2.3.4" is preferred over "Gingerbread".
+
+
+ - Developers -
+
+ URLs (Optional):
+
+ Homepage - Here you can enter your personal URL or a URL particularly
+ pertaining to the firmware being packaged. The URL must be well
+ formed for it to work. An example of a well formed URL is
+ "http://www.glassechidna.com.au/products/heimdall/". It is
+ important to include "http://" in order to specify the protocol as
+ other protocols such as "ftp://" are equally valid although
+ unlikely to be used.
+
+ Donate - Here you can enter a URL that will link users to a page to
+ make donations for the effort you've put into developing your
+ firmware. Once again the URL must be well formed but there is no
+ requirement on how your donation page should work. For instance
+ both "http://www.glassechidna.com.au/donate/" and
+ "http://forum.xda-developers.com/donatetome.php?u=2710388" are
+ equally valid.
+
+ Developer Info:
+
+ Name - Here you can enter in the name of individual team members or a
+ team name. Click "Add" and the developer will be added to the list
+ on the right. If you make a mistake you can select a developer from
+ the list and click "Remove". You can list as many developers as you
+ like however visual constraints of the "Load Package" tab means
+ only a few names will be visible. Where possible you may want to
+ opt for team names over listing individual team members.
+
+
+ - Supported Devices -
+
+ This section allows you to create a list of devices that are supported by
+ your particular firmware. Although Heimdall isn't capable of enforcing this
+ we strongly recommend you take this section seriously. If filled out
+ correctly you could help save a number of accidental bricks!
+
+ Device Info:
+
+ Manufacturer - This is where you can enter the name of the manufacturer
+ for a particular device. For now this will most likely be
+ "Samsung".
+
+ Name - This is the human readable name for a particular device.
+ "Galaxy S", "Galaxy S II", "Droid Charge", "Vibrant" and
+ "Galaxy S (Telstra)" are all valid names. There are a lot of
+ possible variations here so be as specific as you think is
+ necessary.
+
+ Product Code - This is by far the most important bit of device
+ information. Device names tend to be region specific and further
+ subject to the whims of telecommunication companies and resellers.
+ Product Codes (or product IDs) are designated by manufacturers and
+ are generally the definitive means of referring to a particular
+ device. Examples are "GT-I9000", "GT-I9100" and "SCH-I897". If
+ you're unsure of a particular product code then both Google and
+ GSMArena are your friends!
+
+
+ After filling out all the necessary information the "Build" button will be
+ enabled. If it's still disabled then you know you're missing some required
+ information. In particular you must specify at least one developer and at
+ least one supported device. Pressing the "Build" button will bring up a
+ save dialogue where you must chose a file name for your particular package.
+ Don't worry about specifying the ".tar.gz" extension Heimdall Frontend will
+ take care of this automatically.
+
+ Once you've chosen a file name Heimdall Frontend will begin the process of
+ building the firmware package. In doing so a valid firmware.xml file will
+ be generated from the information entered. All files will be archived in a
+ single TAR file then the TAR archive will be compressed via gzip
+ compression. Compression will take a little while but you will see progress
+ bars so you know the application hasn't hung. When the progress bars
+ disappear you're finished making your package.
+
+ Congratulations! You're now ready to redistribute your firmware package
+ online or by any means you see fit.
+
+
+
+Appendix A - firmware.xml
+
+The following details a part of the Heimdall Firmware Package format. This
+is only relevant to developers or advanced users who wish to create Heimdall
+Firmware Packages outside of Heimdall Frontend or in some way integrate support
+for the format in their own software.
+
+
+All Heimdall Firmware Packages must contain a file called firmware.xml. This
+file stores flash information and meta-data for the package as well as
+information about other files contained within the package.
+
+The format is fairly straight-forward so it won't be explained in great detail.
+Nonetheless the following is an example of a valid firmware.xml file.
+
+<?xml version="1.0" encoding="UTF-8"?>
+<firmware version="1">
+ <name>Test Firmware</name>
+ <version>1.1</version>
+ <platform>
+ <name>Android</name>
+ <version>2.3.4</version>
+ </platform>
+ <developers>
+ <name>Benjamin Dobell</name>
+ <name>Hedonism Bot</name>
+ </developers>
+ <url>http://www.glassechidna.com.au/</url>
+ <donateurl>http://www.glassechidna.com.au/donate/</donateurl>
+ <devices>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000</product>
+ <name>Galaxy S</name>
+ </device>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000T</product>
+ <name>Galaxy S (Telstra)</name>
+ </device>
+ <device>
+ <manufacturer>Samsung</manufacturer>
+ <product>GT-I9000M</product>
+ <name>Vibrant</name>
+ </device>
+ </devices>
+ <pit>Nl3276-I9000 s1_odin_20100512.pit</pit>
+ <repartition>0</repartition>
+ <noreboot>0</noreboot>
+ <files>
+ <file>
+ <id>0</id>
+ <filename>gq3276-boot.bin</filename>
+ </file>
+ <file>
+ <id>24</id>
+ <filename>Uh3276-cache.rfs</filename>
+ </file>
+ <file>
+ <id>22</id>
+ <filename>em3276-factoryfs.rfs</filename>
+ </file>
+ <file>
+ <id>11</id>
+ <filename>fl3276-modem.bin</filename>
+ </file>
+ <file>
+ <id>21</id>
+ <filename>Xd3276-param.lfs</filename>
+ </file>
+ <file>
+ <id>3</id>
+ <filename>if3276-Sbl.bin</filename>
+ </file>
+ <file>
+ <id>6</id>
+ <filename>cr3276-zImage</filename>
+ </file>
+ </files>
+</firmware>
+
+
+New lines need not be included and the order in which elements are specified
+does not need to match that of the above example.
+
+One and only one <firmware> element must be included. The <firmware> element
+must also have a version attribute specified. The version must be parsable as
+an integer and indicates what version of the Heimdall Firmware Package
+specification the package adheres to.
+
+All data is stored as strings, however a <file>'s <id> element must be parsable
+as an integer. The <id> value represents the partition ID (according to the
+specified PIT file) that the file should be flashed to.
+
+A <firmware>'s <repartition> and <noreboot> elements must also be parsable as
+an integer. However, as they represent boolean values, a value of zero ("0")
+means false (or disabled) where as a non-zero value (typically "1") means true
+(or enabled).
+
+File names are specified relative to the TAR archive in which firmware.xml and
+all other files are to be stored. Heimdall Firmware Packages do not support
+directories or links, as such file names should only be a name and not a path.
+
+<url> and <donateurl> are the only optional elements, all other elements must
+be included.
+
+
+
+Appendix B - Installing Heimdall from Source:
+
+ 1. First make sure you have installed XCode and pkgconfig.
+
+ NOTE: There are several different ways you can install pkgconfig, one
+ option is to use Macports (http://www.macports.org/).
+
+ 2. Open a terminal and navigate to the directory you downloaded,
+ or extracted, Heimdall to.
+
+ 3. Download, compile and install libusb-1.0:
+
http://www.libusb.org/
- NOTE: Alternatively you may install Macport's libusb-devel package.
-
- 4. Enter the following commands to compile libpit.
-
- cd libpit
- ./configure
- make
- cd ..
-
- NOTE: There is no need to run "sudo make install".
-
- 4. Enter the following commands to compile and install Heimdall:
-
- cd heimdall
- ./configure
- make
- sudo make install
- cd ..
-
- 5. If you haven't installed the driver before, enter the following:
-
- cd OSX
- sudo ./install-kext.sh
-
- 6. Done
-
-
-
-Appendix C - Installing Heimdall Frontend from Source:
-
- 1. Compile and install Heimdall, see Appendix B.
-
- 2. First make sure you have installed XCode from your OS X install DVD.
- You'll also need Qt 4.7 or later, available from:
-
- http://qt.nokia.com/downloads/
-
- 3. Open a terminal and navigate to the directory you extracted Heimdall to.
-
- 4. Enter the following commands to compile and install Heimdall Frontend:
-
- cd heimdall-frontend
- qmake heimdall-frontend.pro
-
- 5. Open Finder and navigate to the heimdall-frontend sub-directory. Open
- the newly created XCode project.
-
- 6. From the menu bar select Build -> Build. This outputs heimdall-frontend
- to /Applications
-
- 7. Done
-
+ NOTE: Alternatively you may install Macport's libusb-devel package.
+
+ 4. Enter the following commands to compile libpit.
+
+ cd libpit
+ ./configure
+ make
+ cd ..
+
+ NOTE: There is no need to run "sudo make install".
+
+ 4. Enter the following commands to compile and install Heimdall:
+
+ cd heimdall
+ ./configure
+ make
+ sudo make install
+ cd ..
+
+ 5. If you haven't installed the driver before, enter the following:
+
+ cd OSX
+ sudo ./install-kext.sh
+
+ 6. Done
+
+
+
+Appendix C - Installing Heimdall Frontend from Source:
+
+ 1. Compile and install Heimdall, see Appendix B.
+
+ 2. First make sure you have installed XCode from your OS X install DVD.
+ You'll also need Qt 4.7 or later, available from:
+
+ http://qt.nokia.com/downloads/
+
+ 3. Open a terminal and navigate to the directory you extracted Heimdall to.
+
+ 4. Enter the following commands to compile and install Heimdall Frontend:
+
+ cd heimdall-frontend
+ qmake heimdall-frontend.pro
+
+ 5. Open Finder and navigate to the heimdall-frontend sub-directory. Open
+ the newly created XCode project.
+
+ 6. From the menu bar select Build -> Build. This outputs heimdall-frontend
+ to /Applications
+
+ 7. Done
+
diff --git a/Win32/README.txt b/Win32/README.txt
index ee4063a..6480258 100644
--- a/Win32/README.txt
+++ b/Win32/README.txt
@@ -1,4 +1,4 @@
-Heimdall (c) 2010-2011 Benjamin Dobell, Glass Echidna
+Heimdall (c) 2010-2013 Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au/products/heimdall/
DISCLAIMER:
@@ -32,7 +32,7 @@ Troubleshooting:
Driver Installation Instructions:
- 1. Put your Samsung Galaxy S into download mode and plug it in.
+ 1. Put your device into download mode and plug it in.
2. Run zadig.exe included in the Drivers subdirectory.
@@ -50,7 +50,7 @@ Driver Installation Instructions:
Driver Uninstallation Instructions:
- 1. Put your Samsung Galaxy S into download mode by holding Volume Down + Home + Power.
+ 1. Put your device into download mode by holding Volume Down + Home + Power.
2. Plug your phone into your PC.
@@ -151,7 +151,7 @@ Performing a Custom Flash with Heimdall Frontend:
1. Fully charge your device (use the wall charger as it's faster).
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
and extract everything to the one directory.
3. If the ROM is not a Heimdall Firmware Package it may instead be provided
@@ -236,7 +236,7 @@ Flashing Firmware from Command Line:
1. Fully charge your phone (use the wall charger as it's faster).
- 2. Download a decrypted Samsung Galaxy S ROM or a Heimdall Firmware Package
+ 2. Download a decrypted device ROM or a Heimdall Firmware Package
and extract everything to the one directory.
3. If the ROM is not a Heimdall Firmware Package it may instead be provided
@@ -258,17 +258,30 @@ Flashing Firmware from Command Line:
heimdall help
- 7. Use the instructions to manually enter a command with all the files you
- want to flash.
+ 7. Before flashing, you must first know the names of the partitions you
+ wish to flash. These can be obtained by executing:
+
+ heimdall print-pit --no-reboot
+
+ The inclusion of --no-reboot ensures the phone will not reboot after PIT
+ file has been downloaded and displayed. After executing a command with
+ the --no-reboot argument, the next command should include the --resume
+ argument.
+
+ NOTE: You can still safely reboot your phone manually (with the power
+ button) after executing --no-reboot commands.
+
+ 8. Use the help and print-pit output to construct a command with all the
+ file you want to flash.
Here is an example that does a full flash and repartition on a GT-I9000:
- heimdall flash --repartition --pit s1_odin_20100512.pit --factoryfs factoryfs.rfs --cache cache.rfs --dbdata dbdata.rfs --primary-boot boot.bin --secondary-boot Sbl.bin --param param.lfs --kernel zImage --modem modem.bin
+ heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin
NOTE: The above command assumes the files specified are installed in the
same directory as Heimdall.
- 8. Heimdall will display the progress as it flashes so that you know things
+ 9. Heimdall will display the progress as it flashes so that you know things
are working as they should.
diff --git a/heimdall-frontend/Source/Alerts.cpp b/heimdall-frontend/Source/Alerts.cpp
index f0b2caa..f3bda78 100644
--- a/heimdall-frontend/Source/Alerts.cpp
+++ b/heimdall-frontend/Source/Alerts.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/Alerts.h b/heimdall-frontend/Source/Alerts.h
index 7094a53..6e76239 100644
--- a/heimdall-frontend/Source/Alerts.h
+++ b/heimdall-frontend/Source/Alerts.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/FirmwareInfo.cpp b/heimdall-frontend/Source/FirmwareInfo.cpp
index e11a002..a32ddea 100644
--- a/heimdall-frontend/Source/FirmwareInfo.cpp
+++ b/heimdall-frontend/Source/FirmwareInfo.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/FirmwareInfo.h b/heimdall-frontend/Source/FirmwareInfo.h
index c9f9fbd..8f05ab4 100644
--- a/heimdall-frontend/Source/FirmwareInfo.h
+++ b/heimdall-frontend/Source/FirmwareInfo.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/PackageData.cpp b/heimdall-frontend/Source/PackageData.cpp
index e5ed75f..5bd78aa 100644
--- a/heimdall-frontend/Source/PackageData.cpp
+++ b/heimdall-frontend/Source/PackageData.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/PackageData.h b/heimdall-frontend/Source/PackageData.h
index 9e04fea..1103815 100644
--- a/heimdall-frontend/Source/PackageData.h
+++ b/heimdall-frontend/Source/PackageData.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/Packaging.cpp b/heimdall-frontend/Source/Packaging.cpp
index c4d3a51..dfdfe38 100644
--- a/heimdall-frontend/Source/Packaging.cpp
+++ b/heimdall-frontend/Source/Packaging.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/Packaging.h b/heimdall-frontend/Source/Packaging.h
index 4cead82..c8ea07a 100644
--- a/heimdall-frontend/Source/Packaging.h
+++ b/heimdall-frontend/Source/Packaging.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/aboutform.cpp b/heimdall-frontend/Source/aboutform.cpp
index 9bb975a..3547dcc 100644
--- a/heimdall-frontend/Source/aboutform.cpp
+++ b/heimdall-frontend/Source/aboutform.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/aboutform.h b/heimdall-frontend/Source/aboutform.h
index 6223e3b..3fe3ece 100644
--- a/heimdall-frontend/Source/aboutform.h
+++ b/heimdall-frontend/Source/aboutform.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/main.cpp b/heimdall-frontend/Source/main.cpp
index ce76059..6d49ba8 100644
--- a/heimdall-frontend/Source/main.cpp
+++ b/heimdall-frontend/Source/main.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/mainwindow.cpp b/heimdall-frontend/Source/mainwindow.cpp
index 6949e0c..02d7a62 100644
--- a/heimdall-frontend/Source/mainwindow.cpp
+++ b/heimdall-frontend/Source/mainwindow.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/Source/mainwindow.h b/heimdall-frontend/Source/mainwindow.h
index f7a67e4..6aa9519 100644
--- a/heimdall-frontend/Source/mainwindow.h
+++ b/heimdall-frontend/Source/mainwindow.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall-frontend/aboutform.ui b/heimdall-frontend/aboutform.ui
index ef1b947..b7f00f3 100644
--- a/heimdall-frontend/aboutform.ui
+++ b/heimdall-frontend/aboutform.ui
@@ -72,7 +72,7 @@
<property name="geometry">
<rect>
<x>0</x>
- <y>0</y>
+ <y>-701</y>
<width>542</width>
<height>1140</height>
</rect>
@@ -114,11 +114,11 @@
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:10pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Heimdall Frontend&lt;/span&gt;&lt;/p&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Version 1.4 RC3&lt;/p&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Copyright © 2010-2012 Benjamin Dobell, Glass Echidna&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Version 1.4.0&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Copyright © 2010-2013 Benjamin Dobell, Glass Echidna&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Heimdall (command line)&lt;/span&gt;&lt;/p&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;%HEIMDALL-VERSION%Copyright © 2010-2012 Benjamin Dobell, Glass Echidna&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;%HEIMDALL-VERSION%Copyright © 2010-2013 Benjamin Dobell, Glass Echidna&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="textFormat">
@@ -411,10 +411,10 @@ p, li { white-space: pre-wrap; }
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
-&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Lucida Grande'; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MS Shell Dlg 2'; font-size:10pt; font-weight:600;&quot;&gt;Heimdall (command line) utilises libusb-1.0 for all USB communication:&lt;/span&gt;&lt;/p&gt;
-&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'MS Shell Dlg 2'; font-size:10pt;&quot;&gt;&lt;/p&gt;
-&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'MS Shell Dlg 2'; font-size:10pt;&quot;&gt;libusb-1.0 is licensed under the &lt;/span&gt;&lt;a href=&quot;http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html&quot;&gt;&lt;span style=&quot; font-family:'MS Shell Dlg 2'; font-size:10pt; text-decoration: underline; color:#0000ff;&quot;&gt;Lesser General Public License v2.1.&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:10pt; font-weight:600;&quot;&gt;Heimdall (command line) utilises libusbx for all USB communication:&lt;/span&gt;&lt;/p&gt;
+&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:10pt;&quot;&gt;&lt;/p&gt;
+&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:10pt;&quot;&gt;libusbx is licensed under the &lt;/span&gt;&lt;a href=&quot;http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html&quot;&gt;&lt;span style=&quot; font-size:10pt; text-decoration: underline; color:#0000ff;&quot;&gt;Lesser General Public License v2.1.&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="textFormat">
<enum>Qt::RichText</enum>
diff --git a/heimdall/source/Arguments.cpp b/heimdall/source/Arguments.cpp
index 9a40540..a37572d 100644
--- a/heimdall/source/Arguments.cpp
+++ b/heimdall/source/Arguments.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Arguments.h b/heimdall/source/Arguments.h
index cc33196..72aa036 100644
--- a/heimdall/source/Arguments.h
+++ b/heimdall/source/Arguments.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/BeginDumpPacket.h b/heimdall/source/BeginDumpPacket.h
index ba406cb..9561aa3 100644
--- a/heimdall/source/BeginDumpPacket.h
+++ b/heimdall/source/BeginDumpPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/BeginSessionPacket.h b/heimdall/source/BeginSessionPacket.h
index d0f9c05..c688504 100644
--- a/heimdall/source/BeginSessionPacket.h
+++ b/heimdall/source/BeginSessionPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/BridgeManager.cpp b/heimdall/source/BridgeManager.cpp
index 5e23560..ed12b87 100644
--- a/heimdall/source/BridgeManager.cpp
+++ b/heimdall/source/BridgeManager.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/BridgeManager.h b/heimdall/source/BridgeManager.h
index 4f3660d..e67c679 100644
--- a/heimdall/source/BridgeManager.h
+++ b/heimdall/source/BridgeManager.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/ClosePcScreenAction.cpp b/heimdall/source/ClosePcScreenAction.cpp
index 1c53ffe..2bc1b61 100644
--- a/heimdall/source/ClosePcScreenAction.cpp
+++ b/heimdall/source/ClosePcScreenAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -31,7 +31,7 @@ using namespace Heimdall;
const char *ClosePcScreenAction::usage = "Action: close-pc-screen\n\
Arguments: [--verbose] [--no-reboot] [--stdout-errors] [--delay <ms>]\n\
[--usb-log-level <none/error/warning/debug>]\n\
-Description: Attempts to get rid off the \"connect phone to PC\" screen.\n"; // TODO: usb-log-level
+Description: Attempts to get rid off the \"connect phone to PC\" screen.\n";
int ClosePcScreenAction::Execute(int argc, char **argv)
{
diff --git a/heimdall/source/ClosePcScreenAction.h b/heimdall/source/ClosePcScreenAction.h
index e4470a2..6f167ca 100644
--- a/heimdall/source/ClosePcScreenAction.h
+++ b/heimdall/source/ClosePcScreenAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/ControlPacket.h b/heimdall/source/ControlPacket.h
index 7f46d7d..99169b7 100644
--- a/heimdall/source/ControlPacket.h
+++ b/heimdall/source/ControlPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DetectAction.cpp b/heimdall/source/DetectAction.cpp
index c5b4eb6..13d8ea1 100644
--- a/heimdall/source/DetectAction.cpp
+++ b/heimdall/source/DetectAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DetectAction.h b/heimdall/source/DetectAction.h
index 374306b..d71d396 100644
--- a/heimdall/source/DetectAction.h
+++ b/heimdall/source/DetectAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DeviceTypePacket.h b/heimdall/source/DeviceTypePacket.h
index 72dbfc6..6721bc6 100644
--- a/heimdall/source/DeviceTypePacket.h
+++ b/heimdall/source/DeviceTypePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DownloadPitAction.cpp b/heimdall/source/DownloadPitAction.cpp
index 744ba56..abebfae 100644
--- a/heimdall/source/DownloadPitAction.cpp
+++ b/heimdall/source/DownloadPitAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DownloadPitAction.h b/heimdall/source/DownloadPitAction.h
index 7ccc0bd..b9bfd2d 100644
--- a/heimdall/source/DownloadPitAction.h
+++ b/heimdall/source/DownloadPitAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DumpPartFileTransferPacket.h b/heimdall/source/DumpPartFileTransferPacket.h
index 227526d..229927d 100644
--- a/heimdall/source/DumpPartFileTransferPacket.h
+++ b/heimdall/source/DumpPartFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DumpPartPitFilePacket.h b/heimdall/source/DumpPartPitFilePacket.h
index 3241345..343c339 100644
--- a/heimdall/source/DumpPartPitFilePacket.h
+++ b/heimdall/source/DumpPartPitFilePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/DumpResponse.h b/heimdall/source/DumpResponse.h
index 5c14ab5..060dfc3 100644
--- a/heimdall/source/DumpResponse.h
+++ b/heimdall/source/DumpResponse.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/EndFileTransferPacket.h b/heimdall/source/EndFileTransferPacket.h
index 1b4f93c..7e78899 100644
--- a/heimdall/source/EndFileTransferPacket.h
+++ b/heimdall/source/EndFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/EndModemFileTransferPacket.h b/heimdall/source/EndModemFileTransferPacket.h
index 4a72a04..2a42880 100644
--- a/heimdall/source/EndModemFileTransferPacket.h
+++ b/heimdall/source/EndModemFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/EndPhoneFileTransferPacket.h b/heimdall/source/EndPhoneFileTransferPacket.h
index dc0f04e..803ce73 100644
--- a/heimdall/source/EndPhoneFileTransferPacket.h
+++ b/heimdall/source/EndPhoneFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/EndPitFileTransferPacket.h b/heimdall/source/EndPitFileTransferPacket.h
index 8f69df7..9dddcb0 100644
--- a/heimdall/source/EndPitFileTransferPacket.h
+++ b/heimdall/source/EndPitFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/EndSessionPacket.h b/heimdall/source/EndSessionPacket.h
index 3795cd7..5ac2c5a 100644
--- a/heimdall/source/EndSessionPacket.h
+++ b/heimdall/source/EndSessionPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FilePartSizePacket.h b/heimdall/source/FilePartSizePacket.h
index 561ec5b..42b9525 100644
--- a/heimdall/source/FilePartSizePacket.h
+++ b/heimdall/source/FilePartSizePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FileTransferPacket.h b/heimdall/source/FileTransferPacket.h
index 05206ef..c7a2f6b 100644
--- a/heimdall/source/FileTransferPacket.h
+++ b/heimdall/source/FileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FlashAction.cpp b/heimdall/source/FlashAction.cpp
index b5f69f2..6f2d49b 100644
--- a/heimdall/source/FlashAction.cpp
+++ b/heimdall/source/FlashAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FlashAction.h b/heimdall/source/FlashAction.h
index b4e1b6b..7c41136 100644
--- a/heimdall/source/FlashAction.h
+++ b/heimdall/source/FlashAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FlashPartFileTransferPacket.h b/heimdall/source/FlashPartFileTransferPacket.h
index dcf3422..1824467 100644
--- a/heimdall/source/FlashPartFileTransferPacket.h
+++ b/heimdall/source/FlashPartFileTransferPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/FlashPartPitFilePacket.h b/heimdall/source/FlashPartPitFilePacket.h
index e928314..c6ea41a 100644
--- a/heimdall/source/FlashPartPitFilePacket.h
+++ b/heimdall/source/FlashPartPitFilePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Heimdall.h b/heimdall/source/Heimdall.h
index bea1d73..5a5b4c6 100644
--- a/heimdall/source/Heimdall.h
+++ b/heimdall/source/Heimdall.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/HelpAction.cpp b/heimdall/source/HelpAction.cpp
index f041a81..e2f9bdb 100644
--- a/heimdall/source/HelpAction.cpp
+++ b/heimdall/source/HelpAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/HelpAction.h b/heimdall/source/HelpAction.h
index 7fb3e82..83e1d37 100644
--- a/heimdall/source/HelpAction.h
+++ b/heimdall/source/HelpAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/InboundPacket.h b/heimdall/source/InboundPacket.h
index 98d8777..f929297 100644
--- a/heimdall/source/InboundPacket.h
+++ b/heimdall/source/InboundPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/InfoAction.cpp b/heimdall/source/InfoAction.cpp
index 740f4e2..e60758a 100644
--- a/heimdall/source/InfoAction.cpp
+++ b/heimdall/source/InfoAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/InfoAction.h b/heimdall/source/InfoAction.h
index 8829d4a..ae5d445 100644
--- a/heimdall/source/InfoAction.h
+++ b/heimdall/source/InfoAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Interface.cpp b/heimdall/source/Interface.cpp
index 0d9d7d9..dbf8431 100644
--- a/heimdall/source/Interface.cpp
+++ b/heimdall/source/Interface.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -42,20 +42,20 @@ using namespace Heimdall;
map<string, Interface::ActionInfo> actionMap;
bool stdoutErrors = false;
-const char *version = "v1.4 RC3";
+const char *version = "v1.4.0";
const char *actionUsage = "Usage: heimdall <action> <action arguments>\n";
const char *releaseInfo = "Heimdall %s\n\n\
-Copyright (c) 2010-2012, Benjamin Dobell, Glass Echidna\n\
+Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna\n\
http://www.glassechidna.com.au/\n\n\
This software is provided free of charge. Copying and redistribution is\nencouraged.\n\n\
If you appreciate this software and you would like to support future\ndevelopment please consider donating:\n\
http://www.glassechidna.com.au/donate/\n\n";
-static const char *extraInfo = "Heimdall utilises libusb-1.0 for all USB communication:\n\
+static const char *extraInfo = "Heimdall utilises libusbx for all USB communication:\n\
http://www.libusb.org/\n\
\n\
-libusb-1.0 is licensed under the LGPL-2.1:\n\
+libusbx is licensed under the LGPL-2.1:\n\
http://www.gnu.org/licenses/licenses.html#LGPL\n\n";
void populateActionMap(void)
diff --git a/heimdall/source/Interface.h b/heimdall/source/Interface.h
index 441932a..27d08c8 100644
--- a/heimdall/source/Interface.h
+++ b/heimdall/source/Interface.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/OutboundPacket.h b/heimdall/source/OutboundPacket.h
index b9aac4b..50fb9d3 100644
--- a/heimdall/source/OutboundPacket.h
+++ b/heimdall/source/OutboundPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Packet.h b/heimdall/source/Packet.h
index 9f47e33..b571ae4 100644
--- a/heimdall/source/Packet.h
+++ b/heimdall/source/Packet.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/PitFilePacket.h b/heimdall/source/PitFilePacket.h
index f95fe8f..7bc32fb 100644
--- a/heimdall/source/PitFilePacket.h
+++ b/heimdall/source/PitFilePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/PitFileResponse.h b/heimdall/source/PitFileResponse.h
index 97cbbca..68fd7ed 100644
--- a/heimdall/source/PitFileResponse.h
+++ b/heimdall/source/PitFileResponse.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/PrintPitAction.cpp b/heimdall/source/PrintPitAction.cpp
index cdf5b4e..1c8c98a 100644
--- a/heimdall/source/PrintPitAction.cpp
+++ b/heimdall/source/PrintPitAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/PrintPitAction.h b/heimdall/source/PrintPitAction.h
index 5bbfd3d..f672375 100644
--- a/heimdall/source/PrintPitAction.h
+++ b/heimdall/source/PrintPitAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/ReceiveFilePartPacket.h b/heimdall/source/ReceiveFilePartPacket.h
index c7efa4a..a07549b 100644
--- a/heimdall/source/ReceiveFilePartPacket.h
+++ b/heimdall/source/ReceiveFilePartPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/ResponsePacket.h b/heimdall/source/ResponsePacket.h
index 9c5c2cc..9883852 100644
--- a/heimdall/source/ResponsePacket.h
+++ b/heimdall/source/ResponsePacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/SendFilePartPacket.h b/heimdall/source/SendFilePartPacket.h
index 092694a..a553a65 100644
--- a/heimdall/source/SendFilePartPacket.h
+++ b/heimdall/source/SendFilePartPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/SendFilePartResponse.h b/heimdall/source/SendFilePartResponse.h
index 69045f1..3cfc91c 100644
--- a/heimdall/source/SendFilePartResponse.h
+++ b/heimdall/source/SendFilePartResponse.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/SessionSetupPacket.h b/heimdall/source/SessionSetupPacket.h
index 9a91684..b8353bd 100644
--- a/heimdall/source/SessionSetupPacket.h
+++ b/heimdall/source/SessionSetupPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/SessionSetupResponse.h b/heimdall/source/SessionSetupResponse.h
index f7c1175..9647219 100644
--- a/heimdall/source/SessionSetupResponse.h
+++ b/heimdall/source/SessionSetupResponse.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/TotalBytesPacket.h b/heimdall/source/TotalBytesPacket.h
index 60190ec..79a02b5 100644
--- a/heimdall/source/TotalBytesPacket.h
+++ b/heimdall/source/TotalBytesPacket.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Utility.cpp b/heimdall/source/Utility.cpp
index 1dba264..d8947d2 100644
--- a/heimdall/source/Utility.cpp
+++ b/heimdall/source/Utility.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/Utility.h b/heimdall/source/Utility.h
index 4d3f3e4..195ecf0 100644
--- a/heimdall/source/Utility.h
+++ b/heimdall/source/Utility.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/VersionAction.cpp b/heimdall/source/VersionAction.cpp
index d76c1da..6121cad 100644
--- a/heimdall/source/VersionAction.cpp
+++ b/heimdall/source/VersionAction.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/VersionAction.h b/heimdall/source/VersionAction.h
index fa9035c..20457b5 100644
--- a/heimdall/source/VersionAction.h
+++ b/heimdall/source/VersionAction.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/heimdall/source/main.cpp b/heimdall/source/main.cpp
index 41d7a3c..b7ae47b 100644
--- a/heimdall/source/main.cpp
+++ b/heimdall/source/main.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/libpit/Source/libpit.cpp b/libpit/Source/libpit.cpp
index 1f29816..f9e8467 100644
--- a/libpit/Source/libpit.cpp
+++ b/libpit/Source/libpit.cpp
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/libpit/Source/libpit.h b/libpit/Source/libpit.h
index c2bc691..c7bfe8b 100644
--- a/libpit/Source/libpit.h
+++ b/libpit/Source/libpit.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012 Benjamin Dobell, Glass Echidna
+/* Copyright (c) 2010-2013 Benjamin Dobell, Glass Echidna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal