Installing Bootmii backups on another Wii

Discussion in 'Wii - Emulation and Homebrew' started by TirantRex, Jul 22, 2019.

  1. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    My Main Wii is out of commission ATM and I would still like to play some Wii games. I have a very recent backup of my old Wii's Nand and was wondering if I can just install that backup on a new replacement Wii? (The Wii's are the same color and the same motherboard revision)
     
  2. Ryccardo

    Ryccardo and his tropane alkaloids

    Member
    14
    Feb 13, 2015
    Italy
    Imola
    No (unless you were to swap the GPUs as they contain the OTP which sets the encryption key), but if you have a backup of both consoles (or at least the keys.bin of the new one) you can use Betwiin to convert the backup for the new console and then restore that!
     
  3. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    Thanks! I'll look into that. I haven't homebrewed the new console yet but I'll do that right now and get the new keys.bin.
     
  4. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    I tried running betwiin.py and got this error:

    File: "[path of betwiin.py]", line 15
    print "Cluster chain for %s:" % (entry.patch+entry.name)
    Syntax Error: invalid syntax
     
  5. SpaceFunction

    SpaceFunction Member

    Newcomer
    3
    Feb 18, 2017
    Brazil
    Perhaps your file path has special characters. I get errors like this a lot, so maybe that's the problem.
     
  6. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    I tried moving the betwiin folder to a path where there are no spaces and no special characters with the same result.
     
  7. SpaceFunction

    SpaceFunction Member

    Newcomer
    3
    Feb 18, 2017
    Brazil
    I've never used this software before, but do you need to have Python installed? If yes, then you need to have the latest Python 2.7.x running in order to use this code, as the error message suggests it runs on an older Python syntax (which used the "print" word as a statement instead of a function, something that Python 3.x uses and requires).
     
  8. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    I'm a little confused. So do I need to use a version of python 2.7.x or should I use the most up-to-date version of python?
     
  9. SpaceFunction

    SpaceFunction Member

    Newcomer
    3
    Feb 18, 2017
    Brazil
    Wait, let me get this straight. Does the program itself say that it requires python to run? I say this because of the file "betwiin.py", which has a .py extension (indicating it is a Python program). If the answer is yes, then you need Python 2.7.x, 3.x will not work.
    https://www.python.org/downloads/release/python-2716/
    Make sure to uninstall Python 3.x (if it is installed) before running the setup above. If you do not do this, then you will have to mess with your environment variables.
     
  10. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    I installed Python 2.7.16 and the program runs but it's missing modules. I'm now trying to figure out how to install pycrypto. Will work on this more tomorrow.
     
  11. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    I got the program to start running but it errors out after setting up the files it needs.
     
  12. TirantRex
    OP

    TirantRex Member

    Newcomer
    1
    Feb 1, 2019
    United States
    Colorado Springs
    This is what happens now after installing pycrypto, numpy, and also OpenSSL: The program runs until it gets to "Updating cluster 3f (block 7)" the next lines read as follows:
    Traceback (most recent call last):
    File "C:\[path]\betwiin.py", line 54, in <module>

    superblock_clister = find_newest_superblock(input_nand)
    File "C:\[path]\nand.py", line 523, in find_newest_superblock
    print "Superblock @%x: %x" % (superblock_cluster, superblock.version())
    File "C:\[path]\nand.py", line 496, in version return unpack (">1",self.data_buffer[0x4:0x8])[0]
    struct.error: unpack requires a string argument of length 4
     
Loading...