partsetios.py 634 B

1234567891011121314151617181920212223242526272829
  1. #!/usr/bin/env python2
  2. import sys, os, os.path
  3. import pywii as wii
  4. wii.loadkeys()
  5. if len(sys.argv) != 4:
  6. print "Usage:"
  7. print " python %s <encrypted ISO> <partition number> <IOS version>"%sys.argv[0]
  8. print " IOS version should be just the minor number (16, 33, etc) in decimal"
  9. sys.exit(1)
  10. iso_name, partno, ios = sys.argv[1:4]
  11. partno = int(partno)
  12. iosno = int(ios)
  13. disc = wii.WiiDisc(iso_name)
  14. disc.showinfo()
  15. part = wii.WiiCachedPartition(disc, partno, cachesize=32, debug=False)
  16. part.tmd.sys_version = 0x100000000 + iosno
  17. part.tmd.update()
  18. part.tmd.null_signature()
  19. part.tmd.brute_sha()
  20. part.updatetmd()
  21. part.showinfo()