/*************************************************************************** * __________ __ ___. * Open \______ \ ____ ____ | | _\_ |__ _______ ___ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ * \/ \/ \/ \/ \/ * * Copyright (C) 2012 Dominik Riebeling * * All files in this archive are subject to the GNU General Public License. * See the file COPYING in the source tree root for full license agreement. * * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * * This file is a modified version of the AMS installer by Dominik Wenger * ****************************************************************************/ #include #include "bootloaderinstallhelper.h" #include "bootloaderinstallmi4.h" #include "bootloaderinstallhex.h" #include "bootloaderinstallipod.h" #include "bootloaderinstallsansa.h" #include "bootloaderinstallfile.h" #include "bootloaderinstallchinachip.h" #include "bootloaderinstallams.h" #include "bootloaderinstalltcc.h" #include "bootloaderinstallmpio.h" #include "bootloaderinstallimx.h" BootloaderInstallBase* BootloaderInstallHelper::createBootloaderInstaller(QObject* parent, QString type) { if(type == "mi4") { return new BootloaderInstallMi4(parent); } else if(type == "hex") { return new BootloaderInstallHex(parent); } else if(type == "sansa") { return new BootloaderInstallSansa(parent); } else if(type == "ipod") { return new BootloaderInstallIpod(parent); } else if(type == "file") { return new BootloaderInstallFile(parent); } else if(type == "chinachip") { return new BootloaderInstallChinaChip(parent); } else if(type == "ams") { return new BootloaderInstallAms(parent); } else if(type == "tcc") { return new BootloaderInstallTcc(parent); } else if(type == "mpio") { return new BootloaderInstallMpio(parent); } else if(type == "imx") { return new BootloaderInstallImx(parent); } else { return NULL; } } //! @brief Return post install hints string. //! @param model model string //! @return hints. QString BootloaderInstallHelper::postinstallHints(QString model) { bool hint = false; QString msg = QObject::tr("Bootloader installation is almost complete. " "Installation requires you to perform the " "following steps manually:"); msg += "
    "; if(model != "sansafuzeplus") { msg += QObject::tr("
  1. Safely remove your player.
  2. "); } if(model == "iriverh100" || model == "iriverh120" || model == "iriverh300" || model == "ondavx747") { hint = true; msg += QObject::tr("
  3. Reboot your player into the original firmware.
  4. " "
  5. Perform a firmware upgrade using the update functionality " "of the original firmware. Please refer to your player's manual " "on details.
    Important: updating the firmware is a " "critical process that must not be interrupted. Make sure the " "player is charged before starting the firmware update " "process.
  6. " "
  7. After the firmware has been updated reboot your player.
  8. "); } if(model == "sansafuzeplus") { hint = true; msg += QObject::tr("
  9. Remove any previously inserted microSD card
  10. "); msg += QObject::tr("
  11. Disconnect your player. The player will reboot and " "perform an update of the original firmware. " "Please refer to your players manual on details.
    " "Important: updating the firmware is a " "critical process that must not be interrupted. Make sure the " "player is charged before disconnecting the player.
  12. " "
  13. After the firmware has been updated reboot your player.
  14. "); } if(model == "iaudiox5" || model == "iaudiom5" || model == "iaudiox5v" || model == "iaudiom3" || model == "mpioh200") { hint = true; msg += QObject::tr("
  15. Turn the player off
  16. " "
  17. Insert the charger
  18. "); } if(model == "gigabeatf") { hint = true; msg += QObject::tr("
  19. Unplug USB and power adaptors
  20. " "
  21. Hold Power to turn the player off
  22. " "
  23. Toggle the battery switch on the player
  24. " "
  25. Hold Power to boot into Rockbox
  26. "); } msg += "
"; msg += QObject::tr("

Note: You can safely install other parts first, but " "the above steps are required to finish the installation!

"); if(hint) return msg; else return QString(); }