Il developer koolkdev ha rilasciato una serie di aggiornamenti per WFS Dump, la suite di strumenti cambia nome e diventa WFS Tools.
Si tratta di semplici tool a riga di comando che include al suo interno la libreria wfslib scritta in C++ per WFS (WiiU File System).
Per il momento la libreria supporta solo i file di lettura, la modifica dei suddetti file WFS richiederebbe un lavoro più profondo e una possibile riscrittura dell’intero codice sorgente.
Guida
wfs-extract
wfs-extract --help
Utilizzo
wfs-extract --input <input file> --output <output directory> --otp <opt path> [--seeprom <seeprom path>] [--mlc] [--usb] [--dump-path <directory to dump>] [--verbos]
Opzioni consentite
--help produce help message
--input arg input file
--output arg ouput directory
--otp arg otp file
--seeprom arg seeprom file (required if usb)
--dump-path arg (=/) directory to dump (default: "/")
--mlc device is mlc (default: device is usb)
--usb device is usb
--verbos verbos output
wfs-file-injector
Cambia il contenuto dei file nell’immagine wfs. La dimensione del file iniettata deve essere inferiore alla dimensione assegnata sul disco.
[stextbox id=’alert’]Attenzione: Può danneggiare il file system, utilizzare a proprio rischio. Assicurarsi di eseguire il backup dell’immagine wfs.[/stextbox]
Utilizzo
wfs-file-injector --image <wfs image> --inject-file <file to inject> --inject-path <file path in wfs> --otp <opt path> [--seeprom <seeprom path>] [--mlc] [--usb]
Opzioni consentite
--help produce help message
--image arg wfs image file
--inject-file arg file to inject
--inject-path arg wfs file path to replace
--otp arg otp file
--seeprom arg seeprom file (required if usb)
--mlc device is mlc (default: device is usb)
--usb device is usb
wfs-fuse (solo Linux)
wfs-fuse --help
Utilizzo
wfs-fuse <device_file> <mountpoint> --otp <otp_path> [--seeprom <seeprom_path>] [--usb] [--mlc] [fuse options]
Opzioni consentite
--help|-h print this help message
--otp <path> otp file
--seeprom <path> seeprom file (required if usb)
--usb device is usb (default)
--mlc device is mlc
-d -o debug enable debug output (implies -f)
-o default_permissions check access permission instead the operation system
-o allow_other allow access to the mount for all users
-f foreground operation
-s disable multi-threaded operation
Esempio
Dumpa mlc dal backup
wfs-extract --input mlc.full.img --output dump_dir --otp otp.bin --mlc
Dumpa il dispositivo USB in Windows
(e necessario eseguire il prompt dei comandi con privilegi di amministratore)
wfs-extract --input \\.\PhysicalDrive3 --output dump_dir --otp otp.bin --seeprom seeprom.bin
Dovrete sostituire PhsyicalDrive3 con il dispositivo corretto, è possibile capirlo con questo comando PowerShell:
Get-WmiObject Win32_DiskDrive
Inject rom.zip
wfs-extract --image usb.img --inject-file rom.zip --inject-path /usr/title/00050000/101c3500/content/0010/rom.zip --otp otp.bin --seeprom seeprom.bin
Monta dispositivo USB in Linux
sudo wfs-fuse /dev/sdb /mnt --otp otp.bin --seeprom seeprom.bin -o default_permissions,allow_other
Build
Linux
Installare i requisiti
sudo apt-get install git g++ make libfuse-dev libboost-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libcrypto++-dev
Scaricare il codice
git clone https://github.com/koolkdev/wfslib.git
cd wfslib
Costruire
make
Visual Studio
Disponibile il file di soluzione di Visual Studio 2015 (le dipendenze sono pacchetti Nuget).
Mac OS X
Installa gli strumenti della riga di comando Xcode
xcode-select --install
Installa brew se necessario
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
Installa i requisiti
brew install boost cryptopp
brew tap caskroom/cask
brew cask install osxfuse
Scarica il codice
git clone https://github.com/koolkdev/wfslib.git
cd wfslib
Modifica del Makefile
perl -p -i -e 's/-lfuse /-lfuse_ino64 /g' wfs-fuse/Makefile
Costruire
make
[stextbox id=’info’]Nota: Qui bisogna fornire l’argomento “-o default_permissions,allow_other” per wfs-fuse.[/stextbox]
Download: WFS Tools v0.5.39