modmii.github.io/Support/ModMii.bat

27289 lines
1.0 MiB
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@echo off
setlocal
:top
::chdir /d "%~dp0"
pushd "%~dp0"
cls
if not exist support cd..
set cygwin=nodosfilewarning
set ModMiiDrive=%cd:~0,2%
set "PATH=%SystemRoot%\system32;%SystemRoot%\system32\wbem;%SystemRoot%;%homedrive%\ModMii\temp;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0"
::65001 was used to fix paths with special characters like é for Sneek Installer, but caused rare slowdowns for some users so reverted back to 437. Other downloads may still fail if a special character exists in the path, but work fine if using the default COPY_TO_SD relative path.
chcp 437>nul
::chcp 65001>nul
::chcp 850>nul
::chcp 1252>nul
::PUSHD "%cd%"
::::PUSHD "%~dp0"
::POPD
set currentversion=7.0.2
set currentversioncopy=%currentversion%
set agreedversion=
::let's make this easy
set redtext=Red
set bluetext=Blue
set yellowtext=Yellow
set greentext=Green
set magentatext=Magenta
set cyantext=Cyan
set backgroundcolor=1
set whitetext=f
::-------------------CMD LINE SUPPORT----------------------
::getting args sent to ModMii, if applicable
::"ModMii" a b c d e f g h i
::equals
::"ModMii" %1 %2 %3 %4 %5 %6 %7 %8 %9
set "one=%~1"
if not "%one%"=="" set cmdlinemode=Y
set "two=%~2"
set "three=%~3"
set "four=%~4"
set "five=%~5"
set "six=%~6"
set "seven=%~7"
set "eight=%~8"
set "nine=%~9"
setlocal enableDelayedExpansion
set "cmdinput=!cmdcmdline!"
::if ONE is a function and not a dropped file, then revert to secondary method [set cmdinput=%*] primary method only works if calling the exe, not the bat
if /i "%one%" EQU "help" set cmdinput=%*
if /i "%one%" EQU "O" set cmdinput=%*
if /i "%one%" EQU "D" set cmdinput=%*
if /i "%one%" EQU "W" set cmdinput=%*
if /i "%one%" EQU "HS" set cmdinput=%*
if /i "%one%" EQU "RC" set cmdinput=%*
if /i "%one%" EQU "S" set cmdinput=%*
if /i "%one%" EQU "SE" set cmdinput=%*
if /i "%one%" EQU "U" set cmdinput=%*
if /i "%one%" EQU "E" set cmdinput=%*
if /i "%one%" EQU "AW" set cmdinput=%*
if /i "%one%" EQU "L" set cmdinput=%*
if /i "%one%" EQU "SU" set cmdinput=%*
::slash is wrong direction when launched via exe, correct it here:
set "cmdinput=!cmdinput:/Support/ModMii.bat=\Support\ModMii.bat!"
::remove bat name from cmdinput, appears sometimes depending how it's launched
set "cmdinput=!cmdinput:*%~f0=!"
::remove first term "C:\WINDOWS\system32\cmd.exe"
::set "cmdinput=!cmdinput:* =!"
::remove 2nd term "/c"
::set "cmdinput=!cmdinput:* =!"
::strip out unnecessary chars at start
set "cmdinput=!cmdinput:*" =!"
::remove quotes
set "cmdinput=!cmdinput:"=!"
setlocal DISABLEDELAYEDEXPANSION
::in some cases above method will yield "C:\Windows\System32\cmd.exe", for these fall back on secondary method
if /i "%cmdinput%" NEQ "%homedrive%\Windows\System32\cmd.exe" goto:skipfix
set cmdinput=%*
set "cmdinput=%cmdinput:"=%"
:skipfix
::echo cmdinput: "%cmdinput%"
::echo one: "%one%"
::pause
::multidrop stuff done later!
::check for write access
if exist "temp\test" goto:skip
mkdir "temp\test"
if not exist "temp\test" (goto:WriteError) else (goto:donecheck)
:skip
if not exist temp\test\test.txt goto:skip
del temp\test\test.txt>nul
if exist temp\test\test.txt (goto:WriteError) else (goto:donecheck)
:skip
echo test>temp\test\test.txt
if exist temp\test\test.txt goto:donecheck
:WriteError
::for skin mode, force screen to be visible
::support\nircmd.exe win activate ititle "ModMiiSkinCMD"
::support\nircmd.exe win trans ititle "ModMiiSkinCMD" 255
cls
echo ModMii needs to be run as an Administrator if saved to this directory.
echo Please either run ModMii from somewhere else like C:\ModMii or run as admin
echo.
echo Press any key to update shortcuts and run ModMii as administrator...
pause>nul
if not "%cmdinput%"=="" support\nircmd.exe shortcut "%cd%\ModMii.exe" "%temp%" "ModMii" "%cmdinput%"
if "%cmdinput%"=="" support\nircmd.exe shortcut "%cd%\ModMii.exe" "%temp%" "ModMii"
support\hexalter.exe "%temp%\ModMii.lnk" 0x15=0x20>nul
if exist "%userprofile%\Desktop\ModMii.lnk" support\hexalter.exe "%userprofile%\Desktop\ModMii.lnk" 0x15=0x20>nul
if exist "%userprofile%\Desktop\ModMii Skin.lnk" support\hexalter.exe "%userprofile%\Desktop\ModMii Skin.lnk" 0x15=0x20>nul
if exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii.lnk" support\hexalter.exe "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii.lnk" 0x15=0x20>nul
if exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii Skin.lnk" support\hexalter.exe "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii Skin.lnk" 0x15=0x20>nul
if exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Uninstall.lnk" support\hexalter.exe "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Uninstall.lnk" 0x15=0x20>nul
cd "%temp%"
start ModMii.lnk
exit
:donecheck
if exist "temp\test" rd /s /q "temp\test"> nul
IF "%AudioOption%"=="" set AudioOption=on
if "%ModMiiverbose%"=="" set ModMiiverbose=off
if "%skin%"=="" set skin=Default
if exist Support\settings.bat call Support\settings.bat
if exist "Support\Skins\%skin%\Success.mp3" (set "Success.mp3=Support\Skins\%skin%\Success.mp3") else (set "Success.mp3=Support\Skins\Default\Success.mp3")
if exist "Support\Skins\%skin%\Fail.mp3" (set "Fail.mp3=Support\Skins\%skin%\Fail.mp3") else (set "Fail.mp3=Support\Skins\Default\Fail.mp3")
set CurrentDLNAME=
call "Support\subscripts\DB.bat"
if "%DRIVE%"=="" set DRIVE=COPY_TO_SD
::check if drive folder exists--if second char is ":" check if drive exists
if /i "%DRIVE:~1,1%" NEQ ":" goto:skipcheck
if /i "%DRIVE%" EQU "%cd%\COPY_TO_SD" set DRIVE=COPY_TO_SD
if exist "%DRIVE:~0,2%" (goto:skipcheck) else (set DRIVE=COPY_TO_SD)
support\sfk filter Support\settings.bat -!"Set*Drive=" -write -yes>nul
echo Set "Drive=%DRIVE%">>Support\settings.bat
:skipcheck
if "%DRIVEU%"=="" set DRIVEU=COPY_TO_USB
::check if DRIVEU folder exists--if second char is ":" check if DRIVEU exists
if /i "%DRIVEU:~1,1%" NEQ ":" goto:skipcheck
if /i "%DRIVEU%" EQU "%cd%\COPY_TO_USB" set DRIVEU=COPY_TO_USB
if exist "%DRIVEU:~0,2%" (goto:skipcheck) else (set DRIVEU=COPY_TO_USB)
support\sfk filter Support\settings.bat -!"Set*DriveU=" -write -yes>nul
echo Set "DriveU=%DRIVEU%">>Support\settings.bat
:skipcheck
set d2x-beta-rev=11-beta1
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
::.NET Framework 3.5 check+installation
if exist "%windir%\Microsoft.NET\Framework\v3.5" goto:skipframeworkinstallation
echo ModMii requires .NET Framework 3.5 be installed
echo.
::get different framework installer if running windows 7 or lower
ver>temp\temp.txt
support\sfk filter -quiet "temp\temp.txt" -rep _*" "__ -rep _"."*__ -rep _"]"__ -write -yes
support\sfk filter -quiet "temp\temp.txt" -no-empty-lines -no-blank-lines -write -yes
set /p winver= <temp\temp.txt
::echo %winver%
set "code2=https://download.visualstudio.microsoft.com/download/pr/b635098a-2d1d-4142-bef6-d237545123cb/2651b87007440a15209cac29634a4e45/dotnetfx35.exe"
set "dlname=dotnetfx35.exe"
if /i %winver% LSS 8 (set "code2=https://download.microsoft.com/download/7/0/3/703455ee-a747-4cc8-bd3e-98a615c3aedb/dotNetFx35setup.exe") & (set "dlname=dotNetFx35setup.exe")
set FrameworkAttempt=0
:NETFRAMEWORK
SET /a FrameworkAttempt=%FrameworkAttempt%+1
if exist "temp\%dlname%" goto:semiskip
echo Downloading .NET Framework 3.5 Installer
echo.
start /min /wait support\wget --no-check-certificate -t 3 "%code2%" -O "temp\%dlname%"
if exist "temp\%dlname%" goto:semiskip
if /i "%FrameworkAttempt%" EQU "3" goto:GiveUpOnFramework
goto:NETFRAMEWORK
:semiskip
echo Launching installer and waiting for installation to finish...
echo.
start /wait temp\%dlname%
if exist "temp\%dlname%" del "temp\%dlname%">nul
if exist "%windir%\Microsoft.NET\Framework\v3.5" goto:skipframeworkinstallation
if /i "%FrameworkAttempt%" EQU "3" goto:GiveUpOnFramework
:retryframework
echo Installation Failed, retrying...
echo.
echo.
if /i "%FrameworkAttempt%" EQU "3" goto:GiveUpOnFramework
goto:NETFRAMEWORK
:GiveUpOnFramework
echo.
echo.
echo.
echo .NET Framework 3.5 Installation Failed Multiple Times
echo Alternatively, you can try installing .NET Framework 3.5 by performing a Windows Update
echo.
echo Some ModMii features may not work properly without .NET Framework 3.5 installed
echo Hit any key to use ModMii anyways
pause>nul
:skipframeworkinstallation
::if not exist temp mkdir temp
if not exist temp\DownloadQueues mkdir temp\DownloadQueues
if exist Support\DownloadQueues\* move /y Support\DownloadQueues\* temp\DownloadQueues>nul
if exist Support\DownloadQueues rd /s /q "Support\DownloadQueues">nul
if not exist Support\More-cIOSs mkdir Support\More-cIOSs
::check for InstallForge Uninstall.exe, uninstall.dat and uninstall_l.ifl then move\rename to Support folder
if not exist uninstall.dat goto:skip
if exist uninstall.dat move /y uninstall.dat Support\uninstall.dat>nul
if exist uninstall_l.ifl move /y uninstall_l.ifl Support\uninstall_l.ifl>nul
if exist Uninstall.exe move /y Uninstall.exe Support\Uninstall2.exe>nul
:skip
if exist "support\subscripts\Uninstaller.exe" move /y "support\subscripts\Uninstaller.exe" Uninstall.exe>nul
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\" goto:skip
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii.lnk" support\nircmd.exe shortcut "%cd%\ModMii.exe" "~$folder.programs$\ModMii" "ModMii"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii Skin.lnk" support\nircmd.exe shortcut "%cd%\ModMiiSkin.exe" "~$folder.programs$\ModMii" "ModMii Skin"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Uninstall.lnk" support\nircmd.exe shortcut "%cd%\Uninstall.exe" "~$folder.programs$\ModMii" "Uninstall"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Website & Help.lnk" support\nircmd.exe shortcut "https://modmii.github.io" "~$folder.programs$\ModMii" "Website & Help"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Open ModMii Folder.lnk" support\nircmd.exe shortcut "%windir%\explorer.exe" "~$folder.programs$\ModMii" "Open ModMii Folder" "%cd%\"
:skip
set UPDATENAME=ModMii
::set UPDATENAME=ModMii_IT_
if /i "%debug%" EQU "on" goto:skip
if exist Updatetemp.bat attrib -h Updatetemp.bat
if exist Updatetemp.bat del Updatetemp.bat>nul
:skip
::set to Y to keep some invalid files for debug purposes
set KeepInvalidOverride=N
::cmd line stuff
if /i "%cmdlinemode%" NEQ "Y" goto:notcmd
if /i "%two%" EQU "Help" goto:specificCMDhelp
if /i "%one%" EQU "O" goto:cmdlineOPTIONShelp
if /i "%one%" EQU "D" goto:cmdlineDhelp
if /i "%one%" EQU "W" goto:hardcodedoptions
if /i "%one%" EQU "HS" goto:hardcodedoptions
if /i "%one%" EQU "RC" goto:hardcodedoptions
if /i "%one%" EQU "S" goto:hardcodedoptions
if /i "%one%" EQU "SE" goto:hardcodedoptions
if /i "%one%" EQU "U" goto:hardcodedoptions
if /i "%one%" EQU "E" goto:hardcodedoptions
if /i "%one%" EQU "AW" goto:hardcodedoptions
if /i "%one%" EQU "L" goto:hardcodedoptions
if /i "%one%" EQU "SU" goto:hardcodedoptions
::---pure drag and drop stuff below---
::multidrop support, insert line breaks to split different dragged files arguments
::add check for multiple files by searching for more 2 or more colons ":"
set "string=%cmdinput%"
set /a filecount=0
setlocal EnableDelayedExpansion
if defined string (set ^"strtmp=!string::=^
%= empty string =%
!^") else set "strtmp="
for /F %%C in ('cmd /V /C echo(^^!strtmp^^!^| find /C /V ""') do set /A "filecount=%%C-1"
setlocal DISABLEDELAYEDEXPANSION
::echo "!string!" contains %filecount% files
if %filecount% LSS 2 goto:notMulti
echo "%cmdinput%">temp\MultiDrop.txt
support\sfk -spat filter temp\MultiDrop.txt -rep _\x22__ -rep _" A:"_"\nA:"_ -rep _" B:"_"\nB:"_ -rep _" C:"_"\nC:"_ -rep _" D:"_"\nD:"_ -rep _" E:"_"\nE:"_ -rep _" F:"_"\nF:"_ -rep _" G:"_"\nG:"_ -rep _" H:"_"\nH:"_ -rep _" I:"_"\nI:"_ -rep _" J:"_"\nJ:"_ -rep _" K:"_"\nK:"_ -rep _" L:"_"\nL:"_ -rep _" M:"_"\nM:"_ -rep _" N:"_"\nN:"_ -rep _" O:"_"\nO:"_ -rep _" P:"_"\nP:"_ -rep _" Q:"_"\nQ:"_ -rep _" R:"_"\nR:"_ -rep _" S:"_"\nS:"_ -rep _" T:"_"\nT:"_ -rep _" U:"_"\nU:"_ -rep _" V:"_"\nV:"_ -rep _" W:"_"\nW:"_ -rep _" X:"_"\nX:"_ -rep _" Y:"_"\nY:"_ -rep _" Z:"_"\nZ:"_ -rep _"^^"_"^"_ -write -yes>nul
set /p testme= <temp\MultiDrop.txt
if not exist "%testme%" goto:cmdlinehelp
start support\subscripts\MultiDrop.exe
exit
:notMulti
::syscheck updater drag and drop
if /i "%cmdinput:~-4%" EQU ".csv" (set one=SU) & (set cmdlinemodeswitchoff=Y) & (goto:hardcodedoptions)
if /i "%cmdinput:~-4%" NEQ ".bat" goto:notbat
::check for "- Wizard Settings -"
findStr /I /C:"- Wizard Settings -" "%cmdinput%" >nul
IF NOT ERRORLEVEL 1 (set cmdlinemodeswitchoff=Y) & (set one=WL) & (set LoadWizSettings=Y) & (goto:go)
::check for download queue
findStr /I /C:":endofqueue" "%cmdinput%" >nul
IF ERRORLEVEL 1 goto:notbat
set one=L
set cmdlinemodeswitchoff=Y
goto:hardcodedoptions
:notbat
::---------------ModMii nand.bin tools---------------
if /i "%cmdinput:~-4%" NEQ ".bin" goto:notbin
if not exist "%cmdinput%" goto:notbin
if exist "%cmdinput%\" goto:notbin
title ModMii nand.bin tools
:binDrop
set binAction=
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
echo.
echo What would you like to do with this nand.bin file?
echo.
support\sfk echo [%bluetext%]"%cmdinput%"
support\sfk echo [%yellowtext%]*If this isn't a Wii nand.bin backup, you should close this window now!
echo.
echo E = Extract it to use as an Emulated nand
echo C = Check it using nandBinCheck
echo CAB = Clone A to B; use this Wii's nand.bin ("A") to build a nand for a different "B" Wii; i.e. "A" is donor
echo CBA = Clone B to A; build new nand for this Wii ("A") cloned from a different "B" Wii nand.bin; i.e. "A" is recipient
echo D = DefragMii; speed up your nand by defragmenting it; can also update old nand backups to avoid new bad blocks
echo.
set /p binAction= Enter Selection Here:
if /i "%binAction%" EQU "E" goto:nandextract
if /i "%binAction%" EQU "C" goto:nandBinCheck
if /i "%binAction%" EQU "CAB" goto:Punetwiin
if /i "%binAction%" EQU "CBA" goto:Punetwiin
if /i "%binAction%" EQU "D" goto:DefragMii
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:binDrop
:nandextract
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
if not exist temp\nand-tools\nand-aes-dump.exe goto:DL
if not exist temp\nand-tools\NAND-bin2raw.exe goto:DL
if not exist temp\nand-tools\zestig.exe goto:DL
goto:skipDL
:DL
echo.
echo Downloading nand-tools...
::https://forums.dolphin-emu.org/attachment.php?aid=1383
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/nand-tools.zip" -O temp\nand-tools.zip
if exist temp\nand-tools.zip support\7za x -aoa "temp\nand-tools.zip" -o"temp\nand-tools" -r
if exist temp\nand-tools.zip del temp\nand-tools.zip>nul
:skipDL
if not exist temp\nand-tools\nand-aes-dump.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\nand-tools\NAND-bin2raw.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\nand-tools\zestig.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo.
echo Extracting "%cmdinput%":
echo.
echo Please be patient, this may take a minute...
echo.
::get nandfile and nandfolder names
set "nandfile=%cmdinput:*\=%"
set "nandfolder=%cmdinput%"
:stripnandfile
set "nandfile=%nandfile:*\=%"
echo "%nandfile%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripnandfile
echo set "nandfolder=%%nandfolder:\%nandfile%=%%">temp\temp.bat
call temp\temp.bat
::echo nandfile: %nandfile%
::echo nandfolder: %nandfolder%
set "ModMiiDir=%cd%"
if /i "%binAction%" NEQ "D" goto:notDefragmii
if /i "%nand1%" EQU "%nand2%" set "nandfile1=%nandfile%"
if /i "%nand1%" EQU "%nand2%" set "nandfolder1=%nandfolder%"
if /i "%nand1%" EQU "%nand2%" goto:skipkeys
:notDefragmii
cd /d "%nandfolder%"
if /i "%nandfile%" EQU "nand.bin" goto:skip
if exist nand.bin move /y nand.bin nand.bin.modmii.bak>nul
if exist nand-key.bin move /y nand-key.bin nand-key.bin.modmii.bak>nul
move /y "%nandfile%" nand.bin>nul
:skip
echo @echo Off>"%ModMiiDir%\temp\temp.bat"
echo title nand-aes-dump-cmd>>"%ModMiiDir%\temp\temp.bat"
echo cd /d "%nandfolder%">>"%ModMiiDir%\temp\temp.bat"
echo "%ModMiiDir%\temp\nand-tools\nand-aes-dump.exe">>"%ModMiiDir%\temp\temp.bat"
cd "%ModMiiDir%\temp"
start /min temp.bat
cd /d "%nandfolder%"
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
if not exist nand-key.bin @ping 127.0.0.1 -n 1 -w 1000> nul
@ping 127.0.0.1 -n 2 -w 1000> nul
::nand-aes-dump.exe doesn't exit when done!
if exist nand-key.bin taskkill /F /IM "nand-aes-dump.exe" /T >nul
if exist nand-key.bin taskkill /F /FI "WindowTitle eq nand-aes-dump-cmd" /T >nul
if exist nand-key.bin taskkill /F /FI "WindowTitle eq Administrator: nand-aes-dump-cmd" /T >nul
move /y nand.bin "%nandfile%">nul
if exist nand.bin.modmii.bak move /y nand.bin.modmii.bak nand.bin>nul
if not exist nand-key.bin (echo unable to retrieve nand-key.bin, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%binAction%" EQU "D" goto:%afterkeys%
"%ModMiiDir%\temp\nand-tools\NAND-bin2raw.exe" "%nandfile%" "%nandfile:~0,-4%_dec.bin"
"%ModMiiDir%\temp\nand-tools\zestig.exe" nand-key.bin "%nandfile:~0,-4%_dec.bin" "%nandfile:~0,-4%"
if exist "%nandfile:~0,-4%_dec.bin" del /f /q "%nandfile:~0,-4%_dec.bin"
if exist "nand-key.bin" del /f /q "nand-key.bin"
if exist "%nandfolder%\nand-key.bin.modmii.bak" move /y "%nandfolder%\nand-key.bin.modmii.bak" "%nandfolder%\nand-key.bin">nul
echo.
cd /d "%ModMiiDir%"
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%nandfolder%\%nandfile:~0,-4%" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%nandfolder%\%nandfile:~0,-4%" (echo Something went wrong, press any key to exit...) & (pause> nul) & (exit)
"%ModMiiDir%\support\sfk.exe" echo [%greentext%]FINISHED!
echo.
echo "%nandfolder%\%nandfile%" has been extracted to:
echo "%nandfolder%\%nandfile:~0,-4%"
echo.
"%ModMiiDir%\support\sfk.exe" echo You can close this window now, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%nandfolder%\%nandfile:~0,-4%" explorer "%nandfolder%\%nandfile:~0,-4%"
exit
:nandBinCheck
if exist temp\nandBinCheck\nandBinCheck.exe goto:skipDL
echo.
echo Downloading nandBinCheck to check "%cmdinput%"
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/nandBinCheck.zip"
if exist nandBinCheck.zip support\7za x -aoa "nandBinCheck.zip" -o"temp\nandBinCheck" -r
if exist nandBinCheck.zip del nandBinCheck.zip>nul
:skipDL
if not exist temp\nandBinCheck\nandBinCheck.exe (echo nandBinCheck failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo @echo Off>temp\nandBinCheck\script.bat
echo title ModMii: Checking "%cmdinput%">>temp\nandBinCheck\script.bat
echo cd /d "%cd%\Support" >>temp\nandBinCheck\script.bat
echo sfk echo [%bluetext%]Checking "%cmdinput%">>temp\nandBinCheck\script.bat
echo echo ------------------>>temp\nandBinCheck\script.bat
if /i "%ModMiiverbose%" EQU "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%cmdinput%" -all>>temp\nandBinCheck\script.bat
if /i "%ModMiiverbose%" NEQ "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%cmdinput%" -all -v>>temp\nandBinCheck\script.bat
echo echo ------------------>>temp\nandBinCheck\script.bat
echo sfk echo [%greentext%]Finished checking "%cmdinput%">>temp\nandBinCheck\script.bat
echo echo ------------------>>temp\nandBinCheck\script.bat
echo echo When finished reviewing checks, press any key to exit. >>temp\nandBinCheck\script.bat
if /i "%AudioOption%" EQU "on" echo start nircmd.exe mediaplay 3000 "%Success.mp3:~8%">>temp\nandBinCheck\script.bat
echo pause^>nul >>temp\nandBinCheck\script.bat
echo exit >>temp\nandBinCheck\script.bat
start temp\nandBinCheck\script.bat
exit
:Punetwiin
set nandfolder2=
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
echo.
support\sfk echo [%cyantext%]CloneMii
echo.
support\sfk echo [%yellowtext%]WARNING:[def] Using CloneMii\Punetwiin has some risks if the target console does not have bootmii boot2.
echo Generally this is not something that should be done frequently.
echo Make sure the target console's nand was dumped recently so Punetwiin is aware of all the latest bad blocks.
echo.
if /i "%binAction%" EQU "CAB" echo This is the selected donor Wii's nand.bin:
if /i "%binAction%" EQU "CBA" echo This is the recipient\target Wii's nand.bin:
echo "%cmdinput%"
echo.
if /i "%binAction%" EQU "CAB" support\sfk echo [%bluetext%] Drag and drop the recipient\target Wii's nand.bin onto this window then hit Enter
if /i "%binAction%" EQU "CBA" support\sfk echo [%bluetext%] Drag and drop the donor Wii's nand.bin onto this window then hit Enter
echo.
echo B = Back
echo.
set nandfolder2=?
setlocal ENABLEDELAYEDEXPANSION
set /p nandfolder2= Enter Selection Here:
::remove quotes
set "nandfolder2=!nandfolder2:"=!"
set "nandfolder2=!nandfolder2:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if "%nandfolder2%"=="" goto:badkey
if /i "%nandfolder2%" NEQ "%cmdinput%" goto:notduplicate
echo You cannot use the same nand
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:Punetwiin
:notduplicate
if /i "%nandfolder2%" EQU "B" goto:binDrop
if /i "%nandfolder2:~-4%" NEQ ".bin" goto:badkey
if not exist "%nandfolder2%" goto:badkey
goto:PunetwiinConfirm
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:Punetwiin
:PunetwiinConfirm
set PunetwiinConfirm=
cls
::Add age check of nand2.bin?
if /i "%binAction%" EQU "CAB" set "nand2=%nandfolder2%"
if /i "%binAction%" EQU "CBA" set "nand2=%cmdinput%"
dir /T:W "%nand2%">temp\temp.txt
support\sfk filter -quiet temp\temp.txt ++".bin" -rep _" *"__ -write -yes
set /p nanddate= <temp\temp.txt
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
echo.
support\sfk echo [%cyantext%]CloneMii
echo.
support\sfk echo [%yellowtext%]WARNING:[def] Using CloneMii\Punetwiin has some risks if the target console does not have bootmii boot2.
echo Generally this is not something that should be done frequently.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20[%yellowtext%]Make sure to use a recent dump[def] of the target Wii's nand so Punetwiin is aware of all the latest bad blocks.
echo.
echo This is the selected donor Wii's nand.bin:
if /i "%binAction%" EQU "CAB" support\sfk echo [%bluetext%] "%cmdinput%"
if /i "%binAction%" EQU "CBA" support\sfk echo [%bluetext%] "%nandfolder2%"
echo.
echo This is the recipient\target Wii's nand.bin:
if /i "%binAction%" EQU "CAB" support\sfk echo [%bluetext%] "%nandfolder2%"
if /i "%binAction%" EQU "CBA" support\sfk echo [%bluetext%] "%cmdinput%"
support\sfk -spat echo \x20Date of recipient\x5ctarget Wii's nand.bin: [%yellowtext%]%nanddate%
echo.
echo Are these settings correct?
echo.
echo Y = Yes, run Punetwiin then check the new nand with nandBinCheck!
echo N = No, the donor and target are reversed
echo B = Back
echo.
set /p PunetwiinConfirm= Enter Selection Here:
if "%PunetwiinConfirm%"=="" goto:badkey
if /i "%PunetwiinConfirm%" EQU "B" goto:Punetwiin
if /i "%PunetwiinConfirm%" NEQ "N" goto:skip
if /i "%binAction%" EQU "CAB" (set binAction=CBA) else (set binAction=CAB)
goto:PunetwiinConfirm
:skip
if /i "%PunetwiinConfirm%" EQU "Y" goto:RunPunetwiin
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:PunetwiinConfirm
:RunPunetwiin
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
if /i "%binAction%" EQU "CAB" set "nand1=%cmdinput%"
if /i "%binAction%" EQU "CAB" set "nand2=%nandfolder2%"
if /i "%binAction%" EQU "CBA" set "nand1=%nandfolder2%"
if /i "%binAction%" EQU "CBA" set "nand2=%cmdinput%"
if exist temp\Punetwiin\punetwiin.exe goto:skipDL
echo.
echo Downloading Punetwiin...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/Punetwiin.zip" -O temp\Punetwiin.zip
if exist temp\Punetwiin.zip support\7za x -aoa "temp\Punetwiin.zip" -o"temp\Punetwiin" -r
if exist temp\Punetwiin.zip del temp\Punetwiin.zip>nul
:skipDL
if not exist temp\Punetwiin\punetwiin.exe (echo Punetwiin failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if exist temp\nandBinCheck\nandBinCheck.exe goto:skipDL
echo.
echo Downloading nandBinCheck...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/nandBinCheck.zip"
if exist nandBinCheck.zip support\7za x -aoa "nandBinCheck.zip" -o"temp\nandBinCheck" -r
if exist nandBinCheck.zip del nandBinCheck.zip>nul
:skipDL
if not exist temp\nandBinCheck\nandBinCheck.exe (echo nandBinCheck failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo.
echo Making preparations to run Punetwiin and clone the nand...
echo Built: "%nand1:~0,-4%_Punetwiin.bin">"%nand1:~0,-4%_Punetwiin_Info.txt"
echo From Donor: "%nand1%">>"%nand1:~0,-4%_Punetwiin_Info.txt"
echo For Target: "%nand2%">>"%nand1:~0,-4%_Punetwiin_Info.txt"
echo @echo Off>temp\Punetwiin\script.bat
echo title ModMii: Cloning "%nand1%">>temp\Punetwiin\script.bat
echo echo Building: "%nand1:~0,-4%_Punetwiin.bin">>temp\Punetwiin\script.bat
echo echo From Donor: "%nand1%">>temp\Punetwiin\script.bat
echo echo For Target: "%nand2%">>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
::save a copy of nand2 so it doesn't overwrite the original
echo echo Saving a copy of "%nand2%" to avoid overwriting the original...>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo copy /y /v "%nand2%" "%nand1:~0,-4%_incomplete.bin"^>nul>>temp\Punetwiin\script.bat
echo echo Running Punetwiin...>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo "%cd%\temp\Punetwiin\punetwiin.exe" "%nand1%" "%nand1:~0,-4%_incomplete.bin" -force>>temp\Punetwiin\script.bat
echo move /y "%nand1:~0,-4%_incomplete.bin" "%nand1:~0,-4%_Punetwiin.bin"^>nul>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo echo Checking "%nand1:~0,-4%_Punetwiin.bin" with nandBinCheck>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
if /i "%ModMiiverbose%" EQU "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%nand1:~0,-4%_Punetwiin.bin" -all>>temp\Punetwiin\script.bat
if /i "%ModMiiverbose%" NEQ "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%nand1:~0,-4%_Punetwiin.bin" -all -v>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo cd /d "%cd%\Support" >>temp\Punetwiin\script.bat
echo sfk echo [%bluetext%]FINISHED CLONING >>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo echo Built and checked: "%nand1:~0,-4%_Punetwiin.bin">>temp\Punetwiin\script.bat
echo echo From Donor: "%nand1%">>temp\Punetwiin\script.bat
echo echo For Target: "%nand2%">>temp\Punetwiin\script.bat
echo echo Build info saved here: "%nand1:~0,-4%_Punetwiin_Info.txt">>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]YOU SHOULD REVIEW THE ABOVE OUTPUT FROM PUNETWIIN AND NANDBINCHECK BEFORE RESTORING>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]And remember that restoring this nand has some risks if the target console does not have bootmii boot2.>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]Generally this is not something that should be done frequently.>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo echo Press any key to exit.>>temp\Punetwiin\script.bat
if /i "%AudioOption%" EQU "on" echo start nircmd.exe mediaplay 3000 "%Success.mp3:~8%">>temp\Punetwiin\script.bat
echo pause^>nul>>temp\Punetwiin\script.bat
echo exit>>temp\Punetwiin\script.bat
start temp\Punetwiin\script.bat
exit
:DefragMii
::get date of nand
dir /T:W "%cmdinput%">temp\temp.txt
support\sfk filter -quiet temp\temp.txt ++".bin" -rep _" *"__ -write -yes
set /p nand0date= <temp\temp.txt
set nandfolder2=
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
echo.
support\sfk echo [%cyantext%]DefragMii
echo.
support\sfk echo [%yellowtext%]WARNING:[def] Using DefragMii\Punetwiin has some risks if the target console does not have bootmii boot2.
echo Generally this is not something that should be done frequently.
echo Make sure the target console's nand was dumped recently so Punetwiin is aware of all the latest bad blocks.
echo.
support\sfk echo [%bluetext%] Supplied nand.bin: "%cmdinput%"
support\sfk -spat echo \x20Date of supplied nand.bin: [%yellowtext%]%nand0date%
echo.
echo Choose an action:
echo.
echo D = Defragment nand now and check it with nandBinCheck
echo [nand.bin] = Supply a more recent nand backup from the same Wii to avoid new bad blocks, then run nandBinCheck
echo B = Back
echo.
support\sfk echo [%bluetext%] Optional: update this nand backup to avoid new bad blocks by dragging a more recent nand backup from the same Wii
support\sfk echo [%bluetext%] onto this window and hitting Enter
echo.
set nandfolder2=?
setlocal ENABLEDELAYEDEXPANSION
set /p nandfolder2= Enter Selection Here:
::remove quotes
set "nandfolder2=!nandfolder2:"=!"
set "nandfolder2=!nandfolder2:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%nandfolder2%" EQU "?" goto:badkey
if "%nandfolder2%"=="" goto:badkey
if /i "%nandfolder2%" EQU "D" set "nandfolder2=%cmdinput%"
if /i "%nandfolder2%" EQU "B" goto:binDrop
if /i "%nandfolder2:~-4%" NEQ ".bin" goto:badkey
if not exist "%nandfolder2%" goto:badkey
goto:DefragMii2
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:Punetwiin
:DefragMii2
cls
support\sfk echo [%redtext%]ModMii v%currentversion% nand.bin tools
set "nand1=%cmdinput%"
set "nand2=%nandfolder2%"
::confirm keys are the same if using 2 different nands
if /i "%nand1%" NEQ "%nand2%" goto:getkeys
::get nandfile and nandfolder names
set "nandfile=%nand1:*\=%"
set "nandfolder=%nand1%"
goto:stripnandfile
:getkeys
if not exist temp\nand-tools\nand-aes-dump.exe goto:DL
if not exist temp\nand-tools\NAND-bin2raw.exe goto:DL
if not exist temp\nand-tools\zestig.exe goto:DL
goto:skipDL
:DL
echo.
echo Downloading nand-tools...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/nand-tools.zip" -O temp\nand-tools.zip
if exist temp\nand-tools.zip support\7za x -aoa "temp\nand-tools.zip" -o"temp\nand-tools" -r
if exist temp\nand-tools.zip del temp\nand-tools.zip>nul
:skipDL
if not exist temp\nand-tools\nand-aes-dump.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\nand-tools\NAND-bin2raw.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\nand-tools\zestig.exe (echo nand-tools failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo.
echo Confirming nands are for the same console...
echo.
::get nandfile and nandfolder names
set "nandfile=%nand1:*\=%"
set "nandfolder=%nand1%"
set afterkeys=stripnandfile2
goto:stripnandfile
:stripnandfile2
set "nandfile1=%nandfile%"
set "nandfolder1=%nandfolder%"
move /y nand-key.bin "%ModMiiDir%\temp\nand-key1.bin">nul
if exist "%nandfolder%\nand-key.bin.modmii.bak" move /y "%nandfolder%\nand-key.bin.modmii.bak" "%nandfolder%\nand-key.bin">nul
cd /d "%ModMiiDir%"
set "nandfile=%nand2:*\=%"
set "nandfolder=%nand2%"
set afterkeys=comparekeys
goto:stripnandfile
:comparekeys
set "nandfile2=%nandfile%"
set "nandfolder2=%nandfolder%"
move /y nand-key.bin "%ModMiiDir%\temp\nand-key2.bin">nul
if exist "%nandfolder%\nand-key.bin.modmii.bak" move /y "%nandfolder%\nand-key.bin.modmii.bak" "%nandfolder%\nand-key.bin">nul
cd /d "%ModMiiDir%"
support\sfk md5 -quiet "temp\nand-key1.bin" "temp\nand-key2.bin"
if not errorlevel 1 (echo Confirmed!) & (goto:skipkeys)
echo Nands are for different Wii's, try cloning the Nand instead. Exiting...
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:skipkeys
cd /d "%ModMiiDir%"
if exist temp\nand-key1.bin del temp\nand-key1.bin >nul
if exist temp\nand-key2.bin del temp\nand-key2.bin >nul
if exist temp\Punetwiin\punetwiin.exe goto:skipDL
echo.
echo Downloading Punetwiin...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/Punetwiin.zip" -O temp\Punetwiin.zip
if exist temp\Punetwiin.zip support\7za x -aoa "temp\Punetwiin.zip" -o"temp\Punetwiin" -r
if exist temp\Punetwiin.zip del temp\Punetwiin.zip>nul
:skipDL
if not exist temp\Punetwiin\punetwiin.exe (echo Punetwiin failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if exist temp\nandBinCheck\nandBinCheck.exe goto:skipDL
echo.
echo Downloading nandBinCheck...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/nandBinCheck.zip"
if exist nandBinCheck.zip support\7za x -aoa "nandBinCheck.zip" -o"temp\nandBinCheck" -r
if exist nandBinCheck.zip del nandBinCheck.zip>nul
:skipDL
if not exist temp\nandBinCheck\nandBinCheck.exe (echo nandBinCheck failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo.
echo Making preparations to run Punetwiin and defragment the nand...
::echo Built: "%nand1:~0,-4%_Defragged.bin">"%nand1:~0,-4%_Defragged_Info.txt"
::echo From Donor: "%nand1%">>"%nand1:~0,-4%_Defragged_Info.txt"
::echo For Target: "%nand2%">>"%nand1:~0,-4%_Defragged_Info.txt"
echo @echo Off>temp\Punetwiin\script.bat
echo title ModMii: Defragmenting "%nand1%">>temp\Punetwiin\script.bat
echo echo Building: "%nand1:~0,-4%_Defragged.bin">>temp\Punetwiin\script.bat
if /i "%nand1%" NEQ "%nand2%" echo echo Source: "%nand1%">>temp\Punetwiin\script.bat
if /i "%nand1%" NEQ "%nand2%" echo echo Avoiding Bad Blocks from: "%nand2%">>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
::save a copy of nand2 so it doesn't overwrite the original
echo echo Saving a copy of "%nand2%" to avoid overwriting the original...>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo copy /y /v "%nand2%" "%nand1:~0,-4%_incomplete.bin"^>nul>>temp\Punetwiin\script.bat
echo echo Running Punetwiin...>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo "%cd%\temp\Punetwiin\punetwiin.exe" "%nand1%" "%nand1:~0,-4%_incomplete.bin" -force>>temp\Punetwiin\script.bat
echo move /y "%nand1:~0,-4%_incomplete.bin" "%nand1:~0,-4%_Defragged.bin"^>nul>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo echo Checking "%nand1:~0,-4%_Defragged.bin" with nandBinCheck>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
if /i "%ModMiiverbose%" EQU "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%nand1:~0,-4%_Defragged.bin" -all>>temp\Punetwiin\script.bat
if /i "%ModMiiverbose%" NEQ "off" echo "%cd%\temp\nandBinCheck\nandBinCheck.exe" "%nand1:~0,-4%_Defragged.bin" -all -v>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo cd /d "%cd%\Support" >>temp\Punetwiin\script.bat
echo sfk echo [%bluetext%]FINISHED DEFRAGGING >>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo echo Built and checked: "%nand1:~0,-4%_Defragged.bin">>temp\Punetwiin\script.bat
echo echo From Donor: "%nand1%">>temp\Punetwiin\script.bat
echo echo For Target: "%nand2%">>temp\Punetwiin\script.bat
::echo echo Build info saved here: "%nand1:~0,-4%_Defragged_Info.txt">>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]YOU SHOULD REVIEW THE ABOVE OUTPUT FROM PUNETWIIN AND NANDBINCHECK BEFORE RESTORING>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]And remember that restoring this nand has some risks if the target console does not have bootmii boot2.>>temp\Punetwiin\script.bat
echo sfk echo [%yellowtext%]Generally this is not something that should be done frequently.>>temp\Punetwiin\script.bat
echo echo ------------------>>temp\Punetwiin\script.bat
echo sfk echo You can close this window now, or [%bluetext%]press any key to exit and open the output folder.>>temp\Punetwiin\script.bat
if /i "%AudioOption%" EQU "on" echo start nircmd.exe mediaplay 3000 "%Success.mp3:~8%">>temp\Punetwiin\script.bat
echo pause^>nul>>temp\Punetwiin\script.bat
echo explorer "%nandfolder1%">>temp\Punetwiin\script.bat
echo exit>>temp\Punetwiin\script.bat
start temp\Punetwiin\script.bat
exit
:notbin
::----------wiiload drag and drop---------------
if /i "%cmdinput:~-4%" EQU ".elf" goto:WiiloadDragged
if /i "%cmdinput:~-4%" NEQ ".dol" goto:notWiiload
::support\sfk echo [%redtext%]ModMii v%currentversion%
:WiiloadDragged
if not exist "%cmdinput%" goto:notWiiload
if exist "%cmdinput%\" goto:notWiiload
::pass, get folder to open when any key is pressed
::get binary and mympath names, i.e. get filename and get folder full path not including filename
set "binary=%cmdinput:*\=%"
set "binarypath=%cmdinput%"
:stripbinary
set "binary=%binary:*\=%"
echo "%binary%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripbinary
echo set "binarypath=%%binarypath:%binary%=%%">temp\temp.bat
call temp\temp.bat
set "binarypath=%binarypath:~0,-1%"
::echo binary: "%binary%"
::echo binarypath: "%binarypath%"
if not exist "%binarypath%\meta.xml" goto:nometa
::remove comments from a copy of the meta
copy /y "%binarypath%\meta.xml" "temp\temp.xml">nul
support\sfk filter temp\temp.xml -cut "<!--" to "-->" -write -yes>nul
::get metaname
support\sfk filter temp\temp.xml -nocheck -inc "<name>" to "</name>" ++"<name>" -rep _*"<name>"_" "_ -rep _"</name>"*__ -join>"temp\temp.txt"
set MetaName=
set /p MetaName= <"temp\temp.txt"
::echo "%AppName%"
set wiiloadArg=
findStr /I "<ahb_access/>" "temp\temp.xml" >nul
IF NOT ERRORLEVEL 1 set "wiiloadArg= ahb_access"
findStr /I "<no_ios_reload/>" "temp\temp.xml" >nul
IF NOT ERRORLEVEL 1 set "wiiloadArg=%wiiloadArg% no_ios_reload"
support\sfk filter temp\temp.xml -nocheck -inc "<arg>" to "</arg>" ++"<arg>" -rep _*"<arg>"_" "_ -rep _"</arg>"*__ -join>"temp\temp.txt"
set MoreWiiloadArgs=
set /p MoreWiiloadArgs= <"temp\temp.txt"
if "%MoreWiiloadArgs%"=="" goto:nometa
set "wiiloadArg=%wiiloadArg%%MoreWiiloadArgs%"
:nometa
set WiiIP=
if exist temp\WiiIP.txt set /p WiiIP= <temp\WiiIP.txt
cls
support\sfk echo [%redtext%]ModMii v%currentversion% App Launcher
echo.
if not "%MetaName%"=="" support\sfk echo Launching [%bluetext%]"%MetaName%"
if not "%MetaName%"=="" echo.
echo Start the Homebrew Channel before continuing.
echo.
if not "%WiiIP%"=="" support\sfk echo If [%bluetext%]%WiiIP%[def] is your Wii's IP address, enter Y or leave the selection blank to launch the app
if not "%WiiIP%"=="" echo.
if not "%WiiIP%"=="" echo To update your Wii's IP address and launch the app, enter the new address now; e.g 192.168.1.6
if "%WiiIP%"=="" support\sfk echo [%bluetext%]Enter your Wii's IP Address and press enter to launch the loaded app; e.g 192.168.1.6
echo.
support\sfk -spat echo [%bluetext%]wiiload.exe \x22"%cmdinput%"\x22"%wiiloadArg%"
echo.
echo To check your Wii IP address press home while in the HBC, but remember to exit the Home Menu before continuing.
echo If you see 'Network Not Initialized' you must first connect the console to WiFi.
echo.
echo Enter "Help" for an instructional video on checking your Wii's IP Address.
echo.
echo Enter "+" to add a new argument, e.g. --skipIOS=0 for SysCheck to skip checking an IOS, just change 0 to the IOS to skip
if not "%wiiloadArg%"=="" echo Enter "-" to remove last argument
echo.
set WiiLoadPrompt=?
if not "%WiiIP%"=="" set WiiLoadPrompt=Y
::setlocal ENABLEDELAYEDEXPANSION
set /p WiiLoadPrompt= Enter Selection Here:
::remove quotes
set WiiLoadPrompt=%WiiLoadPrompt:"=%
::setlocal DISABLEDELAYEDEXPANSION
If /i "%WiiLoadPrompt%" EQU "?" goto:badkey
if /i "%WiiLoadPrompt%" EQU "help" (start https://www.youtube.com/embed/JSyIDx35TVo) & (goto:nometa)
if /i "%WiiLoadPrompt%" EQU "+" goto:AddArgument
::remove last arg
if "%wiiloadArg%"=="" goto:noargs
if /i "%WiiLoadPrompt%" NEQ "-" goto:noargs
:getlastarg
set "lastarg=%wiiloadArg:~1%"
set "lastarg=%lastarg:* =%"
::set "mympath=%wiiloadArg%"
:striplastarg
set "lastarg=%lastarg:* =%"
echo "%lastarg%">temp\temp.txt
findStr /C:" " temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:striplastarg
echo "%wiiloadArg%">temp\temp.txt
set "lastarg=%lastarg:_=\x5f%"
::echo %lastarg%
support\sfk filter -spat temp\temp.txt -lsrep _"\x22"__ -lerep _" %lastarg%\x22"__ -write -yes>nul
set /p wiiloadArg= <temp\temp.txt
set testarg=
set /p testarg= <temp\temp.txt
if "%testarg%"=="" set wiiloadArg=
goto:nometa
:noargs
if "%WiiIP%"=="" goto:skip
If /i "%WiiLoadPrompt%" EQU "Y" set "WiiLoadPrompt=%WiiIP%"
:skip
::check valid IP
powershell -nologo -noprofile -Command "[ipaddress]::TryParse('%WiiLoadPrompt%',[ref][ipaddress]::Loopback)" | findstr "False">NUL && goto:badkey
::check for 3 periods
set "string=%WiiLoadPrompt%"
set /a dotcount=0
setlocal EnableDelayedExpansion
if defined string (set ^"strtmp=!string:.=^
%= empty string =%
!^") else set "strtmp="
for /F %%C in ('cmd /V /C echo(^^!strtmp^^!^| find /C /V ""') do set /A "dotcount=%%C-1"
setlocal DISABLEDELAYEDEXPANSION
::echo "!string!" contains %dotcount% periods.
if /i "%dotcount%" EQU "3" goto:pingme
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:nometa
:AddArgument
echo.
echo Include ONE space in-between arguments to add multiple arguments at the same time.
echo.
set AddArgument=?
::setlocal ENABLEDELAYEDEXPANSION
set /p AddArgument= Add argument(s):
::remove quotes
set AddArgument=%AddArgument:"=%
::setlocal DISABLEDELAYEDEXPANSION
If /i "%AddArgument%" EQU "?" goto:nometa
::echo %AddArgument%
if "%AddArgument%"=="" goto:nometa
::check for insane argument with 2 spaces
echo "%AddArgument%"|findstr /I /C:" ">nul
IF NOT ERRORLEVEL 1 (echo Too many spaces in between arguments...) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:nometa)
if /i "%AddArgument:~0,1%" EQU " " set "AddArgument=%AddArgument:~1%"
if /i "%AddArgument:~-1%" EQU " " set "AddArgument=%AddArgument:~0,-1%"
set "wiiloadArg=%wiiloadArg% %AddArgument%"
goto:nometa
:pingme
::check if Wii is reachable
::echo.
::echo Pinging Wii to see if reachable...
ping -n 1 "%WiiLoadPrompt%"|findstr /I /C:"ms">nul
IF NOT ERRORLEVEL 1 goto:Pinged
support\sfk echo [%yellowtext%]Unable to reach IP %WiiLoadPrompt%, check your settings and try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:nometa
:Pinged
cls
set "WiiIP=%WiiLoadPrompt%"
> "temp\WiiIP.txt" ECHO %WiiIP%
support\sfk echo [%redtext%]ModMii v%currentversion% App Launcher
echo.
if not "%MetaName%"=="" support\sfk echo Launching app: [%bluetext%]"%MetaName%"
if "%MetaName%"=="" support\sfk echo Launching app: [%bluetext%]"%cmdinput%"
support\sfk echo To IP Address: [%bluetext%]"%WiiIP%"
echo.
echo If you have issues make sure you have the HBC open but that you are not inside its Home Menu,
echo Double check the Wii IP address and make sure both this device and the Wii are on the same network.
if exist temp\wiiload.exe goto:skip
if exist index.html del index.html>nul
::if not exist temp\hackmii_installer_v1.2.zip start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject "*.html" --reject "index.html.tmp" --reject "%2A" --reject "get.php@file=hackmii_installer_v1.0*" "https://bootmii.org/download/"
if not exist temp\hackmii_installer_v1.2.zip start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject html,tmp --accept-regex ".*hackmii_installer_v1\.2.*" "https://bootmii.org/download/"
if not exist temp\hackmii_installer_v1.2.zip move /y "get.php@file=hackmii_installer_v1.2.zip*" temp\hackmii_installer_v1.2.zip>nul
if exist get.* del /f /q get.*
support\7za e -aoa temp\hackmii_installer_v1.2.zip -o"temp" wiiload.exe -r
if exist temp\wiiload.exe goto:skip
if /i "%AudioOption%" EQU "on" start support\nircmd.exe mediaplay 3000 "%Fail.mp3%"
echo Unable to download wiiload, press any key to exit...
pause>nul
exit
:skip
set "WIILOAD=tcp:%WiiIP%"
echo.
support\sfk -spat echo Sending command: [%cyantext%]wiiload.exe \x22"%cmdinput%"\x22%wiiloadArg%
echo.
temp\wiiload.exe "%cmdinput%"%wiiloadArg%
echo.
echo exiting...
@ping 127.0.0.1 -n 4 -w 1000> nul
exit
:notWiiload
::----------wiiload zip drag and drop---------------
if /i "%cmdinput:~-4%" EQU ".zip" goto:Wiiloadzip
if /i "%cmdinput:~-4%" EQU ".rar" goto:Wiiloadzip
if /i "%cmdinput:~-3%" EQU ".7z" goto:Wiiloadzip
goto:notWiiloadzip
:Wiiloadzip
set cmdinputrar=
::support\sfk echo [%redtext%]ModMii v%currentversion%
if not exist "%cmdinput%" goto:notWiiloadzip
::pass, get folder to open when any key is pressed
::get binary and mympath and zip names, i.e. get filename and get folder full path not including filename
set "binary=%cmdinput:*\=%"
set "binarypath=%cmdinput%"
:stripbinary2
set "binary=%binary:*\=%"
echo "%binary%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripbinary2
echo set "binarypath=%%binarypath:%binary%=%%">temp\temp.bat
call temp\temp.bat
set "binarypath=%binarypath:~0,-1%"
::echo binary: "%binary%"
::echo binarypath: "%binarypath%"
:nometazip
set WiiIP=
if exist temp\WiiIP.txt set /p WiiIP= <temp\WiiIP.txt
cls
support\sfk echo [%redtext%]ModMii v%currentversion% HBC Transfer Tool
echo.
echo Wirelessly send apps to devices connected to your Wii.
echo.
echo ModMii supports transferring archives (zip, 7z, rar) both with and without an \apps\ folder (e.g. usbloader_gx or apps\usbloader_gx). Only one app per archive can be transferred at a time, and because the HBC's managing access is limited to the \apps\ folder any files outside of the apps folder will be skipped (e.g. roms, games, resources, etc.). Archives must include a boot.dol or boot.elf file in the app folder (but not both); other files and subfolders like meta\icon\etc. will get copied as well.
echo.
echo Start the Homebrew Channel and select destination device before continuing.
echo.
support\sfk echo [%bluetext%]Would you like to upload the contents of [%cyantext%]"%binary%" [%bluetext%]?
echo.
if not "%WiiIP%"=="" support\sfk echo If [%bluetext%]%WiiIP%[def] is your Wii's IP address, enter Y or leave the selection blank to upload the app
if not "%WiiIP%"=="" echo.
if not "%WiiIP%"=="" echo To update your Wii's IP address and copy the app, enter the new address now; e.g 192.168.1.6
if "%WiiIP%"=="" support\sfk echo [%bluetext%]Enter your Wii's IP Address and press enter to launch the loaded app; e.g 192.168.1.6
::echo.
::support\sfk echo [%bluetext%]wiiload.exe \""%cmdinput%"\"
echo.
echo To check your Wii IP address press home while in the HBC, but remember to exit the Home Menu before continuing.
echo If you see 'Network Not Initialized' you must first connect the console to WiFi.
echo.
echo Enter "Help" for an instructional video on checking your Wii's IP Address.
echo.
set WiiLoadPrompt=?
if not "%WiiIP%"=="" set WiiLoadPrompt=Y
::setlocal ENABLEDELAYEDEXPANSION
set /p WiiLoadPrompt= Enter Selection Here:
::remove quotes
set WiiLoadPrompt=%WiiLoadPrompt:"=%
::setlocal DISABLEDELAYEDEXPANSION
If /i "%WiiLoadPrompt%" EQU "?" goto:badkey
if /i "%WiiLoadPrompt%" EQU "help" (start https://www.youtube.com/embed/JSyIDx35TVo) & (goto:nometazip)
if "%WiiIP%"=="" goto:skip
If /i "%WiiLoadPrompt%" EQU "Y" set "WiiLoadPrompt=%WiiIP%"
:skip
::check valid IP
powershell -nologo -noprofile -Command "[ipaddress]::TryParse('%WiiLoadPrompt%',[ref][ipaddress]::Loopback)" | findstr "False">NUL && goto:badkey
::check for 3 periods
set "string=%WiiLoadPrompt%"
set /a dotcount=0
setlocal EnableDelayedExpansion
if defined string (set ^"strtmp=!string:.=^
%= empty string =%
!^") else set "strtmp="
for /F %%C in ('cmd /V /C echo(^^!strtmp^^!^| find /C /V ""') do set /A "dotcount=%%C-1"
setlocal DISABLEDELAYEDEXPANSION
::echo "!string!" contains %dotcount% periods.
if /i "%dotcount%" EQU "3" goto:pingme
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:nometazip
:pingme
::check if Wii is reachable
::echo.
::echo Pinging Wii to see if reachable...
ping -n 1 "%WiiLoadPrompt%"|findstr /I /C:"ms">nul
IF NOT ERRORLEVEL 1 goto:Pinged
support\sfk echo [%yellowtext%]Unable to reach IP %WiiLoadPrompt%, check your settings and try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:nometazip
:Pinged
cls
set "WiiIP=%WiiLoadPrompt%"
> "temp\WiiIP.txt" ECHO %WiiIP%
support\sfk echo [%redtext%]ModMii v%currentversion% HBC Transfer Tool
echo.
::echo Checking archive is not too large to transmit...
setlocal ENABLEDELAYEDEXPANSION
::check if over 25MB (I think limit is actually 20MB), check fails with some special characters so set to 1 if nul
echo set "GetFileSize=%%~z1" > %temp%\GetFileSize.bat
call %temp%\GetFileSize "!cmdinput!"
if "%GetFileSize%"=="" set GetFileSize=1
if %GetFileSize% LEQ 26214400 goto:not2big
support\sfk echo [%yellowtext%]"%cmdinput%" is too large to send over WiFi
echo.
echo exiting...
@ping 127.0.0.1 -n 4 -w 1000> nul
exit
:not2big
setlocal DISABLEDELAYEDEXPANSION
if /i "%cmdinput:~-4%" NEQ ".rar" goto:notrar
::download unrar if missing
::if not exist temp\UnRAR.exe echo.
if not exist temp\UnRAR.exe echo Downloading UnRAR
if not exist temp\UnRAR.exe start /min /wait support\wget --no-check-certificate -t 3 "https://sourceforge.net/projects/menuui/files/UnRAR.exe"
if exist UnRAR.exe move /y UnRAR.exe temp\UnRAR.exe>nul
echo The HBC only accepts ZIPs, ModMii will extract the RAR contents and save a temporary ZIP copy for transmission...
if exist "temp\rar" rd /s /q "temp\rar"> nul
mkdir temp\rar
temp\unrar.exe x -y "%cmdinput%" "temp\rar"
echo.
::change cmdinput to zip, but flag original
set "cmdinputrar=%cmdinput%"
set "cmdinput=%cmdinput:~0,-4%.zip"
cd temp\rar
..\..\support\7za a "%cmdinput%" * >nul
cd ..\..
if exist "temp\rar" rd /s /q "temp\rar"> nul
:notrar
set "HBC_Transfer=%cmdinput%"
set password=
set passwordcmd=
::check zip structure
if "%cmdinputrar%"=="" echo If this window immediately freezes after this line the archive requires a password, press any key to continue
if "%cmdinputrar%"=="" echo.
support\7za l "%cmdinput%" > "%temp%\zip.txt"
support\sfk filter -quiet "%temp%\zip.txt" -ls!"Listing archive:" -ls!"Path = " -write -yes
::check for password, check only works if file names are encrypted
findStr /I /B "Enter password" "%temp%\zip.txt" >nul
IF ERRORLEVEL 1 goto:nopassword1
::get password from user
for /f "usebackq tokens=*" %%p in (`powershell -Command "$pword = read-host 'Enter Password' -AsSecureString ; $BSTR=[System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($pword); [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)"`) do set password=%%p
echo.
::echo "%password%"
set "passwordcmd= -p"%password%""
::echo %passwordcmd%
support\7za l "%cmdinput%"%passwordcmd% > "%temp%\zip.txt"
support\sfk filter -quiet "%temp%\zip.txt" -ls!"Listing archive:" -ls!"Path = " -write -yes
:nopassword1
findStr /I /E "boot.dol" "%temp%\zip.txt" >nul
IF NOT ERRORLEVEL 1 goto:foundbin
findStr /I /E "boot.elf" "%temp%\zip.txt" >nul
IF NOT ERRORLEVEL 1 goto:foundbin
support\sfk echo [%yellowtext%]"%cmdinput%" does not contain a dol or an elf file
echo.
echo exiting...
@ping 127.0.0.1 -n 4 -w 1000> nul
exit
:foundbin
::check2 for password, this check is when filenames aren't protected but extraction is
if not "%password%"=="" goto:nopassword2
if exist temp\boot.dol del temp\boot.dol>nul
if exist temp\boot.elf del temp\boot.elf>nul
support\7za e -aoa "%cmdinput%" -o"temp" boot.dol boot.elf -r >nul
if exist temp\boot.dol for /F %%A in ("temp\boot.dol") do If %%~zA equ 0 del "temp\boot.dol"
if exist temp\boot.elf for /F %%A in ("temp\boot.elf") do If %%~zA equ 0 del "temp\boot.elf"
if exist temp\boot.dol goto:nopassword2
if exist temp\boot.elf goto:nopassword2
::get password from user
for /f "usebackq tokens=*" %%p in (`powershell -Command "$pword = read-host 'Enter Password' -AsSecureString ; $BSTR=[System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($pword); [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR)"`) do set password=%%p
echo.
::echo "%password%"
set "passwordcmd= -p"%password%""
::echo %passwordcmd%
::support\7za l "%cmdinput%"%passwordcmd% > "%temp%\zip.txt"
::support\sfk filter -quiet "%temp%\zip.txt" -ls!"Listing archive:" -ls!"Path = " -write -yes
:nopassword2
if exist temp\boot.dol del temp\boot.dol>nul
if exist temp\boot.elf del temp\boot.elf>nul
findStr /I apps\ "%temp%\zip.txt" >nul
IF ERRORLEVEL 1 goto:noAppsDir
::support\sfk -spat echo [%yellowtext%]"%cmdinput%"
echo The selected archive file includes an "apps" directory and is not transferable in it's current state
if /i "%cmdinput:~-4%" EQU ".zip" echo ModMii will create a temporary usable copy of the ZIP for transmission...
if /i "%cmdinput:~-4%" NEQ ".zip" echo The HBC only accepts ZIPs, ModMii will create a temporary usable ZIP copy of the %cmdinput:~-3%
if exist "temp\HBC_Transfer.zip" del "temp\HBC_Transfer.zip">nul
if exist "temp\zip" rd /s /q "temp\zip"> nul
if not exist "temp\zip" mkdir "temp\zip"
support\7za x -aoa "%cmdinput%"%passwordcmd% -o"temp\zip"> nul
cd temp\zip\apps
del /f /q *.*
..\..\..\support\7za a "..\..\HBC_Transfer.zip" *
cd ..\..\..
::"%cmdinput%"
echo.
set "HBC_Transfer=%cd%\temp\HBC_Transfer.zip"
::---check for folders outside of apps folder and display yellow warning if exist
rd /s /q "temp\zip\apps"> nul
::anything left in temp\zip is not getting sent, check if zip folder is empty...
::empty folder check, if not empty goto something, if empty delete it
dir /A /B "temp\zip" | findstr /R ".">NUL && goto:notempty
::empty
goto:letsgo
:notempty
::not empty, show warning
support\sfk -spat echo [%yellowtext%]Warning: this archive contains the following items that are outside of the apps folder that will NOT get transferred.
support\sfk -spat echo [%yellowtext%]Files outside of /apps need to be transferred manually, the HBC won't touch those.
dir /b temp\zip
if exist "temp\zip" rd /s /q "temp\zip"> nul
echo.
goto:letsgo
:noAppsDir
::need to repack without password if it has a password (and not already repacked to correct apps folder)
if /i "%cmdinput:~-4%" NEQ ".zip" goto:forceRepack
if "%password%"=="" goto:letsgo
:forceRepack
::support\sfk -spat echo [%yellowtext%]"%cmdinput%"
echo A copy of the archive without a password is needed to transfer for the HBC
if /i "%cmdinput:~-4%" EQU ".zip" echo ModMii will create a temporary usable copy of the ZIP for transmission...
if /i "%cmdinput:~-4%" NEQ ".zip" echo The HBC only accepts ZIPs, ModMii will create a temporary usable ZIP copy of the %cmdinput:~-3% for transmission...
if exist "temp\HBC_Transfer.zip" del "temp\HBC_Transfer.zip">nul
if exist "temp\zip" rd /s /q "temp\zip"> nul
if not exist "temp\zip" mkdir "temp\zip"
support\7za x -aoa "%cmdinput%"%passwordcmd% -o"temp\zip"> nul
cd temp\zip
..\..\support\7za a "..\HBC_Transfer.zip" *
cd ..\..
::"%cmdinput%"
echo.
set "HBC_Transfer=%cd%\temp\HBC_Transfer.zip"
:letsgo
support\sfk echo Uploading app from archive: [%bluetext%]"%cmdinput%"
support\sfk echo To IP Address: [%bluetext%]"%WiiIP%"
echo.
echo If you have issues make sure you have the HBC open but that you are not inside its Home Menu,
echo Double check the Wii IP address and make sure both this device and the Wii are on the same network.
if exist temp\wiiload.exe goto:skip
if exist index.html del index.html>nul
::if not exist temp\hackmii_installer_v1.2.zip start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject "*.html" --reject "index.html.tmp" --reject "%2A" --reject "get.php@file=hackmii_installer_v1.0*" "https://bootmii.org/download/"
if not exist temp\hackmii_installer_v1.2.zip start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject html,tmp --accept-regex ".*hackmii_installer_v1\.2.*" "https://bootmii.org/download/"
if not exist temp\hackmii_installer_v1.2.zip move /y "get.php@file=hackmii_installer_v1.2.zip*" temp\hackmii_installer_v1.2.zip>nul
if exist get.* del /f /q get.*
support\7za e -aoa temp\hackmii_installer_v1.2.zip -o"temp" wiiload.exe -r
if exist temp\wiiload.exe goto:skip
if /i "%AudioOption%" EQU "on" start support\nircmd.exe mediaplay 3000 "%Fail.mp3%"
echo Unable to download wiiload, press any key to exit...
pause>nul
exit
:skip
set "WIILOAD=tcp:%WiiIP%"
echo.
support\sfk echo Sending command: [%cyantext%]wiiload.exe \""%HBC_Transfer%"\"
echo.
temp\wiiload.exe "%HBC_Transfer%"
echo.
echo exiting...
@ping 127.0.0.1 -n 3 -w 1000> nul
::delete copy if applicable
if exist "temp\HBC_Transfer.zip" del "temp\HBC_Transfer.zip">nul
::if cmdinputrar is not nul, cmdinput is a zip copy of the original rar and should be deleted
if not "%cmdinputrar%"=="" del "%cmdinput%">nul
@ping 127.0.0.1 -n 7 -w 1000> nul
exit
:notWiiloadzip
::----------Wad drag and drop (single files) unpack and send to wii---------------
if /i "%cmdinput:~-4%" NEQ ".wad" goto:notwad
if not exist "%cmdinput%" goto:notwad
if exist "%cmdinput%\" goto:notwad
:WADdrop
title ModMii WAD tools
set WiiIP=
if exist temp\WiiIP.txt set /p WiiIP= <temp\WiiIP.txt
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
echo What would you like to do with this WAD?
echo.
support\sfk.exe echo [%bluetext%]"%cmdinput%"
echo.
::display WAD info, if sane
set wadtype=system
support\sharpii.exe Wad -i "%cmdinput%" | findstr "An unknown error occured">NUL && goto:skip
support\sharpii.exe Wad -i "%cmdinput%"
set wadtype=channel
echo.
:skip
if not "%WiiIP%"=="" support\sfk.exe -spat echo \x20 \x20 \x20 \x20 \x20 S = Send WAD to Homebrew Channel using [%bluetext%]Saved IP address: %WiiIP%
echo [IP] = Send WAD to Homebrew Channel with IP entered; e.g 192.168.1.6
echo HELP = Instructional video on checking your Wii's IP Address
If /i "%wadtype%" EQU "channel" echo M = Modify Channel WAD Attributes (Title, Title ID, IOS, DOL, Fakesign)
If /i "%wadtype%" EQU "system" echo M = Modify IOS WAD Attributes (Patches, Slot, Version)
::If /i "%wadtype%" EQU "system" echo Note: if WAD is not an IOS modifications will fail
echo U = Unpack WAD
echo O = Unpack WAD and Open Output Directory
echo E = Exit
echo.
support\sfk.exe echo [%bluetext%]Notes on Sending WADs to HBC:
echo.
echo Start the Homebrew Channel before trying to send a WAD to your Wii.
echo WADs larger than 8MB cannot be sent to the Wii over WiFi.
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing the wrong WAD to your Wii can cause brick, choose wisely and make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection!
echo.
echo To check your Wii IP address press home while in the HBC, but remember to exit the Home Menu before continuing.
echo If you see 'Network Not Initialized' you must first connect the console to WiFi. Enter 'Help' if you need it.
echo.
set SendWAD=?
::if not "%WiiIP%"=="" set SendWAD=S
::setlocal ENABLEDELAYEDEXPANSION
set /p SendWAD= Enter Selection Here:
::remove quotes
set "SendWAD=%SendWAD:"=%"
::set "SendWAD=!SendWAD:^^=^!"
::setlocal DISABLEDELAYEDEXPANSION
If /i "%SendWAD%" EQU "?" goto:badkey
if /i "%SendWAD%" EQU "help" (start https://www.youtube.com/embed/JSyIDx35TVo) & (goto:WADdrop)
if /i "%SendWAD%" EQU "U" goto:unpackwad
if /i "%SendWAD%" EQU "O" goto:unpackwad
if /i "%SendWAD%" EQU "M" goto:modifywad
if /i "%SendWAD%" EQU "E" exit
if "%WiiIP%"=="" goto:skip
If /i "%SendWAD%" EQU "S" set "SendWAD=%WiiIP%"
:skip
::check valid IP
powershell -nologo -noprofile -Command "[ipaddress]::TryParse('%SendWAD%',[ref][ipaddress]::Loopback)" | findstr "False">NUL && goto:badkey
::check for 3 periods
set "string=%SendWAD%"
set /a dotcount=0
setlocal EnableDelayedExpansion
if defined string (set ^"strtmp=!string:.=^
%= empty string =%
!^") else set "strtmp="
for /F %%C in ('cmd /V /C echo(^^!strtmp^^!^| find /C /V ""') do set /A "dotcount=%%C-1"
setlocal DISABLEDELAYEDEXPANSION
::echo "!string!" contains %dotcount% periods.
if /i "%dotcount%" EQU "3" goto:pingme
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WADdrop
:pingme
::check if Wii is reachable
::echo.
::echo Pinging Wii to see if reachable...
ping -n 1 "%SendWAD%"|findstr /I /C:"ms">nul
IF NOT ERRORLEVEL 1 goto:Pinged
support\sfk echo [%yellowtext%]Unable to reach IP %SendWAD%, check your settings and try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WADdrop
:Pinged
cls
set "WiiIP=%SendWAD%"
> "temp\WiiIP.txt" ECHO %WiiIP%
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Sending Wad: [%bluetext%]"%cmdinput%"
support\sfk echo To IP Address: [%bluetext%]"%WiiIP%"
echo.
echo If you have issues make sure you have the HBC open but that you are not inside its Home Menu,
echo Double check the Wii IP address and make sure both this device and the Wii are on the same network.
echo.
support\sfk -spat echo "Sending command: [%cyantext%]sharpii.exe SendWad -ip "%WiiIP%" -wad \x22"%cmdinput%"\x22 -ahb"
echo.
support\sharpii.exe SendWad -ip %WiiIP% -wad "%cmdinput%" -ahb
echo.
echo exiting...
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:unpackwad
if not exist "%cmdinput:~0,-4%" mkdir "%cmdinput:~0,-4%"
support\wadmii -in "%cmdinput%" -out "%cmdinput:~0,-4%"
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%cmdinput:~0,-4%\*.tmd" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%cmdinput:~0,-4%\*.tmd" goto:UnpackFail
echo.
echo WAD unpacked to folder: "%cmdinput:~0,-4%"
echo.
echo exiting...
if /i "%SendWAD%" EQU "O" explorer "%cmdinput:~0,-4%"
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:UnpackFail
::empty folder check, if not empty goto something, if empty delete it
dir /A /B "%cmdinput:~0,-4%" | findstr /R ".">NUL && goto:notempty
rd /s /q "%cmdinput:~0,-4%"> nul
:notempty
echo.
(echo Something went wrong, press any key to exit...) & (pause>nul) & (exit)
:modifywad
If /i "%wadtype%" NEQ "channel" goto:modifyIOSwad
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify Channel WAD: [%cyantext%]Title[def], Title ID, IOS, DOL, Fakesign
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
:FirstRandom
if not "%RandomNum%"=="" goto:notFirstRandom
set "RandomNum=%random%"
set "WADcopy=%cmdinput:~0,-4%-Mod%RandomNum%.wad"
if exist "%WADcopy%" (set RandomNum=) & (goto:FirstRandom)
:notFirstRandom
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]-Mod%RandomNum%[%bluetext%].wad"
echo.
set "WADinfo=%cmdinput%"
if exist "%WADcopy%" set "WADinfo=%WADcopy%"
support\sharpii.exe Wad -i "%WADinfo%"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Modify Channel Title
echo.
echo If you would like to change the Title, enter a new Title now (max length is 20 chars).
echo.
echo To leave the Title unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set WADtitle=?
setlocal ENABLEDELAYEDEXPANSION
set /p WADtitle= Enter Selection Here:
::remove quotes
set "WADtitle=%WADtitle:"=%"
set "WADtitle=!WADtitle:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
If /i "%WADtitle%" EQU "?" goto:modifyID
if /i "%WADtitle%" EQU "B" goto:WADdrop
if /i "%WADtitle%" EQU "E" exit
::title 20 chars length check
if /i "%WADtitle:~20,1%" NEQ "" goto:badkey
::save copy and apply change
if not exist "%WADcopy%" copy /y "%cmdinput%" "%WADcopy%">nul
support\sharpii.exe Wad -e "%WADcopy%" "%WADcopy%" -title "%WADtitle%"
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyID
:badkey
echo Title is greater than 20 character maximum...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifywad
:modifyID
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify Channel WAD: Title, [%cyantext%]Title ID[def], IOS, DOL, Fakesign
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]-Mod%RandomNum%[%bluetext%].wad"
echo.
set "WADinfo=%cmdinput%"
if exist "%WADcopy%" set "WADinfo=%WADcopy%"
support\sharpii.exe Wad -i "%WADinfo%"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Modify Channel Title ID
echo.
echo If you would like to change the Title ID, enter a new 4-character Title ID now.
::echo Note: letters and numbers only; cannot contain spaces or special characters.
echo.
echo To leave the Title ID unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set WADtitleID=?
setlocal ENABLEDELAYEDEXPANSION
set /p WADtitleID= Enter Selection Here:
::remove quotes
set "WADtitleID=%WADtitleID:"=%"
set "WADtitleID=!WADtitleID:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
If /i "%WADtitleID%" EQU "?" goto:modifyIOS
if /i "%WADtitleID%" EQU "B" goto:modifywad
if /i "%WADtitleID%" EQU "E" exit
::title 4 chars length check
if /i "%WADtitleID:~4,1%" NEQ "" goto:badkey
if /i "%WADtitleID:~3,1%" EQU "" goto:badkey
::space check
::if /i "%WADtitleID:~0,1%" EQU " " goto:badkey
::if /i "%WADtitleID:~1,1%" EQU " " goto:badkey
::if /i "%WADtitleID:~2,1%" EQU " " goto:badkey
::if /i "%WADtitleID:~3,1%" EQU " " goto:badkey
::save copy and apply change
if not exist "%WADcopy%" copy /y "%cmdinput%" "%WADcopy%">nul
support\sharpii.exe Wad -e "%WADcopy%" "%WADcopy%" -id "%WADtitleID%"
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyIOS
:badkey
echo Title ID must be 4 characters...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyID
:modifyIOS
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify Channel WAD: Title, Title ID, [%cyantext%]IOS[def], DOL, Fakesign
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]-Mod%RandomNum%[%bluetext%].wad"
echo.
set "WADinfo=%cmdinput%"
if exist "%WADcopy%" set "WADinfo=%WADcopy%"
support\sharpii.exe Wad -i "%WADinfo%"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Modify Channel IOS
echo.
echo If you would like to change the IOS used by the channel, enter it now (must be between 3-254).
echo Note: The selected IOS should be installed on the Wii and capable of launching this title.
echo.
echo To leave the IOS unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set WADios=?
::setlocal ENABLEDELAYEDEXPANSION
set /p WADios= Enter Selection Here:
::remove quotes
set "WADios=%WADios:"=%"
::set "WADios=!WADios:^^=^!"
::setlocal DISABLEDELAYEDEXPANSION
If /i "%WADios%" EQU "?" goto:modifyDOL
if /i "%WADios%" EQU "B" goto:modifyID
if /i "%WADios%" EQU "E" exit
::IOS 3-254 check
::limit user input to X# of digits
if not "%WADios:~3%"=="" goto:badkey
if %WADios% LSS 3 goto:badkey
if %WADios% GTR 254 goto:badkey
::save copy and apply change
if not exist "%WADcopy%" copy /y "%cmdinput%" "%WADcopy%">nul
support\sharpii.exe Wad -e "%WADcopy%" "%WADcopy%" -ios "%WADios%"
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyDOL
:badkey
echo IOS must be between 3-254, try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyIOS
:modifyDOL
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify Channel WAD: Title, Title ID, IOS, [%cyantext%]DOL[def], Fakesign
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]-Mod%RandomNum%[%bluetext%].wad"
echo.
set "WADinfo=%cmdinput%"
if exist "%WADcopy%" set "WADinfo=%WADcopy%"
support\sharpii.exe Wad -i "%WADinfo%"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Modify Channel DOL
echo.
echo If you would like to change the DOL used by the channel, enter a new DOL or WAD to use instead.
echo Note: You can drag and drop the new DOL or WAD onto this window instead of manually typing it.
echo.
echo To leave the DOL unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set WADdol=?
setlocal ENABLEDELAYEDEXPANSION
set /p WADdol= Enter Selection Here:
::remove quotes
set "WADdol=%WADdol:"=%"
set "WADdol=!WADdol:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
If /i "%WADdol%" EQU "?" goto:modifyFakesign
if /i "%WADdol%" EQU "B" goto:modifyIOS
if /i "%WADdol%" EQU "E" exit
if not exist "%WADdol%" goto:badkey
if /i "%WADdol:~-4%" NEQ ".wad" goto:skipWADcheck
::reject system wads
support\sharpii.exe Wad -i "%WADdol%" | findstr "An unknown error occured">NUL && (echo This is a system WAD and cannot be used for this purpose, try again...) && (@ping 127.0.0.1 -n 2 -w 1000> nul) && (goto:modifyDOL)
goto:skip
:skipWADcheck
if /i "%WADdol:~-4%" NEQ ".dol" goto:badkey
:skip
::save copy and apply change
if not exist "%WADcopy%" copy /y "%cmdinput%" "%WADcopy%">nul
support\sharpii.exe Wad -e "%WADcopy%" "%WADcopy%" -dol "%WADdol%"
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyFakesign
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyDOL
:modifyFakesign
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify Channel WAD: Title, Title ID, IOS, DOL, [%cyantext%]Fakesign
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]-Mod%RandomNum%[%bluetext%].wad"
echo.
set "WADinfo=%cmdinput%"
if exist "%WADcopy%" set "WADinfo=%WADcopy%"
support\sharpii.exe Wad -i "%WADinfo%"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Fakesign Channel
echo.
echo Would you like to Fakesign the WAD?
echo.
echo To leave the WAD unchanged, leave the selection blank and press Enter to exit.
echo.
echo Y = Yes, fakesign it and exit
echo N = No, don't fakesign it and exit
echo B = Back
echo E = Exit
echo.
set WADfake=?
::setlocal ENABLEDELAYEDEXPANSION
set /p WADfake= Enter Selection Here:
::remove quotes
set "WADfake=%WADfake:"=%"
::set "WADfake=!WADfake:^^=^!"
::setlocal DISABLEDELAYEDEXPANSION
If /i "%WADfake%" EQU "?" goto:modifyFin
If /i "%WADfake%" EQU "N" goto:modifyFin
if /i "%WADfake%" EQU "B" goto:modifyDOL
if /i "%WADfake%" EQU "E" exit
if /i "%WADfake%" NEQ "Y" goto:badkey
::save copy and apply change
if not exist "%WADcopy%" copy /y "%cmdinput%" "%WADcopy%">nul
support\sharpii.exe Wad -e "%WADcopy%" "%WADcopy%" -f
:modifyFin
echo.
echo Channel modifications finished, exiting...
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyFakesign
:modifyIOSwad
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify IOS WAD: [%cyantext%]Patches[def], Slot, Version, Confirmation
echo.
support\sfk.exe echo Input: [%bluetext%]"%cmdinput%"
echo Note : Changes will be applied to a copy of the original WAD
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Apply Patches to IOS
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%yellowtext%]Warning:[def] If this WAD is not an IOS modifications will fail
echo.
echo A = All 4 available patches
echo N = No Patches (or leave the selection blank)
echo -FS = FakeSigning Patch
echo -ES = ES Identify Patch
echo -NP = Nand Permission Patch
echo -VP = Version Patch
echo B = Back
echo E = Exit
echo.
echo Select multiple patches by separating them by a space, e.g.
echo -----------------------------------------------------------
echo -FS -ES -NP
echo -NP -FS
echo -FS -ES -NP -VP
echo etc.
echo.
set ADVPATCH=?
setlocal ENABLEDELAYEDEXPANSION
set /p ADVPATCH= Enter Selection Here:
::remove quotes
set "ADVPATCH=%ADVPATCH:"=%"
set "ADVPATCH=!ADVPATCH:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
If /i "%ADVPATCH%" EQU "?" (set ADVPATCH=) & (goto:modifySlot)
If /i "%ADVPATCH%" EQU "N" (set ADVPATCH=) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "B" goto:WADdrop
if /i "%ADVPATCH%" EQU "E" exit
if /i "%ADVPATCH%" EQU "A" (set ADVPATCH=-FS -ES -NP -VP) & (goto:modifySlot)
::if lower case letters entered change to upper
if /i "%ADVPATCH%" EQU "-FS" (set ADVPATCH=-FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES" (set ADVPATCH=-ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP" (set ADVPATCH=-NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP" (set ADVPATCH=-VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -ES" (set ADVPATCH=-FS -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -FS" (set ADVPATCH=-ES -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -NP" (set ADVPATCH=-FS -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -FS" (set ADVPATCH=-NP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -VP" (set ADVPATCH=-FS -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -FS" (set ADVPATCH=-VP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -NP" (set ADVPATCH=-ES -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -ES" (set ADVPATCH=-NP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -VP" (set ADVPATCH=-ES -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -ES" (set ADVPATCH=-VP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -VP" (set ADVPATCH=-NP -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -NP" (set ADVPATCH=-VP -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -ES -NP" (set ADVPATCH=-FS -ES -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -NP -ES" (set ADVPATCH=-FS -NP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -FS -NP" (set ADVPATCH=-ES -FS -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -NP -FS" (set ADVPATCH=-ES -NP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -FS -ES" (set ADVPATCH=-NP -FS -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -ES -FS" (set ADVPATCH=-NP -ES -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -ES -VP" (set ADVPATCH=-FS -ES -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -VP -ES" (set ADVPATCH=-FS -VP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -FS -VP" (set ADVPATCH=-ES -FS -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -VP -FS" (set ADVPATCH=-ES -VP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -FS -ES" (set ADVPATCH=-VP -FS -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -ES -FS" (set ADVPATCH=-VP -ES -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -NP -VP" (set ADVPATCH=-FS -NP -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -VP -NP" (set ADVPATCH=-FS -VP -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -FS -VP" (set ADVPATCH=-NP -FS -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -VP -FS" (set ADVPATCH=-NP -VP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -NP -FS" (set ADVPATCH=-VP -NP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -FS -NP" (set ADVPATCH=-VP -FS -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -NP -VP" (set ADVPATCH=-ES -NP -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -VP -NP" (set ADVPATCH=-ES -VP -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -ES -VP" (set ADVPATCH=-NP -ES -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -VP -ES" (set ADVPATCH=-NP -VP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -ES -NP" (set ADVPATCH=-VP -ES -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -NP -ES" (set ADVPATCH=-VP -NP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -FS -ES -NP" (set ADVPATCH=-VP -FS -ES -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -FS -NP -ES" (set ADVPATCH=-VP -FS -NP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -ES -FS -NP" (set ADVPATCH=-VP -ES -FS -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -ES -NP -FS" (set ADVPATCH=-VP -ES -NP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -NP -FS -ES" (set ADVPATCH=-VP -NP -FS -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-VP -NP -ES -FS" (set ADVPATCH=-VP -NP -ES -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -FS -ES -VP" (set ADVPATCH=-NP -FS -ES -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -FS -VP -ES" (set ADVPATCH=-NP -FS -VP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -ES -FS -VP" (set ADVPATCH=-NP -ES -FS -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -ES -VP -FS" (set ADVPATCH=-NP -ES -VP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -VP -FS -ES" (set ADVPATCH=-NP -VP -FS -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-NP -VP -ES -FS" (set ADVPATCH=-NP -VP -ES -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -FS -NP -VP" (set ADVPATCH=-ES -FS -NP -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -FS -VP -NP" (set ADVPATCH=-ES -FS -VP -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -NP -FS -VP" (set ADVPATCH=-ES -NP -FS -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -NP -VP -FS" (set ADVPATCH=-ES -NP -VP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -VP -NP -FS" (set ADVPATCH=-ES -VP -NP -FS) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-ES -VP -FS -NP" (set ADVPATCH=-ES -VP -FS -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -ES -NP -VP" (set ADVPATCH=-FS -ES -NP -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -ES -VP -NP" (set ADVPATCH=-FS -ES -VP -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -NP -ES -VP" (set ADVPATCH=-FS -NP -ES -VP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -NP -VP -ES" (set ADVPATCH=-FS -NP -VP -ES) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -VP -ES -NP" (set ADVPATCH=-FS -VP -ES -NP) & (goto:modifySlot)
if /i "%ADVPATCH%" EQU "-FS -VP -NP -ES" (set ADVPATCH=-FS -VP -NP -ES) & (goto:modifySlot)
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyIOSwad
:modifySlot
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify IOS WAD: Patches, [%cyantext%]Slot[def], Version, Confirmation
echo.
support\sfk.exe echo Input: [%bluetext%]"%cmdinput%"
echo Note : Changes will be applied to a copy of the original WAD
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Change IOS Slot
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%yellowtext%]Warning:[def] Be careful what IOS slot you choose, if it overwrites a crucial IOS it can brick your Wii
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%yellowtext%]Warning:[def] If this WAD is not an IOS modifications will fail
echo.
echo If you would like to change the IOS slot enter it now (must be between 3-254).
echo.
echo To leave the IOS slot unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set WADios=?
::setlocal ENABLEDELAYEDEXPANSION
set /p WADios= Enter Selection Here:
::remove quotes
set "WADios=%WADios:"=%"
::set "WADios=!WADios:^^=^!"
::setlocal DISABLEDELAYEDEXPANSION
If /i "%WADios%" EQU "?" goto:modifyVersion
if /i "%WADios%" EQU "B" goto:modifyIOSwad
if /i "%WADios%" EQU "E" exit
::IOS 3-254 check
::limit user input to X# of digits
if not "%WADios:~3%"=="" goto:badkey
if %WADios% LSS 3 goto:badkey
if %WADios% GTR 254 goto:badkey
goto:modifyVersion
:badkey
echo IOS must be between 3-254, try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifySlot
:modifyVersion
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify IOS WAD: Patches, Slot, [%cyantext%]Version[def], Confirmation
echo.
support\sfk.exe echo Input: [%bluetext%]"%cmdinput%"
echo Note : Changes will be applied to a copy of the original WAD
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Change Version Number
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%yellowtext%]Warning:[def] If this WAD is not an IOS modifications will fail
echo.
echo If you would like to change the Version number enter it now (must be between 0-65535).
echo.
echo To leave the Version number unchanged, leave the selection blank and press Enter.
echo.
echo B = Back
echo E = Exit
echo.
set ADVVERSION=?
::setlocal ENABLEDELAYEDEXPANSION
set /p ADVVERSION= Enter Selection Here:
::remove quotes
set "ADVVERSION=%ADVVERSION:"=%"
::set "ADVVERSION=!ADVVERSION:^^=^!"
::setlocal DISABLEDELAYEDEXPANSION
If /i "%ADVVERSION%" EQU "?" goto:IOSwadConfirm
if /i "%ADVVERSION%" EQU "B" goto:modifySlot
if /i "%ADVVERSION%" EQU "E" exit
::IOS 0-65535 check
::limit user input to X# of digits
if not "%ADVVERSION:~5%"=="" goto:badkey
if %ADVVERSION% LSS 0 goto:badkey
if %ADVVERSION% GTR 65535 goto:badkey
goto:IOSwadConfirm
:badkey
echo Version must be between 0-65535, try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:modifyVersion
:IOSwadConfirm
cls
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
support\sfk echo Modify IOS WAD: Patches, Slot, Version, [%cyantext%]Confirmation
echo.
support\sfk.exe echo Input : [%bluetext%]"%cmdinput%"
::check for changes...
if not "%ADVPATCH%"=="" goto:skip
If /i "%WADios%" NEQ "?" goto:skip
If /i "%ADVVERSION%" NEQ "?" goto:skip
::no changes
echo.
echo You have not selected any changes to be made to %wadnameless%
echo.
echo B = Back
echo E = Exit
echo.
set ADVCONFIRM=?
set /p ADVCONFIRM= Enter Selection Here:
set "ADVCONFIRM=%ADVCONFIRM:"=%"
if /i "%ADVCONFIRM%" EQU "B" goto:modifyVersion
if /i "%ADVCONFIRM%" EQU "E" exit
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:IOSwadConfirm
:skip
::get new name
set patchcode=
set patchname=
set SLOTCODE=
set SLOTNAME=
set versioncode=
set versionname=
if "%ADVPATCH%"=="" goto:skip
::add leading space for patchcode
set patchcode= %ADVPATCH%
::remove leading dash and space for patchname
echo [%ADVPATCH:~1%]>temp\temp.txt
support\sfk filter -quiet temp\temp.txt -rep _" "__ -write -yes
set /p patchname= <temp\temp.txt
del temp\temp.txt>nul
:skip
If /i "%WADios%" EQU "?" goto:skip
set SLOTCODE= -slot %WADios%
set SLOTNAME=-slot%WADios%
:skip
If /i "%ADVVERSION%" EQU "?" goto:skip
set versioncode= -v %ADVVERSION%
set versionname=-[v%ADVVERSION%]
:skip
set "WADcopy=%cmdinput:~0,-4%%patchname%%SLOTNAME%%versionname%.wad"
support\sfk.exe echo Output: [%bluetext%]"%cmdinput:~0,-4%[%redtext%]%patchname%%SLOTNAME%%versionname%[%bluetext%].wad"
echo.
support\sfk -spat echo \x20 \x20 \x20 \x20 \x20 [%cyantext%]Confirmation
echo.
echo Proceed with the changes highlighted in red above?
echo.
echo Y = Yes, save a copy, apply changes, and exit
echo B = Back
echo E = Exit
echo.
set ADVCONFIRM=?
setlocal ENABLEDELAYEDEXPANSION
set /p ADVCONFIRM= Enter Selection Here:
::remove quotes
set "ADVCONFIRM=%ADVCONFIRM:"=%"
set "ADVCONFIRM=!ADVCONFIRM:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%ADVCONFIRM%" EQU "B" goto:modifyVersion
if /i "%ADVCONFIRM%" EQU "E" exit
if /i "%ADVCONFIRM%" NEQ "Y" goto:badkey
::save copy and apply change
copy /y "%cmdinput%" "%WADcopy%">nul
cd support
::echo patchios "%WADcopy%"%PATCHCODE%%slotcode%%versioncode%
patchios "%WADcopy%"%PATCHCODE%%slotcode%%versioncode%
cd..
echo Exiting...
@ping 127.0.0.1 -n 10 -w 1000> nul
exit
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:IOSwadConfirm
:notwad
::----------mym2csm converter---------------
if /i "%cmdinput:~-4%" NEQ ".mym" goto:notmym2csm
if not exist "%cmdinput%" goto:notmym2csm
if exist "%cmdinput%\" goto:notmym2csm
:mym2csm
cls
support\sfk echo [%redtext%]ModMii v%currentversion% Theme Builder
echo.
if /i "%droptype%" EQU "folder" echo Folder of mym themes loaded: "%cmdinput%"
if /i "%droptype%" NEQ "folder" echo Loaded theme: "%cmdinput%"
echo.
echo Enter the System Menu version you would like to create a csm theme for
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing themes for the wrong System Menu version can cause brick, make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection before applying themes!
echo.
echo Install themes for YOUR System Menu version using MyMenuifyMod from ModMii's Download Page 3.
echo More themes available at wiithemer.org and wii.hacks.guide/themes
echo.
echo Note: to check your System Menu version, turn on your wii, click the Wii button in the
echo bottom left of the main system menu, click Wii Settings,
echo then you should see the System Menu in the top right of the screen
echo (ie. 4.2U, 4.1J, 3.2E, etc.)
echo.
echo Options: 4.1-4.3 UEJK
echo.
echo Examples: 4.3U
echo 4.2E
echo 4.1J, etc.
echo.
echo Or enter "Help" for an instructional video on checking your System Menu Version.
echo.
set /p mym2csm= Enter Selection Here:
If /i "%mym2csm%" EQU "4.1J" (set appfile=78) & (set A78=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.1K" (set appfile=81) & (set A81=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.1U" (set appfile=7b) & (set A7b=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.1E" (set appfile=7e) & (set A7e=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.2J" (set appfile=84) & (set A84=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.2U" (set appfile=87) & (set A87=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.2E" (set appfile=8a) & (set A8a=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.2K" (set appfile=8d) & (set A8d=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.3J" (set appfile=94) & (set A94=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.3U" (set appfile=97) & (set A97=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.3E" (set appfile=9a) & (set A9a=*) & (goto:mym2csm2)
If /i "%mym2csm%" EQU "4.3K" (set appfile=9d) & (set A9d=*) & (goto:mym2csm2)
if /i "%mym2csm%" EQU "help" (start https://www.youtube.com/embed/1Z2MtFcllTY) & (goto:mym2csm)
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:mym2csm
:mym2csm2
cls
support\sfk echo [%redtext%]ModMii v%currentversion% Theme Builder
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing themes for the wrong System Menu version can cause brick, make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection before applying themes!
echo.
echo Install themes for YOUR System Menu version using MyMenuifyMod from ModMii's Download Page 3.
echo More themes available at wiithemer.org and wii.hacks.guide/themes
echo.
if not exist temp\TMCL.exe goto:downloadit
if not exist temp\ASH.exe goto:downloadit
if not exist temp\themewii.exe goto:downloadit
if not exist temp\ICSharpCode.SharpZipLib.dll (goto:downloadit) else (goto:skipDL)
:downloadit
echo.
echo Downloading ThemeMii Cmd Line...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/thememii_cmd.v1.1_3.5NetFramework.zip" -O temp\thememii_cmd.v1.1_3.5NetFramework.zip
if exist temp\thememii_cmd.v1.1_3.5NetFramework.zip support\7za x -aoa "temp\thememii_cmd.v1.1_3.5NetFramework.zip" -o"temp" -r
if exist temp\thememii_cmd.v1.1_3.5NetFramework.zip del temp\thememii_cmd.v1.1_3.5NetFramework.zip>nul
:skipDL
if not exist temp\TMCL.exe (echo ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\ASH.exe (echo ASH.exe for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\themewii.exe (echo themewii.exe for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\ICSharpCode.SharpZipLib.dll (echo ICSharpCode.SharpZipLib.dll for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
set loadorgo=load4mym2csm
set CurrentDLNAME=NUSGRABBER%appfile%
call "Support\subscripts\DB.bat"
:load4mym2csm
::make sure caps, cuz OCD (i.e. 4.3u turns into 4.3U)
set "mym2csm=%wadname:~9,4%"
set "dlname=%wadname:~0,8%.app"
::echo cmdinput: "%cmdinput%"
::echo dlname: "%dlname%"
::echo mym2csm: %mym2csm%
::echo name: %name%
::echo wadname: %wadname%
::echo code1: %code1%
::echo code1: %version%
::echo md5: %md5%
::check md5 if exists already
if not exist "temp\%wadname%" goto:skip
support\sfk md5 -quiet -verify %md5% "temp\%wadname%"
if not errorlevel 1 (echo %wadname% for constructing %mym2csm% themes already downloaded and verified, continuing...) & (echo.) & (goto:gotbase)
support\sfk.exe echo [%redtext%]%wadname% already exists but failed MD5 verification, redownloading...
del "temp\%wadname%">nul
:skip
cd /d temp
echo Downloading %wadname% for constructing %mym2csm% themes ...
echo.
..\support\NusFileGrabber.exe %version% http://ccs.cdn.sho.rc24.xyz/ccs/download/
echo.
if not exist "%dlname%" (support\sfk.exe echo [%redtext%]Failed to download %wadname%, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
move /Y "%dlname%" "%wadname%">nul
::check md5
..\support\sfk md5 -quiet -verify %md5% "%wadname%"
if errorlevel 1 (support\sfk.exe echo [%redtext%]%wadname% failed MD5 verification, exiting...) & (del "%wadname%">nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
cd..
:gotbase
::base app verified
if /i "%droptype%" EQU "folder" goto:mymfolder
set "outputcsm=%cmdinput:~0,-4%-%mym2csm%.csm"
set "inputmym=%cmdinput%"
::pass, get folder to open when any key is pressed
::get mymfile and mympath names, i.e. get filename and get folder full path not including filename
:mymgetfolder
set "mymfile=%cmdinput:*\=%"
set "mympath=%cmdinput%"
:stripmymfile
set "mymfile=%mymfile:*\=%"
echo "%mymfile%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripmymfile
echo set "mympath=%%mympath:%mymfile%=%%">temp\temp.bat
call temp\temp.bat
if /i "%droptype%" EQU "folder" goto:skip
set "mympath=%mympath:~0,-1%"
set "mymfile=%mympath:*\=%"
set droptype=folder
set "cmdinput=%mympath%"
goto:stripmymfile
:skip
set "mympath=%cmdinput%"
echo set "mympathback=%%mympath:\%mymfile%=%%">temp\temp.bat
call temp\temp.bat
::echo mymfile: "%mymfile%"
::echo mympath: "%mympath%"
::echo mympathback: "%mympathback%"
support\sfk.exe echo Building [%cyantext%]"%outputcsm%"...
echo.
call support\subscripts\TMCL_Portable_Fix.bat
cd /d temp
TMCL.exe "%inputmym%" "%ModMiiDir%\temp\%wadname%" "%outputcsm%">nul
if exist "temp.csm" del "temp.csm">nul
if exist "tmp" rd /s /q "tmp"> nul
cd /d "%ModMiiDir%"
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%outputcsm%" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%outputcsm%" (echo Something went wrong, press any key to exit...) & (pause>nul) & (exit)
:mymfinish
support\sfk.exe echo CSM created, you can close this window now, or [%bluetext%]enter O to open output folder and exit, or leave selection blank to just exit
echo.
support\sfk.exe echo [%bluetext%]If this theme needs more myms to complete, drag the next mym here and press enter
echo.
set multimym=?
setlocal ENABLEDELAYEDEXPANSION
set /p multimym= Enter Selection Here:
::remove quotes
set "multimym=!multimym:"=!"
set "multimym=!multimym:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
::echo multimym "%multimym%"
::echo mympath "%mympath%"
if "%multimym%"=="" exit
If /i "%multimym%" EQU "?" exit
If /i "%multimym%" EQU "O" (explorer "%mympath%") & (exit)
if not exist "%multimym%" (echo Something went wrong, press any key to exit...) & (pause>nul) & (exit)
If /i "%multimym:~-4%" NEQ ".mym" (echo That isn't a mym file, exiting...) & (@ping 127.0.0.1 -n 3 -w 1000> nul) & (exit)
::apply second mym
cd /d temp
echo.
..\support\sfk.exe echo Applying [%cyantext%]"%multimym%"...
echo.
move /y "%outputcsm%" "%outputcsm:~0,-4%.app">nul
TMCL.exe "%multimym%" "%outputcsm:~0,-4%.app" "%outputcsm%">nul
if exist "%outputcsm%" del "%outputcsm:~0,-4%.app">nul
cd /d ..
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%outputcsm%" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%outputcsm%" (echo Something went wrong, press any key to exit...) & (pause>nul) & (exit)
set multimym=?
goto:mymfinish
:notmym2csm
::--------------------------------
::----------csm2csm converter---------------
if /i "%cmdinput:~-4%" NEQ ".csm" goto:notcsm2csm
if not exist "%cmdinput%" goto:notcsm2csm
if exist "%cmdinput%\" goto:notcsm2csm
:csm2csm
cls
support\sfk echo [%redtext%]ModMii v%currentversion% Theme Builder
echo.
if /i "%droptype%" EQU "folder" echo Folder of csm themes loaded: "%cmdinput%"
if /i "%droptype%" NEQ "folder" echo Loaded theme: "%cmdinput%"
echo.
support\sfk echo [%bluetext%]If the csm doesn't match your System Menu version, convert it to mym with ThemeMii Mod from ModMii's Download Page 2.
echo.
echo Some themes may come with additional\optional myms to apply different effects (e.g. spinning channel effect)
echo.
support\sfk echo [%bluetext%]To apply an additional mym to the loaded theme(s), drag it here and press enter
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing themes for the wrong System Menu version can cause brick, make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection before applying themes!
echo.
echo Install themes for YOUR System Menu version using MyMenuifyMod from ModMii's Download Page 3.
echo More themes available at wiithemer.org and wii.hacks.guide/themes
echo.
set multimym=?
setlocal ENABLEDELAYEDEXPANSION
set /p multimym= Drag mym here:
::remove quotes
set "multimym=!multimym:"=!"
set "multimym=!multimym:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
::echo multimym "%multimym%"
::echo mympath "%mympath%"
if "%multimym%"=="" goto:badkey
If /i "%multimym%" EQU "?" goto:badkey
if not exist "%multimym%" goto:badkey
If /i "%multimym:~-4%" NEQ ".mym" goto:badkey
if not exist temp\TMCL.exe goto:downloadit
if not exist temp\ASH.exe goto:downloadit
if not exist temp\themewii.exe goto:downloadit
if not exist temp\ICSharpCode.SharpZipLib.dll (goto:downloadit) else (goto:skipDL)
:downloadit
echo.
echo Downloading ThemeMii Cmd Line...
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/thememii_cmd.v1.1_3.5NetFramework.zip" -O temp\thememii_cmd.v1.1_3.5NetFramework.zip
if exist temp\thememii_cmd.v1.1_3.5NetFramework.zip support\7za x -aoa "temp\thememii_cmd.v1.1_3.5NetFramework.zip" -o"temp" -r
if exist temp\thememii_cmd.v1.1_3.5NetFramework.zip del temp\thememii_cmd.v1.1_3.5NetFramework.zip>nul
:skipDL
if not exist temp\TMCL.exe (echo ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\ASH.exe (echo ASH.exe for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\themewii.exe (echo themewii.exe for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if not exist temp\ICSharpCode.SharpZipLib.dll (echo ICSharpCode.SharpZipLib.dll for ThemeMii failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
::apply second mym
if /i "%droptype%" EQU "folder" goto:csmfolder
echo.
support\sfk.exe echo Applying [%cyantext%]"%multimym%"...
echo.
call support\subscripts\TMCL_Portable_Fix.bat
cd /d temp
move /y "%cmdinput%" "%cmdinput:~0,-4%_original.csm">nul
TMCL.exe "%multimym%" "%cmdinput:~0,-4%_original.csm" "%cmdinput%">nul
if exist "temp.csm" del "temp.csm">nul
if exist "tmp" rd /s /q "tmp"> nul
cd /d "%ModMiiDir%"
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%cmdinput%" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%cmdinput%" (echo Something went wrong, press any key to exit...) & (pause>nul) & (exit)
::success
set multimym=?
set "outputcsm=%cmdinput%"
goto:csmgetfolder
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:csm2csm
::pass, get folder to open when any key is pressed
::get mymfile and mympath names, i.e. get filename and get folder full path not including filename
:csmgetfolder
set "mymfile=%cmdinput:*\=%"
set "mympath=%cmdinput%"
:stripmymfile
set "mymfile=%mymfile:*\=%"
echo "%mymfile%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripmymfile
echo set "mympath=%%mympath:%mymfile%=%%">temp\temp.bat
call temp\temp.bat
if /i "%droptype%" EQU "folder" goto:skip
set "mympath=%mympath:~0,-1%"
set "mymfile=%mympath:*\=%"
set droptype=folder
set "cmdinput=%mympath%"
goto:stripmymfile
:skip
set "mympath=%cmdinput%"
echo set "mympathback=%%mympath:\%mymfile%=%%">temp\temp.bat
call temp\temp.bat
::echo mymfile: "%mymfile%"
::echo mympath: "%mympath%"
::echo mympathback: "%mympathback%"
goto:mymfinish
:notcsm2csm
::--------------------------------
::emunand modifier drag and drop
if exist "%cmdinput%\title\00000001\00000002\content\title.tmd" set "DRIVETEMP=%cmdinput%"
if exist "%cmdinput%\title\00000001\00000002\content\title.tmd" (SET MENU1=S) & (set SNEEKSELECT=5) &(set one=EMUMOD) & (set cmdlinemodeswitchoff=Y) & (goto:go)
::drag and drop for file cleanup and app updater, and other dropped items not piped already
:fixitnow
set fixslash=
if /i "%cmdinput:~-1%" EQU "\" set fixslash=yes
if /i "%cmdinput:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "cmdinput=%cmdinput:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:fixitnow
if exist "%cmdinput%\apps\" set "DRIVEtemp=%cmdinput%"
if exist "%cmdinput%\WAD\" set "DRIVEtemp=%cmdinput%"
if exist "%cmdinput%\private\" set "DRIVEtemp=%cmdinput%"
if not "%DRIVEtemp%"=="" (SET MENU1=FC) & (set cmdlinemodeswitchoff=Y) & (goto:go)
::----------Folder drag and drop (Wad Packer, wad unpacker entry, mym folder, etc)---------------
::keep near the bottom of cmd line stuff for reasons, just in case
::check if file or folder
if exist "%cmdinput%" (dir "%cmdinput%" | findstr /I /R /C:"<DIR>">NUL) else (goto:notwadfolder)
IF ERRORLEVEL 1 (set droptype=file) else (set droptype=folder)
if /i "%droptype%" EQU "folder" goto:skip
if /i "%cmdinput:~-4%" EQU ".app" goto:skip
if /i "%cmdinput:~-4%" EQU ".tik" goto:skip
if /i "%cmdinput:~-4%" EQU ".tmd" goto:skip
if /i "%cmdinput:~-5%" EQU ".cert" goto:skip
if /i "%cmdinput:~-7%" EQU ".footer" goto:skip
goto:noRepack
:skip
::get wadfile and wadpath names, i.e. get filename and get folder full path not including filename
set "wadfile=%cmdinput:*\=%"
set "wadpath=%cmdinput%"
:stripwadfile
set "wadfile=%wadfile:*\=%"
echo "%wadfile%">temp\temp.txt
findStr \\ temp\temp.txt>nul
IF NOT ERRORLEVEL 1 goto:stripwadfile
echo set "wadpath=%%wadpath:%wadfile%=%%">temp\temp.bat
call temp\temp.bat
if /i "%droptype%" EQU "folder" goto:skip
set "wadpath=%wadpath:~0,-1%"
set "wadfile=%wadpath:*\=%"
set droptype=folder
set "cmdinput=%wadpath%"
goto:stripwadfile
:skip
set "wadpath=%cmdinput%"
echo set "wadpathback=%%wadpath:\%wadfile%=%%">temp\temp.bat
call temp\temp.bat
::echo wadfile: "%wadfile%"
::echo wadpath: "%wadpath%"
::echo wadpathback: "%wadpathback%"
::wad packer for folder wads redirect
if exist "%wadpath%\*.wad" goto:wadfolder
if exist "%wadpath%\*.mym" goto:mym2csm
if exist "%wadpath%\*.csm" goto:csm2csm
if not exist "%wadpath%\*.app" goto:noRepack
if not exist "%wadpath%\*.tik" goto:noRepack
if not exist "%wadpath%\*.tmd" goto:noRepack
if not exist "%wadpath%\*.cert" goto:noRepack
::if not exist "%wadpath%*.footer" goto:noRepack
::footer unnecessary when packing wads
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
echo Repacking: "%wadpath%"
echo To WAD: "%wadpath%.wad"
echo.
if exist "%wadpath%.wad" (support\sfk.exe echo [%yellowtext%]This WAD already exists, press any key to send it to the recycling bin and continue, or close this window to abort) & (pause> nul)
if exist "%wadpath%.wad" echo.
::RECYCLING POWERSHELL CODE, works for directories too
if exist "%wadpath%.wad" powershell -nologo -noprofile -Command "& {Add-Type -AssemblyName 'Microsoft.VisualBasic'; Get-ChildItem -Path '"%wadpath%.wad"' | ForEach-Object { if ($_ -is [System.IO.DirectoryInfo]) { [Microsoft.VisualBasic.FileIO.FileSystem]::DeleteDirectory($_.FullName,'OnlyErrorDialogs','SendToRecycleBin') } else { [Microsoft.VisualBasic.FileIO.FileSystem]::DeleteFile($_.FullName,'OnlyErrorDialogs','SendToRecycleBin') } } }"
support\wadmii -in "%wadpath%" -out "%wadpath%.wad"
if /i "%AudioOption%" NEQ "on" goto:nosound
if exist "%wadpath%.wad" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
if not exist "%wadpath%.wad" (echo Something went wrong, press any key to exit...) & (pause> nul) & (exit)
support\sfk.exe echo Wad repacked, you can close this window now, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%wadpathback%" explorer "%wadpathback%"
exit
:noRepack
::--------------------------------------------------------
goto:notwadfolder
:wadfolder
set WiiIP=
if exist temp\WiiIP.txt set /p WiiIP= <temp\WiiIP.txt
cls
set "wad2folder=%wadfile%"
::echo wad2folder: "%wad2folder%"
::echo wadpath: "%wadpath%"
::echo wadpathback: "%wadpathback%"
dir /s /b /a-d "%wadpath%\*.wad">temp\temp.txt
::copy /y temp\temp.txt temp\wad2folder.txt>nul
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
echo What would you like to do with this folder of WADs?
echo.
support\sfk.exe echo [%bluetext%]"%wadpath%"
::list wads
set wad2count=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\temp.txt) do call :wad2count "%%A"
goto:skipwad2count
:wad2count
set CurrentWAD=%*
set "CurrentWAD=!CurrentWAD:^^=^!"
set "CurrentWAD=!CurrentWAD:~1,-1!"
set /a wad2count=%wad2count%+1
echo %wad2count%: "!CurrentWAD!"
goto:EOF
:skipwad2count
setlocal DISABLEDELAYEDEXPANSION
set "wadtotal=%wad2count%"
echo.
support\sfk -spat echo [%bluetext%]Start the Homebrew Channel before trying to send WADs to your Wii!
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing the wrong WAD to your Wii can cause brick, choose wisely and make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection!
echo.
echo U = Unpack WADs; each will be unpacked into a folder of the same name in the same directory.
if not "%WiiIP%"=="" support\sfk.exe -spat echo \x20 \x20 \x20 \x20 \x20 S = Send WADs to Homebrew Channel using [%bluetext%]Saved IP address: %WiiIP%
echo [IP] = Send WADs to Homebrew Channel with IP entered; e.g 192.168.1.6
echo HELP = Instructional video on checking your Wii's IP Address
echo N = Nothing, get me out of here!
echo.
echo To check your Wii IP address press home while in the HBC, but remember to exit the Home Menu before continuing.
echo If you see 'Network Not Initialized' you must first connect the console to WiFi.
echo.
echo Notes: - WADs larger than 8MB cannot be sent to the Wii over WiFi
echo - When sending WADs you will have the option to skip or approve sending each individual WAD
echo.
set SendWADs=?
::if not "%WiiIP%"=="" set SendWADs=S
setlocal ENABLEDELAYEDEXPANSION
set /p SendWADs= Enter Selection Here:
::remove quotes
set "SendWADs=!SendWADs:"=!"
set "SendWADs=!SendWADs:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
If /i "%SendWADs%" EQU "?" goto:badkey
if /i "%SendWADs%" EQU "help" (start https://www.youtube.com/embed/JSyIDx35TVo) & (goto:wadfolder)
if /i "%SendWADs%" EQU "N" exit
if /i "%SendWADs%" EQU "U" goto:BulkWADUnpacker
if "%WiiIP%"=="" goto:skip
If /i "%SendWADs%" EQU "S" set "SendWADs=%WiiIP%"
:skip
::check valid IP
powershell -nologo -noprofile -Command "[ipaddress]::TryParse('%SendWADs%',[ref][ipaddress]::Loopback)" | findstr "False">NUL && goto:badkey
::check for 3 periods
set "string=%SendWADs%"
set /a dotcount=0
setlocal EnableDelayedExpansion
if defined string (set ^"strtmp=!string:.=^
%= empty string =%
!^") else set "strtmp="
for /F %%C in ('cmd /V /C echo(^^!strtmp^^!^| find /C /V ""') do set /A "dotcount=%%C-1"
setlocal DISABLEDELAYEDEXPANSION
::echo "!string!" contains %dotcount% periods.
if /i "%dotcount%" EQU "3" goto:pingme
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:wadfolder
:pingme
::check if Wii is reachable
::echo.
::echo Pinging Wii to see if reachable...
ping -n 1 "%SendWADs%"|findstr /I /C:"ms">nul
IF NOT ERRORLEVEL 1 goto:Pinged
support\sfk echo [%yellowtext%]Unable to reach IP %SendWADs%, check your settings and try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:wadfolder
:Pinged
cls
set "WiiIP=%SendWADs%"
> "temp\WiiIP.txt" ECHO %WiiIP%
support\sfk echo [%redtext%]ModMii v%currentversion% WAD tools
echo.
::echo wad2folder: "%wad2folder%"
::echo wadpath: "%wadpath%"
::echo wadpathback: "%wadpathback%"
support\sfk -spat echo [%bluetext%]Start the Homebrew Channel before trying to send WADs to your Wii.
echo.
echo If you have issues make sure you have the HBC open but that you are not inside its Home Menu,
echo Double check the Wii IP address and make sure both this device and the Wii are on the same network.
echo.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Installing the wrong WAD to your Wii can cause brick, choose wisely and make sure you have Priiloader and Bootmii.
support\sfk -spat echo \x20 \x20 [%yellowtext%]Use the ModMii Wizard or SysCheck Updater Wizard for brick protection!
echo.
support\sfk.exe -spat echo [%bluetext%]Sending WADs to Homebrew Channel using IP address: %WiiIP%
set wads2count=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\temp.txt) do call :wads2count2 "%%A"
goto:skipwads2count
:wads2count2
set CurrentWAD=%*
set "CurrentWAD=!CurrentWAD:^^=^!"
set "CurrentWAD=!CurrentWAD:~1,-1!"
set /a wads2count=%wads2count%+1
echo.
support\sfk -spat echo [%redtext%]Sending %wads2count% of %wad2count%: "!CurrentWAD!"
echo.
::check if over 8MB, check fails with some special characters so set to 1 if nul
echo set "GetFileSize=%%~z1" > %temp%\GetFileSize.bat
call %temp%\GetFileSize "!CurrentWAD!"
if "%GetFileSize%"=="" set GetFileSize=1
if %GetFileSize% LEQ 8388608 goto:not2big
support\sfk echo [%yellowtext%]WAD is too large to send over WiFi, skipping...
goto:EOF
:not2big
::display WAD info, if sane
support\sharpii.exe Wad -i "!CurrentWAD!" | findstr "An unknown error occured">NUL && goto:skip
support\sharpii.exe Wad -i "!CurrentWAD!"
echo.
:skip
:confirmsend
if /i "%wads2count%" GEQ "2" (echo Wait until you are back in the homebrew channel before sending the next WAD) & (echo.)
:confirmsend2
set confirmsend=?
set /p confirmsend= Send WAD to Wii now? (Y/N):
if /i "%confirmsend%" EQU "N" goto:EOF
if /i "%confirmsend%" EQU "Y" goto:skip
echo You Have Entered an Incorrect Key
echo.
goto:confirmsend2
:skip
::send wad and loop!
::check if back in the HBC
ping -n 1 "%WiiIP%"|findstr /I /C:"ms">nul
IF ERRORLEVEL 1 (support\sfk echo [%yellowtext%]Unable to reach IP %SendWADs%, wait until you're back in the Homebrew Channel...) & (goto:confirmsend)
echo.
echo To cancel in the middle of sending a WAD, type Ctrl+C, then N, then Enter
support\sfk -spat echo "Sending command: [%cyantext%]sharpii.exe SendWad -ip "%WiiIP%" -wad \x22"!CurrentWAD!"\x22 -ahb"
support\sharpii.exe SendWad -ip %WiiIP% -wad "!CurrentWAD!" -ahb
goto:EOF
:skipwads2count
::setlocal DISABLEDELAYEDEXPANSION
if /i "%AudioOption%" EQU "on" start support\nircmd.exe mediaplay 3000 "%Success.mp3%"
echo.
echo Finished Sending WADs from folder:
support\sfk.exe echo [%bluetext%]"%wadpath%"
echo.
echo Press any key to exit
pause>nul
exit
:BulkWADUnpacker
cls
support\sfk echo [%redtext%]ModMii v%currentversion% Bulk WAD Unpacker
::echo wad2folder: "%wad2folder%"
::echo wadpath: "%wadpath%"
::echo wadpathback: "%wadpathback%"
set wads2error=0
set wads2count=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\temp.txt) do call :wads2count "%%A"
goto:skipwads2count
:wads2count
set CurrentWAD=%*
set "CurrentWAD=!CurrentWAD:^^=^!"
set "CurrentWAD=!CurrentWAD:~1,-1!"
set /a wads2count=%wads2count%+1
echo.
echo Unpacking %wads2count% of %wad2count%: "!CurrentWAD!"
if not exist "!CurrentWAD:~0,-4!" mkdir "!CurrentWAD:~0,-4!"
support\wadmii -in "!CurrentWAD!" -out "!CurrentWAD:~0,-4!"
::success
if exist "!CurrentWAD:~0,-4!\*.tmd" (echo WAD Unpacked) & (goto:EOF)
::fail
support\sfk.exe echo [%redtext%]Error Unpacking "!CurrentWAD!"
echo %DATE%-%TIME:~0,-6% - Error Unpacking "!CurrentWAD!">>"%wadpath%\WadUnpackerError.log"
set /a wads2error=%wads2error%+1
::empty folder check, if not empty goto:EOF, if empty delete it
dir /A /B "!CurrentWAD:~0,-4!" | findstr /R ".">NUL && goto:EOF
rd /s /q "!CurrentWAD:~0,-4!"> nul
goto:EOF
:skipwads2count
::setlocal DISABLEDELAYEDEXPANSION
if /i "%AudioOption%" NEQ "on" goto:nosound
if /i "%wads2error%" EQU "0" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
echo.
echo Finished processing WADs saved here:
support\sfk.exe echo [%bluetext%]"%wadpath%"
echo.
if /i "%wads2error%" NEQ "0" goto:fail
support\sfk.exe echo %wad2count% WADs unpacked, you can close this window now, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%wadpath%" explorer "%wadpath%"
exit
:fail
support\sfk.exe echo [%redtext%]%wads2error% of %wad2count% WADs failed to unpack, see above for more information.
echo %wads2error% error(s) logged to: "%wadpath%\WadUnpackerError.log"
echo.
support\sfk.exe echo Close this window when you're ready, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%wadpath%" explorer "%wadpath%"
exit
:notwadfolder
::---------------------------------------
goto:notmymfolder
:mymfolder
::cls
set "Folder=%wadfile%"
set "FullPath=%wadpath%"
set "FullPathback=%wadpathback%"
support\sfk.exe echo [%bluetext%]Building %mym2csm% csms from myms saved here: "%FullPath%"
::echo Folder: "%Folder%"
::echo FullPath: "%FullPath%"
::echo FullPathback: "%FullPathback%"
dir /s /b /a-d "%FullPath%\*.mym">temp\temp.txt
::copy /y temp\temp.txt temp\Folder.txt>nul
::set "TotalFiles=%filecount%"
::line count
set /a TotalFiles=0
for /f %%a in (temp\temp.txt) do set /a TotalFiles+=1
set /a counter=0
set /a Files2error=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\temp.txt) do call :mymfolderprocess "%%A"
goto:skipcounter
:mymfolderprocess
set CurrentFile=%*
set "CurrentFile=!CurrentFile:^^=^!"
set "CurrentFile=!CurrentFile:~1,-1!"
set /a counter=%counter%+1
echo set "filenameX=!!CurrentFile:%FullPath%\=!!">temp\temp.bat
call temp\temp.bat
::echo filenameX: "!filenameX!"
::if not exist "%FullPath%\csm" mkdir "%FullPath%\csm"
::set "outputcsm=%FullPath%\csm\!filenameX:~0,-4!-%mym2csm%.csm"
set "outputcsm=!CurrentFile:~0,-4!-%mym2csm%.csm"
echo.
support\sfk.exe echo [%cyantext%]Theming %counter% of %TotalFiles%: "%filenameX:~0,-4%-%mym2csm%.csm"
::echo cmdinput: "%cmdinput%"
::echo dlname: "%dlname%"
::echo mym2csm: %mym2csm%
::echo name: %name%
::echo wadname: %wadname%
::echo code1: %code1%
::echo code1: %version%
::echo md5: %md5%
cd /d temp
TMCL.exe "%CurrentFile%" "%wadname%" "%outputcsm%">nul
cd /d ..
::success
if exist "%outputcsm%" (support\sfk.exe echo [%greentext%]CSM Created) & (goto:EOF)
::fail
support\sfk.exe echo [%redtext%]Error Creating CSM
echo %DATE%-%TIME:~0,-6% - Error Creating CSM "%outputcsm%">>"%FullPath%\ModMii.log"
set /a Files2error=%Files2error%+1
goto:EOF
:skipcounter
::setlocal DISABLEDELAYEDEXPANSION
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
::empty folder check, if not empty goto:EOF, if empty delete it
::dir /A /B "%FullPath%\csm" | findstr /R ".">NUL
::IF ERRORLEVEL 1 rd /s /q "%FullPath%\csm"> nul
if /i "%AudioOption%" NEQ "on" goto:nosound
if /i "%Files2error%" EQU "0" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
echo.
echo Finished building csms from myms saved here:
support\sfk.exe echo [%bluetext%]"%FullPath%"
echo.
if /i "%Files2error%" NEQ "0" goto:fail
support\sfk.exe echo %TotalFiles% CSMs were created, you can close this window now, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%FullPath%" explorer "%FullPath%"
exit
:fail
support\sfk.exe echo [%redtext%]Failed to construct %Files2error% of %TotalFiles% CSMs, see above for more information.
echo %Files2error% error(s) logged to: "%FullPath%\ModMii.log"
echo.
support\sfk.exe echo Close this window when you're ready, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%FullPath%" explorer "%FullPath%"
exit
:notmymfolder
::---------------------------------------
goto:notcsmfolder
:csmfolder
::cls
set "Folder=%wadfile%"
set "FullPath=%wadpath%"
set "FullPathback=%wadpathback%"
echo.
support\sfk.exe echo [%bluetext%]Updating csms saved here: "%FullPath%"
::echo Folder: "%Folder%"
::echo FullPath: "%FullPath%"
::echo FullPathback: "%FullPathback%"
::echo multimym: "%multimym%"
::echo cmdinput: "%cmdinput%"
::echo mym2csm: %mym2csm%
dir /s /b /a-d "%FullPath%\*.csm">temp\temp.txt
::copy /y temp\temp.txt temp\Folder.txt>nul
::set "TotalFiles=%filecount%"
::line count
set /a TotalFiles=0
for /f %%a in (temp\temp.txt) do set /a TotalFiles+=1
set /a counter=0
set /a Files2error=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\temp.txt) do call :csmfolderprocess "%%A"
goto:skipcounter
:csmfolderprocess
set CurrentFile=%*
set "CurrentFile=!CurrentFile:^^=^!"
set "CurrentFile=!CurrentFile:~1,-1!"
set /a counter=%counter%+1
echo set "filenameX=%%CurrentFile:%FullPath%\=%%">temp\temp.bat
call temp\temp.bat
::echo filenameX: "%filenameX%"
set "outputcsm=%FullPath%\%filenameX%"
echo.
support\sfk.exe echo [%cyantext%]Theming %counter% of %TotalFiles%: "%filenameX%"
cd /d temp
move /y "%outputcsm%" "%FullPath%\%filenameX:~0,-4%_original.csm">nul
TMCL.exe "%multimym%" "%FullPath%\%filenameX:~0,-4%_original.csm" "%outputcsm%">nul
cd /d ..
::success
if exist "%outputcsm%" (support\sfk.exe echo [%greentext%]CSM Created) & (goto:EOF)
::fail
support\sfk.exe echo [%redtext%]Error Creating CSM
echo %DATE%-%TIME:~0,-6% - Error Creating CSM "%outputcsm%">>"%FullPath%\ModMii.log"
set /a Files2error=%Files2error%+1
goto:EOF
:skipcounter
::setlocal DISABLEDELAYEDEXPANSION
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
::empty folder check, if not empty goto:EOF, if empty delete it
::dir /A /B "%FullPath%\csm" | findstr /R ".">NUL
::IF ERRORLEVEL 1 rd /s /q "%FullPath%\csm"> nul
if /i "%AudioOption%" NEQ "on" goto:nosound
if /i "%Files2error%" EQU "0" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:nosound
echo.
echo Finished building csms from myms saved here:
support\sfk.exe echo [%bluetext%]"%FullPath%"
echo.
if /i "%Files2error%" NEQ "0" goto:fail
support\sfk.exe echo %TotalFiles% CSMs were updated, you can close this window now, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%FullPath%" explorer "%FullPath%"
exit
:fail
support\sfk.exe echo [%redtext%]Failed to updated %Files2error% of %TotalFiles% CSMs, see above for more information.
echo %Files2error% error(s) logged to: "%FullPath%\ModMii.log"
echo.
support\sfk.exe echo Close this window when you're ready, or [%bluetext%]enter O to open output directory and exit, or anything else to just exit
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" NEQ "O" exit
if exist "%FullPath%" explorer "%FullPath%"
exit
:notcsmfolder
::---------------------------------------
::-----------HashMyFiles-----------------
if not exist "%cmdinput%" goto:donthash
cls
support\sfk echo [%redtext%]ModMii v%currentversion%
echo.
support\sfk.exe echo Dropped item: [%bluetext%]"%cmdinput%"
echo.
echo I don't have a function for this, do you want to calculate hashes with HashMyFiles?
echo.
support\sfk.exe echo [%cyantext%]Enter E to exit or anything else to calculate hashes
echo.
echo Pro tips! Add HashMyFiles to your right-click by choosing the 'Enable Explorer Context Menu' from its Options menu!
echo And to hash files in subfolders, copy ^& paste or drag and drop files into the HashMyFiles window.
echo.
set promptO=?
set /p promptO= Enter Selection Here:
If /i "%promptO%" EQU "E" exit
if exist "%homedrive%\Program Files (x86)" (set code2=hashmyfiles-x64) else (set code2=hashmyfiles)
if exist temp\%code2%\hashmyfiles.exe goto:skipDL
echo.
echo Downloading %code2% to check "%cmdinput%"
start /min /wait support\wget --no-check-certificate -t 3 "http://www.nirsoft.net/utils/%code2%.zip"
if exist %code2%.zip support\7za x -aoa "%code2%.zip" -o"temp\%code2%" -r
if exist %code2%.zip move /y %code2%.zip temp\%code2%.zip>nul
:skipDL
if not exist temp\%code2%\hashmyfiles.exe (echo %code2% failed to download, exiting...) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
::using the folder command successfully searches subdirectories, but it opens a new instance of the app each time
::if exist "%cmdinput%\" start temp\%code2%\hashmyfiles.exe /folder "%cmdinput%"
::if not exist "%cmdinput%\" start temp\%code2%\hashmyfiles.exe /file "%cmdinput%"
start temp\%code2%\hashmyfiles.exe /file "%cmdinput%"
exit
:donthash
:specificCMDhelp
if /i "%one%" EQU "W" goto:cmdlinewizardhelp
if /i "%one%" EQU "RC" goto:cmdlineRegionChangehelp
if /i "%one%" EQU "HS" goto:cmdlineHMhelp
if /i "%one%" EQU "S" goto:cmdlineSNEEKhelp
if /i "%one%" EQU "SE" goto:cmdlineEMUNANDhelp
if /i "%one%" EQU "U" goto:cmdlineUSBhelp
if /i "%one%" EQU "E" goto:cmdlineEMUNANDhelp
if /i "%one%" EQU "L" goto:cmdlineDLQUEUEhelp
if /i "%one%" EQU "SU" goto:cmdlineSYSCHECKhelp
if /i "%one%" EQU "O" goto:cmdlineOPTIONShelp
if /i "%one%" EQU "AW" goto:cmdlineAWhelp
if /i "%one%" EQU "D" goto:cmdlineDhelp
if not "%one%"=="" (goto:cmdlinehelp)
:cmdlinehelp
title ModMii Command Line Help
support\sfk echo [%redtext%]ModMii v%currentversion%
echo.
echo Command Line Usage: ModMii [function] [parameters] [Options]
echo.
echo Functions:
echo.
echo W Wizard
echo AW Abstinence Wizard
echo U USB-Loader Set-up
echo HS HackMii Solutions
echo SU SysCheck Updater
echo RC Region Change
echo S SNEEK Installation
echo E Emulated NAND Builder
echo SE SNEEK Installation + Emulated NAND Builder
echo L Load ModMii Download Queue
echo.
echo O ModMii Options: Options cannot be used by themselves
echo but they can be applied to other functions. Saved\default
echo settings will be restored after each command. If an
echo option is not defined saved\default settings are used.
echo.
echo D Drag and Drop Help and Info on supported files\folders
echo.
echo NOTE: Too see detailed descriptions and parameters for any of the above,
echo use 'ModMii [function] Help'
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineRegionChangehelp
title ModMii Region Change Command Line Help
support\sfk echo [%redtext%]ModMii Region Change Express Mode Usage
echo.
echo ModMii.exe RC DesiredSystemMenu Extras Options
echo.
echo DesiredSystemMenu: #.#X
echo where; "#.#" can be "4.1", "4.2" or "4.3" and "X" can be "U", "E", "J", "K"
echo.
echo Extras:
echo "Red" Red Theme [cannot be used simultaneously with other themes]
echo "Green" Green Theme [cannot be used simultaneously with other themes]
echo "Blue" Blue Theme [cannot be used simultaneously with other themes]
echo "Orange" Orange Theme [cannot be used simultaneously with other themes]
echo.
echo "Guide" Generate Guide ONLY
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe RC 4.1U
echo ModMii.exe RC 4.2E Red
echo ModMii.exe RC 4.3J Orange Guide
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlinewizardhelp
title ModMii Wizard Command Line Help
support\sfk echo [%redtext%]ModMii Wizard Express Mode Usage
echo.
echo ModMii.exe W CurrentFirm Region DesiredFirm Extras Options
echo.
echo ModMii.exe 1 2 3 4 5 Extras Options
echo.
echo 1) Wizard "W"
echo 2) CurrentSystemMenu: "4.3","4.2","4.1","4.0","3.X" [3.0-3.5], "O" [other ^<2.2]
echo 3) Region: "U","E","J","K"
echo. If your Wii was Region Changed but not originally Korean,
echo select the Region you are currently on
echo 4) DesiredSystemMenu (Optional): "4.1", "4.2", "4.3"
echo Note: If DesiredSystemMenu not specified ModMii uses recommended SystemMenu
echo.
echo Extras:
echo "Red" Red Theme [cannot be used simultaneously with other themes]
echo "Green" Green Theme [cannot be used simultaneously with other themes]
echo "Blue" Blue Theme [cannot be used simultaneously with other themes]
echo "Orange" Orange Theme [cannot be used simultaneously with other themes]
echo.
echo "CH" All Wii Channels [ie. Photo, Mii, etc.]
echo "PHOTO" Photo Channel
echo "SHOP" Shopping Channel [and IOS56]
echo "MII" Mii Channel
::echo "SPEAK" Wii Speak Channel [not applicable to Korean Wiis]
::echo "NEWS" News Channel [not applicable to Korean Wiis]
echo "NET" Internet Channel [not applicable to Korean Wiis]
::echo "WEATHER" Weather Channel [not applicable to Korean Wiis]
echo.
echo "USB" Set-up a USB-loader [choose no more than one of each A and B]
echo A - "CFG" Use Configurable USB-Loader
echo "FLOW" Use WiiFlow
echo "GX" Use USB-Loader GX [default]
echo "CFG-FLOW-GX" Use Configurable USB-Loader, WiiFlow and USB-Loader GX
echo B - "USBConfig" Save USB-Loader Config files to USB [default]
echo "SDConfig" Save USB-Loader Config files to SD Card
echo.
echo "Min" Minimal Update - Choose one or more of the following updates:
echo "HBC" Homebrew Channel and\or Bootmii
echo "REC" Recommended cIOSs (and cMIOS if enabled in options)
echo "Pri" Priiloader and hacks_hash.ini
echo.
echo "Guide" Generate Guide ONLY
echo.
echo "str2hax" to use str2hax
echo "MAC:aabbccddeeff" to use Wilbrand 4.3 exploit
echo "LetterBomb" to use LetterBomb 4.3 exploit
echo.
echo Force a disc based exploit for 4.3 and ^<2.2 Wii's
echo "SmashStack" Smash Stack (U\E\J\K)
echo "IndianaPwns" IndianaPwns (U\E\J)
echo "Bathaxx" Bathaxx (U\E\J)
echo "ROTJ" Return of the Jodi (U\E\J)
echo "YuGiOwned" Yu-Gi Owned (U\E\J)
echo "EriHakawai" Eri Hakawai (U\E\J)
echo "Twilight" Twilight Hack (^<2.2 U\E\J\K)
echo "AllExploits" All Exploits
echo.
echo Notes:
echo Default for 4.3 Wii's is "AllExploits"
echo Default for ^<2.2 Wii's is "AllExploits"
echo Guides for 3.0-4.2 Wii's always use Bannerbomb as primary
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe W 3.X U 4.1
echo ModMii.exe W 4.2 U 4.2 Blue CH USB
echo ModMii.exe W 4.1 J 4.1 Green USB Flow SDConfig
echo ModMii.exe W 4.3 E 4.3 MII PHOTO Min REC Green
echo ModMii.exe W o U AllExploits
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineAWhelp
title ModMii Abstinence Wizard Command Line Help
support\sfk echo [%redtext%]ModMii Abstinence Wizard Express Mode Usage
echo.
echo ModMii.exe AW SystemMenu SNEEK-TYPE SNKSystemMenu SNKRegion Extras Options
echo.
echo ModMii.exe 1 2 3 4 5 Extras Options
echo.
echo 1) Abstinence Wizard "AW"
echo 2) SystemMenu: "4.3","4.2","4.1","4.0","3.X" [3.0-3.5], "O" [other ^<2.2]
echo 3) SNEEK-TYPE: "S" SNEEK, "U" UNEEK, "SD" SNEEK+DI, "UD" UNEEK+DI
echo 4) SNKSystemMenu: "4.1", "4.2", "4.3"
echo 5) SNKRegion: "U","E","J","K"
echo.
echo Extras:
echo "Guide" Generate Guide ONLY
echo.
echo "str2hax" to use str2hax
echo "MAC:aabbccddeeff" to use Wilbrand 4.3 exploit
echo "LetterBomb" to use LetterBomb 4.3 exploit
echo.
echo Force a disc based exploit for 4.3 and ^<2.2 Wii's
echo "SmashStack" Smash Stack (U\E\J\K)
echo "IndianaPwns" IndianaPwns (U\E\J)
echo "Bathaxx" Bathaxx (U\E\J)
echo "ROTJ" Return of the Jodi (U\E\J)
echo "YuGiOwned" Yu-Gi Owned (U\E\J)
echo "EriHakawai" Eri Hakawai (U\E\J)
echo "Twilight" Twilight Hack (^<2.2 U\E\J\K)
echo "AllExploits" All Exploits
echo.
echo Notes:
echo Default for 4.3 Wii's is "AllExploits"
echo Default for ^<2.2 Wii's is "AllExploits"
echo Guides for 3.0-4.2 Wii's always use Bannerbomb as primary
echo.
echo "Rev:#" Build a Specific Rev # of neek or neek2o
echo.
echo Note: If a Rev # is not specified ModMii will build the
echo rev currently Featured on the google-code page
echo (or newest version saved locally if you are offline).
echo If using this, you should also use the n2o argument.
echo.
echo "Red" Red Theme [cannot be used simultaneously with other themes]
echo "Green" Green Theme [cannot be used simultaneously with other themes]
echo "Blue" Blue Theme [cannot be used simultaneously with other themes]
echo "Orange" Orange Theme [cannot be used simultaneously with other themes]
echo.
echo "OHBC" Open Homebrew Channel (LULZ)
echo "PLC" postLoader Channel
echo "249" cIOS249 rev14
echo "Pri" Priiloader (and hacks)
echo "FLOW" WiiFlow Forwarder and App
echo.
echo "SN:Serial-Number" - default serial will be used if not specified
echo.
echo "CH" All Wii Channels [ie. Photo, Mii, etc.]
echo "PHOTO" Photo Channel
echo "SHOP" Shopping Channel
echo "MII" Mii Channel
::echo "SPEAK" Wii Speak Channel [not applicable to Korean NANDs]
::echo "NEWS" News Channel [not applicable to Korean NANDs]
echo "NET" Internet Channel [not applicable to Korean NANDs]
::echo "WEATHER" Weather Channel [not applicable to Korean NANDs]
echo.
echo "WADdir:Path?" - Optionally specify custom folder of WADs to install.
echo Note: do not forget the "?" which marks the end of the path
echo.
echo "n2o:E" Optional: force override settings to enable neek2o
echo "n2o:D" Optional: force override settings to disable neek2o
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe AW 4.2 SD 4.3 U
echo ModMii.exe AW o SD 4.3 J SmashStack
echo ModMii.exe AW 4.1 UD 4.2 E Orange PLC 249 Pri FLOW CH Rev:64 n2o:E
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineUSBhelp
title ModMii USB-Loader Command Line Help
support\sfk echo [%redtext%]ModMii USB-Loader Set-up Express Mode Usage
echo.
echo ModMii.exe U Extras Options
echo.
echo Extras:
echo Choose no more than one of each A and B:
echo A - "CFG" Use Configurable USB-Loader
echo "FLOW" Use WiiFlow
echo "GX" Use USB-Loader GX [default]
echo "CFG-FLOW-GX" Use Configurable USB-Loader, WiiFlow and USB-Loader GX
echo B - "USBConfig" Save USB-Loader Config files to USB [default]
echo "SDConfig" Save USB-Loader Config files to SD Card
echo.
echo "Guide" Generate Guide ONLY
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe U
echo ModMii.exe U Flow
echo ModMii.exe U CFG-Flow SDConfig
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineHMhelp
title ModMii HackMii Solutions Command Line Help
support\sfk echo [%redtext%]ModMii HackMii Solutions Express Mode Usage
echo.
echo ModMii.exe HS SystemMenu Extras Options
echo.
echo ModMii.exe 1 2 Extras Options
echo.
echo 1) HackMii Solutions "HS"
echo 2) SystemMenu: "4.3","4.2","4.1","4.0","3.X" [3.0-3.5], "O" [other ^<2.2]
echo.
echo Extras:
echo "Guide" Generate Guide ONLY
echo.
echo "str2hax" to use str2hax
echo "MAC:aabbccddeeff" to use Wilbrand 4.3 exploit
echo "LetterBomb" to use LetterBomb 4.3 exploit
echo.
echo Force a disc based exploit for 4.3 and ^<2.2 Wii's
echo "SmashStack" Smash Stack (U\E\J\K)
echo "IndianaPwns" IndianaPwns (U\E\J)
echo "Bathaxx" Bathaxx (U\E\J)
echo "ROTJ" Return of the Jodi (U\E\J)
echo "YuGiOwned" Yu-Gi Owned (U\E\J)
echo "EriHakawai" Eri Hakawai (U\E\J)
echo "Twilight" Twilight Hack (^<2.2 U\E\J\K)
echo "AllExploits" All Exploits
echo.
echo Notes:
echo Default for 4.3 Wii's is "AllExploits"
echo Default for ^<2.2 Wii's is "AllExploits"
echo Guides for 3.0-4.2 Wii's always use Bannerbomb as primary
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe HS 4.3
echo ModMii.exe HS 4.1
echo ModMii.exe HS 3.X
echo ModMii.exe HS o SmashStack
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineSYSCHECKhelp
title ModMii SysCheck Updater Command Line Help
support\sfk echo [%redtext%]ModMii SysCheck Updater Express Mode Usage
echo.
echo ModMii.exe SU SysCheck.csv Extras Options
echo.
echo ModMii.exe 1 2 Extras Options
echo.
echo 1) SysCheck Updater "SU"
echo 2) SysCheck Log Path\Name
echo.
echo Extras:
echo "Guide" Generate Guide ONLY
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe SU SysCheck.csv
echo ModMii.exe SU X:\New Folder\SysCheck.csv
echo ModMii.exe SU "XFlaks-SysCheck.csv" Guide
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineSNEEKhelp
title ModMii SNEEK Installation Command Line Help
support\sfk echo [%redtext%]ModMii SNEEK Installation Express Mode Usage
echo.
echo ModMii.exe S SNEEK-TYPE Extras Options
echo.
echo SNEEK-TYPE: "S" SNEEK, "U" UNEEK, "SD" SNEEK+DI, "UD" UNEEK+DI
echo.
echo Extras:
echo "Rev:#" Build a Specific Rev # of neek or neek2o
echo.
echo Note: If a Rev # is not specified ModMii will build the
echo rev currently Featured on the google-code page
echo (or newest version saved locally if you are offline).
echo If using this, you should also use the n2o argument.
echo.
echo "n2o:E" Optional: force override settings to enable neek2o
echo "n2o:D" Optional: force override settings to disable neek2o
echo.
support\sfk echo [%bluetext%]Example:
echo ModMii.exe S UD
echo ModMii.exe S SD Rev:64 n2o:E
echo.
echo Note: You can install S\UNEEK and simultaneously build an emulated
echo NAND using the Emulated NAND builder instructions below.
echo.
:cmdlineEMUNANDhelp
title ModMii Emulated NAND Builder Command Line Help
support\sfk echo [%redtext%]ModMii Emulated NAND Builder Express Mode Usage
echo.
echo ModMii.exe E SNEEK-TYPE SystemMenu Region Extras Options
echo.
echo ModMii.exe 1 2 3 4 Extras Options
echo.
echo 1) Emulated NAND Builder "E" [or "SE" to install S\UNEEK AND build a NAND]
echo 2) SNEEK-TYPE: "S" SNEEK, "U" UNEEK, "SD" SNEEK+DI, "UD" UNEEK+DI
echo 3) SystemMenu: "4.1", "4.2", "4.3"
echo 4) Region: "U","E","J","K"
echo.
echo Extras:
echo "Rev:#" Build a Specific Rev # of neek or neek2o
echo.
echo Note: If a Rev # is not specified ModMii will build the
echo rev currently Featured on the google-code page
echo (or newest version saved locally if you are offline).
echo If using this, you should also use the n2o argument.
echo.
echo "Red" Red Theme [cannot be used simultaneously with other themes]
echo "Green" Green Theme [cannot be used simultaneously with other themes]
echo "Blue" Blue Theme [cannot be used simultaneously with other themes]
echo "Orange" Orange Theme [cannot be used simultaneously with other themes]
echo.
echo "OHBC" Open Homebrew Channel (LULZ)
echo "PLC" postLoader Channel
echo "249" cIOS249 rev14
echo "S2U" Switch2Uneek [only for UNEEK or UNEEK+DI when neek2o disabled]
echo "Pri" Priiloader (and hacks)
echo "FLOW" WiiFlow Forwarder and App
echo "NMM" No More Memory Cards [cannot be used simultaneously with DML]
echo "DML" Dios Mios Lite [only for SNEEK+DI]
echo.
echo "SN:Serial-Number" - default serial will be used if not specified
echo.
echo "CH" All Wii Channels [ie. Photo, Mii, etc.]
echo "PHOTO" Photo Channel
echo "SHOP" Shopping Channel
echo "MII" Mii Channel
::echo "SPEAK" Wii Speak Channel [not applicable to Korean NANDs]
::echo "NEWS" News Channel [not applicable to Korean NANDs]
echo "NET" Internet Channel [not applicable to Korean NANDs]
::echo "WEATHER" Weather Channel [not applicable to Korean NANDs]
echo.
echo "WADdir:Path?" - Optionally specify custom folder of WADs to install.
echo Note: do not forget the "?" which marks the end of the path
echo.
echo "n2o:E" Optional: force override settings to enable neek2o
echo "n2o:D" Optional: force override settings to disable neek2o
echo.
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe E U 4.3 U
echo ModMii.exe SE UD 4.2 U Orange PLC 249 NMM S2U Pri FLOW CH Rev:64 n2o:E
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineDLQUEUEhelp
title ModMii Download Queue Command Line Help
support\sfk echo [%redtext%]ModMii Download Queue Express Mode Usage
echo.
echo ModMii.exe L DownloadQueue Options
echo.
echo Note: Download Queue must exist and be saved in temp\DownloadQueues\
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe L cIOSs
echo ModMii.exe L My Fav Themes.bat
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
:cmdlineOPTIONShelp
title ModMii Options Command Line Help
support\sfk echo [%redtext%]Options
echo.
echo Define ModMii's options using the following commands.
echo.
echo Note: If an option is not defined ModMii will use saved\default settings.
echo Saved\default settings will be restored after each command.
echo If you're unsure of what an option does, read the description
echo in ModMii's options page.
echo.
support\sfk echo [%cyantext%]Drive Letter or Path setting for SD Card
echo ModMii.exe [base command] Drive:Path?
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe [base command] Drive:new folder?
echo ModMii.exe [base command] Drive:E:?
echo.
echo Note: do not forget the "?" which marks the end of the path
echo.
support\sfk echo [%cyantext%]Drive Letter or Path setting for USB Hard Drive
echo ModMii.exe [base command] DriveU:Path?
echo.
support\sfk echo [%bluetext%]Examples:
echo ModMii.exe [base command] DriveU:new folder?
echo ModMii.exe [base command] DriveU:H:?
echo.
echo Note: do not forget the "?" which marks the end of the path
echo.
support\sfk echo [%cyantext%]PC Program Save Location
echo ModMii.exe [base command] PC:A
echo ModMii.exe [base command] PC:L
echo ModMii.exe [base command] PC:P
echo.
echo Where;
echo A = Auto, L = Local, and P = Portable
echo.
support\sfk echo [%cyantext%]Root Save
echo ModMii.exe [base command] RS:E
echo ModMii.exe [base command] RS:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Channel Effect
echo ModMii.exe [base command] CE:NS
echo ModMii.exe [base command] CE:S
echo ModMii.exe [base command] CE:FS
echo.
echo Where;
echo NS = No Spin, S = Spin and FS = Fast Spin
echo.
support\sfk echo [%cyantext%]Keep 00000001 Folder and\or NUS Folder
echo ModMii.exe [base command] 1:0
echo ModMii.exe [base command] 1:1
echo ModMii.exe [base command] 1:N
echo ModMii.exe [base command] 1:A
echo.
echo Where;
echo 0 = do not keep, 1 = keep 00000001, N = keep NUS and A = keep All
echo.
support\sfk echo [%cyantext%]Update Active IOSs
echo ModMii.exe [base command] UIOS:E
echo ModMii.exe [base command] UIOS:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Auto-Updating downloads will skip update check if cached
echo ModMii.exe [base command] AUSKIP:E
echo ModMii.exe [base command] AUSKIP:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Include cMIOS in ModMii Wizard Downloads
echo ModMii.exe [base command] CMIOS:E
echo ModMii.exe [base command] CMIOS:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Include hermes cIOSs in ModMii's Recommended cIOSs
echo ModMii.exe [base command] hermes:E
echo ModMii.exe [base command] hermes:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Play Sound at Finish
echo ModMii.exe [base command] SOUND:E
echo ModMii.exe [base command] SOUND:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Include USB-Loader Forwarder Channel in ModMii Wizard Downloads
echo ModMii.exe [base command] FWD:E
echo ModMii.exe [base command] FWD:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Verbose Output for ModMii and SNEEK Installer
echo ModMii.exe [base command] VERBOSE:E
echo ModMii.exe [base command] VERBOSE:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]neek2o - build neek2o mod of s\uneek by OverjoY and obcd
echo ModMii.exe [base command] n2o:E
echo ModMii.exe [base command] n2o:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]SNEEK and SNEEK+DI SD Access
echo ModMii.exe [base command] SSD:E
echo ModMii.exe [base command] SSD:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]SNEEK Verbose Output
echo ModMii.exe [base command] SNKVERBOSE:E
echo ModMii.exe [base command] SNKVERBOSE:D
echo.
echo Where;
echo E = Enabled and D = Disabled
echo.
support\sfk echo [%cyantext%]Font.bin Colour for SNEEK/UNEEK
echo ModMii.exe [base command] Font:B
echo ModMii.exe [base command] Font:W
echo ModMii.exe [base command] Font:R
echo.
echo Where;
echo B = Black and W = White and R = Red
echo.
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
::this will stop the batch file from opening, and keep the cmd box open
::cmd.exe
:cmdlineDhelp
title ModMii Drag and Drop Help and Info
support\sfk echo [%redtext%]ModMii Drag and Drop Help and Info
echo.
echo Individual or multiple items can be dragged and dropped onto ModMii
echo or a ModMii shortcut; check out the ModMii Toolbar for quicklaunch access!
echo.
echo You can also right-click an item and choose to open it with ModMii.
echo.
echo Note: If dragging a folder launches into a "wrong" activity, check that there aren't
echo other file types saved in the same folder; i.e. if trying to load a folder of
echo myms, make sure there aren't any WADs saved to the same folder or subfolders.
echo.
support\sfk echo [%bluetext%]nand.bin tools [%cyantext%](nand.bin)[def]; Extract, Check, Clone or Defragment a Wii nand.bin file
echo Examples: nand.bin, anything.bin
echo.
support\sfk echo [%bluetext%]HBC Transfer Tool [%cyantext%](zip, 7z, rar)[def]; wirelessly transfer apps to the device selected in the Homebrew Channnel (e.g.SD,USB)
echo Examples: usbloader_gx.7z, yawmME.zip, anything.rar
echo.
support\sfk echo [%bluetext%]App Launcher [%cyantext%](dol, elf)[def]; launch apps from your PC to your Wii via WiFi, no SD\USB required
echo Examples: boot.dol, boot.elf, anything.dol, anything.elf
echo.
support\sfk echo [%bluetext%]WAD Sender [%cyantext%](WAD, folder of WADs)[def]; install WADs ^<8MB from your PC to your Wii via WiFi, no SD\USB required
echo Examples: anything.wad, or any folder containing WADs
echo.
support\sfk echo [%bluetext%]WAD Modifier [%cyantext%](WAD)[def]; Modify Channel attributes (Title,ID,IOS,DOL,Fakesign) or IOSs attributes (Patches,Slot,Version)
echo Examples: anything.wad
echo.
support\sfk echo [%bluetext%]WAD Unpacker [%cyantext%](WAD, folder of WADs)[def]; unpack WADs
echo Examples: anything.wad, or any folder containing WADs
echo.
support\sfk echo [%bluetext%]WAD Packer [%cyantext%](unpacked WAD folder or component file - app, cert, footer, tik, tmd)[def]; repack WAD
echo Examples: Any_Unpacked_WAD_Folder, or any file inside an unpacked WAD folder (e.g. 00000000.app, cert, footer, tik, tmd)
echo.
support\sfk echo [%bluetext%]CSM Theme Builder [%cyantext%](mym, csm, folder of myms, folder of csms)[def]; Create csm files to install Wii themes using MyMenuify
echo Examples: DarkWii_Purple.mym, Random_Theme_4.1U.csm, MYM_Folder, CSM_Folder
echo.
support\sfk echo [%bluetext%]SysCheck Updater [%cyantext%](SysCheck.csv)[def]; update only your outdated softmods
echo Examples: SysCheck.csv, or any csv that was created by SysCheck and renamed
echo.
support\sfk echo [%bluetext%]App Updater ^& File Cleanup [%cyantext%](SD\USB Drives or Folders)[def]; Update Apps and\or remove un-needed files
echo Examples: W:, X:, COPY_TO_SD, COPY_TO_USB
echo.
support\sfk echo [%bluetext%]Emulated Nand Modifer [%cyantext%](EmuNand Folder)[def]; Edit an Emulated NAND
echo Examples: pl_us, or any folder containing an Emulated NAND System Menu; i.e. \title\00000001\00000002\content\title.tmd
echo.
support\sfk echo [%bluetext%]Load Download Queue [%cyantext%](ModMii_Download_Queue.bat)[def]; Load a ModMii Download Queue
echo Examples: ModMii_Download_Queue.bat, or any download queue that was created by ModMii
echo.
support\sfk echo [%bluetext%]Load Wizard Settings [%cyantext%](Wizard_Settings.bat)[def]; Load Saved ModMii Wizard Settings from previous session
echo Examples: Wizard_Settings.bat, or any Wizard_Settings.bat that was created by ModMii and renamed
echo.
support\sfk echo [%bluetext%]Calculate Hashes [%cyantext%](everything else)[def]; Calculate file hashes using HashMyFiles
echo Examples: anything.doc, *.*, New_Folder, any file or folder not mentioned above
echo.
echo Press Any Key to Close the Help Menu...
pause>nul
exit
::-----------------------------------
:hardcodedoptions
echo "%cmdinput%">temp\cmdinput.txt
support\sfk -spat filter temp\cmdinput.txt -lsrep _\x22__ -lerep _\x22__ -write -yes>nul
findStr /I ":" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 goto:nohardcodedoptions
::backup current settings (in order to revert after cmd)
if not exist support\settings.bat echo ::ModMii Settings >support\settings.bat
copy /y support\settings.bat support\settings.bak>nul
::-----------DRIVE: (ie. DRIVE:whatever_ test?)---------------
findStr /I " Drive:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:nodrivecmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
::check if a ? was entered
findStr /I "?" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (echo Please mark the end of your Drive setting using a question mark "?", try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* DRIVE:"__ -rep _\x3f*__ -write -yes>nul
support\sfk filter temp\cmdinput2.txt -rep _"^"_"^^"_ -rep _"&"_"^&"_ -rep _"("_"^("_ -rep _")"_"^)"_ -write -yes>nul
set /p DRIVE= <temp\cmdinput2.txt
set DRIVE=%DRIVE:"=%
:doublecheckcmd1
set fixslash=
if /i "%DRIVE:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVE:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVE=%DRIVE:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckcmd1
::if second char is ":" check if drive exists
if /i "%DRIVE:~1,1%" NEQ ":" goto:skipcheck
if exist "%DRIVE:~0,2%" (goto:skipcheck) else (echo "%DRIVE:~0,2%" doesn't exist, please try again...)
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:skipcheck
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set*Drive=" -write -yes>nul
echo Set "Drive=%DRIVE%">>Support\settings.bat
::remove from temp\cmdinput.txt (compensate for _'s by replacing them with \x5f)
support\sfk -spat filter temp\cmdinput2.txt -rep _\x5f_\x22_ -write -yes>nul
support\sfk filter -quiet temp\cmdinput2.txt -rep _"""_\x5f_ -write -yes
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" Drive:%removeme%?"__ -write -yes>nul
:nodrivecmd
::-----------DRIVEU: (ie. DRIVEU:whatever_ test?)---------------
findStr /I " DRIVEU:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noDRIVEUcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
::check if a ? was entered
findStr /I "?" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (echo Please mark the end of your DriveU setting using a question mark "?", try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* DRIVEU:"__ -rep _\x3f*__ -write -yes>nul
support\sfk filter temp\cmdinput2.txt -rep _"^"_"^^"_ -rep _"&"_"^&"_ -rep _"("_"^("_ -rep _")"_"^)"_ -write -yes>nul
set /p DRIVEU= <temp\cmdinput2.txt
set DRIVEU=%DRIVEU:"=%
:doublecheckcmd
set fixslash=
if /i "%DRIVEU:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVEU:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVEU=%DRIVEU:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckcmd
::if second char is ":" check if DRIVEU exists
if /i "%DRIVEU:~1,1%" NEQ ":" goto:skipcheck
if exist "%DRIVEU:~0,2%" (goto:skipcheck) else (echo "%DRIVEU:~0,2%" doesn't exist, please try again...)
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:skipcheck
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set*DRIVEU=" -write -yes>nul
echo Set "DRIVEU=%DRIVEU%">>Support\settings.bat
::remove from temp\cmdinput.txt (compensate for _'s by replacing them with \x5f)
support\sfk -spat filter temp\cmdinput2.txt -rep _\x5f_\x22_ -write -yes>nul
support\sfk filter -quiet temp\cmdinput2.txt -rep _"""_\x5f_ -write -yes
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" DRIVEU:%removeme%?"__ -write -yes>nul
:noDRIVEUcmd
::-----------WADdir: (ie. WADdir:whatever_ test?)---------------
findStr /I " WADdir:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noWADdircmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
::check if a ? was entered
findStr /I "?" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (echo Please mark the end of your WADdir setting using a question mark "?", try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* WADdir:"__ -rep _\x3f*__ -write -yes>nul
set /p addwadfolder= <temp\cmdinput2.txt
:doublecheckcmd2
set fixslash=
if /i "%addwadfolder:~-1%" EQU "\" set fixslash=yes
if /i "%addwadfolder:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "addwadfolder=%addwadfolder:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckcmd2
if not exist "%addwadfolder%" (echo %addwadfolder% doesn't exist, please try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (exit)
::make sure second char is ":"
if /i "%addwadfolder:~1,1%" NEQ ":" (echo Enter the full path including the drive letter, please try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (exit)
if not exist "%addwadfolder%\*.wad" (echo No Wads found in %addwadfolder%, please try a different folder...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (exit)
::remove from temp\cmdinput.txt (compensate for _'s by replacing them with \x5f)
support\sfk -spat filter temp\cmdinput2.txt -rep _\x5f_\x22_ -write -yes>nul
support\sfk filter -quiet temp\cmdinput2.txt -rep _"""_\x5f_ -write -yes
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" WADdir:%removeme%?"__ -write -yes>nul
:noWADdircmd
::-----------PC: Option---------------
findStr /I " PC:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noPCcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* PC:"__ -rep _\x20*__ -write -yes>nul
set /p PCSAVEcmd= <temp\cmdinput2.txt
if /i "%PCSAVEcmd%" EQU "A" set PCSAVE=Auto
if /i "%PCSAVEcmd%" EQU "L" set PCSAVE=Local
if /i "%PCSAVEcmd%" EQU "P" set PCSAVE=Portable
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set PCSAVE=" -write -yes>nul
echo Set PCSAVE=%PCSAVE%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" PC:%removeme%"__ -write -yes>nul
:noPCcmd
::-----------RS: Option---------------
findStr /I " RS:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noRScmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* RS:"__ -rep _\x20*__ -write -yes>nul
set /p ROOTSAVEcmd= <temp\cmdinput2.txt
if /i "%ROOTSAVEcmd%" EQU "E" set ROOTSAVE=ON
if /i "%ROOTSAVEcmd%" EQU "D" set ROOTSAVE=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set ROOTSAVE=" -write -yes>nul
echo Set ROOTSAVE=%ROOTSAVE%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" RS:%removeme%"__ -write -yes>nul
:noRScmd
::-----------CE: Option---------------
findStr /I " CE:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noCEcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* CE:"__ -rep _\x20*__ -write -yes>nul
set /p effectcmd= <temp\cmdinput2.txt
if /i "%effectcmd%" EQU "NS" set effect=No-Spin
if /i "%effectcmd%" EQU "S" set effect=Spin
if /i "%effectcmd%" EQU "FS" set effect=Fast-Spin
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set effect=" -write -yes>nul
echo Set effect=%effect%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" CE:%removeme%"__ -write -yes>nul
:noCEcmd
::-----------keep *01 or NUS Folders---------------
findStr /I " 1:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:no1cmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* 1:"__ -rep _\x20*__ -write -yes>nul
set /p Option1cmd= <temp\cmdinput2.txt
if /i "%Option1cmd%" EQU "0" set Option1=off
if /i "%Option1cmd%" EQU "1" set Option1=on
if /i "%Option1cmd%" EQU "N" set Option1=nus
if /i "%Option1cmd%" EQU "A" set Option1=all
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set Option1=" -write -yes>nul
echo Set Option1=%Option1%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" 1:%removeme%"__ -write -yes>nul
:no1cmd
::-----------UIOS: Option---------------
findStr /I " UIOS:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noUIOScmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* UIOS:"__ -rep _\x20*__ -write -yes>nul
set /p ACTIVEIOScmd= <temp\cmdinput2.txt
if /i "%ACTIVEIOScmd%" EQU "E" set ACTIVEIOS=ON
if /i "%ACTIVEIOScmd%" EQU "D" set ACTIVEIOS=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set ACTIVEIOS=" -write -yes>nul
echo Set ACTIVEIOS=%ACTIVEIOS%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" UIOS:%removeme%"__ -write -yes>nul
:noUIOScmd
::-----------AUSKIP: Option---------------
findStr /I " AUSKIP:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noAUSKIPcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* AUSKIP:"__ -rep _\x20*__ -write -yes>nul
set /p AUSKIPcmd= <temp\cmdinput2.txt
if /i "%AUSKIPcmd%" EQU "E" set AUSKIP=ON
if /i "%AUSKIPcmd%" EQU "D" set AUSKIP=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set AUSKIP=" -write -yes>nul
echo Set AUSKIP=%AUSKIP%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" AUSKIP:%removeme%"__ -write -yes>nul
:noAUSKIPcmd
::-----------SOUND: Option---------------
findStr /I " SOUND:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noSOUNDcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* SOUND:"__ -rep _\x20*__ -write -yes>nul
set /p AudioOptioncmd= <temp\cmdinput2.txt
if /i "%AudioOptioncmd%" EQU "E" set AudioOption=ON
if /i "%AudioOptioncmd%" EQU "D" set AudioOption=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set AudioOption=" -write -yes>nul
echo Set AudioOption=%AudioOption%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" SOUND:%removeme%"__ -write -yes>nul
:noSOUNDcmd
::-----------CMIOS: Option---------------
findStr /I " CMIOS:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noCMIOScmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* CMIOS:"__ -rep _\x20*__ -write -yes>nul
set /p CMIOSOPTIONcmd= <temp\cmdinput2.txt
if /i "%CMIOSOPTIONcmd%" EQU "E" set CMIOSOPTION=ON
if /i "%CMIOSOPTIONcmd%" EQU "D" set CMIOSOPTION=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set CMIOSOPTION=" -write -yes>nul
echo Set CMIOSOPTION=%CMIOSOPTION%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" CMIOS:%removeme%"__ -write -yes>nul
:noCMIOScmd
::-----------hermes: Option---------------
findStr /I " hermes:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:nohermescmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* hermes:"__ -rep _\x20*__ -write -yes>nul
set /p hermesOPTIONcmd= <temp\cmdinput2.txt
if /i "%hermesOPTIONcmd%" EQU "E" set hermesOPTION=ON
if /i "%hermesOPTIONcmd%" EQU "D" set hermesOPTION=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set hermesOPTION=" -write -yes>nul
echo Set hermesOPTION=%hermesOPTION%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" hermes:%removeme%"__ -write -yes>nul
:nohermescmd
::-----------USB-Loader Forwarder: Option---------------
findStr /I " FWD:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noFWDcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* FWD:"__ -rep _\x20*__ -write -yes>nul
set /p FWDOPTIONcmd= <temp\cmdinput2.txt
if /i "%FWDOPTIONcmd%" EQU "E" set FWDOPTION=ON
if /i "%FWDOPTIONcmd%" EQU "D" set FWDOPTION=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set FWDOPTION=" -write -yes>nul
echo Set FWDOPTION=%FWDOPTION%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" FWD:%removeme%"__ -write -yes>nul
:noFWDcmd
::-----------VERBOSE: Option---------------
findStr /I " VERBOSE:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noVERBOSEcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* VERBOSE:"__ -rep _\x20*__ -write -yes>nul
set /p ModMiiverbosecmd= <temp\cmdinput2.txt
if /i "%ModMiiverbosecmd%" EQU "E" set ModMiiverbose=ON
if /i "%ModMiiverbosecmd%" EQU "D" set ModMiiverbose=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set ModMiiverbose=" -write -yes>nul
echo Set ModMiiverbose=%ModMiiverbose%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" VERBOSE:%removeme%"__ -write -yes>nul
:noVERBOSEcmd
::-----------n2o: Option---------------
findStr /I " n2o:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:non2ocmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* n2o:"__ -rep _\x20*__ -write -yes>nul
set /p NEEKcmd= <temp\cmdinput2.txt
if /i "%NEEKcmd%" EQU "E" set neek2o=ON
if /i "%NEEKcmd%" EQU "D" set neek2o=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set neek2o=" -write -yes>nul
echo Set neek2o=%neek2o%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" n2o:%removeme%"__ -write -yes>nul
:non2ocmd
::-----------SSD: Option---------------
findStr /I " SSD:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noSSDcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* SSD:"__ -rep _\x20*__ -write -yes>nul
set /p SSDcmd= <temp\cmdinput2.txt
if /i "%SSDcmd%" EQU "E" set SSD=ON
if /i "%SSDcmd%" EQU "D" set SSD=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set SSD=" -write -yes>nul
echo Set SSD=%SSD%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" SSD:%removeme%"__ -write -yes>nul
:noSSDcmd
::-----------snkverbose: Option---------------
findStr /I " snkverbose:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:nosnkverbosecmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* snkverbose:"__ -rep _\x20*__ -write -yes>nul
set /p sneekverbosecmd= <temp\cmdinput2.txt
if /i "%sneekverbosecmd%" EQU "E" set sneekverbose=ON
if /i "%sneekverbosecmd%" EQU "D" set sneekverbose=OFF
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set sneekverbose=" -write -yes>nul
echo Set sneekverbose=%sneekverbose%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" snkverbose:%removeme%"__ -write -yes>nul
:nosnkverbosecmd
::-----------Font: Option---------------
findStr /I " Font:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noFontcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* Font:"__ -rep _\x20*__ -write -yes>nul
set /p SNKFONTcmd= <temp\cmdinput2.txt
if /i "%SNKFONTcmd%" EQU "B" set SNKFONT=B
if /i "%SNKFONTcmd%" EQU "W" set SNKFONT=W
if /i "%SNKFONTcmd%" EQU "R" set SNKFONT=R
::overwrite option in settings.bat
support\sfk filter Support\settings.bat -!"Set SNKFONT=" -write -yes>nul
echo Set SNKFONT=%SNKFONT%>>Support\settings.bat
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" Font:%removeme%"__ -write -yes>nul
:noFontcmd
::-----------GUI: Option---------------
findStr /I " GUI:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noGUIcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* GUI:"__ -rep _\x20*__ -write -yes>nul
set /p GUIModecmd= <temp\cmdinput2.txt
if /i "%GUIModecmd%" EQU "E" (set GUIMode=Y) & (set SkinMode=Y)
if /i "%GUIModecmd%" EQU "D" set GUIMode=
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" GUI:%removeme%"__ -write -yes>nul
::GUI mode mostly the same as Skin Mode except no "wizapp PB OPEN" command
goto:noSkincmd
:noGUIcmd
::-----------Skin: Option---------------
findStr /I " Skin:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noSkincmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* Skin:"__ -rep _\x20*__ -write -yes>nul
set /p SkinModecmd= <temp\cmdinput2.txt
if /i "%SkinModecmd%" EQU "E" set SkinMode=Y
if /i "%SkinModecmd%" EQU "D" set SkinMode=
if /i "%SkinMode%" NEQ "Y" goto:noprogress
set watitle=ModMii Skin
if exist "Support\Skins\%skin%\skin.ico" (set "waico=Support\Skins\%skin%\skin.ico") else (set "waico=Support\Skins\Default\skin.ico")
if exist "Support\Skins\%skin%\CLASSIC.bmp" (set "wabmp=Support\Skins\%skin%\CLASSIC.bmp") else (set "wabmp=Support\Skins\Default\CLASSIC.bmp")
set temp=temp
set wabat=%TEMP%\wabat.bat
set wasig=ModMii v%currentversion% by XFlak
set watext=~~~ModMii Classic Working...
::support\nircmd.exe win activate ititle "ModMiiSkinCMD"
::support\nircmd.exe win hide ititle "ModMiiSkinCMD"
start support\wizapp PB OPEN
::------Check for old Windows Versions-------
::ver | findstr /i "5\.0\." > nul
::IF %ERRORLEVEL% EQU 0 set OSYS=2000
::ver | findstr /i "5\.1\." > nul
::IF %ERRORLEVEL% EQU 0 set OSYS=XP
::ver | findstr /i "5\.2\." > nul
::IF %ERRORLEVEL% EQU 0 set OSYS=2003
::::ver | findstr /i "6\.0\." > nul
::::IF %ERRORLEVEL% EQU 0 set OSYS=VISTA
::::ver | findstr /i "6\.1\." > nul
::::IF %ERRORLEVEL% EQU 0 set OSYS=SEVEN
::if not "%OSYS%"=="" title ModMii
:noprogress
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk filter temp\cmdinput.txt -rep _" Skin:%removeme%"__ -write -yes>nul
:noSkincmd
::remove hard options from %cmdinput% to avoid conflict
set /p cmdinput= <temp\cmdinput.txt
:nohardcodedoptions
if /i "%one%" EQU "W" goto:cmdlinewizard
if /i "%one%" EQU "RC" goto:cmdlineRegionChange
if /i "%one%" EQU "HS" goto:cmdlinehackmiisolutions
if /i "%one%" EQU "S" goto:cmdlinesneekinstaller
if /i "%one%" EQU "U" goto:cmdlineUSBLoaderSetup
if /i "%one%" EQU "SE" goto:cmdlineemunandbuilder
if /i "%one%" EQU "E" goto:cmdlineemunandbuilder
if /i "%one%" EQU "L" goto:cmdlineloadqueue
if /i "%one%" EQU "SU" goto:cmdlinesyscheck
if /i "%one%" EQU "AW" goto:cmdlineabstinenceWizard
::-----------------------------------
:cmdlinewizard
set MENU1=%one%
set VIRGIN=Y
if /i "%two%" EQU "4.3" set FIRMSTART=%two%
if /i "%two%" EQU "4.2" set FIRMSTART=%two%
if /i "%two%" EQU "4.1" set FIRMSTART=%two%
if /i "%two%" EQU "4.0" set FIRMSTART=%two%
if /i "%two%" EQU "3.X" set FIRMSTART=%two%
if /i "%two%" EQU "o" set FIRMSTART=%two%
if "%firmstart%"=="" (echo "%two%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%three%" EQU "U" set REGION=%three%
if /i "%three%" EQU "E" set REGION=%three%
if /i "%three%" EQU "J" set REGION=%three%
if /i "%three%" EQU "K" set REGION=%three%
if "%region%"=="" (echo "%three%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%four%" EQU "4.3" set FIRM=%four%
if /i "%four%" EQU "4.2" set FIRM=%four%
if /i "%four%" EQU "4.1" set FIRM=%four%
if not "%firm%"=="" goto:nofirmdefaults
set FIRM=4.1
if /i "%FIRMSTART%" EQU "4.2" set FIRM=4.2
if /i "%FIRMSTART%" EQU "4.3" set FIRM=4.3
:nofirmdefaults
::----EXtras------
::set defaults
set ThemeSelection=N
set MIIQ=N
set PIC=N
set NET=N
set WEATHER=N
set NEWS=N
set SHOP=N
set SPEAK=N
set USBGUIDE=N
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
::----themes----
findStr /I " Red" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=R)
if /i "%ThemeSelection%" EQU "R" goto:donecmdthemes
findStr /I " Green" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=G)
if /i "%ThemeSelection%" EQU "G" goto:donecmdthemes
findStr /I " Blue" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=BL)
if /i "%ThemeSelection%" EQU "BL" goto:donecmdthemes
findStr /I " Orange" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=O)
if /i "%ThemeSelection%" EQU "O" goto:donecmdthemes
:donecmdthemes
findStr /I " CH" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set MIIQ=N) else (set MIIQ=Y)
::if /i "%MIIQ%" EQU "Y" set MIIQ=Y
if /i "%MIIQ%" EQU "Y" set PIC=Y
if /i "%MIIQ%" EQU "Y" set SHOP=Y
if /i "%REGION%" EQU "K" goto:nomoreKchannels
if /i "%MIIQ%" EQU "Y" set NET=Y
::if /i "%MIIQ%" EQU "Y" set WEATHER=Y
::if /i "%MIIQ%" EQU "Y" set NEWS=Y
::if /i "%MIIQ%" EQU "Y" set SPEAK=Y
:nomoreKchannels
if /i "%MIIQ%" EQU "Y" goto:alreadygotallchannels
findStr /I " PHOTO" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set PIC=N) else (set PIC=Y)
findStr /I " SHOP" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SHOP=N) else (set SHOP=Y)
findStr /I " MII" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set MIIQ=N) else (set MIIQ=Y)
if /i "%REGION%" EQU "K" goto:alreadygotallchannels
::findStr /I " SPEAK" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set SPEAK=N) else (set SPEAK=Y)
::findStr /I " NEWS" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set NEWS=N) else (set NEWS=Y)
findStr /I " NET" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set NET=N) else (set NET=Y)
::findStr /I " WEATHER" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set WEATHER=N) else (set WEATHER=Y)
:alreadygotallchannels
findStr /I " USB" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noUSBcmd) else (set USBGUIDE=Y)
::Loader - GX (or 1) is default
set LOADER=GX
findStr /I " CFG-FLOW-GX" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 set (LOADER=ALL) & (goto:donecmdloader)
findStr /I " CFG" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 (set LOADER=CFG) & (goto:donecmdloader)
findStr /I " FLOW" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 set LOADER=FLOW
:donecmdloader
::USB-Loader Config files (USB is default)
findStr /I " SDConfig" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set USBCONFIG=USB) else (set USBCONFIG=SD)
:noUSBcmd
findStr /I " Min" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:notminupdate) else (set VIRGIN=N)
findStr /I " HBC" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set HMInstaller=N) else (set HMInstaller=Y)
findStr /I " REC" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set RECCIOS=N) else (set RECCIOS=Y)
findStr /I " Pri" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set PRIQ=N) else (set PRIQ=Y)
:notminupdate
goto:cmdlineExploitCheck
::---------------------------------
:cmdlinehackmiisolutions
set MENU1=H
if /i "%two%" EQU "4.3" set FIRMSTART=%two%
if /i "%two%" EQU "4.2" set FIRMSTART=%two%
if /i "%two%" EQU "4.1" set FIRMSTART=%two%
if /i "%two%" EQU "4.0" set FIRMSTART=%two%
if /i "%two%" EQU "3.X" set FIRMSTART=%two%
if /i "%two%" EQU "o" set FIRMSTART=%two%
if "%firmstart%"=="" (echo "%two%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
:cmdlineExploitCheck
if /i "%FIRMSTART%" EQU "4.3" goto:cmdline4.3Exploits
if /i "%FIRMSTART%" EQU "o" goto:cmdlineDiscExploits
goto:nocmdlineDiscExploits
::-----------MAC:*---------------
:cmdline4.3Exploits
findStr /I " MAC:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noMACcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
set EXPLOIT=W
support\sfk filter -spat temp\cmdinput2.txt -rep _"* MAC:"__ -rep _\x20*__ -rep _"-"__ -rep _":"__ -write -yes>nul
set /p macaddress= <temp\cmdinput2.txt
if "%macaddress%" EQU "s" goto:quickskip
if "%macaddress%" EQU "S" goto:quickskip
::confirm 12 digits
if "%macaddress:~11%"=="" goto:badkey
if not "%macaddress:~12%"=="" goto:badkey
::confirm MAC addy is hex chars
set digit=0
:confirmMACaddycmd
if /i "%SkinMode%" EQU "Y" goto:quickskip
set /a digit=%digit%+1
set testme=
if /i "%digit%" EQU "1" set testme=%macaddress:~0,1%
if /i "%digit%" EQU "2" set testme=%macaddress:~1,1%
if /i "%digit%" EQU "3" set testme=%macaddress:~2,1%
if /i "%digit%" EQU "4" set testme=%macaddress:~3,1%
if /i "%digit%" EQU "5" set testme=%macaddress:~4,1%
if /i "%digit%" EQU "6" set testme=%macaddress:~5,1%
if /i "%digit%" EQU "7" set testme=%macaddress:~6,1%
if /i "%digit%" EQU "8" set testme=%macaddress:~7,1%
if /i "%digit%" EQU "9" set testme=%macaddress:~8,1%
if /i "%digit%" EQU "10" set testme=%macaddress:~9,1%
if /i "%digit%" EQU "11" set testme=%macaddress:~10,1%
if /i "%digit%" EQU "12" set testme=%macaddress:~11,1%
if "%testme%"=="" goto:quickskip
if /i "%testme%" EQU "0" goto:confirmMACaddycmd
if /i "%testme%" EQU "1" goto:confirmMACaddycmd
if /i "%testme%" EQU "2" goto:confirmMACaddycmd
if /i "%testme%" EQU "3" goto:confirmMACaddycmd
if /i "%testme%" EQU "4" goto:confirmMACaddycmd
if /i "%testme%" EQU "5" goto:confirmMACaddycmd
if /i "%testme%" EQU "6" goto:confirmMACaddycmd
if /i "%testme%" EQU "7" goto:confirmMACaddycmd
if /i "%testme%" EQU "8" goto:confirmMACaddycmd
if /i "%testme%" EQU "9" goto:confirmMACaddycmd
if /i "%testme%" EQU "a" goto:confirmMACaddycmd
if /i "%testme%" EQU "b" goto:confirmMACaddycmd
if /i "%testme%" EQU "c" goto:confirmMACaddycmd
if /i "%testme%" EQU "d" goto:confirmMACaddycmd
if /i "%testme%" EQU "e" goto:confirmMACaddycmd
if /i "%testme%" EQU "f" goto:confirmMACaddycmd
goto:badkey
:quickskip
::pass
goto:noMACcmd
:badkey
echo "%macaddress%" is not a valid MAC Address, try again...
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:noMACcmd
:cmdlineDiscExploits
findStr /I /C:" LetterBomb" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 (set EXPLOIT=W) & (set macaddress=S)
:cmdlineDiscExploits
findStr /I /C:" IndianaPwns" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=L
findStr /I /C:" Bathaxx" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=LB
findStr /I /C:" ROTJ" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=LS
findStr /I /C:" YuGiOwned" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=Y
findStr /I /C:" SmashStack" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=S
if /i "%FIRMSTART%" NEQ "o" goto:notwi
findStr /I /C:" Twilight" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=T
:notwi
findStr /I /C:" AllExploits" temp\cmdinput.txt >nul
IF not ERRORLEVEL 1 set EXPLOIT=?
::apply default exploits
if not "%EXPLOIT%"=="" goto:nocmdlineDiscExploits
if /i "%firmstart%" EQU "4.3" set EXPLOIT=?
if /i "%firmstart%" EQU "o" set EXPLOIT=?
:nocmdlineDiscExploits
::set macaddress to (S)kip for letterbomb if no MAC provided and all exploits selected
if not "%macaddress%"=="" goto:skip
if /i "%EXPLOIT%" NEQ "?" goto:skip
if /i "%firmstart%" EQU "4.3" set macaddress=S
:skip
goto:go
::---------------------------------
:cmdlineRegionChange
set MENU1=%one%
set FIRMSTART=
if /i "%two:~0,3%" EQU "4.3" set FIRM=%two:~0,3%
if /i "%two:~0,3%" EQU "4.2" set FIRM=%two:~0,3%
if /i "%two:~0,3%" EQU "4.1" set FIRM=%two:~0,3%
if "%firm%"=="" (echo "%two:~0,3%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%two:~3,1%" EQU "U" set REGION=%two:~3,1%
if /i "%two:~3,1%" EQU "E" set REGION=%two:~3,1%
if /i "%two:~3,1%" EQU "J" set REGION=%two:~3,1%
if /i "%two:~3,1%" EQU "K" set REGION=%two:~3,1%
if "%region%"=="" (echo "%two:~3,1%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
::----themes----
findStr /I " Red" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=R)
if /i "%ThemeSelection%" EQU "R" goto:donecmdthemes
findStr /I " Green" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=G)
if /i "%ThemeSelection%" EQU "G" goto:donecmdthemes
findStr /I " Blue" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=BL)
if /i "%ThemeSelection%" EQU "BL" goto:donecmdthemes
findStr /I " Orange" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=O)
if /i "%ThemeSelection%" EQU "O" goto:donecmdthemes
:donecmdthemes
goto:go
::---------------------------------
:cmdlineUSBLoaderSetup
set MENU1=%one%
::Loader - GX (or 1) is default
set LOADER=GX
findStr /I " CFG-FLOW-GX" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 (set LOADER=ALL) & (goto:donecmdloader)
findStr /I " CFG" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 (set LOADER=CFG) & (goto:donecmdloader)
findStr /I " FLOW" temp\cmdinput.txt >nul
IF NOT ERRORLEVEL 1 set LOADER=FLOW
:donecmdloader
::USB-Loader Config files (USB is default)
findStr /I " SDConfig" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set USBCONFIG=USB) else (set USBCONFIG=SD)
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
goto:go
::---------------------------------
:cmdlinesyscheck
set MENU1=SU
findStr /I ".csv" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (echo A csv file was not identified, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul
support\sfk filter -spat temp\cmdinput2.txt -rep _".csv*"_".csv"_ -write -yes>nul
set /p sysCheckName= <temp\cmdinput2.txt
if /i "%syscheckname:~0,3%" EQU "SU " set "syscheckname=%syscheckname:~3%"
if not exist "%sysCheckName%" (echo The csv file identified does not exist, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
findStr /I /C:"syscheck" "%sysCheckName%" >nul
IF ERRORLEVEL 1 (echo This is not a valid SysCheck log, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
echo "%syscheckname%">temp\cmdinput2.txt
::remove from temp\cmdinput.txt (compensate for _'s by replacing them with \x5f)
support\sfk -spat filter temp\cmdinput2.txt -lsrep _\x22__ -lerep _\x22__ -rep _\x5f_\x22_ -write -yes>nul
support\sfk filter -quiet temp\cmdinput2.txt -rep _"""_\x5f_ -write -yes
::remove cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" %removeme%"__ -write -yes>nul
del temp\cmdinput2.txt>nul
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
::goto:sysCheckAnalyzer
goto:go
::---------------------------------
:cmdlineloadqueue
set MENU1=L
if /i "%cmdlinemodeswitchoff%" NEQ "Y" goto:notdragged
::dragged
findStr /I /C:":endofqueue" "%cmdinput%" >nul
IF ERRORLEVEL 1 (echo Not a valid ModMii Download Queue...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
support\sfk filter -spat temp\cmdinput.txt -rep _*\__ -write -yes>nul
set /p two= <temp\cmdinput.txt
if not exist "temp\DownloadQueues" mkdir "temp\DownloadQueues"
copy /y "%cmdinput%" "temp\DownloadQueues\%two%">nul
goto:skip
:notdragged
set "two=%cmdinput:~2%"
:skip
if "%two:~-4%" EQU ".bat" set "two=%two:~0,-4%"
if exist "temp\DownloadQueues\%two%.bat" set "DLQUEUE=%two%"
if "%DLQUEUE%"=="" (echo "%two%" does not exist, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
set "CurrentQueue=%DLQUEUE%.bat"
goto:go
::---------------------------------
:cmdlineabstinenceWizard
set MENU1=S
set AbstinenceWiz=Y
set SNEEKSELECT=3
if /i "%two%" EQU "4.3" set FIRMSTART=%two%
if /i "%two%" EQU "4.2" set FIRMSTART=%two%
if /i "%two%" EQU "4.1" set FIRMSTART=%two%
if /i "%two%" EQU "4.0" set FIRMSTART=%two%
if /i "%two%" EQU "3.X" set FIRMSTART=%two%
if /i "%two%" EQU "o" set FIRMSTART=%two%
if "%firmstart%"=="" (echo "%two%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%three%" EQU "S" set SNEEKTYPE=%three%
if /i "%three%" EQU "U" set SNEEKTYPE=%three%
if /i "%three%" EQU "SD" set SNEEKTYPE=%three%
if /i "%three%" EQU "UD" set SNEEKTYPE=%three%
if "%SNEEKTYPE%"=="" (echo "%three%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
set DITYPE=off
if /i "%SNEEKTYPE%" EQU "UD" set DITYPE=on
if /i "%SNEEKTYPE%" EQU "SD" set DITYPE=on
if /i "%four%" EQU "4.3" set SNKVERSION=%four%
if /i "%four%" EQU "4.2" set SNKVERSION=%four%
if /i "%four%" EQU "4.1" set SNKVERSION=%four%
if "%SNKVERSION%"=="" (echo "%four%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%five%" EQU "U" set SNKREGION=%five%
if /i "%five%" EQU "E" set SNKREGION=%five%
if /i "%five%" EQU "J" set SNKREGION=%five%
if /i "%five%" EQU "K" set SNKREGION=%five%
if "%SNKREGION%"=="" (echo "%five%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
findStr /I " Guide" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set cmdguide=) else (set cmdguide=G)
if /i "%cmdguide%" EQU "G" set settings=G
::parse other variables from other sections
goto:SNKserialCMD
::then after goto:cmdlineExploitCheck
::---------------------------------
:cmdlinesneekinstaller
::if not "%three%"=="" goto:cmdlineemunandbuilder
set MENU1=S
set SNEEKSELECT=1
if /i "%two%" EQU "S" set SNEEKTYPE=%two%
if /i "%two%" EQU "U" set SNEEKTYPE=%two%
if /i "%two%" EQU "SD" set SNEEKTYPE=%two%
if /i "%two%" EQU "UD" set SNEEKTYPE=%two%
if "%SNEEKTYPE%"=="" (echo "%two%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
::-----------Rev:#---------------
set neekrev=1
findStr /I " Rev:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noRevcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
set neekrev=
support\sfk filter -spat temp\cmdinput2.txt -rep _"* Rev:"__ -rep _\x20*__ -write -yes>nul
set /p CurrentRev= <temp\cmdinput2.txt
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" Rev:%removeme%"__ -write -yes>nul
if /i "%neek2o%" EQU "ON" (set googlecode=neek2o) & (set neekname=neek2o)
if /i "%neek2o%" NEQ "ON" (set googlecode=sneeky-compiler-modmii) & (set neekname=neek)
if exist "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" goto:noRevcmd
start /min /wait support\wget --no-check-certificate -t 3 "http://ufpr.dl.sourceforge.net/project/%googlecode%/%neekname%-rev%CurrentRev%.zip"
if not exist "%neekname%-rev%CurrentRev%.zip" (echo "%CurrentRev%" is not a valid input, using latest version instead...) & (echo check this URL for available versions: https://sourceforge.net/projects/%googlecode%/files/?source=navbar) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (set neekrev=1) & (set CurrentRev=) & (goto:noRevcmd)
if not exist "temp\%neekname%" mkdir "temp\%neekname%"
move /y "%neekname%-rev%CurrentRev%.zip" "temp\%neekname%\%neekname%-rev%CurrentRev%.zip">nul
:noRevcmd
goto:go
::---------------------------------
:cmdlineemunandbuilder
set MENU1=S
if /i "%one%" EQU "E" set SNEEKSELECT=2
if /i "%one%" EQU "SE" set SNEEKSELECT=3
if /i "%two%" EQU "S" set SNEEKTYPE=%two%
if /i "%two%" EQU "U" set SNEEKTYPE=%two%
if /i "%two%" EQU "SD" set SNEEKTYPE=%two%
if /i "%two%" EQU "UD" set SNEEKTYPE=%two%
if "%SNEEKTYPE%"=="" (echo "%two%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
set DITYPE=off
if /i "%SNEEKTYPE%" EQU "UD" set DITYPE=on
if /i "%SNEEKTYPE%" EQU "SD" set DITYPE=on
if /i "%three%" EQU "4.3" set SNKVERSION=%three%
if /i "%three%" EQU "4.2" set SNKVERSION=%three%
if /i "%three%" EQU "4.1" set SNKVERSION=%three%
if "%SNKVERSION%"=="" (echo "%three%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
if /i "%four%" EQU "U" set SNKREGION=%four%
if /i "%four%" EQU "E" set SNKREGION=%four%
if /i "%four%" EQU "J" set SNKREGION=%four%
if /i "%four%" EQU "K" set SNKREGION=%four%
if "%SNKREGION%"=="" (echo "%four%" is not a valid input, try again...) & (if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (exit)
:SNKserialCMD
::-----------SN: (ie. SN:LU111111111)---------------
findStr /I " SN:" temp\cmdinput.txt >nul
if ERRORLEVEL 1 (goto:noSNcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
support\sfk filter -spat temp\cmdinput2.txt -rep _"* SN:"__ -rep _\x20*__ -write -yes>nul
set /p SNKSERIAL= <temp\cmdinput2.txt
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" SN:%removeme%"__ -write -yes>nul
::limit user input to X# of digits
if "%SNKSERIAL:~2%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~3%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~4%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~5%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~6%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~7%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~8%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~9%"=="" (goto:badsnkkey)
if "%SNKSERIAL:~10%"=="" (goto:badsnkkey)
if /i "%SNKREGION%" EQU "U" goto:skip
::if "%SNKSERIAL:~11%"=="" (goto:badsnkkey)
:skip
if not "%SNKSERIAL:~12%"=="" (goto:badsnkkey)
::next page
goto:skipSNdefaults
:badsnkkey
echo "%SNKSERIAL%" is not a valid input, try again...
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
@ping 127.0.0.1 -n 5 -w 1000> nul
exit
:noSNcmd
if /i "%SNKREGION%" EQU "U" set SNKSERIAL=LU521175683
if /i "%SNKREGION%" EQU "E" set SNKSERIAL=LEH133789940
if /i "%SNKREGION%" EQU "J" set SNKSERIAL=LJM101175683
if /i "%SNKREGION%" EQU "K" set SNKSERIAL=LJM101175683
:skipSNdefaults
::-----------Rev:#---------------
set neekrev=1
findStr /I " Rev:" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (goto:noRevcmd) else (copy /y temp\cmdinput.txt temp\cmdinput2.txt>nul)
set neekrev=
support\sfk filter -spat temp\cmdinput2.txt -rep _"* Rev:"__ -rep _\x20*__ -write -yes>nul
set /p CurrentRev= <temp\cmdinput2.txt
::remove hard option from cmdinput.txt
set /p removeme= <temp\cmdinput2.txt
support\sfk -spat filter temp\cmdinput.txt -rep _" Rev:%removeme%"__ -write -yes>nul
if /i "%neek2o%" EQU "ON" (set googlecode=neek2o) & (set neekname=neek2o)
if /i "%neek2o%" NEQ "ON" (set googlecode=sneeky-compiler-modmii) & (set neekname=neek)
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" goto:noRevcmd
if exist "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" goto:noRevcmd
start /min /wait support\wget --no-check-certificate -t 3 "http://ufpr.dl.sourceforge.net/project/%googlecode%/%neekname%-rev%CurrentRev%.zip"
if not exist "%neekname%-rev%CurrentRev%.zip" (echo "%CurrentRev%" is not a valid input, using latest version instead...) & (echo check this URL for available versions: https://sourceforge.net/projects/%googlecode%/files/?source=navbar) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (set neekrev=1) & (set CurrentRev=) & (goto:noRevcmd)
if not exist "temp\%neekname%" mkdir "temp\%neekname%"
move /y "%neekname%-rev%CurrentRev%.zip" "temp\%neekname%\%neekname%-rev%CurrentRev%.zip">nul
:noRevcmd
::----------Other-----------
::set defaults
set ThemeSelection=N
set SNKPLC=N
set SNKOHBC=N
set SNKCIOS=N
set SNKcBC=N
set SNKPRI=N
set SNKFLOW=N
set SNKS2U=N
set MIIQ=N
set PIC=N
set NET=N
set WEATHER=N
set NEWS=N
set SHOP=N
set SPEAK=N
if /i "%SNEEKTYPE:~0,1%" NEQ "U" goto:notUorUD
findStr /I " S2U" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKS2U=N) else (set SNKS2U=Y)
:notUorUD
findStr /I " CH" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set MIIQ=N) else (set MIIQ=Y)
::if /i "%MIIQ%" EQU "Y" set MIIQ=Y
if /i "%MIIQ%" EQU "Y" set PIC=Y
if /i "%MIIQ%" EQU "Y" set SHOP=Y
if /i "%SNKREGION%" EQU "K" goto:nomoreKchannels
if /i "%MIIQ%" EQU "Y" set NET=Y
::if /i "%MIIQ%" EQU "Y" set WEATHER=Y
::if /i "%MIIQ%" EQU "Y" set NEWS=Y
::if /i "%MIIQ%" EQU "Y" set SPEAK=Y
:nomoreKchannels
if /i "%MIIQ%" EQU "Y" goto:alreadygotallchannels
findStr /I " PHOTO" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set PIC=N) else (set PIC=Y)
findStr /I " SHOP" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SHOP=N) else (set SHOP=Y)
findStr /I " MII" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set MIIQ=N) else (set MIIQ=Y)
if /i "%SNKREGION%" EQU "K" goto:alreadygotallchannels
::findStr /I " SPEAK" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set SPEAK=N) else (set SPEAK=Y)
::findStr /I " NEWS" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set NEWS=N) else (set NEWS=Y)
findStr /I " NET" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set NET=N) else (set NET=Y)
::findStr /I " WEATHER" temp\cmdinput.txt >nul
::IF ERRORLEVEL 1 (set WEATHER=N) else (set WEATHER=Y)
:alreadygotallchannels
findStr /I " PLC" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKPLC=N) else (set SNKPLC=Y)
findStr /I " OHBC" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKOHBC=N) else (set SNKOHBC=Y)
findStr /I " 249" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKcIOS=N) else (set SNKcIOS=Y)
findStr /I " NMM" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKcBC=N) else (set SNKcBC=NMM)
::DML only if using SNEEK+DI and if NMM is not also selected
if /i "%SNKcBC%" EQU "NMM" goto:skipDMLcmd
if /i "%SNEEKTYPE%" NEQ "SD" goto:skipDMLcmd
findStr /I " DML" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKcBC=N) else (set SNKcBC=DML)
:skipDMLcmd
findStr /I " Pri" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKPRI=N) else (set SNKPRI=Y)
findStr /I " FLOW" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set SNKFLOW=N) else (set SNKFLOW=Y)
::----themes----
findStr /I " Red" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=R)
if /i "%ThemeSelection%" EQU "R" goto:donecmdthemes
findStr /I " Green" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=G)
if /i "%ThemeSelection%" EQU "G" goto:donecmdthemes
findStr /I " Blue" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=BL)
if /i "%ThemeSelection%" EQU "BL" goto:donecmdthemes
findStr /I " Orange" temp\cmdinput.txt >nul
IF ERRORLEVEL 1 (set ThemeSelection=N) else (set ThemeSelection=O)
if /i "%ThemeSelection%" EQU "O" goto:donecmdthemes
:donecmdthemes
if /i "%AbstinenceWiz%" EQU "Y" goto:cmdlineExploitCheck
goto:go
::---------------------------------
:go
title ModMii...
if exist temp\cmdinput.txt del temp\cmdinput.txt>nul
if exist temp\cmdinput2.txt del temp\cmdinput2.txt>nul
::mode con cols=85 lines=54
support\nircmd.exe win setsize ititle "ModMii..." 0 0 705 820
::support\nircmd.exe win setsize title "Administrator: ModMii..." 0 0 705 820
title ModMii
::support\cmdow.exe ModMii /siz 650 820
color %backgroundcolor%%whitetext%
goto:defaultsettings
:notcmd
::---------------------------------------------------------
title ModMii...
::mode con cols=85 lines=54
support\nircmd.exe win setsize ititle "ModMii..." 0 0 705 820
::support\nircmd.exe win setsize title "Administrator: ModMii..." 0 0 705 820
title ModMii
::support\cmdow.exe ModMii /siz 650 820
color %backgroundcolor%%whitetext%
::SET FILENAME=%~nx0 //this returns the name of the batch file running (doesn't work when packaged in an exe)
::SET PATHNAME=%0 //this returns the filename but also with absolute path
if exist support\skipscam.txt (set /p skipversion= <support\skipscam.txt) else (goto:dontskip)
if /i "%skipversion%" EQU "%currentversion%" goto:skip
:dontskip
::Bushing from Team Twizzers specifically requested ModMii include a scam warning
set warning=
echo ModMii
echo by XFlak
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] THIS SOFTWARE IS NOT FOR SALE.
echo.
echo IF YOU PAID FOR THIS SOFTWARE OR RECEIVED IT AS PART OF A "BUNDLE"
echo YOU HAVE BEEN SCAMMED AND YOU SHOULD DEMAND YOUR MONEY BACK IMMEDIATELY
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] USE THIS AT YOUR OWN RISK!
echo.
echo THIS PACKAGE COMES WITH ABSOLUTELY NO WARRANTY, NEITHER STATED NOR IMPLIED.
echo NO ONE BUT YOURSELF IS TO BE HELD RESPONSIBLE FOR ANY DAMAGE THIS MAY CAUSE
echo TO YOUR NINTENDO WII CONSOLE!
echo.
echo.
echo.
echo Please type the word "I" followed by the word "Agree"
echo with a space between those two words and
echo then press "Enter" to continue.
echo.
echo If you can't follow those instructions,
echo then you have no business modding anything.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
set /p warning= Enter Selection Here:
if /i "%warning%" EQU "I Agree" goto:skip
if /i "%warning%" EQU "skipscam" goto:doit
if /i "%warning%" NEQ "skip scam" goto:dontdoit
:doit
if exist support\skipscam.txt attrib -r -h -s support\skipscam.txt
echo %currentversion%>Support\skipscam.txt
attrib +r +h +s support\skipscam.txt
goto:skip
:dontdoit
echo.
echo Exiting ModMii...
@ping 127.0.0.1 -n 2 -w 1000> nul
Exit
:skip
::Save version agreed to
if exist Support\settings.bat support\sfk filter -quiet Support\settings.bat -ls!"set AGREEDVERSION=" -write -yes
echo set AGREEDVERSION=%currentversion%>> Support\settings.bat
:DefaultSettings
::----LOAD SETTINGS (if exist)----
if exist Support\settings.bat call Support\settings.bat
call "Support\subscripts\DB.bat"
::-----default settings (default applies even if a single variable is missing from settings.bat)------
IF "%ROOTSAVE%"=="" set ROOTSAVE=off
IF "%effect%"=="" set effect=No-Spin
IF "%PCSAVE%"=="" set PCSAVE=Auto
IF "%OPTION1%"=="" set OPTION1=off
IF "%AudioOption%"=="" set AudioOption=on
IF "%hermesOPTION%"=="" set hermesOPTION=off
IF "%CMIOSOPTION%"=="" set CMIOSOPTION=off
IF "%FWDOPTION%"=="" set FWDOPTION=on
IF "%ExtraProtectionOPTION%"=="" set ExtraProtectionOPTION=on
IF "%Drive%"=="" set Drive=COPY_TO_SD
IF "%DriveU%"=="" set DriveU=COPY_TO_USB
IF "%ACTIVEIOS%"=="" set ACTIVEIOS=on
IF "%AUSKIP%"=="" set AUSKIP=off
IF "%AUTOUPDATE%"=="" set AUTOUPDATE=on
IF "%ModMiiverbose%"=="" set ModMiiverbose=off
IF "%sneekverbose%"=="" set sneekverbose=off
IF "%neek2o%"=="" set neek2o=on
IF "%SSD%"=="" set SSD=off
::IF "%discexverify%"=="" set discexverify=off
IF "%SNKFONT%"=="" set SNKFONT=B
IF "%skin%"=="" set skin=Default
if exist "Support\Skins\%skin%\Success.mp3" (set "Success.mp3=Support\Skins\%skin%\Success.mp3") else (set "Success.mp3=Support\Skins\Default\Success.mp3")
if exist "Support\Skins\%skin%\Fail.mp3" (set "Fail.mp3=Support\Skins\%skin%\Fail.mp3") else (set "Fail.mp3=Support\Skins\Default\Fail.mp3")
::IF "%overwritecodes%"=="" set overwritecodes=off
::IF "%cheatregion%"=="" set cheatregion=All
::IF "%cheatlocation%"=="" set cheatlocation=B
::IF "%wiicheat%"=="" set wiicheat=ON
::IF "%WiiWarecheat%"=="" set WiiWarecheat=ON
::IF "%VCArcadecheat%"=="" set VCArcadecheat=OFF
::IF "%WiiChannelscheat%"=="" set WiiChannelscheat=ON
::IF "%Gamecubecheat%"=="" set Gamecubecheat=ON
::IF "%NEScheat%"=="" set NEScheat=ON
::IF "%SNEScheat%"=="" set SNEScheat=ON
::IF "%N64cheat%"=="" set N64cheat=ON
::IF "%SMScheat%"=="" set SMScheat=ON
::IF "%Segacheat%"=="" set Segacheat=ON
::IF "%NeoGeocheat%"=="" set NeoGeocheat=ON
::IF "%Commodorecheat%"=="" set Commodorecheat=ON
::IF "%MSXcheat%"=="" set MSXcheat=ON
::IF "%TurboGraFX-16cheat%"=="" set TurboGraFX-16cheat=ON
::IF "%TurboGraFX-CDcheat%"=="" set TurboGraFX-CDcheat=ON
::check for supporting apps that AVs are known to remove
if not exist support\libWiiSharp.dll (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\patchios.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\wadmii.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\hexalter.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\settings.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\nircmd.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\smw-mod.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\wit.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
::if not exist support\fvc.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\sfk.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\nusd.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\NUSDownloader.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\Sharpii.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\WadInstaller.dll (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
if not exist support\NusFileGrabber.exe (echo One or more of ModMii's supporting files are missing, redownloading...) & (set currentversion=0.0.0) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:UpdateModMii)
::Special update
::if /i "%AGREEDVERSION%" GEQ "6.3.2" goto:nospecialupdate
:::nospecialupdate
if /i "%cmdlinemode%" EQU "Y" goto:noupdateincmdlinemode
if /i "%AUTOUPDATE%" EQU "on" goto:UpdateModMii
:noupdateincmdlinemode
::......................................................MAIN MENU..............................................
:MENU
color %backgroundcolor%%whitetext%
if exist temp\ModMii_Log.bat del temp\ModMii_Log.bat>nul
if exist temp\DLgotos-copy.txt del temp\DLgotos-copy.txt>nul
::----restore settings if applicable (download queue and sneek nand builder)----
IF "%MENU1%"=="" goto:NOCLEAR
if /i "%MENU1%" NEQ "O" goto:Cleartempsettings
goto:NOCLEAR
:Cleartempsettings
Set ROOTSAVE=%ROOTSAVETEMP%
Set Option1=%Option1TEMP%
if exist Support\settings.bat call Support\settings.bat
:NOCLEAR
::---SET TEMP SETTINGS FOR DL QUE---
Set ROOTSAVETEMP=%ROOTSAVE%
Set Option1TEMP=%Option1%
::variables that interfere with cmd line wizard
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" EQU "Y" goto:MENUafterbadvars
SET VIRGIN=
set REGIONCHANGE=
SET FIRMSTART=
set macaddress=
set PIC=
set NET=
set WEATHER=
set NEWS=
set SHOP=
set SPEAK=
set MIIQ=
set REGION=
set SNKREGION=
set UpdatesIOSQ=
set SNEEKTYPE=
set SNEEKSELECT=
set USBGUIDE=
set LOADER=
set cfgfullrelease=NONE
SET EXPLOIT=default
if /i "%USBCONFIG%" EQU "USB" set "DRIVE=%DRIVETEMP%"
set addwadfolder=
set AbstinenceWiz=
:MENUafterbadvars
set MORE=
SET DEC=
SET HEX=
SET VER=
SET CONFIRM=
set loadorgo=go
set SMAPP=
set customSMfix=
set secondmmmrun=
::SET EXPLOIT=default
set exploitselection=
set COPY=
set DLTOTAL=0
set OPTIONS=
set DB=N
::set cfgfullrelease=NONE
::if /i "%USBCONFIG%" EQU "USB" set "DRIVE=%DRIVETEMP%"
::set USBGUIDE=
::set LOADER=
::set SNEEKTYPE=
::set SNEEKSELECT=
::set patchIOSnum=36 or 236
::--followup--
IF "%Drive%"=="" set Drive=COPY_TO_SD
IF "%DriveU%"=="" set DriveU=COPY_TO_USB
if /i "%cmdlinemode%" NEQ "Y" set USBCONFIG=
::set USBCONFIG=
::if second char is ":" check if drive exists
if /i "%DRIVE:~1,1%" NEQ ":" goto:skipcheck
if not exist "%DRIVE:~0,2%" set DRIVE=COPY_TO_SD
:skipcheck
::if second char is ":" check if driveU exists
if /i "%DRIVEU:~1,1%" NEQ ":" goto:skipcheck
if not exist "%DRIVEU:~0,2%" set DRIVE=COPY_TO_USB
:skipcheck
:CLEAR
set basewad=none
set basewadb=none
set CurrentDLNAME=
set AdvNumber=0
if exist temp\DLnamesADV.txt del temp\DLnamesADV.txt>nul
if exist temp\DLgotosADV.txt del temp\DLgotosADV.txt>nul
set EULAU=
set EULAE=
set EULAJ=
set EULAK=
set RSU=
set RSE=
set RSJ=
set RSK=
set BC=
set SM3.2U=
set SM4.1U=
set SM4.2U=
set SM4.3U=
set SM3.2E=
set SM4.1E=
set SM4.2E=
set SM4.3E=
set SM3.2J=
set SM4.1J=
set SM4.2J=
set SM4.3J=
set SM4.1K=
set SM4.2K=
set SM4.3K=
set SM4.3U-DWR=
set SM4.2U-DWR=
set SM4.1U-DWR=
set SM4.3E-DWR=
set SM4.2E-DWR=
set SM4.1E-DWR=
set SM4.3J-DWR=
set SM4.2J-DWR=
set SM4.1J-DWR=
set SM4.3K-DWR=
set SM4.2K-DWR=
set SM4.1K-DWR=
set SM4.3U-DWG=
set SM4.2U-DWG=
set SM4.1U-DWG=
set SM4.3E-DWG=
set SM4.2E-DWG=
set SM4.1E-DWG=
set SM4.3J-DWG=
set SM4.2J-DWG=
set SM4.1J-DWG=
set SM4.3K-DWG=
set SM4.2K-DWG=
set SM4.1K-DWG=
set SM4.3U-DWB=
set SM4.2U-DWB=
set SM4.1U-DWB=
set SM4.3E-DWB=
set SM4.2E-DWB=
set SM4.1E-DWB=
set SM4.3J-DWB=
set SM4.2J-DWB=
set SM4.1J-DWB=
set SM4.3K-DWB=
set SM4.2K-DWB=
set SM4.1K-DWB=
set SM4.3U-DWO=
set SM4.2U-DWO=
set SM4.1U-DWO=
set SM4.3E-DWO=
set SM4.2E-DWO=
set SM4.1E-DWO=
set SM4.3J-DWO=
set SM4.2J-DWO=
set SM4.1J-DWO=
set SM4.3K-DWO=
set SM4.2K-DWO=
set SM4.1K-DWO=
set IOS30=
set IOS30P=
set IOS30P60=
set IOS40P60=
set IOS20P60=
set IOS11P60=
set IOS50P=
set IOS52P=
set IOS60=
set IOS60P=
set IOS70=
set IOS70P=
set IOS80=
set IOS80P=
set IOS236=
set IOS70K=
set IOS80K=
set BB1=
set BB2=
set HM=
set IOS236Installer=
set SIP=
set DumpMii=
set casper=
set Wilbrand=
set syscheck=
set locked=
set AccioHacks=
set usbgx=
set nintendont=
set MyM=
set HBB=
set WII64=
set Not64=
set Dolphin=
set FILEZILLA=
set hxd=
set Diskitude=
set Nkit=
set RC24=
set SDTEST=
set HashMF=
set ThemeMiiMod=
set GCBM=
set ftpii=
set CheatZip=
set OSC=
set WIISX=
set bootmiisd=
set pwns=
set twi=
set twi2=
set YUGI=
set Bathaxx=
set ROTJ=
set TOS=
set smash=
set mmm=
set CleanRip=
set ARC=
set KK=
set yawm=
set neogamma=
set usbfolder=
set WiiMC=
set fceugx=
set snes9xgx=
set STUBS=
set vbagx=
set SGM=
set PL=
set WIIX=
set flow=
set wbm=
set CheatCodes=
set f32=
set WiiGSC=
set ohnes=
set SMW=
set CM=
set USBX=
set FLOWF=
set S2U=
set nswitch=
set PLC=
set OHBC=
set Pri=
set HAX=
set CM5=
set MP=
set MII=
set P=
set P0=
set S=
set SK=
set IU=
set IE=
set IJ=
set WU=
set WE=
set WJ=
set NU=
set NE=
set NJ=
set WSU=
set WSE=
set WSJ=
set M10=
set IOS9=
set IOS12=
set IOS13=
set IOS14=
set IOS15=
set IOS17=
set IOS21=
set IOS22=
set IOS28=
set IOS31=
set IOS33=
set IOS34=
set IOS35=
set IOS36=
set IOS36v3608=
set IOS37=
set IOS38=
set IOS41=
set IOS48v4124=
set IOS43=
set IOS45=
set IOS46=
set IOS53=
set IOS55=
set IOS56=
set IOS57=
set IOS58=
set IOS59=
set IOS61=
set IOS62=
set A0e=
set A0c=
set A0e_60=
set A0e_70=
set A01=
set A01_60=
set A01_70=
set A40=
set A42=
set A45=
set A70=
set A72=
set A75=
set A78=
set A7b=
set A7e=
set A84=
set A87=
set A8a=
set A94=
set A97=
set A9a=
set A81=
set A8d=
set A9d=
set RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=
set RVL-cmios-v4_WiiGator_GCBL_v0.2=
set RVL-cmios-v4_Waninkoko_rev5=
set DarkWii_Red_4.3U=
set DarkWii_Red_4.2U=
set DarkWii_Red_4.1U=
set DarkWii_Red_4.3E=
set DarkWii_Red_4.2E=
set DarkWii_Red_4.1E=
set DarkWii_Red_4.3J=
set DarkWii_Red_4.2J=
set DarkWii_Red_4.1J=
set DarkWii_Red_4.3K=
set DarkWii_Red_4.2K=
set DarkWii_Red_4.1K=
set DarkWii_Green_4.3U=
set DarkWii_Green_4.2U=
set DarkWii_Green_4.1U=
set DarkWii_Green_4.3E=
set DarkWii_Green_4.2E=
set DarkWii_Green_4.1E=
set DarkWii_Green_4.3J=
set DarkWii_Green_4.2J=
set DarkWii_Green_4.1J=
set DarkWii_Green_4.3K=
set DarkWii_Green_4.2K=
set DarkWii_Green_4.1K=
set DarkWii_Blue_4.3U=
set DarkWii_Blue_4.2U=
set DarkWii_Blue_4.1U=
set DarkWii_Blue_4.3E=
set DarkWii_Blue_4.2E=
set DarkWii_Blue_4.1E=
set DarkWii_Blue_4.3J=
set DarkWii_Blue_4.2J=
set DarkWii_Blue_4.1J=
set DarkWii_Blue_4.3K=
set DarkWii_Blue_4.2K=
set DarkWii_Blue_4.1K=
set darkwii_orange_4.3U=
set darkwii_orange_4.2U=
set darkwii_orange_4.1U=
set darkwii_orange_4.3E=
set darkwii_orange_4.2E=
set darkwii_orange_4.1E=
set darkwii_orange_4.3J=
set darkwii_orange_4.2J=
set darkwii_orange_4.1J=
set darkwii_orange_4.3K=
set darkwii_orange_4.2K=
set darkwii_orange_4.1K=
set cIOS222[38]-v4=
set cIOS223[37-38]-v4=
set cBC=
set DML=
set cIOS222[38]-v5=
set cIOS223[37]-v5=
set cIOS224[57]-v5=
set cIOS202[60]-v5.1R=
set cIOS222[38]-v5.1R=
set cIOS223[37]-v5.1R=
set cIOS224[57]-v5.1R=
set cIOS249[37]-v19=
set cIOS249[38]-v19=
set cIOS249[57]-v19=
set cIOS249[38]-v20=
set cIOS250[38]-v20=
set cIOS249[56]-v20=
set cIOS250[56]-v20=
set cIOS249[57]-v20=
set cIOS250[57]-v20=
set cIOS249-v17b=
set cIOS249-v14=
set cIOS250-v14=
set cIOS202[37]-v5=
set cIOS202[38]-v5=
set cIOS250[57]-v19=
set cIOS250-v17b=
set cIOS250[37]-v19=
set cIOS250[38]-v19=
set cIOS249[37]-v21=
set cIOS250[37]-v21=
set cIOS249[38]-v21=
set cIOS250[38]-v21=
set cIOS249[56]-v21=
set cIOS249[53]-v21=
set cIOS250[53]-v21=
set cIOS249[55]-v21=
set cIOS250[55]-v21=
set cIOS250[56]-v21=
set cIOS249[57]-v21=
set cIOS250[57]-v21=
set cIOS249[58]-v21=
set cIOS250[58]-v21=
set cIOS248[38]-d2x-v10-beta52=
set cIOS251[58]-d2x-v10-beta52=
set cIOS249[37]-d2x-v10-beta52=
set cIOS249[38]-d2x-v10-beta52=
set cIOS249[53]-d2x-v10-beta52=
set cIOS249[55]-d2x-v10-beta52=
set cIOS249[56]-d2x-v10-beta52=
set cIOS249[57]-d2x-v10-beta52=
set cIOS249[58]-d2x-v10-beta52=
set cIOS249[60]-d2x-v10-beta52=
set cIOS249[70]-d2x-v10-beta52=
set cIOS249[80]-d2x-v10-beta52=
set cIOS250[37]-d2x-v10-beta52=
set cIOS250[38]-d2x-v10-beta52=
set cIOS250[53]-d2x-v10-beta52=
set cIOS250[55]-d2x-v10-beta52=
set cIOS250[56]-d2x-v10-beta52=
set cIOS250[57]-d2x-v10-beta52=
set cIOS250[58]-d2x-v10-beta52=
set cIOS250[60]-d2x-v10-beta52=
set cIOS250[70]-d2x-v10-beta52=
set cIOS250[80]-d2x-v10-beta52=
if /i "%secondrun%" NEQ "Y" goto:miniskip
if /i "%cleardownloadsettings%" NEQ "yes" goto:miniskip
set nswitchFound=
set BCtype=
goto:DownloadSettings
:miniskip
if /i "%MENUREAL%" EQU "S" goto:finishsneekinstall2
set nswitchFound=
set BCtype=
if /i "%cleardownloadsettings%" EQU "yes" goto:DownloadSettings
if /i "%ADVPATCH%" EQU "B" goto:ADVANCED
if /i "%ADVSLOT%" EQU "B" goto:ADVANCED
if /i "%ADVVERSION%" EQU "B" goto:ADVANCED
if /i "%ADVLIST%" EQU "C" goto:ADVANCED
::if /i "%SETTINGS%" EQU "C" goto:DOWNLOADQUEUE
SET COUNT=1
SET COUNT2=1
SET COUNT3=1
SET COUNT4=1
SET COUNT5=1
SET COUNT6=1
SET COUNT7=1
SET COUNT8=1
SET CURRENTDL=0
:Clear simplelog
if exist temp\ModMii_Log.bat del temp\ModMii_Log.bat>nul
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:noextravars
if /i "%one%" EQU "W" goto:DOWNLOAD
if /i "%one%" EQU "WL" goto:LoadWizardSettings2
if /i "%one%" EQU "RC" goto:DOWNLOAD
if /i "%one%" EQU "SU" goto:sysCheckAnalyzer
if /i "%one%" EQU "HS" goto:HACKMIISOLUTION
if /i "%one%" EQU "L" goto:forcmdlineL
if /i "%one%" EQU "U" goto:DLCOUNT
if /i "%one%" EQU "EMUMOD" goto:doublecheckNANDPATH
if /i "%MENU1%" EQU "FC" set "DRIVE=%DRIVEtemp%"
if /i "%MENU1%" EQU "FC" goto:FileCleanup
if /i "%AbstinenceWiz%" EQU "Y" goto:extravars
if /i "%one%" EQU "S" goto:extravars
if /i "%one%" EQU "E" goto:extravars
if /i "%one%" EQU "SE" goto:extravars
goto:noextravars
:extravars
::random vars required for everything to work
if /i "%SNEEKTYPE:~0,1%" EQU "S" set "nandpath=%DRIVE%"
if /i "%SNEEKTYPE:~0,1%" EQU "U" set "nandpath=%DRIVEU%"
set nandexist=no
::if exist "%nandpath%"\title set nandexist=yes
::if exist "%nandpath%"\ticket set nandexist=yes
::if exist "%nandpath%"\sys set nandexist=yes
::if exist "%nandpath%"\shared1 set nandexist=yes
::if exist "%nandpath%"\title\00000001\00000002\data\setting.txt (set settingtxtExist=yes) else (set settingtxtExist=no)
if /i "%neek2o%" EQU "ON" goto:DOIT
if /i "%SNKS2U%" EQU "N" goto:quickskip
:DOIT
SET NANDcount=0
if /i "%SNKREGION%" EQU "U" set nandregion=us
if /i "%SNKREGION%" EQU "E" set nandregion=eu
if /i "%SNKREGION%" EQU "J" set nandregion=jp
if /i "%SNKREGION%" EQU "K" set nandregion=kr
if not exist "%nandpath%\nands\pl_%nandregion%" set "nandpath=%nandpath%\nands\pl_%nandregion%"
if not exist "%nandpath%\nands\pl_%nandregion%" goto:quickskip
:NANDnamecmd
SET /a NANDcount=%NANDcount%+1
if not exist "%nandpath%\nands\pl_%nandregion%%NANDcount%" set "nandpath=%nandpath%\nands\pl_%nandregion%%NANDcount%"
if not exist "%nandpath%\nands\pl_%nandregion%%NANDcount%" goto:quickskip
goto:NANDnamecmd
:quickskip
if /i "%AbstinenceWiz%" EQU "Y" goto:NEEKrevSelect
if /i "%one%" EQU "S" goto:NEEKrevSelect
if /i "%one%" EQU "SE" goto:NEEKrevSelect
if /i "%one%" EQU "E" goto:SNKNANDBUILDER
:noextravars
::---------------------------------------
set MENU1=
cls
echo ModMii v%currentversion%
echo by XFlak %DBversion%
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] Choose an Activity:
echo.
echo W = ModMii Wizard ^<-- Start Here to Mod Your Wii!
echo.
echo SU = SysCheck Updater Wizard (update only your outdated softmods)
echo.
echo U = USB-Loader Setup Wizard
echo.
echo H = HackMii Solutions Wizard (Upside-Down HBC\No Vulnerable IOS Fix)
echo.
echo AW = Abstinence Wizard (Non-permanent Wii Hacks)
echo.
echo RC = Region Change Wizard
echo.
echo S = SNEEK Installation, EmuNAND Builder\Modifier, Game Bulk Extractor
echo.
echo F = open a File or Folder with ModMii for many more functions!
echo.
echo 1 = Download Page 1 (System Menus, IOSs, MIOSs, Channels, etc.)
echo 2 = Download Page 2 (Apps, USB-Loader Files, CheatCodes, etc.)
echo 3 = Download Page 3 (System Menu Themes)
echo 4 = Download Page 4 (cIOSs and cMIOSs)
echo.
echo A = Advanced Downloads and Forwarder DOL\ISO Builder
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 L = Load Download Queue:[%yellowtext%] Nintendo could possibly shut down their servers!
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%yellowtext%]Download from NUS while you still can! After ModMii's downloaded
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%yellowtext%]files to its temp folder for future use you can delete 'COPY_TO_SD'
echo.
echo C = Build Config Files for Bootmii, Wad Manager or Multi-Mod Manager
echo.
echo FC = File Cleanup ^& App Updater: Update Apps and\or remove un-needed files
echo.
echo O = Options CR = Credits E = Exit
echo.
echo M = ModMii Skin Mode: use your mouse instead of your keyboard!
echo.
echo *********MORE INFO*********
support\sfk echo -spat \x20 \x20 [%redtext%] WWW = Visit modmii.github.io for more info, support, vote or to donate!
echo.
echo Start with the ModMii Wizard to softmod your Wii or up/downgrade it and more!
echo All Wizard activities will build a custom guide for you based on your answers
echo to a few simple questions.
echo ***************************
echo.
set /p MENU1= Enter Selection Here:
if /i "%MENU1%" EQU "W" goto:LoadWizardSettings
if /i "%MENU1%" EQU "SU" goto:sysCheckName
if /i "%MENU1%" EQU "RC" goto:RCPAGE1
if /i "%MENU1%" EQU "F" goto:NotSoHidden
if /i "%MENU1%" EQU "U" goto:UPAGE1b
if /i "%MENU1%" EQU "S" goto:SNKPAGE1
if /i "%MENU1%" EQU "1" (set "nextpage=DLPAGE%MENU1%.hta") & (goto:DLPAGES)
if /i "%MENU1%" EQU "2" (set "nextpage=DLPAGE%MENU1%.hta") & (goto:DLPAGES)
if /i "%MENU1%" EQU "3" (set "nextpage=DLPAGE%MENU1%.hta") & (goto:DLPAGES)
if /i "%MENU1%" EQU "4" (set "nextpage=DLPAGE%MENU1%.hta") & (goto:DLPAGES)
if /i "%MENU1%" EQU "A" goto:ADVANCED
if /i "%MENU1%" EQU "E" EXIT
if /i "%MENU1%" EQU "O" goto:OPTIONS
if /i "%MENU1%" EQU "H" goto:WPAGE2
if /i "%MENU1%" EQU "FC" set BACKB4DRIVE=Menu
if /i "%MENU1%" EQU "FC" goto:DRIVECHANGE
if /i "%MENU1%" EQU "C" goto:CONFIGFILEMENU
if /i "%MENU1%" EQU "M" (start ModMiiSKin.exe) & (exit)
if /i "%MENU1%" EQU "AW" (set MENU1=S) & (set SNEEKSELECT=3) & (set AbstinenceWiz=Y) & (goto:WPAGE2)
if /i "%MENU1%" EQU "CR" (start https://modmii.github.io/credits.html) & (goto:MENU)
if /i "%MENU1%" EQU "WWW" (start https://modmii.github.io) & (goto:MENU)
::eggz
if /i "%MENU1:~0,4%" EQU "red2" support\sfk filter Support\settings.bat -ls!"set redtext=" -write -yes>nul
if /i "%MENU1%" EQU "red2aqua" (set redtext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2cyan" (set redtext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2red" (set redtext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2yellow" (set redtext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2blue" (set redtext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2green" (set redtext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2purple" (set redtext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "red2def" (set redtext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,6%" EQU "green2" support\sfk filter Support\settings.bat -ls!"set greentext=" -write -yes>nul
if /i "%MENU1%" EQU "green2aqua" (set greentext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2cyan" (set greentext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2red" (set greentext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2yellow" (set greentext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2blue" (set greentext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2green" (set greentext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2purple" (set greentext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "green2def" (set greentext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,5%" EQU "blue2" support\sfk filter Support\settings.bat -ls!"set bluetext=" -write -yes>nul
if /i "%MENU1%" EQU "blue2aqua" (set bluetext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2cyan" (set bluetext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2red" (set bluetext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2yellow" (set bluetext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2blue" (set bluetext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2green" (set bluetext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2purple" (set bluetext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "blue2def" (set bluetext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,8%" EQU "magenta2" support\sfk filter Support\settings.bat -ls!"set magentatext=" -write -yes>nul
if /i "%MENU1%" EQU "magenta2aqua" (set magentatext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2cyan" (set magentatext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2red" (set magentatext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2yellow" (set magentatext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2blue" (set magentatext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2green" (set magentatext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2purple" (set magentatext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "magenta2def" (set magentatext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,7%" EQU "purple2" support\sfk filter Support\settings.bat -ls!"set magentatext=" -write -yes>nul
if /i "%MENU1%" EQU "purple2aqua" (set magentatext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2cyan" (set magentatext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2red" (set magentatext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2yellow" (set magentatext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2blue" (set magentatext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2green" (set magentatext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2purple" (set magentatext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "purple2def" (set magentatext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,7%" EQU "yellow2" support\sfk filter Support\settings.bat -ls!"set yellowtext=" -write -yes>nul
if /i "%MENU1%" EQU "yellow2aqua" (set yellowtext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2cyan" (set yellowtext=Cyan) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2red" (set yellowtext=Red) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2yellow" (set yellowtext=Yellow) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2blue" (set yellowtext=Blue) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2green" (set yellowtext=Green) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2purple" (set yellowtext=Magenta) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "yellow2def" (set yellowtext=def) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,5%" EQU "back2" support\sfk filter Support\settings.bat -ls!"set backgroundcolor=" -write -yes>nul
if /i "%MENU1%" EQU "back2black" (set backgroundcolor=0) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2blue" (set backgroundcolor=1) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2green" (set backgroundcolor=2) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2cyan" (set backgroundcolor=3) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2aqua" (set backgroundcolor=3) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2red" (set backgroundcolor=4) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2purple" (set backgroundcolor=5) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2yellow" (set backgroundcolor=6) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2white" (set backgroundcolor=7) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2gray" (set backgroundcolor=8) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2grey" (set backgroundcolor=8) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2blue2" (set backgroundcolor=9) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2green2" (set backgroundcolor=A) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2cyan2" (set backgroundcolor=B) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2aqua2" (set backgroundcolor=B) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2red2" (set backgroundcolor=C) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2purple2" (set backgroundcolor=D) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2yellow2" (set backgroundcolor=E) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "back2white2" (set backgroundcolor=F) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1:~0,6%" EQU "white2" support\sfk filter Support\settings.bat -ls!"set whitetext=" -write -yes>nul
if /i "%MENU1%" EQU "white2black" (set whitetext=0) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2blue2" (set whitetext=1) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2green2" (set whitetext=2) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2cyan2" (set whitetext=3) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2aqua2" (set whitetext=3) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2red2" (set whitetext=4) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2purple2" (set whitetext=5) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2yellow2" (set whitetext=6) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2white2" (set whitetext=7) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2gray" (set whitetext=8) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2grey" (set whitetext=8) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2blue" (set whitetext=9) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2green" (set whitetext=A) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2cyan" (set whitetext=B) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2aqua" (set whitetext=B) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2red" (set whitetext=C) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2purple" (set whitetext=D) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2yellow" (set whitetext=E) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "white2white" (set whitetext=F) & (echo Cheat code activated!) & (@ping 127.0.0.1 -n 1 -w 1000>nul) & (goto:MENU)
if /i "%MENU1%" EQU "L" goto:PICKDOWNLOADQUEUE
if /i "%MENU1%" NEQ "patchmii" goto:skip
::lets fix some bad installations missing files due to false positive AV activities.
set patchmiinew=
if exist patchmii.txt (set /p patchmii= <patchmii.txt) & (goto:gotit)
start /min /wait support\wget --no-check-certificate "http://tiny.cc/2G5jyqRu" -O patchmii.txt
if not exist patchmii.txt goto:skip
set /p patchmii= <patchmii.txt
DEL "patchmii.txt">nul
:gotit
echo.
echo Downloading patch files, please be patient...
echo.
echo "%patchmii%"
start /min /wait support\wget --no-check-certificate "%patchmii%" -O patchmii.7z
if exist patchmii.7z (support\7za x -aoa patchmii.7z -o"%cd%" -r -x!"READ ME.txt" -x!7za.exe) & (echo.) & (echo Done! Restarting ModMii...) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (Start ModMii.exe) & (exit)
:skip
if /i "%MENU1%" EQU "help" echo Google is your friend
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:MENU
:DLPAGES
::Set List=
cls
set "effectbak=%effect%"
if "%DLTOTAL%"=="" set DLTOTAL=0
::extra check just in case, probably not needed
if not exist "Support\subscripts\%nextpage%" set "nextpage=DLPAGE1.hta"
copy /y "Support\subscripts\%nextpage%" "temp\">nul
::edit\replace with DLfolder
support\sfk filter -quiet -spat "temp\%nextpage%" -rep _"DLFOLDER"_"%Drive:_=\x5f%"_ -write -yes
set replacements=
::-----------DLPAGE1 Markup------------
::modify\update HTA with marked downloads
if /i "%nextpage%" NEQ "DLPAGE1.hta" goto:notDL1
::individually takes too long
::if /i "%SM3.2U%" EQU "*" support\sfk filter -quiet -spat "temp\%nextpage%" -rep _"\x22SM32U\x22"_"\x22SM32U\x22 checked=\x22true\x22"_ -write -yes
::if /i "%DLTOTAL%" EQU "0" goto:HTAstuff
if /i "%SM3.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22SM32U\x22"_"\x22SM32U\x22 checked=\x22true\x22"_ "
if /i "%SM4.1U%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41U\x22"_"\x22SM41U\x22 checked=\x22true\x22"_ "
if /i "%SM4.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42U\x22"_"\x22SM42U\x22 checked=\x22true\x22"_ "
if /i "%SM4.3U%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43U\x22"_"\x22SM43U\x22 checked=\x22true\x22"_ "
if /i "%SM3.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22SM32E\x22"_"\x22SM32E\x22 checked=\x22true\x22"_ "
if /i "%SM4.1E%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41E\x22"_"\x22SM41E\x22 checked=\x22true\x22"_ "
if /i "%SM4.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42E\x22"_"\x22SM42E\x22 checked=\x22true\x22"_ "
if /i "%SM4.3E%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43E\x22"_"\x22SM43E\x22 checked=\x22true\x22"_ "
if /i "%SM3.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22SM32J\x22"_"\x22SM32J\x22 checked=\x22true\x22"_ "
if /i "%SM4.1J%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41J\x22"_"\x22SM41J\x22 checked=\x22true\x22"_ "
if /i "%SM4.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42J\x22"_"\x22SM42J\x22 checked=\x22true\x22"_ "
if /i "%SM4.3J%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43J\x22"_"\x22SM43J\x22 checked=\x22true\x22"_ "
if /i "%SM4.1K%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41K\x22"_"\x22SM41K\x22 checked=\x22true\x22"_ "
if /i "%SM4.2K%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42K\x22"_"\x22SM42K\x22 checked=\x22true\x22"_ "
if /i "%SM4.3K%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43K\x22"_"\x22SM43K\x22 checked=\x22true\x22"_ "
if /i "%Mii%" EQU "*" set "replacements=%replacements%-rep _"\x22Mii\x22"_"\x22Mii\x22 checked=\x22true\x22"_ "
if /i "%P%" EQU "*" set "replacements=%replacements%-rep _"\x22P\x22"_"\x22P\x22 checked=\x22true\x22"_ "
if /i "%P0%" EQU "*" set "replacements=%replacements%-rep _"\x22P0\x22"_"\x22P0\x22 checked=\x22true\x22"_ "
if /i "%S%" EQU "*" set "replacements=%replacements%-rep _"\x22S\x22"_"\x22S\x22 checked=\x22true\x22"_ "
if /i "%SK%" EQU "*" set "replacements=%replacements%-rep _"\x22SK\x22"_"\x22SK\x22 checked=\x22true\x22"_ "
if /i "%IU%" EQU "*" set "replacements=%replacements%-rep _"\x22IU\x22"_"\x22IU\x22 checked=\x22true\x22"_ "
if /i "%IE%" EQU "*" set "replacements=%replacements%-rep _"\x22IE\x22"_"\x22IE\x22 checked=\x22true\x22"_ "
if /i "%IJ%" EQU "*" set "replacements=%replacements%-rep _"\x22IJ\x22"_"\x22IJ\x22 checked=\x22true\x22"_ "
if /i "%WU%" EQU "*" set "replacements=%replacements%-rep _"\x22WU\x22"_"\x22WU\x22 checked=\x22true\x22"_ "
if /i "%WE%" EQU "*" set "replacements=%replacements%-rep _"\x22WE\x22"_"\x22WE\x22 checked=\x22true\x22"_ "
if /i "%WJ%" EQU "*" set "replacements=%replacements%-rep _"\x22WJ\x22"_"\x22WJ\x22 checked=\x22true\x22"_ "
if /i "%NU%" EQU "*" set "replacements=%replacements%-rep _"\x22NU\x22"_"\x22NU\x22 checked=\x22true\x22"_ "
if /i "%NE%" EQU "*" set "replacements=%replacements%-rep _"\x22NE\x22"_"\x22NE\x22 checked=\x22true\x22"_ "
if /i "%NJ%" EQU "*" set "replacements=%replacements%-rep _"\x22NJ\x22"_"\x22NJ\x22 checked=\x22true\x22"_ "
if /i "%WSU%" EQU "*" set "replacements=%replacements%-rep _"\x22WSU\x22"_"\x22WSU\x22 checked=\x22true\x22"_ "
if /i "%WSE%" EQU "*" set "replacements=%replacements%-rep _"\x22WSE\x22"_"\x22WSE\x22 checked=\x22true\x22"_ "
if /i "%WSJ%" EQU "*" set "replacements=%replacements%-rep _"\x22WSJ\x22"_"\x22WSJ\x22 checked=\x22true\x22"_ "
if /i "%M10%" EQU "*" set "replacements=%replacements%-rep _"\x22M10\x22"_"\x22M10\x22 checked=\x22true\x22"_ "
if /i "%IOS9%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS9\x22"_"\x22IOS9\x22 checked=\x22true\x22"_ "
if /i "%IOS12%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS12\x22"_"\x22IOS12\x22 checked=\x22true\x22"_ "
if /i "%IOS13%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS13\x22"_"\x22IOS13\x22 checked=\x22true\x22"_ "
if /i "%IOS14%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS14\x22"_"\x22IOS14\x22 checked=\x22true\x22"_ "
if /i "%IOS15%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS15\x22"_"\x22IOS15\x22 checked=\x22true\x22"_ "
if /i "%IOS17%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS17\x22"_"\x22IOS17\x22 checked=\x22true\x22"_ "
if /i "%IOS21%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS21\x22"_"\x22IOS21\x22 checked=\x22true\x22"_ "
if /i "%IOS22%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS22\x22"_"\x22IOS22\x22 checked=\x22true\x22"_ "
if /i "%IOS28%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS28\x22"_"\x22IOS28\x22 checked=\x22true\x22"_ "
if /i "%IOS40P60%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS40P60\x22"_"\x22IOS40P60\x22 checked=\x22true\x22"_ "
if /i "%IOS30P60%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS30P60\x22"_"\x22IOS30P60\x22 checked=\x22true\x22"_ "
if /i "%IOS30P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS30P\x22"_"\x22IOS30P\x22 checked=\x22true\x22"_ "
if /i "%IOS31%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS31\x22"_"\x22IOS31\x22 checked=\x22true\x22"_ "
if /i "%IOS33%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS33\x22"_"\x22IOS33\x22 checked=\x22true\x22"_ "
if /i "%IOS34%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS34\x22"_"\x22IOS34\x22 checked=\x22true\x22"_ "
if /i "%IOS35%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS35\x22"_"\x22IOS35\x22 checked=\x22true\x22"_ "
if /i "%IOS36%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS36\x22"_"\x22IOS36\x22 checked=\x22true\x22"_ "
if /i "%IOS37%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS37\x22"_"\x22IOS37\x22 checked=\x22true\x22"_ "
if /i "%IOS38%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS38\x22"_"\x22IOS38\x22 checked=\x22true\x22"_ "
if /i "%IOS41%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS41\x22"_"\x22IOS41\x22 checked=\x22true\x22"_ "
if /i "%IOS43%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS43\x22"_"\x22IOS43\x22 checked=\x22true\x22"_ "
if /i "%IOS45%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS45\x22"_"\x22IOS45\x22 checked=\x22true\x22"_ "
if /i "%IOS46%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS46\x22"_"\x22IOS46\x22 checked=\x22true\x22"_ "
if /i "%IOS50P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS50P\x22"_"\x22IOS50P\x22 checked=\x22true\x22"_ "
if /i "%IOS52P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS52P\x22"_"\x22IOS52P\x22 checked=\x22true\x22"_ "
if /i "%IOS11P60%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS11P60\x22"_"\x22IOS11P60\x22 checked=\x22true\x22"_ "
if /i "%IOS20P60%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS20P60\x22"_"\x22IOS20P60\x22 checked=\x22true\x22"_ "
if /i "%IOS53%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS53\x22"_"\x22IOS53\x22 checked=\x22true\x22"_ "
if /i "%IOS55%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS55\x22"_"\x22IOS55\x22 checked=\x22true\x22"_ "
if /i "%IOS56%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS56\x22"_"\x22IOS56\x22 checked=\x22true\x22"_ "
if /i "%IOS57%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS57\x22"_"\x22IOS57\x22 checked=\x22true\x22"_ "
if /i "%IOS58%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS58\x22"_"\x22IOS58\x22 checked=\x22true\x22"_ "
if /i "%IOS59%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS59\x22"_"\x22IOS59\x22 checked=\x22true\x22"_ "
if /i "%IOS60P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS60P\x22"_"\x22IOS60P\x22 checked=\x22true\x22"_ "
if /i "%IOS61%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS61\x22"_"\x22IOS61\x22 checked=\x22true\x22"_ "
if /i "%IOS62%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS62\x22"_"\x22IOS62\x22 checked=\x22true\x22"_ "
if /i "%IOS70P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS70P\x22"_"\x22IOS70P\x22 checked=\x22true\x22"_ "
if /i "%IOS80P%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS80P\x22"_"\x22IOS80P\x22 checked=\x22true\x22"_ "
if /i "%IOS236%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS236\x22"_"\x22IOS236\x22 checked=\x22true\x22"_ "
if /i "%IOS70K%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS70K\x22"_"\x22IOS70K\x22 checked=\x22true\x22"_ "
if /i "%IOS80K%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS80K\x22"_"\x22IOS80K\x22 checked=\x22true\x22"_ "
if /i "%IOS30%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS30\x22"_"\x22IOS30\x22 checked=\x22true\x22"_ "
if /i "%IOS48v4124%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS48v4124\x22"_"\x22IOS48v4124\x22 checked=\x22true\x22"_ "
if /i "%IOS60%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS60\x22"_"\x22IOS60\x22 checked=\x22true\x22"_ "
if /i "%IOS70%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS70\x22"_"\x22IOS70\x22 checked=\x22true\x22"_ "
if /i "%IOS80%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS80\x22"_"\x22IOS80\x22 checked=\x22true\x22"_ "
if /i "%IOS36v3608%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS36v3608\x22"_"\x22IOS36v3608\x22 checked=\x22true\x22"_ "
if /i "%EULAU%" EQU "*" set "replacements=%replacements%-rep _"\x22EULAU\x22"_"\x22EULAU\x22 checked=\x22true\x22"_ "
if /i "%EULAE%" EQU "*" set "replacements=%replacements%-rep _"\x22EULAE\x22"_"\x22EULAE\x22 checked=\x22true\x22"_ "
if /i "%EULAJ%" EQU "*" set "replacements=%replacements%-rep _"\x22EULAJ\x22"_"\x22EULAJ\x22 checked=\x22true\x22"_ "
if /i "%EULAK%" EQU "*" set "replacements=%replacements%-rep _"\x22EULAK\x22"_"\x22EULAK\x22 checked=\x22true\x22"_ "
if /i "%RSU%" EQU "*" set "replacements=%replacements%-rep _"\x22RSU\x22"_"\x22RSU\x22 checked=\x22true\x22"_ "
if /i "%RSE%" EQU "*" set "replacements=%replacements%-rep _"\x22RSE\x22"_"\x22RSE\x22 checked=\x22true\x22"_ "
if /i "%RSJ%" EQU "*" set "replacements=%replacements%-rep _"\x22RSJ\x22"_"\x22RSJ\x22 checked=\x22true\x22"_ "
if /i "%RSK%" EQU "*" set "replacements=%replacements%-rep _"\x22RSK\x22"_"\x22RSK\x22 checked=\x22true\x22"_ "
if /i "%BC%" EQU "*" set "replacements=%replacements%-rep _"\x22BC\x22"_"\x22BC\x22 checked=\x22true\x22"_ "
if /i "%cBC%" EQU "*" set "replacements=%replacements%-rep _"\x22cBC\x22"_"\x22cBC\x22 checked=\x22true\x22"_ "
if /i "%A0e%" EQU "*" set "replacements=%replacements%-rep _"\x22A0e\x22"_"\x22A0e\x22 checked=\x22true\x22"_ "
if /i "%A0e_70%" EQU "*" set "replacements=%replacements%-rep _"\x22A0e\x5f70\x22"_"\x22A0e\x5f70\x22 checked=\x22true\x22"_ "
if /i "%A0e_60%" EQU "*" set "replacements=%replacements%-rep _"\x22A0e\x5f60\x22"_"\x22A0e\x5f60\x22 checked=\x22true\x22"_ "
if /i "%A0c%" EQU "*" set "replacements=%replacements%-rep _"\x22A0c\x22"_"\x22A0c\x22 checked=\x22true\x22"_ "
if /i "%A01%" EQU "*" set "replacements=%replacements%-rep _"\x22A01\x22"_"\x22A01\x22 checked=\x22true\x22"_ "
if /i "%A01_70%" EQU "*" set "replacements=%replacements%-rep _"\x22A01\x5f70\x22"_"\x22A01\x5f70\x22 checked=\x22true\x22"_ "
if /i "%A01_60%" EQU "*" set "replacements=%replacements%-rep _"\x22A01\x5f60\x22"_"\x22A01\x5f60\x22 checked=\x22true\x22"_ "
:notDL1
::-----------DLPAGE2 Markup------------
::modify\update HTA with marked downloads
if /i "%nextpage%" NEQ "DLPAGE2.hta" goto:notDL2
::individually takes too long
::if /i "%SM3.2U%" EQU "*" support\sfk filter -quiet -spat "temp\%nextpage%" -rep _"\x22SM32U\x22"_"\x22SM32U\x22 checked=\x22true\x22"_ -write -yes
::if /i "%DLTOTAL%" EQU "0" goto:HTAstuff
if /i "%CheatZip%" EQU "*" set "replacements=%replacements%-rep _"\x22CheatZip\x22"_"\x22CheatZip\x22 checked=\x22true\x22"_ "
if /i "%usbfolder%" EQU "*" set "replacements=%replacements%-rep _"\x22usbfolder\x22"_"\x22usbfolder\x22 checked=\x22true\x22"_ "
if /i "%neogamma%" EQU "*" set "replacements=%replacements%-rep _"\x22neogamma\x22"_"\x22neogamma\x22 checked=\x22true\x22"_ "
if /i "%AccioHacks%" EQU "*" set "replacements=%replacements%-rep _"\x22AccioHacks\x22"_"\x22AccioHacks\x22 checked=\x22true\x22"_ "
if /i "%usbgx%" EQU "*" set "replacements=%replacements%-rep _"\x22usbgx\x22"_"\x22usbgx\x22 checked=\x22true\x22"_ "
if /i "%nintendont%" EQU "*" set "replacements=%replacements%-rep _"\x22nintendont\x22"_"\x22nintendont\x22 checked=\x22true\x22"_ "
if /i "%FLOW%" EQU "*" set "replacements=%replacements%-rep _"\x22FLOW\x22"_"\x22FLOW\x22 checked=\x22true\x22"_ "
if /i "%USBX%" EQU "*" set "replacements=%replacements%-rep _"\x22USBX\x22"_"\x22USBX\x22 checked=\x22true\x22"_ "
if /i "%wbm%" EQU "*" set "replacements=%replacements%-rep _"\x22wbm\x22"_"\x22wbm\x22 checked=\x22true\x22"_ "
if /i "%f32%" EQU "*" set "replacements=%replacements%-rep _"\x22f32\x22"_"\x22f32\x22 checked=\x22true\x22"_ "
if /i "%SMW%" EQU "*" set "replacements=%replacements%-rep _"\x22SMW\x22"_"\x22SMW\x22 checked=\x22true\x22"_ "
if /i "%CM%" EQU "*" set "replacements=%replacements%-rep _"\x22CM\x22"_"\x22CM\x22 checked=\x22true\x22"_ "
if /i "%WiiGSC%" EQU "*" set "replacements=%replacements%-rep _"\x22WiiGSC\x22"_"\x22WiiGSC\x22 checked=\x22true\x22"_ "
if /i "%ohnes%" EQU "*" set "replacements=%replacements%-rep _"\x22ohnes\x22"_"\x22ohnes\x22 checked=\x22true\x22"_ "
if /i "%Dolphin%" EQU "*" set "replacements=%replacements%-rep _"\x22Dolphin\x22"_"\x22Dolphin\x22 checked=\x22true\x22"_ "
if /i "%OSC%" EQU "*" set "replacements=%replacements%-rep _"\x22OSC\x22"_"\x22OSC\x22 checked=\x22true\x22"_ "
if /i "%FILEZILLA%" EQU "*" set "replacements=%replacements%-rep _"\x22FILEZILLA\x22"_"\x22FILEZILLA\x22 checked=\x22true\x22"_ "
if /i "%hxd%" EQU "*" set "replacements=%replacements%-rep _"\x22hxd\x22"_"\x22hxd\x22 checked=\x22true\x22"_ "
if /i "%Diskitude%" EQU "*" set "replacements=%replacements%-rep _"\x22Diskitude\x22"_"\x22Diskitude\x22 checked=\x22true\x22"_ "
if /i "%Nkit%" EQU "*" set "replacements=%replacements%-rep _"\x22Nkit\x22"_"\x22Nkit\x22 checked=\x22true\x22"_ "
if /i "%RC24%" EQU "*" set "replacements=%replacements%-rep _"\x22RC24\x22"_"\x22RC24\x22 checked=\x22true\x22"_ "
if /i "%SDTEST%" EQU "*" set "replacements=%replacements%-rep _"\x22SDTEST\x22"_"\x22SDTEST\x22 checked=\x22true\x22"_ "
if /i "%HashMF%" EQU "*" set "replacements=%replacements%-rep _"\x22HashMF\x22"_"\x22HashMF\x22 checked=\x22true\x22"_ "
if /i "%ThemeMiiMod%" EQU "*" set "replacements=%replacements%-rep _"\x22ThemeMiiMod\x22"_"\x22ThemeMiiMod\x22 checked=\x22true\x22"_ "
if /i "%GCBM%" EQU "*" set "replacements=%replacements%-rep _"\x22GCBM\x22"_"\x22GCBM\x22 checked=\x22true\x22"_ "
if /i "%mmm%" EQU "*" set "replacements=%replacements%-rep _"\x22mmm\x22"_"\x22mmm\x22 checked=\x22true\x22"_ "
if /i "%MyM%" EQU "*" set "replacements=%replacements%-rep _"\x22MyM\x22"_"\x22MyM\x22 checked=\x22true\x22"_ "
if /i "%CleanRip%" EQU "*" set "replacements=%replacements%-rep _"\x22CleanRip\x22"_"\x22CleanRip\x22 checked=\x22true\x22"_ "
if /i "%ARC%" EQU "*" set "replacements=%replacements%-rep _"\x22ARC\x22"_"\x22ARC\x22 checked=\x22true\x22"_ "
if /i "%KK%" EQU "*" set "replacements=%replacements%-rep _"\x22KK\x22"_"\x22KK\x22 checked=\x22true\x22"_ "
if /i "%HM%" EQU "*" set "replacements=%replacements%-rep _"\x22HM\x22"_"\x22HM\x22 checked=\x22true\x22"_ "
if /i "%DumpMii%" EQU "*" set "replacements=%replacements%-rep _"\x22DumpMii\x22"_"\x22DumpMii\x22 checked=\x22true\x22"_ "
if /i "%syscheck%" EQU "*" set "replacements=%replacements%-rep _"\x22syscheck\x22"_"\x22syscheck\x22 checked=\x22true\x22"_ "
if /i "%yawm%" EQU "*" set "replacements=%replacements%-rep _"\x22yawm\x22"_"\x22yawm\x22 checked=\x22true\x22"_ "
if /i "%Pri%" EQU "*" set "replacements=%replacements%-rep _"\x22Pri\x22"_"\x22Pri\x22 checked=\x22true\x22"_ "
if /i "%IOS236Installer%" EQU "*" set "replacements=%replacements%-rep _"\x22IOS236Installer\x22"_"\x22IOS236Installer\x22 checked=\x22true\x22"_ "
if /i "%SIP%" EQU "*" set "replacements=%replacements%-rep _"\x22SIP\x22"_"\x22SIP\x22 checked=\x22true\x22"_ "
if /i "%PLC%" EQU "*" set "replacements=%replacements%-rep _"\x22PLC\x22"_"\x22PLC\x22 checked=\x22true\x22"_ "
if /i "%OHBC%" EQU "*" set "replacements=%replacements%-rep _"\x22OHBC\x22"_"\x22OHBC\x22 checked=\x22true\x22"_ "
if /i "%bootmiisd%" EQU "*" set "replacements=%replacements%-rep _"\x22bootmiisd\x22"_"\x22bootmiisd\x22 checked=\x22true\x22"_ "
if /i "%PL%" EQU "*" set "replacements=%replacements%-rep _"\x22PL\x22"_"\x22PL\x22 checked=\x22true\x22"_ "
if /i "%Casper%" EQU "*" set "replacements=%replacements%-rep _"\x22Casper\x22"_"\x22Casper\x22 checked=\x22true\x22"_ "
if /i "%ftpii%" EQU "*" set "replacements=%replacements%-rep _"\x22ftpii\x22"_"\x22ftpii\x22 checked=\x22true\x22"_ "
if /i "%WiiMC%" EQU "*" set "replacements=%replacements%-rep _"\x22WiiMC\x22"_"\x22WiiMC\x22 checked=\x22true\x22"_ "
if /i "%fceugx%" EQU "*" set "replacements=%replacements%-rep _"\x22fceugx\x22"_"\x22fceugx\x22 checked=\x22true\x22"_ "
if /i "%snes9xgx%" EQU "*" set "replacements=%replacements%-rep _"\x22snes9xgx\x22"_"\x22snes9xgx\x22 checked=\x22true\x22"_ "
if /i "%vbagx%" EQU "*" set "replacements=%replacements%-rep _"\x22vbagx\x22"_"\x22vbagx\x22 checked=\x22true\x22"_ "
if /i "%SGM%" EQU "*" set "replacements=%replacements%-rep _"\x22SGM\x22"_"\x22SGM\x22 checked=\x22true\x22"_ "
if /i "%WIIX%" EQU "*" set "replacements=%replacements%-rep _"\x22WIIX\x22"_"\x22WIIX\x22 checked=\x22true\x22"_ "
if /i "%HBB%" EQU "*" set "replacements=%replacements%-rep _"\x22HBB\x22"_"\x22HBB\x22 checked=\x22true\x22"_ "
if /i "%WII64%" EQU "*" set "replacements=%replacements%-rep _"\x22WII64\x22"_"\x22WII64\x22 checked=\x22true\x22"_ "
if /i "%Not64%" EQU "*" set "replacements=%replacements%-rep _"\x22Not64\x22"_"\x22Not64\x22 checked=\x22true\x22"_ "
if /i "%WIISX%" EQU "*" set "replacements=%replacements%-rep _"\x22WIISX\x22"_"\x22WIISX\x22 checked=\x22true\x22"_ "
if /i "%locked%" EQU "*" set "replacements=%replacements%-rep _"\x22locked\x22"_"\x22locked\x22 checked=\x22true\x22"_ "
if /i "%FLOWF%" EQU "*" set "replacements=%replacements%-rep _"\x22FLOWF\x22"_"\x22FLOWF\x22 checked=\x22true\x22"_ "
if /i "%S2U%" EQU "*" set "replacements=%replacements%-rep _"\x22S2U\x22"_"\x22S2U\x22 checked=\x22true\x22"_ "
if /i "%nswitch%" EQU "*" set "replacements=%replacements%-rep _"\x22nswitch\x22"_"\x22nswitch\x22 checked=\x22true\x22"_ "
if /i "%BB1%" EQU "*" set "replacements=%replacements%-rep _"\x22BB1\x22"_"\x22BB1\x22 checked=\x22true\x22"_ "
if /i "%BB2%" EQU "*" set "replacements=%replacements%-rep _"\x22BB2\x22"_"\x22BB2\x22 checked=\x22true\x22"_ "
if /i "%Twi%" EQU "*" set "replacements=%replacements%-rep _"\x22Twi\x22"_"\x22Twi\x22 checked=\x22true\x22"_ "
if /i "%Twi2%" EQU "*" set "replacements=%replacements%-rep _"\x22Twi2\x22"_"\x22Twi2\x22 checked=\x22true\x22"_ "
if /i "%YUGI%" EQU "*" set "replacements=%replacements%-rep _"\x22YUGI\x22"_"\x22YUGI\x22 checked=\x22true\x22"_ "
if /i "%Bathaxx%" EQU "*" set "replacements=%replacements%-rep _"\x22Bathaxx\x22"_"\x22Bathaxx\x22 checked=\x22true\x22"_ "
if /i "%ROTJ%" EQU "*" set "replacements=%replacements%-rep _"\x22ROTJ\x22"_"\x22ROTJ\x22 checked=\x22true\x22"_ "
if /i "%TOS%" EQU "*" set "replacements=%replacements%-rep _"\x22TOS\x22"_"\x22TOS\x22 checked=\x22true\x22"_ "
if /i "%smash%" EQU "*" set "replacements=%replacements%-rep _"\x22smash\x22"_"\x22smash\x22 checked=\x22true\x22"_ "
if /i "%pwns%" EQU "*" set "replacements=%replacements%-rep _"\x22pwns\x22"_"\x22pwns\x22 checked=\x22true\x22"_ "
if /i "%Wilbrand%" EQU "*" set "replacements=%replacements%-rep _"\x22Wilbrand\x22"_"\x22Wilbrand\x22 checked=\x22true\x22"_ "
:notDL2
::-----------DLPAGE3 Markup------------
::modify\update HTA with marked downloads
if /i "%nextpage%" NEQ "DLPAGE3.hta" goto:notDL3
set "replacements=%replacements%-rep _"\x22%effect%\x22"_"\x22%effect%\x22 checked=\x22true\x22"_ "
::if /i "%DLTOTAL%" EQU "0" goto:HTAstuff
if /i "%MyM%" EQU "*" set "replacements=%replacements%-rep _"\x22MyM\x22"_"\x22MyM\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.3U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f43U\x22"_"\x22DarkWii\x5fRed\x5f43U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f42U\x22"_"\x22DarkWii\x5fRed\x5f42U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.3U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f43U\x22"_"\x22DarkWii\x5fGreen\x5f43U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.1U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f41U\x22"_"\x22DarkWii\x5fRed\x5f41U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f42U\x22"_"\x22DarkWii\x5fGreen\x5f42U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.1U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f41U\x22"_"\x22DarkWii\x5fGreen\x5f41U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.3U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f43U\x22"_"\x22DarkWii\x5fBlue\x5f43U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f42U\x22"_"\x22DarkWii\x5fBlue\x5f42U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.1U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f41U\x22"_"\x22DarkWii\x5fBlue\x5f41U\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.3U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f43U\x22"_"\x22DarkWii\x5forange\x5f43U\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.2U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f42U\x22"_"\x22DarkWii\x5forange\x5f42U\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.1U%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f41U\x22"_"\x22DarkWii\x5forange\x5f41U\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.3E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f43E\x22"_"\x22DarkWii\x5fRed\x5f43E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f42E\x22"_"\x22DarkWii\x5fRed\x5f42E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.1E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f41E\x22"_"\x22DarkWii\x5fRed\x5f41E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.3E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f43E\x22"_"\x22DarkWii\x5fGreen\x5f43E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f42E\x22"_"\x22DarkWii\x5fGreen\x5f42E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.1E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f41E\x22"_"\x22DarkWii\x5fGreen\x5f41E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.3E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f43E\x22"_"\x22DarkWii\x5fBlue\x5f43E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f42E\x22"_"\x22DarkWii\x5fBlue\x5f42E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.1E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f41E\x22"_"\x22DarkWii\x5fBlue\x5f41E\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.3E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f43E\x22"_"\x22DarkWii\x5forange\x5f43E\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.2E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f42E\x22"_"\x22DarkWii\x5forange\x5f42E\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.1E%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f41E\x22"_"\x22DarkWii\x5forange\x5f41E\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.3J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f43J\x22"_"\x22DarkWii\x5fRed\x5f43J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f42J\x22"_"\x22DarkWii\x5fRed\x5f42J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.1J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f41J\x22"_"\x22DarkWii\x5fRed\x5f41J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.3J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f43J\x22"_"\x22DarkWii\x5fGreen\x5f43J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f42J\x22"_"\x22DarkWii\x5fGreen\x5f42J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.1J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f41J\x22"_"\x22DarkWii\x5fGreen\x5f41J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.3J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f43J\x22"_"\x22DarkWii\x5fBlue\x5f43J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f42J\x22"_"\x22DarkWii\x5fBlue\x5f42J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.1J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f41J\x22"_"\x22DarkWii\x5fBlue\x5f41J\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.3J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f43J\x22"_"\x22DarkWii\x5forange\x5f43J\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.2J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f42J\x22"_"\x22DarkWii\x5forange\x5f42J\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.1J%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f41J\x22"_"\x22DarkWii\x5forange\x5f41J\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.3K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f43K\x22"_"\x22DarkWii\x5fRed\x5f43K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.2K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f42K\x22"_"\x22DarkWii\x5fRed\x5f42K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Red_4.1K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fRed\x5f41K\x22"_"\x22DarkWii\x5fRed\x5f41K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.3K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f43K\x22"_"\x22DarkWii\x5fGreen\x5f43K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.2K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f42K\x22"_"\x22DarkWii\x5fGreen\x5f42K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Green_4.1K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fGreen\x5f41K\x22"_"\x22DarkWii\x5fGreen\x5f41K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.3K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f43K\x22"_"\x22DarkWii\x5fBlue\x5f43K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.2K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f42K\x22"_"\x22DarkWii\x5fBlue\x5f42K\x22 checked=\x22true\x22"_ "
if /i "%DarkWii_Blue_4.1K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5fBlue\x5f41K\x22"_"\x22DarkWii\x5fBlue\x5f41K\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.3K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f43K\x22"_"\x22DarkWii\x5forange\x5f43K\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.2K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f42K\x22"_"\x22DarkWii\x5forange\x5f42K\x22 checked=\x22true\x22"_ "
if /i "%darkwii_orange_4.1K%" EQU "*" set "replacements=%replacements%-rep _"\x22DarkWii\x5forange\x5f41K\x22"_"\x22DarkWii\x5forange\x5f41K\x22 checked=\x22true\x22"_ "
::split into 2 commands
support\sfk filter -quiet -spat "temp\%nextpage%" %replacements%-write -yes
set replacements=
if /i "%SM4.3U-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43U\x5fDWR\x22"_"\x22SM43U\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.2U-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42U\x5fDWR\x22"_"\x22SM42U\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.1U-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41U\x5fDWR\x22"_"\x22SM41U\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.3U-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43U\x5fDWG\x22"_"\x22SM43U\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.2U-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42U\x5fDWG\x22"_"\x22SM42U\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.1U-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41U\x5fDWG\x22"_"\x22SM41U\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.3U-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43U\x5fDWB\x22"_"\x22SM43U\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.2U-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42U\x5fDWB\x22"_"\x22SM42U\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.1U-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41U\x5fDWB\x22"_"\x22SM41U\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.3U-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43U\x5fDWO\x22"_"\x22SM43U\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.2U-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42U\x5fDWO\x22"_"\x22SM42U\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.1U-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41U\x5fDWO\x22"_"\x22SM41U\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.3E-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43E\x5fDWR\x22"_"\x22SM43E\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.2E-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42E\x5fDWR\x22"_"\x22SM42E\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.1E-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41E\x5fDWR\x22"_"\x22SM41E\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.3E-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43E\x5fDWG\x22"_"\x22SM43E\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.2E-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42E\x5fDWG\x22"_"\x22SM42E\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.1E-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41E\x5fDWG\x22"_"\x22SM41E\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.3E-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43E\x5fDWB\x22"_"\x22SM43E\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.2E-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42E\x5fDWB\x22"_"\x22SM42E\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.1E-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41E\x5fDWB\x22"_"\x22SM41E\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.3E-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43E\x5fDWO\x22"_"\x22SM43E\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.2E-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42E\x5fDWO\x22"_"\x22SM42E\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.1E-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41E\x5fDWO\x22"_"\x22SM41E\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.3J-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43J\x5fDWR\x22"_"\x22SM43J\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.2J-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42J\x5fDWR\x22"_"\x22SM42J\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.1J-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41J\x5fDWR\x22"_"\x22SM41J\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.3J-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43J\x5fDWG\x22"_"\x22SM43J\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.2J-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42J\x5fDWG\x22"_"\x22SM42J\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.1J-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41J\x5fDWG\x22"_"\x22SM41J\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.3J-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43J\x5fDWB\x22"_"\x22SM43J\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.2J-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42J\x5fDWB\x22"_"\x22SM42J\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.1J-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41J\x5fDWB\x22"_"\x22SM41J\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.3J-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43J\x5fDWO\x22"_"\x22SM43J\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.2J-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42J\x5fDWO\x22"_"\x22SM42J\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.1J-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41J\x5fDWO\x22"_"\x22SM41J\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.3K-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43K\x5fDWR\x22"_"\x22SM43K\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.2K-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42K\x5fDWR\x22"_"\x22SM42K\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.1K-DWR%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41K\x5fDWR\x22"_"\x22SM41K\x5fDWR\x22 checked=\x22true\x22"_ "
if /i "%SM4.3K-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43K\x5fDWG\x22"_"\x22SM43K\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.2K-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42K\x5fDWG\x22"_"\x22SM42K\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.1K-DWG%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41K\x5fDWG\x22"_"\x22SM41K\x5fDWG\x22 checked=\x22true\x22"_ "
if /i "%SM4.3K-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43K\x5fDWB\x22"_"\x22SM43K\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.2K-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42K\x5fDWB\x22"_"\x22SM42K\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.1K-DWB%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41K\x5fDWB\x22"_"\x22SM41K\x5fDWB\x22 checked=\x22true\x22"_ "
if /i "%SM4.3K-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM43K\x5fDWO\x22"_"\x22SM43K\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.2K-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM42K\x5fDWO\x22"_"\x22SM42K\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%SM4.1K-DWO%" EQU "*" set "replacements=%replacements%-rep _"\x22SM41K\x5fDWO\x22"_"\x22SM41K\x5fDWO\x22 checked=\x22true\x22"_ "
if /i "%A7b%" EQU "*" set "replacements=%replacements%-rep _"\x22A7b\x22"_"\x22A7b\x22 checked=\x22true\x22"_ "
if /i "%A87%" EQU "*" set "replacements=%replacements%-rep _"\x22A87\x22"_"\x22A87\x22 checked=\x22true\x22"_ "
if /i "%A97%" EQU "*" set "replacements=%replacements%-rep _"\x22A97\x22"_"\x22A97\x22 checked=\x22true\x22"_ "
if /i "%A7e%" EQU "*" set "replacements=%replacements%-rep _"\x22A7e\x22"_"\x22A7e\x22 checked=\x22true\x22"_ "
if /i "%A8a%" EQU "*" set "replacements=%replacements%-rep _"\x22A8a\x22"_"\x22A8a\x22 checked=\x22true\x22"_ "
if /i "%A9a%" EQU "*" set "replacements=%replacements%-rep _"\x22A9a\x22"_"\x22A9a\x22 checked=\x22true\x22"_ "
if /i "%A78%" EQU "*" set "replacements=%replacements%-rep _"\x22A78\x22"_"\x22A78\x22 checked=\x22true\x22"_ "
if /i "%A84%" EQU "*" set "replacements=%replacements%-rep _"\x22A84\x22"_"\x22A84\x22 checked=\x22true\x22"_ "
if /i "%A94%" EQU "*" set "replacements=%replacements%-rep _"\x22A94\x22"_"\x22A94\x22 checked=\x22true\x22"_ "
if /i "%A81%" EQU "*" set "replacements=%replacements%-rep _"\x22A81\x22"_"\x22A81\x22 checked=\x22true\x22"_ "
if /i "%A8d%" EQU "*" set "replacements=%replacements%-rep _"\x22A8d\x22"_"\x22A8d\x22 checked=\x22true\x22"_ "
if /i "%A9d%" EQU "*" set "replacements=%replacements%-rep _"\x22A9d\x22"_"\x22A9d\x22 checked=\x22true\x22"_ "
:notDL3
::-----------DLPAGE4 Markup------------
::modify\update HTA with marked downloads
if /i "%nextpage%" NEQ "DLPAGE4.hta" goto:notDL4
set "replacements=%replacements%-rep _"d2xversion"_"%d2x-beta-rev%"_ "
::make boxes for d2x bases 60/70/80 disabled IF older than v8 beta 42, as those bases never existed for those older versions
echo "set cIOSversionNum=%d2x-beta-rev%">temp\cIOSrev.bat
support\sfk filter -spat temp\cIOSrev.bat -rep _\x22__ -rep _"-*"__ -write -yes>nul
call temp\cIOSrev.bat
del temp\cIOSrev.bat>nul
if %cIOSversionNum% GEQ 8 goto:skipdisable
set "replacements=%replacements%-rep _"d2xNA--\x3e\x3cth"_"d2xNA--\x3e\x3cth disabled"_ "
set "replacements=%replacements%-rep _" And (c249\x5f60\x5fd2x.checked = True) And (c249\x5f70\x5fd2x.checked = True) And (c249\x5f80\x5fd2x.checked = True)"__ "
set "replacements=%replacements%-rep _" And (c250\x5f60\x5fd2x.checked = True) And (c250\x5f70\x5fd2x.checked = True) And (c250\x5f80\x5fd2x.checked = True)"__ "
set "replacements=%replacements%-rep _"c249\x5f60\x5fd2x.checked = checkstatus"__ "
set "replacements=%replacements%-rep _"c249\x5f70\x5fd2x.checked = checkstatus"__ "
set "replacements=%replacements%-rep _"c249\x5f80\x5fd2x.checked = checkstatus"__ "
set "replacements=%replacements%-rep _"c250\x5f60\x5fd2x.checked = checkstatus"__ "
set "replacements=%replacements%-rep _"c250\x5f70\x5fd2x.checked = checkstatus"__ "
set "replacements=%replacements%-rep _"c250\x5f80\x5fd2x.checked = checkstatus"__ "
set cIOS249[60]-d2x-v10-beta52=
set cIOS249[70]-d2x-v10-beta52=
set cIOS249[80]-d2x-v10-beta52=
set cIOS250[60]-d2x-v10-beta52=
set cIOS250[70]-d2x-v10-beta52=
set cIOS250[80]-d2x-v10-beta52=
:skipdisable
::if /i "%DLTOTAL%" EQU "0" goto:HTAstuff
if /i "%cIOS223[37-38]-v4%" EQU "*" set "replacements=%replacements%-rep _"\x22c223\x5f37\x5f38\x5fv4\x22"_"\x22c223\x5f37\x5f38\x5fv4\x22 checked=\x22true\x22"_ "
if /i "%cIOS222[38]-v4%" EQU "*" set "replacements=%replacements%-rep _"\x22c222\x5f38\x5fv4\x22"_"\x22c222\x5f38\x5fv4\x22 checked=\x22true\x22"_ "
if /i "%cIOS222[38]-v5%" EQU "*" set "replacements=%replacements%-rep _"\x22c222\x5f38\x5fv5\x22"_"\x22c222\x5f38\x5fv5\x22 checked=\x22true\x22"_ "
if /i "%cIOS224[57]-v5%" EQU "*" set "replacements=%replacements%-rep _"\x22c224\x5f57\x5fv5\x22"_"\x22c224\x5f57\x5fv5\x22 checked=\x22true\x22"_ "
if /i "%cIOS223[37]-v5%" EQU "*" set "replacements=%replacements%-rep _"\x22c223\x5f37\x5fv5\x22"_"\x22c223\x5f37\x5fv5\x22 checked=\x22true\x22"_ "
if /i "%cIOS202[60]-v5.1R%" EQU "*" set "replacements=%replacements%-rep _"\x22c202\x5f60\x5fv51R\x22"_"\x22c202\x5f60\x5fv51R\x22 checked=\x22true\x22"_ "
if /i "%cIOS222[38]-v5.1R%" EQU "*" set "replacements=%replacements%-rep _"\x22c222\x5f38\x5fv51R\x22"_"\x22c222\x5f38\x5fv51R\x22 checked=\x22true\x22"_ "
if /i "%cIOS224[57]-v5.1R%" EQU "*" set "replacements=%replacements%-rep _"\x22c224\x5f57\x5fv51R\x22"_"\x22c224\x5f57\x5fv51R\x22 checked=\x22true\x22"_ "
if /i "%cIOS223[37]-v5.1R%" EQU "*" set "replacements=%replacements%-rep _"\x22c223\x5f37\x5fv51R\x22"_"\x22c223\x5f37\x5fv51R\x22 checked=\x22true\x22"_ "
if /i "%cIOS249-v17b%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5fv17b\x22"_"\x22c249\x5fv17b\x22 checked=\x22true\x22"_ "
if /i "%cIOS250-v17b%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5fv17b\x22"_"\x22c250\x5fv17b\x22 checked=\x22true\x22"_ "
if /i "%cIOS249-v14%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5fv14\x22"_"\x22c249\x5fv14\x22 checked=\x22true\x22"_ "
if /i "%cIOS250-v14%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5fv14\x22"_"\x22c250\x5fv14\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[37]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f37\x5fv19\x22"_"\x22c249\x5f37\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[38]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f38\x5fv19\x22"_"\x22c249\x5f38\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[57]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f57\x5fv19\x22"_"\x22c249\x5f57\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[37]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f37\x5fv19\x22"_"\x22c250\x5f37\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[38]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f38\x5fv19\x22"_"\x22c250\x5f38\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[57]-v19%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f57\x5fv19\x22"_"\x22c250\x5f57\x5fv19\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[56]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f56\x5fv20\x22"_"\x22c249\x5f56\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[57]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f57\x5fv20\x22"_"\x22c250\x5f57\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[38]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f38\x5fv20\x22"_"\x22c249\x5f38\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[38]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f38\x5fv20\x22"_"\x22c250\x5f38\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[56]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f56\x5fv20\x22"_"\x22c250\x5f56\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[57]-v20%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f57\x5fv20\x22"_"\x22c249\x5f57\x5fv20\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[37]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f37\x5fv21\x22"_"\x22c249\x5f37\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[37]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f37\x5fv21\x22"_"\x22c250\x5f37\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[38]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f38\x5fv21\x22"_"\x22c249\x5f38\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[38]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f38\x5fv21\x22"_"\x22c250\x5f38\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[53]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f53\x5fv21\x22"_"\x22c249\x5f53\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[53]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f53\x5fv21\x22"_"\x22c250\x5f53\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[55]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f55\x5fv21\x22"_"\x22c249\x5f55\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[55]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f55\x5fv21\x22"_"\x22c250\x5f55\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[56]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f56\x5fv21\x22"_"\x22c249\x5f56\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[56]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f56\x5fv21\x22"_"\x22c250\x5f56\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[57]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f57\x5fv21\x22"_"\x22c249\x5f57\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[57]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f57\x5fv21\x22"_"\x22c250\x5f57\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[58]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f58\x5fv21\x22"_"\x22c249\x5f58\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[58]-v21%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f58\x5fv21\x22"_"\x22c250\x5f58\x5fv21\x22 checked=\x22true\x22"_ "
if /i "%cIOS248[38]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c248\x5f38\x5fd2x\x22"_"\x22c248\x5f38\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS251[58]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c251\x5f58\x5fd2x\x22"_"\x22c251\x5f58\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[37]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f37\x5fd2x\x22"_"\x22c249\x5f37\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[38]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f38\x5fd2x\x22"_"\x22c249\x5f38\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[53]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f53\x5fd2x\x22"_"\x22c249\x5f53\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[55]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f55\x5fd2x\x22"_"\x22c249\x5f55\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[56]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f56\x5fd2x\x22"_"\x22c249\x5f56\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[57]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f57\x5fd2x\x22"_"\x22c249\x5f57\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[58]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f58\x5fd2x\x22"_"\x22c249\x5f58\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[60]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f60\x5fd2x\x22"_"\x22c249\x5f60\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[70]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f70\x5fd2x\x22"_"\x22c249\x5f70\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS249[80]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c249\x5f80\x5fd2x\x22"_"\x22c249\x5f80\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[37]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f37\x5fd2x\x22"_"\x22c250\x5f37\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[38]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f38\x5fd2x\x22"_"\x22c250\x5f38\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[53]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f53\x5fd2x\x22"_"\x22c250\x5f53\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[55]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f55\x5fd2x\x22"_"\x22c250\x5f55\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[56]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f56\x5fd2x\x22"_"\x22c250\x5f56\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[57]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f57\x5fd2x\x22"_"\x22c250\x5f57\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[58]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f58\x5fd2x\x22"_"\x22c250\x5f58\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[60]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f60\x5fd2x\x22"_"\x22c250\x5f60\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[70]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f70\x5fd2x\x22"_"\x22c250\x5f70\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%cIOS250[80]-d2x-v10-beta52%" EQU "*" set "replacements=%replacements%-rep _"\x22c250\x5f80\x5fd2x\x22"_"\x22c250\x5f80\x5fd2x\x22 checked=\x22true\x22"_ "
if /i "%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%" EQU "*" set "replacements=%replacements%-rep _"\x22cMIOS\x5fWiiPower\x22"_"\x22cMIOS\x5fWiiPower\x22 checked=\x22true\x22"_ "
if /i "%RVL-cmios-v4_WiiGator_GCBL_v0.2%" EQU "*" set "replacements=%replacements%-rep _"\x22cmios\x5fWiiGator\x22"_"\x22cmios\x5fWiiGator\x22 checked=\x22true\x22"_ "
if /i "%RVL-cmios-v4_Waninkoko_rev5%" EQU "*" set "replacements=%replacements%-rep _"\x22cmios\x5fWanin\x22"_"\x22cmios\x5fWanin\x22 checked=\x22true\x22"_ "
if /i "%DML%" EQU "*" set "replacements=%replacements%-rep _"\x22DML\x22"_"\x22DML\x22 checked=\x22true\x22"_ "
:notDL4
:HTAstuff
::edit DLPAGE with saved checkmarks
support\sfk filter -quiet -spat "temp\%nextpage%" %replacements%-write -yes
::make window transparent and hidden
title ModMiiDownloadMode
support\nircmd.exe win trans ititle "ModMiiDownloadMode" 0
support\nircmd.exe win hide ititle "ModMiiDownloadMode"
::-----------This is where the magic happens------------------
if exist "temp\tempcheck.bat" del /f /q "temp\tempcheck.bat"
start /wait temp\%nextpage%
if not exist "temp\tempcheck.bat" goto:err
set nextgoto=
::set nextpage=
call temp\tempcheck.bat
::if exist "temp\tempcheck.bat" del /f /q "temp\tempcheck.bat"
if /i "%effect%" EQU "%effectbak%" goto:noCEchange
support\sfk filter Support\settings.bat -!"Set effect=" -write -yes>nul
echo Set effect=%effect%>>Support\settings.bat
:noCEchange
::make window visible, focused and activated
if /i "%nextgoto%" EQU "DLPAGES" goto:stayhidden
start /wait support\nircmd.exe win trans ititle "ModMiiDownloadMode" 255
start /wait support\nircmd.exe win focus ititle "ModMiiDownloadMode"
start /wait support\nircmd.exe win activate ititle "ModMiiDownloadMode"
title ModMii
:stayhidden
::if not "%nextpage%"=="" goto:HTAstuff
set BACKB4DRIVE=DLPAGES
set backbeforebetaswitch=DLPAGES
if not "%nextgoto%"=="" goto:%nextgoto%
set BACKB4QUEUE=DLPAGES
set loadorgo=go
if /i "%Wilbrand%" NEQ "*" goto:nowilbrand
if "%macaddress%"=="" goto:macaddress
:nowilbrand
goto:DOWNLOADQUEUE
:err
start /wait support\nircmd.exe win trans ititle "ModMiiDownloadMode" 255
start /wait support\nircmd.exe win focus ititle "ModMiiDownloadMode"
start /wait support\nircmd.exe win activate ititle "ModMiiDownloadMode"
title ModMii
echo.
echo ERROR: temp\tempcheck.txt not found!
pause
cls
goto:MENU
::--------------------------------------------------------------------
::------------------------------Not So Hidden----------------------
:NotSoHidden
cls
set cmdlinemodeswitchoff=
Set NotSoHidden=?
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Drag and drop a file or folder here and press Enter to open it with ModMii!
echo.
echo.
echo Multi-item drag and drop is only supported when items are dropped onto ModMii or
echo a ModMii shortcut; check out the ModMii Launchpad Toolbar for quicklaunch access!
echo.
echo You can also right-click an item ^& choose "Open with" and browse for ModMii.exe.
echo Or use the Context Menu Installer to add "Open with ModMii" to your right-click.
echo.
echo If dragging a folder launches into a "wrong" activity, check that there aren't
echo other file types saved in the same folder; e.g. if trying to load a folder of
echo myms, make sure there aren't any WADs saved to the same folder or subfolders.
echo.
echo.
echo.
echo H = Help and Info on supported file\folder types
echo.
echo L = Launchpad Toolbar Installer\Uninstaller
echo.
echo C = Context Menu Installer\Uninstaller
echo.
echo B = Back
echo M = Main Menu
echo.
setlocal ENABLEDELAYEDEXPANSION
set /p NotSoHidden= Enter Selection Here:
::remove quotes
set "NotSoHidden=!NotSoHidden:"=!"
set "NotSoHidden=!NotSoHidden:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
::echo "%NotSoHidden%"
if /i "%NotSoHidden%" EQU "M" goto:noextravars
if /i "%NotSoHidden%" EQU "B" goto:noextravars
if /i "%NotSoHidden%" EQU "H" start ModMii.exe D
if /i "%NotSoHidden%" EQU "H" goto:NotSoHidden
if /i "%NotSoHidden%" EQU "L" goto:LaunchpadCheck
if /i "%NotSoHidden%" EQU "C" goto:ContextCheck
if /i "%NotSoHidden%" EQU "?" goto:badkey
if exist "%NotSoHidden%" start ModMii.exe "%NotSoHidden%"
if exist "%NotSoHidden%" exit
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:NotSoHidden
:LaunchpadCheck
set one=
set two=
::echo Checking if the ModMii Launchpad Toolbar is already installed...
::make a backup of original toolbar, and hexsearch it for ModMii Launcher
set "cleandate=%date:\=-%"
set "cleandate=%cleandate:/=-%"
set "ToolbarNewBackup=%temp%\Toolbar_backup_%computername%_%cleandate: =-%.reg"
::echo %ToolbarNewBackup%
START /MIN /WAIT REG EXPORT HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop "%ToolbarNewBackup%" /Y
cmd /a /c type "%ToolbarNewBackup%">"temp\Toolbars_Check2.txt"
support\sfk filter "temp\Toolbars_Check2.txt" -rep _"*]"__ -rep _,__ -rep _\__ -rep _" "__ -join>"temp\Toolbars_Check.txt"
DEL "temp\Toolbars_Check2.txt">nul
::@ping 127.0.0.1 -n 2 -w 1000> nul
::M o d M i i L a u n c h p a d
::4D006F0064004D006900690020004C00610075006E00630068007000610064
if not exist "%cd%\temp\Toolbar_backup" mkdir "%cd%\temp\Toolbar_backup"
findStr /I "4D006F0064004D006900690020004C00610075006E00630068007000610064" temp\Toolbars_Check.txt >nul
IF ERRORLEVEL 1 (move /y "%ToolbarNewBackup%" "%cd%\temp\Toolbar_backup">nul) & (DEL "temp\Toolbars_Check.txt">nul) & (goto:LaunchpadConfirm)
DEL "temp\Toolbars_Check.txt">nul
DEL "%ToolbarNewBackup%">nul
goto:LaunchpadUninstaller
:LaunchpadConfirm
Set LaunchpadConfirm=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to install the ModMii Launchpad to your Toolbar?
echo.
echo The ModMii Launchpad adds a quicklaunch-like toolbar to your taskbar.
echo This will give you easy access to ModMii's many drag and drop functions.
echo.
echo Warning: This will replace existing toolbars you might have installed,
echo but ModMii will allow you to restore your old settings at any time.
echo.
echo This will also close any folders you might currently have open
echo in order to refresh and restart your taskbar.
echo.
echo Note: Having ModMii 'pinned' to the taskbar does not permit drag and drop.
echo.
echo Launchpad shortcuts go here: C:\ModMii\temp\ModMii Launchpad
echo.
echo.
echo Y = Yes, Install the ModMii Launchpad (Reversible)
echo.
echo N = No, take me (B)ack!
echo.
echo M = Main Menu
echo.
echo.
set /p LaunchpadConfirm= Enter Selection Here:
if /i "%LaunchpadConfirm%" EQU "Y" goto:skipprompt
if /i "%LaunchpadConfirm%" EQU "M" goto:noextravars
if /i "%LaunchpadConfirm%" EQU "N" goto:NotSoHidden
if /i "%LaunchpadConfirm%" EQU "B" goto:NotSoHidden
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:LaunchpadConfirm
:skipprompt
::install launchpad now
::creating Toolbar C:\ModMii\temp\ModMii Launchpad
if not exist "C:\ModMii\temp\ModMii Launchpad" mkdir "C:\ModMii\temp\ModMii Launchpad"
::Shortcuts will appear in alphabetical order
support\nircmd.exe shortcut "%cd%\ModMii.exe" "C:\ModMii\temp\ModMii Launchpad" "ModMii"
support\nircmd.exe shortcut "%cd%\ModMiiSkin.exe" "C:\ModMii\temp\ModMii Launchpad" "ModMiiSkin"
> "%TEMP%.\TEMP.REG" ECHO Windows Registry Editor Version 5.00
>>"%TEMP%.\TEMP.REG" ECHO.
>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop]
>>"%TEMP%.\TEMP.REG" ECHO "TaskbarWinXP"=hex:0c,00,00,00,08,00,00,00,02,00,00,00,00,00,00,00,aa,4f,28,68,\
>>"%TEMP%.\TEMP.REG" ECHO 48,6a,d0,11,8c,78,00,c0,4f,d9,18,b4,a2,05,00,00,c0,0c,00,00,00,00,00,00,32,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,00,00,00,32,00,00,00,00,00,00,00,01,00,00,00,01,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,b0,e2,2b,d8,64,57,d0,11,a9,6e,00,c0,4f,d7,05,a2,22,00,1c,00,0a,10,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,01,00,00,00,02,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,4c,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 01,14,02,00,00,00,00,00,c0,00,00,00,00,00,00,46,81,01,00,00,10,00,00,00,c3,\
>>"%TEMP%.\TEMP.REG" ECHO 59,6d,b9,ba,47,d8,01,78,a9,d0,48,7a,48,d8,01,2e,0c,da,76,bb,47,d8,01,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,3b,01,14,\
>>"%TEMP%.\TEMP.REG" ECHO 00,1f,50,e0,4f,d0,20,ea,3a,69,10,a2,d8,08,00,2b,30,30,9d,19,00,2f,43,3a,5c,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,54,00,31,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,84,54,22,ba,10,00,4d,6f,64,4d,69,69,00,00,3e,00,09,00,04,00,ef,be,84,\
>>"%TEMP%.\TEMP.REG" ECHO 54,64,03,84,54,22,ba,2e,00,00,00,49,21,02,00,00,00,17,00,00,00,00,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,1e,52,44,00,4d,00,6f,00,64,00,4d,00,69,00,69,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,16,00,4e,00,31,00,00,00,00,00,84,54,22,ba,10,00,74,65,6d,70,00,00,3a,00,\
>>"%TEMP%.\TEMP.REG" ECHO 09,00,04,00,ef,be,84,54,20,ba,84,54,22,ba,2e,00,00,00,32,8b,01,00,00,00,0d,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,1e,52,44,00,74,00,65,00,6d,00,\
>>"%TEMP%.\TEMP.REG" ECHO 70,00,00,00,14,00,6a,00,31,00,00,00,00,00,84,54,0f,04,10,00,4d,4f,44,4d,49,\
>>"%TEMP%.\TEMP.REG" ECHO 49,7e,31,00,00,52,00,09,00,04,00,ef,be,84,54,66,03,84,54,19,ba,2e,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 57,21,02,00,00,00,2e,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,d2,56,d7,\
>>"%TEMP%.\TEMP.REG" ECHO 00,4d,00,6f,00,64,00,4d,00,69,00,69,00,20,00,4c,00,61,00,75,00,6e,00,63,00,\
>>"%TEMP%.\TEMP.REG" ECHO 68,00,70,00,61,00,64,00,00,00,18,00,00,00,60,00,00,00,03,00,00,a0,58,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,b8,8f,8a,53,\
>>"%TEMP%.\TEMP.REG" ECHO 1e,dd,fe,4d,b7,4e,ac,2a,b4,50,fa,18,28,9e,12,f0,4e,b3,ec,11,b0,c6,00,68,eb,\
>>"%TEMP%.\TEMP.REG" ECHO 3e,52,07,b8,8f,8a,53,1e,dd,fe,4d,b7,4e,ac,2a,b4,50,fa,18,28,9e,12,f0,4e,b3,\
>>"%TEMP%.\TEMP.REG" ECHO ec,11,b0,c6,00,68,eb,3e,52,07,45,00,00,00,09,00,00,a0,39,00,00,00,31,53,50,\
>>"%TEMP%.\TEMP.REG" ECHO 53,b1,16,6d,44,ad,8d,70,48,a7,48,40,2e,a4,3d,78,8c,1d,00,00,00,68,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,48,00,00,00,d7,be,ba,d3,5e,11,ea,11,ad,c2,04,ed,33,c4,ae,a4,00,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,00,00,00,00,00,c0,06,00,00,00,00,00,00,36,00,00,00,00,\
>>"%TEMP%.\TEMP.REG" ECHO 00,00,00,00,00,00,00,36,00,00,00,00,00,00,00,01,00,00,00
>>"%TEMP%.\TEMP.REG" ECHO.
::for some reason [START /WAIT REGEDIT /S "%TEMP%\TEMP.REG] isn't working when launched via modmii.exe, powershell is a workaround https://stackoverflow.com/a/52226150
::to make verbose, remove this part: *>&1 | Out-Null
::"Invoke-Command {reg import \\server\share\test.reg *>&1 | Out-Null}"
powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"' *>&1 | Out-Null}"
DEL "%TEMP%\TEMP.REG">nul
goto:restartexplorer
:LaunchpadUninstaller
::check for backups matching computer name
dir /T:C /O-d "%cd%\temp\Toolbar_backup\Toolbar_backup_%computername%_*.reg">temp\temp.txt
support\sfk filter -quiet temp\temp.txt ++".reg" -rep _"* "__ -write -yes
set /p ToolbarOldBackup= <temp\temp.txt
:LaunchpadUninstaller2
cls
Set LaunchpadUn=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo This action will remove the ModMii Launchpad from your taskbar.
echo.
echo.
if "%ToolbarOldBackup%"=="" echo No toolbar backups were found for this PC "%ToolbarOldBackup%"
if not "%ToolbarOldBackup%"=="" echo R = Restore "%ToolbarOldBackup%"
echo.
echo C = Clear toolbar settings entirely and start fresh
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
set /p LaunchpadUn= Enter Selection Here:
if /i "%LaunchpadUn%" EQU "C" goto:ClearToolbar
if "%ToolbarOldBackup%"=="" goto:skip
if /i "%LaunchpadUn%" EQU "R" goto:RestoreToolbar
:skip
if /i "%LaunchpadUn%" EQU "M" goto:noextravars
if /i "%LaunchpadUn%" EQU "B" goto:NotSoHidden
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:LaunchpadUninstaller2
:RestoreToolbar
::echo Restoring "%ToolbarOldBackup%"
::must use full path to reg files
::START /WAIT REGEDIT /S "%ToolbarOldBackup%"
powershell "Invoke-Command {reg import '"%cd%\temp\Toolbar_backup\%ToolbarOldBackup%"' *>&1 | Out-Null}"
DEL "%cd%\temp\Toolbar_backup\%ToolbarOldBackup%">nul
goto:clearlaunchpad
:ClearToolbar
> "%TEMP%.\TEMP.REG" ECHO Windows Registry Editor Version 5.00
>>"%TEMP%.\TEMP.REG" ECHO.
>>"%TEMP%.\TEMP.REG" ECHO [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop]
>>"%TEMP%.\TEMP.REG" ECHO.
::START /WAIT REGEDIT /S "%TEMP%\TEMP.REG"
powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"' *>&1 | Out-Null}"
DEL "%TEMP%\TEMP.REG">nul
goto:clearlaunchpad
:clearlaunchpad
if exist "C:\ModMii\temp\ModMii Launchpad" rd /s /q "C:\ModMii\temp\ModMii Launchpad"> nul
if not exist "C:\ModMii\temp" goto:restartexplorer
dir /A /B "C:\ModMii\temp" | findstr /R ".">NUL && goto:restartexplorer
rd /s /q "C:\ModMii\temp"> nul
if not exist "C:\ModMii" goto:restartexplorer
dir /A /B "C:\ModMii" | findstr /R ".">NUL && goto:restartexplorer
rd /s /q "C:\ModMii"> nul
:restartexplorer
echo.
echo Your folders are about to close, don't worry that's normal.
echo.
@ping 127.0.0.1 -n 2 -w 1000> nul
taskkill /f /im explorer.exe >nul
set "ModMiiDir=%cd%"
cd /d %WINDIR%\system32
start %WINDIR%\explorer.exe
cd /d "%ModMiiDir%"
goto:NotSoHidden
:ContextCheck
::echo Checking if the ModMii Context Menu is already installed...
if exist "temp\shellcheck.txt" del "temp\shellcheck.txt">nul
START /MIN /WAIT REG EXPORT "HKCU\SOFTWARE\Classes\*\shell\Open with ModMii" "temp\shellcheck.txt" /Y
if exist "temp\shellcheck.txt" goto:ContextUninstall
Set ContextConfirm=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to add "Open with ModMii" to your right-click context menu?
echo.
echo This can be removed later if you change your mind.
echo.
echo.
echo Warning: Opening multiple files simultaneously from the right-click context
echo menu may lead to conficting instances of ModMii and unexpected results.
echo.
echo Multi-item drag and drop is only supported when items are dropped onto ModMii or
echo a ModMii shortcut; check out the ModMii Launchpad Toolbar for quicklaunch access!
echo.
echo.
echo.
echo Y = Yes, Install the ModMii Context Menu (Reversible)
echo.
echo S = Shift-click install only (Reversible)
echo.
echo.
echo N = No, take me (B)ack!
echo M = Main Menu
echo.
echo.
set /p ContextConfirm= Enter Selection Here:
if /i "%ContextConfirm%" EQU "Y" goto:installcontext
if /i "%ContextConfirm%" EQU "S" goto:installcontext
if /i "%ContextConfirm%" EQU "M" goto:noextravars
if /i "%ContextConfirm%" EQU "N" goto:NotSoHidden
if /i "%ContextConfirm%" EQU "B" goto:NotSoHidden
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ContextConfirm
:installcontext
> "%TEMP%.\TEMP.REG" ECHO Windows Registry Editor Version 5.00
>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for any file:
>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Open with ModMii]
>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
>>"%TEMP%.\TEMP.REG" ECHO.
>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Open with ModMii\command]
>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe \"%%1\""
>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for right click on folders in left panel of Windows Explorer or on BACKGROUND of a directory in right panel (no Args):
::>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\Background\shell\Open ModMii]
::>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
::if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
::>>"%TEMP%.\TEMP.REG" ECHO.
::>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\Background\shell\Open ModMii\command]
::>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe"
::>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for right click on folders in right panel of Windows Explorer:
>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\shell\Open with ModMii]
>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
>>"%TEMP%.\TEMP.REG" ECHO.
>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\shell\Open with ModMii\command]
>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe \"%%1\""
>>"%TEMP%.\TEMP.REG" ECHO.
::for some reason [START /WAIT REGEDIT /S "%TEMP%\TEMP.REG] isn't working when launched via modmii.exe, powershell is a workaround https://stackoverflow.com/a/52226150
::to make verbose, remove this part: *>&1 | Out-Null
::"Invoke-Command {reg import \\server\share\test.reg *>&1 | Out-Null}"
echo.
powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"'}"
::powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"' *>&1 | Out-Null}"
DEL "%TEMP%\TEMP.REG">nul
::if exist "temp\shellcheck.txt" del "temp\shellcheck.txt">nul
::START /MIN /WAIT REG EXPORT "HKCU\SOFTWARE\Classes\*\shell\Open with ModMii" "temp\shellcheck.txt" /Y
::echo.
::if exist "temp\shellcheck.txt" (echo Installation Successful) else (echo Installation Failed)
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:NotSoHidden
:ContextUninstall
Set ContextConfirm=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to remove "Open with ModMii" from your right-click context menu?
echo.
echo.
echo.
echo Y = Yes, uninstall the ModMii Context Menu
echo.
echo N = No, take me (B)ack!
echo.
echo M = Main Menu
echo.
echo.
set /p ContextConfirm= Enter Selection Here:
if /i "%ContextConfirm%" EQU "Y" goto:uninstallcontext
if /i "%ContextConfirm%" EQU "M" goto:noextravars
if /i "%ContextConfirm%" EQU "N" goto:NotSoHidden
if /i "%ContextConfirm%" EQU "B" goto:NotSoHidden
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ContextUninstall
:uninstallcontext
> "%TEMP%.\TEMP.REG" ECHO Windows Registry Editor Version 5.00
>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for any file:
>>"%TEMP%.\TEMP.REG" ECHO [-HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Open with ModMii]
::>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
::if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
::>>"%TEMP%.\TEMP.REG" ECHO.
::>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\SOFTWARE\Classes\*\shell\Open with ModMii\command]
::>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe \"%%1\""
>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for right click on folders in left panel of Windows Explorer or on BACKGROUND of a directory in right panel (no Args):
::>>"%TEMP%.\TEMP.REG" ECHO [-HKEY_CURRENT_USER\Software\Classes\directory\Background\shell\Open ModMii]
::>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
::if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
::>>"%TEMP%.\TEMP.REG" ECHO.
::>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\Background\shell\Open ModMii\command]
::>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe"
::>>"%TEMP%.\TEMP.REG" ECHO.
::Context menu for right click on folders in right panel of Windows Explorer:
>>"%TEMP%.\TEMP.REG" ECHO [-HKEY_CURRENT_USER\Software\Classes\directory\shell\Open with ModMii]
::>>"%TEMP%.\TEMP.REG" ECHO "Icon"="%cd:\=\\%\\ModMii.exe"
::if /i "%ContextConfirm%" EQU "S" >>"%TEMP%.\TEMP.REG" ECHO "Extended"=""
::>>"%TEMP%.\TEMP.REG" ECHO.
::>>"%TEMP%.\TEMP.REG" ECHO [HKEY_CURRENT_USER\Software\Classes\directory\shell\Open with ModMii\command]
::>>"%TEMP%.\TEMP.REG" ECHO @="%cd:\=\\%\\ModMii.exe \"%%1\""
>>"%TEMP%.\TEMP.REG" ECHO.
::for some reason [START /WAIT REGEDIT /S "%TEMP%\TEMP.REG] isn't working when launched via modmii.exe, powershell is a workaround https://stackoverflow.com/a/52226150
::to make verbose, remove this part: *>&1 | Out-Null
::"Invoke-Command {reg import \\server\share\test.reg *>&1 | Out-Null}"
echo.
powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"'}"
::powershell "Invoke-Command {reg import '"%TEMP%.\TEMP.REG"' *>&1 | Out-Null}"
DEL "%TEMP%\TEMP.REG">nul
::if exist "temp\shellcheck.txt" del "temp\shellcheck.txt">nul
::START /MIN /WAIT REG EXPORT "HKCU\SOFTWARE\Classes\*\shell\Open with ModMii" "temp\shellcheck.txt" /Y
::echo.
::if not exist "temp\shellcheck.txt" (echo Uninstallation Successful) else (echo Uninstallation Failed)
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:NotSoHidden
::..................................................OPTIONS..................................................
.......
:OPTIONS
Set WLAST=
Set Options=
set cheatoption=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%]Enter the option # (or letter) to enable/disable it
echo.
::replace \ with itself using "\x5c" so sfk -spat doesn't misinterprate \t or similar as commands
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 D = Change Drive letter: Current Setting: [%cyantext%]"%Drive:\=\x5c%"
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20DU = Change Drive letter for USB: Current Setting: [%cyantext%]"%DriveU:\=\x5c%"
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 d2x = change d2x cIOS version built: Current Setting: [%cyantext%]v%d2x-beta-rev%
echo.
if /i "%hermesOPTION%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 H = Hermes cIOSs (202 ^& 222-224) will also be recommended [%redtext%](Disabled)
if /i "%hermesOPTION%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 H = Hermes cIOSs (202 ^& 222-224) will also be recommended [%greentext%](Enabled)
echo * Generally no longer necessary but may still be useful in some cases
echo.
if /i "%CMIOSOPTION%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20CM = cMIOS included in recommended cIOSs [%redtext%](Disabled)
if /i "%CMIOSOPTION%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20CM = cMIOS included in recommended cIOSs [%greentext%](Enabled)
echo * A cMIOS allows older non-chipped Wii's to play GameCube backup discs
echo.
if /i "%ExtraProtectionOPTION%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 E = Extra Brick Protection in ModMii Wizard Guides [%redtext%](Disabled)
if /i "%ExtraProtectionOPTION%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 E = Extra Brick Protection in ModMii Wizard Guides [%greentext%](Enabled)
echo * When enabled, a patched IOS60 will be installed to other system menu
echo IOS slots to prevent bricks from users manually up\downgrading Wii's
echo.
if /i "%ACTIVEIOS%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 U = Update IOSs. Wizard/SysCheck-Updater to update Active IOSs [%redtext%](Disabled)
if /i "%ACTIVEIOS%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 U = Update IOSs. Wizard/SysCheck-Updater to update Active IOSs [%greentext%](Enabled)
echo.
if /i "%AUSKIP%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20AU = Auto-Updating downloads will skip update check if cached [%redtext%](Disabled)
if /i "%AUSKIP%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20AU = Auto-Updating downloads will skip update check if cached [%greentext%](Enabled)
echo.
if /i "%FWDOPTION%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 FWD = Install USB-Loader Forwarder in ModMii Wizard Guides [%redtext%](Disabled)
if /i "%FWDOPTION%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 FWD = Install USB-Loader Forwarder in ModMii Wizard Guides [%greentext%](Enabled)
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20PC = PC Programs Save Location: Current Setting: [%cyantext%]%PCSAVE%
if /i "%PCSAVE%" EQU "Local" echo * PC Programs saved to %HomeDrive%
if /i "%PCSAVE%" EQU "Local" echo * Shortcuts will be installed to Start Menu and Desktop
if /i "%PCSAVE%" EQU "Portable" echo * PC programs saved portably to one of the above Drive Settings
if /i "%PCSAVE%" NEQ "Auto" goto:skip
echo * PC programs saved to %homedrive% with shortcuts if running ModMii from %homedrive%
echo * PC programs saved portably if not running ModMii from %homedrive%
:skip
::echo.
::echo CC = Cheat Code Options
echo.
if /i "%ROOTSAVE%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20RS = Root Save: Save IOSs\MIOSs to Root instead of WAD Folder [%greentext%](Enabled)
if /i "%ROOTSAVE%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20RS = Root Save: Save IOSs\MIOSs to Root instead of WAD Folder [%redtext%](Disabled)
echo * Does NOT affect ModMii Wizard and only applies to IOSs\MIOSs
echo * Useful for Wii Apps that require IOSs\MIOSs saved to Root
::echo.
::echo CE = Channel Effect for custom system menu themes: %effect%
::echo * Choose from 3 effects: No-Spin, Spin and Fast-Spin
::echo.
if /i "%OPTION1%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 1 = Do not Keep 00000001 or NUS Folders for IOSs\MIOSs\SMs etc [%cyantext%](Default)
if /i "%OPTION1%" EQU "OFF" echo * Folder sometimes required for offline usage of a few Wii Apps
if /i "%OPTION1%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 1 = Keep 00000001 Folder for IOSs\MIOSs\SMs etc [%cyantext%](Option 2)
if /i "%OPTION1%" EQU "ON" echo * Useful for offline usage of Wii Apps like Dop-Mii
if /i "%OPTION1%" EQU "NUS" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 1 = Keep NUS Folder for IOSs\MIOSs\SMs etc [%cyantext%](Option 3: NUS)
if /i "%OPTION1%" EQU "NUS" echo * Useful for offline usage of Wii Apps like d2x\Hermes cIOS Installers
if /i "%OPTION1%" EQU "ALL" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 1 = Keep NUS and 00000001 Folder for IOSs\MIOSs\SMs etc [%cyantext%](Option 4: ALL)
if /i "%OPTION1%" EQU "ALL" echo * Useful for offline usage of a handful of Wii Apps
echo.
if /i "%neek2o%" EQU "off" support\sfk echo -spat \x20 \x20 \x20 \x20 n2o = neek2o - build mod of s\uneek instead of original [%redtext%](Disabled)
if /i "%neek2o%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 \x20 n2o = neek2o - build mod of s\uneek instead of original [%greentext%](Enabled)
::echo.
if /i "%SSD%" EQU "off" support\sfk echo -spat \x20 \x20 \x20 \x20 SSD = SNEEK and SNEEK+DI SD Access [%redtext%](Disabled)
if /i "%SSD%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 \x20 SSD = SNEEK and SNEEK+DI SD Access [%greentext%](Enabled)
::echo.
if /i "%SNKFONT%" EQU "W" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 F = Font.bin Colour for SNEEK/UNEEK [%cyantext%](Black text on White background)
if /i "%SNKFONT%" EQU "B" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 F = Font.bin Colour for SNEEK/UNEEK [%cyantext%](White text on Black background)
if /i "%SNKFONT%" EQU "R" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 F = Font.bin Colour for SNEEK/UNEEK [%cyantext%](Red text on Black background)
::echo.
if /i "%sneekverbose%" EQU "off" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20SV = SNEEK Verbose Output [%redtext%](Disabled)
if /i "%sneekverbose%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20SV = SNEEK Verbose Output [%greentext%](Enabled)
echo.
if /i "%ModMiiverbose%" EQU "off" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 V = Verbose for ModMii Skin ^& nandBinCheck [%redtext%](Disabled)
if /i "%ModMiiverbose%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 V = Verbose for ModMii Skin ^& nandBinCheck [%greentext%](Enabled)
echo.
if /i "%AudioOption%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20SO = Play sound at Finish [%redtext%](Disabled)
if /i "%AudioOption%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20SO = Play sound at Finish [%greentext%](Enabled)
echo.
::if not exist "%DRIVE%" goto:nodrivefolder
::echo C = Create Custom.md5 file to verify all files in "%DRIVE%"
::if exist Custom.md5 echo C2 = Verify files in "%DRIVE%" against Custom.md5
:::nodrivefolder
::if exist Custom.md5 echo C3 = Delete Custom.md5
::echo.
if /i "%AUTOUPDATE%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 A = Auto-Update ModMii at program start [%redtext%](Disabled)
if /i "%AUTOUPDATE%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 A = Auto-Update ModMii at program start [%greentext%](Enabled)
::echo.
echo N = Check for New versions of ModMii right now
echo.
echo S = Save Settings R = Restore Default Settings M = Main Menu
echo.
set /p OPTIONS= Enter Selection Here:
if /i "%OPTIONS%" EQU "d2x" (set backbeforebetaswitch=OPTIONS) & (goto:betaswitch)
if /i "%OPTIONS%" EQU "RS" goto:ROOTSAVE
if /i "%OPTIONS%" EQU "PC" goto:PCSAVE
if /i "%OPTIONS%" EQU "1" goto:Option1
::if /i "%OPTIONS%" EQU "CE" goto:OptionCE
if /i "%OPTIONS%" EQU "N" goto:UpdateModMii
if /i "%OPTIONS%" EQU "A" goto:AutoUpdate
if /i "%OPTIONS%" EQU "SO" goto:AudioOption
if /i "%OPTIONS%" EQU "H" goto:hermesOPTION
if /i "%OPTIONS%" EQU "CM" goto:CMIOSOPTION
if /i "%OPTIONS%" EQU "FWD" goto:FWDOPTION
if /i "%OPTIONS%" EQU "E" goto:ExtraProtectionOPTION
if /i "%OPTIONS%" EQU "sv" goto:OptionSneekverbose
if /i "%OPTIONS%" EQU "n2o" goto:Optionneek2o
if /i "%OPTIONS%" EQU "v" goto:OptionModMiiverbose
if /i "%OPTIONS%" EQU "SSD" goto:OptionSSD
if /i "%OPTIONS%" EQU "f" goto:Optionfont
::disable md5 stuff
goto:nocustomMD5
if not exist "%DRIVE%" goto:nodrivefolder2
if /i "%OPTIONS%" EQU "C" echo ;;%DRIVE%>Custom.md5
::if /i "%OPTIONS%" EQU "C" support\sfk list "%DRIVE%" wad dol app elf +md5gento="%DRIVE%"\Custom.md5
if /i "%OPTIONS%" EQU "C" support\fvc -c -a MD5 -r "%DRIVE%"\*.*>>Custom.md5
if /i "%OPTIONS%" EQU "C" support\sfk filter Custom.md5 -unique -write -yes>nul
if /i "%OPTIONS%" EQU "C" goto:Options
if not exist Custom.md5 goto:nocustomMD5
if /i "%OPTIONS%" NEQ "C2" goto:nodrivefolder2
support\sfk filter custom.md5 -ls+;; -rep _";;"__ >temp\customMD5path.txt
support\sfk filter -spat temp\customMD5path.txt -rep _\x5f_?_ -write -yes>nul
set /p customdrive= <temp\customMD5path.txt
del temp\customMD5path.txt>nul
echo %drive% >temp\newMD5path.txt
support\sfk filter -spat temp\newMD5path.txt -rep _\x5f_?_ -write -yes>nul
set /p newdrive= <temp\newMD5path.txt
set newdrive=%newdrive:~0,-1%
del temp\newMD5path.txt>nul
support\sfk filter -spat custom.md5 -rep _\x5f_?_ -write -yes>nul
support\sfk filter custom.md5 -rep _"%customdrive%"_"%newDRIVE%"_ -write -yes>nul
support\sfk filter -spat custom.md5 -rep _\x3f_\x5f_ -write -yes>nul
Set DB=C
goto:Finish
:nodrivefolder2
if not exist Custom.md5 goto:nocustomMD5
if /i "%OPTIONS%" EQU "C3" del Custom.md5>nul
if /i "%OPTIONS%" EQU "C3" goto:Options
:nocustomMD5
if /i "%OPTIONS%" EQU "D" set BACKB4DRIVE=OPTIONS
if /i "%OPTIONS%" EQU "D" goto:DRIVECHANGE
if /i "%OPTIONS%" EQU "DU" set BACKB4DRIVEU=OPTIONS
if /i "%OPTIONS%" EQU "DU" goto:DRIVEUCHANGE
::if /i "%OPTIONS%" EQU "CC" goto:cheatcodeoptions
if /i "%OPTIONS%" EQU "U" goto:ACTIVEIOS
if /i "%OPTIONS%" EQU "AU" goto:AUSKIP
if /i "%OPTIONS%" EQU "S" goto:SaveSettings
if /i "%OPTIONS%" EQU "R" goto:RestoreSettings
if /i "%OPTIONS%" EQU "M" goto:MENU
if /i "%OPTIONS%" EQU "B" goto:MENU
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:OPTIONS
:RestoreSettings
if exist support\d2x-beta (rd /s /q support\d2x-beta) & (set backbeforebetaswitch=RestoreSettings) & (goto:d2xfix)
set d2x-beta-rev=10-beta52
set ROOTSAVE=off
set effect=No-Spin
set PCSAVE=Auto
set OPTION1=off
set AudioOption=on
set hermesOPTION=off
set CMIOSOPTION=off
set FWDOPTION=on
set ExtraProtectionOPTION=on
set Drive=COPY_TO_SD
set DriveU=COPY_TO_USB
set ACTIVEIOS=on
set AUSKIP=off
set AUTOUPDATE=on
Set ModMiiverbose=off
Set SSD=off
Set sneekverbose=off
Set neek2o=on
Set SNKFONT=B
set redtext=Red
set bluetext=Blue
set yellowtext=Yellow
set greentext=Green
set magentatext=Magenta
set cyantext=Cyan
set backgroundcolor=1
set whitetext=f
set skin=Default
color %backgroundcolor%%whitetext%
goto:savesettingsnow
::note: set d2x-beta-rev=x does not need to be saved, just edit replace to update it
::skipped
:defaultcheatsettings
set overwritecodes=off
set cheatregion=All
set cheatlocation=B
:selectallcheats
set wiicheat=ON
set WiiWarecheat=ON
set VCArcadecheat=OFF
set WiiChannelscheat=ON
set Gamecubecheat=ON
set NEScheat=ON
set SNEScheat=ON
set N64cheat=ON
set SMScheat=ON
set Segacheat=ON
set NeoGeocheat=ON
set Commodorecheat=ON
set MSXcheat=ON
set TurboGraFX-16cheat=ON
set TurboGraFX-CDcheat=ON
if /i "%cheatoption%" EQU "A" goto:cheatcodeoptions
if /i "%cheatoption%" EQU "D" goto:cheatcodeoptions
goto:savesettingsnow
::note: set d2x-beta-rev=x does not need to be saved, just edit replace to update it
:SaveSettings
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
:savesettingsnow
echo ::ModMii Settings > Support\settings.bat
echo ::ModMiiv%currentversion%>> Support\settings.bat
echo Set ROOTSAVE=%ROOTSAVE%>> Support\settings.bat
echo Set effect=%effect%>> Support\settings.bat
echo Set PCSAVE=%PCSAVE%>> Support\settings.bat
echo Set Option1=%Option1%>> Support\settings.bat
echo Set AudioOption=%AudioOption%>> Support\settings.bat
echo Set hermesOPTION=%hermesOPTION%>> Support\settings.bat
echo Set CMIOSOPTION=%CMIOSOPTION%>> Support\settings.bat
echo Set FWDOPTION=%FWDOPTION%>> Support\settings.bat
echo Set ExtraProtectionOPTION=%ExtraProtectionOPTION%>> Support\settings.bat
echo Set "Drive=%DRIVE%">> Support\settings.bat
echo Set "DriveU=%DRIVEU%">> Support\settings.bat
echo Set ACTIVEIOS=%ACTIVEIOS%>> Support\settings.bat
echo Set AUSKIP=%AUSKIP%>> Support\settings.bat
echo Set AUTOUPDATE=%AUTOUPDATE%>> Support\settings.bat
echo Set ModMiiverbose=%ModMiiverbose%>> Support\settings.bat
echo Set SSD=%SSD%>> Support\settings.bat
echo Set sneekverbose=%sneekverbose%>> Support\settings.bat
echo Set neek2o=%neek2o%>> Support\settings.bat
echo Set SNKFONT=%SNKFONT%>> Support\settings.bat
echo Set skin=%skin%>> Support\settings.bat
::echo Set overwritecodes=%overwritecodes%>> Support\settings.bat
::echo Set cheatregion=%cheatregion%>> Support\settings.bat
::echo Set cheatlocation=%cheatlocation%>> Support\settings.bat
::echo Set wiicheat=%wiicheat%>> Support\settings.bat
::echo Set WiiWarecheat=%WiiWarecheat%>> Support\settings.bat
::echo Set VCArcadecheat=%VCArcadecheat%>> Support\settings.bat
::echo Set WiiChannelscheat=%WiiChannelscheat%>> Support\settings.bat
::echo Set Gamecubecheat=%Gamecubecheat%>> Support\settings.bat
::echo Set NEScheat=%NEScheat%>> Support\settings.bat
::echo Set SNEScheat=%SNEScheat%>> Support\settings.bat
::echo Set N64cheat=%N64cheat%>> Support\settings.bat
::echo Set SMScheat=%SMScheat%>> Support\settings.bat
::echo Set Segacheat=%Segacheat%>> Support\settings.bat
::echo Set NeoGeocheat=%NeoGeocheat%>> Support\settings.bat
::echo Set Commodorecheat=%Commodorecheat%>> Support\settings.bat
::echo Set MSXcheat=%MSXcheat%>> Support\settings.bat
::echo Set TurboGraFX-16cheat=%TurboGraFX-16cheat%>> Support\settings.bat
::echo Set TurboGraFX-CDcheat=%TurboGraFX-CDcheat%>> Support\settings.bat
echo set AGREEDVERSION=%currentversion%>> Support\settings.bat
if /i "%redtext%" NEQ "Red" echo set "redtext=%redtext%">> Support\settings.bat
if /i "%bluetext%" NEQ "Blue" echo set "bluetext=%bluetext%">> Support\settings.bat
if /i "%yellowtext%" NEQ "Yellow" echo set "yellowtext=%yellowtext%">> Support\settings.bat
if /i "%Greentext%" NEQ "Green" echo set "greentext=%greentext%">> Support\settings.bat
if /i "%Magentatext%" NEQ "Magenta" echo set "magentatext=%magentatext%">> Support\settings.bat
if /i "%cyantext%" NEQ "Cyan" echo set "cyantext=%cyantext%">> Support\settings.bat
if /i "%backgroundcolor%" NEQ "1" echo set "backgroundcolor=%backgroundcolor%">> Support\settings.bat
if /i "%whitetext%" NEQ "f" echo set "whitetext=%whitetext%">> Support\settings.bat
if /i "%OPTIONS%" EQU "R" goto:OPTIONS
if exist Support\settings.bat echo Settings Saved.
echo.
@ping 127.0.0.1 -n 2 -w 1000> nul
::if /i "%cheatoption%" EQU "S" goto:cheatcodeoptions
goto:OPTIONS
:ROOTSAVE
if /i "%ROOTSAVE%" EQU "ON" goto:ROOTSAVEoff
Set ROOTSAVE=ON
goto:OPTIONS
:ROOTSAVEoff
Set ROOTSAVE=OFF
goto:OPTIONS
:PCSAVE
if /i "%PCSAVE%" EQU "Auto" (set PCSAVE=Portable) & (goto:options)
if /i "%PCSAVE%" EQU "Portable" (set PCSAVE=Local) & (goto:options)
if /i "%PCSAVE%" EQU "Local" (set PCSAVE=Auto) & (goto:options)
:Option1
if /i "%OPTION1%" EQU "off" (set OPTION1=on) & (goto:options)
if /i "%OPTION1%" EQU "on" (set OPTION1=nus) & (goto:options)
if /i "%OPTION1%" EQU "nus" (set OPTION1=all) & (goto:options)
if /i "%OPTION1%" EQU "all" (set OPTION1=off) & (goto:options)
:OptionCE
if /i "%effect%" EQU "No-Spin" (set effect=Spin) & (goto:options)
if /i "%effect%" EQU "Spin" (set effect=Fast-Spin) & (goto:options)
if /i "%effect%" EQU "Fast-Spin" (set effect=No-Spin) & (goto:options)
:AudioOption
if /i "%AudioOption%" EQU "ON" (set AudioOption=OFF) else (set AudioOption=ON)
goto:options
:CMIOSOPTION
if /i "%CMIOSOPTION%" EQU "ON" goto:CMIOSOPTIONoff
Set CMIOSOPTION=ON
goto:OPTIONS
:CMIOSOPTIONoff
Set CMIOSOPTION=OFF
goto:OPTIONS
:hermesOPTION
if /i "%hermesOPTION%" EQU "ON" goto:hermesOPTIONoff
Set hermesOPTION=ON
goto:OPTIONS
:hermesOPTIONoff
Set hermesOPTION=OFF
goto:OPTIONS
:FWDOPTION
if /i "%FWDOPTION%" EQU "ON" goto:FWDOPTIONoff
Set FWDOPTION=ON
goto:OPTIONS
:FWDOPTIONoff
Set FWDOPTION=OFF
goto:OPTIONS
:ExtraProtectionOPTION
if /i "%ExtraProtectionOPTION%" EQU "ON" (Set ExtraProtectionOPTION=OFF) else (set ExtraProtectionOPTION=ON)
goto:OPTIONS
:OptionSneekverbose
if /i "%sneekverbose%" EQU "on" goto:OptionSneekverboseoff
Set sneekverbose=on
goto:OPTIONS
:OptionSneekverboseoff
Set sneekverbose=off
goto:OPTIONS
:Optionneek2o
if /i "%neek2o%" EQU "on" goto:Optionneek2ooff
Set neek2o=on
goto:OPTIONS
:Optionneek2ooff
Set neek2o=off
goto:OPTIONS
:OptionModMiiverbose
if /i "%ModMiiverbose%" EQU "on" goto:OptionModMiiverboseoff
Set ModMiiverbose=on
goto:OPTIONS
:OptionModMiiverboseoff
Set ModMiiverbose=off
goto:OPTIONS
:OptionSSD
if /i "%SSD%" EQU "on" goto:OptionSSDoff
Set SSD=on
goto:OPTIONS
:OptionSSDoff
Set SSD=off
goto:OPTIONS
:Optionfont
if /i "%SNKFONT%" EQU "W" (Set SNKFONT=B) & (goto:OPTIONS)
if /i "%SNKFONT%" EQU "B" (Set SNKFONT=R) & (goto:OPTIONS)
if /i "%SNKFONT%" EQU "R" (Set SNKFONT=W) & (goto:OPTIONS)
:ACTIVEIOS
if /i "%ACTIVEIOS%" EQU "ON" (Set ACTIVEIOS=OFF) else (Set ACTIVEIOS=ON)
goto:OPTIONS
:AUSKIP
if /i "%AUSKIP%" EQU "ON" (Set AUSKIP=OFF) else (Set AUSKIP=ON)
goto:OPTIONS
:AUTOUPDATE
if /i "%AUTOUPDATE%" EQU "ON" goto:AUTOUPDATEoff
Set AUTOUPDATE=ON
goto:OPTIONS
:AUTOUPDATEoff
Set AUTOUPDATE=OFF
goto:OPTIONS
:cheatcodeoptions
set cheatoption=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo CHEAT CODE OPTIONS
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 R = Region to download cheats for: [%cyantext%](%cheatregion%)
echo.
if /i "%overwritecodes%" EQU "OFF" support\sfk echo -spat \x20 \x20 \x20 \x20 O = Overwrite existing txtcodes [%redtext%](Disabled)
if /i "%overwritecodes%" EQU "ON" support\sfk echo -spat \x20 \x20 \x20 \x20 O = Overwrite existing txtcodes [%greentext%](Enabled)
echo.
if /i "%cheatlocation%" EQU "B" support\sfk echo -spat \x20 \x20 \x20 \x20 L = Location(s) to save cheats: [%cyantext%](Both 1 and 2)
if /i "%cheatlocation%" EQU "T" support\sfk echo -spat \x20 \x20 \x20 \x20 L = Location(s) to save cheats: [%cyantext%](1: txtcodes)
if /i "%cheatlocation%" EQU "C" support\sfk echo -spat \x20 \x20 \x20 \x20 L = Location(s) to save cheats: [%cyantext%](2: codes\X\L)
echo 1: - txtcodes: location used by most apps, including CFG USB-Loader
echo 2: - codes\X\L\: location used by Accio Hacks
echo X = Console ID Letter (ie. Wii = R)
echo L = 1st letter of game title ('#' if it starts with a number)
echo.
echo.
echo Select or deselect consoles to download cheats for:
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 Selected consoles are marked in [%greentext%]Green
echo.
echo.
if /i "%wiicheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]1 = Wii) else (echo 1 = Wii)
if /i "%WiiWarecheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]2 = WiiWare) else (echo 2 = WiiWare)
::if /i "%VCArcadecheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]3 = VC Arcade) else (echo 3 = VC Arcade)
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%]3 = VC Arcade (Disabled due to codes.rc24.xyz error)
if /i "%WiiChannelscheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]4 = Wii Channels) else (echo 4 = Wii Channels)
if /i "%Gamecubecheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]5 = Gamecube) else (echo 5 = Gamecube)
if /i "%NEScheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]6 = NES/Famicom VC) else (echo 6 = NES/Famicom VC)
if /i "%SNEScheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]7 = Super NES/Famicom VC) else (echo 7 = Super NES/Famicom VC)
if /i "%N64cheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]8 = Nintendo 64 VC) else (echo 8 = Nintendo 64 VC)
if /i "%SMScheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%]9 = Sega Master System VC) else (echo 9 = Sega Master System VC)
if /i "%Segacheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 10 = Sega Genesis/Mega Drive VC) else (echo 10 = Sega Genesis/Mega Drive VC)
if /i "%NeoGeocheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 11 = NeoGeo VC) else (echo 11 = NeoGeo VC)
if /i "%Commodorecheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 12 = Commodore 64 VC) else (echo 12 = Commodore 64 VC)
if /i "%MSXcheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 13 = MSX VC) else (echo 13 = MSX VC)
if /i "%TurboGraFX-16cheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 14 = TurboGraFX-16 VC) else (echo 14 = TurboGraFX-16 VC)
if /i "%TurboGraFX-CDcheat%" EQU "ON" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 15 = TurboGraFX-CD VC) else (echo 15 = TurboGraFX-CD VC)
echo.
echo.
echo A = All
echo C = Clear
echo.
echo S = Save Settings
echo D = Default Cheat Settings
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
set /p cheatoption= Enter Selection Here:
if /i "%cheatoption%" EQU "1" goto:wiicheat
if /i "%cheatoption%" EQU "2" goto:WiiWarecheat
::if /i "%cheatoption%" EQU "3" goto:VCArcadecheat
if /i "%cheatoption%" EQU "4" goto:WiiChannelscheat
if /i "%cheatoption%" EQU "5" goto:Gamecubecheat
if /i "%cheatoption%" EQU "6" goto:NEScheat
if /i "%cheatoption%" EQU "7" goto:SNEScheat
if /i "%cheatoption%" EQU "8" goto:N64cheat
if /i "%cheatoption%" EQU "9" goto:SMScheat
if /i "%cheatoption%" EQU "10" goto:Segacheat
if /i "%cheatoption%" EQU "11" goto:NeoGeocheat
if /i "%cheatoption%" EQU "12" goto:Commodorecheat
if /i "%cheatoption%" EQU "13" goto:MSXcheat
if /i "%cheatoption%" EQU "14" goto:TurboGraFX-16cheat
if /i "%cheatoption%" EQU "15" goto:TurboGraFX-CDcheat
if /i "%cheatoption%" EQU "A" goto:selectallcheats
if /i "%cheatoption%" EQU "C" goto:deselectallcheats
if /i "%cheatoption%" EQU "R" goto:cheatregion
if /i "%cheatoption%" EQU "l" goto:cheatlocation
if /i "%cheatoption%" EQU "O" goto:overwritecodes
if /i "%cheatoption%" EQU "B" goto:countconsoles
if /i "%cheatoption%" EQU "M" goto:countconsoles
if /i "%cheatoption%" EQU "S" goto:SaveSettings
if /i "%cheatoption%" EQU "D" goto:defaultcheatsettings
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:cheatcodeoptions
:countconsoles
set countconsoles=0
if /i "%wiicheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%WiiWarecheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%VCArcadecheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%WiiChannelscheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%Gamecubecheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%NEScheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%SNEScheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%N64cheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%SMScheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%Segacheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%NeoGeocheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%Commodorecheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%MSXcheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%TurboGraFX-16cheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%TurboGraFX-CDcheat%" EQU "ON" SET /a countconsoles=%countconsoles%+1
if /i "%countconsoles%" EQU "0" echo Select at least one console to download cheats for
if /i "%countconsoles%" EQU "0" @ping 127.0.0.1 -n 3 -w 1000> nul
if /i "%countconsoles%" EQU "0" goto:cheatcodeoptions
if /i "%cheatoption%" EQU "M" goto:MENU
if /i "%cheatoption%" NEQ "B" goto:notback
if /i "%MENU1%" NEQ "O" (set "nextpage=DLPAGE2.hta") & (goto:DLPAGES)
goto:Options
:notback
:overwritecodes
if /i "%overwritecodes%" EQU "ON" goto:overwritecodesoff
Set overwritecodes=ON
goto:cheatcodeoptions
:overwritecodesoff
Set overwritecodes=OFF
goto:cheatcodeoptions
:cheatregion
if /i "%cheatregion%" EQU "all" Set cheatregion=USA&&goto:cheatcodeoptions
if /i "%cheatregion%" EQU "USA" Set cheatregion=PAL&&goto:cheatcodeoptions
if /i "%cheatregion%" EQU "PAL" Set cheatregion=JPN&&goto:cheatcodeoptions
if /i "%cheatregion%" EQU "JPN" Set cheatregion=all&&goto:cheatcodeoptions
:cheatlocation
if /i "%cheatlocation%" EQU "B" Set cheatlocation=T&&goto:cheatcodeoptions
if /i "%cheatlocation%" EQU "T" Set cheatlocation=C&&goto:cheatcodeoptions
if /i "%cheatlocation%" EQU "C" Set cheatlocation=B&&goto:cheatcodeoptions
:wiicheat
if /i "%wiicheat%" EQU "OFF" (set wiicheat=ON) else (set wiicheat=OFF)
goto:cheatcodeoptions
:WiiWarecheat
if /i "%WiiWarecheat%" EQU "OFF" (set WiiWarecheat=ON) else (set WiiWarecheat=OFF)
goto:cheatcodeoptions
:VCArcadecheat
if /i "%VCArcadecheat%" EQU "OFF" (set VCArcadecheat=ON) else (set VCArcadecheat=OFF)
goto:cheatcodeoptions
:WiiChannelscheat
if /i "%WiiChannelscheat%" EQU "OFF" (set WiiChannelscheat=ON) else (set WiiChannelscheat=OFF)
goto:cheatcodeoptions
:Gamecubecheat
if /i "%Gamecubecheat%" EQU "OFF" (set Gamecubecheat=ON) else (set Gamecubecheat=OFF)
goto:cheatcodeoptions
:NEScheat
if /i "%NEScheat%" EQU "OFF" (set NEScheat=ON) else (set NEScheat=OFF)
goto:cheatcodeoptions
:SNEScheat
if /i "%SNEScheat%" EQU "OFF" (set SNEScheat=ON) else (set SNEScheat=OFF)
goto:cheatcodeoptions
:N64cheat
if /i "%N64cheat%" EQU "OFF" (set N64cheat=ON) else (set N64cheat=OFF)
goto:cheatcodeoptions
:SMScheat
if /i "%SMScheat%" EQU "OFF" (set SMScheat=ON) else (set SMScheat=OFF)
goto:cheatcodeoptions
:Segacheat
if /i "%Segacheat%" EQU "OFF" (set Segacheat=ON) else (set Segacheat=OFF)
goto:cheatcodeoptions
:NeoGeocheat
if /i "%NeoGeocheat%" EQU "OFF" (set NeoGeocheat=ON) else (set NeoGeocheat=OFF)
goto:cheatcodeoptions
:Commodorecheat
if /i "%Commodorecheat%" EQU "OFF" (set Commodorecheat=ON) else (set Commodorecheat=OFF)
goto:cheatcodeoptions
:MSXcheat
if /i "%MSXcheat%" EQU "OFF" (set MSXcheat=ON) else (set MSXcheat=OFF)
goto:cheatcodeoptions
:TurboGraFX-16cheat
if /i "%TurboGraFX-16cheat%" EQU "OFF" (set TurboGraFX-16cheat=ON) else (set TurboGraFX-16cheat=OFF)
goto:cheatcodeoptions
:TurboGraFX-CDcheat
if /i "%TurboGraFX-CDcheat%" EQU "OFF" (set TurboGraFX-CDcheat=ON) else (set TurboGraFX-CDcheat=OFF)
goto:cheatcodeoptions
:deselectallcheats
set wiicheat=OFF
set WiiWarecheat=OFF
set VCArcadecheat=OFF
set WiiChannelscheat=OFF
set Gamecubecheat=OFF
set NEScheat=OFF
set SNEScheat=OFF
set N64cheat=OFF
set SMScheat=OFF
set Segacheat=OFF
set NeoGeocheat=OFF
set Commodorecheat=OFF
set MSXcheat=OFF
set TurboGraFX-16cheat=OFF
set TurboGraFX-CDcheat=OFF
goto:cheatcodeoptions
:DRIVECHANGE
set "drivetemp=%DRIVE%"
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Enter the drive letter (or Path) to save files for your SD Card
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 Current Setting: [%cyantext%]"%Drive:\=\x5c%"
echo.
echo Notes: * To continue using Current Settings
echo leave the selection blank and hit enter.
echo.
echo * You can drag and drop the Drive/folder onto this
echo window to save yourself having to manually type it.
echo.
echo * If you experience errors, try using default settings.
echo.
echo * If your SD Card is not already formatted as FAT32 (or if
echo you are unsure), it may save some time by using default settings.
echo.
echo * If your Wii's SD Card reader is broken, you can use a Hard Drive
echo formatted as FAT32 in place of an SD Card to complete most things
echo (SD notably required for Bootmii, NAND backup ^& SNEEK).
echo.
echo * If you don't have an SD Card or Hard Drive, you can launch apps
echo and install WADs over WiFi to your Wii from your PC. Just open
echo dols, elfs, or WADs with ModMii. Note that some apps may not work
echo properly or support all features if they require an SD or HDD.
echo.
echo EXAMPLES
echo.
echo L:
echo.
echo %%userprofile%%\Desktop\COPY_TO_SD
echo Note: %%userprofile%% shortcut doesn't work on Windows XP
echo.
echo ModMii\4.2U
echo Note: this creates ModMii\4.2U folders where this program is Saved
echo.
echo C:\Users\XFlak\Desktop\New Folder
echo.
echo.
echo D = Default Setting: COPY_TO_SD
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
setlocal ENABLEDELAYEDEXPANSION
set /p Drivetemp= Enter Selection Here:
::remove quotes
set "Drivetemp=!Drivetemp:"=!"
set "Drivetemp=!Drivetemp:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%DRIVETEMP%" EQU "M" goto:MENU
if /i "%DRIVETEMP%" EQU "B" goto:%BACKB4DRIVE%
if /i "%DRIVETEMP%" EQU "D" set DRIVETEMP=COPY_TO_SD
:doublecheck
set fixslash=
if "%DRIVETEMP%"=="" (echo You Have Entered an Incorrect Key) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:DRIVECHANGE)
if /i "%DRIVETEMP:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVETEMP:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVETEMP=%DRIVETEMP:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheck
:skip
::if second char is ":" check if drive exists
if /i "%DRIVETEMP:~1,1%" NEQ ":" goto:skipcheck
if exist "%DRIVETEMP:~0,2%" (goto:skipcheck) else (echo.)
echo "%DRIVETEMP:~0,2%" doesn't exist, please try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DRIVECHANGE
:skipcheck
::try making directory, and if fails, don't use this setting
if not exist "%DRIVETEMP%" mkdir "%DRIVETEMP%"
if not exist "%DRIVETEMP%" (echo You Have Entered an Incorrect Key or need Admin rights for this location) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:DRIVECHANGE)
::check for write access
if not exist "%DRIVETEMP%\test.txt" goto:skip
del "%DRIVETEMP%\test.txt">nul
if exist "%DRIVETEMP%\test.txt" (goto:WriteError) else (goto:donecheck)
:skip
echo test>"%DRIVETEMP%\test.txt"
if exist "%DRIVETEMP%\test.txt" goto:donecheck
:WriteError
echo You need Admin rights to use this location
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DRIVECHANGE
:donecheck
if exist "%DRIVETEMP%\test.txt" del "%DRIVETEMP%\test.txt">nul
set "DRIVE=%DRIVETEMP%"
set "REALDRIVE=%DRIVE%"
::autosave drive setting to settings.bat
support\sfk filter Support\settings.bat -!"Set*Drive=" -write -yes>nul
echo Set "Drive=%DRIVE%">>Support\settings.bat
if /i "%MENU1%" EQU "FC" goto:FileCleanup
if /i "%MENU1%" EQU "U" set BACKB4QUEUE=DRIVECHANGE
if /i "%MENU1%" EQU "U" goto:DOWNLOADQUEUE
if /i "%MENU1%" NEQ "W" goto:skip
if /i "%USBCONFIG%" EQU "USB" (set BACKB4QUEUE=DRIVEUCHANGE) else (set BACKB4QUEUE=DRIVECHANGE)
if /i "%USBCONFIG%" EQU "USB" (goto:DRIVEUCHANGE) else (goto:download)
:skip
::if /i "%AbstinenceWiz%" EQU "Y" (set B4SNKPAGE3=DRIVECHANGE) & (goto:snkpage3)
if /i "%MENU1%" EQU "RC" (set BACKB4QUEUE=DRIVECHANGE) & (goto:download)
if /i "%SNEEKTYPE%" EQU "U" (set BACKB4DRIVEU=DRIVECHANGE) & (goto:DRIVEUCHANGE)
if /i "%SNEEKTYPE%" EQU "UD" (set BACKB4DRIVEU=DRIVECHANGE) & (goto:DRIVEUCHANGE)
if /i "%SNEEKSELECT%" EQU "2" (set B4SNKPAGE3=DRIVECHANGE) & (goto:snkpage3)
if /i "%SNEEKSELECT%" EQU "3" (set B4SNKPAGE3=DRIVECHANGE) & (goto:snkpage3)
if /i "%SNEEKSELECT%" EQU "1" (set B4SNKCONFIRM=DRIVECHANGE) & (goto:SNKNANDCONFIRM)
if /i "%MENU1%" EQU "O" goto:Options
goto:%BACKB4DRIVE%
:DRIVEUCHANGE
set "driveUtemp=%DRIVEU%"
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the drive letter (or Path) to save files for your USB Hard Drive
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 Current Setting: [%cyantext%]"%DriveU:\=\x5c%"
echo.
echo Notes: * To continue using Current Settings
echo leave the selection blank and hit enter.
echo.
echo * You can drag and drop the Drive/folder onto this
echo window to save yourself having to manually type it.
echo.
echo * If you experience errors, try using default settings.
echo.
echo * If your Hard Drive is not already formatted properly (or if
echo you are unsure), it may save some time by using default settings.
echo.
echo * If you don't have an SD Card or Hard Drive, you can launch apps
echo and install WADs over WiFi to your Wii from your PC. Just open
echo dols, elfs, or WADs with ModMii. Note that some apps may not work
echo properly or support all features if they require an SD or HDD.
echo.
echo EXAMPLES
echo.
echo L:
echo.
echo %%userprofile%%\Desktop\COPY_TO_USB
echo Note: %%userprofile%% shortcut doesn't work on Windows XP
echo.
echo ModMii\4.2U
echo Note: this creates ModMii\4.2U folders where this program is Saved
echo.
echo C:\Users\XFlak\Desktop\New Folder
echo.
echo.
echo D = Default Setting: COPY_TO_USB
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
setlocal ENABLEDELAYEDEXPANSION
set /p DriveUtemp= Enter Selection Here:
::remove quotes from variable (if applicable)
set DriveUtemp=!DriveUtemp:"=!
set "DriveUtemp=!DriveUtemp:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%DRIVEUTEMP%" EQU "M" goto:MENU
if /i "%LoadWizSettings%" EQU "Y" set BACKB4DRIVEU=DRIVECHANGE
if /i "%DRIVEUTEMP%" EQU "B" goto:%BACKB4DRIVEU%
if /i "%DRIVEUTEMP%" EQU "D" set DRIVEUTEMP=COPY_TO_USB
:doublecheckU
set fixslash=
if "%DRIVEUTEMP%"=="" (echo You Have Entered an Incorrect Key) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:DRIVEUCHANGE)
if /i "%DRIVEUTEMP:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVEUTEMP:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVEUTEMP=%DRIVEUTEMP:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckU
::if second char is ":" check if drive exists
if /i "%DRIVEUTEMP:~1,1%" NEQ ":" goto:skipcheck
if exist "%DRIVEUTEMP:~0,2%" (goto:skipcheck) else (echo.)
echo "%DRIVEUTEMP:~0,2%" doesn't exist, please try again...
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DRIVEUCHANGE
:skipcheck
::try making directory, and if fails, don't use this setting
if not exist "%DRIVEUTEMP%" mkdir "%DRIVEUTEMP%"
if not exist "%DRIVEUTEMP%" (echo You Have Entered an Incorrect Key or need Admin rights for this location) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:DRIVEUCHANGE)
::check for write access
if not exist "%DRIVEUTEMP%\test.txt" goto:skip
del "%DRIVEUTEMP%\test.txt">nul
if exist "%DRIVEUTEMP%\test.txt" (goto:WriteError) else (goto:donecheck)
:skip
echo test>"%DRIVEUTEMP%\test.txt"
if exist "%DRIVEUTEMP%\test.txt" goto:donecheck
:WriteError
echo You need Admin rights to use this location
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DRIVEUCHANGE
:donecheck
if exist "%DRIVEUTEMP%\test.txt" del "%DRIVEUTEMP%\test.txt">nul
set "DRIVEU=%DRIVEUTEMP%"
::autosave drive setting to settings.bat
support\sfk filter Support\settings.bat -!"Set*DriveU=" -write -yes>nul
echo Set "DriveU=%DRIVEU%">>Support\settings.bat
if /i "%AbstinenceWiz%" EQU "Y" (set B4SNKPAGE3=DRIVEUCHANGE) & (goto:snkpage3)
if /i "%SNEEKSELECT%" EQU "1" set B4SNKCONFIRM=DRIVEUCHANGE
if /i "%SNEEKSELECT%" EQU "1" goto:SNKNANDCONFIRM
if /i "%SNEEKSELECT%" EQU "2" set B4SNKPAGE3=DRIVEUCHANGE
if /i "%SNEEKSELECT%" EQU "3" set B4SNKPAGE3=DRIVEUCHANGE
if /i "%SNEEKSELECT%" EQU "2" goto:snkpage3
if /i "%SNEEKSELECT%" EQU "3" goto:snkpage3
if /i "%SNEEKSELECT%" EQU "4" goto:SNKDISCEX2
::if /i "%MENU1%" EQU "U" goto:DOWNLOADQUEUE
::if /i "%WLAST%" EQU "Y" goto:DOWNLOAD
if /i "%MENU1%" NEQ "U" goto:skip
if /i "%USBCONFIG%" EQU "USB" set "DRIVE=%DRIVEU%"
if /i "%USBCONFIG%" EQU "USB" set BACKB4QUEUE=DRIVEUCHANGE
if /i "%USBCONFIG%" EQU "USB" goto:DownloadQueue
:skip
if /i "%USBCONFIG%" EQU "USB" set BACKB4QUEUE=DRIVEUCHANGE
if /i "%USBCONFIG%" EQU "USB" goto:Download
goto:Options
:UpdateModMii
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Current Version is %CurrentVersion%
echo.
echo Checking for updates...
echo.
::only if temp\currentversion.txt exists updater.bat will start updating when called or started, otherwise will just get info and return to loader ::echo %currentversion%>temp\currentversion.txt
if exist "temp\currentversion.txt" del "temp\currentversion.txt">nul
if exist "temp\currentversionInfo.txt" del "temp\currentversionInfo.txt">nul
::comment these for local Updatetemp.bat for testing... (updater.bat is renamed to Updatetemp.bat for legacy purposes)
if /i "%debug%" EQU "on" goto:skip
if exist Updatetemp.bat del Updatetemp.bat>nul
start /min /wait support\wget --no-check-certificate "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/updater.bat" -O Updatetemp.bat
if not exist Updatetemp.bat goto:altlink
::DELETE IF NULL
for %%R in (Updatetemp.bat) do if %%~zR lss 1 del "Updatetemp.bat">nul
:altlink
if not exist "Updatetemp.bat" start /min /wait support\wget --no-check-certificate "http://tiny.cc/modmiiupdater" -O Updatetemp.bat
if not exist Updatetemp.bat goto:updatefail
::DELETE IF NULL
for %%R in (Updatetemp.bat) do if %%~zR lss 1 del "Updatetemp.bat">nul
:skip
::Call to get new version info and changelogURL
if exist Updatetemp.bat (call Updatetemp.bat) else (goto:updatefail)
if "%newversion%"=="" goto:updatefail
if /i "%MENU1%" EQU "O" goto:skip
if %currentversion% GTR %newversion% (echo This version is newer than the latest public release) & (echo.) & (echo You got some crazy new beta shit!) & (del Updatetemp.bat>nul) & (@ping 127.0.0.1 -n 4 -w 1000> nul) & (goto:menu)
if %currentversion% EQU %newversion% (echo This version is up to date) & (del Updatetemp.bat>nul) & (@ping 127.0.0.1 -n 4 -w 1000> nul) & (goto:menu)
:skip
if %currentversion% GTR %newversion% (echo This version is newer than the latest public release) & (echo.) & (echo You got some crazy new beta shit!) & (del Updatetemp.bat>nul) & (@ping 127.0.0.1 -n 4 -w 1000> nul) & (goto:OPTIONS)
if %currentversion% EQU %newversion% (echo This version is up to date) & (del Updatetemp.bat>nul) & (@ping 127.0.0.1 -n 4 -w 1000> nul) & (goto:OPTIONS)
::if you made it this far, there's an update!
::openchangelog
start %changelogURL%
:updateconfirm
set updatenow=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%redtext%] An Update is available, would you like to update to v%newversion% now?
echo.
echo.
echo.
echo It is recommended you read the changelog that just opened in your browser.
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] Y = Yes - Perform Update Now! (RECOMMENDED)
echo.
echo N = No, do not update
echo.
echo.
echo.
set /p updatenow= Enter Selection Here:
if /i "%updatenow%" NEQ "N" goto:skip
if /i "%debug%" EQU "on" goto:debugskip
if exist Updatetemp.bat attrib -h Updatetemp.bat
if exist Updatetemp.bat del Updatetemp.bat>nul
:debugskip
if /i "%MENU1%" EQU "O" (goto:OPTIONS) else (goto:MENU)
:skip
if /i "%updatenow%" EQU "Y" goto:updatenow
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:updateconfirm
:updatenow
::launch updater with temp\currentversion.txt to do the update
::only if temp\currentversion.txt exists updater will do start updating when called or started
::updater runs in skin mode if temp\skin.txt detected
echo %currentversion%>temp\currentversion.txt
echo %currentversion%>temp\currentversionInfo.txt
if exist temp\skin.txt del temp\skin.txt>nul
start Updatetemp.bat
exit
:updatefail
echo Update check has failed, check your internet connection and firewall settings.
@ping 127.0.0.1 -n 4 -w 1000> nul
set currentversion=%currentversioncopy%
if /i "%MENU1%" EQU "O" (goto:OPTIONS) else (goto:menu)
::-------------------------------File Cleanup------------------------------------
:FileCleanup
cls
::---------------CMD LINE MODE-------------
if /i "%cmdlinemodeswitchoff%" EQU "Y" (set cmdlinemode=) & (set one=) & (set two=)
set cleanitems=0
if exist "%DRIVE%"\WAD SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\00000001 SET /a cleanitems=%cleanitems%+1
::if exist "%DRIVE%"\bootmii SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\00010008 SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\00010002 SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\00010001 SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\private\wii\title\aktn SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\DOP-Mii SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\MMM SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\homebrew_browser SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\WiiMod SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\WiiModLite SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\WiiExplorer SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\WiiXplorer SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\homebrew_browser SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\ARCmod06_Offline SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\ARCME SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\KoreanKii SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\MIOSPatcher SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\Priiloader SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\Priiloader_launcher SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\YAWMM SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\yawmME SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\HackMii_Installer SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\IOS236-v5-Mod SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\apps\SIP SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\*.dol SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\*.elf SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\*.wad SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\*.md5 SET /a cleanitems=%cleanitems%+1
if exist "%DRIVE%"\ModMii*.html SET /a cleanitems=%cleanitems%+1
::smash stack USA check
set "path2clean=%DRIVE%\private\wii\app\rsbe\st\st_080805_0933.bin"
set md5=aa93aab9bfdd25883bbd826a62645033
set nextgoto=cleancheck1
goto:markmatch
:cleancheck1
set SmashCheck=off
if /i "%match%" EQU "YES" set SmashCheck=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::PWNS USA
set "path2clean=%DRIVE%\private\wii\title\rlie\data.bin"
set md5=b94f40d57a4b5577eb2479f63cbe79df
set nextgoto=cleancheck2
goto:markmatch
:cleancheck2
set PWNSU=off
if /i "%match%" EQU "YES" set PWNSU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::PWNS JPN
set "path2clean=%DRIVE%\private\wii\title\rlij\data.bin"
set md5=1f7e42a30492d2fa116a2fe5ebc685d1
set nextgoto=cleancheck3
goto:markmatch
:cleancheck3
set PWNSJ=off
if /i "%match%" EQU "YES" set PWNSJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::PWNS EURO
set "path2clean=%DRIVE%\private\wii\title\rlip\data.bin"
set md5=a6b8f03f49baa471228dcd81d3fd623a
set nextgoto=cleancheck4
goto:markmatch
:cleancheck4
set PWNSE=off
if /i "%match%" EQU "YES" set PWNSE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT USA
set "path2clean=%DRIVE%\private\wii\title\rzde\data.bin"
set md5=02639bd145730269a98f69a4fd466225
set nextgoto=cleancheck5
goto:markmatch
:cleancheck5
set TWIU=off
if /i "%match%" EQU "YES" set TWIU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT JPN
set "path2clean=%DRIVE%\private\wii\title\rzdj\data.bin"
set md5=b51cd6a64bc911cc5c8e41ed5d9fd8ae
set nextgoto=cleancheck6
goto:markmatch
:cleancheck6
set TWIJ=off
if /i "%match%" EQU "YES" set TWIJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT EURO
set "path2clean=%DRIVE%\private\wii\title\rzdp\data.bin"
set md5=704bd625ea5b42d7ac06fc937af74d38
set nextgoto=cleancheck7
goto:markmatch
:cleancheck7
set TWIE=off
if /i "%match%" EQU "YES" set TWIE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::YUGI USA
set "path2clean=%DRIVE%\private\wii\title\ryoe\data.bin"
set md5=0319cb55ecb1caea34e4504aa56664ab
set nextgoto=cleancheck8
goto:markmatch
:cleancheck8
set YUGIU=off
if /i "%match%" EQU "YES" set YUGIU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::YUGI EURO
set "path2clean=%DRIVE%\private\wii\title\ryop\data.bin"
set md5=8e8aca85b1106932db5ec564ac5c9f0b
set nextgoto=cleancheck9
goto:markmatch
:cleancheck9
set YUGIE=off
if /i "%match%" EQU "YES" set YUGIE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::YUGI EURO 50hz
set "path2clean=%DRIVE%\private\wii\title\ryop\data.bin"
set md5=fd15710a20ec01d01324c18bf4bf3921
set nextgoto=cleancheck10
goto:markmatch
:cleancheck10
::set YUGIE=off
if /i "%match%" EQU "YES" set YUGIE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::YUGI JPN
set "path2clean=%DRIVE%\private\wii\title\ryoj\data.bin"
set md5=2f7dfe45a01d01cbf7672afd70b252b4
set nextgoto=cleancheck11
goto:markmatch
:cleancheck11
set YUGIJ=off
if /i "%match%" EQU "YES" set YUGIJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::smash stack JPN check
set "path2clean=%DRIVE%\private\wii\app\RSBJ\st\st_smashstackjp.bin"
set md5=9a23e5543c65ea2090c5b66a9839216a
set nextgoto=cleancheck12
goto:markmatch
:cleancheck12
set SmashJCheck=off
if /i "%match%" EQU "YES" set SmashJCheck=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Bathaxx USA
set "path2clean=%DRIVE%\private\wii\title\rlbe\data.bin"
set md5=5dac3152baabbc6ca17bedfd5b7350c9
set nextgoto=cleancheck13
goto:markmatch
:cleancheck13
set BathaxxU=off
if /i "%match%" EQU "YES" set BathaxxU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Bathaxx JPN
set "path2clean=%DRIVE%\private\wii\title\rlbj\data.bin"
set md5=8ce86646c463565798dda77ea93118eb
set nextgoto=cleancheck14
goto:markmatch
:cleancheck14
set BathaxxJ=off
if /i "%match%" EQU "YES" set BathaxxJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Bathaxx EURO
set "path2clean=%DRIVE%\private\wii\title\rlbp\data.bin"
set md5=1f44f39d7aad36c7c93a7592e52fa217
set nextgoto=cleancheck15
goto:markmatch
:cleancheck15
set BathaxxE=off
if /i "%match%" EQU "YES" set BathaxxE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::ROTJ USA
set "path2clean=%DRIVE%\private\wii\title\rlge\data.bin"
set md5=448a3e6bfb4b6d9fafd64c45575f9cb4
set nextgoto=cleancheck16
goto:markmatch
:cleancheck16
set ROTJU=off
if /i "%match%" EQU "YES" set ROTJU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::ROTJ JPN
set "path2clean=%DRIVE%\private\wii\title\rlgj\data.bin"
set md5=cd7037de03166d12caccffba972ef18c
set nextgoto=cleancheck17
goto:markmatch
:cleancheck17
set ROTJJ=off
if /i "%match%" EQU "YES" set ROTJJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::ROTJ EURO
set "path2clean=%DRIVE%\private\wii\title\rlgp\data.bin"
set md5=6e225b61b74bd8529374086e476487d3
set nextgoto=cleancheck18
goto:markmatch
:cleancheck18
set ROTJE=off
if /i "%match%" EQU "YES" set ROTJE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::smash stack PAL check
set "path2clean=%DRIVE%\private\wii\app\RSBP\st\st_smashStackPK.bin"
set md5=5ce0563bbdd394d8fd3947a413d234ab
set nextgoto=cleancheck19
goto:markmatch
:cleancheck19
set SmashPCheck=off
if /i "%match%" EQU "YES" set SmashPCheck=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::smash stack PAL - No Save - check
set "path2clean=%DRIVE%\private\wii\app\RSBP\st\_st_smashStackPK_noSave.bin"
set md5=208e1505a426aaa4b341921f271b2b12
set nextgoto=cleancheck20
goto:markmatch
:cleancheck20
set SmashP2Check=off
if /i "%match%" EQU "YES" set SmashP2Check=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::smash stack KOR check
set "path2clean=%DRIVE%\private\wii\app\RSBK\st\st_smashStackPK.bin"
set md5=5ce0563bbdd394d8fd3947a413d234ab
set nextgoto=cleancheck21
goto:markmatch
:cleancheck21
set SmashKCheck=off
if /i "%match%" EQU "YES" set SmashKCheck=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::smash stack KOR - No Save - check
set "path2clean=%DRIVE%\private\wii\app\RSBK\st\_st_smashStackPK_noSave.bin"
set md5=208e1505a426aaa4b341921f271b2b12
set nextgoto=cleancheck22
goto:markmatch
:cleancheck22
set SmashK2Check=off
if /i "%match%" EQU "YES" set SmashK2Check=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Eri HaKawai USA
set "path2clean=%DRIVE%\private\wii\title\rt4e\data.bin"
set md5=4b62b5c6e00ee8943fec265c5d53ad19
set nextgoto=cleancheck23
goto:markmatch
:cleancheck23
set TOSU=off
if /i "%match%" EQU "YES" set TOSU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Eri HaKawai PAL
set "path2clean=%DRIVE%\private\wii\title\rt4p\data.bin"
set md5=08d01800a4703ec6349c3a8d454bf8e1
set nextgoto=cleancheck24
goto:markmatch
:cleancheck24
set TOSE=off
if /i "%match%" EQU "YES" set TOSE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::Eri HaKawai JPN
set "path2clean=%DRIVE%\private\wii\title\rt4j\data.bin"
set md5=7884370e1b8960ed09ed61395007affd
set nextgoto=cleancheck25
goto:markmatch
:cleancheck25
set TOSJ=off
if /i "%match%" EQU "YES" set TOSJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT2 USA
set "path2clean=%DRIVE%\private\wii\title\rzde\data.bin"
set md5=225c218815eda839b2fa03729ebe067b
set nextgoto=cleancheck26
goto:markmatch
:cleancheck26
::TWIU already set to on or off when checking for v1
::set TWIU=off
if /i "%match%" EQU "YES" set TWIU=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT2 JPN
set "path2clean=%DRIVE%\private\wii\title\rzdj\data.bin"
set md5=abae916201ba444c0da951627e3071ce
set nextgoto=cleancheck27
goto:markmatch
:cleancheck27
::TWIJ already set to on or off when checking for v1
::set TWIJ=off
if /i "%match%" EQU "YES" set TWIJ=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::TWILIGHT2 EURO
set "path2clean=%DRIVE%\private\wii\title\rzdp\data.bin"
set md5=7d0ac865218738364da4c67466ed59fb
set nextgoto=cleancheck28
goto:markmatch
:cleancheck28
::TWIE already set to on or off when checking for v1
::set TWIE=off
if /i "%match%" EQU "YES" set TWIE=on
if /i "%match%" EQU "YES" SET /a cleanitems=%cleanitems%+1
::--------------------check for apps to update------------------
set updateitems=0
if exist "%DRIVE%\apps\usbloader_gx\" (SET /a updateitems=%updateitems%+1) & (set usbgx=*)
if exist "%DRIVE%\apps\Nintendont\" (SET /a updateitems=%updateitems%+1) & (set Nintendont=*)
if exist "%DRIVE%apps\usbloader_cfg\" (SET /a updateitems=%updateitems%+1) & (set usbfolder=*)
if exist "%DRIVE%\apps\wiiflow\" (SET /a updateitems=%updateitems%+1) & (set FLOW=*)
if exist "%DRIVE%\apps\wiimc-ss\" (SET /a updateitems=%updateitems%+1) & (set WIIMC=*)
if exist "%DRIVE%\apps\fceugx\" (SET /a updateitems=%updateitems%+1) & (set fceugx=*)
if exist "%DRIVE%\apps\snes9xgx\" (SET /a updateitems=%updateitems%+1) & (set snes9xgx=*)
if exist "%DRIVE%\apps\vbagx\" (SET /a updateitems=%updateitems%+1) & (set vbagx=*)
if exist "%DRIVE%\apps\SaveGame_Manager_GX\" (SET /a updateitems=%updateitems%+1) & (set SGM=*)
if exist "%DRIVE%\apps\wii64\" (SET /a updateitems=%updateitems%+1) & (set WII64=*)
if exist "%DRIVE%\apps\not64\" (SET /a updateitems=%updateitems%+1) & (set Not64=*)
if exist "%DRIVE%\apps\WiiSXRX\" (SET /a updateitems=%updateitems%+1) & (set WIISX=*)
if exist "%DRIVE%\txtcodes\" (SET /a updateitems=%updateitems%+1) & (set CheatZip=*)
::these should only be updated if not also doing filecleanup
if exist "%DRIVE%\apps\wiixplorer\" (SET /a updateitems=%updateitems%+1) & (set WIIX=*)
if exist "%DRIVE%\apps\homebrew_browser\" (SET /a updateitems=%updateitems%+1) & (set HBB=*)
if exist "%DRIVE%\apps\Priiloader\" (SET /a updateitems=%updateitems%+1) & (set Pri=*)
::PC Apps... disabled for now
goto:skip
:::::::::
set "DrivePC=%Drive%"
if /i "%PCSAVE%" EQU "Local" set DrivePC=Program Files
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" set DrivePC=Program Files
:skip
::if exist "%DrivePC%\OpenShopChannel\" (SET /a updateitems=%updateitems%+1) & (set OSC=*)
::if exist "%DrivePC%\Dolphin-x64\" (SET /a updateitems=%updateitems%+1) & (set Dolphin=*)
goto:nextpage
::----mark matches-----
:markmatch
set match=
if exist "%path2clean%" (goto:checkexisting) else (goto:nocheckexisting)
:checkexisting
set match=yes
::assume match, if its not, it will change to 'no' further below
support\sfk md5 -quiet -verify %md5% "%path2clean%"
if errorlevel 1 set match=no
:nocheckexisting
goto:%nextgoto%
:nextpage
if /i "%cleanitems%" NEQ "0" goto:FileCleanup2
if /i "%updateitems%" NEQ "0" goto:FileCleanup2
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo FILE CLEANUP and APP UPDATER
echo.
echo.
echo No Files to Update or to Clean Found in "%DRIVE%"
echo.
echo.
echo.
echo Returning to Main Menu...
echo.
@ping 127.0.0.1 -n 4 -w 1000> nul
goto:MENU
:FileCleanup2
cls
set clean=
echo ModMii v%currentversion%
echo by XFlak
echo.
echo FILE CLEANUP and APP UPDATER
echo.
echo Inspected files saved to: "%DRIVE%"
echo.
if /i "%updateitems%" EQU "0" (echo No Apps to Update Found) & (echo.) & (goto:noupdates)
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Update Check the following detected Auto-Updating Downloads?
echo.
::if /i "%Dolphin%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Dolphin (Wii Emulator)
if /i "%CheatZip%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Cheat Codes (txtcodes)
if /i "%fceugx%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]FCEUGX (NES Emulator)
::this should only be updated if not also doing filecleanup
if /i "%HBB%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Homebrew Browser (*won't update if also being cleaned)
if /i "%nintendont%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Nintendont
if /i "%Not64%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Not64 (N64 Emulator)
::if /i "%OSC%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Open Shop Channel
::this should only be updated if not also doing filecleanup
if /i "%Pri%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Priiloader (*won't update if also being cleaned)
if /i "%SGM%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]SaveGame Manager GX
if /i "%snes9xgx%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]SNES9xGX (SNES Emulator)
if /i "%usbgx%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]USB Loader GX
if /i "%vbagx%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Visual Boy Advance GX (GB/GBA Emulator)
if /i "%WII64%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]Wii64 (N64 Emulator)
if /i "%FLOW%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]WiiFlow
if /i "%WiiMC%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]WiiMC-SS (Media Player)
if /i "%WIISX%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]WiiSXRX (Playstation 1 Emulator)
::this should only be updated if not also doing filecleanup
if /i "%WIIX%" EQU "*" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] \x2b [def]WiiXplorer (*won't update if also being cleaned)
echo.
:noupdates
if /i "%cleanitems%" EQU "0" (echo No Files to Clean Found) & (echo.) & (goto:noFileCleanup)
support\sfk echo -spat \x20 \x20 \x20 [%redtext%] File Cleanup; delete the following items?
echo.
echo After you are finished modding your Wii you can delete certain files to free
echo up space and ensure no one can access potentially dangerous apps on your Wii.
echo.
echo Note: Instead of deleting apps, you can move them to a Locked Folder
echo in the HBC (downloadable via ModMii's Download Page 2).
echo.
if exist "%DRIVE%"\WAD support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]WAD Folder
if exist "%DRIVE%"\00000001 support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]00000001 Folder
if exist "%DRIVE%"\00010008 support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]00010008 Folder
if exist "%DRIVE%"\00010002 support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]00010002 Folder
if exist "%DRIVE%"\00010001 support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]00010001 Folder
if exist "%DRIVE%"\private\wii\title\aktn support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Bannerbomb
if /i "%SmashCheck%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (USA)
if /i "%SmashJCheck%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (JPN)
if /i "%SmashPCheck%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (EURO)
if /i "%SmashP2Check%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (EURO) - No Save version
if /i "%SmashKCheck%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (KOR)
if /i "%SmashK2Check%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Smash Stack (KOR) - No Save version
if /i "%PWNSU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Indiana Pwns (USA)
if /i "%PWNSE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Indiana Pwns (EURO)
if /i "%PWNSJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Indiana Pwns (JPN)
if /i "%BathaxxU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Bathaxx (USA)
if /i "%BathaxxE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Bathaxx (EURO)
if /i "%BathaxxJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Bathaxx (JPN)
if /i "%ROTJU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Return of the Jodi (USA)
if /i "%ROTJE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Return of the Jodi (EURO)
if /i "%ROTJJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Return of the Jodi (JPN)
if /i "%TOSU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Eri HaKawai (USA)
if /i "%TOSE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Eri HaKawai (EURO)
if /i "%TOSJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Eri HaKawai (JPN)
if /i "%TWIU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Twilight Hack (USA)
if /i "%TWIE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Twilight Hack (EURO)
if /i "%TWIJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]Twilight Hack (JPN)
if /i "%YUGIU%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]YU-GI-OWNED (USA)
if /i "%YUGIE%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]YU-GI-OWNED (EURO)
if /i "%YUGIJ%" EQU "on" support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]YU-GI-OWNED (JPN)
if exist "%DRIVE%"\apps\DOP-Mii support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\DOP-Mii
if exist "%DRIVE%"\apps\MMM support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\MMM
if exist "%DRIVE%"\apps\WiiMod support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\WiiMod
if exist "%DRIVE%"\apps\WiiModLite support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\WiiModLite
if exist "%DRIVE%"\apps\ARCmod06_Offline support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\ARCmod06_Offline
if exist "%DRIVE%"\apps\ARCME support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\ARCME
if exist "%DRIVE%"\apps\KoreanKii support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\KoreanKii
if exist "%DRIVE%"\apps\MIOSPatcher support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\MIOSPatcher
if exist "%DRIVE%"\apps\Priiloader support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\Priiloader
if exist "%DRIVE%"\apps\Priiloader_launcher support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\Priiloader_launcher
if exist "%DRIVE%"\apps\YAWMM support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\YAWMM
if exist "%DRIVE%"\apps\yawmME support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\yawmME
if exist "%DRIVE%"\apps\HackMii_Installer support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\HackMii_Installer
if exist "%DRIVE%"\apps\homebrew_browser support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\homebrew_browser
if exist "%DRIVE%"\apps\IOS236-v5-Mod support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\IOS236-v5-Mod
if exist "%DRIVE%"\apps\SIP support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\SIP
if exist "%DRIVE%"\apps\WiiExplorer support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\WiiExplorer
if exist "%DRIVE%"\apps\WiiXplorer support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]apps\WiiXplorer
if exist "%DRIVE%"\*.dol support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]dol's from root of device
if exist "%DRIVE%"\*.elf support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]elf's from root of device
if exist "%DRIVE%"\*.wad support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]wad's from root of device
if exist "%DRIVE%"\*.md5 support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]md5's from root of device
if exist "%DRIVE%"\ModMii*.html support\sfk echo -spat \x20 \x20 \x20 [%redtext%] - [def]ModMii html guides from root of device
echo.
echo Note: All the above files, with the exception of custom WADs,
echo can be retrieved again later using ModMii or other sources
if exist "%DRIVE%"\bootmii echo.
if exist "%DRIVE%"\bootmii echo * bootmii folder will be renamed bootmii_off during cleanup; To access
if exist "%DRIVE%"\bootmii echo bootmii in the future make sure it is named "bootmii" and on your SD Card
:noFileCleanup
echo.
if /i "%updateitems%" NEQ "0" support\sfk echo -spat \x20 \x20 \x20 [%greentext%] U = Update Check; [def]grab latest version of detected Auto-Updating Downloads
if /i "%cleanitems%" EQU "0" goto:skip
support\sfk echo -spat \x20 \x20 \x20 [%redtext%]FC = File Cleanup; [def]Remove un-needed files after Modding
if /i "%updateitems%" NEQ "0" echo B = Both; Update Check and File Cleanup
:skip
echo M = Main Menu
echo.
set /p clean= Enter Selection Here:
if /i "%clean%" EQU "M" goto:MENU
if /i "%cleanitems%" EQU "0" goto:skip
if /i "%clean%" EQU "FC" goto:cleannow
:skip
if /i "%updateitems%" EQU "0" goto:skip
if /i "%clean%" EQU "U" (set AUSKIP=OFF) & (set BACKB4QUEUE=FileCleanup2) & (goto:DLCOUNT)
if /i "%cleanitems%" EQU "0" goto:skip
if /i "%clean%" NEQ "B" goto:skip
::both
set AUSKIP=OFF
if exist "%DRIVE%\apps\wiixplorer\" (SET /a updateitems=%updateitems%-1) & (set WIIX=)
if exist "%DRIVE%\apps\homebrew_browser\" (SET /a updateitems=%updateitems%-1) & (set HBB=)
if exist "%DRIVE%\apps\Priiloader\" (SET /a updateitems=%updateitems%-1) & (set Pri=)
if /i "%updateitems%" EQU "0" set clean=FC
goto:cleannow
:skip
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FileCleanup2
:cleannow
set clean2=
::B, both clean and update check
echo.
if /i "%clean%" EQU "B" echo Note: Update Checks will be done after File Cleanup operations
:skip
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 Are you sure you want to [%redtext%]permanently delete File Cleanup files? (Y^/N)
echo.
set /p clean2= Enter Selection Here:
if /i "%clean2%" EQU "Y" goto:cleannow3
if /i "%clean2%" EQU "N" goto:MENU
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FileCleanup2
:cleannow3
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo CLEANING FILES...
echo.
if exist "%DRIVE%"\ModMii*.html del "%DRIVE%"\ModMii*.html> nul
if exist "%DRIVE%"\*.dol del "%DRIVE%"\*.dol> nul
if exist "%DRIVE%"\*.elf del "%DRIVE%"\*.elf> nul
if exist "%DRIVE%"\*.wad del "%DRIVE%"\*.wad> nul
if exist "%DRIVE%"\*.md5 del "%DRIVE%"\*.md5> nul
if exist "%DRIVE%"\WAD rd /s /q "%DRIVE%"\WAD> nul
if exist "%DRIVE%"\00000001 rd /s /q "%DRIVE%"\00000001> nul
if exist "%DRIVE%"\00010008 rd /s /q "%DRIVE%"\00010008> nul
if exist "%DRIVE%"\00010002 rd /s /q "%DRIVE%"\00010002> nul
if exist "%DRIVE%"\00010001 rd /s /q "%DRIVE%"\00010001> nul
if exist "%DRIVE%"\private\wii\title\aktn rd /s /q "%DRIVE%"\private\wii\title\aktn> nul
if exist "%DRIVE%"\apps\DOP-Mii rd /s /q "%DRIVE%"\apps\DOP-Mii> nul
if exist "%DRIVE%"\apps\MMM rd /s /q "%DRIVE%"\apps\MMM> nul
if exist "%DRIVE%"\apps\WiiMod rd /s /q "%DRIVE%"\apps\WiiMod> nul
if exist "%DRIVE%"\apps\WiiModLite rd /s /q "%DRIVE%"\apps\WiiModLite> nul
if exist "%DRIVE%"\apps\ARCmod06_Offline rd /s /q "%DRIVE%"\apps\ARCmod06_Offline> nul
if exist "%DRIVE%"\apps\ARCME rd /s /q "%DRIVE%"\apps\ARCME> nul
if exist "%DRIVE%"\apps\KoreanKii rd /s /q "%DRIVE%"\apps\KoreanKii> nul
if exist "%DRIVE%"\apps\MIOSPatcher rd /s /q "%DRIVE%"\apps\MIOSPatcher> nul
if exist "%DRIVE%"\apps\Priiloader rd /s /q "%DRIVE%"\apps\Priiloader> nul
if exist "%DRIVE%"\apps\Priiloader_launcher rd /s /q "%DRIVE%"\apps\Priiloader_launcher> nul
if exist "%DRIVE%"\apps\YAWMM rd /s /q "%DRIVE%"\apps\YAWMM> nul
if exist "%DRIVE%"\apps\yawmME rd /s /q "%DRIVE%"\apps\yawmME> nul
if exist "%DRIVE%"\apps\HackMii_Installer rd /s /q "%DRIVE%"\apps\HackMii_Installer> nul
if exist "%DRIVE%"\apps\homebrew_browser rd /s /q "%DRIVE%"\apps\homebrew_browser> nul
if exist "%DRIVE%"\apps\IOS236-v5-Mod rd /s /q "%DRIVE%"\apps\IOS236-v5-Mod> nul
if exist "%DRIVE%"\apps\SIP rd /s /q "%DRIVE%"\apps\SIP> nul
if exist "%DRIVE%"\apps\WiiExplorer rd /s /q "%DRIVE%"\apps\WiiExplorer> nul
if exist "%DRIVE%"\apps\WiiXplorer rd /s /q "%DRIVE%"\apps\WiiXplorer> nul
if exist "%DRIVE%"\private\*.zip del "%DRIVE%"\private\*.zip> nul
if exist "%DRIVE%"\private\wii\title\RYOP-50hz rd /s /q "%DRIVE%"\private\wii\title\RYOP-50hz> nul
if exist "%DRIVE%\bootmii" move /y "%DRIVE%\bootmii" "%DRIVE%\bootmii_off"> nul
::advanced deletions
if /i "%SmashCheck%" EQU "on" del "%DRIVE%"\private\wii\app\rsbe\st\st_080805_0933.bin> nul
if /i "%SmashJCheck%" EQU "on" del "%DRIVE%"\private\wii\app\RSBJ\st\st_smashstackjp.bin> nul
if /i "%SmashPCheck%" EQU "on" del "%DRIVE%"\private\wii\app\RSBP\st\st_smashStackPK.bin> nul
if /i "%SmashP2Check%" EQU "on" del "%DRIVE%"\private\wii\app\RSBP\st\_st_smashStackPK_noSave.bin> nul
if /i "%SmashKCheck%" EQU "on" del "%DRIVE%"\private\wii\app\RSBK\st\st_smashStackPK.bin> nul
if /i "%SmashK2Check%" EQU "on" del "%DRIVE%"\private\wii\app\RSBK\st\_st_smashStackPK_noSave.bin> nul
if /i "%PWNSU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlie> nul
if /i "%PWNSJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlij> nul
if /i "%PWNSE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlip> nul
if /i "%BathaxxU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlbe> nul
if /i "%BathaxxJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlbj> nul
if /i "%BathaxxE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlbp> nul
if /i "%ROTJU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlge> nul
if /i "%ROTJJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlgj> nul
if /i "%ROTJE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rlgp> nul
if /i "%TOSU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rt4e> nul
if /i "%TOSE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rt4p> nul
if /i "%TOSJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rt4j> nul
if /i "%TWIU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rzde> nul
if /i "%TWIE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rzdp> nul
if /i "%TWIJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\rzdj> nul
if /i "%YUGIU%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\ryoe> nul
if /i "%YUGIE%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\ryop> nul
if /i "%YUGIJ%" EQU "on" rd /s /q "%DRIVE%"\private\wii\title\ryoj> nul
echo FILES CLEANED
echo.
echo.
@ping 127.0.0.1 -n 3 -w 1000> nul
if /i "%clean%" EQU "B" (set BACKB4QUEUE=FileCleanup2) & (goto:DLCOUNT)
goto:MENU
::...................................Wizard Page1 - Virgin?...............................
:RCPAGE1
set REGIONCHANGE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Are you sure you want to Region Change your Wii?
echo.
echo.
echo Important Notes:
echo ----------------
echo.
echo * Region Changing is not necessary to play other region games.
echo For example, you can play JPN games on a softmodded US Wii without
echo region changing.
echo.
echo * An alternative to region changing is to use SNEEK\UNEEK to emulate a
echo different region System Menu.
echo.
echo.
echo If you still want to region change your Wii, read the following
echo warnings before continuing:
echo.
echo.
echo Warnings:
echo ---------
echo.
echo * If you use the Wii Shopping Channel, you must start the channel and
echo delete your account before starting this guide on your Wii.
echo If you don't the Wii Shop Channel will error.
echo.
echo * ModMii's Region Change guide assumes your Wii has already been softmodded
echo and SD Card ^(or USB^) properly formatted by following the ModMii Wizard
echo or SysCheck Updater Wizard. If this is not the case please do so before
echo going any further. Do not attempt to region change your Wii without
echo either an SD card or USB.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p REGIONCHANGE= Enter Selection Here:
if /i "%REGIONCHANGE%" EQU "B" goto:MENU
if /i "%REGIONCHANGE%" EQU "M" goto:MENU
if /i "%REGIONCHANGE%" EQU "N" goto:MENU
if /i "%REGIONCHANGE%" EQU "Y" goto:WPAGE3
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:RCPAGE1
::--------------------Wizard Settings Detected----------------
:LoadWizardSettings
set LoadWizSettings=
if not exist Wizard_Settings.bat goto:WPAGE1
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] Wizard Saved Settings Detected!
echo.
echo.
echo Would you like to load the Wizard's Saved Settings now?
echo.
echo.
echo.
echo Note: You will be able to view and confirm the loaded settings
echo before starting your download
echo.
echo.
echo.
echo Y = Yes, Load Wizard_Settings.bat
echo N = No, Continue with the Wizard
echo.
echo D = Delete Wizard_Settings.bat to stop seeing this page
echo in the future then continue with the Wizard
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p LoadWizSettings= Enter Selection Here:
:LoadWizardSettings2
if /i "%LoadWizSettings%" EQU "B" goto:MENU
if /i "%LoadWizSettings%" EQU "M" goto:MENU
if /i "%LoadWizSettings%" NEQ "Y" goto:skip
if /i "%one%" NEQ "WL" call Wizard_Settings.bat
if /i "%one%" EQU "WL" call "%cmdinput%"
if /i "%one%" EQU "WL" (set MENU1=W) & (set one=)
IF "%USBGUIDE%"=="" set USBGUIDE=n
if /i "%ThemeSelection%" EQU "Y" set ThemeSelection=r
if /i "%Mii%" EQU "Y" set MIIQ=Y
if /i "%pri%" EQU "Y" set PRIQ=Y
if /i "%H5%" EQU "Y" set RECCIOS=Y
if /i "%HM%" EQU "Y" set HMInstaller=Y
goto:WPAGELAST
:skip
if /i "%LoadWizSettings%" EQU "D" del Wizard_Settings.bat>nul
if /i "%LoadWizSettings%" EQU "D" goto:WPAGE1
if /i "%LoadWizSettings%" EQU "N" goto:WPAGE1
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:LoadWizardSettings
::...................................Wizard Page1 - Virgin?...............................
:WPAGE1
set VIRGIN=
set Advanced=
set HMInstaller=
set RECCIOS=
set PRIQ=
set ThemeSelection=N
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Is this your first time softmodding your Wii?
echo --
echo OR
echo --
echo Would you like to update ALL your existing softmods (aka re-hack your Wii)?
echo.
echo.
echo.
echo Note: Only answer No if you know specifically what you want to update.
echo.
echo Alternatively, you can check if there are any recommended changes to the
echo mods already installed on your Wii using ModMii's SysCheck Updater Wizard.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p VIRGIN= Enter Selection Here:
if exist Wizard_Settings.bat goto:backtoloadwiz
if /i "%VIRGIN%" EQU "B" goto:MENU
:backtoloadwiz
if /i "%VIRGIN%" EQU "B" goto:LoadWizardSettings
if /i "%VIRGIN%" EQU "M" goto:MENU
if /i "%VIRGIN%" EQU "Y" goto:WPAGE2
if /i "%VIRGIN%" EQU "N" goto:WPAGE2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE1
::...................................Wizard Page2 - Current SystemMenu...............................
:WPAGE2
set FIRMSTART=
set backb4HACKMIISOLUTION=WPAGE2
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%MENU1%" EQU "H" (echo HackMii Solutions) & (echo.)
if /i "%AbstinenceWiz%" NEQ "Y" goto:notabstinence
echo Abstinence Wizard
echo.
echo.
echo This wizard allows you to enjoy many of the benefits of a softmodded Wii
echo without installing any unofficial content (ie. should not void warranty)
echo.
echo An SD CARD is REQUIRED for this wizard to work.
echo.
echo.
:notabstinence
echo What is your current System Menu Version?
echo.
echo.
echo Enter "Help" for an instructional video on checking your System Menu Version.
echo.
echo Note: to check this, turn on your wii, click the Wii button in the
echo bottom left of the main system menu, click Wii Settings,
echo then you should see the System Menu in the top right of the screen
echo (ie. 4.2U, 4.1J, 3.2E, etc.)
echo.
echo.
echo.
echo.
echo.
echo 4.3 = 4.3
echo 4.2 = 4.2
echo 4.1 = 4.1
echo 4.0 = 4.0
echo 3.X = 3.0-3.5
echo O = Other (under 2.2)
echo.
echo.
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p FIRMSTART= Enter Selection Here:
if /i "%FIRMSTART%" EQU "M" goto:MENU
if /i "%FIRMSTART%" NEQ "Help" goto:nohelp
start https://www.youtube.com/embed/1Z2MtFcllTY
goto:WPAGE2
:nohelp
if /i "%FIRMSTART%" EQU "3.x" set FIRMSTART=3.X
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceWiz
if /i "%FIRMSTART%" EQU "4.3" goto:WPAGE3
if /i "%FIRMSTART%" EQU "O" goto:WPAGE3
if /i "%FIRMSTART%" EQU "4.2" goto:NEEKrevSelect
if /i "%FIRMSTART%" EQU "4.1" goto:NEEKrevSelect
if /i "%FIRMSTART%" EQU "4.0" goto:NEEKrevSelect
if /i "%FIRMSTART%" EQU "3.X" goto:NEEKrevSelect
:NotAbstinenceWiz
if /i "%FIRMSTART%" EQU "4.3" goto:WPAGE3
if /i "%FIRMSTART%" EQU "4.2" goto:WPAGE3
if /i "%FIRMSTART%" EQU "4.1" goto:WPAGE3
if /i "%FIRMSTART%" EQU "4.0" goto:WPAGE3
if /i "%FIRMSTART%" EQU "3.X" goto:WPAGE3
if /i "%FIRMSTART%" EQU "O" goto:WPAGE3
if /i "%FIRMSTART%" NEQ "B" goto:incorrectkey
if /i "%MENU1%" EQU "H" goto:MENU
if /i "%AbstinenceWiz%" EQU "Y" goto:MENU
goto:WPAGE1
:incorrectkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE2
::...................................Wizard Page3 - REGION...............................
:WPAGE3
if /i "%FIRMSTART%" EQU "4.3" goto:WPAGE3hard
if /i "%FIRMSTART%" EQU "o" goto:WPAGE3hard
if /i "%MENU1%" EQU "H" goto:HACKMIISOLUTION
:WPAGE3hard
set REGION=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%MENU1%" EQU "RC" (echo What Region would you like to change to?) & (goto:skiptext)
echo What is your Region?
echo.
echo.
echo Enter "Help" for an instructional video on checking your System Menu.
echo.
echo Note: to check this, turn on your wii, click the Wii button in the
echo bottom left of the main system menu, click Wii Settings,
echo then you should see the System Menu in the top right of the screen
echo (ie. 4.2U, 4.1J, 3.2E, etc.)
echo.
echo Note: If your Wii was Region Changed choose the region you are currently on
:skiptext
echo.
echo.
echo U = USA
echo E = Euro (PAL)
echo J = JPN
echo K = Korean
echo.
echo.
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
set /p REGION= Enter Selection Here:
if /i "%REGION%" EQU "M" goto:MENU
if /i "%REGION%" EQU "u" set REGION=U
if /i "%REGION%" EQU "e" set REGION=E
if /i "%REGION%" EQU "j" set REGION=J
if /i "%REGION%" EQU "k" set REGION=K
if /i "%MENU1%" NEQ "RC" goto:notRC
if /i "%REGION%" EQU "U" goto:WPAGE4
if /i "%REGION%" EQU "E" goto:WPAGE4
if /i "%REGION%" EQU "K" goto:WPAGE4
if /i "%REGION%" EQU "J" goto:WPAGE4
if /i "%REGION%" EQU "B" goto:RCPAGE1
goto:badkey
:notRC
::download page redirect for Wilbrand
if /i "%MENU1%" EQU "1" goto:Wilbrand
if /i "%MENU1%" EQU "2" goto:Wilbrand
if /i "%MENU1%" EQU "3" goto:Wilbrand
if /i "%MENU1%" EQU "4" goto:Wilbrand
if /i "%MENU1%" EQU "A" goto:Wilbrand
goto:notWilbrand
:Wilbrand
if /i "%REGION%" EQU "B" goto:macaddress
if /i "%REGION%" EQU "U" goto:DOWNLOADQUEUE
if /i "%REGION%" EQU "E" goto:DOWNLOADQUEUE
if /i "%REGION%" EQU "K" goto:DOWNLOADQUEUE
if /i "%REGION%" EQU "J" goto:DOWNLOADQUEUE
:notWilbrand
if /i "%REGION%" EQU "U" goto:WPAGE3C
if /i "%REGION%" EQU "E" goto:WPAGE3C
if /i "%REGION%" EQU "K" goto:WPAGE3C
if /i "%REGION%" EQU "J" goto:WPAGE3C
if /i "%REGION%" EQU "B" goto:WPAGE2
if /i "%REGION%" NEQ "Help" goto:nohelp
start https://www.youtube.com/embed/1Z2MtFcllTY
goto:WPAGE3
:nohelp
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE3
::...................................Wizard Page3C - Exploit...............................
:WPAGE3C
SET EXPLOIT=default
set exploitselection=
if /i "%VIRGIN%" EQU "N" goto:WPAGE3D
if /i "%FIRMSTART%" EQU "4.3" goto:WPAGE3Cnext
if /i "%FIRMSTART%" EQU "o" goto:WPAGE3Cnext
goto:WPAGE4
::Only virgin 4.3 U/E/J wii's or <2.2 U/E/J Wii's will make it this far
:WPAGE3Cnext
set backb4HACKMIISOLUTION=WPAGE3c
set exploitselection=yes
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the Exploit you would like to use on your Wii.
echo.
echo.
echo X = str2hax: no disc or SD card needed, but requires WiFi on Wii
if /i "%FIRMSTART%" EQU "o" goto:skipbomb
echo W = Wilbrand\LetterBomb: no disc needed, but requires SD card
echo.
echo.
echo The exploits below require you own one of the following games:
:skipbomb
echo.
echo S = Super Smash Brothers Brawl
if /i "%REGION%" NEQ "K" echo L = LEGO Indiana Jones
if /i "%REGION%" NEQ "K" echo LB = LEGO Batman
if /i "%REGION%" NEQ "K" echo LS = LEGO Star Wars
if /i "%REGION%" NEQ "K" echo Y = Yu-Gi-Oh! 5D's
if /i "%REGION%" NEQ "K" echo TOS = Tales of Symphonia: Dawn of the New World
if /i "%FIRMSTART%" EQU "o" echo T = Twilight Princess: The Legend of Zelda
if /i "%FIRMSTART%" EQU "o" echo.
echo ? = If you're not sure, download all of the above and decide later
echo.
echo.
echo.
if /i "%FIRMSTART%" NEQ "o" goto:skipOmsg
support\sfk echo -spat \x20 \x20[%redtext%] Important Notes:
echo.
echo Alternatively, you can update your Wii to v3.0-4.3 then repeat the
echo Wizard using your new System Menu in order to hack your
echo Wii without requiring a games or WiFi on your Wii
echo.
:skipOmsg
support\sfk echo -spat \x20 \x20[%redtext%] NOTE IF YOU ARE MISSING AN SD CARD
echo Using str2hax you can install the HBC even if you don't have an SD card,
echo or if your SD card reader is broken. But without an sd card you will
echo not be able to install bootmii and make a NAND backup.
echo You can still proceed with the remaining steps of your custom ModMii guide
echo using a FAT32 formatted USB hard drive in place of an SD card.
echo More help on formatting your HDD if you use ModMii to set up a USB Loader.
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p EXPLOIT= Enter Selection Here:
if /i "%EXPLOIT%" EQU "M" goto:MENU
if /i "%EXPLOIT%" EQU "B" goto:WPAGE3
if /i "%FIRMSTART%" NEQ "o" goto:twilightnotavailable
if /i "%EXPLOIT%" EQU "T" goto:WPAGE3D
:twilightnotavailable
::ALL except KOR
if /i "%REGION%" EQU "K" goto:skip
if /i "%EXPLOIT%" EQU "Y" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "L" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "LB" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "LS" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "TOS" goto:WPAGE3D
:skip
if /i "%FIRMSTART%" EQU "o" goto:notbomb
if /i "%EXPLOIT%" EQU "W" goto:macaddress
if /i "%EXPLOIT%" EQU "?" goto:macaddress
:notbomb
if /i "%EXPLOIT%" EQU "X" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "?" goto:WPAGE3D
if /i "%EXPLOIT%" EQU "S" goto:WPAGE3D
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE3C
::----------------------------------------MAC ADDRESS---------------------------------
:macaddress
::start http://please.hackmii.com
::start /D SUPPORT LetterBombFrames.html
set macaddress=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Enter your Wii's MAC address (required for Wilbrand\LetterBomb exploit)
echo.
echo Examples:
echo AABBCCDDEEFF
echo AA BB CC DD EE FF
echo AA:BB:CC:DD:EE:FF
echo 11-22-33-44-55-66
echo.
echo.
echo.
echo Note: to find your Wii's MAC address, turn on your Wii, click the
echo Wii button in the bottom left of the main system menu,
echo then click Wii Settings, then Internet, then Console Information.
echo.
echo.
echo.
echo Enter "Help" for an instructional video on checking your Wii's MAC address.
echo.
echo.
echo.
echo.
if /i "%MENU1%" EQU "1" (echo B = Back out and skip this download) & (goto:skip)
if /i "%MENU1%" EQU "2" (echo B = Back out and skip this download) & (goto:skip)
if /i "%MENU1%" EQU "3" (echo B = Back out and skip this download) & (goto:skip)
if /i "%MENU1%" EQU "4" (echo B = Back out and skip this download) & (goto:skip)
if /i "%MENU1%" EQU "A" (echo B = Back out and skip this download) & (goto:skip)
echo S = Skip this for now and enter it later if you're not near your Wii
echo B = Back
:skip
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p macaddress= Enter Selection Here:
if /i "%macaddress%" EQU "M" goto:MENU
if /i "%macaddress%" NEQ "B" goto:notback
set Wilbrand=
if /i "%MENU1%" EQU "1" goto:DOWNLOADQUEUE
if /i "%MENU1%" EQU "2" goto:DOWNLOADQUEUE
if /i "%MENU1%" EQU "3" goto:DOWNLOADQUEUE
if /i "%MENU1%" EQU "4" goto:DOWNLOADQUEUE
if /i "%MENU1%" EQU "A" goto:DOWNLOADQUEUE
goto:WPAGE3C
:notback
if /i "%macaddress%" NEQ "Help" goto:nohelp
start https://www.youtube.com/embed/V52piPXM1tE
goto:macaddress
:nohelp
::don't allow skipping for manual downloads
if /i "%MENU1%" EQU "1" goto:skip
if /i "%MENU1%" EQU "2" goto:skip
if /i "%MENU1%" EQU "3" goto:skip
if /i "%MENU1%" EQU "4" goto:skip
if /i "%MENU1%" EQU "A" goto:skip
if /i "%macaddress%" EQU "S" goto:WPAGE3D
:skip
echo %macaddress% >temp\temp.txt
support\sfk filter "temp\temp.txt" -rep _" "__ -rep _"-"__ -rep _":"__ -write -yes>nul
set /p macaddress= <temp\temp.txt
::confirm 12 digits
if "%macaddress:~11%"=="" goto:badkey
if not "%macaddress:~12%"=="" goto:badkey
::confirm MAC addy is hex chars
echo.
echo Validating MAC address...
echo.
set digit=0
:confirmMACaddy
set /a digit=%digit%+1
set testme=
if /i "%digit%" EQU "1" set testme=%macaddress:~0,1%
if /i "%digit%" EQU "2" set testme=%macaddress:~1,1%
if /i "%digit%" EQU "3" set testme=%macaddress:~2,1%
if /i "%digit%" EQU "4" set testme=%macaddress:~3,1%
if /i "%digit%" EQU "5" set testme=%macaddress:~4,1%
if /i "%digit%" EQU "6" set testme=%macaddress:~5,1%
if /i "%digit%" EQU "7" set testme=%macaddress:~6,1%
if /i "%digit%" EQU "8" set testme=%macaddress:~7,1%
if /i "%digit%" EQU "9" set testme=%macaddress:~8,1%
if /i "%digit%" EQU "10" set testme=%macaddress:~9,1%
if /i "%digit%" EQU "11" set testme=%macaddress:~10,1%
if /i "%digit%" EQU "12" set testme=%macaddress:~11,1%
if "%testme%"=="" goto:quickskip
if /i "%testme%" EQU "0" goto:confirmMACaddy
if /i "%testme%" EQU "1" goto:confirmMACaddy
if /i "%testme%" EQU "2" goto:confirmMACaddy
if /i "%testme%" EQU "3" goto:confirmMACaddy
if /i "%testme%" EQU "4" goto:confirmMACaddy
if /i "%testme%" EQU "5" goto:confirmMACaddy
if /i "%testme%" EQU "6" goto:confirmMACaddy
if /i "%testme%" EQU "7" goto:confirmMACaddy
if /i "%testme%" EQU "8" goto:confirmMACaddy
if /i "%testme%" EQU "9" goto:confirmMACaddy
if /i "%testme%" EQU "a" goto:confirmMACaddy
if /i "%testme%" EQU "b" goto:confirmMACaddy
if /i "%testme%" EQU "c" goto:confirmMACaddy
if /i "%testme%" EQU "d" goto:confirmMACaddy
if /i "%testme%" EQU "e" goto:confirmMACaddy
if /i "%testme%" EQU "f" goto:confirmMACaddy
goto:badkey
:quickskip
::echo %macaddress%
if /i "%MENU1%" EQU "1" goto:WPAGE3
if /i "%MENU1%" EQU "2" goto:WPAGE3
if /i "%MENU1%" EQU "3" goto:WPAGE3
if /i "%MENU1%" EQU "4" goto:WPAGE3
if /i "%MENU1%" EQU "A" goto:WPAGE3
goto:WPAGE3D
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:macaddress
::...................................Wizard Page3D - Active IOSs...............................
:WPAGE3D
if /i "%AbstinenceWiz%" EQU "Y" goto:NEEKrevSelect
if /i "%MENU1%" EQU "H" goto:HACKMIISOLUTION
SET UpdatesIOSQ=
if /i "%ACTIVEIOS%" EQU "off" goto:WPAGE4
if /i "%Virgin%" EQU "N" goto:forceQ
if /i "%FIRMSTART%" LSS "4.3" goto:WPAGE4
if /i "%FIRMSTART%" EQU "o" goto:WPAGE4
::Only 4.3 Wii's without active IOS "ON" will make it this far
:forceQ
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%Virgin%" EQU "N" echo Download active IOSs and some extra brick protection (patched System Menu IOSs)?
if /i "%Virgin%" NEQ "N" echo Would you like to download active IOSs?
echo.
echo.
echo.
echo N = No
echo.
if /i "%Virgin%" EQU "N" echo If you previously used ModMii to fully softmod your Wii you should already
if /i "%Virgin%" EQU "N" echo have these installed.
if /i "%FirmStart%" EQU "4.3" echo You're on System Menu 4.3, so you likely already have the latest IOSs.
if /i "%FirmStart%" EQU "4.3" echo If your Wii has truly never been modified before, you can say No.
echo.
echo.
echo Y = Yes
echo.
echo If your Wii has DarkCorp/cIOSCorp installed, you can say Yes to overwrite it.
echo If original Wii discs or WiiWare are not working properly, say Yes to fix it.
echo.
echo If unsure, there is no harm in saying yes, it just may take a bit longer.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p UpdatesIOSQ= Enter Selection Here:
if /i "%UpdatesIOSQ%" EQU "M" goto:MENU
if /i "%UpdatesIOSQ%" EQU "Y" goto:WPAGE4
if /i "%UpdatesIOSQ%" EQU "N" goto:WPAGE4
if /i "%VIRGIN%" EQU "N" goto:backtowpage3
::if /i "%REGION%" EQU "K" goto:backtowpage3
if /i "%exploit%" EQU "W" goto:backtomacaddress
if /i "%exploit%" EQU "?" goto:backtomacaddress
goto:backtowpage3c
:backtomacaddress
if /i "%UpdatesIOSQ%" EQU "B" goto:macaddress
:backtowpage3
if /i "%UpdatesIOSQ%" EQU "B" goto:WPAGE3
:backtowpage3c
if /i "%UpdatesIOSQ%" EQU "B" goto:WPAGE3c
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE3D
::...................................Wizard Page4 - New System Menu...............................
:WPAGE4
if /i "%MENU1%" EQU "H" goto:HACKMIISOLUTION
set FIRM=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the new System Menu you would like to upgrade/downgrade to.
if /i "%MENU1%" NEQ "RC" (echo.) & (echo.) & (echo.) & (echo Note: if current system menu = new system menu, a system menu is not downloaded)
echo.
echo.
echo.
if /i "%FIRMSTART%" EQU "4.1" goto:SkipGreen4.3
if /i "%FIRMSTART%" EQU "4.2" goto:SkipGreen4.3
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 4.3 = 4.3 [RECOMMENDED]
goto:skipWhite4.3
:SkipGreen4.3
echo 4.3 = 4.3
:skipWhite4.3
if /i "%FIRMSTART%" EQU "4.2" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 4.2 = 4.2 [RECOMMENDED]) else (echo 4.2 = 4.2)
if /i "%FIRMSTART%" EQU "4.1" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%greentext%] 4.1 = 4.1 [RECOMMENDED]) else (echo 4.1 = 4.1)
echo.
echo.
echo ModMii recommends against unnecessarily changing system menus if already on 4.1
echo or higher. 4.2 and 4.3 add nothing except failed attempts to prevent homebrew.
echo Even RiiConnect24 fully works on lower firmwares using ModMii's System Menu IOSs.
echo.
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p FIRM= Enter Selection Here:
if /i "%FIRM%" EQU "M" goto:MENU
if /i "%MENU1%" NEQ "RC" goto:notRC
if /i "%FIRM%" EQU "4.2" goto:WPAGE20
if /i "%FIRM%" EQU "4.1" goto:WPAGE20
if /i "%FIRM%" EQU "4.3" goto:WPAGE20
if /i "%FIRM%" EQU "B" goto:WPAGE3
:notRC
if /i "%FIRM%" EQU "4.2" goto:WPAGE5
if /i "%FIRM%" EQU "4.1" goto:WPAGE5
if /i "%FIRM%" EQU "4.3" goto:WPAGE5
if /i "%FIRM%" NEQ "B" goto:notback
if /i "%VIRGIN%" EQU "N" goto:noexploits
if /i "%FIRMSTART%" EQU "o" goto:wpage3c
if /i "%FIRMSTART%" NEQ "4.3" goto:wpage3
if /i "%ACTIVEIOS%" EQU "off" (goto:wpage3c) else (goto:WPAGE3D)
:noexploits
if /i "%ACTIVEIOS%" EQU "off" (goto:wpage3) else (goto:WPAGE3D)
:notback
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE4
::...................................Wizard Page5 - MORE Channels?...............................
:WPAGE5
set MORE=
set PIC=
set NET=
set Weather=
set NEWS=
set MIIQ=
set Shop=
set Speak=
if /i "%MENU1%" EQU "S" (set REGIONTEMP=%SNKREGION%) else (set REGIONTEMP=%REGION%)
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to install any of the following channels:
echo.
echo.
echo.
echo * Photo
if /i "%REGIONTEMP%" NEQ "K" echo * Internet
::if /i "%REGIONTEMP%" NEQ "K" echo * Weather^^
::if /i "%REGIONTEMP%" NEQ "K" echo * News^^
::if /i "%REGIONTEMP%" NEQ "K" echo * Wii Speak^^^^
echo * Mii
echo * Shopping (can only re-download content you have already purchased)
echo.
echo.
::if /i "%REGIONTEMP%" EQU "K" goto:notk
::echo ^^marked channels require RiiConnect24 to work
::echo ^^^^Wii Speak Channel requires RiiConnect24 and Wiimmfi to work.
::echo Check these out after finishing with ModMii at https://rc24.xyz
:::notk
echo Note: since Nintendo has shut down WiiConnect24 other channels like News,
echo Wii Speak, etc. require RiiConnect24. These can be installed later
echo using the RiiConnect24 Patcher from ModMii's Download Page 2
echo or from https://rc24.xyz
echo.
echo A = All
echo S = Some
echo N = None
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p MORE= Enter Selection Here:
if /i "%MORE%" EQU "M" goto:MENU
if /i "%MENU1%" EQU "S" goto:forsneeknand
if /i "%MORE%" EQU "B" goto:WPAGE4
if /i "%MORE%" EQU "N" goto:WPAGE13
:forsneeknand
if /i "%MORE%" NEQ "B" goto:notback
if /i "%SNEEKSELECT%" NEQ "5" goto:WPAGE20
if "%SMTHEMEAPP%"=="" (goto:SNKPAGE4c) else (goto:WPAGE20)
:notback
if /i "%MORE%" EQU "A" set B4SNKCONFIRM=WPAGE5
if /i "%MORE%" EQU "N" set B4SNKCONFIRM=WPAGE5
if /i "%MORE%" EQU "N" goto:SNKNANDCONFIRM
if /i "%MORE%" EQU "S" goto:WPAGE6
if /i "%MORE%" EQU "A" goto:WPAGE6
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE5
::...................................Wizard Page6 - Photo Channel...............................
:WPAGE6
if /i "%MORE%" EQU "A" set PIC=Y
if /i "%MORE%" EQU "A" goto:WPAGE7
set PIC=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Photo Channel?
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p PIC= Enter Selection Here:
if /i "%PIC%" EQU "Y" goto:WPAGE7
if /i "%PIC%" EQU "N" goto:WPAGE7
if /i "%PIC%" EQU "M" goto:MENU
if /i "%PIC%" EQU "B" goto:WPAGE5
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE6
::...................................Wizard Page7 - Internet?...............................
:WPAGE7
if /i "%REGIONTEMP%" EQU "K" goto:WPAGE10
if /i "%MORE%" EQU "A" set NET=Y
if /i "%MORE%" EQU "A" goto:WPAGE8
set NET=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Internet Channel?
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p NET= Enter Selection Here:
if /i "%NET%" EQU "Y" goto:WPAGE8
if /i "%NET%" EQU "N" goto:WPAGE8
if /i "%NET%" EQU "M" goto:MENU
if /i "%NET%" EQU "B" goto:WPAGE6
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE7
::...................................Wizard Page8 - Weather...............................
:WPAGE8
::disabled...
goto:WPAGE9
if /i "%MORE%" EQU "A" set Weather=Y
if /i "%MORE%" EQU "A" goto:WPAGE9
set Weather=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Weather Channel?
echo.
echo.
echo Note: requires RiiConnect24 to work
echo Check it out after finishing with ModMii at https://rc24.xyz
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WEATHER= Enter Selection Here:
if /i "%WEATHER%" EQU "Y" goto:WPAGE9
if /i "%WEATHER%" EQU "N" goto:WPAGE9
if /i "%WEATHER%" EQU "M" goto:MENU
if /i "%WEATHER%" EQU "B" goto:WPAGE7
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE8
::...................................Wizard Page9 - NEWS...............................
:WPAGE9
::disabled...
goto:WPAGE10
if /i "%MORE%" EQU "A" set NEWS=Y
if /i "%MORE%" EQU "A" goto:WPAGE10
set NEWS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the News Channel?
echo.
echo.
echo Note: requires RiiConnect24 to work
echo Check it out after finishing with ModMii at https://rc24.xyz
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p NEWS= Enter Selection Here:
if /i "%NEWS%" EQU "Y" goto:WPAGE10
if /i "%NEWS%" EQU "N" goto:WPAGE10
if /i "%NEWS%" EQU "M" goto:MENU
if /i "%NEWS%" EQU "B" goto:WPAGE8
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE9
::...................................Wizard Page10 - Mii...............................
:WPAGE10
if /i "%MORE%" EQU "A" set MIIQ=Y
if /i "%MORE%" EQU "A" goto:WPAGE11
set MIIQ=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Mii Channel?
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p MIIQ= Enter Selection Here:
if /i "%MIIQ%" EQU "Y" goto:WPAGE11
if /i "%MIIQ%" EQU "N" goto:WPAGE11
if /i "%MIIQ%" EQU "M" goto:MENU
if /i "%REGIONTEMP%" EQU "K" goto:Koreanbacktophoto
::if /i "%MIIQ%" EQU "B" goto:WPAGE9
if /i "%MIIQ%" EQU "B" goto:WPAGE7
:Koreanbacktophoto
if /i "%MIIQ%" EQU "B" goto:WPAGE6
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE10
::...................................Wizard Page11 - Shop...............................
:WPAGE11
if /i "%MORE%" EQU "A" set Shop=Y
if /i "%MORE%" EQU "A" goto:WPAGE12
set Shop=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Shopping Channel?
if /i "%MENU1%" NEQ "S" echo.
if /i "%MENU1%" NEQ "S" echo.
if /i "%MENU1%" NEQ "S" echo.
if /i "%MENU1%" NEQ "S" echo Note: IOS56 will also be downloaded
echo.
echo.
echo Note: this can only re-download content you have already purchased
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SHOP= Enter Selection Here:
if /i "%Shop%" EQU "Y" goto:WPAGE12
if /i "%Shop%" EQU "N" goto:WPAGE12
if /i "%Shop%" EQU "M" goto:MENU
if /i "%Shop%" EQU "B" goto:WPAGE10
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE11
::...................................Wizard Page12 - Speak...............................
:WPAGE12
::disabled...
goto:WPAGE13
if /i "%REGIONTEMP%" EQU "K" goto:WPAGE13
if /i "%MORE%" EQU "A" set Speak=Y
if /i "%MORE%" EQU "A" goto:WPAGE13
set Speak=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Install the Wii Speak Channel?
echo.
echo.
echo Note: requires RiiConnect24 and Wiimmfi to work
echo Check them out after finishing with ModMii at https://rc24.xyz
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p Speak= Enter Selection Here:
if /i "%Speak%" EQU "Y" goto:WPAGE13
if /i "%Speak%" EQU "N" goto:WPAGE13
if /i "%Speak%" EQU "M" goto:MENU
if /i "%Speak%" EQU "B" goto:WPAGE11
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE12
::...................................Wizard Page13 - MORE Advanced Channels?...............................
:WPAGE13
if /i "%VIRGIN%" EQU "Y" goto:WPAGE20
::if /i "%MENU1%" EQU "S" set B4SNKCONFIRM=WPAGE12
if /i "%MENU1%" EQU "S" set B4SNKCONFIRM=WPAGE11
if /i "%MORE%" EQU "A" set B4SNKCONFIRM=WPAGE5
if /i "%MENU1%" EQU "S" goto:SNKNANDCONFIRM
set Advanced=
set HMInstaller=
set RECCIOS=
set PRIQ=
set ThemeSelection=N
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to install and\or update any of the following:
echo.
echo.
echo.
echo * Homebrew Channel and\or Bootmii
echo.
if /i "%CMIOSOPTION%" EQU "on" (echo * Recommended cIOSs and cMIOS) else (echo * Recommended cIOSs)
echo.
echo * Priiloader (or system menu hacks)
echo.
echo * A System Menu Theme
echo.
echo * USB-Loader
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p Advanced= Enter Selection Here:
if /i "%Advanced%" EQU "M" goto:MENU
if /i "%MORE%" EQU "N" goto:BACK2MORE
if /i "%MORE%" EQU "A" goto:BACK2MORE
if /i "%REGIONTEMP%" EQU "K" goto:BACK2WPAGE11
if /i "%Advanced%" EQU "B" goto:WPAGE5
:BACK2MORE
if /i "%Advanced%" EQU "B" goto:WPAGE5
:BACK2WPAGE11
if /i "%Advanced%" EQU "B" goto:WPAGE11
if /i "%Advanced%" EQU "Y" goto:WPAGE13B
if /i "%Advanced%" EQU "N" goto:WPAGELAST
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE13
::...................................Wizard Page13B - HAckMii Installer...............................
:WPAGE13B
set HMInstaller=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to install and\or update the Homebrew Channel and\or Bootmii?
echo.
echo Note: This will download the HackMii Installer and IOS58
echo.
echo.
echo.
echo Enter "Help" for an instructional video on checking your HBC version.
echo.
echo.
::echo This will download the following files:
::echo ---------------------------------------
::echo.
::echo * HackMii Installer
::if /i "%FIRMSTART%" EQU "o" echo * All available exploits
::if /i "%FIRMSTART%" EQU "3.X" echo * Bannerbomb v1
::if /i "%FIRMSTART%" EQU "4.0" echo * Bannerbomb v1
::if /i "%FIRMSTART%" EQU "4.1" echo * Bannerbomb v1
::if /i "%FIRMSTART%" EQU "4.2" echo * Bannerbomb v2
::if /i "%FIRMSTART%" EQU "4.3" echo * All available exploits
::echo * IOS58
::if /i "%FIRMSTART%" EQU "4.3" (echo.) & (echo Note: Letterbomb exploit available here - http://please.hackmii.com)
echo.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p HMInstaller= Enter Selection Here:
if /i "%HMInstaller%" EQU "Y" goto:WPAGE14
if /i "%HMInstaller%" EQU "N" goto:WPAGE14
if /i "%HMInstaller%" EQU "M" goto:MENU
if /i "%HMInstaller%" EQU "B" goto:WPAGE13
if /i "%HMInstaller%" NEQ "Help" goto:nohelp
start https://www.youtube.com/embed/EaoCGT2pOx0
goto:WPAGE13B
:nohelp
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE13B
::...................................Wizard Page14 - cIOSs and cMIOSs...............................
:WPAGE14
set RECCIOS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%CMIOSOPTION%" EQU "on" (echo Would you like to update to the following recommended cIOSs and cMIOS?) else (echo Would you like to update to the following recommended cIOSs?)
echo.
echo.
echo.
if /i "%hermesOPTION%" EQU "off" goto:smallskip
echo *cIOS202[60]-v5.1R.wad
echo.
echo *cIOS222[38]-v4.wad
echo.
echo *cIOS223[37-38]-v4.wad
echo.
echo *cIOS224[57]-v5.1R.wad
echo.
:smallskip
echo *cIOS248[38]-d2x-v%d2x-beta-rev%.wad
echo.
echo *cIOS249[56]-d2x-v%d2x-beta-rev%.wad
echo.
echo *cIOS250[57]-d2x-v%d2x-beta-rev%.wad
echo.
echo *cIOS251[58]-d2x-v%d2x-beta-rev%.wad
echo.
if /i "%CMIOSOPTION%" EQU "off" goto:quickskip
echo *RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2.wad
:quickskip
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p RECCIOS= Enter Selection Here:
if /i "%RECCIOS%" EQU "Y" goto:WPAGE19
if /i "%RECCIOS%" EQU "N" goto:WPAGE19
if /i "%RECCIOS%" EQU "M" goto:MENU
if /i "%RECCIOS%" EQU "B" goto:WPAGE13B
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE14
::...................................Wizard Pages 15-18 removed...............................
::...................................Wizard Page19 - Priiloader...............................
:WPAGE19
set PRIQ=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to install and\or update Priiloader (or system menu hacks)?
echo.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p PRIQ= Enter Selection Here:
if /i "%PRIQ%" EQU "Y" goto:WPAGE20
if /i "%PRIQ%" EQU "N" goto:WPAGE20
if /i "%PRIQ%" EQU "M" goto:MENU
if /i "%PRIQ%" EQU "B" goto:WPAGE14
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE19
::...................................Wizard Page20 - Theme Selection...............................
:WPAGE20
set ThemeSelection=
if /i "%SNEEKSELECT%" NEQ "5" goto:nocheck
if "%SMTHEMEAPP%"=="" goto:WPAGE5
:nocheck
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%MENU1%" NEQ "S" goto:quickskip
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
:quickskip
echo Would you like to install a custom Theme on your Wii?
echo.
echo.
echo WWW = View All Available Themes on Youtube
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20CE = Channel Effect* for custom system menu themes: [%cyantext%]%effect%
echo * Choose from 3 effects: No-Spin, Spin and Fast-Spin
echo.
echo.
echo.
echo R = DarkWii Red Theme - %effect%
echo.
echo G = DarkWii Green Theme - %effect%
echo.
echo BL = DarkWii Blue Theme - %effect%
echo.
echo O = DarkWii Orange Theme - %effect%
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo N = No, do not change the theme) else (echo N = No, I want the same old boring, boring System Menu)
echo.
if /i "%SNEEKSELECT%" EQU "5" echo.
if /i "%SNEEKSELECT%" EQU "5" echo D = Default Theme (restore original theme to the Emulated NAND)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p ThemeSelection= Enter Selection Here:
if /i "%ThemeSelection%" EQU "M" goto:MENU
if /i "%ThemeSelection%" NEQ "WWW" goto:novid
start https://modmii.github.io/WiiThemes.html
goto:WPAGE20
:novid
if /i "%ThemeSelection%" EQU "CE" goto:OptionCEwizard
if /i "%MENU1%" NEQ "RC" goto:notRC
set BACKB4DRIVE=WPAGE20
if /i "%ThemeSelection%" EQU "R" goto:DriveChange
if /i "%ThemeSelection%" EQU "G" goto:DriveChange
if /i "%ThemeSelection%" EQU "BL" goto:DriveChange
if /i "%ThemeSelection%" EQU "O" goto:DriveChange
if /i "%ThemeSelection%" EQU "N" goto:DriveChange
if /i "%ThemeSelection%" EQU "B" goto:WPAGE4
:notRC
if /i "%MENU1%" EQU "S" goto:forsneeknand
if /i "%ThemeSelection%" EQU "R" goto:WPAGE21
if /i "%ThemeSelection%" EQU "G" goto:WPAGE21
if /i "%ThemeSelection%" EQU "BL" goto:WPAGE21
if /i "%ThemeSelection%" EQU "O" goto:WPAGE21
if /i "%ThemeSelection%" EQU "N" goto:WPAGE21
:forsneeknand
::if /i "%SNEEKSELECT%" EQU "5" goto:quickskip
if /i "%MENU1%" NEQ "S" goto:quickskip
if /i "%ThemeSelection%" EQU "B" goto:SNKPAGE5
:quickskip
if /i "%ThemeSelection%" EQU "R" goto:WPAGE5
if /i "%ThemeSelection%" EQU "G" goto:WPAGE5
if /i "%ThemeSelection%" EQU "BL" goto:WPAGE5
if /i "%ThemeSelection%" EQU "O" goto:WPAGE5
if /i "%ThemeSelection%" EQU "N" goto:WPAGE5
if /i "%SNEEKSELECT%" NEQ "5" goto:miniskip
if /i "%ThemeSelection%" EQU "D" goto:WPAGE5
if /i "%ThemeSelection%" EQU "B" goto:SNKPAGE4c
:miniskip
if /i "%Advanced%" EQU "Y" goto:Back2PRI
if /i "%Advanced%" EQU "N" goto:Back2Advanced2
if /i "%MORE%" EQU "N" goto:Back2MORE2
if /i "%MORE%" EQU "A" goto:Back2MORE2
if /i "%REGIONTEMP%" EQU "K" goto:Back2SHOP2
if /i "%MORE%" EQU "S" goto:Back2Speak2
:BACK2PRI
if /i "%ThemeSelection%" EQU "B" goto:WPAGE19
:BACK2ADVANCED2
if /i "%ThemeSelection%" EQU "B" goto:WPAGE13
:BACK2SPEAK2
::if /i "%ThemeSelection%" EQU "B" goto:WPAGE12
if /i "%ThemeSelection%" EQU "B" goto:WPAGE11
:Back2SHOP2
if /i "%ThemeSelection%" EQU "B" goto:WPAGE11
:BACK2MORE2
if /i "%ThemeSelection%" EQU "B" goto:WPAGE5
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE20
:OptionCEwizard
if /i "%effect%" EQU "No-Spin" (set effect=Spin) & (support\sfk filter Support\settings.bat -!"Set effect=" -write -yes>nul) & (echo Set effect=Spin>>Support\settings.bat) & (goto:WPAGE20)
if /i "%effect%" EQU "Spin" (set effect=Fast-Spin) & (support\sfk filter Support\settings.bat -!"Set effect=" -write -yes>nul) & (echo Set effect=Fast-Spin>>Support\settings.bat) & (goto:WPAGE20)
if /i "%effect%" EQU "Fast-Spin" (set effect=No-Spin) & (support\sfk filter Support\settings.bat -!"Set effect=" -write -yes>nul) & (echo Set effect=No-Spin>>Support\settings.bat) & (goto:WPAGE20)
::...................................Wizard Page21 - USB Loader Setup Q...............................
:WPAGE21
set USBGUIDE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Would you like to set up a USB-Loader now?
echo.
echo.
echo Notes
echo =====
echo.
echo * USB-Loaders allow the Wii to play games off a USB Hard Drive or SD Card.
echo.
echo * This step can always be done by itself later on from ModMii's Main Menu.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo N = No
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p USBGUIDE= Enter Selection Here:
if /i "%USBGUIDE%" EQU "M" goto:MENU
if /i "%USBGUIDE%" EQU "B" goto:WPAGE20
if /i "%USBGUIDE%" EQU "Y" goto:UPAGE1b
if /i "%USBGUIDE%" EQU "N" goto:WPAGELAST
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGE21
::...................................Wizard Last Page - Confirmation...............................
:WPAGELAST
set WLAST=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Are these settings correct?
echo.
echo.
echo.
if /i "%VIRGIN%" EQU "Y" echo * Install and\or update all recommended softmods
if /i "%FIRMSTART%" NEQ "o" echo * Current System Menu is %FIRMSTART%%REGION%
if /i "%FIRMSTART%" EQU "o" echo * Current System Menu is less than 2.2%REGION%
echo * Desired System Menu is %FIRM%%REGION%
if /i "%macaddress%" EQU "S" goto:skip
if not "%macaddress%"=="" (echo.) & (echo * MAC Address: %macaddress%)
:skip
echo.
if /i "%PIC%" EQU "Y" echo * Install the Photo Channel
if /i "%NET%" EQU "Y" echo * Install the Internet Channel
if /i "%WEATHER%" EQU "Y" echo * Install the Weather Channel
if /i "%NEWS%" EQU "Y" echo * Install the News Channel
if /i "%MIIQ%" EQU "Y" echo * Install the Mii Channel
if /i "%Shop%" EQU "Y" echo * Install the Shopping Channel (and IOS56)
if /i "%Speak%" EQU "Y" echo * Install the Wii Speak Channel
echo.
if /i "%HMInstaller%" EQU "Y" echo * Install and\or update the Homebrew Channel and Bootmii
if /i "%RECCIOS%" NEQ "Y" goto:smallskip
if /i "%CMIOSOPTION%" EQU "on" (echo * Install and\or update recommended cIOSs and cMIOS) else (echo * Install and\or update recommended cIOSs)
:smallskip
if /i "%PRIQ%" EQU "Y" echo * Install and\or update Priiloader
if /i "%ThemeSelection%" EQU "R" echo * Install Dark Wii Red Theme
if /i "%ThemeSelection%" EQU "G" echo * Install Dark Wii Green Theme
if /i "%ThemeSelection%" EQU "BL" echo * Install Dark Wii Blue Theme
if /i "%ThemeSelection%" EQU "O" echo * Install Dark Wii Orange Theme
::---------
if /i "%USBGUIDE%" NEQ "Y" goto:skipusb
echo.
if /i "%LOADER%" EQU "CFG" echo * Download Configurable USB-Loader
if /i "%LOADER%" EQU "FLOW" echo * Download WiiFlow
if /i "%LOADER%" EQU "GX" echo * Download USB-Loader GX
if /i "%LOADER%" EQU "ALL" echo * Download all USB-Loaders available in ModMii
if /i "%USBCONFIG%" EQU "USB" echo * USB-Loader Settings and config files saved to USB Hard Drive
if /i "%USBCONFIG%" NEQ "USB" echo * USB-Loader Settings and config files saved to SD Card
:skipusb
echo.
echo.
echo.
::if /i "%LoadWizSettings%" EQU "Y" goto:skip
echo S = Save Wizard Settings For Future Use
if exist Wizard_Settings.bat echo Existing Wizard_Settings.bat will be renamed
echo.
:::skip
echo Y = Yes
::echo N = No \ Main Menu
echo.
echo B = Back
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WLAST= Enter Selection Here:
::if /i "%LoadWizSettings%" EQU "Y" goto:skip
if /i "%WLAST%" EQU "S" goto:SaveWizardSettings
:::skip
if /i "%WLAST%" EQU "Y" set BACKB4DRIVE=WPAGELAST
if /i "%WLAST%" EQU "Y" goto:DriveChange
::if /i "%WLAST%" EQU "N" goto:Menu
if /i "%WLAST%" EQU "M" goto:MENU
if /i "%Advanced%" EQU "N" goto:Back2Advanced
if /i "%Advanced%" EQU "Y" goto:Back2USB
if /i "%MORE%" EQU "N" goto:Back2USB
if /i "%MORE%" EQU "S" goto:Back2USB
if /i "%USBGUIDE%" EQU "Y" goto:backtoUpage2
:BACK2ADVANCED
if /i "%WLAST%" EQU "B" goto:WPAGE13
:BACK2SPEAK
if /i "%WLAST%" EQU "B" goto:WPAGE12
:Back2USB
if /i "%WLAST%" EQU "B" goto:WPAGE21
:backtoUpage2
if /i "%WLAST%" EQU "B" goto:UPAGE2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGELAST
::-------------Save Wizard Settings:-------------------
:SaveWizardSettings
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
set countwiz=0
:renameWIZARDsettings
if not exist Wizard_Settings.bat goto:skip
SET /a countwiz=%countwiz%+1
if exist Wizard_Settings%countwiz%.bat goto:renameWIZARDsettings
move Wizard_Settings.bat Wizard_Settings%countwiz%.bat
:skip
echo ::ModMii v%currentversion% - Wizard Settings - %DATE% - %TIME% >> Wizard_Settings.bat
echo set VIRGIN=%VIRGIN%>> Wizard_Settings.bat
echo set REGION=%REGION%>> Wizard_Settings.bat
echo set FIRMSTART=%FIRMSTART%>> Wizard_Settings.bat
echo set FIRM=%FIRM%>> Wizard_Settings.bat
echo set PIC=%PIC%>> Wizard_Settings.bat
echo set NET=%NET%>> Wizard_Settings.bat
echo set WEATHER=%WEATHER%>> Wizard_Settings.bat
echo set NEWS=%NEWS%>> Wizard_Settings.bat
echo set MIIQ=%MIIQ%>> Wizard_Settings.bat
echo set Shop=%Shop%>> Wizard_Settings.bat
echo set Speak=%Speak%>> Wizard_Settings.bat
echo set HMInstaller=%HMInstaller%>> Wizard_Settings.bat
echo set PRIQ=%PRIQ%>> Wizard_Settings.bat
echo set ThemeSelection=%ThemeSelection%>> Wizard_Settings.bat
echo set EXPLOIT=%EXPLOIT%>> Wizard_Settings.bat
echo set MORE=%MORE%>> Wizard_Settings.bat
echo set ADVANCED=%ADVANCED%>> Wizard_Settings.bat
echo set UpdatesIOSQ=%UpdatesIOSQ%>> Wizard_Settings.bat
echo set RECCIOS=%RECCIOS%>> Wizard_Settings.bat
echo set USBGUIDE=%USBGUIDE%>> Wizard_Settings.bat
echo set LOADER=%LOADER%>> Wizard_Settings.bat
echo set USBCONFIG=%USBCONFIG%>> Wizard_Settings.bat
echo set macaddress=%macaddress%>> Wizard_Settings.bat
if exist Wizard_Settings.bat echo Wizard Settings Saved.
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WPAGELAST
::...................................USB-Loader Setup Page1b - Loader?...............................
:UPAGE1b
set LOADER=
set usbfolder=
set FLOW=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo What USB-Loader would you like to use?
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] 1 = USB-Loader GX (RECOMMENDED)
echo.
echo 2 = Configurable USB-Loader
echo.
echo 3 = WiiFlow
echo.
echo 4 = All of the above
echo.
echo.
echo Note: The "Nintendont" Gamecube plugin is supported by all of these
echo loaders and will also be downloaded.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p LOADER= Enter Selection Here:
if /i "%LOADER%" EQU "M" goto:MENU
if /i "%MENU1%" EQU "W" goto:skip
if /i "%LOADER%" EQU "B" goto:MENU
:skip
if /i "%LOADER%" EQU "B" goto:WPAGE21
set f32=*
set wbm=*
set nintendont=*
set CleanRip=*
set GCBM=*
set Nkit=*
if /i "%LOADER%" EQU "1" (set LOADER=GX) & (set usbgx=*) & (goto:UPAGE2)
if /i "%LOADER%" EQU "2" (set LOADER=CFG) & (set usbfolder=*) & (goto:UPAGE2)
if /i "%LOADER%" EQU "3" (set LOADER=FLOW) & (set FLOW=*) & (goto:UPAGE2)
if /i "%LOADER%" EQU "4" (set LOADER=ALL) & (set usbgx=*) & (set FLOW=*) & (set usbfolder=*) & (goto:UPAGE2)
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:UPAGE1b
::...................................USB-Loader Setup Page2 - Config on USB vs SD?...............................
:UPAGE2
set USBCONFIG=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Where would you like to save your USB-Loader app, games and covers?
echo.
echo.
echo USB = USB (Files saved to "%DRIVEU%")
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%greentext%] Pros:[def] *SD Card not required to launch USB-Loader
echo *USB-Loader files and games can take up a relatively small
echo amount of larger USB Hard Drives
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%redtext%] Cons:[def] *Cannot launch the USB-Loader without USB Hard Drive
echo *Slightly slower loading time (almost negligible)
echo.
echo.
echo.
echo SD = SD (Files saved to "%DRIVE%")
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%greentext%] Pros:[def] *USB Hard Drive not required to launch USB-Loader
echo *Slightly faster loading time (almost negligible)
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%redtext%] Cons:[def] *Cannot launch the USB-Loader without SD Card
echo *USB-Loader files and games can take up a relatively large
echo amount of smaller SD Cards
echo.
echo.
echo Note: USB-Loaders can detect games on SD and USB if you want to use both
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p USBCONFIG= Enter Selection Here:
if /i "%USBCONFIG%" EQU "B" goto:UPAGE1b
if /i "%USBCONFIG%" EQU "M" goto:MENU
::if using wizard+usb-loader setup, set up both drive letters
if /i "%MENU1%" NEQ "W" goto:skip
if /i "%USBCONFIG%" EQU "USB" set BACKB4DRIVE=WPAGELAST
if /i "%USBCONFIG%" EQU "USB" set BACKB4DRIVEU=DRIVECHANGE
if /i "%USBCONFIG%" EQU "USB" goto:WPAGELAST
if /i "%USBCONFIG%" EQU "SD" set BACKB4DRIVE=UPAGE2
if /i "%USBCONFIG%" EQU "SD" goto:WPAGELAST
:skip
if /i "%USBCONFIG%" EQU "USB" set "DRIVETEMP=%DRIVE%"
if /i "%USBCONFIG%" EQU "USB" set BACKB4DRIVEU=UPAGE2
if /i "%USBCONFIG%" EQU "USB" goto:DRIVEUCHANGE
if /i "%USBCONFIG%" EQU "SD" set BACKB4DRIVE=UPAGE2
if /i "%USBCONFIG%" EQU "SD" goto:DriveChange
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:UPAGE2
::...................................SNEEK Page1 - SNEEK SELECT...............................
:SNKPAGE1
set SNEEKSELECT=
set SNKS2U=
set PRIIFOUND=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Which of the following SNEEK Actions would you like to perform?
echo.
echo.
echo 1 = SNEEK Installation
echo.
echo 2 = Emulated NAND Builder (for SNEEK)
echo.
echo 3 = All the above (Recommended for first time SNEEK users)
echo.
echo.
echo 4 = Game Bulk Extractor (for SNEEK)
echo * Supported formats include ISO, CISO and WBFS files
echo.
echo 5 = Emulated NAND Modifier
echo * Edit your existing Emulated NAND
echo Requirements:
echo.
echo * If you don't have Bootmii installed in order to run SNEEK you will
echo have to first use the ModMii Wizard or the Abstinence Wizard.
echo.
echo * To optimize the speed of your SNEEK or SNEEK+DI emulated nand,
echo your SD card should be formatted using 32KB sector sizes.
echo.
echo * UNEEK and UNEEK+DI require the External Hard Drive be formatted
echo as FAT32 using cluster sizes 32KB or lower. If you don't know how to
echo format your drive this way, run ModMii's USB-Loader Setup.
echo.
echo * SNEEK+DI and UNEEK+DI always use the 1st partition if multiple are found.
echo.
if /i "%neek2o%" EQU "on" (set neekURL=http://tiny.cc/neek2o) else (set neekURL=http://code.google.com/p/sneek)
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] WARNING: SNEEK is not directly supported by ModMii.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] Any problems you have with SNEEK that are not a direct result
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] of ModMii should be reported here: %neekURL%
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] This is also a great place to learn more about SNEEK in general.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] Another great resource is the guide here: tiny.cc/SNEEK-DI
echo.
echo B = Back
echo M = Main Menu
echo.
set /p SNEEKSELECT= Enter Selection Here:
if /i "%SNEEKSELECT%" EQU "B" goto:MENU
if /i "%SNEEKSELECT%" EQU "M" goto:MENU
if /i "%SNEEKSELECT%" EQU "1" goto:NEEKrevSelect
if /i "%SNEEKSELECT%" EQU "2" goto:SNKPAGE2
if /i "%SNEEKSELECT%" EQU "3" goto:NEEKrevSelect
if /i "%SNEEKSELECT%" EQU "4" goto:SNKDISCEX
if /i "%SNEEKSELECT%" EQU "5" goto:SNKNANDSELECTOR
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE1
::...................................SNEEK Page - NEEK rev Selection...............................
:NEEKrevSelect
if exist temp\list.txt del temp\list.txt>nul
if exist temp\list2.txt del temp\list2.txt>nul
if /i "%neek2o%" EQU "ON" (set googlecode=neek2o) & (set neekname=neek2o)
if /i "%neek2o%" NEQ "ON" (set googlecode=sneeky-compiler-modmii) & (set neekname=neek)
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" goto:quickskip2
echo Checking which %neekname% versions are hosted online...
::get all list
start /min /wait support\wget --no-check-certificate -N "https://sourceforge.net/projects/%googlecode%/files/?source=navbar"
if exist index.html@* (move /y index.html@* temp\list.txt>nul) else (goto:nowifi)
::copy /y "temp\list.txt" "temp\list2.txt">nul
support\sfk filter -spat "temp\list.txt" ++"/download\x22" ++"%neekname%-rev" -rep _"/download\x22"__ -rep _*"/"__ -rep _".zip*"__ -rep _"*files/"__ -rep _%neekname%-rev__ -rep _\x2528_\x28_ -rep _\x2529_\x29_ -rep _\x2520_\x20_ -rep _\x253B_\x3B_ -rep _\x252C_\x2C_ -write -yes>nul
support\sfk filter -spat "temp\list.txt" -!"\x22" -!"n" -unique -no-empty-lines -no-blank-lines -write -yes>nul
:nowifi
::get local list
if not exist "temp\%neekname%\*.zip" goto:nolocallist
dir "temp\%neekname%\*.zip" /b /O:-N>>temp\list.txt
support\sfk filter "temp\list.txt" -rep _"%neekname%-rev"__ -rep _".zip"__ -write -yes>nul
support\sfk filter "temp\list.txt" -unique -write -yes>nul
:nolocallist
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" EQU "Y" goto:getcurrentrev
::------actual page start----------
:NEEKrevSelect2
::count # of folders in advance to set "mode"
setlocal ENABLEDELAYEDEXPANSION
SET neekTOTAL=0
if exist temp\list.txt for /f "delims=" %%i in (temp\list.txt) do set /a neekTOTAL=!neekTOTAL!+1
setlocal DISABLEDELAYEDEXPANSION
if /i "%neekTOTAL%" EQU "0" (echo Unable to connect to the internet and no %neekname% versions saved locally) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (set neekrev=B) & (goto:back)
Set neekrev=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the version of %neekname% you would like to build:
echo.
echo.
set RevCount=0
set FeaturedTag=
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processNEEKlist %%A
goto:quickskip
:processNEEKlist
set CurrentRev=%*
set /a RevCount=%RevCount%+1
if not exist temp\list2.txt goto:nofeaturedcheck
findStr /I /C:"%CurrentRev%" "temp\list2.txt" >nul
IF ERRORLEVEL 1 (set FeaturedTag=) else (set FeaturedTag= - Featured)
:nofeaturedcheck
if not exist "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" echo %RevCount% = %CurrentRev% (hosted online)%FeaturedTag%
if exist "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" echo %RevCount% = %CurrentRev%%FeaturedTag%
goto:EOF
:quickskip
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p neekrev= Enter Selection Here:
if /i "%neekrev%" EQU "M" goto:MENU
:back
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceWiz
if /i "%neekrev%" NEQ "B" goto:NotAbstinenceWiz
if /i "%FIRMSTART%" EQU "4.3" goto:WPAGE3C
if /i "%FIRMSTART%" EQU "o" goto:WPAGE3C
goto:WPAGE2
:NotAbstinenceWiz
if /i "%neekrev%" EQU "B" goto:SNKPAGE1
if "%neekrev%"=="" goto:badkey
if %neekrev% LSS 1 goto:badkey
if /i %neekrev% GTR %RevCount% goto:badkey
:getcurrentrev
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:cmdskip
if "%neekrev%"=="" goto:quickskip2
:cmdskip
::----get selected %currentrev%----
set RevCount2=0
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist2 %%A
goto:quickskip2
:processlist2
set CurrentRev=%*
set /a RevCount2=%RevCount2%+1
if /i "%RevCount2%" EQU "%neekrev%" goto:quickskip2
goto:EOF
:quickskip2
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:cmdskip
if /i "%AbstinenceWiz%" EQU "Y" goto:DOWNLOAD
goto:SNEEKINSTALLER
:cmdskip
goto:SNKPAGE2
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:NEEKrevSelect2
::...................................SNEEK Page - DML rev Selection...............................
:CurrentDMLRevSelect
::DISABLED
goto:%AfterDMLRevSelect%
if exist temp\list.txt del temp\list.txt>nul
if exist temp\list2.txt del temp\list2.txt>nul
::set googlecode=diosmioslite
::echo Checking which DML versions are hosted online...
::get all list
::start /min /wait support\wget --no-check-certificate -N "http://code.google.com/p/diosmioslite/downloads/list?can=1"
::if exist list* (move /y list* temp\list.txt>nul) else (goto:nowifi)
::copy /y "temp\list.txt" "temp\list2.txt">nul
::support\sfk filter -spat "temp\list.txt" ++"diosmioslite.googlecode.com/files/" ++"diosmioslitesv" ++".wad" -!zip -rep _*"/"__ -rep _".wad*"__ -rep _"*files/"__ -rep _diosmioslitesv__ -rep _\x2528_\x28_ -rep _\x2529_\x29_ -rep _\x2520_\x20_ -rep _\x253B_\x3B_ -rep _\x252C_\x2C_ -write -yes>nul
::get featured list
::support\sfk filter -spat "temp\list2.txt" ++"diosmioslite.googlecode.com/files/" ++"diosmioslitesv" ++".wad', 'Featured" -rep _*"/"__ -write -yes>nul
::support\sfk filter -spat "temp\list2.txt" -+"Featured" -!zip -!DMLST.wad -rep _".wad*"__ -rep _"*files/"__ -rep _diosmioslitesv__ -rep _\x2528_\x28_ -rep _\x2529_\x29_ -rep _\x2520_\x20_ -rep _\x253B_\x3B_ -rep _\x252C_\x2C_ -write -yes>nul
:nowifi
::get local list
if not exist "temp\DML\*.wad" goto:nolocallist
dir "temp\DML\*.wad" /b /O:-N>>temp\list.txt
::support\sfk filter "temp\list.txt" -rep _"diosmioslitesv"__ -rep _".wad"__ -write -yes>nul
support\sfk filter "temp\list.txt" -rep _".wad"__ -write -yes>nul
support\sfk filter "temp\list.txt" -unique -write -yes>nul
:nolocallist
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" EQU "Y" goto:getCurrentDMLRev
::------actual page start----------
:CurrentDMLRevSelect2
::count # of folders in advance to set "mode"
setlocal ENABLEDELAYEDEXPANSION
SET DMLTOTAL=0
if exist temp\list.txt for /f "delims=" %%i in (temp\list.txt) do set /a DMLTOTAL=!DMLTOTAL!+1
setlocal DISABLEDELAYEDEXPANSION
::if /i "%DMLTOTAL%" EQU "0" (echo No DML versions saved locally) & (@ping 127.0.0.1 -n 5 -w 1000> nul) & (goto:%B4DMLRevSelect%)
Set DMLrev=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the version of DML (or Dios Mios) you would like to install:
echo.
echo To add versions to the below list, download them from here:
echo http://code.google.com/p/diosmios/wiki/Downloads
echo Then save them to ModMii's "temp\DML" folder
if not exist temp\DML mkdir temp\DML
echo.
echo.
echo * DML requires either Sneek+DI r157+ or NeoGamma R9 beta 55+
echo.
::echo * DML Debug Mode saves logs to the SD Card.
echo * USB Gecko debug can only be enabled by compiling the source manually.
echo.
set RevCount=0
if not exist temp\list.txt goto:quickskip
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processDMLlist %%A
goto:quickskip
:processDMLlist
set CurrentDMLRev=%*
set /a RevCount=%RevCount%+1
::if not exist temp\list2.txt goto:nofeaturedcheck
::findStr /I /C:"%CurrentDMLRev%" "temp\list2.txt" >nul
::IF ERRORLEVEL 1 (set FeaturedTag=) else (set FeaturedTag= - Featured)
:nofeaturedcheck
::if not exist "temp\DML\diosmioslitesv%CurrentDMLRev%.wad" echo %RevCount% = diosmioslitesv%CurrentDMLRev% (hosted on google code)%FeaturedTag%
::if exist "temp\DML\diosmioslitesv%CurrentDMLRev%.wad" echo %RevCount% = diosmioslitesv%CurrentDMLRev%%FeaturedTag%
echo %RevCount% = %CurrentDMLRev%
goto:EOF
:quickskip
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p DMLrev= Enter Selection Here:
if /i "%DMLrev%" EQU "M" goto:MENU
if /i "%DMLrev%" EQU "B" (set DML=) & (set CurrentDMLRev=) & (goto:%B4DMLRevSelect%)
if "%DMLrev%"=="" goto:badkey
if %DMLrev% LSS 1 goto:badkey
if /i %DMLrev% GTR %RevCount% goto:badkey
:getCurrentDMLRev
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:cmdskip
if "%DMLrev%"=="" goto:quickskip
:cmdskip
::----get selected %CurrentDMLRev%----
set RevCount2=0
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist3 %%A
goto:quickskip
:processlist3
set CurrentDMLRev=%*
set /a RevCount2=%RevCount2%+1
if /i "%RevCount2%" EQU "%DMLrev%" goto:quickskip
goto:EOF
:quickskip
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" EQU "Y" goto:skipDMLcmd
goto:%AfterDMLRevSelect%
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CurrentDMLRevSelect2
::...................................SNEEK Page2 - SNEEK TYPE...............................
:SNKPAGE2
set SNEEKTYPE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" NEQ "2" echo What type of SNEEK would you like to install?
if /i "%SNEEKSELECT%" EQU "2" echo What type of SNEEK would you like to build an emulated NAND for?
echo.
echo.
if /i "%SNEEKSELECT%" NEQ "1" echo Note: NANDs built for any type of SNEEK work with any other type of SNEEK.
if /i "%SNEEKSELECT%" NEQ "1" echo Also, ANY region Wii can use ANY region emulated NAND
if /i "%SNEEKSELECT%" NEQ "1" echo.
echo.
echo UD = UNEEK+DI
echo * Emulated Wii nand/memory is on FAT32 External Hard Drive
echo * Load Wii games off your FAT32 External Hard Drive
echo * You can load apps off an SD Card via the Homebrew Channel
echo * DVD-Drive access is disabled for games while running UNEEK+DI
echo but can be used in apps (ie. WiiXplorer)
echo.
echo SD = SNEEK+DI
echo * Emulated Wii nand/memory is on SD Card
echo * Load Wii games off your FAT32 External Hard Drive
echo * Load GameCube games off your SD Card using DML
echo * You can load apps off a FAT32 USB HDD via the Homebrew Channel
echo * DVD-Drive access is disabled for games while running SNEEK+DI
echo but can be used in apps (ie. WiiXplorer)
echo.
echo U = UNEEK
echo * Emulated Wii nand/memory is on FAT32 External Hard Drive
echo * You cannot load any games off your Hard Drive
echo * You can load apps off an SD Card via the Homebrew Channel
echo * DVD-Drive access is enabled
echo * Backup disc loading requires DarkCorp installed on emulated nand
echo (Newer Wii's have a DVD-Drive that prevents backup disc loading)
echo.
echo S = SNEEK
echo * Emulated Wii nand/memory is on SD Card
::echo * You can load ONE game at a time off your FAT32 External Hard Drive
echo * You cannot load any games off your Hard Drive
echo * You can load apps off a FAT32 USB HDD via the Homebrew Channel
echo * DVD-Drive access is enabled
echo * Backup disc loading requires DarkCorp installed on emulated nand
echo (Newer Wii's have a DVD-Drive that prevents backup disc loading)
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p SNEEKTYPE= Enter Selection Here:
if /i "%SNEEKTYPE%" NEQ "B" goto:notback
if /i "%SNEEKSELECT%" EQU "1" goto:NEEKrevSelect2
if /i "%SNEEKSELECT%" EQU "3" goto:NEEKrevSelect2
if /i "%AbstinenceWiz%" EQU "Y" goto:NEEKrevSelect2
goto:SNKPAGE1
:notback
if /i "%SNEEKTYPE%" EQU "M" goto:MENU
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceWiz
if /i "%SNEEKTYPE%" EQU "U" (set BACKB4DRIVE=SNKPAGE2) & (goto:DriveChange)
if /i "%SNEEKTYPE%" EQU "UD" (set BACKB4DRIVE=SNKPAGE2) & (goto:DriveChange)
:NotAbstinenceWiz
if /i "%SNEEKTYPE%" EQU "S" set BACKB4DRIVE=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "SD" set BACKB4DRIVE=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "U" set BACKB4DRIVE=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "UD" set BACKB4DRIVE=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "SD" goto:DRIVECHANGE
if /i "%SNEEKTYPE%" EQU "S" goto:DRIVECHANGE
::if only building nand, no need to set drive, only driveU
if /i "%SNEEKSELECT%" EQU "2" goto:skip
if /i "%SNEEKTYPE%" EQU "UD" goto:DRIVECHANGE
if /i "%SNEEKTYPE%" EQU "U" goto:DRIVECHANGE
goto:skip2
:skip
if /i "%SNEEKTYPE%" EQU "U" set BACKB4DRIVEU=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "U" goto:DRIVEUCHANGE
if /i "%SNEEKTYPE%" EQU "UD" set BACKB4DRIVEU=SNKPAGE2
if /i "%SNEEKTYPE%" EQU "UD" goto:DRIVEUCHANGE
:skip2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE2
::...................................SNEEK Page3 - SNEEK REGION...............................
:SNKPAGE3
if /i "%SNEEKTYPE:~0,1%" EQU "S" set "nandpath=%DRIVE%"
if /i "%SNEEKTYPE:~0,1%" EQU "U" set "nandpath=%DRIVEU%"
set DITYPE=off
if /i "%SNEEKTYPE%" EQU "UD" set DITYPE=on
if /i "%SNEEKTYPE%" EQU "SD" set DITYPE=on
set SNKREGION=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo What Region would you like to make your emulated NAND?
echo.
echo.
echo.
echo Note: If you want your wiimotes be synced up to your real NAND
echo and your emulated NAND simultaneously, then you must choose
echo the real region of your Wii
echo.
if /i "%neek2o%" EQU "ON" goto:skip
support\sfk echo -spat \x20 \x20 [%redtext%] Warning:[def] JPN\Korean NANDs specifically do NOT have Region Free hacks
echo enabled by default. This only applies to WiiWare/VC Games,
echo the DI/Game Menu can still play Wii Games of All Regions.
echo However, you can still enable region free hacks using Priiloader.
:skip
echo.
echo.
echo U = USA
echo E = Euro (PAL)
echo J = JPN
echo K = Korean
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKREGION= Enter Selection Here:
if /i "%SNKREGION%" EQU "B" goto:%B4SNKPAGE3%
if /i "%SNKREGION%" EQU "M" goto:MENU
if /i "%SNKREGION%" EQU "u" set SNKREGION=U
if /i "%SNKREGION%" EQU "e" set SNKREGION=E
if /i "%SNKREGION%" EQU "j" set SNKREGION=J
if /i "%SNKREGION%" EQU "k" set SNKREGION=K
if /i "%SNKREGION%" EQU "U" set defaultserial=LU521175683
if /i "%SNKREGION%" EQU "E" set defaultserial=LEH133789940
if /i "%SNKREGION%" EQU "J" set defaultserial=LJM101175683
if /i "%SNKREGION%" EQU "K" set defaultserial=LJM101175683
set serialdigits=11 or 12
::if /i "%SNKREGION%" EQU "U" (set serialdigits=11 or 12) else (set serialdigits=12)
if /i "%SNKREGION%" EQU "U" goto:SNKPAGE4
if /i "%SNKREGION%" EQU "E" goto:SNKPAGE4
if /i "%SNKREGION%" EQU "J" goto:SNKPAGE4
if /i "%SNKREGION%" EQU "K" goto:SNKPAGE4
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE3
::...................................SNEEK Page4 - SNEEK VERSION...............................
:SNKPAGE4
set SNKVERSION=
::If region is USA and building NAND for DI, force 4.2 and go to next page
::if /i "%DITYPE%" EQU "OFF" goto:skip
::if /i "%SNKREGION%" EQU "U" set SNKVERSION=4.2
::if /i "%SNKREGION%" EQU "U" goto:SNKPAGE5
:::skip
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo What System Menu Version would you like your SNEEK emulated NAND to be?
echo.
echo.
echo.
if /i "%neek2o%" EQU "ON" goto:skip
if /i "%SNKREGION%" EQU "U" support\sfk echo -spat \x20 \x20 [%redtext%] Warning:[def] 4.2U/4.1U specifically do NOT have Region Free hacks enabled by
if /i "%SNKREGION%" EQU "U" echo default. This only applies to WiiWare/VC Games (aka Channels),
if /i "%SNKREGION%" EQU "U" echo the DI/Game Menu can still play Wii Games of All Regions.
if /i "%SNKREGION%" EQU "U" echo However, you can still enable region free hacks using Priiloader.
:skip
echo.
echo.
echo.
echo 4.3 = 4.3
echo 4.2 = 4.2
echo 4.1 = 4.1
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKVERSION= Enter Selection Here:
if /i "%SNKVERSION%" EQU "M" goto:MENU
if /i "%SNKVERSION%" EQU "B" goto:SNKPAGE3
if /i "%SNKVERSION%" EQU "4.3" goto:SNKPAGE4a
if /i "%SNKVERSION%" EQU "4.2" goto:SNKPAGE4a
if /i "%SNKVERSION%" EQU "4.1" goto:SNKPAGE4a
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4
::...................................SNEEK Page4a - postLoader Channel...............................
:SNKPAGE4a
set SNKPLC=
set SNKOHBC=N
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo Would you like the Open Homebrew Channel and a postLoader Forwarder
echo Channel on your emulated NAND?
echo.
echo.
echo postLoader aims to replace the Homebrew Channel, Forwarders,
echo USB-Loaders with emulated NAND support, etc.
echo.
echo It used to be impossible to install the latest Homebrew Channel
echo to emulated nands so this gained much popularity as an alternative.
echo.
echo Today you can use the Open Homebrew Channel by FIX94 on your EmuNAND.
echo.
echo.
echo.
echo Y = Yes, install both
echo O = Open Homebrew Channel only
echo P = postLoader Forwarder Channel only
echo.
echo N = None
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKPLC= Enter Selection Here:
if /i "%SNKPLC%" NEQ "B" goto:miniskip
if /i "%SNEEKSELECT%" EQU "5" (goto:SNKNANDSELECTOR) else (goto:SNKPAGE4)
:miniskip
if /i "%SNKPLC%" EQU "M" goto:MENU
if /i "%SNKPLC%" EQU "N" goto:SNKPAGE4a2
if /i "%SNKPLC%" EQU "Y" (set SNKOHBC=Y) & (goto:SNKPAGE4a2)
if /i "%SNKPLC%" EQU "P" (set SNKPLC=Y) & (goto:SNKPAGE4a2)
if /i "%SNKPLC%" EQU "O" (set SNKOHBC=Y) & (set SNKPLC=N) & (goto:SNKPAGE4a2)
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4a
::...................................SNEEK Page4a2 - cIOS...............................
:SNKPAGE4a2
set SNKCIOS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo Would you like to install cIOS249 rev14 to your emulated NAND?
echo.
echo.
echo Some apps that require a cIOS will only work on s\uneek with cIOS rev14.
echo For example, SaveGame Manager GX will work on s\uneek with cIOS rev14.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKCIOS= Enter Selection Here:
if /i "%SNKCIOS%" EQU "B" goto:SNKPAGE4a
if /i "%SNKCIOS%" EQU "M" goto:MENU
if /i "%SNKCIOS%" EQU "Y" goto:SNKPAGE4a3
if /i "%SNKCIOS%" EQU "N" goto:SNKPAGE4a3
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4a2
::...................................SNEEK Page4a3 - cBC...............................
:SNKPAGE4a3
set SNKcBC=
if /i "%AbstinenceWiz%" EQU "Y" goto:SNKPAGE4b
if /i "%SNEEKSELECT%" EQU "5" set sneektype=SD
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
if /i "%SNEEKTYPE%" EQU "SD" (echo Would you like DML or NMM on your emulated NAND?) else (echo Would you like NMM on your emulated NAND?)
echo.
echo.
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" echo DML is installed to real NAND and accessed via an emulated NAND.
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" echo DML (Dios Mios Lite) is a tool which allows you to run Gamecube games
if /i "%SNEEKTYPE%" EQU "SD" echo from an SD Card. Compatability is not 100% and it only works with
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (for now). For best results your SD card should be formatted
if /i "%SNEEKTYPE%" EQU "SD" echo using 64KB sector sizes when running DML.
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" echo DML requires either Sneek+DI r157+ or NeoGamma R9 beta 55+
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" echo.
echo NMM (No More Memory-Cards) redirects all GameCube Memory Card access
echo to the SD card. This allow saving\loading GameCube game saves
echo without a GC Memory Card.
echo.
echo.
if /i "%SNEEKTYPE%" EQU "SD" echo Note: NMM and DML cannot both be installed at the same time
echo.
if /i "%SNEEKSELECT%" EQU "5" echo Note: DML currently only works when using SNEEK+DI
echo.
echo.
if /i "%SNEEKSELECT%" NEQ "5" goto:nowarning
if /i "%BCTYPE%" EQU "BC" goto:nowarning
if /i "%BCTYPE%" EQU "NONE" goto:nowarning
if /i "%BCTYPE%" EQU "NMM" support\sfk echo -spat \x20 \x20 [%yellowtext%] WARNING: Answering anything other than %BCtype% will uninstall %BCtype%
if /i "%BCTYPE%" EQU "DML" support\sfk echo -spat \x20 \x20 [%yellowtext%] Outdated DML will be uninstalled from the Emulated NAND
if /i "%BCTYPE%" EQU "DML" support\sfk echo -spat \x20 \x20 [%yellowtext%] as newer versions need to be installed to the real NAND
:nowarning
echo.
if /i "%SNEEKTYPE%" EQU "SD" echo DML = DML
if /i "%SNEEKTYPE%" EQU "SD" echo.
if /i "%SNEEKTYPE%" EQU "SD" (echo NMM = NMM) else (echo Y = Yes)
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p SNKcBC= Enter Selection Here:
if /i "%SNKcBC%" EQU "B" goto:SNKPAGE4a2
if /i "%SNKcBC%" EQU "M" goto:MENU
if /i "%SNKcBC%" EQU "N" goto:SNKPAGE4b
if /i "%SNEEKTYPE%" EQU "SD" goto:skip
if /i "%SNKcBC%" EQU "Y" (set SNKcBC=NMM) & (goto:SNKPAGE4b)
:skip
if /i "%SNEEKTYPE%" NEQ "SD" goto:skip
if /i "%SNKcBC%" EQU "NMM" goto:SNKPAGE4b
if /i "%SNKcBC%" EQU "DML" (set B4DMLRevSelect=SNKPAGE4a3) & (set AfterDMLRevSelect=SNKPAGE4b) & (goto:CurrentDMLRevSelect)
::if /i "%SNKcBC%" EQU "DML" goto:SNKPAGE4b
:skip
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4a3
::...................................SNEEK Page4b - Priiloader For SNEEK...............................
:SNKPAGE4b
set SNKPRI=
if /i "%SNEEKSELECT%" EQU "5" (set sneektype=) else (goto:nocheck)
if "%SMAPP%"=="" goto:SNKPAGE4c
:nocheck
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo Would you like Priiloader (and System Menu Hacks) on your emulated NAND?
echo.
echo Doing this will allow you to enable system menu hacks on your emulated NAND.
echo It will also permit autobooting sneek to apps of your choice (ie. WiiFlow).
echo.
echo.
echo Note: neek2o rev93-96 will bypass Priiloader if detected on EmuNAND.
echo.
echo Note: to access Priiloader on your emulated NAND, hold reset just as
echo your emulated NAND is booting up.
echo.
echo.
if /i "%SNEEKSELECT%" NEQ "5" goto:tinyskip
if /i "%PRIIFOUND%" EQU "YES" support\sfk echo -spat \x20 \x20 [%yellowtext%]WARNING: Priiloader was detected on your EmuNAND. Answering No will remove it.
if /i "%PRIIFOUND%" EQU "YES" support\sfk echo -spat \x20 \x20 [%yellowtext%] \x20 \x20 \x20 \x20 Answering Yes will retain your CURRENT Priiloader installation.
echo.
if /i "%PRIIFOUND%" EQU "YES" support\sfk echo -spat \x20 \x20 [%yellowtext%] \x20 \x20 \x20 \x20 To update your Priiloader installation, answer No to remove Priiloader,
if /i "%PRIIFOUND%" EQU "YES" support\sfk echo -spat \x20 \x20 [%yellowtext%] \x20 \x20 \x20 \x20 then repeat this process a second time and answer Yes to add it back.
:tinyskip
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKPRI= Enter Selection Here:
if /i "%SNKPRI%" NEQ "B" goto:notback
if /i "%AbstinenceWiz%" EQU "Y" goto:SNKPAGE4a2
goto:SNKPAGE4a3
:notback
if /i "%SNKPRI%" EQU "M" goto:MENU
if /i "%SNKPRI%" EQU "Y" goto:SNKPAGE4c
if /i "%SNKPRI%" EQU "N" goto:SNKPAGE4c
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4b
::...................................SNEEK Page4c - WiiFlow...............................
:SNKPAGE4c
set SNKFLOW=
::if /i "%SNEEKSELECT%" EQU "5" goto:tinyskip
::::skip this page if sneektype not uneek or uneek+di
::if /i "%SNEEKTYPE:~0,1%" EQU "S" (set SNKFLOW=N) & (goto:SNKPAGE4d)
:::tinyskip
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo Would you like a WiiFlow Forwarder Channel on your emulated NAND?
echo.
echo.
if /i "%SNKPRI%" EQU "Y" echo Note: WiiFlow Forwarder dol will also be added as Priiloader's
if /i "%SNKPRI%" EQU "Y" echo installed file. Priiloader's autoboot settings will still need
if /i "%SNKPRI%" EQU "Y" echo to be changed if you would like your emulated nand to autoboot
if /i "%SNKPRI%" EQU "Y" echo the installed file.
if /i "%SNKPRI%" EQU "Y" echo.
if /i "%SNKPRI%" EQU "Y" echo.
echo *WiiFlow is USB-Loader NEEK that is a visually appealing alternative
echo to loading Wii games\channels via the emulated System Menu
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKFLOW= Enter Selection Here:
if /i "%SNKFLOW%" NEQ "B" goto:notback
if /i "%SNEEKSELECT%" NEQ "5" goto:SNKPAGE4b
if "%SMAPP%"=="" (goto:SNKPAGE4a3) else (goto:SNKPAGE4b)
:notback
if /i "%SNKFLOW%" EQU "M" goto:MENU
if /i "%SNKFLOW%" EQU "Y" goto:SNKPAGE4d
if /i "%SNKFLOW%" EQU "N" goto:SNKPAGE4d
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4c
::...................................SNEEK Page4d - Switch2UNEEK...............................
:SNKPAGE4d
set SNKS2U=
if /i "%AbstinenceWiz%" EQU "Y" (set SNKS2U=N) & (goto:SNKPAGE5)
if /i "%SNEEKSELECT%" EQU "5" (set SNKS2U=N) & (goto:SNKPAGE5)
::skip this page if neek2o is enabled
if /i "%neek2o%" EQU "on" (set SNKS2U=N) & (goto:SNKPAGE5)
::skip this page if sneektype not uneek or uneek+di
if /i "%SNEEKTYPE:~0,1%" EQU "S" (set SNKS2U=N) & (goto:SNKPAGE5)
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo Would you like to use Switch2Uneek?
echo.
echo.
echo Switch2Uneek is a utility to help you easily switch between
echo your Emulated Uneek Nand and your Real Nand.
echo.
echo.
echo If you answer "Y", you must access UNEEK by launching switch2uneek
echo from the Homebrew Channel. Alternatively, can use YAWM ModMii Edition
echo to install the switch2uneek forwarder channel that will be saved to
echo your SD card.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKS2U= Enter Selection Here:
if /i "%SNKS2U%" EQU "B" goto:SNKPAGE4c
if /i "%SNKS2U%" EQU "M" goto:MENU
if /i "%SNKS2U%" EQU "Y" goto:SNKPAGE5
if /i "%SNKS2U%" EQU "N" goto:SNKPAGE5
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE4d
::...................................SNEEK Page5 - SNEEK SERIAL...............................
:SNKPAGE5
if /i "%SNEEKSELECT%" NEQ "5" goto:nocheck
set SNKSERIAL=
if "%SMAPP%"=="" (goto:WPAGE20) else (goto:nonandcheck)
:nocheck
if /i "%SNEEKTYPE:~0,1%" EQU "S" set "nandpath=%DRIVE%"
if /i "%SNEEKTYPE:~0,1%" EQU "U" set "nandpath=%DRIVEU%"
if /i "%neek2o%" EQU "ON" goto:DOIT
if /i "%SNKS2U%" EQU "N" goto:quickskip
:DOIT
SET NANDcount=0
if /i "%SNKREGION%" EQU "U" set nandregion=us
if /i "%SNKREGION%" EQU "E" set nandregion=eu
if /i "%SNKREGION%" EQU "J" set nandregion=jp
if /i "%SNKREGION%" EQU "K" set nandregion=kr
if not exist "%nandpath%\nands\pl_%nandregion%" (set "nandpath=%nandpath%\nands\pl_%nandregion%") & (goto:quickskip)
:NANDname
SET /a NANDcount=%NANDcount%+1
if not exist "%nandpath%\nands\pl_%nandregion%%NANDcount%" (set "nandpath=%nandpath%\nands\pl_%nandregion%%NANDcount%") & (goto:quickskip)
goto:NANDname
:quickskip
set nandexist=no
if exist "%nandpath%"\title set nandexist=yes
if exist "%nandpath%"\ticket set nandexist=yes
if exist "%nandpath%"\sys set nandexist=yes
if exist "%nandpath%"\shared1 set nandexist=yes
:nonandcheck
if /i "%SNEEKSELECT%" EQU "5" (set settingtxtExist=yes) else (set settingtxtExist=no)
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%SNEEKSELECT%" EQU "5" (echo EMULATED NAND MODIFIER) else (echo EMULATED NAND BUILDER)
echo.
echo.
echo What Serial Number Would you like to use to create setting.txt?
echo.
echo.
if /i "%settingtxtExist%" EQU "yes" support\sfk echo -spat \x20 [%redtext%] setting.txt already exists in:
if /i "%settingtxtExist%" EQU "yes" echo "%nandpath%"
if /i "%settingtxtExist%" EQU "yes" support\sfk echo -spat \x20 [%redtext%] Leave the selection blank to keep using this setting.txt
echo.
echo.
echo Enter your serial number now
echo.
echo Example: %defaultserial%
echo.
echo.
echo.
echo D = Default Serial %defaultserial%
echo.
echo.
echo Note: You can change this later using ModMii's EmuNAND Modifer
echo.
echo.
echo Note: If you want your emulated NAND to have internet access
echo you should use the serial for your Wii
echo (or use the setting.txt from your NAND Dump)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p SNKSERIAL= Enter Selection Here:
if /i "%SNKSERIAL%" EQU "M" goto:MENU
if /i "%SNKSERIAL%" NEQ "B" goto:quickskip
if /i "%SNEEKSELECT%" EQU "5" goto:SNKPAGE4c
if /i "%SNEEKTYPE:~0,1%" EQU "S" goto:SNKPAGE4c
if /i "%AbstinenceWiz%" EQU "Y" goto:SNKPAGE4c
if /i "%neek2o%" EQU "ON" (goto:SNKPAGE4c) else (goto:SNKPAGE4d)
:quickskip
if /i "%SNKSERIAL%" EQU "D" set SNKSERIAL=%defaultserial%
if /i "%settingtxtExist%" EQU "yes" goto:settingsexist
IF "%SNKSERIAL%"=="" set SNKSERIAL=9999999999999
goto:skip
:settingsexist
IF "%SNKSERIAL%"=="" set SNKSERIAL=current
if /i "%SNKSERIAL%" EQU "current" goto:WPAGE20
:skip
::limit user input to X# of digits
if "%SNKSERIAL:~2%"=="" (goto:badkey)
if "%SNKSERIAL:~3%"=="" (goto:badkey)
if "%SNKSERIAL:~4%"=="" (goto:badkey)
if "%SNKSERIAL:~5%"=="" (goto:badkey)
if "%SNKSERIAL:~6%"=="" (goto:badkey)
if "%SNKSERIAL:~7%"=="" (goto:badkey)
if "%SNKSERIAL:~8%"=="" (goto:badkey)
if "%SNKSERIAL:~9%"=="" (goto:badkey)
if "%SNKSERIAL:~10%"=="" (goto:badkey)
if /i "%SNKREGION%" EQU "U" goto:skip
::if "%SNKSERIAL:~11%"=="" (goto:badkey)
:skip
if not "%SNKSERIAL:~12%"=="" (goto:badkey)
::next page
goto:WPAGE20
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKPAGE5
::...................................SNEEK Nand Builder Confirmation...............................
:SNKNANDCONFIRM
set SNKNANDCONFIRM=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%AbstinenceWiz%" NEQ "Y" goto:notabstinence
if /i "%FIRMSTART%" NEQ "o" echo Abstinence Wizard for %FIRMSTART%%REGION%
if /i "%FIRMSTART%" EQU "o" echo Abstinence Wizard for ^<2.2%REGION%
echo.
:notabstinence
if /i "%SNEEKSELECT%" EQU "5" echo You are about to make the following changes to your Emulated NAND
if /i "%SNEEKSELECT%" NEQ "3" goto:notalsoinstalling
if /i "%SNEEKTYPE%" EQU "SD" echo You are about to install %neekname%: SNEEK+DI Rev%CurrentRev% and build a %SNKVERSION%%SNKREGION% Emulated Nand
if /i "%SNEEKTYPE%" EQU "UD" echo You are about to install %neekname%: UNEEK+DI Rev%CurrentRev% and build a %SNKVERSION%%SNKREGION% Emulated Nand
if /i "%SNEEKTYPE%" EQU "S" echo You are about to install %neekname%: SNEEK Rev%CurrentRev% and build a %SNKVERSION%%SNKREGION% Emulated Nand
if /i "%SNEEKTYPE%" EQU "U" echo You are about to install %neekname%: UNEEK Rev%CurrentRev% and build a %SNKVERSION%%SNKREGION% Emulated Nand
echo.
if /i "%neek2o%" EQU "on" echo neek2o Enabled (can be changed in options)
if /i "%neek2o%" NEQ "on" echo neek2o Disabled (can be changed in options)
if /i "%SSD%" EQU "on" echo SNEEK and SNEEK+DI SD Access Enabled (can be changed in options)
if /i "%SSD%" NEQ "on" echo SNEEK and SNEEK+DI SD Access Disabled (can be changed in options)
goto:skip
:notalsoinstalling
if /i "%SNEEKSELECT%" EQU "2" echo You are about to build a %SNKVERSION%%SNKREGION% Emulated Nand
if /i "%SNEEKSELECT%" NEQ "1" goto:skip
if /i "%SNEEKTYPE%" EQU "SD" echo You are about to build SNEEK+DI Rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "UD" echo You are about to build UNEEK+DI Rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "U" echo You are about to build UNEEK Rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "S" echo You are about to build SNEEK Rev%CurrentRev%
echo.
if /i "%neek2o%" EQU "on" echo neek2o Enabled (can be changed in options)
if /i "%neek2o%" NEQ "on" echo neek2o Disabled (can be changed in options)
if /i "%SSD%" EQU "on" echo SNEEK and SNEEK+DI SD Access Enabled (can be changed in options)
if /i "%SSD%" NEQ "on" echo SNEEK and SNEEK+DI SD Access Disabled (can be changed in options)
echo.
echo.
echo.
echo.
goto:nonandinstallation
:skip
if not exist temp\WAD mkdir temp\WAD
echo.
echo.
echo Install WADs from: "temp\WAD\"
echo to Emulated Nand: "%nandpath%\"
echo.
IF not "%addwadfolder%"=="" echo Install wads from custom folder: "%addwadfolder%\"
IF "%addwadfolder%"=="" (echo A = Add custom folder of wads to install to the emulated NAND) else (echo R = Remove custom folder of wads from emulated NAND)
echo.
echo.
IF "%addwadfolder%"=="" (set emuitems=0) else (set emuitems=1)
set emuwadcount=%emuitems%
::if /i "%SNEEKSELECT%" NEQ "5" goto:skipthis
if /i "%SNKSERIAL%" NEQ "current" SET /a emuitems=%emuitems%+1
if /i "%SNKSERIAL%" NEQ "current" (echo * setting.txt will be created using this serial number: %SNKSERIAL%) else (echo * Existing setting.txt will be kept)
echo.
:skipthis
if /i "%SNEEKSELECT%" NEQ "5" goto:skipthis
if /i "%nswitchFound%" EQU "No" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%nswitchFound%" EQU "No" echo * Install/Update nSwitch Channel
if /i "%nswitchFound%" EQU "No" echo.
:skipthis
if /i "%SNKPLC%" EQU "Y" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKPLC%" EQU "Y" echo * Install postLoader Channel
if /i "%SNKPLC%" EQU "Y" echo.
if /i "%SNKOHBC%" EQU "Y" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKOHBC%" EQU "Y" echo * Install Homebrew Channel
if /i "%SNKOHBC%" EQU "Y" echo.
if /i "%SNKCIOS%" EQU "Y" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKCIOS%" EQU "Y" echo * Install cIOS249 rev14
if /i "%SNKCIOS%" EQU "Y" echo.
if /i "%SNEEKSELECT%" NEQ "5" goto:skipthis
if /i "%BCtype%" EQU "BC" goto:skipthis
if /i "%BCtype%" EQU "NONE" goto:skipthis
if /i "%SNKcBC%" EQU "N" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKcBC%" EQU "N" echo * Uninstall %BCTYPE%
if /i "%SNKcBC%" EQU "N" echo.
:skipthis
if /i "%BCtype%" EQU "NMM" goto:noNMM
if /i "%SNKcBC%" EQU "NMM" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKcBC%" EQU "NMM" echo * Install NMM (No More Memory-Cards)
if /i "%SNKcBC%" EQU "NMM" echo.
:noNMM
if /i "%BCtype%" EQU "DML" goto:noDML
if /i "%SNKcBC%" EQU "DML" SET /a emuitems=%emuitems%+1
::if /i "%SNKcBC%" EQU "DML" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKcBC%" EQU "DML" echo * Install DML (Dios Mios Lite) v1.3 to Real NAND
if /i "%SNKcBC%" EQU "DML" echo.
:noDML
set uninstallprii=
if /i "%SNEEKSELECT%" NEQ "5" goto:not5
if /i "%PRIIFOUND%" EQU "YES" (goto:priifound) else (goto:not5)
:priifound
if /i "%SNKPRI%" EQU "Y" echo * Priiloader already Installed
if /i "%SNKPRI%" EQU "Y" echo.
if /i "%SNKPRI%" EQU "N" SET /a emuitems=%emuitems%+1
if /i "%SNKPRI%" EQU "N" echo * Uninstall Priiloader
if /i "%SNKPRI%" EQU "N" echo.
if /i "%SNKPRI%" EQU "N" set uninstallprii=yes
goto:miniskip
:not5
if /i "%SNKPRI%" EQU "Y" SET /a emuitems=%emuitems%+1
if /i "%SNKPRI%" EQU "Y" echo * Install Priiloader
if /i "%SNKPRI%" EQU "Y" echo.
:miniskip
if /i "%SNKFLOW%" EQU "Y" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKFLOW%" EQU "Y" echo * Install WiiFlow
if /i "%SNKFLOW%" EQU "Y" echo.
if /i "%SNKS2U%" EQU "Y" (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%SNKS2U%" EQU "Y" echo * Install Switch2Uneek
if /i "%SNKS2U%" EQU "Y" echo.
if /i "%ThemeSelection%" NEQ "N" SET /a emuitems=%emuitems%+1
if /i "%ThemeSelection%" EQU "R" echo * Install Dark Wii Red Theme
if /i "%ThemeSelection%" EQU "G" echo * Install Dark Wii Green Theme
if /i "%ThemeSelection%" EQU "BL" echo * Install Dark Wii Blue Theme
if /i "%ThemeSelection%" EQU "O" echo * Install Dark Wii Orange Theme
if /i "%ThemeSelection%" EQU "D" echo * Restore Original\Default Theme
if /i "%ThemeSelection%" NEQ "N" echo.
if /i "%PIC%" EQU "Y" (echo * Install Photo Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%NET%" EQU "Y" (echo * Install Internet Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%WEATHER%" EQU "Y" (echo * Install Weather Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%NEWS%" EQU "Y" (echo * Install News Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%MIIQ%" EQU "Y" (echo * Install Mii Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%Shop%" EQU "Y" (echo * Install Shopping Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
if /i "%Speak%" EQU "Y" (echo * Install Wii Speak Channel) & (SET /a emuitems=%emuitems%+1) & (SET /a emuwadcount=%emuwadcount%+1)
echo.
if /i "%nandexist%" EQU "yes" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%]WARNING: An emulated nand already exists in:
if /i "%nandexist%" EQU "yes" echo "%nandpath%"
if /i "%nandexist%" EQU "yes" support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%]Existing emulated nand will be Deleted\Replaced
:nonandinstallation
echo.
if /i "%SNEEKSELECT%" NEQ "5" goto:skip5
if /i "%emuitems%" NEQ "0" goto:skip5
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%yellowtext%] No changes to the Emulated NAND have been selected.
echo.
echo.
goto:noyes
:skip5
if /i "%AbstinenceWiz%" EQU "Y" (echo Y = Yes, Generate Guide and Begin Downloading) else (echo Y = Yes, do it now!)
if /i "%AbstinenceWiz%" EQU "Y" echo G = Generate Guide Only
:noyes
::echo.
::echo N = No
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p SNKNANDCONFIRM= Enter Selection Here:
if /i "%SNKNANDCONFIRM%" EQU "B" goto:%B4SNKCONFIRM%
if /i "%SNKNANDCONFIRM%" EQU "M" goto:MENU
::if /i "%SNKNANDCONFIRM%" EQU "N" goto:MENU
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceWiz
if /i "%SNKNANDCONFIRM%" EQU "G" (set secondrun=) & (set SETTINGS=G) & (goto:Download)
if /i "%SNKNANDCONFIRM%" EQU "Y" (set secondrun=) & (set SETTINGS=) & (goto:creditcheck)
:NotAbstinenceWiz
if /i "%SNEEKSELECT%" EQU "1" goto:skip5
if /i "%SNKNANDCONFIRM%" EQU "A" goto:addwadfolder
if /i "%SNKNANDCONFIRM%" EQU "R" (set addwadfolder=) & (goto:SNKNANDCONFIRM)
if /i "%SNEEKSELECT%" NEQ "5" goto:skip5
if /i "%emuitems%" EQU "0" goto:badkey
:skip5
if /i "%SNKNANDCONFIRM%" EQU "Y" goto:creditcheck
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKNANDCONFIRM
:creditcheck
::credit check removed, enjoy!
if /i "%AbstinenceWiz%" EQU "Y" goto:Download
if /i "%SNEEKSELECT%" EQU "1" goto:SNEEKINSTALLER
if /i "%SNEEKSELECT%" EQU "3" goto:SNEEKINSTALLER
if /i "%SNEEKSELECT%" EQU "2" goto:SNKNANDBUILDER
if /i "%SNEEKSELECT%" EQU "5" goto:SNKNANDBUILDER
goto:DLSETTINGS
::-----------------------------------Add WAD Folder to Install to emunand----------------------------------
:addwadfolder
set addwadfolder=empty
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the full path\folder of WADs you'd like to install to your emulated NAND
echo.
echo.
echo * You can drag and drop the folder onto this
echo window to save yourself having to manually type it
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
IF "%addwadfolder%"=="" set addwadfolder=?
setlocal ENABLEDELAYEDEXPANSION
set /p addwadfolder= Enter Selection Here:
::remove quotes
set addwadfolder=!addwadfolder:"=!
set "addwadfolder=!addwadfolder:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%addwadfolder%" EQU "M" (set addwadfolder=) & (goto:MENU)
if /i "%addwadfolder%" EQU "B" (set addwadfolder=) & (goto:SNKNANDCONFIRM)
:doublecheckwad
set fixslash=
if "%addwadfolder%"=="" (echo You Have Entered an Incorrect Key) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:addwadfolder)
if /i "%addwadfolder:~-1%" EQU "\" set fixslash=yes
if /i "%addwadfolder:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "addwadfolder=%addwadfolder:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckwad
if not exist "%addwadfolder%" (echo.) & (echo "%addwadfolder%" doesn't exist, please try again...) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:addwadfolder)
::make sure second char is ":"
if /i "%addwadfolder:~1,1%" NEQ ":" (echo.) & (echo Enter the full path including the drive letter, please try again...) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:addwadfolder)
if not exist "%addwadfolder%\*.wad" (echo.) & (echo No Wads found, please try a different folder...) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:addwadfolder)
goto:SNKNANDCONFIRM
::...................................SNEEK Nand Builder...............................
:SNKNANDBUILDER
::temporarily force wads to be saved to "root" of "temp" folder
::Set ROOTSAVE=on
::set DRIVE=temp//happens later
if not exist "%nandpath%" mkdir "%nandpath%"
::if not exist temp\WAD mkdir temp\WAD
if /i "%SNEEKSELECT%" EQU "5" goto:quickskip
::backup setting.txt if applicable
if /i "%SNKSERIAL%" EQU "current" move /y "%nandpath%"\title\00000001\00000002\data\setting.txt "%nandpath%"\setting.txt >nul
::delete existing nand if exists
if exist "%nandpath%"\title echo.
if exist "%nandpath%"\title echo Deleting existing emulated nand...
if exist "%nandpath%"\title rd /s /q "%nandpath%"\title
if exist "%nandpath%"\ticket rd /s /q "%nandpath%"\ticket
if exist "%nandpath%"\sys rd /s /q "%nandpath%"\sys
if exist "%nandpath%"\shared1 rd /s /q "%nandpath%"\shared1
::import, meta, shared2, tmp are deleted but will not be recreated by NAND Builder
if exist "%nandpath%"\import rd /s /q "%nandpath%"\import
if exist "%nandpath%"\meta rd /s /q "%nandpath%"\meta
if exist "%nandpath%"\shared2 rd /s /q "%nandpath%"\shared2
if exist "%nandpath%"\tmp rd /s /q "%nandpath%"\tmp
if exist "%nandpath%"\wfs rd /s /q "%nandpath%"\wfs
if exist "%nandpath%\nandinfo.txt" del "%nandpath%\nandinfo.txt">nul
::if user selects S2U but has emulated nand on root without nandslot.bin, move existing nand to nands folder
if /i "%SNKS2U%" EQU "N" goto:quickskip
if exist "%DRIVEU%"\nandslot.bin goto:quickskip
SET /a NANDcountPLUS1=%NANDcount%+1
if not exist "%DRIVEU%"\title goto:quickskip
echo.
echo Moving existing emulated nand to \nands\%NANDcountPLUS1% folder...
if not exist "%DRIVEU%\nands\nand%NANDcountPLUS1%" mkdir "%DRIVEU%\nands\nand%NANDcountPLUS1%"
if exist "%DRIVEU%"\title move /y "%DRIVEU%"\title "%DRIVEU%\nands\nand%NANDcountPLUS1%\title"
if exist "%DRIVEU%"\ticket move /y "%DRIVEU%"\ticket "%DRIVEU%\nands\nand%NANDcountPLUS1%\ticket"
if exist "%DRIVEU%"\sys move /y "%DRIVEU%"\sys "%DRIVEU%\nands\nand%NANDcountPLUS1%\sys"
if exist "%DRIVEU%"\shared1 move /y "%DRIVEU%"\shared1 "%DRIVEU%\nands\nand%NANDcountPLUS1%\shared1"
::import, meta, shared2, tmp are deleted but will not be recreated by NAND Builder
if exist "%DRIVEU%"\import move /y "%DRIVEU%"\import "%DRIVEU%\nands\nand%NANDcountPLUS1%\import"
if exist "%DRIVEU%"\meta move /y "%DRIVEU%"\meta "%DRIVEU%\nands\nand%NANDcountPLUS1%\meta"
if exist "%DRIVEU%"\shared2 move /y "%DRIVEU%"\shared2 "%DRIVEU%\nands\nand%NANDcountPLUS1%\shared2"
if exist "%DRIVEU%"\tmp move /y "%DRIVEU%"\tmp "%DRIVEU%\nands\nand%NANDcountPLUS1%\tmp"
if exist "%DRIVEU%"\wfs move /y "%DRIVEU%"\wfs "%DRIVEU%\nands\nand%NANDcountPLUS1%\wfs"
:quickskip
::all
if /i "%MIIQ%" EQU "Y" set MII=*
if /i "%SNKREGION%" EQU "U" goto:SNKU
if /i "%SNKREGION%" EQU "E" goto:SNKE
if /i "%SNKREGION%" EQU "J" goto:SNKJ
if /i "%SNKREGION%" EQU "K" goto:SNKK
:SNKU
if /i "%SNKVERSION%" EQU "4.3" set SM4.3U=*
if /i "%SNKVERSION%" EQU "4.2" set SM4.2U=*
if /i "%SNKVERSION%" EQU "4.1" set SM4.1U=*
if /i "%ThemeSelection%" EQU "N" goto:SKIPSM
if /i "%ThemeSelection%" NEQ "R" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Red_4.3U=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Red_4.2U=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Red_4.1U=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "G" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Green_4.3U=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Green_4.2U=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Green_4.1U=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "BL" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Blue_4.3U=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Blue_4.2U=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Blue_4.1U=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "O" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set darkwii_orange_4.3U=*
if /i "%SNKVERSION%" EQU "4.2" set darkwii_orange_4.2U=*
if /i "%SNKVERSION%" EQU "4.1" set darkwii_orange_4.1U=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "D" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set A97=*
if /i "%SNKVERSION%" EQU "4.2" set A87=*
if /i "%SNKVERSION%" EQU "4.1" set A7b=*
goto:SKIPSM
:skip
:SKIPSM
::SMAPP is patched for UNEEK+DI Support
if /i "%SNKVERSION%" EQU "4.3" set SMAPP=00000098
if /i "%SNKVERSION%" EQU "4.2" set SMAPP=00000088
if /i "%SNKVERSION%" EQU "4.1" set SMAPP=0000007c
if /i "%PIC%" EQU "Y" (set P=*) & (set P0=*)
if /i "%NET%" EQU "Y" set IU=*
if /i "%WEATHER%" EQU "Y" set WU=*
if /i "%NEWS%" EQU "Y" set NU=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSU=*
goto:SNKBUGGEDSMIOS
:SNKE
if /i "%SNKVERSION%" EQU "4.3" set SM4.3E=*
if /i "%SNKVERSION%" EQU "4.2" set SM4.2E=*
if /i "%SNKVERSION%" EQU "4.1" set SM4.1E=*
if /i "%ThemeSelection%" EQU "N" goto:SKIPSM
if /i "%ThemeSelection%" NEQ "R" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Red_4.3E=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Red_4.2E=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Red_4.1E=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "G" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Green_4.3E=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Green_4.2E=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Green_4.1E=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "BL" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Blue_4.3E=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Blue_4.2E=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Blue_4.1E=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "O" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set darkwii_orange_4.3E=*
if /i "%SNKVERSION%" EQU "4.2" set darkwii_orange_4.2E=*
if /i "%SNKVERSION%" EQU "4.1" set darkwii_orange_4.1E=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "D" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set A9a=*
if /i "%SNKVERSION%" EQU "4.2" set A8a=*
if /i "%SNKVERSION%" EQU "4.1" set A7e=*
goto:SKIPSM
:skip
:SKIPSM
if /i "%SNKVERSION%" EQU "4.3" set SMAPP=0000009b
if /i "%SNKVERSION%" EQU "4.2" set SMAPP=0000008b
if /i "%SNKVERSION%" EQU "4.1" set SMAPP=0000007f
if /i "%PIC%" EQU "Y" (set P=*) & (set P0=*)
if /i "%NET%" EQU "Y" set IE=*
if /i "%WEATHER%" EQU "Y" set WE=*
if /i "%NEWS%" EQU "Y" set NE=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSE=*
goto:SNKBUGGEDSMIOS
:SNKJ
if /i "%SNKVERSION%" EQU "4.3" set SM4.3J=*
if /i "%SNKVERSION%" EQU "4.2" set SM4.2J=*
if /i "%SNKVERSION%" EQU "4.1" set SM4.1J=*
if /i "%ThemeSelection%" EQU "N" goto:SKIPSM
if /i "%ThemeSelection%" NEQ "R" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Red_4.3J=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Red_4.2J=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Red_4.1J=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "G" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Green_4.3J=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Green_4.2J=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Green_4.1J=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "BL" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Blue_4.3J=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Blue_4.2J=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Blue_4.1J=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "O" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set darkwii_orange_4.3J=*
if /i "%SNKVERSION%" EQU "4.2" set darkwii_orange_4.2J=*
if /i "%SNKVERSION%" EQU "4.1" set darkwii_orange_4.1J=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "D" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set A94=*
if /i "%SNKVERSION%" EQU "4.2" set A84=*
if /i "%SNKVERSION%" EQU "4.1" set A78=*
goto:SKIPSM
:skip
:SKIPSM
if /i "%SNKVERSION%" EQU "4.3" set SMAPP=00000095
if /i "%SNKVERSION%" EQU "4.2" set SMAPP=00000085
if /i "%SNKVERSION%" EQU "4.1" set SMAPP=00000079
if /i "%PIC%" EQU "Y" (set P=*) & (set P0=*)
if /i "%NET%" EQU "Y" set IJ=*
if /i "%WEATHER%" EQU "Y" set WJ=*
if /i "%NEWS%" EQU "Y" set NJ=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSJ=*
goto:SNKBUGGEDSMIOS
:SNKK
if /i "%SNKVERSION%" EQU "4.3" set SM4.3K=*
if /i "%SNKVERSION%" EQU "4.2" set SM4.2K=*
if /i "%SNKVERSION%" EQU "4.1" set SM4.1K=*
if /i "%ThemeSelection%" EQU "N" goto:SKIPSM
if /i "%ThemeSelection%" NEQ "R" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Red_4.3K=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Red_4.2K=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Red_4.1K=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "G" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Green_4.3K=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Green_4.2K=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Green_4.1K=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "BL" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set DarkWii_Blue_4.3K=*
if /i "%SNKVERSION%" EQU "4.2" set DarkWii_Blue_4.2K=*
if /i "%SNKVERSION%" EQU "4.1" set DarkWii_Blue_4.1K=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "O" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set darkwii_orange_4.3K=*
if /i "%SNKVERSION%" EQU "4.2" set darkwii_orange_4.2K=*
if /i "%SNKVERSION%" EQU "4.1" set darkwii_orange_4.1K=*
goto:SKIPSM
:skip
if /i "%ThemeSelection%" NEQ "D" goto:skip
if /i "%SNKVERSION%" EQU "4.3" set A9d=*
if /i "%SNKVERSION%" EQU "4.2" set A8d=*
if /i "%SNKVERSION%" EQU "4.1" set A81=*
goto:SKIPSM
:skip
:SKIPSM
if /i "%SNKVERSION%" EQU "4.3" set SMAPP=0000009e
if /i "%SNKVERSION%" EQU "4.2" set SMAPP=0000008e
if /i "%SNKVERSION%" EQU "4.1" set SMAPP=00000082
if /i "%PIC%" EQU "Y" set P0=*
::quick and dirty disabling of the Korean Shop channel installation from emunand as it throws errors with SMW and doesn't install anyway
set SHOP=N
if /i "%SHOP%" EQU "Y" set SK=*
:SNKBUGGEDSMIOS
if /i "%SNEEKSELECT%" EQU "5" goto:skipthis
if /i "%SNKVERSION%" EQU "4.1" set IOS60P=*
if /i "%SNKVERSION%" EQU "4.2" set IOS70K=*
if /i "%SNKVERSION%" EQU "4.3" set IOS80K=*
::activeios
set M10=*
set IOS9=*
set IOS12=*
set IOS13=*
set IOS14=*
set IOS15=*
set IOS17=*
set IOS21=*
set IOS22=*
set IOS28=*
set IOS31=*
set IOS33=*
set IOS34=*
set IOS35=*
set IOS36v3608=*
set IOS37=*
set IOS38=*
set ios41=*
set ios43=*
set ios45=*
set ios46=*
set IOS48v4124=*
set IOS53=*
set IOS55=*
set IOS56=*
set IOS57=*
set IOS58=*
::IOS59 is a J exclusive
if /i "%SNKREGION%" EQU "J" set IOS59=*
set IOS61=*
set IOS62=*
if /i "%SNKREGION%" EQU "U" set EULAU=*
if /i "%SNKREGION%" EQU "E" set EULAE=*
if /i "%SNKREGION%" EQU "J" set EULAJ=*
if /i "%SNKREGION%" EQU "K" set EULAK=*
:skipthis
if /i "%SHOP%" EQU "Y" set IOS56=*
if /i "%SNEEKSELECT%" EQU "5" (set SM4.3U=) & (set SM4.2U=) & (set SM4.1U=) & (set SM4.3E=) & (set SM4.2E=) & (set SM4.1E=) & (set SM4.3J=) & (set SM4.2J=) & (set SM4.1J=) & (set SM4.3K=) & (set SM4.2K=) & (set SM4.1K=)
set BC=*
::if /i "%SNKcBC%" EQU "NMM" set cBC=*
::::if /i "%SNKcBC%" EQU "DML" set DML=*
::if /i "%SNKcBC%" EQU "DML" set BC=*
::if /i "%SNKcBC%" EQU "N" set BC=*
if /i "%SNEEKSELECT%" NEQ "5" goto:skipdeselect
if /i "%BCtype%" EQU "BC" set BC=
if /i "%BCtype%" EQU "DML" set DML=
if /i "%BCtype%" EQU "NMM" set cBC=
:skipdeselect
if /i "%SNKCIOS%" EQU "Y" set cIOS249-v14=*
if /i "%PRIIFOUND%" EQU "Yes" goto:skip1line
::if /i "%SNKPRI%" EQU "Y" set HAX=*
:skip1line
if /i "%SNKFLOW%" EQU "Y" set FLOWF=*
if /i "%SNKPLC%" EQU "Y" set PLC=*
if /i "%SNKOHBC%" EQU "Y" set OHBC=*
if /i "%SNKS2U%" EQU "Y" set S2U=*
if /i "%SNKS2U%" NEQ "Y" set nSwitch=*
if /i "%nswitchFound%" EQU "Yes" set nSwitch=
IF "%SMAPP%"=="" goto:miniskip
::subract 1 from %SMAPP% to get %SMTHEMEAPP%
support\sfk dec %SMAPP%>dec.txt
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (dec.txt) do call :processdec %%A
goto:nextstep
:processdec
set dec=%*
goto:EOF
:nextstep
del dec.txt>nul
SET /a dec=%dec%-1
support\sfk hex %dec% -digits=8 >hex.txt
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (hex.txt) do call :processhex %%A
goto:nextstep
:processhex
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set SMTHEMEAPP=%*
goto:EOF
:nextstep
del hex.txt>nul
::change caps to lower case for hex numbers if applicable
if /i "%SMTHEMEAPP:~-1%" EQU "A" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%a
if /i "%SMTHEMEAPP:~-1%" EQU "B" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%b
if /i "%SMTHEMEAPP:~-1%" EQU "C" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%c
if /i "%SMTHEMEAPP:~-1%" EQU "D" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%d
if /i "%SMTHEMEAPP:~-1%" EQU "E" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%e
if /i "%SMTHEMEAPP:~-1%" EQU "F" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%f
:miniskip
if /i "%AbstinenceWiz%" EQU "Y" set nswitch=*
goto:DLCOUNT
::..............................Emulated NAND Modifer - SNK NAND Selector....................
:SNKNANDSELECTOR
set drivetemp=
set NANDPATH=
set SNKREGION=
set SMAPP=
set SMTHEMEAPP=
set SNKVERSION=
set PRIIFOUND=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo EMULATED NAND MODIFIER
echo.
echo.
echo.
echo Enter the Path of your Emulated NAND
echo.
echo.
echo Note: * You can drag and drop the Drive/folder onto this
echo window to save yourself having to manually type it
echo.
echo * In the future you can drag your Emulated NAND folder
echo onto ModMii.exe or ModMiiSkin.exe, or a shortcut to either,
echo to quickly start ModMii's Emulated NAND Modifier
echo.
echo.
echo EXAMPLES
echo.
echo.
echo L:
echo.
echo H:\nands\nand1
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
IF "%Drivetemp%"=="" set Drivetemp=?
setlocal ENABLEDELAYEDEXPANSION
set /p Drivetemp= Enter Selection Here:
::remove quotes
set "Drivetemp=!Drivetemp:"=!"
set "Drivetemp=!Drivetemp:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%DRIVETEMP%" EQU "B" goto:SNKPAGE1
if /i "%DRIVETEMP%" EQU "M" goto:MENU
:doublecheckNANDPATH
::---------------CMD LINE MODE-------------
if /i "%cmdlinemodeswitchoff%" EQU "Y" (set cmdlinemode=) & (set one=) & (set two=)
set fixslash=
if /i "%DRIVETEMP:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVETEMP:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVETEMP=%DRIVETEMP:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckNANDPATH
if not exist "%DRIVETEMP%" goto:notexist
if not exist "%DRIVETEMP%\title" goto:notexistnand
if not exist "%DRIVETEMP%\sys" goto:notexistnand
if not exist "%DRIVETEMP%\ticket" goto:notexistnand
if not exist "%DRIVETEMP%\shared1" goto:notexistnand
::Get NAND Info
if not exist "%DRIVETEMP%\title\00000001\00000002\content\title.tmd" goto:notitle
support\sfk hexdump -pure -nofile "%DRIVETEMP%\title\00000001\00000002\content\title.tmd">temp\hexdump.txt
FINDSTR /N . temp\hexdump.txt>temp\hexdump2.txt
del temp\hexdump.txt>nul
support\sfk filter -quiet "temp\hexdump2.txt" -+"49:" -write -yes
set /p SMAPP= <temp\hexdump2.txt
set SMAPP=%SMAPP:~11,8%
del temp\hexdump2.txt>nul
:notitle
if "%SMAPP%"=="" goto:miniskip
if /i "%SMAPP%" EQU "00000098" (set SNKREGION=U) & (set SNKVERSION=4.3)
if /i "%SMAPP%" EQU "00000088" (set SNKREGION=U) & (set SNKVERSION=4.2)
if /i "%SMAPP%" EQU "0000007c" (set SNKREGION=U) & (set SNKVERSION=4.1)
if /i "%SMAPP%" EQU "0000009b" (set SNKREGION=E) & (set SNKVERSION=4.3)
if /i "%SMAPP%" EQU "0000008b" (set SNKREGION=E) & (set SNKVERSION=4.2)
if /i "%SMAPP%" EQU "0000007f" (set SNKREGION=E) & (set SNKVERSION=4.1)
if /i "%SMAPP%" EQU "00000095" (set SNKREGION=J) & (set SNKVERSION=4.3)
if /i "%SMAPP%" EQU "00000085" (set SNKREGION=J) & (set SNKVERSION=4.2)
if /i "%SMAPP%" EQU "00000079" (set SNKREGION=J) & (set SNKVERSION=4.1)
if /i "%SMAPP%" EQU "0000009e" (set SNKREGION=K) & (set SNKVERSION=4.3)
if /i "%SMAPP%" EQU "0000008e" (set SNKREGION=K) & (set SNKVERSION=4.2)
if /i "%SMAPP%" EQU "00000082" (set SNKREGION=K) & (set SNKVERSION=4.1)
if /i "%SNKREGION%" EQU "U" set defaultserial=LU521175683
if /i "%SNKREGION%" EQU "E" set defaultserial=LEH133789940
if /i "%SNKREGION%" EQU "J" set defaultserial=LJM101175683
if /i "%SNKREGION%" EQU "K" set defaultserial=LJM101175683
:miniskip
::check for Priiloader
if exist "%DRIVETEMP%\title\00000001\00000002\content\1%SMAPP:~1%.app" (set PRIIFOUND=YES) else (set PRIIFOUND=NO)
::check for current nswitch channel
set nSwitchFOUND=NO
set nswitchmd5=5ded98a0c458a2c8d0fe140e85542884
::if exist "temp\DBUPDATE%currentversion%.bat" call "temp\DBUPDATE%currentversion%.bat"
if not exist "%DRIVETEMP%\title\00010001\4e4b324f\content\00000001.app" goto:nonswitchcheck
support\sfk md5 -quiet -verify %nswitchmd5% "%DRIVETEMP%\title\00010001\4e4b324f\content\00000001.app"
if not errorlevel 1 set nSwitchFOUND=YES
:nonswitchcheck
::check for BC, NMM or DML
set BCtype=
set BCmd5=eb1b69f3d747145651aa834078c2aacd
set DMLmd5=88720d0de8c7db7bf00f5053b76ae66b
set NMMmd5=8663c24ab33540af6a818920a3a47c4a
::if exist "temp\DBUPDATE%currentversion%.bat" call "temp\DBUPDATE%currentversion%.bat"
if not exist "%DRIVETEMP%\title\00000001\00000100\content\00000008.app" (set BCtype=None) & (goto:noBCcheck)
support\sfk md5 -quiet -verify %BCmd5% "%DRIVETEMP%\title\00000001\00000100\content\00000008.app"
if not errorlevel 1 set BCtype=BC
IF "%BCtype%"=="" set BCtype=DML
support\sfk md5 -quiet -verify %NMMmd5% "%DRIVETEMP%\title\00000001\00000100\content\00000008.app"
if not errorlevel 1 set BCtype=NMM
:noBCcheck
IF "%SMAPP%"=="" goto:miniskip
::subract 1 from %SMAPP% to get %SMTHEMEAPP%
support\sfk dec %SMAPP%>dec.txt
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (dec.txt) do call :processdec %%A
goto:nextstep
:processdec
set dec=%*
goto:EOF
:nextstep
del dec.txt>nul
SET /a dec=%dec%-1
support\sfk hex %dec% -digits=8 >hex.txt
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (hex.txt) do call :processhexapp %%A
goto:nextstep
:processhexapp
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set SMTHEMEAPP=%*
goto:EOF
:nextstep
del hex.txt>nul
::change caps to lower case for hex numbers if applicable
if /i "%SMTHEMEAPP:~-1%" EQU "A" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%a
if /i "%SMTHEMEAPP:~-1%" EQU "B" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%b
if /i "%SMTHEMEAPP:~-1%" EQU "C" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%c
if /i "%SMTHEMEAPP:~-1%" EQU "D" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%d
if /i "%SMTHEMEAPP:~-1%" EQU "E" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%e
if /i "%SMTHEMEAPP:~-1%" EQU "F" set SMTHEMEAPP=%SMTHEMEAPP:~0,-1%f
:miniskip
set "NANDPATH=%DRIVETEMP%"
::echo NANDPATH=%NANDPATH%
::echo SNKREGION=%SNKREGION%
::echo SMAPP=%SMAPP%
::echo SMTHEMEAPP=%SMTHEMEAPP%
::echo SNKVERSION=%SNKVERSION%
::echo PRIIFOUND=%PRIIFOUND%
if "%SNKREGION%"=="" (goto:FOLLOWUPQ) else (goto:SNKPAGE4a)
:notexist
echo The folder you selected does not exist
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKNANDSELECTOR
:notexistnand
echo The folder you selected does not contain an Emulated NAND
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKNANDSELECTOR
::-----Unable to determine region, ask user-----
::..............................Emulated NAND Modifer - SNK NAND Selector....................
:FOLLOWUPQ
set SNKREGION=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo EMULATED NAND MODIFIER
echo.
echo.
echo.
echo ModMii is unable to determine the Region of your NAND.
echo.
echo What Region is your Emulated NAND?
echo.
echo.
echo.
echo.
echo Note: Theme modifiers are disabled for Emulated NANDs 4.0 or less
echo.
echo.
echo.
echo U = USA
echo E = Euro (PAL)
echo J = JPN
echo K = Korean
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p SNKREGION= Enter Selection Here:
if /i "%SNKREGION%" EQU "U" goto:SNKPAGE4a
if /i "%SNKREGION%" EQU "E" goto:SNKPAGE4a
if /i "%SNKREGION%" EQU "J" goto:SNKPAGE4a
if /i "%SNKREGION%" EQU "K" goto:SNKPAGE4a
if /i "%SNKREGION%" EQU "M" goto:MENU
if /i "%SNKREGION%" EQU "B" goto:SNKNANDSELECTOR
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FOLLOWUPQ
::...................................SNEEK SNK DISC EXtractor...............................
:SNKDISCEX
IF "%ISOFOLDER%"=="" goto:checkwbfs
IF "%ISOFOLDER%"=="" set "ISOFOLDER=%DRIVEU%\WBFS"
goto:skip
:checkwbfs
if exist "A:\WBFS" set ISOFOLDER=A:\WBFS
if exist "B:\WBFS" set ISOFOLDER=B:\WBFS
if exist "C:\WBFS" set ISOFOLDER=C:\WBFS
if exist "D:\WBFS" set ISOFOLDER=D:\WBFS
if exist "E:\WBFS" set ISOFOLDER=E:\WBFS
if exist "F:\WBFS" set ISOFOLDER=F:\WBFS
if exist "G:\WBFS" set ISOFOLDER=G:\WBFS
if exist "H:\WBFS" set ISOFOLDER=H:\WBFS
if exist "I:\WBFS" set ISOFOLDER=I:\WBFS
if exist "J:\WBFS" set ISOFOLDER=J:\WBFS
if exist "K:\WBFS" set ISOFOLDER=K:\WBFS
if exist "L:\WBFS" set ISOFOLDER=L:\WBFS
if exist "M:\WBFS" set ISOFOLDER=M:\WBFS
if exist "N:\WBFS" set ISOFOLDER=N:\WBFS
if exist "O:\WBFS" set ISOFOLDER=O:\WBFS
if exist "P:\WBFS" set ISOFOLDER=P:\WBFS
if exist "Q:\WBFS" set ISOFOLDER=Q:\WBFS
if exist "R:\WBFS" set ISOFOLDER=R:\WBFS
if exist "S:\WBFS" set ISOFOLDER=S:\WBFS
if exist "T:\WBFS" set ISOFOLDER=T:\WBFS
if exist "U:\WBFS" set ISOFOLDER=U:\WBFS
if exist "V:\WBFS" set ISOFOLDER=V:\WBFS
if exist "W:\WBFS" set ISOFOLDER=W:\WBFS
if exist "X:\WBFS" set ISOFOLDER=X:\WBFS
if exist "Y:\WBFS" set ISOFOLDER=Y:\WBFS
if exist "Z:\WBFS" set ISOFOLDER=Z:\WBFS
IF "%ISOFOLDER%"=="" set "ISOFOLDER=%DRIVEU%\WBFS"
:skip
set "drivetemp=%ISOFOLDER%"
if exist gametotal.txt del gametotal.txt>nul
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo GAME BULK EXTRACTOR
echo (FOR SNEEK)
echo.
echo.
echo Enter the Path where your Wii or Gamecube Games are saved
echo.
echo * Subfolders are also scanned
echo * Supported formats include ISO, CISO and WBFS files
echo.
echo.
echo Current Setting:
echo.
echo "%ISOFOLDER%"
echo.
echo.
echo Notes: * To continue using Current Settings
echo leave the selection blank and hit enter.
echo.
echo * You can drag and drop the Drive/folder onto this
echo window to save yourself having to manually type it
echo.
echo.
echo.
echo EXAMPLES
echo.
echo.
echo L:
echo.
echo %%userprofile%%\Desktop\WiiGames
echo Note: %%userprofile%% shortcut doesn't work on Windows XP
echo.
echo WiiGames\ISOs
echo Note: this checks the WiiGames\ISOs folder where ModMii is saved
echo.
echo C:\Users\XFlak\Desktop\New Folder
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
IF "%Drivetemp%"=="" set Drivetemp=?
setlocal ENABLEDELAYEDEXPANSION
set /p Drivetemp= Enter Selection Here:
::remove quotes
set "Drivetemp=!Drivetemp:"=!"
set "Drivetemp=!Drivetemp:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if /i "%DRIVETEMP%" EQU "B" goto:SNKPAGE1
if /i "%DRIVETEMP%" EQU "M" goto:MENU
:doublecheckISOFOLDER
set fixslash=
if /i "%DRIVETEMP:~-1%" EQU "\" set fixslash=yes
if /i "%DRIVETEMP:~-1%" EQU "/" set fixslash=yes
if /i "%fixslash%" EQU "yes" set "DRIVETEMP=%DRIVETEMP:~0,-1%"
if /i "%fixslash%" EQU "yes" goto:doublecheckISOFOLDER
if not exist "%DRIVETEMP%" goto:notexist
::---get game list-------
echo.
echo Scanning directory for Wii Games...
::Support\wit list-l --unit GB --recurse "%DRIVETEMP%">gametotal.txt
Support\wit list-l --recurse "%DRIVETEMP%">gametotal.txt
copy /y gametotal.txt gametotal.bat >nul
support\sfk filter gametotal.bat -ls+Total -rep _"Total: "_"set gametotal="_ -rep _" discs*"__ -write -yes>nul
call gametotal.bat
del gametotal.bat>nul
if /i "%gametotal%" EQU "0" goto:notexistiso
set "ISOFOLDER=%DRIVETEMP%"
set BACKB4DRIVEU=SNKDISCEX
goto:DRIVEUCHANGE
:notexist
echo The folder you selected does not exist
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKDISCEX
:notexistiso
del gamelist.txt>nul
echo The folder you selected does not contain any ISO, CISO or WBFS Files
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SNKDISCEX
::...................................SNK DISC EXtractor2...............................
:SNKDISCEX2
echo.
echo Checking if enough free space exists...
::wit beta--> isosize command
::wit isosize --unit bytes -r "%ISOFOLDER%"
::---get required MB-------
copy /y gametotal.txt gametotal.bat >nul
::support\sfk filter gametotal.bat -ls+Total -rep _*"~ "_"set MegaBytesRequired="_ -rep _" MB*"__ -write -yes>nul
support\sfk filter gametotal.bat -ls+Total -rep _*", "_"set MegaBytesRequired="_ -rep _" MiB*"__ -write -yes>nul
call gametotal.bat
del gametotal.bat>nul
if %MegaBytesRequired% GEQ 1000 (set units=GB) else (set units=MB)
::echo Downloading hy.exe
if exist temp\hy.exe goto:AlreadyinTemp
if not exist hypatia.zip start /min /wait support\wget --no-check-certificate -t 3 http://dunyazad-library.net/software/hypatia/hypatia.zip
if exist hypatia.zip support\7za e -aoa hypatia.zip -otemp hy.exe -r
if exist hypatia.zip del hypatia.zip>nul
:AlreadyinTemp
::---get approx required GB-------
cd temp
hy %MegaBytesRequired% 1024 />nul
::above command stores output in a "hy" file
cd..
move /y temp\hy gigabytesrequired.txt>nul
support\sfk filter gigabytesrequired.txt -rep _".*"__ -write -yes>nul
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (gigabytesrequired.txt) do call :process %%A
goto:nextstep
:process
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set GigaBytesRequired=%*
goto:EOF
:nextstep
set /a GigaBytesRequired=%GigaBytesRequired%+1
del gigabytesrequired.txt>nul
::---check for free space (not 100% accurate-will catch most cases without enough free space)---
if not exist "%DRIVEU%" mkdir "%DRIVEU%"
::dir "%DRIVEU%">temp\freespace.bat
::support\sfk filter "temp\freespace.bat" -+"bytes " -+"octets " -+"Directory " -!"Directory of" -!"Directory di" -rep _" byte"*__ -rep _" octets"*__ -rep _,__ -rep _.__ -rep _" "__ -rep _*")"_"set freespace="_ -rep _*"dirs"_"set freespace="_ -rep _*"Directory"_"set freespace="_ -write -yes>nul
::support\sfk filter "temp\freespace.bat" -spat -rep _\xff__ -write -yes>nul
if exist del temp\freespace.bat>nul
if exist del temp\freespace.txt>nul
if /i "%DRIVEU:~1,1%" EQU ":" (set "DriveUCheck=%DRIVEU:~0,1%") else (set "DriveUCheck=%cd:~0,1%")
wmic LogicalDisk where DeviceID='%DriveUCheck%:' Get FreeSpace /value>temp\freespace.txt
cmd /a /c type "temp\freespace.txt">"temp\freespace.bat"
support\sfk filter "temp\freespace.bat" -rep _"FreeSpace="_"set freespace="_ -write -yes>nul
call temp\freespace.bat
del temp\freespace.bat>nul
del temp\freespace.txt>nul
::Math in batch doesn't work with large numbers
::SET /a freespaceKB=%freespace%/1024
cd temp
hy %freespace% 1048576 />nul
::above command stores output in a "hy" file
cd..
move /y temp\hy megabytes.txt>nul
support\sfk filter megabytes.txt -rep _".*"__ -write -yes>nul
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (megabytes.txt) do call :process %%A
goto:nextstep
:process
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set freespaceMB=%*
goto:EOF
:nextstep
del megabytes.txt>nul
::echo MegaBytesRequired is %MegaBytesRequired%
::echo GigaBytesRequired is %GigaBytesRequired%
::echo Total Free Space is approximately %freespaceMB% MB [%freespace% bytes]
::pause
if %MegaBytesRequired% GEQ %freespaceMB% (goto:needmorespace) else (goto:DISCEXCONFIRM)
::-------------------------------------DISCEX NEED MORE SPACE!!!---------------
:needmorespace
cls
set continue=
::set gametotal=
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo GAME BULK EXTRACTOR
echo (FOR SNEEK)
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20[%redtext%]WARNING: YOU DO NOT HAVE ENOUGH FREE SPACE
echo.
echo.
echo.
echo You are attempting to convert %gametotal%
echo.
echo From Source Folder: "%ISOFOLDER%"
echo To Target Folder: "%DRIVEU%\games"
echo.
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (gametotal.txt) do call :process "%%A"
goto:nextstep
:process
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
echo %*
goto:EOF
:nextstep
setlocal DISABLEDELAYEDEXPANSION
echo.
echo.
echo.
if /i "%units%" EQU "GB" support\sfk echo -spat \x20 \x20 \x20 \x20[%redtext%]"%DRIVEU%" requires approx. %GigaBytesRequired%GB of free space
if /i "%units%" EQU "MB" support\sfk echo -spat \x20 \x20 \x20 \x20[%redtext%]"%DRIVEU%" requires %MegaBytesRequired%MB of free space
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20[%redtext%]Create more free space or select a smaller source folder and try again
echo.
echo.
echo.
echo C = Continue anyways
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p continue= Enter Selection Here:
if /i "%continue%" EQU "M" del gametotal.txt>nul
if /i "%continue%" EQU "M" goto:MENU
if /i "%continue%" EQU "C" goto:DISCEXCONFIRM
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:needmorespace
::-------------------------------------DISCEX CONFIRM---------------
:DISCEXCONFIRM
cls
set DISCEXCONFIRM=
::set gametotal=
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo GAME BULK EXTRACTOR
echo (FOR SNEEK)
echo.
echo You are about to convert %gametotal%
echo.
echo From Source Folder: "%ISOFOLDER%"
echo To Target Folder: "%DRIVEU%\games"
echo.
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (gametotal.txt) do call :process "%%A"
goto:nextstep
:process
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
echo %*
goto:EOF
:nextstep
setlocal DISABLEDELAYEDEXPANSION
echo.
echo.
echo Would you like to proceed?
echo.
echo.
::echo Notes: * Each game could take approximately 5-15 minutes to convert
::echo.
::echo * Make sure you have enough free space here: %DRIVEU%
::echo otherwise extraction will fail when free space is depleted
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p DISCEXCONFIRM= Enter Selection Here:
if /i "%DISCEXCONFIRM%" EQU "M" del gametotal.txt>nul
if /i "%DISCEXCONFIRM%" EQU "N" del gametotal.txt>nul
if /i "%DISCEXCONFIRM%" EQU "Y" del gametotal.txt>nul
if /i "%DISCEXCONFIRM%" EQU "M" goto:MENU
if /i "%DISCEXCONFIRM%" EQU "N" goto:MENU
if /i "%DISCEXCONFIRM%" EQU "Y" goto:DISCEXSTART
if /i "%DISCEXCONFIRM%" EQU "B" goto:DRIVEUCHANGE
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DISCEXCONFIRM
::----------------Start WIT DISCEXTRACTION---------------
:DISCEXSTART
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo GAME BULK EXTRACTOR
echo (FOR SNEEK)
echo.
echo.
echo Updating Wii Game Title Database (titles.txt)
echo.
echo.
::if exist Support\titles.txt move /y Support\titles.txt Support\titles_old.txt >nul
start /min /wait support\wget --no-check-certificate -t 3 www.wiitdb.com/titles.txt
if exist titles.txt move /y titles.txt Support\titles.txt>nul
::rename existing games to new standard
if not exist "%DRIVEU%"\games goto:nextstep
dir "%DRIVEU%"\games /A:D /b > GameTitleIDs.txt
for /F "tokens=*" %%A in (GameTitleIDs.txt) do call :processdir %%A
goto:nextstep
:processdir
set CurrentTitleID=%*
if /i "%CurrentTitleID:~-8,1%" EQU "[" rename "%DRIVEU%\games\%CurrentTitleID%" "%CurrentTitleID:~-7,6%">nul
goto:EOF
:nextstep
if exist GameTitleIDs.txt del GameTitleIDs.txt>nul
::reverse slashes for target folder %DRIVEU%\games which becomes %DRIVEUfix%/games
echo set "DRIVEUfix=%DRIVEU%">temp.bat
support\sfk filter temp.bat -rep _\_/_ -write -yes>nul
call temp.bat
del temp.bat>nul
::IMPORTANT NOTE: destination directory must use "/" and not "\"
::target directory, including "games" folder, is creating automatically with the following wit command
::Support\wit x --sneek --recurse "%ISOFOLDER%" "%DRIVEUfix%/games/%%14T [%%I]" --progress
::Support\wit x --sneek --recurse "%ISOFOLDER%" --DEST "%DRIVEUfix%/games/%%14T [%%I]" --progress
Support\wit x --neek --recurse "%ISOFOLDER%" --DEST "%DRIVEUfix%"/games/%%I --progress
::an empty cygdrive folder may be created previous directory, so delete it!
if exist cygdrive rd /s /q cygdrive
::delete diconfig.bin if found (needs to be reconstructed on next boot to see new games)
if exist "%DriveU%\sneek\diconfig.bin" del "%DriveU%\sneek\diconfig.bin" >nul
::-----create csv list of all games in "%DRIVEU%"\games\ -----
echo @echo Off>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist TitleID.txt del TitleID.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist GameTitleIDs.txt del GameTitleIDs.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist.txt del Gamelist.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist2.txt del Gamelist2.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist-sorted.txt del Gamelist-sorted.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo dir games /A:D /b redirect GameTitleIDs.txt >>"%DriveU%"\Game-List-Updater[ModMii].bat
echo for /F "tokens=*" @@@@A in (GameTitleIDs.txt) do call :processmii @@@@A>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :processmii>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo set CurrentTitleID=@@*>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if /i "@@CurrentTitleID:~-8,1@@" EQU "[" rename "games\@@CurrentTitleID@@" "@@CurrentTitleID:~-7,6@@"redirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if /i "@@CurrentTitleID:~-8,1@@" EQU "[" set CurrentTitleID=@@CurrentTitleID:~-7,6@@>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo FINDSTR /B /C:"@@CurrentTitleID:~0,6@@" titles.txtredirectTitleID.txt>>"%DriveU%"\Game-List-Updater[ModMii].bat
::if title ID not in titles.txt just add title ID only
echo for /F @@@@A in ("TitleID.txt") do If @@@@~zA equ 0 (echo @@CurrentTitleID:~0,6@@redirectredirectGamelist.txt) else (FINDSTR /B /C:"@@CurrentTitleID:~0,6@@" titles.txtredirectredirectGamelist.txt)>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:EOF>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist TitleID.txt del TitleID.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist GameTitleIDs.txt del GameTitleIDs.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo for /F "tokens=*" @@@@A in (Gamelist.txt) do call :processmii2 @@@@A>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :processmii2>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo set Line=@@*>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo echo @@Line:~9@@,@@Line:~0,6@@redirectredirectgamelist2.txt>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:EOF>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist.txt del Gamelist.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo sort "Gamelist2.txt" redirect "Gamelist-sorted.txt">>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist2.txt del Gamelist2.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo echo Number,Title,Title IDredirectGame-List[ModMii].csv>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo echo ,,redirectredirectGame-List[ModMii].csv>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo set countline=0 >>"%DriveU%"\Game-List-Updater[ModMii].bat
echo for /F "tokens=*" @@@@A in (Gamelist-sorted.txt) do call :processmii3 @@@@A>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :processmii3>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo set Line=@@*>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo SET /a countline=@@countline@@+1>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo echo @@countline@@,@@line@@redirectredirectGame-List[ModMii].csv>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo goto:EOF>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo :nextstep>>"%DriveU%"\Game-List-Updater[ModMii].bat
echo if exist Gamelist-sorted.txt del Gamelist-sorted.txtredirectnul>>"%DriveU%"\Game-List-Updater[ModMii].bat
support\sfk filter "%DriveU%"\Game-List-Updater[ModMii].bat -spat -rep _@@_%%_ -rep _"redirect"_">"_ -write -yes>nul
support\sfk filter -quiet support\titles.txt -spat -rep _,_;_ -rep _" "_" "_ >"%DriveU%\titles.txt"
start /wait /D "%DriveU%" Game-List-Updater[ModMii].bat
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20[%greentext%]GAME BULK EXTRACTION FOR SNEEK COMPLETE
echo.
echo A list of your games can be found here: "%DriveU%\Game-List[ModMii].csv"
echo To update this list at any time, run "%DriveU%\Game-List-Updater[ModMii].bat"
echo.
echo Press any key to return to the Main Menu.
pause>nul
goto:MENU
::........................................Advanced Downloads........................................
:ADVANCED
cls
set loadorgo=load
if exist temp\DLnames.txt del temp\DLnames.txt>nul
if exist temp\DLgotos.txt del temp\DLgotos.txt>nul
set ADVPATCH=
set ADVSLOT=
set ADVVERSION=
set wadnameless=
::---
set name=
set wadname=
set dlname=
set ciosslot=
set ciosversion=
set md5=
set md5alt=
set basewad=none
set basewadb=none
set md5base=
set md5basealt=
set code1=
set code2=
set version=
set md5baseb=
set md5basebalt=
set code1b=
set code2b=
set path1=
set versionb=
set basecios=
set diffpath=
set code2new=
set lastbasemodule=
set category=
set wadnameless=
set patchname=
set slotname=
set slotcode=
set versionname=
set versioncode=
set DEC=
set VERFINAL=
set HEX=
set VER=
set wadfolder=
set verfinal=
set PATCHCODE=
set alreadyexists=
set patch=
set ADVTYPE=
Set ADVLIST=
cls
echo ModMii v%currentversion%
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20[%redtext%]ADVANCED DOWNLOADS[def]\x20 \x20 \x20 \x20 \x20 \x20by XFlak
echo.
support\sfk echo -spat \x20[%yellowtext%] WARNING: using these files MAY CAUSE BRICK if you do NOT know what you are doing!
echo D = Download Selected Files 1/2/3/4 = Page 1/2/3/4 M = Main Menu
echo C = Clear Download Queue DR = Drive Menu
echo.
echo Note: You can return to this page to add more Advanced Downloads to a queue by
echo entering "ADV" instead of just "A" when asked to begin downloading
echo.
echo U = User-Defined Custom Download F = Forwarder DOL\ISO Builder
echo (Get any IOS, MIOS or System Menu) BETA = d2x beta settings
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] IOSs \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 cIOSs
echo 9 = IOS9v1034 2224 = cIOS222[38]-v4
echo 12 = IOS12v526 2234 = cIOS223[37-38]-v4
echo 13 = IOS13v1032 2225 = cIOS222[38]-v5
echo 14 = IOS14v1032 2235 = cIOS223[37]-v5
echo 15 = IOS15v1032 2245 = cIOS224[57]-v5
echo 17 = IOS17v1032 20251 = cIOS202[60]-v5.1R
echo 21 = IOS21v1039 22251 = cIOS222[38]-v5.1R
echo 22 = IOS22v1294 22351 = cIOS223[37]-v5.1R
echo 28 = IOS28v1807 22451 = cIOS224[57]-v5.1R
echo 30 = IOS30v2576 24914 = cIOS249-v14
echo 31 = IOS31v3608 24917 = cIOS249-v17b
echo 33 = IOS33v3608 2491937 = cIOS249[37]-v19
echo 34 = IOS34v3608 2491938 = cIOS249[38]-v19
echo 35 = IOS35v3608 2491957 = cIOS249[57]-v19
echo 36 = IOS36v3608 2492038 = cIOS249[38]-v20
echo 37 = IOS37v5663 2492056 = cIOS249[56]-v20
echo 38 = IOS38v4124 2492057 = cIOS249[57]-v20
echo 41 = IOS41v3607 2492137 = cIOS249[37]-v21
echo 43 = IOS43v3607 2492138 = cIOS249[38]-v21
echo 45 = IOS45v3607 2492153 = cIOS249[53]-v21
echo 46 = IOS46v3607 2492155 = cIOS249[55]-v21
echo 48 = IOS48v4124 2492156 = cIOS249[56]-v21
echo 53 = IOS53v5663 2492157 = cIOS249[57]-v21
echo 55 = IOS55v5663 2492158 = cIOS249[58]-v21
echo 56 = IOS56v5662 60P = IOS60-Patched
echo 57 = IOS57v5919 24937 = cIOS249[37]-d2x-v%d2x-beta-rev%
echo 58 = IOS58v6176 24938 = cIOS249[38]-d2x-v%d2x-beta-rev%
echo 59 = IOS59v9249 24953 = cIOS249[53]-d2x-v%d2x-beta-rev%
echo 60 = IOS60v6174 24955 = cIOS249[55]-d2x-v%d2x-beta-rev%
echo 61 = IOS61v5662 24956 = cIOS249[56]-d2x-v%d2x-beta-rev%
echo 62 = IOS62v6430 24957 = cIOS249[57]-d2x-v%d2x-beta-rev%
echo 70 = IOS70v6687 24958 = cIOS249[58]-d2x-v%d2x-beta-rev%
echo 80 = IOS80v6944 24960 = cIOS249[60]-d2x-v%d2x-beta-rev%
echo 24970 = cIOS249[70]-d2x-v%d2x-beta-rev%
echo %AdvNumber% Advanced Downloads in Queue 24980 = cIOS249[80]-d2x-v%d2x-beta-rev%
echo.
set /p ADVLIST= Enter Selection Here:
if /i "%ADVLIST%" EQU "M" goto:MENU
if /i "%ADVLIST%" EQU "DR" set BACKB4DRIVE=ADVANCED
if /i "%ADVLIST%" EQU "DR" goto:DRIVECHANGE
if /i "%ADVLIST%" EQU "U" goto:Custom
if /i "%ADVLIST%" EQU "1" (set "nextpage=DLPAGE%ADVLIST%.hta") & (goto:DLPAGES)
if /i "%ADVLIST%" EQU "2" (set "nextpage=DLPAGE%ADVLIST%.hta") & (goto:DLPAGES)
if /i "%ADVLIST%" EQU "3" (set "nextpage=DLPAGE%ADVLIST%.hta") & (goto:DLPAGES)
if /i "%ADVLIST%" EQU "4" (set "nextpage=DLPAGE%ADVLIST%.hta") & (goto:DLPAGES)
if /i "%ADVLIST%" EQU "F" goto:FORWARDERDOLorISO
::IF "%ADVLIST%"=="" (set "nextpage=DLPAGE%ADVLIST%.hta") & (goto:DLPAGES)
if not exist support\More-cIOSs goto:quickskip
if /i "%ADVLIST%" EQU "BETA" (set backbeforebetaswitch=ADVANCED) & (goto:betaswitch)
:quickskip
if /i "%ADVLIST%" EQU "D" set loadorgo=go
if /i "%ADVLIST%" EQU "D" set BACKB4QUEUE=ADVANCED
if /i "%ADVLIST%" EQU "D" goto:DOWNLOADQUEUE
if /i "%ADVLIST%" EQU "C" goto:CLEAR
set CurrentDLNAME=
if /i "%ADVLIST%" EQU "9" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS9)
if /i "%ADVLIST%" EQU "12" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS12)
if /i "%ADVLIST%" EQU "13" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS13)
if /i "%ADVLIST%" EQU "14" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS14)
if /i "%ADVLIST%" EQU "15" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS15)
if /i "%ADVLIST%" EQU "17" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS17)
if /i "%ADVLIST%" EQU "21" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS21)
if /i "%ADVLIST%" EQU "22" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS22)
if /i "%ADVLIST%" EQU "28" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS28)
if /i "%ADVLIST%" EQU "30" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS30)
if /i "%ADVLIST%" EQU "31" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS31)
if /i "%ADVLIST%" EQU "33" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS33)
if /i "%ADVLIST%" EQU "34" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS34)
if /i "%ADVLIST%" EQU "35" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS35)
if /i "%ADVLIST%" EQU "36" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS36v3608)
if /i "%ADVLIST%" EQU "37" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS37)
if /i "%ADVLIST%" EQU "38" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS38)
if /i "%ADVLIST%" EQU "41" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS41)
if /i "%ADVLIST%" EQU "43" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS43)
if /i "%ADVLIST%" EQU "45" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS45)
if /i "%ADVLIST%" EQU "46" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS46)
if /i "%ADVLIST%" EQU "48" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS48v4124)
if /i "%ADVLIST%" EQU "53" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS53)
if /i "%ADVLIST%" EQU "55" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS55)
if /i "%ADVLIST%" EQU "56" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS56)
if /i "%ADVLIST%" EQU "57" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS57)
if /i "%ADVLIST%" EQU "58" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS58)
if /i "%ADVLIST%" EQU "59" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS59)
if /i "%ADVLIST%" EQU "60" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS60)
if /i "%ADVLIST%" EQU "60P" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS60P)
if /i "%ADVLIST%" EQU "61" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS61)
if /i "%ADVLIST%" EQU "62" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS62)
if /i "%ADVLIST%" EQU "70" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS70)
if /i "%ADVLIST%" EQU "80" (set ADVTYPE=IOS) & (set CurrentDLNAME=IOS80)
if /i "%ADVLIST%" EQU "2225" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS222[38]-v5)
if /i "%ADVLIST%" EQU "2235" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS223[37]-v5)
if /i "%ADVLIST%" EQU "2245" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS224[57]-v5)
if /i "%ADVLIST%" EQU "20251" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS202[60]-v5.1R)
if /i "%ADVLIST%" EQU "22251" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS222[38]-v5.1R)
if /i "%ADVLIST%" EQU "22351" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS223[37]-v5.1R)
if /i "%ADVLIST%" EQU "22451" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS224[57]-v5.1R)
if /i "%ADVLIST%" EQU "2491937" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[37]-v19)
if /i "%ADVLIST%" EQU "2491938" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[38]-v19)
if /i "%ADVLIST%" EQU "2492038" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[38]-v20)
if /i "%ADVLIST%" EQU "2492056" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[56]-v20)
if /i "%ADVLIST%" EQU "2492057" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[57]-v20)
if /i "%ADVLIST%" EQU "2491957" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[57]-v19)
if /i "%ADVLIST%" EQU "2224" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS222[38]-v4)
if /i "%ADVLIST%" EQU "2234" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS223[37-38]-v4)
if /i "%ADVLIST%" EQU "24917" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249-v17b)
if /i "%ADVLIST%" EQU "24914" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249-v14)
if /i "%ADVLIST%" EQU "2492137" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[37]-v21)
if /i "%ADVLIST%" EQU "2492138" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[38]-v21)
if /i "%ADVLIST%" EQU "2492156" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[56]-v21)
if /i "%ADVLIST%" EQU "2492153" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[53]-v21)
if /i "%ADVLIST%" EQU "2492155" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[55]-v21)
if /i "%ADVLIST%" EQU "2492157" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[57]-v21)
if /i "%ADVLIST%" EQU "2492158" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[58]-v21)
if /i "%ADVLIST%" EQU "24937" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[37]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24938" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[38]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24953" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[53]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24955" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[55]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24956" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[56]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24957" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[57]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24958" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[58]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24960" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[60]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24970" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[70]-d2x-v10-beta52)
if /i "%ADVLIST%" EQU "24980" (set ADVTYPE=CIOS) & (set CurrentDLNAME=cIOS249[80]-d2x-v10-beta52)
if not "%CurrentDLNAME%"=="" call "Support\subscripts\DB.bat"
if not "%CurrentDLNAME%"=="" (set CurrentDLNAME=) & (goto:downloadstart)
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ADVANCED
::------------------------
:betaswitch
if exist temp\list.txt del temp\list.txt>nul
if exist temp\list2.txt del temp\list2.txt>nul
echo Checking for new d2x beta's hosted online...
::get all list
start /min /wait support\wget --no-check-certificate -N "https://github.com/modmii/modmii.github.io/tree/master/temp/d2x" -O "temp\list.txt"
if exist not exist temp\list.txt goto:nowifi
::copy /y "temp\list.txt" "temp\list2.txt">nul
support\sfk filter -spat "temp\list.txt" -rep _\x22path\x22_\x0d\x0a_ -write -yes>nul
support\sfk filter -spat "temp\list.txt" ++".7z" ++"d2x/" -rep _"*temp/d2x/"__ -rep _".7z*"__ -write -yes>nul
copy /y "temp\list.txt" "temp\list2.txt">nul
support\sfk filter "temp\list.txt" -rep _"*/"__ -write -yes>nul
:nowifi
::get local list
dir support\More-cIOSs /a:d /b>>temp\list.txt
support\sfk filter "temp\list.txt" -unique -write -yes>nul
:betaswitch2
::count # of folders in advance to set "mode"
setlocal ENABLEDELAYEDEXPANSION
SET d2xTOTAL=0
for /f "delims=" %%i in (temp\list.txt) do set /a d2xTOTAL=!d2xTOTAL!+1
setlocal DISABLEDELAYEDEXPANSION
Set betacios=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the d2x cIOS version you would like to build:
echo.
echo Current Setting: v%d2x-beta-rev%
echo.
echo Notes: * d2x-v8-final is nearly identical to v10-beta52 and v11-beta1
echo * d2x-v10-beta53 is not recommended unless you are bug testing
echo * Versions older than v8 beta42 do not support bases 60/70/80
echo.
echo.
if /i "%d2xTOTAL%" EQU "0" (echo No d2x-betas were found in the support\More-cIOSs Folder) & (goto:quickskip)
echo D = Default that came with ModMii v%currentversion%
echo.
set MorecIOSsNum=0
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist %%A
goto:quickskip
:processlist
set CurrentcIOS=%*
set /a MorecIOSsNum=%MorecIOSsNum%+1
::findStr /I /C:"%CurrentcIOS%" "temp\list2.txt" >nul
::IF ERRORLEVEL 1 (set d2xFeatured=) else (set d2xFeatured= - Featured)
if not exist "support\More-cIOSs\%CurrentcIOS%" echo %MorecIOSsNum% = %CurrentcIOS% (Online)%d2xFeatured%
if exist "support\More-cIOSs\%CurrentcIOS%" echo %MorecIOSsNum% = %CurrentcIOS% (Local)%d2xFeatured%
goto:EOF
:quickskip
echo.
echo WWW = More Information Available at github.com/davebaol/d2x-cios
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p betacios= Enter Selection Here:
if /i "%betacios%" EQU "M" goto:MENU
if /i "%betacios%" EQU "B" goto:%backbeforebetaswitch%
if /i "%betacios%" EQU "WWW" (start https://github.com/davebaol/d2x-cios/releases) & (goto:betaswitch)
if /i "%betacios%" NEQ "D" goto:notD
if exist support\d2x-beta rd /s /q support\d2x-beta
set d2x-beta-rev=11-beta1
goto:d2xfix
:notD
if "%betacios%"=="" goto:badkey
if /i "%d2xTOTAL%" EQU "0" goto:badkey
echo set betacios=%betacios% >temp\temp.bat
support\sfk filter -quiet temp\temp.bat -rep _.__ -lerep _" "__ -write -yes
call temp\temp.bat
del temp\temp.bat>nul
if %betacios% LSS 1 goto:badkey
if /i %betacios% GTR %MorecIOSsNum% goto:badkey
::----copy folders over----
set MorecIOSsNum2=0
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist4 %%A
goto:quickskip
:processlist4
set CurrentcIOS=%*
::if not exist "support\More-cIOSs\%CurrentcIOS%\d2x-beta.bat" goto:EOF
set /a MorecIOSsNum2=%MorecIOSsNum2%+1
if /i "%MorecIOSsNum2%" EQU "%betacios%" goto:quickskip
goto:EOF
:quickskip
support\sfk filter "temp\list2.txt" ++"%CurrentcIOS%" -write -yes>nul
set /p DLcIOS= <"temp\list2.txt"
::set DLcIOS=%CurrentcIOS%
::set CurrentcIOS=%CurrentcIOS:*/=%
if exist "support\More-cIOSs\%CurrentcIOS%\d2x-beta.bat" goto:nodownload
if not exist "support\More-cIOSs\%CurrentcIOS%" mkdir "support\More-cIOSs\%CurrentcIOS%"
start /min /wait support\wget --output-document %CurrentcIOS%.zip --no-check-certificate -t 3 "https://github.com/modmii/modmii.github.io/blob/master/temp/d2x/%DLcIOS%.7z?raw=true"
if not exist "%CurrentcIOS%.zip" goto:badkey
support\7za e -aoa "%CurrentcIOS%.zip" -o"support\More-cIOSs\%CurrentcIOS%" *.* -r
del "%CurrentcIOS%.zip">nul
if not exist "support\More-cIOSs\%CurrentcIOS%\d2x-beta.bat" (rd /s /q "support\More-cIOSs\%CurrentcIOS%") & (goto:badkey)
:nodownload
if exist support\d2x-beta rd /s /q support\d2x-beta
mkdir support\d2x-beta
copy /y "support\More-cIOSs\%CurrentcIOS%\*" "support\d2x-beta">nul
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
del temp\list.txt>nul
del temp\list2.txt>nul
goto:d2xfix
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:betaswitch2
::--------------
:d2xfix
::d2x check for changed DL names and md5's for Advanced downloads only
if not exist temp\DLnamesADV.txt goto:%backbeforebetaswitch%
findStr "d2x" temp\DLnamesADV.txt >nul
IF ERRORLEVEL 1 goto:%backbeforebetaswitch%
FINDSTR /N . temp\DLnamesADV.txt>temp\DLnamesADVcheck.txt
support\sfk filter -quiet temp\DLnamesADVcheck.txt -+d2x -rep _cIOS*[_cIOS249[_ -rep _"Advanced Download: "__ -write -yes
set loadorgo=load4switch
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLnamesADVcheck.txt) do call :processDLCheckswitch %%A
goto:quickskip
:processDLCheckswitch
set advDLCheck=%*
echo set advDLcheckNUM=%advDLCheck%>temp\advDLcheckNUM.bat
support\sfk filter -quiet temp\advDLcheckNUM.bat -rep _:*__ -write -yes
call temp\advDLcheckNUM.bat
del temp\advDLcheckNUM.bat>nul
echo %advDLCheck%>temp\advDLcheck.bat
support\sfk filter -quiet temp\advDLcheck.bat -rep _"%advDLcheckNUM%:"_"set advDLcheck="_ -write -yes
call temp\advDLcheck.bat
del temp\advDLcheck.bat>nul
call temp\AdvDL%advDLcheckNUM%.bat
set oldfullname=%name%
set advDLCheck0=%advDLCheck%
set d2x-beta-rev=11-beta1
set advDLCheck=%advDLCheck:~0,17%%d2x-beta-rev%
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
set string=%d2x-beta-rev%
set d2xVersionLength=0
:loopd2xVersionLength
if defined string (
set string=%string:~1%
set /A d2xVersionLength += 1
goto:loopd2xVersionLength
)
echo set alt-d2x-beta-rev=@advDLcheck0:~17,%d2xVersionLength%@>temp\d2x-beta-rev.bat
support\sfk filter temp\d2x-beta-rev.bat -spat -rep _@_%%_ -write -yes>nul
call temp\d2x-beta-rev.bat
del temp\d2x-beta-rev.bat>nul
if /i "%d2x-beta-rev%" EQU "%alt-d2x-beta-rev%" goto:EOF
goto:%advDLCheck%
:processDLCheck2switch
set slotnum=%slotcode:~7%
if "%slotnum%"=="" set slotnum=249
set newname=cIOS%slotnum%%basecios:~7,10%%d2x-beta-rev%
::update temp\AdvDL#.bat
support\sfk filter -quiet temp\AdvDL%advDLcheckNUM%.bat -rep _"set MD5="*_"set MD5=%MD5%"_ -rep _"set md5alt="*_"set md5alt=%md5alt%"_ -rep _"set ciosversion="*_"set ciosversion=%ciosversion%"_ -rep _"Advanced Download: "*_"Advanced Download: %newname%%versionname%"_ -rep _"set wadname="*_"set wadname=%wadname%"_ -rep _"set wadnameless="*_"set wadnameless=%newname%"_ -write -yes
::update temp\DLnamesADV.txt
support\sfk filter -quiet temp\DLnamesADV.txt -lerep _"%oldfullname%"_"Advanced Download: %newname%%versionname%"_ -write -yes
goto:EOF
:quickskip
if exist temp\DLnamesADVcheck.txt del temp\DLnamesADVcheck.txt>nul
::set loadorgo=go
goto:%backbeforebetaswitch%
::---------------------
::------------------------------------ADVANCED page 2 - PATCH IOS--------------------------------
:ADVPAGE2
set loadorgo=go
set ADVPATCH=
set patchcode=
set patchname=
set ADVSLOT=
set SLOTCODE=
set SLOTNAME=
if /i "%ADVLIST%" EQU "U" goto:skip
set wadnameless=%wadname%
echo BLAH%wadname%>wadnametemp.bat
support\sfk filter wadnametemp.bat -rep _BLAH_"set wadnameless="_ -rep _RVL-__ -rep _.wad__ -write -yes>nul
::-rep _-64-__
call wadnametemp.bat
del wadnametemp.bat>nul
if /i "%wadname%" EQU "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])" goto:ADVPAGE3
if /i "%ADVTYPE%" EQU "CIOS" goto:ADVPAGE3
:skip
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo How would you like to patch %wadnameless%?
echo.
echo.
echo.
echo A = All 4 available patches
echo N = No Patches
echo.
echo -FS = FakeSigning Patch
echo -ES = ES Identify Patch
echo -NP = Nand Permission Patch
echo -VP = Version Patch
echo.
echo.
echo.
echo Select multiple patches by separating them by a space.
echo.
echo.
echo Examples of how to select multiple patches
echo ------------------------------------------
echo -FS -ES -NP
echo -ES -FS
echo -NP -VP
echo -NP -FS -VP
echo -FS -ES -NP -VP
echo etc.
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p ADVPATCH= Enter Selection Here:
if "%ADVLIST%"=="" goto:badkey
if /i "%ADVPATCH%" EQU "M" goto:MENU
if /i "%ADVLIST%" EQU "U" goto:skip
if /i "%ADVPATCH%" EQU "B" goto:ADVANCED
:skip
if /i "%ADVPATCH%" EQU "B" goto:CUSTOMPAGE2
if /i "%ADVPATCH%" EQU "N" (set patchcode=) & (set patchname=) & (goto:ADVPAGE3)
if /i "%ADVPATCH%" EQU "A" set ADVPATCH=-FS -ES -NP -VP
::if lower case letters entered change to upper
if /i "%ADVPATCH%" EQU "-FS" set ADVPATCH=-FS
if /i "%ADVPATCH%" EQU "-ES" set ADVPATCH=-ES
if /i "%ADVPATCH%" EQU "-NP" set ADVPATCH=-NP
if /i "%ADVPATCH%" EQU "-VP" set ADVPATCH=-VP
if /i "%ADVPATCH%" EQU "-FS -ES" set ADVPATCH=-FS -ES
if /i "%ADVPATCH%" EQU "-ES -FS" set ADVPATCH=-ES -FS
if /i "%ADVPATCH%" EQU "-FS -NP" set ADVPATCH=-FS -NP
if /i "%ADVPATCH%" EQU "-NP -FS" set ADVPATCH=-NP -FS
if /i "%ADVPATCH%" EQU "-FS -VP" set ADVPATCH=-FS -VP
if /i "%ADVPATCH%" EQU "-VP -FS" set ADVPATCH=-VP -FS
if /i "%ADVPATCH%" EQU "-ES -NP" set ADVPATCH=-ES -NP
if /i "%ADVPATCH%" EQU "-NP -ES" set ADVPATCH=-NP -ES
if /i "%ADVPATCH%" EQU "-ES -VP" set ADVPATCH=-ES -VP
if /i "%ADVPATCH%" EQU "-VP -ES" set ADVPATCH=-VP -ES
if /i "%ADVPATCH%" EQU "-NP -VP" set ADVPATCH=-NP -VP
if /i "%ADVPATCH%" EQU "-VP -NP" set ADVPATCH=-VP -NP
if /i "%ADVPATCH%" EQU "-FS -ES -NP" set ADVPATCH=-FS -ES -NP
if /i "%ADVPATCH%" EQU "-FS -NP -ES" set ADVPATCH=-FS -NP -ES
if /i "%ADVPATCH%" EQU "-ES -FS -NP" set ADVPATCH=-ES -FS -NP
if /i "%ADVPATCH%" EQU "-ES -NP -FS" set ADVPATCH=-ES -NP -FS
if /i "%ADVPATCH%" EQU "-NP -FS -ES" set ADVPATCH=-NP -FS -ES
if /i "%ADVPATCH%" EQU "-NP -ES -FS" set ADVPATCH=-NP -ES -FS
if /i "%ADVPATCH%" EQU "-FS -ES -VP" set ADVPATCH=-FS -ES -VP
if /i "%ADVPATCH%" EQU "-FS -VP -ES" set ADVPATCH=-FS -VP -ES
if /i "%ADVPATCH%" EQU "-ES -FS -VP" set ADVPATCH=-ES -FS -VP
if /i "%ADVPATCH%" EQU "-ES -VP -FS" set ADVPATCH=-ES -VP -FS
if /i "%ADVPATCH%" EQU "-VP -FS -ES" set ADVPATCH=-VP -FS -ES
if /i "%ADVPATCH%" EQU "-VP -ES -FS" set ADVPATCH=-VP -ES -FS
if /i "%ADVPATCH%" EQU "-FS -NP -VP" set ADVPATCH=-FS -NP -VP
if /i "%ADVPATCH%" EQU "-FS -VP -NP" set ADVPATCH=-FS -VP -NP
if /i "%ADVPATCH%" EQU "-NP -FS -VP" set ADVPATCH=-NP -FS -VP
if /i "%ADVPATCH%" EQU "-NP -VP -FS" set ADVPATCH=-NP -VP -FS
if /i "%ADVPATCH%" EQU "-VP -NP -FS" set ADVPATCH=-VP -NP -FS
if /i "%ADVPATCH%" EQU "-VP -FS -NP" set ADVPATCH=-VP -FS -NP
if /i "%ADVPATCH%" EQU "-ES -NP -VP" set ADVPATCH=-ES -NP -VP
if /i "%ADVPATCH%" EQU "-ES -VP -NP" set ADVPATCH=-ES -VP -NP
if /i "%ADVPATCH%" EQU "-NP -ES -VP" set ADVPATCH=-NP -ES -VP
if /i "%ADVPATCH%" EQU "-NP -VP -ES" set ADVPATCH=-NP -VP -ES
if /i "%ADVPATCH%" EQU "-VP -ES -NP" set ADVPATCH=-VP -ES -NP
if /i "%ADVPATCH%" EQU "-VP -NP -ES" set ADVPATCH=-VP -NP -ES
if /i "%ADVPATCH%" EQU "-VP -FS -ES -NP" set ADVPATCH=-VP -FS -ES -NP
if /i "%ADVPATCH%" EQU "-VP -FS -NP -ES" set ADVPATCH=-VP -FS -NP -ES
if /i "%ADVPATCH%" EQU "-VP -ES -FS -NP" set ADVPATCH=-VP -ES -FS -NP
if /i "%ADVPATCH%" EQU "-VP -ES -NP -FS" set ADVPATCH=-VP -ES -NP -FS
if /i "%ADVPATCH%" EQU "-VP -NP -FS -ES" set ADVPATCH=-VP -NP -FS -ES
if /i "%ADVPATCH%" EQU "-VP -NP -ES -FS" set ADVPATCH=-VP -NP -ES -FS
if /i "%ADVPATCH%" EQU "-NP -FS -ES -VP" set ADVPATCH=-NP -FS -ES -VP
if /i "%ADVPATCH%" EQU "-NP -FS -VP -ES" set ADVPATCH=-NP -FS -VP -ES
if /i "%ADVPATCH%" EQU "-NP -ES -FS -VP" set ADVPATCH=-NP -ES -FS -VP
if /i "%ADVPATCH%" EQU "-NP -ES -VP -FS" set ADVPATCH=-NP -ES -VP -FS
if /i "%ADVPATCH%" EQU "-NP -VP -FS -ES" set ADVPATCH=-NP -VP -FS -ES
if /i "%ADVPATCH%" EQU "-NP -VP -ES -FS" set ADVPATCH=-NP -VP -ES -FS
if /i "%ADVPATCH%" EQU "-ES -FS -NP -VP" set ADVPATCH=-ES -FS -NP -VP
if /i "%ADVPATCH%" EQU "-ES -FS -VP -NP" set ADVPATCH=-ES -FS -VP -NP
if /i "%ADVPATCH%" EQU "-ES -NP -FS -VP" set ADVPATCH=-ES -NP -FS -VP
if /i "%ADVPATCH%" EQU "-ES -NP -VP -FS" set ADVPATCH=-ES -NP -VP -FS
if /i "%ADVPATCH%" EQU "-ES -VP -NP -FS" set ADVPATCH=-ES -VP -NP -FS
if /i "%ADVPATCH%" EQU "-ES -VP -FS -NP" set ADVPATCH=-ES -VP -FS -NP
if /i "%ADVPATCH%" EQU "-FS -ES -NP -VP" set ADVPATCH=-FS -ES -NP -VP
if /i "%ADVPATCH%" EQU "-FS -ES -VP -NP" set ADVPATCH=-FS -ES -VP -NP
if /i "%ADVPATCH%" EQU "-FS -NP -ES -VP" set ADVPATCH=-FS -NP -ES -VP
if /i "%ADVPATCH%" EQU "-FS -NP -VP -ES" set ADVPATCH=-FS -NP -VP -ES
if /i "%ADVPATCH%" EQU "-FS -VP -ES -NP" set ADVPATCH=-FS -VP -ES -NP
if /i "%ADVPATCH%" EQU "-FS -VP -NP -ES" set ADVPATCH=-FS -VP -NP -ES
::add leading space for patchcode
set patchcode= %ADVPATCH%
::remove leading dash and space for patchname
echo [%ADVPATCH:~1%]>temp\temp.txt
support\sfk filter -quiet temp\temp.txt -rep _" "__ -write -yes
set /p patchname= <temp\temp.txt
del temp\temp.txt>nul
if /i "%ADVPATCH%" EQU "-FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -ES -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -NP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -FS -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -NP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -FS -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -ES -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -ES -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -VP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -FS -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -VP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -FS -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -ES -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -NP -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -VP -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -FS -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -VP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -NP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -FS -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -NP -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -VP -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -ES -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -VP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -ES -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -NP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -FS -ES -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -FS -NP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -ES -FS -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -ES -NP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -NP -FS -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-VP -NP -ES -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -FS -ES -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -FS -VP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -ES -FS -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -ES -VP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -VP -FS -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-NP -VP -ES -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -FS -NP -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -FS -VP -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -NP -FS -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -NP -VP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -VP -NP -FS" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-ES -VP -FS -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -ES -NP -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -ES -VP -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -NP -ES -VP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -NP -VP -ES" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -VP -ES -NP" goto:ADVPAGE3
if /i "%ADVPATCH%" EQU "-FS -VP -NP -ES" goto:ADVPAGE3
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ADVPAGE2
::------------------------------------ADVANCED page 3 - SLOT--------------------------------
:ADVPAGE3
set ADVSLOT=
set SLOTCODE=
set SLOTNAME=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo To change the IOS slot # for %wadnameless%%patchname%
echo.
echo Enter a new IOS slot # now
echo.
echo.
echo.
echo.
support\sfk echo -spat \x20 [%redtext%] WARNING: Be careful what IOS slot # you choose, if it overwrites a crucial IOS
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] YOU MAY BRICK
echo.
echo.
echo.
echo Note: Must be between 3 and 254
echo.
echo.
echo N = No, leave slot unchanged
echo.
echo.
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p ADVSLOT= Enter Selection Here:
::"B" will actually take u to the menu only to clear the download_queue, then it will return to advanced page1
if /i "%ADVSLOT%" EQU "M" goto:MENU
if /i "%wadname%" EQU "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])" goto:BACKTOMENUFIRST
if /i "%ADVTYPE%" EQU "CIOS" goto:BACKTOMENUFIRST
if /i "%ADVSLOT%" EQU "B" goto:ADVPAGE2
:BACKTOMENUFIRST
if /i "%ADVSLOT%" EQU "B" goto:ADVANCED
if /i "%ADVSLOT%" NEQ "N" goto:notnone
if /i "%ADVTYPE%" EQU "CIOS" (set ADVSLOT=%wadname:~4,3%) & (goto:ADVPAGE4)
if /i "%wadname%" EQU "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])" (set ADVSLOT=60) & (goto:ADVPAGE4)
:notnone
if /i "%ADVSLOT%" EQU "N" goto:ADVPAGE4
set SLOTCODE= -slot %ADVSLOT%
set SLOTNAME=-slot%ADVSLOT%
::limit user input to X# of digits
if not "%ADVSLOT:~3%"=="" (
:: echo. ERROR: Name cannot be more than 8 chars
goto:badkey
)
::Reject negative numbers - and reject 1 and 2 (LSS is less than, GTR is greater than)
if %ADVSLOT% LSS 3 (goto:badkey)
if %ADVSLOT% LEQ 254 goto:ADVPAGE4
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ADVPAGE3
::------------------------------------ADVANCED page 4 - Version--------------------------------
:ADVPAGE4
Set ADVVERSION=
set VERSIONNAME=
set VERSIONCODE=
set versionreal=%version%
if /i "%ADVLIST%" EQU "2224" set versionreal=4
if /i "%ADVLIST%" EQU "2234" set versionreal=4
if /i "%ADVLIST%" EQU "24914" set versionreal=14
if /i "%ADVLIST%" EQU "24917" set versionreal=17
if /i "%ADVLIST%" EQU "2491937" set versionreal=19
if /i "%ADVLIST%" EQU "2491938" set versionreal=19
if /i "%ADVLIST%" EQU "2491957" set versionreal=19
if /i "%ADVLIST%" EQU "2492056" set versionreal=20
if /i "%ADVLIST%" EQU "2492057" set versionreal=20
if /i "%ADVLIST%" EQU "2492038" set versionreal=20
if /i "%ADVLIST%" EQU "2225" set versionreal=65535
if /i "%ADVLIST%" EQU "2235" set versionreal=65535
if /i "%ADVLIST%" EQU "2245" set versionreal=65535
if /i "%ADVLIST%" EQU "20251" set versionreal=65535
if /i "%ADVLIST%" EQU "22251" set versionreal=65535
if /i "%ADVLIST%" EQU "22351" set versionreal=65535
if /i "%ADVLIST%" EQU "22451" set versionreal=65535
if /i "%ADVLIST%" EQU "2492137" set versionreal=21
if /i "%ADVLIST%" EQU "2492138" set versionreal=21
if /i "%ADVLIST%" EQU "2492153" set versionreal=21
if /i "%ADVLIST%" EQU "2492155" set versionreal=21
if /i "%ADVLIST%" EQU "2492156" set versionreal=21
if /i "%ADVLIST%" EQU "2492157" set versionreal=21
if /i "%ADVLIST%" EQU "2492158" set versionreal=21
if /i "%ADVLIST%" EQU "24937" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24938" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24953" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24955" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24956" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24957" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24958" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24960" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24970" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "24980" set versionreal=%ciosversion%
if /i "%ADVLIST%" EQU "60P" set versionreal=%ciosversion%
if /i "%ADVTYPE%" NEQ "CIOS" goto:miniskip
if /i "%ADVSLOT%" EQU "%wadname:~4,3%" set SLOTCODE=
if /i "%ADVSLOT%" EQU "%wadname:~4,3%" set SLOTNAME=
::if /i "%ADVSLOT%" EQU "N" goto:miniskip
set wadnameless=cIOS%ADVSLOT%%wadname:~7%
set slotname=
:miniskip
set /a versionplus1=%versionreal%+1
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Would you like to change the version # of this WAD:
echo.
echo %wadnameless%%patchname%%slotname%
echo.
echo.
echo Note: MAX is 65535
echo.
echo.
echo.
echo MAX = MAX (65535)
echo.
echo N = No, leave version unchanged (%versionreal%)
if /i "%VER%" EQU "*" goto:bypass
if /i "%versionreal%" NEQ "65535" echo.
if /i "%versionreal%" NEQ "65535" echo V1 = Version + 1 (%versionplus1%)
:bypass
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p ADVVERSION= Enter Selection Here:
::"B" will actually take u to the menu only to clear the download_queue, then it will return to advanced page1
if /i "%ADVVERSION%" EQU "M" goto:MENU
if /i "%ADVVERSION%" EQU "B" goto:ADVPAGE3
if /i "%ADVVERSION%" EQU "MAX" set ADVVERSION=65535
if /i "%versionreal%" EQU "65535" goto:alreadymaxxed
if /i "%VER%" EQU "*" goto:alreadymaxxed
if /i "%ADVVERSION%" EQU "v1" set ADVVERSION=%versionplus1%
:alreadymaxxed
set versioncode= -v %ADVVERSION%
set versionname=-[v%ADVVERSION%]
if /i "%ADVLIST%" EQU "U" goto:skip
if /i "%ADVVERSION%" EQU "N" goto:ADVCONFIRM
:skip
if /i "%ADVVERSION%" EQU "N" goto:CONFIRM
::limit user input to X# of digits
if not "%ADVVERSION:~5%"=="" (
:: echo. ERROR: Name cannot be more than 8 chars
goto:badkey
)
::Reject negative numbers (LSS is less than, GTR is greater than)
if %ADVVERSION% LSS 1 (goto:badkey)
if /i "%ADVLIST%" EQU "U" goto:skip
if %ADVVERSION% LEQ 65535 goto:ADVCONFIRM
:skip
if %ADVVERSION% LEQ 65535 goto:CONFIRM
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ADVPAGE4
::------------------------------------ADVANCED page CONFIRM - Version--------------------------------
:ADVCONFIRM
set ADVCONFIRM=
if /i "%ADVVERSION%" EQU "N" set VERSIONNAME=
if /i "%ADVVERSION%" EQU "N" set VERSIONCODE=
set changes=
if /i "%wadname:~0,-4%" EQU "%wadnameless%%patchname%%slotname%%versionname%" set changes=none
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo ADVANCED CUSTOM DOWNLOADS
echo.
echo.
if /i "%changes%" EQU "none" goto:nochanges
echo Are these settings correct?
echo.
echo.
echo.
echo Download %wadname% and Patch it accordingly
echo.
if /i "%ADVTYPE%" NEQ "CIOS" goto:miniskip
if /i "%ADVSLOT%" EQU "%wadname:~4,3%" goto:miniskip
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 cIOS[%redtext%]%ADVSLOT%[def]%wadname:~7%[%redtext%]%patchname%%slotname%%versionname%
goto:yeschanges
:miniskip
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 %wadnameless%[%redtext%]%patchname%%slotname%%versionname%
goto:yeschanges
:nochanges
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%yellowtext%] You have not selected any changes to be made to %wadnameless%
echo.
echo.
echo If you want to download %wadnameless%
echo you can do so from the Batch/Additional Download Pages
:yeschanges
echo.
echo.
echo.
echo.
if /i "%changes%" NEQ "none" echo Y = Yes, add Advanced Download to Queue
echo.
echo N = No, go back to Advanced Custom Downloads Menu
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p ADVCONFIRM= Enter Selection Here:
::"B" will actually take u to the menu only to clear the download_queue, then it will return to advanced page1
if /i "%ADVCONFIRM%" EQU "B" goto:ADVPAGE4
if /i "%ADVCONFIRM%" EQU "M" goto:MENU
if /i "%ADVCONFIRM%" EQU "N" goto:ADVANCED
if /i "%changes%" EQU "none" goto:nochanges2
if /i "%ADVCONFIRM%" EQU "Y" set /a AdvNumber=%AdvNumber%+1
if /i "%ADVCONFIRM%" EQU "Y" goto:SaveADVdlSettings
:nochanges2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:ADVCONFIRM
:SaveADVdlSettings
echo.
echo Adding Advanced Download to queue, this may take a few seconds...
echo.
echo "set name=Advanced Download: %wadnameless%%patchname%%slotname%%versionname%">temp\AdvDL%AdvNumber%.bat
echo "set wadname=%wadname%">>temp\AdvDL%AdvNumber%.bat
echo "set ciosslot=%ciosSLOT%">>temp\AdvDL%AdvNumber%.bat
echo "set ciosversion=%ciosVERSION%">>temp\AdvDL%AdvNumber%.bat
echo "set md5=%md5%">>temp\AdvDL%AdvNumber%.bat
echo "set md5alt=%md5alt%">>temp\AdvDL%AdvNumber%.bat
echo "set basewad=%basewad%">>temp\AdvDL%AdvNumber%.bat
echo "set md5base=%md5base%">>temp\AdvDL%AdvNumber%.bat
echo "set md5basealt=%md5basealt%">>temp\AdvDL%AdvNumber%.bat
echo "set code1=%code1%">>temp\AdvDL%AdvNumber%.bat
echo "set code2=%code2%">>temp\AdvDL%AdvNumber%.bat
echo "set version=%version%">>temp\AdvDL%AdvNumber%.bat
echo "set basewadb=%basewadb%">>temp\AdvDL%AdvNumber%.bat
echo "set md5baseb=%md5baseb%">>temp\AdvDL%AdvNumber%.bat
echo "set md5basebalt=%md5basebalt%">>temp\AdvDL%AdvNumber%.bat
echo "set code1b=%code1b%">>temp\AdvDL%AdvNumber%.bat
echo "set code2b=%code2b%">>temp\AdvDL%AdvNumber%.bat
echo "set versionb=%versionb%">>temp\AdvDL%AdvNumber%.bat
echo "set basecios=%basecios%">>temp\AdvDL%AdvNumber%.bat
echo "set diffpath=%diffpath%">>temp\AdvDL%AdvNumber%.bat
echo "set code2new=%code2new%">>temp\AdvDL%AdvNumber%.bat
echo "set lastbasemodule=%lastbasemodule%">>temp\AdvDL%AdvNumber%.bat
echo "set category=%category%">>temp\AdvDL%AdvNumber%.bat
echo "set wadnameless=%wadnameless%">>temp\AdvDL%AdvNumber%.bat
echo "set patchname=%patchname%">>temp\AdvDL%AdvNumber%.bat
echo "set slotname=%slotname%">>temp\AdvDL%AdvNumber%.bat
echo "set slotcode=%slotcode%">>temp\AdvDL%AdvNumber%.bat
echo "set versionname=%versionname%">>temp\AdvDL%AdvNumber%.bat
echo "set versioncode=%versioncode%">>temp\AdvDL%AdvNumber%.bat
echo "set cIOSFamilyName=%cIOSFamilyName%">>temp\AdvDL%AdvNumber%.bat
echo "set cIOSversionNum=%cIOSversionNum%">>temp\AdvDL%AdvNumber%.bat
echo "set PATCHCODE=%PATCHCODE%">>temp\AdvDL%AdvNumber%.bat
::echo "goto:downloadstart">>temp\AdvDL%AdvNumber%.bat
echo "Advanced Download: %wadnameless%%patchname%%slotname%%versionname%">>temp\DLnamesADV.txt
echo "temp\AdvDL%AdvNumber%.bat">>temp\DLgotosADV.txt
support\sfk filter -quiet "temp\AdvDL%AdvNumber%.bat" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLnamesADV.txt" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLgotosADV.txt" -rep _"""__ -write -yes
goto:ADVANCED
::...................................Custom- User-Defined Custom Download...............................
:CUSTOM
set DEC=none
set HEX=
set countIOS=0
set VERFINAL=
set patchname=
set slotname=
set versionname=
set HEX=
set VER=
set wadfolder=
set verfinal=
set PATCHCODE=
set slotcode=
set versioncode=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Enter the Number of the IOS you would like to download
::echo either in Decimal (x,xx,xxx; ie. 9,60,249), or in Hex (xx; ie. F9=249)
echo or enter "SM" or "MIOS" to download a System Menu or MIOS
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] WARNING: Make sure the IOS number you input actually exists
echo.
echo.
echo.
echo.
echo # = Download the IOS number
echo.
echo SM = Download a System Menu
echo.
echo MIOS = Download an MIOS
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p DEC= Enter Selection Here:
if /i "%DEC%" EQU "M" goto:MENU
if /i "%DEC%" EQU "B" goto:ADVANCED
if /i "%DEC%" EQU "MIOS" goto:CUSTOMPAGE2
if /i "%DEC%" EQU "SM" goto:CUSTOMPAGE2
::limit user input to X# of digits
if not "%DEC:~3%"=="" (
:: echo. ERROR: Name cannot be more than 8 chars
goto:badkey
)
::Reject negative numbers (LSS is less than, GTR is greater than)
if %DEC% LSS 1 (goto:badkey)
if %DEC% LEQ 254 goto:CUSTOMPAGE2
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CUSTOM
:CUSTOMPAGE2
set VER=
set ADVPATCH=
set patchcode=
set patchname=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%DEC%" EQU "SM" echo What Version of the System Menu would like to download? (ie. XXX)
if /i "%DEC%" EQU "SM" goto:NEXT1
if /i "%DEC%" EQU "MIOS" echo What Version of MIOS would like to download? (ie. 4, 5, 8, 10)
if /i "%DEC%" EQU "MIOS" goto:NEXT1
echo What Version of IOS %DEC% would like to download?
:NEXT1
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 [%redtext%] WARNINGS:[def] - Make sure the version you input actually exists
echo - Most recent version may be stubbed
echo.
echo.
echo.
echo.
if /i "%DEC%" NEQ "SM" echo * = Download the most recent version
if /i "%DEC%" EQU "SM" echo * = Download the most recent Korean System Menu
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p VER= Enter Selection Here:
if /i "%VER%" EQU "M" goto:MENU
if /i "%VER%" EQU "B" goto:CUSTOM
set version=%VER%
if /i "%VER%" EQU "*" goto:bypass
::limit user input to X# of digits
if not "%VER:~5%"=="" (
goto:badkey
)
::Reject negative numbers (LSS is less than, GTR is greater than)
if %VER% LSS 1 (goto:badkey)
:bypass
if /i "%DEC%" EQU "SM" goto:nopatches
if /i "%DEC%" EQU "MIOS" goto:nopatches
::for IOSs Only
if /i "%VER%" NEQ "*" set wadnameless=IOS%DEC%-64-v%VER%
if /i "%VER%" EQU "*" set wadnameless=IOS%DEC%-64-vNEW
if /i "%VER%" EQU "*" goto:ADVPAGE2
if /i "%VER%" LSS 65536 goto:ADVPAGE2
:nopatches
if /i "%VER%" EQU "*" goto:CONFIRM
if /i "%VER%" LSS 65536 goto:CONFIRM
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CUSTOMPAGE2
:CONFIRM
if /i "%ADVVERSION%" EQU "N" set VERSIONNAME=
if /i "%ADVVERSION%" EQU "N" set VERSIONCODE=
set VERFINAL=%VER%
if /i "%VER%" EQU "*" set VERFINAL=NEW
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
if /i "%DEC%" EQU "SM" echo Are you sure you want to try downloading System Menu v%VER%?
if /i "%DEC%" EQU "SM" goto:NEXT2
if /i "%DEC%" EQU "MIOS" echo Are you sure you want to try downloading MIOS v%VER%?
if /i "%DEC%" EQU "MIOS" goto:NEXT2
echo Are you sure you want to try downloading:
echo.
echo IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%
:NEXT2
echo.
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%redtext%] WARNING: this download will fail if the file does not exist.
echo.
echo.
echo.
echo.
echo Y = Yes, add Advanced Download to Queue
echo.
echo N = No, go back to Advanced Custom Downloads Menu
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p CONFIRM= Enter Selection Here:
if /i "%CONFIRM%" EQU "M" goto:MENU
if /i "%CONFIRM%" EQU "N" goto:ADVANCED
::if /i "%CONFIRM%" EQU "A" goto:CUSTOMDL
if /i "%CONFIRM%" EQU "Y" set /a AdvNumber=%AdvNumber%+1
if /i "%CONFIRM%" EQU "Y" goto:SaveADVdlSettings2
if /i "%DEC%" EQU "SM" goto:skip
if /i "%DEC%" EQU "MIOS" goto:skip
if /i "%CONFIRM%" EQU "B" goto:ADVPAGE4
:skip
if /i "%CONFIRM%" EQU "B" goto:CUSTOMPAGE2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CONFIRM
:SaveADVdlSettings2
if /i "%DEC%" EQU "SM" (echo "set name=Advanced Download: System Menu v%VER%">temp\AdvDL%AdvNumber%.bat) & (echo "Advanced Download: System Menu v%VER%">>temp\DLnamesADV.txt) & (goto:miniskip)
if /i "%DEC%" EQU "MIOS" (echo "set name=Advanced Download: MIOS v%VER%">temp\AdvDL%AdvNumber%.bat) & (echo "Advanced Download: MIOS v%VER%">>temp\DLnamesADV.txt) & (goto:miniskip)
echo "set name=Advanced Download: IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%">temp\AdvDL%AdvNumber%.bat
echo "Advanced Download: IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%">>temp\DLnamesADV.txt
:miniskip
echo "set DEC=%DEC%">>temp\AdvDL%AdvNumber%.bat
echo "set VERFINAL=%VERFINAL%">>temp\AdvDL%AdvNumber%.bat
echo "set patchname=%patchname%">>temp\AdvDL%AdvNumber%.bat
echo "set slotname=%slotname%">>temp\AdvDL%AdvNumber%.bat
echo "set versionname=%versionname%">>temp\AdvDL%AdvNumber%.bat
echo "set HEX=%HEX%">>temp\AdvDL%AdvNumber%.bat
echo "set VER=%VER%">>temp\AdvDL%AdvNumber%.bat
echo "set wadfolder=%wadfolder%">>temp\AdvDL%AdvNumber%.bat
echo "set PATCHCODE=%PATCHCODE%">>temp\AdvDL%AdvNumber%.bat
echo "set slotcode=%slotcode%">>temp\AdvDL%AdvNumber%.bat
echo "set versioncode=%versioncode%">>temp\AdvDL%AdvNumber%.bat
echo "set category=userdefined">>temp\AdvDL%AdvNumber%.bat
::echo "Advanced Download: %wadnameless%%patchname%%slotname%%versionname%">>temp\DLnamesADV.txt
echo "temp\AdvDL%AdvNumber%.bat">>temp\DLgotosADV.txt
support\sfk filter -quiet "temp\AdvDL%AdvNumber%.bat" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLnamesADV.txt" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLgotosADV.txt" -rep _"""__ -write -yes
goto:Advanced
::------------------------------------ADVANCED - FORWARDER DOL or ISO--------------------------------
:FORWARDERDOLorISO
set FORWARDERDOLorISO=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo What type of Forwarder would you like to build?
echo.
echo.
echo.
echo.
echo 1 = DOL
echo.
echo 2 = ISO
echo.
echo 3 = Both
echo.
echo.
echo Note: You can build a customized forwarder channel\WAD by opening
echo your base WAD using ModMii or Customize Mii from ModMii's
echo Download Page 2 and injecting your newly constructed DOL.
echo.
echo Note: Forwarder ISOs require a cIOS with base 38 in order to work.
echo If using a d2x cIOS, make sure IOS reload is set to "off".
echo.
echo Warning: Even when using the recommended settings, not everyone has
echo had success with custom Forwarder ISOs, results may vary.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p FORWARDERDOLorISO= Enter Selection Here:
if /i "%FORWARDERDOLorISO%" EQU "M" goto:MENU
if /i "%FORWARDERDOLorISO%" EQU "B" goto:ADVANCED
if /i "%FORWARDERDOLorISO%" EQU "1" goto:FORWARDERDOLBUILDER
if /i "%FORWARDERDOLorISO%" EQU "2" goto:FORWARDERDOLBUILDER
if /i "%FORWARDERDOLorISO%" EQU "3" goto:FORWARDERDOLBUILDER
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FORWARDERDOLorISO
::------------------------------------ADVANCED - FORWARDER DOL BUILDER--------------------------------
:FORWARDERDOLBUILDER
set FORWARDERTYPE=
set URLPATH=
set path-0=
set path-1=
set path-2=
set path-3=
set path-4=
set path-5=
set path-6=
set path-7=
set path-8=
set path-9=
set path-10=
set NumberOfPaths=1
set bigt=1
set FORWARDERTITLEID=
set DISCID=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo What type of Forwarder would you like to build?
echo.
echo.
echo.
echo.
echo 1 = SD\USB Forwarder (v14)
echo 1B = SD\USB Forwarder (v12), use if you experience issues with v14
echo.
echo 2 = URL Forwarder (Requires Internet Channel)
echo.
echo 3 = Channel Forwarder
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p FORWARDERTYPE= Enter Selection Here:
if /i "%FORWARDERTYPE%" EQU "M" goto:MENU
if /i "%FORWARDERTYPE%" EQU "B" goto:FORWARDERDOLorISO
if /i "%FORWARDERTYPE%" EQU "1" goto:v10FORWARDERDOL
if /i "%FORWARDERTYPE%" EQU "1B" goto:v10FORWARDERDOL
if /i "%FORWARDERTYPE%" EQU "2" goto:INTERNETFORWARDERDOL
if /i "%FORWARDERTYPE%" EQU "3" goto:CHANNELFORWARDERDOL
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FORWARDERDOLBUILDER
::------------------------------------ADVANCED - FORWARDER DOL BUILDER--------------------------------
:v10FORWARDERDOL
set path-0=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if "%path-10%"=="" echo Input forwarder path #%NumberOfPaths%:
if not "%path-10%"=="" (support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 [%redtext%] Maximum Number of paths have been reached) & (goto:maxreached)
echo.
echo.
echo Note: Cannot contain : * ? " < > | & %%
echo.
echo Examples:
echo apps/usbloader_cfg/boot.dol
echo apps/HackMii_Installer/boot.elf
echo boot.elf
echo.
echo Note: Maximum path length is 255 characters
:maxreached
echo.
if not "%path-1%"=="" echo Path #1: %path-1%
if not "%path-2%"=="" echo Path #2: %path-2%
if not "%path-3%"=="" echo Path #3: %path-3%
if not "%path-4%"=="" echo Path #4: %path-4%
if not "%path-5%"=="" echo Path #5: %path-5%
if not "%path-6%"=="" echo Path #6: %path-6%
if not "%path-7%"=="" echo Path #7: %path-7%
if not "%path-8%"=="" echo Path #8: %path-8%
if not "%path-9%"=="" echo Path #9: %path-9%
if not "%path-10%"=="" echo Path #10: %path-10%
echo.
echo.
if "%path-1%"=="" (echo.) else (echo A = Add forwarder with the above paths to download queue)
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p path-0= Enter Selection Here:
if "%path-0%"=="" goto:badkey
if /i "%path-0%" EQU "M" goto:MENU
if /i "%path-0%" NEQ "B" goto:notback
if /i "%NumberOfPaths%" EQU "1" goto:FORWARDERDOLBUILDER
if /i "%NumberOfPaths%" EQU "2" set path-1=
if /i "%NumberOfPaths%" EQU "3" set path-2=
if /i "%NumberOfPaths%" EQU "4" set path-3=
if /i "%NumberOfPaths%" EQU "5" set path-4=
if /i "%NumberOfPaths%" EQU "6" set path-5=
if /i "%NumberOfPaths%" EQU "7" set path-6=
if /i "%NumberOfPaths%" EQU "8" set path-7=
if /i "%NumberOfPaths%" EQU "9" set path-8=
if /i "%NumberOfPaths%" EQU "10" set path-9=
if /i "%NumberOfPaths%" EQU "11" set path-10=
set /a NumberOfPaths=%NumberOfPaths%-1
goto:v10FORWARDERDOL
:notback
if "%path-1%"=="" goto:none
if /i "%path-0%" EQU "A" set beforeAddforwardertoQueue=v10FORWARDERDOL
if /i "%path-0%" EQU "A" goto:FORWARDERNAME
:none
if /i "%NumberOfPaths%" EQU "11" goto:badkey
::make sure last 4 chars are .dol or .elf
if /i "%path-0:~-4%" EQU ".dol" goto:good
if /i "%path-0:~-4%" EQU ".elf" goto:good
goto:badkey
:good
::make sure path doesn't start with a \ or /
:doublecheckF
if /i "%path-0:~0,1%" EQU "\" (set path-0=%path-0:~1%) & (goto:doublecheckF)
if /i "%path-0:~0,1%" EQU "/" (set path-0=%path-0:~1%) & (goto:doublecheckF)
::limit user input to X# of digits
if not "%path-0:~255%"=="" (goto:badkey)
::replace : * ? " < > |
support\sfk filter -quiet -spat temp\temp.bat -rep _\x3a__ -rep _\x2a__ -rep _\x3f__ -rep _\x3c__ -rep _\x3e__ -rep _\x7c__ -rep _\x22__ -write -yes
::replace all \ with / and set path-# = path-0 (must end with .dol or .elf, so will not end with #)
echo set path-%NumberOfPaths%=%path-0%>temp\temp.bat
support\sfk filter temp\temp.bat -rep _\_/_ -write -yes>nul
call temp\temp.bat
del temp\temp.bat>nul
set /a NumberOfPaths=%NumberOfPaths%+1
goto:v10FORWARDERDOL
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:v10FORWARDERDOL
::------------------------------------ADVANCED - FORWARDER NAME--------------------------------
:FORWARDERNAME
set FORWARDERNAME=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
if /i "%FORWARDERTYPE%" NEQ "1" goto:skip
echo Please enter a name for your forwarder with the following paths
echo.
if not "%path-1%"=="" echo Path #1: %path-1%
if not "%path-2%"=="" echo Path #2: %path-2%
if not "%path-3%"=="" echo Path #3: %path-3%
if not "%path-4%"=="" echo Path #4: %path-4%
if not "%path-5%"=="" echo Path #5: %path-5%
if not "%path-6%"=="" echo Path #6: %path-6%
if not "%path-7%"=="" echo Path #7: %path-7%
if not "%path-8%"=="" echo Path #8: %path-8%
if not "%path-9%"=="" echo Path #9: %path-9%
if not "%path-10%"=="" echo Path #10: %path-10%
:skip
if /i "%FORWARDERTYPE%" NEQ "2" goto:skip
echo Please enter a name for your forwarder for the following URL
echo.
echo %URLpath%
:skip
if /i "%FORWARDERTYPE%" NEQ "3" goto:skip
echo Please enter a name for your forwarder for the following channel Title ID:
echo.
echo %FORWARDERTITLEID%
:skip
echo.
echo.
echo Note: Cannot contain \ / : * ? " < > | & %%
echo.
if /i "%FORWARDERTYPE%" EQU "2" (echo Example: Wiibrew) else (echo Example: usbloader)
echo.
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p FORWARDERNAME= Enter Selection Here:
if "%FORWARDERNAME%"=="" goto:badkey
echo "set FORWARDERNAME=%FORWARDERNAME%">temp\temp.bat
support\sfk filter -quiet -spat temp\temp.bat -rep _\x5c__ -rep _\x2f__ -rep _\x3a__ -rep _\x2a__ -rep _\x3f__ -rep _\x3c__ -rep _\x3e__ -rep _\x7c__ -rep _\x22__ -write -yes
if /i "%FORWARDERNAME%" EQU "M" goto:MENU
if /i "%FORWARDERNAME%" EQU "B" goto:%beforeAddforwardertoQueue%
call temp\temp.bat
del temp\temp.bat>nul
if /i "%FORWARDERDOLorISO%" NEQ "1" goto:DISCID
goto:SaveADVdlSettingsFORWARDER
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FORWARDERNAME
:SaveADVdlSettingsFORWARDER
set /a AdvNumber=%AdvNumber%+1
if /i "%FORWARDERDOLorISO%" EQU "1" echo "set name=Advanced Download: Forwarder - %FORWARDERNAME% DOL">temp\AdvDL%AdvNumber%.bat
if /i "%FORWARDERDOLorISO%" EQU "2" echo "set name=Advanced Download: Forwarder - %FORWARDERNAME% ISO">temp\AdvDL%AdvNumber%.bat
if /i "%FORWARDERDOLorISO%" EQU "3" echo "set name=Advanced Download: Forwarder - %FORWARDERNAME% DOL and ISO">temp\AdvDL%AdvNumber%.bat
echo "set wadname=%FORWARDERNAME%">>temp\AdvDL%AdvNumber%.bat
echo "set FORWARDERNAME=%FORWARDERNAME%">>temp\AdvDL%AdvNumber%.bat
echo "set path-1=%path-1%">>temp\AdvDL%AdvNumber%.bat
echo "set path-2=%path-2%">>temp\AdvDL%AdvNumber%.bat
echo "set path-3=%path-3%">>temp\AdvDL%AdvNumber%.bat
echo "set path-4=%path-4%">>temp\AdvDL%AdvNumber%.bat
echo "set path-5=%path-5%">>temp\AdvDL%AdvNumber%.bat
echo "set path-6=%path-6%">>temp\AdvDL%AdvNumber%.bat
echo "set path-7=%path-7%">>temp\AdvDL%AdvNumber%.bat
echo "set path-8=%path-8%">>temp\AdvDL%AdvNumber%.bat
echo "set path-9=%path-9%">>temp\AdvDL%AdvNumber%.bat
echo "set path-10=%path-10%">>temp\AdvDL%AdvNumber%.bat
echo "set URLPATH=%URLPATH%">>temp\AdvDL%AdvNumber%.bat
echo "set FORWARDERTITLEID=%FORWARDERTITLEID%">>temp\AdvDL%AdvNumber%.bat
echo "set bigt=%bigt%">>temp\AdvDL%AdvNumber%.bat
echo "set category=FORWARDER">>temp\AdvDL%AdvNumber%.bat
echo "set FORWARDERTYPE=%FORWARDERTYPE%">>temp\AdvDL%AdvNumber%.bat
echo "set FORWARDERDOLorISO=%FORWARDERDOLorISO%">>temp\AdvDL%AdvNumber%.bat
echo "set DISCID=%DISCID%">>temp\AdvDL%AdvNumber%.bat
if /i "%FORWARDERDOLorISO%" EQU "1" echo "Advanced Download: Forwarder - %FORWARDERNAME% DOL">>temp\DLnamesADV.txt
if /i "%FORWARDERDOLorISO%" EQU "2" echo "Advanced Download: Forwarder - %FORWARDERNAME% ISO">>temp\DLnamesADV.txt
if /i "%FORWARDERDOLorISO%" EQU "3" echo "Advanced Download: Forwarder - %FORWARDERNAME% DOL and ISO">>temp\DLnamesADV.txt
echo "temp\AdvDL%AdvNumber%.bat">>temp\DLgotosADV.txt
support\sfk filter -quiet "temp\AdvDL%AdvNumber%.bat" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLnamesADV.txt" -rep _"""__ -write -yes
support\sfk filter -quiet "temp\DLgotosADV.txt" -rep _"""__ -write -yes
goto:Advanced
::------------------------------------ADVANCED - FORWARDER DOL BUILDER--------------------------------
:INTERNETFORWARDERDOL
set URLpath=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Input website URL
echo.
echo.
echo Example: www.wiibrew.org
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20\x20\x20\x20 Note: * URL Cannot contain \x25, \x26, or \x22
echo * Maximum URL length is 95 characters
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p URLpath= Enter Selection Here:
if /i "%URLpath%" EQU "M" goto:MENU
if /i "%URLpath%" EQU "B" goto:FORWARDERDOLBUILDER
if "%URLpath%"=="" goto:badkey
::limit user input to X# of digits
if not "%URLpath:~95%"=="" (goto:badkey)
::replace all \ with /
echo set URLPATH=%URLpath% >temp\temp.bat
support\sfk filter -quiet temp\temp.bat -rep _\_/_ -write -yes
call temp\temp.bat
set URLPATH=%URLPATH:~0,-1%
set beforeAddforwardertoQueue=INTERNETFORWARDERDOL
goto:FORWARDERNAME
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:INTERNETFORWARDERDOL
::------------------------------------ADVANCED - CHANNEL FORWARDER DOL BUILDER--------------------------------
:CHANNELFORWARDERDOL
set FORWARDERTITLEID=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Enter the 4 character title ID for the channel that you want to load
echo Or enter the hex value of the channel, seperating each byte with a comma
echo.
echo Examples:
echo IDCL
echo 49,44,43,4c
echo.
echo.
echo Channel Type: %bigt%
echo.
echo Or enter "1", "2", "4" or "8" to change channel type
echo.
echo Note: The following title IDs will be forced as channel type 2
echo HAAA HABA HACA HAFA HAFE HAFJ HAFP HAGA HAGE HAGJ HAGP HAYA
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p FORWARDERTITLEID= Enter Selection Here:
if /i "%FORWARDERTITLEID%" EQU "M" goto:MENU
if /i "%FORWARDERTITLEID%" EQU "B" goto:FORWARDERDOLBUILDER
if "%FORWARDERTITLEID%"=="" goto:badkey
if /i "%FORWARDERTITLEID%" EQU "1" (set bigt=1) & (goto:CHANNELFORWARDERDOL)
if /i "%FORWARDERTITLEID%" EQU "2" (set bigt=2) & (goto:CHANNELFORWARDERDOL)
if /i "%FORWARDERTITLEID%" EQU "4" (set bigt=4) & (goto:CHANNELFORWARDERDOL)
if /i "%FORWARDERTITLEID%" EQU "8" (set bigt=8) & (goto:CHANNELFORWARDERDOL)
::minimum number of chars = x+1 (ie. ~5 sets minimum of 6)
if "%FORWARDERTITLEID:~3%"=="" (goto:badkey)
::limit user input to X# of digits
if not "%FORWARDERTITLEID:~11%"=="" (goto:badkey)
::if more than 4 chars then check if hex
if "%FORWARDERTITLEID:~4%"=="" goto:nocheckhex
if /i "%FORWARDERTITLEID:~2,1%" NEQ "," goto:badkey
if /i "%FORWARDERTITLEID:~5,1%" NEQ "," goto:badkey
if /i "%FORWARDERTITLEID:~8,1%" NEQ "," goto:badkey
:nocheckhex
set beforeAddforwardertoQueue=CHANNELFORWARDERDOL
goto:FORWARDERNAME
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CHANNELFORWARDERDOL
::------------------------------------ADVANCED - Forwarder ISO Name--------------------------------
:DISCID
set DISCID=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Enter the 6 character ID that you want to the ISO to use.
echo.
echo.
echo Note: Should only contain numbers and\or letters.
echo For best results use this format: D**A00
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p DISCID= Enter Selection Here:
if /i "%DISCID%" EQU "M" goto:MENU
if /i "%DISCID%" EQU "B" goto:FORWARDERNAME
::minimum number of chars = x+1 (ie. ~5 sets minimum of 6)
if "%DISCID:~5%"=="" (goto:badkey)
::limit user input to X# of digits
if not "%DISCID:~6%"=="" (goto:badkey)
goto:SaveADVdlSettingsFORWARDER
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DISCID
::...................................CONFIG File Menu...............................
:CONFIGFILEMENU
set configfile=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Which Wii App would you like to configure?
echo.
echo.
echo.
echo BM = Bootmii (create bootmii.ini)
echo.
echo MMM = Multi-Mod Manager (create mmmconfig.txt)
echo.
echo WM = Wad Manager (create wm_config.txt)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p configfile= Enter Selection Here:
if /i "%configfile%" EQU "M" goto:MENU
if /i "%configfile%" EQU "B" goto:MENU
if /i "%configfile%" EQU "BM" goto:BMCONFIG
if /i "%configfile%" EQU "WM" goto:WMCONFIG
if /i "%configfile%" EQU "MMM" goto:MMMCONFIG
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:CONFIGFILEMENU
::...................................Bootmii CONFIGURATOR (bootmii.ini)...............................
:BMCONFIG
set BMVIDEO=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo This will create a bootmii.ini file in "%DRIVE%\bootmii\"
echo to determine how Bootmii is launched.
echo.
echo.
echo.
echo.
echo Enter the Video Mode you would like Bootmii to use:
echo.
echo.
echo.
echo N = NTSC
echo 50 = PAL50
echo 60 = PAL60
echo P = Progressive
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p BMVIDEO= Enter Selection Here:
if /i "%BMVIDEO%" EQU "M" goto:MENU
if /i "%BMVIDEO%" EQU "B" goto:CONFIGFILEMENU
if /i "%BMVIDEO%" EQU "N" set BMVIDEO=NTSC
if /i "%BMVIDEO%" EQU "50" set BMVIDEO=PAL50
if /i "%BMVIDEO%" EQU "60" set BMVIDEO=PAL60
if /i "%BMVIDEO%" EQU "P" set BMVIDEO=PROGRESSIVE
if /i "%BMVIDEO%" EQU "NTSC" goto:BMCONFIG2
if /i "%BMVIDEO%" EQU "PAL50" goto:BMCONFIG2
if /i "%BMVIDEO%" EQU "PAL60" goto:BMCONFIG2
if /i "%BMVIDEO%" EQU "PROGRESSIVE" goto:BMCONFIG2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:BMCONFIG
::...................................Bootmii CONFIGURATOR (bootmii.ini)...............................
:BMCONFIG2
set BMBOOT=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo What would you like Bootmii to AutoBoot?
echo.
echo.
echo.
echo O = OFF (Bootmii)
echo H = HBC (Homebrew Channel)
echo S = SYSMENU (System Menu)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p BMBOOT= Enter Selection Here:
if /i "%BMBOOT%" EQU "M" goto:MENU
if /i "%BMBOOT%" EQU "B" goto:BMCONFIG
if /i "%BMBOOT%" EQU "O" set BMBOOT=OFF
if /i "%BMBOOT%" EQU "H" set BMBOOT=HBC
if /i "%BMBOOT%" EQU "S" set BMBOOT=SYSMENU
if /i "%BMBOOT%" EQU "OFF" set BMDELAY=0
if /i "%BMBOOT%" EQU "OFF" goto:BMCONFIG4
if /i "%BMBOOT%" EQU "HBC" goto:BMCONFIG3
if /i "%BMBOOT%" EQU "SYSMENU" goto:BMCONFIG3
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:BMCONFIG2
::...................................Bootmii CONFIGURATOR (bootmii.ini)...............................
:BMCONFIG3
set BMDELAY=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
if /i "%BMBOOT%" EQU "HBC" echo How many seconds should Bootmii to wait to autoboot the HomeBrew Channel?
if /i "%BMBOOT%" EQU "SYSMENU" echo How many seconds should Bootmii to wait to autoboot the System Menu?
echo.
echo.
echo.
echo.
echo Possible Settings:
echo.
echo 0,1,2,3,4,5,6,7,8,9,10
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p BMDELAY= Enter Selection Here:
if /i "%BMDELAY%" EQU "M" goto:MENU
if /i "%BMDELAY%" EQU "B" goto:BMCONFIG2
if /i "%BMDELAY%" EQU "0" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "1" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "2" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "3" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "4" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "5" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "6" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "7" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "8" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "9" goto:BMCONFIG4
if /i "%BMDELAY%" EQU "10" goto:BMCONFIG4
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:BMCONFIG3
::...................................Bootmii CONFIGURATOR (bootmii.ini)...............................
:BMCONFIG4
set BMSD=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Would you also like to download Bootmii SD Files required to launch Bootmii?
echo.
echo.
echo.
echo Note: these are the same files generated by the HackMii Installer
echo by installing Bootmii as boot2 or by Preparing an SD Card
echo.
echo.
echo.
echo Y = Yes
echo.
echo N = No
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p BMSD= Enter Selection Here:
if /i "%BMSD%" EQU "M" goto:MENU
if /i "%BMBOOT%" EQU "OFF" goto:skip
if /i "%BMSD%" EQU "B" goto:BMCONFIG3
:skip
if /i "%BMSD%" EQU "B" goto:BMCONFIG2
if /i "%BMSD%" EQU "Y" goto:BMCONFIG5
if /i "%BMSD%" EQU "N" goto:BMCONFIG5
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:BMCONFIG4
::...................................Bootmii CONFIGURATOR page 5...............................
:BMCONFIG5
set BMCONFIRM=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Are these settings correct?
echo.
echo.
echo Video Mode is set to %BMVIDEO%
echo.
echo AutoBoot is set to %BMBOOT%
if /i "%BMBOOT%" EQU "OFF" goto:nodelay
echo.
echo AutoBoot Delay is set to %BMDELAY% seconds
:nodelay
echo.
if /i "%BMSD%" EQU "Y" echo * Download Bootmii SD Files to Launch Bootmii
echo.
echo.
echo.
echo.
echo.
echo Y = Yes, Create bootmii.ini with these settings
if exist "%Drive%"\bootmii\bootmii.ini echo Note: existing bootmii.ini will be overwritten
echo.
echo N = No, take me back to the Main Menu
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p BMCONFIRM= Enter Selection Here:
if /i "%BMCONFIRM%" EQU "B" goto:BMCONFIG4
if /i "%BMCONFIRM%" EQU "M" goto:MENU
if /i "%BMCONFIRM%" EQU "N" goto:MENU
if /i "%BMCONFIRM%" EQU "Y" goto:BUILDBMCONFIG
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:BMCONFIG5
:BUILDBMCONFIG
if not exist "%Drive%"\bootmii mkdir "%Drive%"\bootmii
echo # Bootmii Config File> "%Drive%"\bootmii\bootmii.ini
echo # Created by ModMii>> "%Drive%"\bootmii\bootmii.ini
echo #>> "%Drive%"\bootmii\bootmii.ini
echo # Video mode, possible settings:>> "%Drive%"\bootmii\bootmii.ini
echo # NTSC, PAL50, PAL60, PROGRESSIVE>> "%Drive%"\bootmii\bootmii.ini
echo VIDEO=%BMVIDEO%>> "%Drive%"\bootmii\bootmii.ini
echo #>> "%Drive%"\bootmii\bootmii.ini
echo # Autoboot, possible settings:>> "%Drive%"\bootmii\bootmii.ini
echo # SYSMENU, HBC, OFF>> "%Drive%"\bootmii\bootmii.ini
echo AUTOBOOT=%BMBOOT%>> "%Drive%"\bootmii\bootmii.ini
echo #>> "%Drive%"\bootmii\bootmii.ini
echo # BOOTDELAY, possible settings:>> "%Drive%"\bootmii\bootmii.ini
echo # 0,1,2,3,4,5,6,7,8,9,10>> "%Drive%"\bootmii\bootmii.ini
echo BOOTDELAY=BLAH>> "%Drive%"\bootmii\bootmii.ini
support\sfk filter "%Drive%"\bootmii\bootmii.ini -rep _BLAH_%BMDELAY%_ -write -yes>nul
start notepad "%Drive%\bootmii\bootmii.ini"
cls
if /i "%BMSD%" EQU "Y" set DLTOTAL=1
if /i "%BMSD%" EQU "Y" set bootmiisd=*
if /i "%BMSD%" EQU "Y" goto:DOWNLOADQUEUE
goto:MENU
::...................................WAD MANAGER CONFIGURATOR (wmconfig.txt)...............................
:WMCONFIG
set WMCIOS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo This will create an optional wm_config.txt file in "%DRIVE%\WAD\"
echo You will get all the prompts if you don't have this file.
echo.
echo Note: works with YAWMM, yawmME, Wad Manager Multi-Mod, etc.
echo.
echo.
echo.
echo.
echo Enter the IOS # you would like Wad Manager to load automatically
echo.
echo Note: MAX is 254
echo Common choices are 36, 249, 250, etc.
echo NAND Emulation installation only available for 249 or 250
echo.
echo.
echo.
echo N = None (Wad Manager will prompt you for selection)
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMCIOS= Enter Selection Here:
if /i "%WMCIOS%" EQU "M" goto:MENU
if /i "%WMCIOS%" EQU "B" goto:CONFIGFILEMENU
if /i "%WMCIOS%" EQU "N" goto:WMCONFIG2
::limit user input to X# of digits
if not "%WMCIOS:~3%"=="" (
goto:badkey
)
::Reject negative numbers (LSS is less than, GTR is greater than)
if %WMCIOS% LSS 1 (goto:badkey)
if %WMCIOS% LEQ 254 goto:WMCONFIG2
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WMCONFIG
::...................................WAD MANAGER CONFIGURATOR page 2...............................
:WMCONFIG2
set WMDEVICE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the FAT device you would like to load automatically.
echo.
echo Note: you can enter either the number or the word
echo.
echo.
echo.
echo.
echo 1 = SD
echo 2 = USB
echo 3 = USB2
echo 4 = GCSDA
echo 5 = GCSDA
echo.
echo N = None (Wad Manager will prompt you for selection)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMDEVICE= Enter Selection Here:
if /i "%WMDEVICE%" EQU "1" SET WMDEVICE=sd
if /i "%WMDEVICE%" EQU "2" SET WMDEVICE=usb
if /i "%WMDEVICE%" EQU "3" SET WMDEVICE=usb2
if /i "%WMDEVICE%" EQU "4" SET WMDEVICE=gcsda
if /i "%WMDEVICE%" EQU "5" SET WMDEVICE=gcsdb
if /i "%WMDEVICE%" EQU "sd" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "usb" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "usb2" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "gcsda" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "gcsda" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "N" goto:WMCONFIG3
if /i "%WMDEVICE%" EQU "B" goto:WMCONFIG
if /i "%WMDEVICE%" EQU "M" goto:MENU
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WMCONFIG2
::...................................WAD MANAGER CONFIGURATOR page 3...............................
:WMCONFIG3
:: NAND Emulation installation only available if cIOS249 or cIOS250 selected
if /i "%WMCIOS%" EQU "249" goto:WMCONFIG3B
if /i "%WMCIOS%" EQU "250" goto:WMCONFIG3B
if /i "%WMCIOS%" EQU "N" goto:WMCONFIG3B
set WMNAND=N
goto:WMCONFIG4
:WMCONFIG3B
set WMNAND=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo NAND Emulation
echo.
echo Enter the NAND device you would like to select automatically.
echo.
echo.
echo Note: PC tools like ShowMiiWads are better at installing wads to
echo emulated nand. So I recommend leaving NAND Emulation Disabled
echo.
echo Note: you can enter either the number or the word
echo.
echo.
echo.
echo 1 = Disable
echo 2 = USB
echo 3 = SD
echo.
echo N = None (Wad Manager will prompt selection if cIOS249 or cIOS250 selected)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMNAND= Enter Selection Here:
if /i "%WMNAND%" EQU "3" SET WMNAND=SD
if /i "%WMNAND%" EQU "2" SET WMNAND=USB
if /i "%WMNAND%" EQU "1" SET WMNAND=Disable
if /i "%WMNAND%" EQU "SD" goto:WMCONFIG4
if /i "%WMNAND%" EQU "USB" goto:WMCONFIG4
if /i "%WMNAND%" EQU "Disable" goto:WMCONFIG4
if /i "%WMNAND%" EQU "N" goto:WMCONFIG4
if /i "%WMNAND%" EQU "M" goto:MENU
if /i "%WMNAND%" EQU "B" goto:WMCONFIG2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WMCONFIG3
::...................................WAD MANAGER CONFIGURATOR page 4...............................
:WMCONFIG4
set WMPATH=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the Start-up Path you would like to load initially.
echo.
echo Note: If you don't have a startupPath, the default is /WAD
echo.
echo Note: Be sure that the path exists, else you will get an error.
echo.
echo.
echo.
echo.
echo Examples:
echo /WAD/Forwarders
echo /myWad
echo /
echo Note: '/' sets the StartupPath to the root of the device
echo.
echo.
echo N = None (the default is /WAD)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMPATH= Enter Selection Here:
if /i "%WMPATH%" EQU "N" SET WMPATH=/WAD
if /i "%WMPATH%" EQU "B" goto:WMCONFIG4BACK
if /i "%WMPATH%" EQU "M" goto:MENU
IF "%WMPATH%"=="" echo You Have Entered an Incorrect Key
IF "%WMPATH%"=="" @ping 127.0.0.1 -n 2 -w 1000> nul
IF "%WMPATH%"=="" goto:WMCONFIG4
goto:WMCONFIG5
:WMCONFIG4BACK
if /i "%WMCIOS%" EQU "249" goto:WMCONFIG3B
if /i "%WMCIOS%" EQU "250" goto:WMCONFIG3B
if /i "%WMCIOS%" EQU "N" goto:WMCONFIG3B
goto:WMCONFIG2
::...................................WAD MANAGER CONFIGURATOR page 5...............................
:WMCONFIG5
set WMPASS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter a Password to access Wad Manager ONLY using LRUD; where
echo.
echo L = Left
echo R = Right
echo U = Up
echo D = Down
echo.
echo Note: Password is entered on the Wiimote or GC Controller, max 10 characters
echo.
echo Note: If you don't have a password, the default is no password
echo.
echo.
echo.
echo.
echo Examples:
echo UDLR
echo UDLRUDLRUD
echo UUUUUUU
echo L
echo.
echo.
echo N = None (No Password)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMPASS= Enter Selection Here:
if /i "%WMPASS%" EQU "B" goto:WMCONFIG4
if /i "%WMPASS%" EQU "M" goto:MENU
IF "%WMPASS%"=="" echo You Have Entered an Incorrect Key
IF "%WMPASS%"=="" @ping 127.0.0.1 -n 2 -w 1000> nul
IF "%WMPASS%"=="" goto:WMCONFIG5
::limit user input to X# of digits
if not "%WMPASS:~10%"=="" (
echo. ERROR: Password cannot be more than 10 Digits
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WMCONFIG5
)
::...................................WAD MANAGER CONFIGURATOR page 6...............................
:WMCONFIG6
set WMCONFIRM=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Are these settings correct?
echo.
echo.
if /i "%WMCIOS%" EQU "N" echo Prompt cIOS Selection
if /i "%WMCIOS%" NEQ "N" echo cIOSVersion=%WMCIOS%
echo.
if /i "%WMDEVICE%" EQU "N" echo Prompt FAT Device Selection
if /i "%WMDEVICE%" NEQ "N" echo FatDevice=%WMDEVICE%
echo.
if /i "%WMCIOS%" EQU "249" goto:nanddevice
if /i "%WMCIOS%" EQU "250" goto:nanddevice
goto:skipnanddevice
:nanddevice
if /i "%WMNAND%" EQU "N" echo Prompt NAND Device Selection
if /i "%WMNAND%" NEQ "N" echo NANDDevice=%WMNAND%
echo.
:skipnanddevice
echo StartupPath=%WMPATH%
echo.
if /i "%WMPASS%" EQU "N" echo No Password
if /i "%WMPASS%" NEQ "N" echo Password=%WMPASS%
echo.
echo.
echo.
echo.
echo Y = Yes, Create wm_config.txt with these settings
if exist "%Drive%"\WAD\wm_config.txt echo Note: existing wm_config.txt will be overwritten
echo.
echo N = No, take me back to the main menu
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMCONFIRM= Enter Selection Here:
if /i "%WMCONFIRM%" EQU "B" goto:WMCONFIG5
if /i "%WMCONFIRM%" EQU "M" goto:MENU
if /i "%WMCONFIRM%" EQU "N" goto:MENU
if /i "%WMCONFIRM%" EQU "Y" goto:BUILDWMCONFIG
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:WMCONFIG6
:BUILDWMCONFIG
if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
echo ;wm_config.txt made by ModMii> "%Drive%"\WAD\wm_config.txt
if /i "%WMCIOS%" NEQ "N" echo cIOSVersion=%WMCIOS%>> "%Drive%"\WAD\wm_config.txt
if /i "%WMDEVICE%" NEQ "N" echo FatDevice=%WMDEVICE%>> "%Drive%"\WAD\wm_config.txt
if /i "%WMNAND%" NEQ "N" echo NANDDevice=%WMNAND%>> "%Drive%"\WAD\wm_config.txt
echo StartupPath=%WMPATH%>> "%Drive%"\WAD\wm_config.txt
if /i "%WMPASS%" NEQ "N" echo Password=%WMPASS%>> "%Drive%"\WAD\wm_config.txt
start notepad "%Drive%\WAD\wm_config.txt"
goto:MENU
::...................................MMM CONFIGURATOR (mmmconfig.txt)...............................
:MMMCONFIG
set WMCIOS=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo This will create an optional mmmconfig.txt file in "%DRIVE%\"
echo.
echo.
echo.
echo.
echo Enter the IOS # you would like Multi-Mod Manager (MMM) to load automatically
echo.
echo Note: Max is 254
echo Common choices are 36, 249, 250, etc.
echo.
echo.
echo.
echo N = None (Do Not Auto-Reload IOS)
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMCIOS= Enter Selection Here:
if /i "%WMCIOS%" EQU "M" goto:MENU
if /i "%WMCIOS%" EQU "B" goto:CONFIGFILEMENU
if /i "%WMCIOS%" EQU "N" goto:MMMCONFIG2
::limit user input to X# of digits
if not "%WMCIOS:~3%"=="" (
goto:badkey
)
::Reject negative numbers (LSS is less than, GTR is greater than)
if %WMCIOS% LSS 1 (goto:badkey)
if %WMCIOS% LEQ 254 goto:MMMCONFIG2
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:MMMCONFIG
::...................................MMM CONFIGURATOR (mmmconfig.txt) page 2...............................
:MMMCONFIG2
set WMDEVICE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the FAT device you would like to load automatically.
echo.
echo Note: you can enter either the number or the word
echo.
echo.
echo.
echo.
echo 1 = SD (default if mmmconfig.txt does not exist)
echo 2 = USB
echo 3 = SMB
echo.
echo N = None (MMM will prompt you for selection)
echo.
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMDEVICE= Enter Selection Here:
if /i "%WMDEVICE%" EQU "1" SET WMDEVICE=sd
if /i "%WMDEVICE%" EQU "2" SET WMDEVICE=usb
if /i "%WMDEVICE%" EQU "3" SET WMDEVICE=smb
if /i "%WMDEVICE%" EQU "sd" goto:MMMCONFIG3
if /i "%WMDEVICE%" EQU "usb" goto:MMMCONFIG3
if /i "%WMDEVICE%" EQU "smb" goto:MMMCONFIG3
if /i "%WMDEVICE%" EQU "N" goto:MMMCONFIG3
if /i "%WMDEVICE%" EQU "B" goto:MMMCONFIG
if /i "%WMDEVICE%" EQU "M" goto:MENU
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:MMMCONFIG2
::...................................MMM CONFIGURATOR (mmmconfig.txt) page 3...............................
:MMMCONFIG3
set WMPATH=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Enter the Start-up Path you would like to load initially.
echo.
echo Note: If you don't have a startupPath, the default is /WAD
echo.
echo Note: Be sure that the path exists, else you will get an error.
echo.
echo.
echo.
echo.
echo Examples:
echo /WAD/Forwarders
echo /myWad
echo /
echo Note: '/' sets the StartupPath to the root of the device
echo.
echo.
echo N = None (the default is /WAD)
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMPATH= Enter Selection Here:
if /i "%WMPATH%" EQU "N" SET WMPATH=/WAD
if /i "%WMPATH%" EQU "B" goto:MMMCONFIG2
if /i "%WMPATH%" EQU "M" goto:MENU
IF "%WMPATH%"=="" echo You Have Entered an Incorrect Key
IF "%WMPATH%"=="" @ping 127.0.0.1 -n 2 -w 1000> nul
IF "%WMPATH%"=="" goto:MMMCONFIG3
::...................................MMM CONFIGURATOR (mmmconfig.txt) page 4...............................
:MMMCONFIG4
set WMCONFIRM=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo.
echo Are these settings correct?
echo.
echo.
if /i "%WMCIOS%" EQU "N" echo Do Not Auto-Reload IOS
if /i "%WMCIOS%" NEQ "N" echo AutoLoadIOS=%WMCIOS%
echo.
if /i "%WMDEVICE%" EQU "N" echo Prompt FAT Device Selection
echo.
if /i "%WMDEVICE%" NEQ "N" echo FatDevice=%WMDEVICE%
echo StartupPath=%WMPATH%
echo.
echo.
echo.
echo.
echo Y = Yes, Create mmmconfig.txt with these settings
if exist "%Drive%"\mmmconfig.txt echo Note: existing mmmconfig.txt will be overwritten
echo.
echo N = No, take me back to the main menu
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
echo.
set /p WMCONFIRM= Enter Selection Here:
if /i "%WMCONFIRM%" EQU "B" goto:MMMCONFIG3
if /i "%WMCONFIRM%" EQU "M" goto:MENU
if /i "%WMCONFIRM%" EQU "N" goto:MENU
if /i "%WMCONFIRM%" EQU "Y" goto:BUILDMMMCONFIG
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:MMMCONFIG4
:BUILDMMMCONFIG
if not exist "%Drive%" mkdir "%Drive%"
echo ;mmmconfig.txt made by ModMii> "%Drive%"\mmmconfig.txt
if /i "%WMCIOS%" NEQ "N" echo AutoLoadIOS=%WMCIOS%>> "%Drive%"\mmmconfig.txt
if /i "%WMDEVICE%" NEQ "N" echo FatDevice=%WMDEVICE%>> "%Drive%"\mmmconfig.txt
if /i "%WMDEVICE%" EQU "N" echo FatDevice=>> "%Drive%"\mmmconfig.txt
echo StartupPath=%WMPATH%>> "%Drive%"\mmmconfig.txt
start notepad "%Drive%\mmmconfig.txt"
goto:MENU
::----------------------------------------sysCheck Selector-------------------------------------
:sysCheckName
::force out of cmd line mode
set cmdlinemode=
set sysCheckName=empty
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo SysCheck Updater: update only your outdated softmods
echo.
echo Enter the path\name of your SysCheck.csv log that you want to analyze.
echo.
echo You can do this by dragging and dropping your SysCheck.csv log onto
echo this window then hitting Enter.
echo.
echo.
echo Notes:
echo.
echo * In the future you can drag and drop your SysCheck.csv
echo onto ModMii.exe or ModMiiSkin.exe, or a shortcut to either,
echo to quickly start analyzing your SysCheck.
echo.
echo * Download SysCheck ModMii Edition from ModMii's Download Page 2.
echo Save it to an SD card or USB and run it from the Homebrew Channel.
echo It will then save a SysCheck.csv log to the root of your device.
echo.
echo * If you do not have a Hard Drive or SD Card, open SysCheck's boot.dol
echo using ModMii to launch it on your Wii via WiFi. After the SysCheck is
echo completed ignore the error and press A to view the report, then A
echo again to upload it. Access your SysCheck using the onscreen link,
echo select all (Ctrl^+A), copy (Ctrl^+C) then paste (Ctrl^+V) into a new
echo text document, then rename the file extension from txt to csv.
echo This csv file can now be opened and analyzed using ModMii.
echo.
echo * SysCheck HacksDen Edition (HDE) logs are also supported.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
setlocal ENABLEDELAYEDEXPANSION
set /p sysCheckName= Enter Selection Here:
::remove quotes
set "sysCheckName=!sysCheckName:"=!"
set "sysCheckName=!sysCheckName:^^=^!"
setlocal DISABLEDELAYEDEXPANSION
if "%sysCheckName%"=="" goto:badkey
if /i "%sysCheckName%" EQU "M" goto:MENU
if /i "%sysCheckName%" EQU "B" goto:MENU
if /i "%sysCheckName:~-4%" NEQ ".csv" goto:badkey
if not exist "%sysCheckName%" goto:badkey
findStr /I /C:"syscheck" "%sysCheckName%" >nul
IF ERRORLEVEL 1 (echo This is not a valid SysCheck report) & (@ping 127.0.0.1 -n 2 -w 1000> nul) & (goto:sysCheckName)
goto:sysCheckAnalyzer
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:sysCheckName
::----------------------------------------sysCheck Analyzer-------------------------------------
:sysCheckAnalyzer
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo Analyzing SysCheck: "%sysCheckName%"
echo.
echo Please wait...
echo.
::save a copy and translate keywords to english prior to analysis
set sysCheckCopy=temp\syscheck_.csv
copy /y "%sysCheckName%" "%sysCheckCopy%">nul
support\sfk filter "%sysCheckCopy%" -rep _"Chaine Homebrew"_"Homebrew Channel"_ -rep _"Chaine Channel"_"Homebrew Channel"_ -rep _"Canale Homebrew"_"Homebrew Channel"_ -rep _"Canal Homebrew"_"Homebrew Channel"_ -rep _"Homebrewkanal"_"Homebrew Channel"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"utilise"_"running on"_ -rep _"appoggiato all'"_"running on "_ -rep _"ejecutandose en"_"running on"_ -rep _"benutzt"_"running on"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Systemmenue"_"System Menu"_ -rep _"Menu Systeme"_"System Menu"_ -rep _"Menu di sistema"_"System Menu"_ -rep _"Menu de Sistema"_"System Menu"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Pas de patches"_"No Patches"_ -rep _"Non patchato"_"No Patches"_ -rep _"Sin Parches"_"No Patches"_ -rep _"Keine Patches"_"No Patches"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Bug Trucha"_"Trucha Bug"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Acces NAND"_"NAND Access"_ -rep _"Accesso NAND"_"NAND Access"_ -rep _"Acceso NAND"_"NAND Access"_ -rep _"NAND Zugriff"_"NAND Access"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Identificazione ES"_"ES Identify"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Type de Console"_"Console Type"_ -rep _"Tipo Console"_"Console Type"_ -rep _"Tipo de consola"_"Console Type"_ -rep _"Konsolentyp"_"Console Type"_ -write -yes>nul
support\sfk filter "%sysCheckCopy%" -rep _"Regione"_"Region"_ -write -yes>nul
::adjust "original region" to ignore it when parsing region later
support\sfk filter "%sysCheckCopy%" -rep _"original region"_"originally"_ -rep _"region d'origine"_"originally"_ -rep _"regione originale"_"originally"_ -rep _"region de origen"_"originally"_ -write -yes>nul
::edit replace "d2x-v10beta52" with "d2x-v8final" (since they're the same), and vice versa (also accept d2x-v11beta1). However, if d2x-v11beta1 is selected, it will not accept anything less even though improvements are relatively minor
if /i "%d2x-beta-rev%" EQU "10-beta52" support\sfk filter "%sysCheckCopy%" -rep _d2x-v8final_d2x-v10beta52_ -write -yes>nul
if /i "%d2x-beta-rev%" EQU "10-beta52" support\sfk filter "%sysCheckCopy%" -rep _d2x-v11beta1_d2x-v10beta52_ -write -yes>nul
if /i "%d2x-beta-rev%" EQU "8-final" support\sfk filter "%sysCheckCopy%" -rep _d2x-v10beta52_d2x-v8final_ -write -yes>nul
if /i "%d2x-beta-rev%" EQU "8-final" support\sfk filter "%sysCheckCopy%" -rep _d2x-v11beta1_d2x-v8final_ -write -yes>nul
::remove any lines ending in ": Skipped" and assume outdated, this will also prevent stubs from being listed like 249 (even though they won't be constructed)
support\sfk filter "%sysCheckCopy%" -le!": Skipped" -write -yes>nul
::if /i "%d2x-beta-rev%" EQU "11-beta1" support\sfk filter "%sysCheckCopy%" -rep _d2x-v8final_d2x-v11beta1_ -write -yes>nul
::if /i "%d2x-beta-rev%" EQU "11-beta1" support\sfk filter "%sysCheckCopy%" -rep _d2x-v10beta52_d2x-v11beta1_ -write -yes>nul
::confirm SysCheck ME or SysCheck HDE
findStr /I /B /C:"SysCheck HDE" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 goto:allgood
findStr /I /B /C:"SysCheck ME" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 goto:allgood
echo Please use SysCheck ModMii Edition (ME) or SysCheck Hacksden Edition (HDE) and try again...
echo.
@ping 127.0.0.1 -n 5 -w 1000> nul
goto:sysCheckName
:allgood
::check for vWii
copy /y "%sysCheckCopy%" temp\syscheck.txt>nul
support\sfk filter -quiet temp\syscheck.txt -ls+"Console Type: " -rep _"Console Type: "__ -write -yes
set /p consoletype= <temp\syscheck.txt
del temp\syscheck.txt>nul
if /i "%consoletype%" NEQ "vWii" goto:NOTvWii
echo This SysCheck is for a vWii and is not currently supported, aborting analysis...
echo.
@ping 127.0.0.1 -n 5 -w 1000> nul
goto:sysCheckName
:NOTvWii
::get HBC version (ie. "Homebrew Channel 1.1.2 running on IOS58")
set HBCversion=0.0.1
copy /y "%sysCheckCopy%" temp\syscheck.txt>nul
support\sfk filter -quiet temp\syscheck.txt -ls+"Homebrew Channel " -rep _"Homebrew Channel "__ -rep _" *"__ -write -yes
set /p HBCversion= <temp\syscheck.txt
::get System Menu info (ie. "System Menu 4.3E")
copy /y "%sysCheckCopy%" temp\syscheck.txt>nul
support\sfk filter -quiet temp\syscheck.txt -ls+"System Menu " -rep _"*System Menu "__ -rep _" *"__ -rep _",*"__ -write -yes
set /p firmstart= <temp\syscheck.txt
del temp\syscheck.txt>nul
set SMregion=%firmstart:~-1%
set firmstart=%firmstart:~0,-1%
if /i "%firmstart:~0,1%" EQU "3" set firmstart=3.X
if /i "%firmstart:~0,1%" EQU "2" set firmstart=o
if /i "%firmstart:~0,1%" EQU "1" set firmstart=o
set firm=%firmstart%
findStr /I /B /C:"Region: NTSC-U" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set Region=U
findStr /I /B /C:"Region: PAL" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set Region=E
findStr /I /B /C:"Region: JAP" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set Region=J
findStr /I /B /C:"Region: NTSC-J" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set Region=J
findStr /I /B /C:"Region: KOR" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set Region=K
if /i "%SMregion%" EQU "%Region%" goto:NoMismatch
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo WARNING! Incomplete region change detected!
echo.
echo You should first complete ModMii's Region Change Wizard to fully install
echo your desired region and System Menu, then generate a new SysCheck.csv
echo before continuing the SysCheck Updater Wizard.
echo.
echo Press any key to return to the Main Menu.
echo.
pause>nul
set MENU1=
set cmdlinemode=
set one=
set two=
goto:MENU
:NoMismatch
::check if SM version is greater than 518 (4.3K), if cSM detected reinstall stock SM
copy /y "%sysCheckCopy%" temp\syscheck.txt>nul
support\sfk filter -quiet temp\syscheck.txt -ls+"System Menu " -rep _"*(v"__ -rep _" *"__ -rep _",*"__ -rep _")*"__ -write -yes
set firmversion=
set /p firmversion= <temp\syscheck.txt
del temp\syscheck.txt>nul
if /i "%firmversion%" EQU "4609" goto:wiimini
if /i "%firmversion%" NEQ "4610" goto:skipwiimini
:wiimini
echo This SysCheck is for a Wii Mini and is not currently supported, aborting analysis...
echo.
@ping 127.0.0.1 -n 5 -w 1000> nul
goto:sysCheckName
:skipwiimini
set customSMfix=
if /i "%firmversion%" LEQ "518" goto:noCSM
set firmwarechange=yes
set customSMfix=yes
if /i "%firmstart%" NEQ "4.2" goto:not42
if /i "%REGION%" EQU "U" set SM4.2U=*
if /i "%REGION%" EQU "E" set SM4.2E=*
if /i "%REGION%" EQU "J" set SM4.2J=*
if /i "%REGION%" EQU "K" set SM4.2K=*
goto:noSM
:not42
if /i "%firmstart%" NEQ "4.1" goto:not41
if /i "%REGION%" EQU "U" set SM4.1U=*
if /i "%REGION%" EQU "E" set SM4.1E=*
if /i "%REGION%" EQU "J" set SM4.1J=*
if /i "%REGION%" EQU "K" set SM4.1K=*
goto:noSM
:not41
set firm=4.3
if /i "%REGION%" EQU "U" set SM4.3U=*
if /i "%REGION%" EQU "E" set SM4.3E=*
if /i "%REGION%" EQU "J" set SM4.3J=*
if /i "%REGION%" EQU "K" set SM4.3K=*
goto:noSM
:noCSM
set firmwarechange=no
if /i "%firmstart%" EQU "4.0" set firmwarechange=yes
if /i "%firmstart%" EQU "3.x" set firmwarechange=yes
if /i "%firmstart%" EQU "o" set firmwarechange=yes
if /i "%firmwarechange%" EQU "no" goto:noSM
set firm=4.3
if /i "%REGION%" EQU "U" set SM4.3U=*
if /i "%REGION%" EQU "E" set SM4.3E=*
if /i "%REGION%" EQU "J" set SM4.3J=*
if /i "%REGION%" EQU "K" set SM4.3K=*
:noSM
::check if Priiloader is installed
set pri=*
::since yawmME can retain priloader, no need to reinstall even if a new SM is installed
::if /i "%firmwarechange%" EQU "yes" (set pri=*) & (goto:skipprianalysis)
findStr /I /B /C:"Priiloader" "%sysCheckCopy%" >nul
IF not ERRORLEVEL 1 set pri=
:skipprianalysis
set d2x-beta-rev=11-beta1
set ciosversion=65535
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
echo "set cIOSversionNum=%d2x-beta-rev%">temp\cIOSrev.bat
support\sfk filter -spat temp\cIOSrev.bat -rep _\x22__ -rep _"-*"__ -write -yes>nul
call temp\cIOSrev.bat
del temp\cIOSrev.bat>nul
set string1=%cIOSversionNum%
set versionlength=1
::letter by letter loop
:loopy2
if /i "%string1%" EQU "" goto:endloopy2
set string1=%string1:~1%
set /A versionlength=%versionlength%+1
goto:loopy2
:endloopy2
echo set cIOSsubversion=@d2x-beta-rev:~%versionlength%,16@>temp\cIOSsubversion.bat
support\sfk filter temp\cIOSsubversion.bat -spat -rep _@_%%_ -write -yes>nul
call temp\cIOSsubversion.bat
del temp\cIOSsubversion.bat>nul
:tinyjump
::check for recommended cIOSs and HBC
set HM=*
findStr /I /B /R /C:"Homebrew Channel 1.1.[2-9] running on IOS58" "%sysCheckCopy%" >nul
IF not ERRORLEVEL 1 (set HM=) & (goto:no58check)
if /i %HBCversion% GEQ 1.0.7 (set OHBC=*) & (set HM=)
::check for any version of IOS58
if /i "%HM%" NEQ "*" goto:no58check
findStr /I /B /C:"IOS58 " "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS58=*) else (set IOS58=)
:no58check
if /i "%hermesOPTION%" EQU "OFF" goto:skipHERMEScheck
findStr /I /B /R /C:"IOS202\[60\] (rev [0-9]*, Info: hermesrodries-v6" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS202[60]-v5.1R=*) else (set cIOS202[60]-v5.1R=)
findStr /I /B /R /C:"IOS202\[60\] (rev [0-9]*, Info: hermesrodries-v5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS202[60]-v5.1R=
findStr /I /B /R /C:"IOS202\[60\] (rev [0-9]*, Info: hermesrodries-5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS202[60]-v5.1R=
findStr /I /B /R /C:"IOS202\[60\] (rev [0-9]*, Info: hermes-v5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS202[60]-v5.1R=
findStr /I /B /R /C:"IOS222\[38\] (rev [0-9]*, Info: hermes-v4" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS222[38]-v4=*) else (set cIOS222[38]-v4=)
set cIOS223[37-38]-v4=*
findStr /I /B /R /C:"IOS223\[38+37\] (rev [0-9]*, Info: hermes-v4" "%sysCheckCopy%" >nul
IF not ERRORLEVEL 1 set cIOS223[37-38]-v4=
findStr /I /B /R /C:"IOS224\[57\] (rev [0-9]*, Info: hermesrodries-v6" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS224[57]-v5.1R=*) else (set cIOS224[57]-v5.1R=)
findStr /I /B /R /C:"IOS224\[57\] (rev [0-9]*, Info: hermesrodries-v5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS224[57]-v5.1R=
findStr /I /B /R /C:"IOS224\[57\] (rev [0-9]*, Info: hermesrodries-5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS224[57]-v5.1R=
findStr /I /B /R /C:"IOS224\[57\] (rev [0-9]*, Info: hermes-v5.1" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set cIOS224[57]-v5.1R=
:skipHERMEScheck
::set IOS236=*
::findStr /I /B /R /C:"IOS236\[36\] (rev [0-9]*, Info: rev 3351" "%sysCheckCopy%" >nul
::IF NOT ERRORLEVEL 1 set IOS236=
::findStr /I /B /R /C:"IOS236 (rev [0-9]*): Trucha Bug, ES Identify, NAND Access" "%sysCheckCopy%" >nul
::IF NOT ERRORLEVEL 1 set IOS236=
findStr /I /B /R /C:"IOS248\[38\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS248[38]-d2x-v10-beta52=*) else (set cIOS248[38]-d2x-v10-beta52=)
findStr /I /B /R /C:"IOS249\[56\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS249[56]-d2x-v10-beta52=*) else (set cIOS249[56]-d2x-v10-beta52=)
findStr /I /B /R /C:"IOS250\[57\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS250[57]-d2x-v10-beta52=*) else (set cIOS250[57]-d2x-v10-beta52=)
findStr /I /B /R /C:"IOS251\[58\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set cIOS251[58]-d2x-v10-beta52=*) else (set cIOS251[58]-d2x-v10-beta52=)
::also accept 249/250 reversed - DISABLED
::findStr /I /B /R /C:"IOS250\[56\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
::IF ERRORLEVEL 1 goto:skip
::findStr /I /B /R /C:"IOS249\[57\] (rev [0-9]*, Info: d2x-v%cIOSversionNum%%cIOSsubversion%" "%sysCheckCopy%" >nul
::IF ERRORLEVEL 1 goto:skip
::::found both 249[56] and 250[57]
::set cIOS249[56]-d2x-v10-beta52=
::set cIOS250[57]-d2x-v10-beta52=
:::skip
::bootmii check
set bootmii_missing=
::findStr /I /C:"bootmii" "%sysCheckCopy%" >nul
findStr /I /B /R /C:"IOS254 (rev [0-9]*): BootMii" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 set bootmii_missing=Y
::IF ERRORLEVEL 1 (set HM=*) & (set bootmiisd=*)
if /i "%bootmii_missing%" EQU "Y" set HM=*
::check for missing active IOSs
if /i "%ACTIVEIOS%" EQU "OFF" goto:skipactivecheck
findStr /I /B /C:"IOS9 (rev 1034): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS9=*) else (set IOS9=)
findStr /I /B /C:"IOS12 (rev 526): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS12=*) else (set IOS12=)
findStr /I /B /C:"IOS13 (rev 1032): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS13=*) else (set IOS13=)
findStr /I /B /C:"IOS14 (rev 1032): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS14=*) else (set IOS14=)
findStr /I /B /C:"IOS15 (rev 1032): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS15=*) else (set IOS15=)
findStr /I /B /C:"IOS17 (rev 1032): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS17=*) else (set IOS17=)
findStr /I /B /C:"IOS21 (rev 1039): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS21=*) else (set IOS21=)
findStr /I /B /C:"IOS22 (rev 1294): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS22=*) else (set IOS22=)
findStr /I /B /C:"IOS28 (rev 1807): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS28=*) else (set IOS28=)
findStr /I /B /C:"IOS31 (rev 3608): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS31=*) else (set IOS31=)
findStr /I /B /C:"IOS33 (rev 3608): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS33=*) else (set IOS33=)
findStr /I /B /C:"IOS34 (rev 3608): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS34=*) else (set IOS34=)
findStr /I /B /C:"IOS35 (rev 3608): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS35=*) else (set IOS35=)
findStr /I /B /C:"IOS36 (rev 3608): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS36v3608=*) else (set IOS36v3608=)
findStr /I /B /C:"IOS37 (rev 5663): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS37=*) else (set IOS37=)
findStr /I /B /C:"IOS38 (rev 4124): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS38=*) else (set IOS38=)
findStr /I /B /C:"IOS41 (rev 3607): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS41=*) else (set IOS41=)
findStr /I /B /C:"IOS43 (rev 3607): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS43=*) else (set IOS43=)
findStr /I /B /C:"IOS45 (rev 3607): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS45=*) else (set IOS45=)
findStr /I /B /C:"IOS46 (rev 3607): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS46=*) else (set IOS46=)
findStr /I /B /C:"IOS48 (rev 4124): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS48v4124=*) else (set IOS48v4124=)
findStr /I /B /C:"IOS53 (rev 5663): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS53=*) else (set IOS53=)
findStr /I /B /C:"IOS55 (rev 5663): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS55=*) else (set IOS55=)
findStr /I /B /C:"IOS56 (rev 5662): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS56=*) else (set IOS56=)
findStr /I /B /C:"IOS57 (rev 5919): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS57=*) else (set IOS57=)
set IOS58=*
findStr /I /B /C:"IOS58 (rev 6176): No Patches" "%sysCheckCopy%" >nul
IF not ERRORLEVEL 1 set IOS58=
findStr /I /B /C:"IOS58 (rev 6176): USB 2.0" "%sysCheckCopy%" >nul
IF not ERRORLEVEL 1 set IOS58=
::IOS59 is a J exclusive
if /i "%REGION%" NEQ "J" goto:skipIOS59
findStr /I /B /C:"IOS59 (rev 9249): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS59=*) else (set IOS59=)
:skipIOS59
findStr /I /B /C:"IOS61 (rev 5662): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS61=*) else (set IOS61=)
findStr /I /B /C:"IOS62 (rev 6430): No Patches" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set IOS62=*) else (set IOS62=)
findStr /I /B /C:"BC v6" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set BC=*) else (set BC=)
:skipactivecheck
::if HBC is <1.0.7 AND IOS58 is already installed, no need to download OHBC wad, will be running hackmii installer anyway
if /i %HBCversion% GTR 1.0.6 goto:skip
if not "%IOS58%"=="" (set OHBC=*) & (set HM=*)
if "%IOS58%"=="" (set OHBC=) & (set HM=*)
:skip
::if IOS58 is already installed and will be running the HackMii installer to update bootmii anyway, no need to download OHBC wad
if /i "%bootmii_missing%" NEQ "Y" goto:skip
if "%IOS58%"=="" (set OHBC=) & (set HM=*)
:skip
::patched IOS check
if /i "%FIRM%" EQU "4.1" goto:forcecheck
if /i "%ExtraProtectionOPTION%" EQU "off" goto:smallskip
:forcecheck
set IOS60P=*
findStr /I /B /C:"IOS60 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS60P=
findStr /I /B /R /C:"IOS60 (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS60P=
:smallskip
if /i "%FIRM%" EQU "4.2" goto:forcecheck
if /i "%ExtraProtectionOPTION%" EQU "off" goto:smallskip
:forcecheck
set IOS70K=*
findStr /I /B /C:"IOS70 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS70K=
findStr /I /B /R /C:"IOS70\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS70K=
:smallskip
if /i "%FIRM%" EQU "4.3" goto:forcecheck
if /i "%ExtraProtectionOPTION%" EQU "off" goto:smallskip
:forcecheck
set IOS80K=*
findStr /I /B /C:"IOS80 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS80K=
findStr /I /B /R /C:"IOS80\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS80K=
:smallskip
if /i "%ExtraProtectionOPTION%" EQU "off" goto:smallskip
set IOS11P60=*
set IOS20P60=*
set IOS30P60=*
set IOS40P60=*
set IOS50P=*
set IOS52P=*
findStr /I /B /C:"IOS11 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS11P60=
findStr /I /B /R /C:"IOS11\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS11P60=
findStr /I /B /C:"IOS20 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS20P60=
findStr /I /B /R /C:"IOS20\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS20P60=
findStr /I /B /C:"IOS30 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS30P60=
findStr /I /B /R /C:"IOS30\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS30P60=
findStr /I /B /C:"IOS40 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS40P60=
findStr /I /B /R /C:"IOS40\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS40P60=
findStr /I /B /C:"IOS50 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS50P=
findStr /I /B /R /C:"IOS50\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS50P=
findStr /I /B /C:"IOS52 (rev 16174): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS52P=
findStr /I /B /R /C:"IOS52\[60\] (rev [0-9]*, Info: ModMii-IOS60-v6174)" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS52P=
:smallskip
::cMIOS
if /i "%CMIOSOPTION%" EQU "OFF" goto:skipcMIOScheck
set RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=
findStr /I /B /E /C:"MIOS v65535" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 set RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=*
:skipcMIOScheck
::MIOSv10
if /i "%CMIOSOPTION%" EQU "ON" goto:skipMIOScheck
findStr /I /B /E /C:"MIOS v10" "%sysCheckCopy%" >nul
IF ERRORLEVEL 1 (set M10=*) else (set M10=)
:skipMIOScheck
::removed IOS236 effective 6.5.2
::::IOS236
::findStr /I /B /C:"IOS236" "%sysCheckCopy%" >nul
::IF ERRORLEVEL 1 (set IOS236Installer=*) else (set IOS236Installer=)
::if /i "%IOS236Installer%" EQU "*" (set SIP=*) else (set SIP=)
::if /i "%IOS236Installer%" EQU "*" (set IOS36=*) else (set IOS36=)
::stubs!
set STUBS=
copy /y "%sysCheckCopy%" temp\stubs.txt>nul
support\sfk filter -quiet temp\stubs.txt -!"(rev 404): Stub" -write -yes
support\sfk filter -quiet temp\stubs.txt -ls+IOS -rep _IOS_a_ -rep _"["*_z_ -rep _" "*_z_ -write -yes
::filter out good stuff, intentionally skipping stubbed SM IOSs, etc.
support\sfk filter -quiet temp\stubs.txt -!a9z -!a11z -!a12z -!a13z -!a14z -!a15z -!a17z -!a20z -!a21z -!a22z -!a28z -!a30z -!a31z -!a33z -!a34z -!a35z -!a36z -!a37z -!a38z -!a40z -!a41z -!a43z -!a45z -!a46z -!a48z -!a50z -!a52z -!a53z -!a55z -!a56z -!a57z -!a58z -!a60z -!a61z -!a62z -!a70z -!a80z -!a248z -!a249z -!a250z -!a251z -!a254z -write -yes
::removed the following whitelisted slots from suggesting they optionally be stubbed in the syscheck updater wizard
::-!a236z -!a240z -!a241z -!a242z -!a243z -!a244z -!a245z -!a246z -!a247z
if /i "%hermesOPTION%" EQU "on" support\sfk filter -quiet temp\stubs.txt -!a202z -!a222z -!a223z -!a224z -write -yes
::filter out IOS59 only for J region
if /i "%REGION%" EQU "J" support\sfk filter -quiet temp\stubs.txt -!a59z -write -yes
support\sfk filter -quiet temp\stubs.txt -rep _a__ -rep _z__ -write -yes
::delete temp stubs if file is empty
>nul findstr "^" "temp\stubs.txt" || del "temp\stubs.txt"
if not exist temp\stubs.txt goto:nostubs
set STUBS=*
set STUBSlist=
::get stubs list
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\stubs.txt) do call :processSTUBSlist %%A
goto:quickskip
:processSTUBSlist
set STUBSlist=%STUBSlist%%*,
goto:EOF
:quickskip
set "STUBSlist=%STUBSlist:~0,-1%"
::echo (%STUBSlist%)
:nostubs
::disable RiiConnect24 check as it no longer requires a patched IOS31 or system menu IOS
goto:NoRiiConnect24Check
::check for RiiConnect24 IOS31 and IOS80
set RiiConnect24Detected=
if /i "%IOS31%" EQU "*" goto:RiiConnect24Check
if /i "%IOS80K%" EQU "*" goto:RiiConnect24Check
goto:NoRiiConnect24Check
:RiiConnect24Check
cls
findStr /I /B /C:"IOS31 (rev 3608): Trucha Bug, ES Identify, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set RiiConnect24Detected=Y
::ModMii's IOS80 is compatible with RiiConnect24, so only check for RC24's IOS31
::findStr /I /B /C:"IOS80 (rev 6944): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
::IF NOT ERRORLEVEL 1 set RiiConnect24Detected=Y
if /i "%RiiConnect24Detected%" NEQ "Y" goto:NoRiiConnect24Check
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo ModMii's SysCheck Updater has detected RiiConnect24 in IOS31.
echo Would you like to remove\overwrite it?
echo.
echo Y = Yes, remove\overwrite RiiConnect24
echo N = No, keep RiiConnect24
echo.
set /p RiiConnect24Check= Enter Selection Here:
if "%RiiConnect24Check%"=="" goto:badkey
if /i "%RiiConnect24Check%" EQU "Y" goto:NoRiiConnect24Check
if /i "%RiiConnect24Check%" EQU "N" goto:KeepRiiConnect24
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:RiiConnect24Check
:KeepRiiConnect24
findStr /I /B /C:"IOS31 (rev 3608): Trucha Bug, ES Identify, NAND Access" "%sysCheckCopy%" >nul
IF NOT ERRORLEVEL 1 set IOS31=
::findStr /I /B /C:"IOS80 (rev 6944): Trucha Bug, NAND Access" "%sysCheckCopy%" >nul
::IF NOT ERRORLEVEL 1 set IOS80K=
:NoRiiConnect24Check
set yawm=
set RECCIOS=
if /i "%cIOS202[60]-v5.1R%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS222[38]-v4%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS223[37-38]-v4%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS224[57]-v5.1R%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS248[38]-d2x-v10-beta52%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS249[56]-d2x-v10-beta52%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS250[57]-d2x-v10-beta52%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%cIOS251[58]-d2x-v10-beta52%" EQU "*" (set yawm=*) & (set RECCIOS=Y)
if /i "%IOS9%" EQU "*" set yawm=*
if /i "%IOS12%" EQU "*" set yawm=*
if /i "%IOS13%" EQU "*" set yawm=*
if /i "%IOS14%" EQU "*" set yawm=*
if /i "%IOS15%" EQU "*" set yawm=*
if /i "%IOS17%" EQU "*" set yawm=*
if /i "%IOS21%" EQU "*" set yawm=*
if /i "%IOS22%" EQU "*" set yawm=*
if /i "%IOS28%" EQU "*" set yawm=*
if /i "%IOS31%" EQU "*" set yawm=*
if /i "%IOS33%" EQU "*" set yawm=*
if /i "%IOS34%" EQU "*" set yawm=*
if /i "%IOS35%" EQU "*" set yawm=*
if /i "%IOS36v3608%" EQU "*" set yawm=*
if /i "%IOS37%" EQU "*" set yawm=*
if /i "%IOS38%" EQU "*" set yawm=*
if /i "%IOS41%" EQU "*" set yawm=*
if /i "%IOS48v4124%" EQU "*" set yawm=*
if /i "%IOS43%" EQU "*" set yawm=*
if /i "%IOS45%" EQU "*" set yawm=*
if /i "%IOS46%" EQU "*" set yawm=*
if /i "%IOS53%" EQU "*" set yawm=*
if /i "%IOS55%" EQU "*" set yawm=*
if /i "%IOS56%" EQU "*" set yawm=*
if /i "%IOS57%" EQU "*" set yawm=*
if /i "%IOS58%" EQU "*" set yawm=*
if /i "%IOS59%" EQU "*" set yawm=*
if /i "%IOS61%" EQU "*" set yawm=*
if /i "%IOS62%" EQU "*" set yawm=*
if /i "%IOS60P%" EQU "*" set yawm=*
if /i "%IOS70K%" EQU "*" set yawm=*
if /i "%IOS80K%" EQU "*" set yawm=*
if /i "%IOS236%" EQU "*" set yawm=*
if /i "%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%" EQU "*" set yawm=*
if /i "%M10%" EQU "*" set yawm=*
if /i "%IOS11P60%" EQU "*" set yawm=*
if /i "%IOS20P60%" EQU "*" set yawm=*
if /i "%IOS30P60%" EQU "*" set yawm=*
if /i "%IOS40P60%" EQU "*" set yawm=*
if /i "%IOS50P%" EQU "*" set yawm=*
if /i "%IOS52P%" EQU "*" set yawm=*
if /i "%OHBC%" EQU "*" set yawm=*
if /i "%STUBS%" EQU "*" set yawm=*
if /i "%BC%" EQU "*" set yawm=*
set BACKB4QUEUE=sysCheckName
goto:DOWNLOADQUEUE
::........................................HACKMII SOLUTION.......................................
:HACKMIISOLUTION
set SETTINGSHM=
set BB1=
set BB2=
set SMASH=
set PWNS=
set Bathaxx=
set ROTJ=
set TOS=
set TWI=
set YUGI=
::set IOS30P60=*
set IOS31=*
set IOS33=*
set IOS34=*
set IOS35=*
set IOS36v3608=*
set IOS58=*
set F32=*
set HM=*
set bootmiisd=*
::set mmm=*
set yawm=*
if /i "%FIRMSTART%" EQU "4.1" set BB1=*
if /i "%FIRMSTART%" EQU "4.0" set BB1=*
if /i "%FIRMSTART%" EQU "3.x" set BB1=*
if /i "%FIRMSTART%" EQU "4.2" set BB2=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%EXPLOIT%" EQU "W" set Wilbrand=*
:skip
if /i "%EXPLOIT%" EQU "S" set SMASH=*
if /i "%EXPLOIT%" EQU "L" set PWNS=*
if /i "%EXPLOIT%" EQU "LB" set Bathaxx=*
if /i "%EXPLOIT%" EQU "LS" set ROTJ=*
if /i "%EXPLOIT%" EQU "TOS" set TOS=*
if /i "%EXPLOIT%" EQU "T" set TWI=*
if /i "%EXPLOIT%" EQU "Y" set YUGI=*
if /i "%EXPLOIT%" EQU "LB" set Bathaxx=*
if /i "%EXPLOIT%" NEQ "?" goto:notallexploits2
if /i "%FIRMSTART%" EQU "o" set Twi=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%FIRMSTART%" EQU "4.3" set Wilbrand=*
:skip
set SMASH=*
if /i "%REGION%" NEQ "K" set PWNS=*
if /i "%REGION%" NEQ "K" set YUGI=*
if /i "%REGION%" NEQ "K" set Bathaxx=*
if /i "%REGION%" NEQ "K" set ROTJ=*
if /i "%REGION%" NEQ "K" set TOS=*
:notallexploits2
set BACKB4QUEUE=%backb4HACKMIISOLUTION%
goto:DOWNLOADQUEUE
::...................................Download...............................
:Download
cls
set cleardownloadsettings=yes
goto:clear
:DownloadSettings
set cleardownloadsettings=
::Abstinence Logic
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceLogic
set casper=*
if /i "%SNKFLOW%" EQU "Y" set FLOW=*
if /i "%SNKPLC%" EQU "Y" set PL=*
if /i "%FIRMSTART%" EQU "4.1" set BB1=*
if /i "%FIRMSTART%" EQU "4.0" set BB1=*
if /i "%FIRMSTART%" EQU "3.2" set BB1=*
if /i "%FIRMSTART%" EQU "3.x" set BB1=*
if /i "%FIRMSTART%" EQU "4.2" set BB2=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%EXPLOIT%" EQU "W" set Wilbrand=*
:skip
if /i "%EXPLOIT%" EQU "S" set SMASH=*
if /i "%EXPLOIT%" EQU "L" set PWNS=*
if /i "%EXPLOIT%" EQU "T" set Twi=*
if /i "%EXPLOIT%" EQU "Y" set YUGI=*
if /i "%EXPLOIT%" EQU "LB" set Bathaxx=*
if /i "%EXPLOIT%" EQU "LS" set ROTJ=*
if /i "%EXPLOIT%" EQU "TOS" set TOS=*
if /i "%EXPLOIT%" NEQ "?" goto:notallexploits
if /i "%FIRMSTART%" EQU "o" set Twi=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%FIRMSTART%" EQU "4.3" set Wilbrand=*
:skip
if /i "%REGION%" NEQ "K" set PWNS=*
if /i "%REGION%" NEQ "K" set YUGI=*
if /i "%REGION%" NEQ "K" set Bathaxx=*
if /i "%REGION%" NEQ "K" set ROTJ=*
if /i "%REGION%" NEQ "K" set TOS=*
:notallexploits
::IOS53 and mmm
if /i "%FIRMSTART%" EQU "4.3" goto:smallskip
if /i "%FIRMSTART%" EQU "4.2" goto:smallskip
set IOS53=*
::set mmm=*
set yawm=*
:smallskip
set f32=*
if /i "%secondrun%" EQU "Y" goto:DLCOUNT
set secondrun=Y
goto:guide
:NotAbstinenceLogic
set firmwarechange=yes
if /i "%FIRM%" EQU "%FIRMSTART%" set firmwarechange=no
if /i "%REGION%" EQU "U" goto:U
if /i "%REGION%" EQU "E" goto:E
if /i "%REGION%" EQU "J" goto:J
if /i "%REGION%" EQU "K" goto:K
:U
if /i "%firmwarechange%" EQU "no" goto:nofirmwarechange
if /i "%ThemeSelection%" NEQ "N" goto:skip
if /i "%FIRM%" EQU "4.3" set SM4.3U=*
if /i "%FIRM%" EQU "4.2" set SM4.2U=*
if /i "%FIRM%" EQU "4.1" set SM4.1U=*
:skip
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
if /i "%FIRM%" EQU "4.3" set SM4.3U-DWR=*
if /i "%FIRM%" EQU "4.2" set SM4.2U-DWR=*
if /i "%FIRM%" EQU "4.1" set SM4.1U-DWR=*
goto:SKIPSM
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
if /i "%FIRM%" EQU "4.3" set SM4.3U-DWG=*
if /i "%FIRM%" EQU "4.2" set SM4.2U-DWG=*
if /i "%FIRM%" EQU "4.1" set SM4.1U-DWG=*
goto:SKIPSM
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPblueSM
if /i "%FIRM%" EQU "4.3" set SM4.3U-DWB=*
if /i "%FIRM%" EQU "4.2" set SM4.2U-DWB=*
if /i "%FIRM%" EQU "4.1" set SM4.1U-DWB=*
goto:SKIPSM
:SKIPblueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPorangeSM
if /i "%FIRM%" EQU "4.3" set SM4.3U-DWO=*
if /i "%FIRM%" EQU "4.2" set SM4.2U-DWO=*
if /i "%FIRM%" EQU "4.1" set SM4.1U-DWO=*
goto:SKIPSM
:SKIPorangeSM
:nofirmwarechange
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Red_4.3U=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Red_4.2U=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Red_4.1U=*
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Green_4.3U=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Green_4.2U=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Green_4.1U=*
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPBlueSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Blue_4.3U=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Blue_4.2U=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Blue_4.1U=*
:SKIPBlueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPOrangeSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set darkwii_orange_4.3U=*
if /i "%FIRM%" EQU "4.2" set darkwii_orange_4.2U=*
if /i "%FIRM%" EQU "4.1" set darkwii_orange_4.1U=*
:SKIPOrangeSM
:SKIPSM
if /i "%PIC%" EQU "Y" set P=*
if /i "%NET%" EQU "Y" set IU=*
if /i "%WEATHER%" EQU "Y" set WU=*
if /i "%NEWS%" EQU "Y" set NU=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSU=*
goto:BUGGEDSMIOS
:E
if /i "%firmwarechange%" EQU "no" goto:nofirmwarechange
if /i "%ThemeSelection%" NEQ "N" goto:skip
if /i "%FIRM%" EQU "4.3" set SM4.3E=*
if /i "%FIRM%" EQU "4.2" set SM4.2E=*
if /i "%FIRM%" EQU "4.1" set SM4.1E=*
:skip
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
if /i "%FIRM%" EQU "4.3" set SM4.3E-DWR=*
if /i "%FIRM%" EQU "4.2" set SM4.2E-DWR=*
if /i "%FIRM%" EQU "4.1" set SM4.1E-DWR=*
goto:SKIPSM
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
if /i "%FIRM%" EQU "4.3" set SM4.3E-DWG=*
if /i "%FIRM%" EQU "4.2" set SM4.2E-DWG=*
if /i "%FIRM%" EQU "4.1" set SM4.1E-DWG=*
goto:SKIPSM
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPblueSM
if /i "%FIRM%" EQU "4.3" set SM4.3E-DWB=*
if /i "%FIRM%" EQU "4.2" set SM4.2E-DWB=*
if /i "%FIRM%" EQU "4.1" set SM4.1E-DWB=*
goto:SKIPSM
:SKIPblueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPorangeSM
if /i "%FIRM%" EQU "4.3" set SM4.3E-DWO=*
if /i "%FIRM%" EQU "4.2" set SM4.2E-DWO=*
if /i "%FIRM%" EQU "4.1" set SM4.1E-DWO=*
goto:SKIPSM
:SKIPorangeSM
:nofirmwarechange
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Red_4.3E=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Red_4.2E=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Red_4.1E=*
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Green_4.3E=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Green_4.2E=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Green_4.1E=*
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPBlueSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Blue_4.3E=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Blue_4.2E=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Blue_4.1E=*
:SKIPBlueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPOrangeSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set darkwii_orange_4.3E=*
if /i "%FIRM%" EQU "4.2" set darkwii_orange_4.2E=*
if /i "%FIRM%" EQU "4.1" set darkwii_orange_4.1E=*
:SKIPOrangeSM
:SKIPSM
if /i "%PIC%" EQU "Y" set P=*
if /i "%NET%" EQU "Y" set IE=*
if /i "%WEATHER%" EQU "Y" set WE=*
if /i "%NEWS%" EQU "Y" set NE=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSE=*
goto:BUGGEDSMIOS
:J
if /i "%firmwarechange%" EQU "no" goto:nofirmwarechange
if /i "%ThemeSelection%" NEQ "N" goto:skip
if /i "%FIRM%" EQU "4.3" set SM4.3J=*
if /i "%FIRM%" EQU "4.2" set SM4.2J=*
if /i "%FIRM%" EQU "4.1" set SM4.1J=*
:skip
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
if /i "%FIRM%" EQU "4.3" set SM4.3J-DWR=*
if /i "%FIRM%" EQU "4.2" set SM4.2J-DWR=*
if /i "%FIRM%" EQU "4.1" set SM4.1J-DWR=*
goto:SKIPSM
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
if /i "%FIRM%" EQU "4.3" set SM4.3J-DWG=*
if /i "%FIRM%" EQU "4.2" set SM4.2J-DWG=*
if /i "%FIRM%" EQU "4.1" set SM4.1J-DWG=*
goto:SKIPSM
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPblueSM
if /i "%FIRM%" EQU "4.3" set SM4.3J-DWB=*
if /i "%FIRM%" EQU "4.2" set SM4.2J-DWB=*
if /i "%FIRM%" EQU "4.1" set SM4.1J-DWB=*
goto:SKIPSM
:SKIPblueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPorangeSM
if /i "%FIRM%" EQU "4.3" set SM4.3J-DWO=*
if /i "%FIRM%" EQU "4.2" set SM4.2J-DWO=*
if /i "%FIRM%" EQU "4.1" set SM4.1J-DWO=*
goto:SKIPSM
:SKIPorangeSM
:nofirmwarechange
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Red_4.3J=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Red_4.2J=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Red_4.1J=*
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Green_4.3J=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Green_4.2J=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Green_4.1J=*
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPBlueSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Blue_4.3J=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Blue_4.2J=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Blue_4.1J=*
:SKIPBlueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPOrangeSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set darkwii_orange_4.3J=*
if /i "%FIRM%" EQU "4.2" set darkwii_orange_4.2J=*
if /i "%FIRM%" EQU "4.1" set darkwii_orange_4.1J=*
:SKIPOrangeSM
:SKIPSM
if /i "%PIC%" EQU "Y" set P=*
if /i "%NET%" EQU "Y" set IJ=*
if /i "%WEATHER%" EQU "Y" set WJ=*
if /i "%NEWS%" EQU "Y" set NJ=*
if /i "%SHOP%" EQU "Y" set S=*
if /i "%SPEAK%" EQU "Y" set WSJ=*
goto:BUGGEDSMIOS
:K
if /i "%firmwarechange%" EQU "no" goto:nofirmwarechange
if /i "%ThemeSelection%" NEQ "N" goto:skip
if /i "%FIRM%" EQU "4.3" set SM4.3K=*
if /i "%FIRM%" EQU "4.2" set SM4.2K=*
if /i "%FIRM%" EQU "4.1" set SM4.1K=*
:skip
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
if /i "%FIRM%" EQU "4.3" set SM4.3K-DWR=*
if /i "%FIRM%" EQU "4.2" set SM4.2K-DWR=*
if /i "%FIRM%" EQU "4.1" set SM4.1K-DWR=*
goto:SKIPSM
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
if /i "%FIRM%" EQU "4.3" set SM4.3K-DWG=*
if /i "%FIRM%" EQU "4.2" set SM4.2K-DWG=*
if /i "%FIRM%" EQU "4.1" set SM4.1K-DWG=*
goto:SKIPSM
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPblueSM
if /i "%FIRM%" EQU "4.3" set SM4.3K-DWB=*
if /i "%FIRM%" EQU "4.2" set SM4.2K-DWB=*
if /i "%FIRM%" EQU "4.1" set SM4.1K-DWB=*
goto:SKIPSM
:SKIPblueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPorangeSM
if /i "%FIRM%" EQU "4.3" set SM4.3K-DWO=*
if /i "%FIRM%" EQU "4.2" set SM4.2K-DWO=*
if /i "%FIRM%" EQU "4.1" set SM4.1K-DWO=*
goto:SKIPSM
:SKIPorangeSM
:nofirmwarechange
if /i "%ThemeSelection%" NEQ "R" goto:SKIPredSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Red_4.3K=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Red_4.2K=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Red_4.1K=*
:SKIPredSM
if /i "%ThemeSelection%" NEQ "G" goto:SKIPgreenSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Green_4.3K=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Green_4.2K=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Green_4.1K=*
:SKIPgreenSM
if /i "%ThemeSelection%" NEQ "BL" goto:SKIPBlueSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set DarkWii_Blue_4.3K=*
if /i "%FIRM%" EQU "4.2" set DarkWii_Blue_4.2K=*
if /i "%FIRM%" EQU "4.1" set DarkWii_Blue_4.1K=*
:SKIPBlueSM
if /i "%ThemeSelection%" NEQ "O" goto:SKIPOrangeSM
set MyM=*
if /i "%FIRM%" EQU "4.3" set darkwii_orange_4.3K=*
if /i "%FIRM%" EQU "4.2" set darkwii_orange_4.2K=*
if /i "%FIRM%" EQU "4.1" set darkwii_orange_4.1K=*
:SKIPOrangeSM
:SKIPSM
if /i "%PIC%" EQU "Y" set P0=*
if /i "%SHOP%" EQU "Y" set SK=*
:BUGGEDSMIOS
if /i "%FIRM%" EQU "%Firmstart%" goto:miniskip
if /i "%FIRM%" EQU "4.1" set IOS60P=*
if /i "%FIRM%" EQU "4.2" set IOS70K=*
if /i "%FIRM%" EQU "4.3" set IOS80K=*
:miniskip
if /i "%UpdatesIOSQ%" EQU "Y" goto:forceSMIOSs
if /i "%ExtraProtectionOPTION%" EQU "OFF" goto:skipBuggedSMIOS
if /i "%VIRGIN%" EQU "Y" goto:forceSMIOSs
:forceSMIOSs
set IOS11P60=*
set IOS20P60=*
set IOS30P60=*
set IOS40P60=*
set IOS50P=*
set IOS52P=*
set IOS60P=*
set IOS70K=*
set IOS80K=*
:skipBuggedSMIOS
::for region changing guide
if /i "%MENU1%" NEQ "RC" goto:notRC
::set mmm=*
set yawm=*
set ARC=*
set pri=*
set cIOS249[56]-d2x-v10-beta52=*
set bootmiisd=*
if /i "%REGION%" EQU "U" (set EULAU=*) & (set RSU=*)
if /i "%REGION%" EQU "E" (set EULAE=*) & (set RSE=*)
if /i "%REGION%" EQU "J" (set EULAJ=*) & (set RSJ=*) & (set IOS59=*)
if /i "%REGION%" EQU "K" (set EULAK=*) & (set RSK=*)
set KK=*
goto:DOWNLOADQUEUE
:notRC
:COMMONSETTINGS
if /i "%SHOP%" EQU "Y" set IOS56=*
if /i "%ACTIVEIOS%" EQU "off" goto:skipactiveios
if /i "%UpdatesIOSQ%" EQU "N" goto:skipactiveios
::if /i "%FIRMSTART%" EQU "4.3" goto:skipactiveios
:ACTIVEIOS
set yawm=*
set M10=*
set IOS9=*
set IOS12=*
set IOS13=*
set IOS14=*
set IOS15=*
set IOS17=*
set IOS21=*
set IOS22=*
set IOS28=*
set IOS31=*
set IOS33=*
set IOS34=*
set IOS35=*
set IOS36v3608=*
set IOS37=*
set IOS38=*
set ios41=*
set ios43=*
set ios45=*
set ios46=*
set IOS48v4124=*
set IOS53=*
set IOS55=*
set IOS56=*
set IOS57=*
set IOS58=*
::IOS59 is a J exclusive
if /i "%REGION%" EQU "J" set IOS59=*
set IOS61=*
set IOS62=*
:skipactiveios
if /i "%MIIQ%" EQU "Y" set Mii=*
if /i "%FWDOPTION%" EQU "on" (set usbx=*) & (set yawm=*)
if /i "%USBGUIDE%" NEQ "Y" goto:NoUSBSETUP
if /i "%LOADER%" EQU "CFG" set usbfolder=*
if /i "%LOADER%" EQU "ALL" set usbfolder=*
if /i "%LOADER%" EQU "FLOW" set FLOW=*
if /i "%LOADER%" EQU "ALL" set FLOW=*
if /i "%LOADER%" EQU "GX" set usbgx=*
if /i "%LOADER%" EQU "ALL" set usbgx=*
set nintendont=*
set CleanRip=*
set wbm=*
set GCBM=*
set Nkit=*
set f32=*
:NoUSBSETUP
if /i "%VIRGIN%" NEQ "Y" goto:notvirgin
:virgin
set F32=*
set HM=*
set OHBC=*
set bootmiisd=*
set IOS58=*
if /i "%FIRMSTART%" EQU "4.1" set BB1=*
if /i "%FIRMSTART%" EQU "4.0" set BB1=*
if /i "%FIRMSTART%" EQU "3.2" set BB1=*
if /i "%FIRMSTART%" EQU "3.x" set BB1=*
if /i "%FIRMSTART%" EQU "4.2" set BB2=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%EXPLOIT%" EQU "W" set Wilbrand=*
:skip
if /i "%EXPLOIT%" EQU "S" set SMASH=*
if /i "%EXPLOIT%" EQU "L" set PWNS=*
if /i "%EXPLOIT%" EQU "T" set Twi=*
if /i "%EXPLOIT%" EQU "Y" set YUGI=*
if /i "%EXPLOIT%" EQU "LB" set Bathaxx=*
if /i "%EXPLOIT%" EQU "LS" set ROTJ=*
if /i "%EXPLOIT%" EQU "TOS" set TOS=*
if /i "%EXPLOIT%" NEQ "?" goto:notallexploits
if /i "%FIRMSTART%" EQU "o" set Twi=*
if /i "%macaddress%" EQU "S" goto:skip
if /i "%FIRMSTART%" EQU "4.3" set Wilbrand=*
:skip
set SMASH=*
if /i "%REGION%" NEQ "K" set PWNS=*
if /i "%REGION%" NEQ "K" set YUGI=*
if /i "%REGION%" NEQ "K" set Bathaxx=*
if /i "%REGION%" NEQ "K" set ROTJ=*
if /i "%REGION%" NEQ "K" set TOS=*
:notallexploits
::removed IOS236 Installer and 236 all together effective 6.5.2
::set IOS236=*
::set IOS236Installer=*
::set SIP=*
::set IOS36=*
if /i "%hermesOPTION%" EQU "on" set cIOS202[60]-v5.1R=*
if /i "%hermesOPTION%" EQU "on" set cIOS222[38]-v4=*
if /i "%hermesOPTION%" EQU "on" set cIOS223[37-38]-v4=*
if /i "%hermesOPTION%" EQU "on" set cIOS224[57]-v5.1R=*
set cIOS248[38]-d2x-v10-beta52=*
set cIOS249[56]-d2x-v10-beta52=*
set cIOS250[57]-d2x-v10-beta52=*
set cIOS251[58]-d2x-v10-beta52=*
if /i "%CMIOSOPTION%" EQU "on" set RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=*
if /i "%CMIOSOPTION%" EQU "on" set M10=
set pri=*
::set HAX=*
set yawm=*
If /i "%REGION%" NEQ "K" goto:nonkorean
If /i "%FIRMSTART%" EQU "4.3" goto:nonkorean
::set mmm=*
set yawm=*
:nonkorean
goto:DOWNLOADQUEUE
:notvirgin
::set yawm=*
if /i "%PIC%" EQU "Y" set yawm=*
if /i "%NET%" EQU "Y" set yawm=*
if /i "%WEATHER%" EQU "Y" set yawm=*
if /i "%NEWS%" EQU "Y" set yawm=*
if /i "%SHOP%" EQU "Y" set yawm=*
if /i "%SPEAK%" EQU "Y" set yawm=*
if /i "%HMInstaller%" NEQ "Y" goto:noHMInstallerforNonVirgin
set F32=*
set HM=*
set bootmiisd=*
set IOS58=*
set yawm=*
::if /i "%FIRMSTART%" EQU "4.1" set BB1=*
::if /i "%FIRMSTART%" EQU "4.0" set BB1=*
::if /i "%FIRMSTART%" EQU "3.x" set BB1=*
::if /i "%FIRMSTART%" EQU "3.2" set BB1=*
::if /i "%FIRMSTART%" EQU "4.2" set BB2=*
if /i "%FIRMSTART%" EQU "o" goto:gonow
if /i "%FIRMSTART%" EQU "4.3" goto:gonow
goto:skipextra2
:gonow
::if /i "%FIRMSTART%" EQU "o" set TWI=*
::set SMASH=*
::if /i "%REGION%" NEQ "K" set PWNS=*
::if /i "%REGION%" NEQ "K" set YUGI=*
::if /i "%REGION%" NEQ "K" set Bathaxx=*
::if /i "%REGION%" NEQ "K" set ROTJ=*
::if /i "%REGION%" NEQ "K" set TOS=*
:skipextra2
:noHMInstallerforNonVirgin
if /i "%FIRM%" NEQ "%FIRMSTART%" set yawm=*
if /i "%RECCIOS%" EQU "Y" set yawm=*
if /i "%hermesOPTION%" EQU "off" goto:skipHermes
if /i "%RECCIOS%" EQU "Y" set cIOS202[60]-v5.1R=*
if /i "%RECCIOS%" EQU "Y" set cIOS222[38]-v4=*
if /i "%RECCIOS%" EQU "Y" set cIOS223[37-38]-v4=*
if /i "%RECCIOS%" EQU "Y" set cIOS224[57]-v5.1R=*
:skipHermes
if /i "%RECCIOS%" EQU "Y" set cIOS248[38]-d2x-v10-beta52=*
if /i "%RECCIOS%" EQU "Y" set cIOS249[56]-d2x-v10-beta52=*
if /i "%RECCIOS%" EQU "Y" set cIOS250[57]-d2x-v10-beta52=*
if /i "%RECCIOS%" EQU "Y" set cIOS251[58]-d2x-v10-beta52=*
if /i "%CMIOSOPTION%" EQU "off" goto:quickskip
if /i "%RECCIOS%" EQU "Y" set RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=*
if /i "%RECCIOS%" EQU "Y" set M10=
:quickskip
if /i "%yawmQ%" EQU "Y" set YAWM=*
if /i "%FIRM%" NEQ "%FIRMSTART%" set pri=*
if /i "%PRIQ%" NEQ "Y" goto:DOWNLOADQUEUE
set pri=*
goto:DOWNLOADQUEUE
::...................................PICK Download Queue...............................
:PICKDOWNLOADQUEUE
if exist temp\DLnamesADV.txt del temp\DLnamesADV.txt>nul
if exist temp\DLgotosADV.txt del temp\DLgotosADV.txt>nul
dir temp\DownloadQueues /a:-d /b>temp\list.txt
::support\sfk filter -quiet temp\list.txt -le+".bat" -rep _".bat"__ -write -yes
support\sfk filter -quiet temp\list.txt -le+".bat" -write -yes
::count # of folders in advance to set "mode"
setlocal ENABLEDELAYEDEXPANSION
SET DLQUEUEtotal=0
for /f "delims=" %%i in (temp\list.txt) do set /a DLQUEUEtotal=!DLQUEUEtotal!+1
setlocal DISABLEDELAYEDEXPANSION
if not exist temp\DownloadQueues mkdir temp\DownloadQueues
set DLQUEUE=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo.
echo Select the Download Queue you would like to load:
echo.
echo.
if /i "%DLQUEUEtotal%" NEQ "0" goto:notzero
echo No Download Queues Found
echo.
echo Before you can load a queue you have to save one using ModMii
echo Or if loading a queue a friend has shared with you, just drag
echo and drop it onto ModMii.exe or a shortcut to ModMii.
echo.
echo.
echo Note: Download Queues are saved to "temp\DownloadQueues"
echo and can be shared amongst different ModMii users.
echo.
echo You can drag and drop a download queue onto ModMii.exe
echo to load it and save a copy to "temp\DownloadQueues"
echo for future use.
echo.
echo.
echo Press any key to return to the Main Menu.
echo.
pause>nul
goto:MENU
:notzero
echo.
set DLQUEUEnum=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist6 "%%A"
goto:quickskip
:processlist6
set /a DLQUEUEnum=%DLQUEUEnum%+1
set whatev=%*
set "whatev=!whatev:^^=^!"
set "whatev=!whatev:~1,-1!"
echo %DLQUEUEnum% = "!whatev:~0,-4!"
goto:EOF
:quickskip
setlocal DISABLEDELAYEDEXPANSION
echo.
echo.
echo Note: Download Queues are saved to "temp\DownloadQueues"
echo and can be shared amongst different ModMii users.
echo.
echo You can drag and drop a download queue onto ModMii.exe
echo to load it and save a copy to "temp\DownloadQueues"
echo for future use.
echo.
echo To delete a queue enter - before its number (e.g. -1)
echo or manually delete the file from "temp\DownloadQueues"
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
set /p DLQUEUE= Enter Selection Here:
if /i "%DLQUEUE%" EQU "M" goto:MENU
if /i "%DLQUEUE%" EQU "B" goto:MENU
if "%DLQUEUE%"=="" goto:badkey
set delqueue=
if "%DLQUEUE:~0,1%" EQU "-" set delqueue=y
if "%DLQUEUE:~0,1%" EQU "-" set "DLQUEUE=%DLQUEUE:~1%"
if %DLQUEUE% LSS 1 goto:badkey
if /i %DLQUEUE% GTR %DLQUEUEnum% goto:badkey
set DLQUEUEnum2=0
::Loop through the the following once for EACH line in *.txt, but respecting & ^ using !!
setlocal ENABLEDELAYEDEXPANSION
for /F "tokens=*" %%A in (temp\list.txt) do call :processlist5 "%%A"
goto:quickskip
:processlist5
set CurrentQueue=%*
set "CurrentQueue=!CurrentQueue:^^=^!"
set "CurrentQueue=!CurrentQueue:~1,-1!"
set /a DLQUEUEnum2=%DLQUEUEnum2%+1
if not exist "temp\DownloadQueues\%CurrentQueue%" goto:EOF
if /i "%DLQUEUEnum2%" EQU "%DLQUEUE%" goto:quickskip
goto:EOF
:quickskip
del temp\list.txt>nul
setlocal DISABLEDELAYEDEXPANSION
findStr /I /B /C:":endofqueue" "temp\DownloadQueues\%CurrentQueue%" >nul
IF ERRORLEVEL 1 (echo Not a valid download queue...) & (goto:badkey)
if /i "%delqueue%" EQU "y" del "temp\DownloadQueues\%CurrentQueue%"
if /i "%delqueue%" EQU "y" goto:PICKDOWNLOADQUEUE
:forcmdlineL
call "temp\DownloadQueues\%CurrentQueue%"
set BACKB4QUEUE=PICKDOWNLOADQUEUE
goto:DownloadQueue
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:PICKDOWNLOADQUEUE
::...................................Download Queue...............................
:DOWNLOADQUEUE
set settings=
if /i "%cmdguide%" EQU "G" set settings=G
set d2x-beta-rev=11-beta1
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
::--------------
::d2x check for changed DL names and md5's for Advanced downloads only
if /i "%MENU1%" NEQ "L" goto:DLCOUNT
if not exist temp\DLnamesADV.txt goto:DLCOUNT
findStr "d2x" temp\DLnamesADV.txt >nul
IF ERRORLEVEL 1 goto:DLCOUNT
::split out default d2x cIOSs and force "8-final" (ie. set d2x-beta-rev=10-beta52)
support\sfk filter -spat "temp\DownloadQueues\%CurrentQueue%" -ls+"SET cIOS" -le+"\x3d\x2a">temp\temp.bat
support\sfk filter -spat temp\temp.bat ++"-d2x-v" -rep _"-d2x-"*_"-d2x-v10-beta52\x3d\x2a"_ -write -yes>nul
call temp\temp.bat
FINDSTR /N . temp\DLnamesADV.txt>temp\DLnamesADVcheck.txt
support\sfk filter -quiet temp\DLnamesADVcheck.txt -+d2x -rep _cIOS*[_cIOS249[_ -rep _"Advanced Download: "__ -write -yes
set loadorgo=load4queue
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLnamesADVcheck.txt) do call :processDLCheck %%A
goto:quickskip
:processDLCheck
set advDLCheck=%*
echo set advDLcheckNUM=%advDLCheck%>temp\advDLcheckNUM.bat
support\sfk filter -quiet temp\advDLcheckNUM.bat -rep _:*__ -write -yes
call temp\advDLcheckNUM.bat
del temp\advDLcheckNUM.bat>nul
echo %advDLCheck%>temp\advDLcheck.bat
support\sfk filter -quiet temp\advDLcheck.bat -rep _"%advDLcheckNUM%:"_"set advDLcheck="_ -write -yes
call temp\advDLcheck.bat
del temp\advDLcheck.bat>nul
call temp\AdvDL%advDLcheckNUM%.bat
set oldfullname=%name%
set advDLCheck0=%advDLCheck%
set d2x-beta-rev=11-beta1
set advDLCheck=%advDLCheck:~0,17%%d2x-beta-rev%
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
set string=%d2x-beta-rev%
set d2xVersionLength=0
:loopd2xVersionLength
if defined string (
set string=%string:~1%
set /A d2xVersionLength += 1
goto:loopd2xVersionLength
)
echo set alt-d2x-beta-rev=@advDLcheck0:~17,%d2xVersionLength%@>temp\d2x-beta-rev.bat
support\sfk filter temp\d2x-beta-rev.bat -spat -rep _@_%%_ -write -yes>nul
call temp\d2x-beta-rev.bat
del temp\d2x-beta-rev.bat>nul
if /i "%d2x-beta-rev%" EQU "%alt-d2x-beta-rev%" goto:EOF
goto:%advDLCheck%
:processDLCheck2
set slotnum=%slotcode:~7%
if "%slotnum%"=="" set slotnum=249
set newname=cIOS%slotnum%%basecios:~7,10%%d2x-beta-rev%
::update temp\AdvDL#.bat
support\sfk filter -quiet temp\AdvDL%advDLcheckNUM%.bat -rep _"set MD5="*_"set MD5=%MD5%"_ -rep _"set md5alt="*_"set md5alt=%md5alt%"_ -rep _"set ciosversion="*_"set ciosversion=%ciosversion%"_ -rep _"Advanced Download: "*_"Advanced Download: %newname%%versionname%"_ -rep _"set wadname="*_"set wadname=%wadname%"_ -rep _"set wadnameless="*_"set wadnameless=%newname%"_ -write -yes
::update temp\DLnamesADV.txt
support\sfk filter -quiet temp\DLnamesADV.txt -lerep _"%oldfullname% "_"Advanced Download: %newname%%versionname%"_ -write -yes
goto:EOF
:quickskip
if exist temp\DLnamesADVcheck.txt del temp\DLnamesADVcheck.txt>nul
set loadorgo=go
::---------------------
::Count how many downloads there are!
:DLCOUNT
if exist temp\DLnames.txt del temp\DLnames.txt>nul
if exist temp\DLgotos.txt del temp\DLgotos.txt>nul
::---------------CMD LINE MODE-------------
if /i "%one%" NEQ "U" goto:nocmdlineusbloadersettings
if /i "%LOADER%" EQU "CFG" set usbfolder=*
if /i "%LOADER%" EQU "ALL" set usbfolder=*
if /i "%LOADER%" EQU "FLOW" set FLOW=*
if /i "%LOADER%" EQU "ALL" set FLOW=*
if /i "%LOADER%" EQU "GX" set usbgx=*
if /i "%LOADER%" EQU "ALL" set usbgx=*
set nintendont=*
set CleanRip=*
set wbm=*
set GCBM=*
set Nkit=*
set f32=*
:nocmdlineusbloadersettings
::get PCconfig for PC Apps
set PCconfig=(Portable installation)
if /i "%PCSAVE%" EQU "Local" set PCconfig=(Local installation with shortcuts)
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" set PCconfig=(Local installation with shortcuts)
:skip
if /i "%A01_60%" EQU "*" (echo "00000001.app from IOS60 v6174 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER01_60">>temp\DLgotos.txt)
if /i "%A01_70%" EQU "*" (echo "00000001.app from IOS70 v6687 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER01_70">>temp\DLgotos.txt)
if /i "%A01%" EQU "*" (echo "00000001.app from IOS80 v6943 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER01">>temp\DLgotos.txt)
if /i "%A0c%" EQU "*" (echo "0000000c.app from MIOS v10 (DIOS MIOS)">>temp\DLnames.txt) & (echo "NUSGRABBER0c">>temp\DLgotos.txt)
if /i "%A0e_60%" EQU "*" (echo "0000000e.app from IOS60 v6174 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER0e_60">>temp\DLgotos.txt)
if /i "%A0e_70%" EQU "*" (echo "0000000e.app from IOS70 v6687 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER0e_70">>temp\DLgotos.txt)
if /i "%A0e%" EQU "*" (echo "0000000e.app from IOS80 v6943 (SNEEK)">>temp\DLnames.txt) & (echo "NUSGRABBER0e">>temp\DLgotos.txt)
if /i "%A40%" EQU "*" (echo "00000040.app from System Menu 3.2J (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER40">>temp\DLgotos.txt)
if /i "%A42%" EQU "*" (echo "00000042.app from System Menu 3.2U (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER42">>temp\DLgotos.txt)
if /i "%A45%" EQU "*" (echo "00000045.app from System Menu 3.2E (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER45">>temp\DLgotos.txt)
if /i "%A70%" EQU "*" (echo "00000070.app from System Menu 4.0J (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER70">>temp\DLgotos.txt)
if /i "%A72%" EQU "*" (echo "00000072.app from System Menu 4.0U (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER72">>temp\DLgotos.txt)
if /i "%A75%" EQU "*" (echo "00000075.app from System Menu 4.0E (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER75">>temp\DLgotos.txt)
if /i "%A78%" EQU "*" (echo "00000078.app from System Menu 4.1J (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER78">>temp\DLgotos.txt)
if /i "%A7b%" EQU "*" (echo "0000007b.app from System Menu 4.1U (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER7b">>temp\DLgotos.txt)
if /i "%A7e%" EQU "*" (echo "0000007e.app from System Menu 4.1E (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER7e">>temp\DLgotos.txt)
if /i "%A81%" EQU "*" (echo "00000081.app from System Menu 4.1K (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER81">>temp\DLgotos.txt)
if /i "%A84%" EQU "*" (echo "00000084.app from System Menu 4.2J (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER84">>temp\DLgotos.txt)
if /i "%A87%" EQU "*" (echo "00000087.app from System Menu 4.2U (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER87">>temp\DLgotos.txt)
if /i "%A8a%" EQU "*" (echo "0000008a.app from System Menu 4.2E (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER8a">>temp\DLgotos.txt)
if /i "%A8d%" EQU "*" (echo "0000008d.app from System Menu 4.2K (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER8d">>temp\DLgotos.txt)
if /i "%A94%" EQU "*" (echo "00000094.app from System Menu 4.3J (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER94">>temp\DLgotos.txt)
if /i "%A97%" EQU "*" (echo "00000097.app from System Menu 4.3U (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER97">>temp\DLgotos.txt)
if /i "%A9a%" EQU "*" (echo "0000009a.app from System Menu 4.3E (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER9a">>temp\DLgotos.txt)
if /i "%A9d%" EQU "*" (echo "0000009d.app from System Menu 4.3K (for MyMenuify)">>temp\DLnames.txt) & (echo "NUSGRABBER9d">>temp\DLgotos.txt)
if /i "%AccioHacks%" EQU "*" (echo "Accio Hacks">>temp\DLnames.txt) & (echo "AccioHacks">>temp\DLgotos.txt)
if /i "%ARC%" EQU "*" (echo "Any Region Changer ModMii Edition">>temp\DLnames.txt) & (echo "ARC">>temp\DLgotos.txt)
if /i "%BB1%" EQU "*" (echo "Bannerbomb v1">>temp\DLnames.txt) & (echo "Bannerbomb1">>temp\DLgotos.txt)
if /i "%BB2%" EQU "*" (echo "Bannerbomb v2">>temp\DLnames.txt) & (echo "Bannerbomb2">>temp\DLgotos.txt)
if /i "%Bathaxx%" EQU "*" (echo "Bathaxx (USA, PAL and JPN)">>temp\DLnames.txt) & (echo "Bathaxx">>temp\DLgotos.txt)
if /i "%BC%" EQU "*" (echo "BC">>temp\DLnames.txt) & (echo "BCNUS">>temp\DLgotos.txt)
if /i "%bootmiisd%" EQU "*" (echo "Bootmii SD Files">>temp\DLnames.txt) & (echo "bootmiisd">>temp\DLgotos.txt)
if /i "%Casper%" EQU "*" (echo "Casper">>temp\DLnames.txt) & (echo "Casper">>temp\DLgotos.txt)
if /i "%CheatZip%" EQU "*" (echo "Cheat Codes (txtcodes)">>temp\DLnames.txt) & (echo "CheatZip">>temp\DLgotos.txt)
if /i "%CheatCodes%" EQU "*" (echo "Cheat Codes for %cheatregion% Region: txtcodes from codes.rc24.xyz">>temp\DLnames.txt) & (echo "CheatCodes">>temp\DLgotos.txt)
if /i "%cIOS202[60]-v5.1R%" EQU "*" (echo "cIOS202[60]-v5.1R">>temp\DLnames.txt) & (echo "cIOS202[60]-v5.1R">>temp\DLgotos.txt)
if /i "%cIOS222[38]-v4%" EQU "*" (echo "cIOS222[38]-v4">>temp\DLnames.txt) & (echo "cIOS222[38]-v4">>temp\DLgotos.txt)
if /i "%cIOS222[38]-v5%" EQU "*" (echo "cIOS222[38]-v5">>temp\DLnames.txt) & (echo "cIOS222[38]-v5">>temp\DLgotos.txt)
if /i "%cIOS222[38]-v5.1R%" EQU "*" (echo "cIOS222[38]-v5.1R">>temp\DLnames.txt) & (echo "cIOS222[38]-v5.1R">>temp\DLgotos.txt)
if /i "%cIOS223[37]-v5%" EQU "*" (echo "cIOS223[37]-v5">>temp\DLnames.txt) & (echo "cIOS223[37]-v5">>temp\DLgotos.txt)
if /i "%cIOS223[37]-v5.1R%" EQU "*" (echo "cIOS223[37]-v5.1R">>temp\DLnames.txt) & (echo "cIOS223[37]-v5.1R">>temp\DLgotos.txt)
if /i "%cIOS223[37-38]-v4%" EQU "*" (echo "cIOS223[37-38]-v4">>temp\DLnames.txt) & (echo "cIOS223[37-38]-v4">>temp\DLgotos.txt)
if /i "%cIOS224[57]-v5%" EQU "*" (echo "cIOS224[57]-v5">>temp\DLnames.txt) & (echo "cIOS224[57]-v5">>temp\DLgotos.txt)
if /i "%cIOS224[57]-v5.1R%" EQU "*" (echo "cIOS224[57]-v5.1R">>temp\DLnames.txt) & (echo "cIOS224[57]-v5.1R">>temp\DLgotos.txt)
if /i "%cIOS248[38]-d2x-v10-beta52%" EQU "*" (echo "cIOS248[38]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS248[38]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[37]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[37]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[37]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[37]-v19%" EQU "*" (echo "cIOS249[37]-v19">>temp\DLnames.txt) & (echo "cIOS249[37]-v19">>temp\DLgotos.txt)
if /i "%cIOS249[37]-v21%" EQU "*" (echo "cIOS249[37]-v21">>temp\DLnames.txt) & (echo "cIOS249[37]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[38]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[38]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[38]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[38]-v19%" EQU "*" (echo "cIOS249[38]-v19">>temp\DLnames.txt) & (echo "cIOS249[38]-v19">>temp\DLgotos.txt)
if /i "%cIOS249[38]-v20%" EQU "*" (echo "cIOS249[38]-v20">>temp\DLnames.txt) & (echo "cIOS249[38]-v20">>temp\DLgotos.txt)
if /i "%cIOS249[38]-v21%" EQU "*" (echo "cIOS249[38]-v21">>temp\DLnames.txt) & (echo "cIOS249[38]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[53]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[53]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[53]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[53]-v21%" EQU "*" (echo "cIOS249[53]-v21">>temp\DLnames.txt) & (echo "cIOS249[53]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[55]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[55]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[55]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[55]-v21%" EQU "*" (echo "cIOS249[55]-v21">>temp\DLnames.txt) & (echo "cIOS249[55]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[56]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[56]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[56]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[56]-v20%" EQU "*" (echo "cIOS249[56]-v20">>temp\DLnames.txt) & (echo "cIOS249[56]-v20">>temp\DLgotos.txt)
if /i "%cIOS249[56]-v21%" EQU "*" (echo "cIOS249[56]-v21">>temp\DLnames.txt) & (echo "cIOS249[56]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[57]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[57]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[57]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[57]-v19%" EQU "*" (echo "cIOS249[57]-v19">>temp\DLnames.txt) & (echo "cIOS249[57]-v19">>temp\DLgotos.txt)
if /i "%cIOS249[57]-v20%" EQU "*" (echo "cIOS249[57]-v20">>temp\DLnames.txt) & (echo "cIOS249[57]-v20">>temp\DLgotos.txt)
if /i "%cIOS249[57]-v21%" EQU "*" (echo "cIOS249[57]-v21">>temp\DLnames.txt) & (echo "cIOS249[57]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[58]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[58]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[58]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[58]-v21%" EQU "*" (echo "cIOS249[58]-v21">>temp\DLnames.txt) & (echo "cIOS249[58]-v21">>temp\DLgotos.txt)
if /i "%cIOS249[60]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[60]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[60]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[70]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[70]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[70]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249[80]-d2x-v10-beta52%" EQU "*" (echo "cIOS249[80]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS249[80]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS249-v14%" EQU "*" (echo "cIOS249-v14">>temp\DLnames.txt) & (echo "cIOS249-v14">>temp\DLgotos.txt)
if /i "%cIOS249-v17b%" EQU "*" (echo "cIOS249-v17b">>temp\DLnames.txt) & (echo "cIOS249-v17b">>temp\DLgotos.txt)
if /i "%cIOS250[37]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[37]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[37]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[37]-v19%" EQU "*" (echo "cIOS250[37]-v19">>temp\DLnames.txt) & (echo "cIOS250[37]-v19">>temp\DLgotos.txt)
if /i "%cIOS250[37]-v21%" EQU "*" (echo "cIOS250[37]-v21">>temp\DLnames.txt) & (echo "cIOS250[37]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[38]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[38]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[38]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[38]-v19%" EQU "*" (echo "cIOS250[38]-v19">>temp\DLnames.txt) & (echo "cIOS250[38]-v19">>temp\DLgotos.txt)
if /i "%cIOS250[38]-v20%" EQU "*" (echo "cIOS250[38]-v20">>temp\DLnames.txt) & (echo "cIOS250[38]-v20">>temp\DLgotos.txt)
if /i "%cIOS250[38]-v21%" EQU "*" (echo "cIOS250[38]-v21">>temp\DLnames.txt) & (echo "cIOS250[38]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[53]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[53]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[53]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[53]-v21%" EQU "*" (echo "cIOS250[53]-v21">>temp\DLnames.txt) & (echo "cIOS250[53]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[55]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[55]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[55]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[55]-v21%" EQU "*" (echo "cIOS250[55]-v21">>temp\DLnames.txt) & (echo "cIOS250[55]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[56]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[56]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[56]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[56]-v20%" EQU "*" (echo "cIOS250[56]-v20">>temp\DLnames.txt) & (echo "cIOS250[56]-v20">>temp\DLgotos.txt)
if /i "%cIOS250[56]-v21%" EQU "*" (echo "cIOS250[56]-v21">>temp\DLnames.txt) & (echo "cIOS250[56]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[57]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[57]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[57]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[57]-v19%" EQU "*" (echo "cIOS250[57]-v19">>temp\DLnames.txt) & (echo "cIOS250[57]-v19">>temp\DLgotos.txt)
if /i "%cIOS250[57]-v20%" EQU "*" (echo "cIOS250[57]-v20">>temp\DLnames.txt) & (echo "cIOS250[57]-v20">>temp\DLgotos.txt)
if /i "%cIOS250[57]-v21%" EQU "*" (echo "cIOS250[57]-v21">>temp\DLnames.txt) & (echo "cIOS250[57]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[58]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[58]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[58]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[58]-v21%" EQU "*" (echo "cIOS250[58]-v21">>temp\DLnames.txt) & (echo "cIOS250[58]-v21">>temp\DLgotos.txt)
if /i "%cIOS250[60]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[60]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[60]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[70]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[70]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[70]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250[80]-d2x-v10-beta52%" EQU "*" (echo "cIOS250[80]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS250[80]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%cIOS250-v14%" EQU "*" (echo "cIOS250-v14">>temp\DLnames.txt) & (echo "cIOS250-v14">>temp\DLgotos.txt)
if /i "%cIOS250-v17b%" EQU "*" (echo "cIOS250-v17b">>temp\DLnames.txt) & (echo "cIOS250-v17b">>temp\DLgotos.txt)
if /i "%cIOS251[58]-d2x-v10-beta52%" EQU "*" (echo "cIOS251[58]-d2x-v%d2x-beta-rev%">>temp\DLnames.txt) & (echo "cIOS251[58]-d2x-v10-beta52">>temp\DLgotos.txt)
if /i "%CleanRip%" EQU "*" (echo "CleanRip">>temp\DLnames.txt) & (echo "CleanRip">>temp\DLgotos.txt)
if /i "%RVL-cmios-v4_Waninkoko_rev5%" EQU "*" (echo "cMIOS-v4 Waninkoko rev5">>temp\DLnames.txt) & (echo "RVL-cmios-v4_Waninkoko_rev5">>temp\DLgotos.txt)
if /i "%RVL-cmios-v4_WiiGator_GCBL_v0.2%" EQU "*" (echo "cMIOS-v4 WiiGator GCBL v0.2">>temp\DLnames.txt) & (echo "RVL-cmios-v4_WiiGator_GCBL_v0.2">>temp\DLgotos.txt)
if /i "%usbfolder%" EQU "*" (echo "Configurable USB-Loader">>temp\DLnames.txt) & (echo "usbfolder">>temp\DLgotos.txt)
if /i "%CM%" EQU "*" (echo "Customize Mii %PCconfig%">>temp\DLnames.txt) & (echo "CustomizeMii">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.1E%" EQU "*" (echo "DarkWii Blue Theme (4.1E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.1E">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.1J%" EQU "*" (echo "DarkWii Blue Theme (4.1J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.1J">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.1K%" EQU "*" (echo "DarkWii Blue Theme (4.1K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.1K">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.1U%" EQU "*" (echo "DarkWii Blue Theme (4.1U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.1U">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.2E%" EQU "*" (echo "DarkWii Blue Theme (4.2E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.2E">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.2J%" EQU "*" (echo "DarkWii Blue Theme (4.2J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.2J">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.2K%" EQU "*" (echo "DarkWii Blue Theme (4.2K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.2K">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.2U%" EQU "*" (echo "DarkWii Blue Theme (4.2U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.2U">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.3E%" EQU "*" (echo "DarkWii Blue Theme (4.3E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.3E">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.3J%" EQU "*" (echo "DarkWii Blue Theme (4.3J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.3J">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.3K%" EQU "*" (echo "DarkWii Blue Theme (4.3K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.3K">>temp\DLgotos.txt)
if /i "%DarkWii_Blue_4.3U%" EQU "*" (echo "DarkWii Blue Theme (4.3U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Blue_4.3U">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.1E%" EQU "*" (echo "DarkWii Green Theme (4.1E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.1E">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.1J%" EQU "*" (echo "DarkWii Green Theme (4.1J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.1J">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.1K%" EQU "*" (echo "DarkWii Green Theme (4.1K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.1K">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.1U%" EQU "*" (echo "DarkWii Green Theme (4.1U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.1U">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.2E%" EQU "*" (echo "DarkWii Green Theme (4.2E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.2E">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.2J%" EQU "*" (echo "DarkWii Green Theme (4.2J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.2J">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.2K%" EQU "*" (echo "DarkWii Green Theme (4.2K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.2K">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.2U%" EQU "*" (echo "DarkWii Green Theme (4.2U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.2U">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.3E%" EQU "*" (echo "DarkWii Green Theme (4.3E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.3E">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.3J%" EQU "*" (echo "DarkWii Green Theme (4.3J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.3J">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.3K%" EQU "*" (echo "DarkWii Green Theme (4.3K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.3K">>temp\DLgotos.txt)
if /i "%DarkWii_Green_4.3U%" EQU "*" (echo "DarkWii Green Theme (4.3U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Green_4.3U">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.1E%" EQU "*" (echo "DarkWii Orange Theme (4.1E) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.1E">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.1J%" EQU "*" (echo "DarkWii Orange Theme (4.1J) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.1J">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.1K%" EQU "*" (echo "DarkWii Orange Theme (4.1K) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.1K">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.1U%" EQU "*" (echo "DarkWii Orange Theme (4.1U) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.1U">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.2E%" EQU "*" (echo "DarkWii Orange Theme (4.2E) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.2E">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.2J%" EQU "*" (echo "DarkWii Orange Theme (4.2J) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.2J">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.2K%" EQU "*" (echo "DarkWii Orange Theme (4.2K) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.2K">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.2U%" EQU "*" (echo "DarkWii Orange Theme (4.2U) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.2U">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.3E%" EQU "*" (echo "DarkWii Orange Theme (4.3E) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.3E">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.3J%" EQU "*" (echo "DarkWii Orange Theme (4.3J) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.3J">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.3K%" EQU "*" (echo "DarkWii Orange Theme (4.3K) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.3K">>temp\DLgotos.txt)
if /i "%darkwii_orange_4.3U%" EQU "*" (echo "DarkWii Orange Theme (4.3U) - %effect%">>temp\DLnames.txt) & (echo "darkwii_orange_4.3U">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.1E%" EQU "*" (echo "DarkWii Red Theme (4.1E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.1E">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.1J%" EQU "*" (echo "DarkWii Red Theme (4.1J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.1J">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.1K%" EQU "*" (echo "DarkWii Red Theme (4.1K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.1K">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.1U%" EQU "*" (echo "DarkWii Red Theme (4.1U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.1U">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.2E%" EQU "*" (echo "DarkWii Red Theme (4.2E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.2E">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.2J%" EQU "*" (echo "DarkWii Red Theme (4.2J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.2J">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.2K%" EQU "*" (echo "DarkWii Red Theme (4.2K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.2K">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.2U%" EQU "*" (echo "DarkWii Red Theme (4.2U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.2U">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.3E%" EQU "*" (echo "DarkWii Red Theme (4.3E) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.3E">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.3J%" EQU "*" (echo "DarkWii Red Theme (4.3J) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.3J">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.3K%" EQU "*" (echo "DarkWii Red Theme (4.3K) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.3K">>temp\DLgotos.txt)
if /i "%DarkWii_Red_4.3U%" EQU "*" (echo "DarkWii Red Theme (4.3U) - %effect%">>temp\DLnames.txt) & (echo "DarkWii_Red_4.3U">>temp\DLgotos.txt)
if /i "%Diskitude%" EQU "*" (echo "Diskitude %PCconfig%">>temp\DLnames.txt) & (echo "Diskitude">>temp\DLgotos.txt)
if /i "%DML%" EQU "*" (echo "DML">>temp\DLnames.txt) & (echo "DML">>temp\DLgotos.txt)
if /i "%Dolphin%" EQU "*" (echo "Dolphin (Wii Emulator) %PCconfig%">>temp\DLnames.txt) & (echo "Dolphin">>temp\DLgotos.txt)
if /i "%DumpMii%" EQU "*" (echo "Dump Mii NAND">>temp\DLnames.txt) & (echo "DumpMii">>temp\DLgotos.txt)
if /i "%TOS%" EQU "*" (echo "Eri HaKawai (USA, PAL and JPN)">>temp\DLnames.txt) & (echo "TOS">>temp\DLgotos.txt)
if /i "%EULAJ%" EQU "*" (echo "EULA v3 (JPN)">>temp\DLnames.txt) & (echo "EULAJ">>temp\DLgotos.txt)
if /i "%EULAK%" EQU "*" (echo "EULA v3 (KOR)">>temp\DLnames.txt) & (echo "EULAK">>temp\DLgotos.txt)
if /i "%EULAE%" EQU "*" (echo "EULA v3 (PAL)">>temp\DLnames.txt) & (echo "EULAE">>temp\DLgotos.txt)
if /i "%EULAU%" EQU "*" (echo "EULA v3 (USA)">>temp\DLnames.txt) & (echo "EULAU">>temp\DLgotos.txt)
if /i "%f32%" EQU "*" (echo "FAT32 GUI Formatter %PCconfig%">>temp\DLnames.txt) & (echo "F32">>temp\DLgotos.txt)
if /i "%fceugx%" EQU "*" (echo "FCEUGX (NES Emulator)">>temp\DLnames.txt) & (echo "fceugx">>temp\DLgotos.txt)
if /i "%FILEZILLA%" EQU "*" (echo "FileZilla %PCconfig%">>temp\DLnames.txt) & (echo "FILEZILLA">>temp\DLgotos.txt)
if /i "%ftpii%" EQU "*" (echo "ftpii">>temp\DLnames.txt) & (echo "ftpii">>temp\DLgotos.txt)
if /i "%GCBM%" EQU "*" (echo "GameCube Backup Manager %PCconfig%">>temp\DLnames.txt) & (echo "GCBM">>temp\DLgotos.txt)
if /i "%SDTEST%" EQU "*" (echo "H2testw (SD Card and USB Test Tool) %PCconfig%">>temp\DLnames.txt) & (echo "SDTEST">>temp\DLgotos.txt)
if /i "%HM%" EQU "*" (echo "HackMii Installer">>temp\DLnames.txt) & (echo "HackmiiInstaller">>temp\DLgotos.txt)
if /i "%HashMF%" EQU "*" (echo "HashMyFiles %PCconfig%">>temp\DLnames.txt) & (echo "HashMF">>temp\DLgotos.txt)
if /i "%HBB%" EQU "*" (echo "Homebrew Browser">>temp\DLnames.txt) & (echo "HBB">>temp\DLgotos.txt)
if /i "%hxd%" EQU "*" (echo "HxD Hex Editor %PCconfig%">>temp\DLnames.txt) & (echo "hxd">>temp\DLgotos.txt)
if /i "%pwns%" EQU "*" (echo "Indiana Pwns">>temp\DLnames.txt) & (echo "pwns">>temp\DLgotos.txt)
if /i "%IOS9%" EQU "*" (echo "IOS9 v1034">>temp\DLnames.txt) & (echo "IOS9">>temp\DLgotos.txt)
if /i "%IOS11P60%" EQU "*" (echo "IOS11v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS11P60">>temp\DLgotos.txt)
if /i "%IOS12%" EQU "*" (echo "IOS12 v526">>temp\DLnames.txt) & (echo "IOS12">>temp\DLgotos.txt)
if /i "%IOS13%" EQU "*" (echo "IOS13 v1032">>temp\DLnames.txt) & (echo "IOS13">>temp\DLgotos.txt)
if /i "%IOS14%" EQU "*" (echo "IOS14 v1032">>temp\DLnames.txt) & (echo "IOS14">>temp\DLgotos.txt)
if /i "%IOS15%" EQU "*" (echo "IOS15 v1032">>temp\DLnames.txt) & (echo "IOS15">>temp\DLgotos.txt)
if /i "%IOS17%" EQU "*" (echo "IOS17 v1032">>temp\DLnames.txt) & (echo "IOS17">>temp\DLgotos.txt)
if /i "%IOS20P60%" EQU "*" (echo "IOS20v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS20P60">>temp\DLgotos.txt)
if /i "%IOS21%" EQU "*" (echo "IOS21 v1039">>temp\DLnames.txt) & (echo "IOS21">>temp\DLgotos.txt)
if /i "%IOS22%" EQU "*" (echo "IOS22 v1294">>temp\DLnames.txt) & (echo "IOS22">>temp\DLgotos.txt)
if /i "%IOS28%" EQU "*" (echo "IOS28 v1807">>temp\DLnames.txt) & (echo "IOS28">>temp\DLgotos.txt)
if /i "%IOS30P%" EQU "*" (echo "IOS30v12576(IOS30v2576[FS-ES-NP-VP])">>temp\DLnames.txt) & (echo "IOS30P">>temp\DLgotos.txt)
if /i "%IOS30%" EQU "*" (echo "IOS30 v2576">>temp\DLnames.txt) & (echo "IOS30">>temp\DLgotos.txt)
if /i "%IOS30P60%" EQU "*" (echo "IOS30v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS30P60">>temp\DLgotos.txt)
if /i "%IOS31%" EQU "*" (echo "IOS31 v3608">>temp\DLnames.txt) & (echo "IOS31">>temp\DLgotos.txt)
if /i "%IOS33%" EQU "*" (echo "IOS33 v3608">>temp\DLnames.txt) & (echo "IOS33">>temp\DLgotos.txt)
if /i "%IOS34%" EQU "*" (echo "IOS34 v3608">>temp\DLnames.txt) & (echo "IOS34">>temp\DLgotos.txt)
if /i "%IOS35%" EQU "*" (echo "IOS35 v3608">>temp\DLnames.txt) & (echo "IOS35">>temp\DLgotos.txt)
if /i "%IOS36%" EQU "*" (echo "IOS36 v3351">>temp\DLnames.txt) & (echo "IOS36">>temp\DLgotos.txt)
if /i "%IOS36v3608%" EQU "*" (echo "IOS36 v3608">>temp\DLnames.txt) & (echo "IOS36v3608">>temp\DLgotos.txt)
if /i "%IOS37%" EQU "*" (echo "IOS37 v5663">>temp\DLnames.txt) & (echo "IOS37">>temp\DLgotos.txt)
if /i "%IOS38%" EQU "*" (echo "IOS38 v4124">>temp\DLnames.txt) & (echo "IOS38">>temp\DLgotos.txt)
if /i "%IOS40P60%" EQU "*" (echo "IOS40v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS40P60">>temp\DLgotos.txt)
if /i "%IOS41%" EQU "*" (echo "IOS41 v3607">>temp\DLnames.txt) & (echo "IOS41">>temp\DLgotos.txt)
if /i "%IOS43%" EQU "*" (echo "IOS43 v3607">>temp\DLnames.txt) & (echo "IOS43">>temp\DLgotos.txt)
if /i "%IOS45%" EQU "*" (echo "IOS45 v3607">>temp\DLnames.txt) & (echo "IOS45">>temp\DLgotos.txt)
if /i "%IOS46%" EQU "*" (echo "IOS46 v3607">>temp\DLnames.txt) & (echo "IOS46">>temp\DLgotos.txt)
if /i "%IOS48v4124%" EQU "*" (echo "IOS48 v4124">>temp\DLnames.txt) & (echo "IOS48v4124">>temp\DLgotos.txt)
if /i "%IOS50P%" EQU "*" (echo "IOS50v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS50P">>temp\DLgotos.txt)
if /i "%IOS52P%" EQU "*" (echo "IOS52v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS52P">>temp\DLgotos.txt)
if /i "%IOS53%" EQU "*" (echo "IOS53 v5663">>temp\DLnames.txt) & (echo "IOS53">>temp\DLgotos.txt)
if /i "%IOS55%" EQU "*" (echo "IOS55 v5663">>temp\DLnames.txt) & (echo "IOS55">>temp\DLgotos.txt)
if /i "%IOS56%" EQU "*" (echo "IOS56 v5662">>temp\DLnames.txt) & (echo "IOS56">>temp\DLgotos.txt)
if /i "%IOS57%" EQU "*" (echo "IOS57 v5919">>temp\DLnames.txt) & (echo "IOS57">>temp\DLgotos.txt)
if /i "%IOS58%" EQU "*" (echo "IOS58 v6176">>temp\DLnames.txt) & (echo "IOS58">>temp\DLgotos.txt)
if /i "%IOS59%" EQU "*" (echo "IOS59 v9249">>temp\DLnames.txt) & (echo "IOS59">>temp\DLgotos.txt)
if /i "%IOS60%" EQU "*" (echo "IOS60 v6174">>temp\DLnames.txt) & (echo "IOS60">>temp\DLgotos.txt)
if /i "%IOS60P%" EQU "*" (echo "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS60P">>temp\DLgotos.txt)
if /i "%IOS61%" EQU "*" (echo "IOS61 v5662">>temp\DLnames.txt) & (echo "IOS61">>temp\DLgotos.txt)
if /i "%IOS62%" EQU "*" (echo "IOS62 v6430">>temp\DLnames.txt) & (echo "IOS62">>temp\DLgotos.txt)
if /i "%IOS70P%" EQU "*" (echo "IOS70v16687(IOS70v6687[FS-ES-NP-VP])">>temp\DLnames.txt) & (echo "IOS70P">>temp\DLgotos.txt)
if /i "%IOS70K%" EQU "*" (echo "IOS70v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS70K">>temp\DLgotos.txt)
if /i "%IOS70%" EQU "*" (echo "IOS70 v6687">>temp\DLnames.txt) & (echo "IOS70">>temp\DLgotos.txt)
if /i "%IOS80P%" EQU "*" (echo "IOS80v16944(IOS80v6944[FS-ES-NP-VP])">>temp\DLnames.txt) & (echo "IOS80P">>temp\DLgotos.txt)
if /i "%IOS80K%" EQU "*" (echo "IOS80v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])">>temp\DLnames.txt) & (echo "IOS80K">>temp\DLgotos.txt)
if /i "%IOS80%" EQU "*" (echo "IOS80 v6944">>temp\DLnames.txt) & (echo "IOS80">>temp\DLgotos.txt)
if /i "%IOS236%" EQU "*" (echo "IOS236v65535(IOS36v3351[FS-ES-NP-VP])">>temp\DLnames.txt) & (echo "IOS236">>temp\DLgotos.txt)
if /i "%IOS236Installer%" EQU "*" (echo "IOS236 Installer v5 Mod">>temp\DLnames.txt) & (echo "IOS236Installer">>temp\DLgotos.txt)
if /i "%IJ%" EQU "*" (echo "JPN Internet Channel">>temp\DLnames.txt) & (echo "NET_J">>temp\DLgotos.txt)
if /i "%NJ%" EQU "*" (echo "JPN NEWS Channel">>temp\DLnames.txt) & (echo "NEWS_J">>temp\DLgotos.txt)
if /i "%WJ%" EQU "*" (echo "JPN Weather Channel">>temp\DLnames.txt) & (echo "WEATHER_J">>temp\DLgotos.txt)
if /i "%WSJ%" EQU "*" (echo "JPN Wii Speak Channel">>temp\DLnames.txt) & (echo "SPEAK_J">>temp\DLgotos.txt)
::if /i "%PK%" EQU "*" (echo "KOREAN Photo Channel 1.1">>temp\DLnames.txt) & (echo "PHOTO_K">>temp\DLgotos.txt)
if /i "%KK%" EQU "*" (echo "KoreanKii">>temp\DLnames.txt) & (echo "KK">>temp\DLgotos.txt)
if /i "%locked%" EQU "*" (echo "Locked Apps Folder for HBC (PASS=UDLRAB)">>temp\DLnames.txt) & (echo "locked">>temp\DLgotos.txt)
if /i "%MII%" EQU "*" (echo "MII Channel">>temp\DLnames.txt) & (echo "MII">>temp\DLgotos.txt)
if /i "%M10%" EQU "*" (echo "MIOS v10">>temp\DLnames.txt) & (echo "M10">>temp\DLgotos.txt)
if /i "%mmm%" EQU "*" (echo "Multi-Mod Manager (MMM) v13.4">>temp\DLnames.txt) & (echo "mmm">>temp\DLgotos.txt)
if /i "%MyM%" EQU "*" (echo "MyMenuifyMod">>temp\DLnames.txt) & (echo "Mym">>temp\DLgotos.txt)
if /i "%neogamma%" EQU "*" (echo "Neogamma Backup Disc Loader">>temp\DLnames.txt) & (echo "neogamma">>temp\DLgotos.txt)
if /i "%nintendont%" EQU "*" (echo "Nintendont">>temp\DLnames.txt) & (echo "Nintendont">>temp\DLgotos.txt)
if /i "%Nkit%" EQU "*" (echo "NKit Processing App %PCconfig%">>temp\DLnames.txt) & (echo "Nkit">>temp\DLgotos.txt)
if /i "%cBC%" EQU "*" (echo "NMM">>temp\DLnames.txt) & (echo "NMM">>temp\DLgotos.txt)
if /i "%Not64%" EQU "*" (echo "Not64 (N64 Emulator)">>temp\DLnames.txt) & (echo "Not64">>temp\DLgotos.txt)
if /i "%nSwitch%" EQU "*" (echo "nSwitch">>temp\DLnames.txt) & (echo "nSwitch">>temp\DLgotos.txt)
if /i "%ohnes%" EQU "*" (echo "ohneschwanzenegger NUS NANDBuilder %PCconfig%">>temp\DLnames.txt) & (echo "ohnes">>temp\DLgotos.txt)
if /i "%OHBC%" EQU "*" (echo "Open Homebrew Channel WAD (LULZ)">>temp\DLnames.txt) & (echo "OHBC">>temp\DLgotos.txt)
if /i "%OSC%" EQU "*" (echo "Open Shop Channel %PCconfig%">>temp\DLnames.txt) & (echo "OSC">>temp\DLgotos.txt)
if /i "%IE%" EQU "*" (echo "PAL Internet Channel">>temp\DLnames.txt) & (echo "NET_E">>temp\DLgotos.txt)
if /i "%NE%" EQU "*" (echo "PAl NEWS Channel">>temp\DLnames.txt) & (echo "NEWS_E">>temp\DLgotos.txt)
if /i "%WE%" EQU "*" (echo "PAL Weather Channel">>temp\DLnames.txt) & (echo "WEATHER_E">>temp\DLgotos.txt)
if /i "%WSE%" EQU "*" (echo "PAL Wii Speak Channel">>temp\DLnames.txt) & (echo "SPEAK_E">>temp\DLgotos.txt)
if /i "%P0%" EQU "*" (echo "Photo Channel (USA / PAL / JPN /KOR)">>temp\DLnames.txt) & (echo "PHOTO0">>temp\DLgotos.txt)
if /i "%P%" EQU "*" (echo "Photo Channel 1.1 (USA / PAL / JPN)">>temp\DLnames.txt) & (echo "PHOTO">>temp\DLgotos.txt)
if /i "%PLC%" EQU "*" (echo "postLoader Forwarder Channel">>temp\DLnames.txt) & (echo "PLChannel">>temp\DLgotos.txt)
if /i "%PL%" EQU "*" (echo "postLoader">>temp\DLnames.txt) & (echo "postLoader">>temp\DLgotos.txt)
if /i "%HAX%" EQU "*" (echo "Priiloader Hacks">>temp\DLnames.txt) & (echo "PriiHacks">>temp\DLgotos.txt)
if /i "%Pri%" EQU "*" (echo "Priiloader">>temp\DLnames.txt) & (echo "Priiloader">>temp\DLgotos.txt)
if /i "%RSJ%" EQU "*" (echo "Region Select v2 (JPN)">>temp\DLnames.txt) & (echo "RSJ">>temp\DLgotos.txt)
if /i "%RSK%" EQU "*" (echo "Region Select v2 (KOR)">>temp\DLnames.txt) & (echo "RSK">>temp\DLgotos.txt)
if /i "%RSE%" EQU "*" (echo "Region Select v2 (PAL)">>temp\DLnames.txt) & (echo "RSE">>temp\DLgotos.txt)
if /i "%RSU%" EQU "*" (echo "Region Select v2 (USA)">>temp\DLnames.txt) & (echo "RSU">>temp\DLgotos.txt)
if /i "%ROTJ%" EQU "*" (echo "Return of the Jodi (USA, PAL and JPN)">>temp\DLnames.txt) & (echo "ROTJ">>temp\DLgotos.txt)
if /i "%RC24%" EQU "*" (echo "RiiConnect24 Patcher %PCconfig%">>temp\DLnames.txt) & (echo "RC24">>temp\DLgotos.txt)
if /i "%SGM%" EQU "*" (echo "SaveGame Manager GX">>temp\DLnames.txt) & (echo "SGM">>temp\DLgotos.txt)
if /i "%SK%" EQU "*" (echo "Shopping Channel (KOR)">>temp\DLnames.txt) & (echo "SHOP_K">>temp\DLgotos.txt)
if /i "%S%" EQU "*" (echo "Shopping Channel (USA / PAL / JPN)">>temp\DLnames.txt) & (echo "SHOP">>temp\DLgotos.txt)
if /i "%SMW%" EQU "*" (echo "ShowMiiWads %PCconfig%">>temp\DLnames.txt) & (echo "SMW">>temp\DLgotos.txt)
if /i "%SIP%" EQU "*" (echo "Simple IOS Patcher">>temp\DLnames.txt) & (echo "SIP">>temp\DLgotos.txt)
if /i "%smash%" EQU "*" (echo "Smash Stack (USA, PAL, JPN and KOR)">>temp\DLnames.txt) & (echo "smash">>temp\DLgotos.txt)
if /i "%snes9xgx%" EQU "*" (echo "SNES9xGX (SNES Emulator)">>temp\DLnames.txt) & (echo "snes9xgx">>temp\DLgotos.txt)
if /i "%STUBS%" EQU "*" (echo "Some Stub IOSs (%STUBSlist%) - Optional">>temp\DLnames.txt) & (echo "SomeStubIOSs">>temp\DLgotos.txt)
if /i "%S2U%" EQU "*" (echo "Switch2Uneek">>temp\DLnames.txt) & (echo "S2U">>temp\DLgotos.txt)
if /i "%syscheck%" EQU "*" (echo "SysCheck ModMii Edition">>temp\DLnames.txt) & (echo "sysCheck">>temp\DLgotos.txt)
if /i "%SM3.2E%" EQU "*" (echo "System Menu 3.2E">>temp\DLnames.txt) & (echo "SM3.2E">>temp\DLgotos.txt)
if /i "%SM3.2J%" EQU "*" (echo "System Menu 3.2J">>temp\DLnames.txt) & (echo "SM3.2J">>temp\DLgotos.txt)
if /i "%SM3.2U%" EQU "*" (echo "System Menu 3.2U">>temp\DLnames.txt) & (echo "SM3.2U">>temp\DLgotos.txt)
if /i "%SM4.1E%" EQU "*" (echo "System Menu 4.1E">>temp\DLnames.txt) & (echo "SM4.1E">>temp\DLgotos.txt)
if /i "%SM4.1E-DWB%" EQU "*" (echo "System Menu 4.1E with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1E-DWB">>temp\DLgotos.txt)
if /i "%SM4.1E-DWG%" EQU "*" (echo "System Menu 4.1E with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1E-DWG">>temp\DLgotos.txt)
if /i "%SM4.1E-DWO%" EQU "*" (echo "System Menu 4.1E with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1E-DWO">>temp\DLgotos.txt)
if /i "%SM4.1E-DWR%" EQU "*" (echo "System Menu 4.1E with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1E-DWR">>temp\DLgotos.txt)
if /i "%SM4.1J%" EQU "*" (echo "System Menu 4.1J">>temp\DLnames.txt) & (echo "SM4.1J">>temp\DLgotos.txt)
if /i "%SM4.1J-DWB%" EQU "*" (echo "System Menu 4.1J with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1J-DWB">>temp\DLgotos.txt)
if /i "%SM4.1J-DWG%" EQU "*" (echo "System Menu 4.1J with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1J-DWG">>temp\DLgotos.txt)
if /i "%SM4.1J-DWO%" EQU "*" (echo "System Menu 4.1J with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1J-DWO">>temp\DLgotos.txt)
if /i "%SM4.1J-DWR%" EQU "*" (echo "System Menu 4.1J with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1J-DWR">>temp\DLgotos.txt)
if /i "%SM4.1K%" EQU "*" (echo "System Menu 4.1K">>temp\DLnames.txt) & (echo "SM4.1K">>temp\DLgotos.txt)
if /i "%SM4.1K-DWB%" EQU "*" (echo "System Menu 4.1K with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1K-DWB">>temp\DLgotos.txt)
if /i "%SM4.1K-DWG%" EQU "*" (echo "System Menu 4.1K with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1K-DWG">>temp\DLgotos.txt)
if /i "%SM4.1K-DWO%" EQU "*" (echo "System Menu 4.1K with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1K-DWO">>temp\DLgotos.txt)
if /i "%SM4.1K-DWR%" EQU "*" (echo "System Menu 4.1K with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1K-DWR">>temp\DLgotos.txt)
if /i "%SM4.1U%" EQU "*" (echo "System Menu 4.1U">>temp\DLnames.txt) & (echo "SM4.1U">>temp\DLgotos.txt)
if /i "%SM4.1U-DWB%" EQU "*" (echo "System Menu 4.1U with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1U-DWB">>temp\DLgotos.txt)
if /i "%SM4.1U-DWG%" EQU "*" (echo "System Menu 4.1U with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1U-DWG">>temp\DLgotos.txt)
if /i "%SM4.1U-DWO%" EQU "*" (echo "System Menu 4.1U with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1U-DWO">>temp\DLgotos.txt)
if /i "%SM4.1U-DWR%" EQU "*" (echo "System Menu 4.1U with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.1U-DWR">>temp\DLgotos.txt)
if /i "%SM4.2E%" EQU "*" (echo "System Menu 4.2E">>temp\DLnames.txt) & (echo "SM4.2E">>temp\DLgotos.txt)
if /i "%SM4.2E-DWB%" EQU "*" (echo "System Menu 4.2E with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2E-DWB">>temp\DLgotos.txt)
if /i "%SM4.2E-DWG%" EQU "*" (echo "System Menu 4.2E with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2E-DWG">>temp\DLgotos.txt)
if /i "%SM4.2E-DWO%" EQU "*" (echo "System Menu 4.2E with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2E-DWO">>temp\DLgotos.txt)
if /i "%SM4.2E-DWR%" EQU "*" (echo "System Menu 4.2E with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2E-DWR">>temp\DLgotos.txt)
if /i "%SM4.2J%" EQU "*" (echo "System Menu 4.2J">>temp\DLnames.txt) & (echo "SM4.2J">>temp\DLgotos.txt)
if /i "%SM4.2J-DWB%" EQU "*" (echo "System Menu 4.2J with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2J-DWB">>temp\DLgotos.txt)
if /i "%SM4.2J-DWG%" EQU "*" (echo "System Menu 4.2J with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2J-DWG">>temp\DLgotos.txt)
if /i "%SM4.2J-DWO%" EQU "*" (echo "System Menu 4.2J with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2J-DWO">>temp\DLgotos.txt)
if /i "%SM4.2J-DWR%" EQU "*" (echo "System Menu 4.2J with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2J-DWR">>temp\DLgotos.txt)
if /i "%SM4.2K%" EQU "*" (echo "System Menu 4.2K">>temp\DLnames.txt) & (echo "SM4.2K">>temp\DLgotos.txt)
if /i "%SM4.2K-DWB%" EQU "*" (echo "System Menu 4.2K with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2K-DWB">>temp\DLgotos.txt)
if /i "%SM4.2K-DWG%" EQU "*" (echo "System Menu 4.2K with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2K-DWG">>temp\DLgotos.txt)
if /i "%SM4.2K-DWO%" EQU "*" (echo "System Menu 4.2K with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2K-DWO">>temp\DLgotos.txt)
if /i "%SM4.2K-DWR%" EQU "*" (echo "System Menu 4.2K with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2K-DWR">>temp\DLgotos.txt)
if /i "%SM4.2U%" EQU "*" (echo "System Menu 4.2U">>temp\DLnames.txt) & (echo "SM4.2U">>temp\DLgotos.txt)
if /i "%SM4.2U-DWB%" EQU "*" (echo "System Menu 4.2U with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2U-DWB">>temp\DLgotos.txt)
if /i "%SM4.2U-DWG%" EQU "*" (echo "System Menu 4.2U with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2U-DWG">>temp\DLgotos.txt)
if /i "%SM4.2U-DWO%" EQU "*" (echo "System Menu 4.2U with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2U-DWO">>temp\DLgotos.txt)
if /i "%SM4.2U-DWR%" EQU "*" (echo "System Menu 4.2U with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.2U-DWR">>temp\DLgotos.txt)
if /i "%SM4.3E%" EQU "*" (echo "System Menu 4.3E">>temp\DLnames.txt) & (echo "SM4.3E">>temp\DLgotos.txt)
if /i "%SM4.3E-DWB%" EQU "*" (echo "System Menu 4.3E with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3E-DWB">>temp\DLgotos.txt)
if /i "%SM4.3E-DWG%" EQU "*" (echo "System Menu 4.3E with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3E-DWG">>temp\DLgotos.txt)
if /i "%SM4.3E-DWO%" EQU "*" (echo "System Menu 4.3E with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3E-DWO">>temp\DLgotos.txt)
if /i "%SM4.3E-DWR%" EQU "*" (echo "System Menu 4.3E with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3E-DWR">>temp\DLgotos.txt)
if /i "%SM4.3J%" EQU "*" (echo "System Menu 4.3J">>temp\DLnames.txt) & (echo "SM4.3J">>temp\DLgotos.txt)
if /i "%SM4.3J-DWB%" EQU "*" (echo "System Menu 4.3J with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3J-DWB">>temp\DLgotos.txt)
if /i "%SM4.3J-DWG%" EQU "*" (echo "System Menu 4.3J with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3J-DWG">>temp\DLgotos.txt)
if /i "%SM4.3J-DWO%" EQU "*" (echo "System Menu 4.3J with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3J-DWO">>temp\DLgotos.txt)
if /i "%SM4.3J-DWR%" EQU "*" (echo "System Menu 4.3J with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3J-DWR">>temp\DLgotos.txt)
if /i "%SM4.3K%" EQU "*" (echo "System Menu 4.3K">>temp\DLnames.txt) & (echo "SM4.3K">>temp\DLgotos.txt)
if /i "%SM4.3K-DWB%" EQU "*" (echo "System Menu 4.3K with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3K-DWB">>temp\DLgotos.txt)
if /i "%SM4.3K-DWG%" EQU "*" (echo "System Menu 4.3K with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3K-DWG">>temp\DLgotos.txt)
if /i "%SM4.3K-DWO%" EQU "*" (echo "System Menu 4.3K with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3K-DWO">>temp\DLgotos.txt)
if /i "%SM4.3K-DWR%" EQU "*" (echo "System Menu 4.3K with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3K-DWR">>temp\DLgotos.txt)
if /i "%SM4.3U%" EQU "*" (echo "System Menu 4.3U">>temp\DLnames.txt) & (echo "SM4.3U">>temp\DLgotos.txt)
if /i "%SM4.3U-DWB%" EQU "*" (echo "System Menu 4.3U with Dark Wii Blue Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3U-DWB">>temp\DLgotos.txt)
if /i "%SM4.3U-DWG%" EQU "*" (echo "System Menu 4.3U with Dark Wii Green Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3U-DWG">>temp\DLgotos.txt)
if /i "%SM4.3U-DWO%" EQU "*" (echo "System Menu 4.3U with Dark Wii Orange Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3U-DWO">>temp\DLgotos.txt)
if /i "%SM4.3U-DWR%" EQU "*" (echo "System Menu 4.3U with Dark Wii Red Theme - %effect%">>temp\DLnames.txt) & (echo "SM4.3U-DWR">>temp\DLgotos.txt)
if /i "%ThemeMiiMod%" EQU "*" (echo "ThemeMii Mod %PCconfig%">>temp\DLnames.txt) & (echo "ThemeMiiMod">>temp\DLgotos.txt)
if /i "%Twi2%" EQU "*" (echo "Twilight Hack v0.1 Beta2 (3.4: USA, PAL and JPN)">>temp\DLnames.txt) & (echo "Twi2">>temp\DLgotos.txt)
if /i "%Twi%" EQU "*" (echo "Twilight Hack v0.1 Beta1 (under 3.4: USA, PAL and JPN)">>temp\DLnames.txt) & (echo "Twi">>temp\DLgotos.txt)
if /i "%IU%" EQU "*" (echo "USA Internet Channel">>temp\DLnames.txt) & (echo "NET_U">>temp\DLgotos.txt)
if /i "%NU%" EQU "*" (echo "USA NEWS Channel">>temp\DLnames.txt) & (echo "NEWS_U">>temp\DLgotos.txt)
if /i "%WU%" EQU "*" (echo "USA Weather Channel">>temp\DLnames.txt) & (echo "WEATHER_U">>temp\DLgotos.txt)
if /i "%WSU%" EQU "*" (echo "USA Wii Speak Channel">>temp\DLnames.txt) & (echo "SPEAK_U">>temp\DLgotos.txt)
if /i "%usbgx%" EQU "*" (echo "USB Loader GX">>temp\DLnames.txt) & (echo "usbgx">>temp\DLgotos.txt)
if /i "%USBX%" EQU "*" (echo "USB-Loader Forwarder Channel\dol">>temp\DLnames.txt) & (echo "USBX">>temp\DLgotos.txt)
if /i "%vbagx%" EQU "*" (echo "Visual Boy Advance GX (GB/GBA Emulator)">>temp\DLnames.txt) & (echo "vbagx">>temp\DLgotos.txt)
if /i "%wbm%" EQU "*" (echo "Wii Backup Manager %PCconfig%">>temp\DLnames.txt) & (echo "WBM">>temp\DLgotos.txt)
if /i "%WiiGSC%" EQU "*" (echo "Wii Game Shortcut Creator %PCconfig%">>temp\DLnames.txt) & (echo "WiiGSC">>temp\DLgotos.txt)
if /i "%WII64%" EQU "*" (echo "Wii64 (N64 Emulator)">>temp\DLnames.txt) & (echo "WII64">>temp\DLgotos.txt)
if /i "%FLOW%" EQU "*" (echo "WiiFlow">>temp\DLnames.txt) & (echo "FLOW">>temp\DLgotos.txt)
if /i "%FLOWF%" EQU "*" (echo "WiiFlow Forwarder Channel\dol">>temp\DLnames.txt) & (echo "FLOWF">>temp\DLgotos.txt)
if /i "%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%" EQU "*" (echo "WiiGator+WiiPower cMIOS-v65535(v10)">>temp\DLnames.txt) & (echo "RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2">>temp\DLgotos.txt)
if /i "%WiiMC%" EQU "*" (echo "WiiMC-SS (Media Player)">>temp\DLnames.txt) & (echo "WIIMC">>temp\DLgotos.txt)
if /i "%WIISX%" EQU "*" (echo "WiiSXRX (Playstation 1 Emulator)">>temp\DLnames.txt) & (echo "WIISX">>temp\DLgotos.txt)
if /i "%WIIX%" EQU "*" (echo "WiiXplorer">>temp\DLnames.txt) & (echo "WIIX">>temp\DLgotos.txt)
if /i "%Wilbrand%" EQU "*" (echo "Wilbrand - 4.3%REGION% - MAC:%macaddress%">>temp\DLnames.txt) & (echo "Wilbrand">>temp\DLgotos.txt)
if /i "%yawm%" EQU "*" (echo "Yet Another Wad Manager ModMii Edition">>temp\DLnames.txt) & (echo "yawm">>temp\DLgotos.txt)
if /i "%YUGI%" EQU "*" (echo "YU-GI-OWNED (USA, PAL and JPN)">>temp\DLnames.txt) & (echo "YUGI">>temp\DLgotos.txt)
if exist temp\DLnames.txt support\sfk filter -quiet "temp\DLnames.txt" -rep _"""__ -write -yes
if exist temp\DLgotos.txt support\sfk filter -quiet "temp\DLgotos.txt" -rep _"""__ -write -yes
if not exist temp\DLGotosADV.txt goto:quickskip
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLGotosADV.txt) do call :processDLGotosADV %%A
goto:quickskip
:processDLGotosADV
echo %*>>temp\DLgotos.txt
goto:EOF
:quickskip
if not exist temp\DLnamesADV.txt goto:quickskip
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLnamesADV.txt) do call :processDLnamesADV %%A
goto:quickskip
:processDLnamesADV
echo %*>>temp\DLnames.txt
goto:EOF
:quickskip
if exist "temp\DLgotos.txt" copy /y "temp\DLgotos.txt" "temp\DLgotos-copy.txt">nul
SET DLTOTAL=0
if not exist temp\DLnames.txt goto:miniskip
setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%i in (temp\DLnames.txt) do set /a DLTOTAL=!DLTOTAL!+1
setlocal DISABLEDELAYEDEXPANSION
:miniskip
if /i "%MENU1%" EQU "S" goto:DLSETTINGS
if /i "%MENUREAL%" EQU "S" goto:DLSETTINGS
if /i "%MENU1%" EQU "FC" goto:DLSETTINGS
::SysCheck Updater - handles when no downloads were marked for installation
if /i "%MENU1%" NEQ "SU" goto:miniskip
if /i "%DLTOTAL%" NEQ "0" goto:miniskip
echo.
echo According to your SysCheck log your Wii's softmods are up to date.
echo.
@ping 127.0.0.1 -n 5 -w 1000> nul
if /i "%cmdlinemode%" EQU "Y" exit
goto:sysCheckName
:miniskip
::---------------CMD LINE MODE-------------
if /i "%cmdlinemodeswitchoff%" EQU "Y" (set cmdlinemode=) & (set one=) & (set two=)
if /i "%cmdlinemode%" EQU "Y" goto:DLSettings
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
if /i "%MENU1%" EQU "H" echo HackMii Solutions
if /i "%MENU1%" EQU "H" echo.
::-----------DL QUEUE SETTINGS---------
if /i "%MENU1%" NEQ "L" goto:skiploadDLcue
findStr /I /C:"Set ROOTSAVE=off" "support\settings.bat" >nul
if not ERRORLEVEL 1 (set ROOTSAVEREAL=off) else (set ROOTSAVEREAL=on)
findStr /I /C:"Set OPTION1=off" "support\settings.bat" >nul
if not ERRORLEVEL 1 (set OPTION1REAL=off) else (set OPTION1REAL=on)
if /i "%ROOTSAVE%" EQU "%ROOTSAVEREAL%" (set matchrs=Green) else (set matchrs=Red)
if /i "%OPTION1%" EQU "%OPTION1REAL%" (set match1=Green) else (set match1=Red)
echo.
echo Download Queue Loaded:
echo.
echo %CurrentQueue:~0,-4%
echo.
echo.
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 Queue Options appear [%redtext%]Red [def]when they differ from
support\sfk echo -spat \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 \x20 your saved settings and [%greentext%]Green [def]if they match
echo.
if /i "%ROOTSAVE%" EQU "ON" support\sfk echo -spat \x20 \x20 [%matchrs%]Root Save: Save IOSs\MIOSs to Root instead of WAD Folder (Enabled)
if /i "%ROOTSAVE%" EQU "OFF" support\sfk echo -spat \x20 \x20 [%matchrs%]Root Save: Save IOSs\MIOSs to Root instead of WAD Folder (Disabled)
echo * Useful for Wii Apps that require IOSs\MIOSs saved to Root
echo.
if /i "%OPTION1%" EQU "OFF" support\sfk echo -spat \x20 \x20 [%match1%]Do not Keep 00000001 Folder for IOSs\MIOSs\SMs etc
if /i "%OPTION1%" EQU "OFF" echo * Folder sometimes required for offline usage of a few Wii Apps
if /i "%OPTION1%" EQU "ON" support\sfk echo -spat \x20 \x20 [%match1%]Keep 00000001 Folder for IOSs\MIOSs\SMs etc
if /i "%OPTION1%" EQU "ON" echo * Useful for offline usage of Wii Apps like Dop-Mii
if /i "%OPTION1%" EQU "NUS" support\sfk echo -spat \x20 \x20 [%match1%]Keep NUS\00000001000000##v# Folder for IOSs\MIOSs\SMs etc
if /i "%OPTION1%" EQU "NUS" echo * Useful for offline usage of Wii Apps like d2x\Hermes cIOS Installers
if /i "%OPTION1%" EQU "ALL" support\sfk echo -spat \x20 \x20 [%match1%]Keep NUS\00000001000000##v# and 00000001 Folder for IOSs\MIOSs\SMs etc
if /i "%OPTION1%" EQU "ALL" echo * Useful for offline usage of a handful of Wii Apps
echo.
echo.
:skiploadDLcue
if /i "%DLTOTAL%" EQU "0" echo No files were marked for download
if /i "%DLTOTAL%" EQU "0" goto:skipall
if /i "%USBGUIDE%" NEQ "Y" goto:skip
if /i "%USBCONFIG%" EQU "USB" (echo The following %DLTOTAL% files will be downloaded to "%DRIVE%" or "%DRIVEU%":) else (echo The following %DLTOTAL% files will be downloaded to "%DRIVE%":)
goto:skipall
:skip
if /i "%MENU1%" NEQ "SU" goto:skipSU
if /i "%DLTOTAL%" NEQ "2" goto:skipStubMsg
if /i "%STUBS%" NEQ "*" goto:skipStubMsg
echo According to your SysCheck log your mods are up to date.
echo However, you have some unnecessary IOSs that can optionally be removed or stubbed
echo.
goto:skipSU
:skipStubMsg
echo According to your SysCheck log the following files are required
echo in order to update your softmod.
echo.
:skipSU
echo The following %DLTOTAL% files will be downloaded to "%DRIVE%":
:skipall
echo.
SET DLNUM=0
::Loop through the the following once for EACH line in *.txt
if not exist temp\DLnames.txt goto:nextstep
for /F "tokens=*" %%A in (temp\DLnames.txt) do call :processDLlist %%A
goto:nextstep
:processDLlist
SET /a DLNUM=%DLNUM%+1
echo %DLNUM%) %*
goto:EOF
:nextstep
echo.
echo Begin Downloading now?
echo.
if /i "%DLTOTAL%" EQU "0" goto:zerodownloads
if /i "%MENU1%" EQU "W" goto:WorUSB
if /i "%MENU1%" EQU "U" goto:WorUSB
if /i "%MENU1%" EQU "H" goto:WorUSB
if /i "%MENU1%" EQU "SU" goto:WorUSB
if /i "%MENU1%" EQU "RC" goto:WorUSB
echo Y = Yes, Begin Downloading
:WorUSB
if /i "%MENU1%" EQU "W" echo Y = Yes, Generate Guide and Begin Downloading
if /i "%MENU1%" EQU "W" echo G = Generate Guide Only
if /i "%MENU1%" EQU "U" echo Y = Yes, Generate Guide and Begin Downloading
if /i "%MENU1%" EQU "U" echo G = Generate Guide Only
if /i "%MENU1%" EQU "H" echo Y = Yes, Generate Guide and Begin Downloading
if /i "%MENU1%" EQU "H" echo G = Generate Guide Only
if /i "%MENU1%" EQU "SU" echo Y = Yes, Generate Guide and Begin Downloading
if /i "%MENU1%" EQU "SU" echo G = Generate Guide Only
if /i "%MENU1%" EQU "RC" echo Y = Yes, Generate Guide and Begin Downloading
if /i "%MENU1%" EQU "RC" echo G = Generate Guide Only
:zerodownloads
if /i "%MENU1%" EQU "1" echo A = Add or remove files to download queue
if /i "%MENU1%" EQU "2" echo A = Add or remove files to download queue
if /i "%MENU1%" EQU "3" echo A = Add or remove files to download queue
if /i "%MENU1%" EQU "4" echo A = Add or remove files to download queue
if /i "%MENU1%" EQU "A" echo A = Add or remove files to download queue
if /i "%MENU1%" EQU "L" echo A = Add or remove files to download queue
echo.
echo S = Save As New Download Queue
if /i "%MENU1%" EQU "L" echo D = Delete Download Queue and go to Main Menu
::if /i "%DLTOTAL%" NEQ "0" echo C = Clear Download Queue
echo.
echo B = Back
echo M = Main Menu
echo.
set /p SETTINGS= Enter Selection Here:
if /i "%SETTINGS%" EQU "ADV" goto:ADVANCED
::if /i "%DLTOTAL%" EQU "0" goto:skip
::if /i "%SETTINGS%" EQU "C" goto:CLEAR
:::skip
if /i "%SETTINGS%" EQU "B" goto:%BACKB4QUEUE%
if /i "%SETTINGS%" EQU "M" goto:MENU
if /i "%SETTINGS%" EQU "S" (set beforesave=DOWNLOADQUEUE) & (goto:SaveDownloadQueue)
if /i "%MENU1%" NEQ "L" goto:notbatch
if /i "%SETTINGS%" EQU "D" del "temp\DownloadQueues\%CurrentQueue%">nul
if /i "%SETTINGS%" EQU "D" goto:MENU
if /i "%SETTINGS%" EQU "A" (set "nextpage=DLPAGE1.hta") & (goto:DLPAGES)
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:notbatch
if /i "%MENU1%" NEQ "1" goto:notbatch
if /i "%SETTINGS%" EQU "A" goto:%BACKB4QUEUE%
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:notbatch
if /i "%MENU1%" NEQ "2" goto:notoldbatch
if /i "%SETTINGS%" EQU "A" goto:%BACKB4QUEUE%
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:notoldbatch
if /i "%MENU1%" NEQ "3" goto:NotBatchApp
if /i "%SETTINGS%" EQU "A" goto:%BACKB4QUEUE%
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:NotBatchApp
if /i "%MENU1%" NEQ "4" goto:NotLIST4
if /i "%SETTINGS%" EQU "A" goto:%BACKB4QUEUE%
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:NotLIST4
if /i "%MENU1%" NEQ "A" goto:NotAdv
if /i "%SETTINGS%" EQU "A" goto:%BACKB4QUEUE%
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:creditcheck
:NotAdv
if /i "%DLTOTAL%" EQU "0" goto:badkey
if /i "%SETTINGS%" EQU "Y" goto:COPY
if /i "%MENU1%" EQU "W" goto:generateguideonly
if /i "%MENU1%" EQU "U" goto:generateguideonly
if /i "%MENU1%" EQU "H" goto:generateguideonly
if /i "%MENU1%" EQU "SU" goto:generateguideonly
if /i "%MENU1%" EQU "RC" goto:generateguideonly
goto:badkey
:generateguideonly
if /i "%SETTINGS%" EQU "G" goto:guide
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:DOWNLOADQUEUE
::--------------------------SAVE DOWNLOAD QUEUE-----------------------
:SaveDownloadQueue
set DLQUEUENAME=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo Please enter a name for your Download Queue
echo.
echo.
echo Note: Cannot contain \ / : * ? " < > | & %%
echo.
echo.
echo Note: Download Queues are saved to "temp\DownloadQueues"
echo and can be shared amongst different ModMii users
echo.
echo.
echo.
echo B = Back
echo.
echo M = Main Menu
echo.
echo.
echo.
set /p DLQUEUENAME= Enter Selection Here:
if "%DLQUEUENAME%"=="" goto:badkey
if /i "%DLQUEUENAME%" EQU "M" goto:MENU
if /i "%DLQUEUENAME%" EQU "B" goto:%beforesave%
echo "set DLQUEUENAME=%DLQUEUENAME%">temp\temp.bat
support\sfk filter -quiet -spat temp\temp.bat -rep _\x5c__ -rep _\x2f__ -rep _\x3a__ -rep _\x2a__ -rep _\x3f__ -rep _\x3c__ -rep _\x3e__ -rep _\x7c__ -rep _\x22__ -write -yes
call temp\temp.bat
del temp\temp.bat>nul
if not exist "temp\DownloadQueues\%DLQUEUENAME%.bat" goto:SaveDownloadQueue2
::queue with the same name already exists
echo.
echo A Download Queue with this name already exists, overwrite it? (Y/N)
echo.
set /p overwritequeue= Enter Selection Here:
if /i "%overwritequeue%" EQU "Y" (goto:SaveDownloadQueue2) else (goto:SaveDownloadQueue)
:badkey
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:SaveDownloadQueue
:SaveDownloadQueue2
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo Saving Download Queue
echo.
if not exist temp\DownloadQueues mkdir temp\DownloadQueues
set AdvNumberCOPY=%AdvNumber%
if /i "%SETTINGS%" EQU "S" set AdvNumberCOPY=0
if /i "%FINISH%" EQU "S" set AdvNumberCOPY=0
::set GetAdvNumberOnly=Y
::if exist "temp\DownloadQueues\%DLQUEUENAME%.bat" call "temp\DownloadQueues\%DLQUEUENAME%.bat"
::set GetAdvNumberOnly=
set /a AdvNumberCOPY=%AdvNumberCOPY%+%AdvNumber%
set AdvNumberCOPY2=%AdvNumber%
if /i "%SETTINGS%" EQU "S" set AdvNumberCOPY2=0
if /i "%FINISH%" EQU "S" set AdvNumberCOPY2=0
set AdvNumberCOPY3=%AdvNumberCOPY2%
::set AdvNumber=0
::if exist "temp\DownloadQueues\%DLQUEUENAME%.bat" support\sfk filter -quiet "temp\DownloadQueues\%DLQUEUENAME%.bat" -ls!":endofqueue" -write -yes
::if exist "temp\DownloadQueues\%DLQUEUENAME%.bat" support\sfk filter -quiet -spat "temp\DownloadQueues\%DLQUEUENAME%.bat" -rep _\x22_quote_ -write -yes
echo.
echo ::ModMii v%currentversion% - Download Queue - %DATE% - %TIME% > "temp\DownloadQueues\%DLQUEUENAME%.bat"
echo "set AdvNumber=%AdvNumbercopy%">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
echo "if /i quote@GetAdvNumberOnly@quote EQU quoteYquote goto:endofqueue">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
echo ::Queue Settings>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
echo Set ROOTSAVE=%ROOTSAVE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
echo Set Option1=%Option1%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
echo ::Queue>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%EULAU%" EQU "*" echo SET EULAU=%EULAU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%EULAE%" EQU "*" echo SET EULAE=%EULAE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%EULAJ%" EQU "*" echo SET EULAJ=%EULAJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%EULAK%" EQU "*" echo SET EULAK=%EULAK%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RSU%" EQU "*" echo SET RSU=%RSU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RSE%" EQU "*" echo SET RSE=%RSE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RSJ%" EQU "*" echo SET RSJ=%RSJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RSK%" EQU "*" echo SET RSK=%RSK%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%BC%" EQU "*" echo SET BC=%BC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM3.2U%" EQU "*" echo SET SM3.2U=%SM3.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1U%" EQU "*" echo SET SM4.1U=%SM4.1U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2U%" EQU "*" echo SET SM4.2U=%SM4.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3U%" EQU "*" echo SET SM4.3U=%SM4.3U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM3.2E%" EQU "*" echo SET SM3.2E=%SM3.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1E%" EQU "*" echo SET SM4.1E=%SM4.1E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2E%" EQU "*" echo SET SM4.2E=%SM4.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3E%" EQU "*" echo SET SM4.3E=%SM4.3E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM3.2J%" EQU "*" echo SET SM3.2J=%SM3.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1J%" EQU "*" echo SET SM4.1J=%SM4.1J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2J%" EQU "*" echo SET SM4.2J=%SM4.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3J%" EQU "*" echo SET SM4.3J=%SM4.3J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1K%" EQU "*" echo SET SM4.1K=%SM4.1K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2K%" EQU "*" echo SET SM4.2K=%SM4.2K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3K%" EQU "*" echo SET SM4.3K=%SM4.3K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3U-DWR%" EQU "*" echo SET SM4.3U-DWR=%SM4.3U-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2U-DWR%" EQU "*" echo SET SM4.2U-DWR=%SM4.2U-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1U-DWR%" EQU "*" echo SET SM4.1U-DWR=%SM4.1U-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3E-DWR%" EQU "*" echo SET SM4.3E-DWR=%SM4.3E-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2E-DWR%" EQU "*" echo SET SM4.2E-DWR=%SM4.2E-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1E-DWR%" EQU "*" echo SET SM4.1E-DWR=%SM4.1E-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3J-DWR%" EQU "*" echo SET SM4.3J-DWR=%SM4.3J-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2J-DWR%" EQU "*" echo SET SM4.2J-DWR=%SM4.2J-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1J-DWR%" EQU "*" echo SET SM4.1J-DWR=%SM4.1J-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3K-DWR%" EQU "*" echo SET SM4.3K-DWR=%SM4.3K-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2K-DWR%" EQU "*" echo SET SM4.2K-DWR=%SM4.2K-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1K-DWR%" EQU "*" echo SET SM4.1K-DWR=%SM4.1K-DWR%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3U-DWG%" EQU "*" echo SET SM4.3U-DWG=%SM4.3U-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2U-DWG%" EQU "*" echo SET SM4.2U-DWG=%SM4.2U-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1U-DWG%" EQU "*" echo SET SM4.1U-DWG=%SM4.1U-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3E-DWG%" EQU "*" echo SET SM4.3E-DWG=%SM4.3E-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2E-DWG%" EQU "*" echo SET SM4.2E-DWG=%SM4.2E-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1E-DWG%" EQU "*" echo SET SM4.1E-DWG=%SM4.1E-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3J-DWG%" EQU "*" echo SET SM4.3J-DWG=%SM4.3J-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2J-DWG%" EQU "*" echo SET SM4.2J-DWG=%SM4.2J-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1J-DWG%" EQU "*" echo SET SM4.1J-DWG=%SM4.1J-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3K-DWG%" EQU "*" echo SET SM4.3K-DWG=%SM4.3K-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2K-DWG%" EQU "*" echo SET SM4.2K-DWG=%SM4.2K-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1K-DWG%" EQU "*" echo SET SM4.1K-DWG=%SM4.1K-DWG%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3U-DWB%" EQU "*" echo SET SM4.3U-DWB=%SM4.3U-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2U-DWB%" EQU "*" echo SET SM4.2U-DWB=%SM4.2U-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1U-DWB%" EQU "*" echo SET SM4.1U-DWB=%SM4.1U-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3E-DWB%" EQU "*" echo SET SM4.3E-DWB=%SM4.3E-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2E-DWB%" EQU "*" echo SET SM4.2E-DWB=%SM4.2E-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1E-DWB%" EQU "*" echo SET SM4.1E-DWB=%SM4.1E-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3J-DWB%" EQU "*" echo SET SM4.3J-DWB=%SM4.3J-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2J-DWB%" EQU "*" echo SET SM4.2J-DWB=%SM4.2J-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1J-DWB%" EQU "*" echo SET SM4.1J-DWB=%SM4.1J-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3K-DWB%" EQU "*" echo SET SM4.3K-DWB=%SM4.3K-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2K-DWB%" EQU "*" echo SET SM4.2K-DWB=%SM4.2K-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1K-DWB%" EQU "*" echo SET SM4.1K-DWB=%SM4.1K-DWB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3U-DWO%" EQU "*" echo SET SM4.3U-DWO=%SM4.3U-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2U-DWO%" EQU "*" echo SET SM4.2U-DWO=%SM4.2U-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1U-DWO%" EQU "*" echo SET SM4.1U-DWO=%SM4.1U-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3E-DWO%" EQU "*" echo SET SM4.3E-DWO=%SM4.3E-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2E-DWO%" EQU "*" echo SET SM4.2E-DWO=%SM4.2E-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1E-DWO%" EQU "*" echo SET SM4.1E-DWO=%SM4.1E-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3J-DWO%" EQU "*" echo SET SM4.3J-DWO=%SM4.3J-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2J-DWO%" EQU "*" echo SET SM4.2J-DWO=%SM4.2J-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1J-DWO%" EQU "*" echo SET SM4.1J-DWO=%SM4.1J-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.3K-DWO%" EQU "*" echo SET SM4.3K-DWO=%SM4.3K-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.2K-DWO%" EQU "*" echo SET SM4.2K-DWO=%SM4.2K-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SM4.1K-DWO%" EQU "*" echo SET SM4.1K-DWO=%SM4.1K-DWO%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS30%" EQU "*" echo SET IOS30=%IOS30%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS30P60%" EQU "*" echo SET IOS30P60=%IOS30P60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS20P60%" EQU "*" echo SET IOS20P60=%IOS20P60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS30P%" EQU "*" echo SET IOS30P=%IOS30P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS11P60%" EQU "*" echo SET IOS11P60=%IOS11P60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS20P60%" EQU "*" echo SET IOS20P60=%IOS20P60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS50P%" EQU "*" echo SET IOS50P=%IOS50P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS52P%" EQU "*" echo SET IOS52P=%IOS52P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS60%" EQU "*" echo SET IOS60=%IOS60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS60P%" EQU "*" echo SET IOS60P=%IOS60P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS70%" EQU "*" echo SET IOS70=%IOS70%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS70P%" EQU "*" echo SET IOS70P=%IOS70P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS70K%" EQU "*" echo SET IOS70K=%IOS70K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS80%" EQU "*" echo SET IOS80=%IOS80%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS80P%" EQU "*" echo SET IOS80P=%IOS80P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS80K%" EQU "*" echo SET IOS80K=%IOS80K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS236%" EQU "*" echo SET IOS236=%IOS236%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%BB1%" EQU "*" echo SET BB1=%BB1%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%BB2%" EQU "*" echo SET BB2=%BB2%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%HM%" EQU "*" echo SET HM=%HM%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS236Installer%" EQU "*" echo SET IOS236Installer=%IOS236Installer%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SIP%" EQU "*" echo SET SIP=%SIP%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DumpMii%" EQU "*" echo SET DumpMii=%DumpMii%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%syscheck%" EQU "*" echo SET syscheck=%syscheck%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%AccioHacks%" EQU "*" echo SET AccioHacks=%AccioHacks%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%usbgx%" EQU "*" echo SET usbgx=%usbgx%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%nintendont%" EQU "*" echo SET nintendont=%nintendont%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%MyM%" EQU "*" echo SET MyM=%MyM%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%locked%" EQU "*" echo SET locked=%locked%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%HBB%" EQU "*" echo SET HBB=%HBB%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WII64%" EQU "*" echo SET WII64=%WII64%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Not64%" EQU "*" echo SET Not64=%Not64%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Dolphin%" EQU "*" echo SET Dolphin=%Dolphin%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%FILEZILLA%" EQU "*" echo SET FILEZILLA=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%hxd%" EQU "*" echo SET hxd=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Diskitude%" EQU "*" echo SET Diskitude=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Nkit%" EQU "*" echo SET Nkit=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RC24%" EQU "*" echo SET RC24=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SDTEST%" EQU "*" echo SET SDTEST=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%HashMF%" EQU "*" echo SET HashMF=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%ThemeMiiMod%" EQU "*" echo SET ThemeMiiMod=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%GCBM%" EQU "*" echo SET GCBM=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%ftpii%" EQU "*" echo SET ftpii=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%CheatZip%" EQU "*" echo SET CheatZip=*>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%OSC%" EQU "*" echo SET OSC=%OSC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Casper%" EQU "*" echo SET Casper=%Casper%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Wilbrand%" EQU "*" echo SET Wilbrand=%Wilbrand%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Wilbrand%" EQU "*" echo SET REGION=%REGION%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Wilbrand%" EQU "*" echo SET macaddress=%macaddress% >> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WIISX%" EQU "*" echo SET WIISX=%WIISX%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%bootmiisd%" EQU "*" echo SET bootmiisd=%bootmiisd%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%pwns%" EQU "*" echo SET pwns=%pwns%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Twi%" EQU "*" echo SET Twi=%Twi%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Twi2%" EQU "*" echo SET Twi2=%Twi2%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%YUGI%" EQU "*" echo SET YUGI=%YUGI%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Bathaxx%" EQU "*" echo SET Bathaxx=%Bathaxx%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%ROTJ%" EQU "*" echo SET ROTJ=%ROTJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%TOS%" EQU "*" echo SET TOS=%TOS%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%smash%" EQU "*" echo SET smash=%smash%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%mmm%" EQU "*" echo SET mmm=%mmm%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%CleanRip%" EQU "*" echo SET CleanRip=%CleanRip%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%ARC%" EQU "*" echo SET ARC=%ARC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%KK%" EQU "*" echo SET KK=%KK%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%yawm%" EQU "*" echo SET yawm=%yawm%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%neogamma%" EQU "*" echo SET neogamma=%neogamma%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%usbfolder%" EQU "*" echo SET usbfolder=%usbfolder%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WiiMC%" EQU "*" echo SET WiiMC=%WiiMC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%fceugx%" EQU "*" echo SET fceugx=%fceugx%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%snes9xgx%" EQU "*" echo SET snes9xgx=%snes9xgx%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%vbagx%" EQU "*" echo SET vbagx=%vbagx%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SGM%" EQU "*" echo SET SGM=%SGM%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%PL%" EQU "*" echo SET PL=%PL%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WIIX%" EQU "*" echo SET WIIX=%WIIX%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%wbm%" EQU "*" echo SET wbm=%wbm%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%CheatCodes%" EQU "*" echo SET CheatCodes=%CheatCodes%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%f32%" EQU "*" echo SET f32=%f32%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%CM%" EQU "*" echo SET CM=%CM%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SMW%" EQU "*" echo SET SMW=%SMW%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WiiGSC%" EQU "*" echo SET WiiGSC=%WiiGSC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%ohnes%" EQU "*" echo SET ohnes=%ohnes%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%FLOW%" EQU "*" echo SET FLOW=%FLOW%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%USBX%" EQU "*" echo SET USBX=%USBX%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%FLOWF%" EQU "*" echo SET FLOWF=%FLOWF%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%S2U%" EQU "*" echo SET S2U=%S2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%nSwitch%" EQU "*" echo SET nSwitch=%nSwitch%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%PLC%" EQU "*" echo SET PLC=%PLC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%OHBC%" EQU "*" echo SET OHBC=%OHBC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%Pri%" EQU "*" echo SET Pri=%Pri%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%HAX%" EQU "*" echo SET HAX=%HAX%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%MII%" EQU "*" echo SET MII=%MII%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%P0%" EQU "*" echo SET P0=%P0%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%P%" EQU "*" echo SET P=%P%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
::if /i "%PK%" EQU "*" echo SET PK=%PK%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%S%" EQU "*" echo SET S=%S%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%SK%" EQU "*" echo SET SK=%SK%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IU%" EQU "*" echo SET IU=%IU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IE%" EQU "*" echo SET IE=%IE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IJ%" EQU "*" echo SET IJ=%IJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WU%" EQU "*" echo SET WU=%WU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WE%" EQU "*" echo SET WE=%WE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WJ%" EQU "*" echo SET WJ=%WJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%NU%" EQU "*" echo SET NU=%NU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%NE%" EQU "*" echo SET NE=%NE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%NJ%" EQU "*" echo SET NJ=%NJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WSU%" EQU "*" echo SET WSU=%WSU%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WSE%" EQU "*" echo SET WSE=%WSE%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%WSJ%" EQU "*" echo SET WSJ=%WSJ%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%M10%" EQU "*" echo SET M10=%M10%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS9%" EQU "*" echo SET IOS9=%IOS9%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS12%" EQU "*" echo SET IOS12=%IOS12%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS13%" EQU "*" echo SET IOS13=%IOS13%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS14%" EQU "*" echo SET IOS14=%IOS14%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS15%" EQU "*" echo SET IOS15=%IOS15%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS17%" EQU "*" echo SET IOS17=%IOS17%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS21%" EQU "*" echo SET IOS21=%IOS21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS22%" EQU "*" echo SET IOS22=%IOS22%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS28%" EQU "*" echo SET IOS28=%IOS28%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS31%" EQU "*" echo SET IOS31=%IOS31%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS33%" EQU "*" echo SET IOS33=%IOS33%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS34%" EQU "*" echo SET IOS34=%IOS34%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS35%" EQU "*" echo SET IOS35=%IOS35%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS36%" EQU "*" echo SET IOS36=%IOS36%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS36v3608%" EQU "*" echo SET IOS36v3608=%IOS36v3608%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS37%" EQU "*" echo SET IOS37=%IOS37%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS38%" EQU "*" echo SET IOS38=%IOS38%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS41%" EQU "*" echo SET IOS41=%IOS41%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS48v4124%" EQU "*" echo SET IOS48v4124=%IOS48v4124%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS43%" EQU "*" echo SET IOS43=%IOS43%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS45%" EQU "*" echo SET IOS45=%IOS45%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS46%" EQU "*" echo SET IOS46=%IOS46%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS53%" EQU "*" echo SET IOS53=%IOS53%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS55%" EQU "*" echo SET IOS55=%IOS55%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS56%" EQU "*" echo SET IOS56=%IOS56%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS57%" EQU "*" echo SET IOS57=%IOS57%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS58%" EQU "*" echo SET IOS58=%IOS58%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS59%" EQU "*" echo SET IOS59=%IOS59%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS61%" EQU "*" echo SET IOS61=%IOS61%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%IOS62%" EQU "*" echo SET IOS62=%IOS62%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A0e%" EQU "*" echo SET A0e=%A0e%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A01%" EQU "*" echo SET A01=%A01%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A0e_70%" EQU "*" echo SET A0e_70=%A0e_70%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A01_60%" EQU "*" echo SET A01_60=%A01_60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A0e_60%" EQU "*" echo SET A0e_60=%A0e_60%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A01_70%" EQU "*" echo SET A01_70=%A01_70%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A0c%" EQU "*" echo SET A0c=%A0c%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A40%" EQU "*" echo SET A40=%A40%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A42%" EQU "*" echo SET A42=%A42%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A45%" EQU "*" echo SET A45=%A45%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A70%" EQU "*" echo SET A70=%A70%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A72%" EQU "*" echo SET A72=%A72%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A75%" EQU "*" echo SET A75=%A75%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A78%" EQU "*" echo SET A78=%A78%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A7b%" EQU "*" echo SET A7b=%A7b%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A7e%" EQU "*" echo SET A7e=%A7e%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A84%" EQU "*" echo SET A84=%A84%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A87%" EQU "*" echo SET A87=%A87%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A8a%" EQU "*" echo SET A8a=%A8a%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A81%" EQU "*" echo SET A81=%A81%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A8d%" EQU "*" echo SET A8d=%A8d%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A9d%" EQU "*" echo SET A9d=%A9d%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A94%" EQU "*" echo SET A94=%A94%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A97%" EQU "*" echo SET A97=%A97%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%A9a%" EQU "*" echo SET A9a=%A9a%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS202[37]-v5%" EQU "*" echo SET cIOS202[37]-v5=%cIOS202[37]-v5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS202[38]-v5%" EQU "*" echo SET cIOS202[38]-v5=%cIOS202[38]-v5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS222[38]-v4%" EQU "*" echo SET cIOS222[38]-v4=%cIOS222[38]-v4%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS223[37-38]-v4%" EQU "*" echo SET cIOS223[37-38]-v4=%cIOS223[37-38]-v4%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cBC%" EQU "*" echo SET cBC=%cBC%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DML%" EQU "*" echo SET DML=%DML%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
::if /i "%DML%" EQU "*" echo "SET CurrentDMLRev=%CurrentDMLRev%">> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS222[38]-v5%" EQU "*" echo SET cIOS222[38]-v5=%cIOS222[38]-v5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS223[37]-v5%" EQU "*" echo SET cIOS223[37]-v5=%cIOS223[37]-v5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS224[57]-v5%" EQU "*" echo SET cIOS224[57]-v5=%cIOS224[57]-v5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS202[60]-v5.1R%" EQU "*" echo SET cIOS202[60]-v5.1R=%cIOS202[60]-v5.1R%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS222[38]-v5.1R%" EQU "*" echo SET cIOS222[38]-v5.1R=%cIOS222[38]-v5.1R%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS223[37]-v5.1R%" EQU "*" echo SET cIOS223[37]-v5.1R=%cIOS223[37]-v5.1R%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS224[57]-v5.1R%" EQU "*" echo SET cIOS224[57]-v5.1R=%cIOS224[57]-v5.1R%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS248[38]-d2x-v10-beta52%" EQU "*" echo SET cIOS248[38]-d2x-v10-beta52=%cIOS248[38]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249-v14%" EQU "*" echo SET cIOS249-v14=%cIOS249-v14%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249-v17b%" EQU "*" echo SET cIOS249-v17b=%cIOS249-v17b%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[37]-v19%" EQU "*" echo SET cIOS249[37]-v19=%cIOS249[37]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[38]-v19%" EQU "*" echo SET cIOS249[38]-v19=%cIOS249[38]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[57]-v19%" EQU "*" echo SET cIOS249[57]-v19=%cIOS249[57]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250-v14%" EQU "*" echo SET cIOS250-v14=%cIOS250-v14%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250-v17b%" EQU "*" echo SET cIOS250-v17b=%cIOS250-v17b%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[37]-v19%" EQU "*" echo SET cIOS250[37]-v19=%cIOS250[37]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[38]-v19%" EQU "*" echo SET cIOS250[38]-v19=%cIOS250[38]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[57]-v19%" EQU "*" echo SET cIOS250[57]-v19=%cIOS250[57]-v19%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[38]-v20%" EQU "*" echo SET cIOS249[38]-v20=%cIOS249[38]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[38]-v20%" EQU "*" echo SET cIOS250[38]-v20=%cIOS250[38]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[56]-v20%" EQU "*" echo SET cIOS249[56]-v20=%cIOS249[56]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[56]-v20%" EQU "*" echo SET cIOS250[56]-v20=%cIOS250[56]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[57]-v20%" EQU "*" echo SET cIOS249[57]-v20=%cIOS249[57]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[57]-v20%" EQU "*" echo SET cIOS250[57]-v20=%cIOS250[57]-v20%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[37]-v21%" EQU "*" echo SET cIOS249[37]-v21=%cIOS249[37]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[37]-v21%" EQU "*" echo SET cIOS250[37]-v21=%cIOS250[37]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[38]-v21%" EQU "*" echo SET cIOS249[38]-v21=%cIOS249[38]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[38]-v21%" EQU "*" echo SET cIOS250[38]-v21=%cIOS250[38]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[53]-v21%" EQU "*" echo SET cIOS249[53]-v21=%cIOS249[53]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[53]-v21%" EQU "*" echo SET cIOS250[53]-v21=%cIOS250[53]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[55]-v21%" EQU "*" echo SET cIOS249[55]-v21=%cIOS249[55]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[55]-v21%" EQU "*" echo SET cIOS250[55]-v21=%cIOS250[55]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[56]-v21%" EQU "*" echo SET cIOS249[56]-v21=%cIOS249[56]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[56]-v21%" EQU "*" echo SET cIOS250[56]-v21=%cIOS250[56]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[57]-v21%" EQU "*" echo SET cIOS249[57]-v21=%cIOS249[57]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[57]-v21%" EQU "*" echo SET cIOS250[57]-v21=%cIOS250[57]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[58]-v21%" EQU "*" echo SET cIOS249[58]-v21=%cIOS249[58]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[58]-v21%" EQU "*" echo SET cIOS250[58]-v21=%cIOS250[58]-v21%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[37]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[37]-d2x-v10-beta52=%cIOS249[37]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[38]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[38]-d2x-v10-beta52=%cIOS249[38]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[56]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[56]-d2x-v10-beta52=%cIOS249[56]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[53]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[53]-d2x-v10-beta52=%cIOS249[53]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[55]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[55]-d2x-v10-beta52=%cIOS249[55]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[57]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[57]-d2x-v10-beta52=%cIOS249[57]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[58]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[58]-d2x-v10-beta52=%cIOS249[58]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[60]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[60]-d2x-v10-beta52=%cIOS249[60]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[70]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[70]-d2x-v10-beta52=%cIOS249[70]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS249[80]-d2x-v10-beta52%" EQU "*" echo SET cIOS249[80]-d2x-v10-beta52=%cIOS249[80]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[37]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[37]-d2x-v10-beta52=%cIOS250[37]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[38]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[38]-d2x-v10-beta52=%cIOS250[38]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[53]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[53]-d2x-v10-beta52=%cIOS250[53]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[55]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[55]-d2x-v10-beta52=%cIOS250[55]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[56]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[56]-d2x-v10-beta52=%cIOS250[56]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[57]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[57]-d2x-v10-beta52=%cIOS250[57]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[58]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[58]-d2x-v10-beta52=%cIOS250[58]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[60]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[60]-d2x-v10-beta52=%cIOS250[60]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[70]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[70]-d2x-v10-beta52=%cIOS250[70]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS250[80]-d2x-v10-beta52%" EQU "*" echo SET cIOS250[80]-d2x-v10-beta52=%cIOS250[80]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%cIOS251[58]-d2x-v10-beta52%" EQU "*" echo SET cIOS251[58]-d2x-v10-beta52=%cIOS251[58]-d2x-v10-beta52%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%" EQU "*" echo SET RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2=%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RVL-cmios-v4_WiiGator_GCBL_v0.2%" EQU "*" echo SET RVL-cmios-v4_WiiGator_GCBL_v0.2=%RVL-cmios-v4_WiiGator_GCBL_v0.2%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%RVL-cmios-v4_Waninkoko_rev5%" EQU "*" echo SET RVL-cmios-v4_Waninkoko_rev5=%RVL-cmios-v4_Waninkoko_rev5%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.3U%" EQU "*" echo SET DarkWii_Red_4.3U=%DarkWii_Red_4.3U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.2U%" EQU "*" echo SET DarkWii_Red_4.2U=%DarkWii_Red_4.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.1U%" EQU "*" echo SET DarkWii_Red_4.1U=%DarkWii_Red_4.1U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.3E%" EQU "*" echo SET DarkWii_Red_4.3E=%DarkWii_Red_4.3E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.2E%" EQU "*" echo SET DarkWii_Red_4.2E=%DarkWii_Red_4.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.1E%" EQU "*" echo SET DarkWii_Red_4.1E=%DarkWii_Red_4.1E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.3J%" EQU "*" echo SET DarkWii_Red_4.3J=%DarkWii_Red_4.3J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.2J%" EQU "*" echo SET DarkWii_Red_4.2J=%DarkWii_Red_4.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.1J%" EQU "*" echo SET DarkWii_Red_4.1J=%DarkWii_Red_4.1J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.3K%" EQU "*" echo SET DarkWii_Red_4.3K=%DarkWii_Red_4.3K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.2K%" EQU "*" echo SET DarkWii_Red_4.2K=%DarkWii_Red_4.2K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Red_4.1K%" EQU "*" echo SET DarkWii_Red_4.1K=%DarkWii_Red_4.1K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.3U%" EQU "*" echo SET DarkWii_Green_4.3U=%DarkWii_Green_4.3U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.2U%" EQU "*" echo SET DarkWii_Green_4.2U=%DarkWii_Green_4.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.1U%" EQU "*" echo SET DarkWii_Green_4.1U=%DarkWii_Green_4.1U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.3E%" EQU "*" echo SET DarkWii_Green_4.3E=%DarkWii_Green_4.3E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.2E%" EQU "*" echo SET DarkWii_Green_4.2E=%DarkWii_Green_4.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.1E%" EQU "*" echo SET DarkWii_Green_4.1E=%DarkWii_Green_4.1E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.3J%" EQU "*" echo SET DarkWii_Green_4.3J=%DarkWii_Green_4.3J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.2J%" EQU "*" echo SET DarkWii_Green_4.2J=%DarkWii_Green_4.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.1J%" EQU "*" echo SET DarkWii_Green_4.1J=%DarkWii_Green_4.1J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.3K%" EQU "*" echo SET DarkWii_Green_4.3K=%DarkWii_Green_4.3K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.2K%" EQU "*" echo SET DarkWii_Green_4.2K=%DarkWii_Green_4.2K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Green_4.1K%" EQU "*" echo SET DarkWii_Green_4.1K=%DarkWii_Green_4.1K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.3U%" EQU "*" echo SET DarkWii_Blue_4.3U=%DarkWii_Blue_4.3U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.2U%" EQU "*" echo SET DarkWii_Blue_4.2U=%DarkWii_Blue_4.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.1U%" EQU "*" echo SET DarkWii_Blue_4.1U=%DarkWii_Blue_4.1U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.3E%" EQU "*" echo SET DarkWii_Blue_4.3E=%DarkWii_Blue_4.3E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.2E%" EQU "*" echo SET DarkWii_Blue_4.2E=%DarkWii_Blue_4.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.1E%" EQU "*" echo SET DarkWii_Blue_4.1E=%DarkWii_Blue_4.1E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.3J%" EQU "*" echo SET DarkWii_Blue_4.3J=%DarkWii_Blue_4.3J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.2J%" EQU "*" echo SET DarkWii_Blue_4.2J=%DarkWii_Blue_4.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.1J%" EQU "*" echo SET DarkWii_Blue_4.1J=%DarkWii_Blue_4.1J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.3K%" EQU "*" echo SET DarkWii_Blue_4.3K=%DarkWii_Blue_4.3K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.2K%" EQU "*" echo SET DarkWii_Blue_4.2K=%DarkWii_Blue_4.2K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%DarkWii_Blue_4.1K%" EQU "*" echo SET DarkWii_Blue_4.1K=%DarkWii_Blue_4.1K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.3U%" EQU "*" echo SET darkwii_orange_4.3U=%darkwii_orange_4.3U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.2U%" EQU "*" echo SET darkwii_orange_4.2U=%darkwii_orange_4.2U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.1U%" EQU "*" echo SET darkwii_orange_4.1U=%darkwii_orange_4.1U%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.3E%" EQU "*" echo SET darkwii_orange_4.3E=%darkwii_orange_4.3E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.2E%" EQU "*" echo SET darkwii_orange_4.2E=%darkwii_orange_4.2E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.1E%" EQU "*" echo SET darkwii_orange_4.1E=%darkwii_orange_4.1E%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.3J%" EQU "*" echo SET darkwii_orange_4.3J=%darkwii_orange_4.3J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.2J%" EQU "*" echo SET darkwii_orange_4.2J=%darkwii_orange_4.2J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.1J%" EQU "*" echo SET darkwii_orange_4.1J=%darkwii_orange_4.1J%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.3K%" EQU "*" echo SET darkwii_orange_4.3K=%darkwii_orange_4.3K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.2K%" EQU "*" echo SET darkwii_orange_4.2K=%darkwii_orange_4.2K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
if /i "%darkwii_orange_4.1K%" EQU "*" echo SET darkwii_orange_4.1K=%darkwii_orange_4.1K%>> "temp\DownloadQueues\%DLQUEUENAME%.bat"
support\sfk filter "temp\DownloadQueues\%DLQUEUENAME%.bat" -unique -write -yes>nul
support\sfk filter "temp\DownloadQueues\%DLQUEUENAME%.bat" -lerep _" "__ -write -yes>nul
if not exist temp\DLGotosADV.txt goto:quickskip
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLGotosADV.txt) do call :process1 %%A
goto:quickskip
:process1
set AdvDLX=%*
set /a AdvNumberCOPY2=%AdvNumberCOPY2%+1
echo "echo %AdvDLX:~0,10%%AdvNumberCOPY2%.batredirectredirecttemp\DLGotosADV.txt">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
goto:EOF
:quickskip
if not exist temp\DLnamesADV.txt goto:quickskip
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLnamesADV.txt) do call :process2 %%A
goto:quickskip
:process2
echo "echo %* redirectredirecttemp\DLnamesADV.txt">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
goto:EOF
:quickskip
if not exist temp\DLGotosADV.txt goto:quickskip
copy /y temp\DLGotosADV.txt temp\DLGotosADV-copy.txt>nul
::Loop through the the following once for EACH line in *.txt
:doitagain
for /F "tokens=*" %%A in (temp\DLGotosADV-copy.txt) do call :process3 %%A
goto:quickskip
:process3
set AdvDLX=%*
set /a AdvNumberCOPY3=%AdvNumberCOPY3%+1
echo "if exist %AdvDLX:~0,10%%AdvNumberCOPY3%.bat del %AdvDLX:~0,10%%AdvNumberCOPY3%.batredirectnul">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
for /F "tokens=*" %%A in (%AdvDLX%) do call :process4 %%A
goto:tinyskip
:process4
echo "echo quote%*quoteredirectredirect%AdvDLX:~0,10%%AdvNumberCOPY3%.bat">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
goto:EOF
:tinyskip
support\sfk filter -quiet temp\DLGotosADV-copy.txt -le!"%AdvDLX:~5%" -write -yes
echo "support\sfk filter -quiet %AdvDLX:~0,10%%AdvNumberCOPY3%.bat -rep _quotequotequote__ -write -yes">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
goto:doitagain
::goto:EOF
:quickskip
echo ":endofqueue">>"temp\DownloadQueues\%DLQUEUENAME%.bat"
support\sfk filter "temp\DownloadQueues\%DLQUEUENAME%.bat" -rep _"redirect"_">"_ -write -yes>nul
support\sfk filter -quiet "temp\DownloadQueues\%DLQUEUENAME%.bat" -rep _"""__ -write -yes
support\sfk filter -quiet -spat "temp\DownloadQueues\%DLQUEUENAME%.bat" -rep _quote_\x22_ -rep _@_%%_ -write -yes
support\sfk filter -quiet "temp\DownloadQueues\%DLQUEUENAME%.bat" -rep _"set AdvNumber="*_"set AdvNumber=%AdvNumberCOPY%"_ -write -yes
::support\sfk filter "temp\DownloadQueues\%DLQUEUENAME%.bat" -spat -rep _@_%%_ -write -yes>nul
if exist "temp\DownloadQueues\%DLQUEUENAME%.bat" echo Download Queue Saved
@ping 127.0.0.1 -n 2 -w 1000> nul
if /i "%MENU1%" EQU "L" set "CurrentQueue=%DLQUEUENAME%.bat"
if /i "%SETTINGS%" EQU "S" goto:DOWNLOADQUEUE
::if /i "%SETTINGS%" EQU "S+" goto:DOWNLOADQUEUE
if /i "%FINISH%" EQU "S" goto:FINISH
::if /i "%FINISH%" EQU "S+" goto:FINISH
::...................................Copy (rename %Drive%\wad if applicable)...............................
:COPY
if not exist "%Drive%"\WAD goto:creditcheck
if /i "%USBCONFIG%" EQU "USB" goto:creditcheck
if /i "%MENU1%" EQU "U" goto:creditcheck
if /i "%MENU1%" EQU "AW" goto:creditcheck
::if /i "%DRIVE%" NEQ "COPY_TO_SD" goto:creditcheck
Set COPY=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
echo "%Drive%\WAD" Folder already exists, what would you like to do?
echo.
echo M = Merge downloads with existing "%Drive%\WAD" Folder.
echo Duplicates will be skipped.
echo.
echo R = Rename the existing WAD Folder to WAD#
echo and begin downloading.
echo.
echo C = Cancel/Main Menu
echo.
echo E = Exit
echo.
set /p COPY= Enter Selection Here:
if /i "%COPY%" EQU "M" goto:creditcheck
if /i "%COPY%" EQU "E" EXIT
if /i "%COPY%" EQU "C" goto:MENU
if /i "%COPY%" NEQ "R" echo You Have Entered an Incorrect Key
if /i "%COPY%" NEQ "R" @ping 127.0.0.1 -n 2 -w 1000> nul
if /i "%COPY%" NEQ "R" goto:COPY
:COPY2
SET /a COUNT=%COUNT%+1
if exist "%Drive%"\WAD%COUNT% goto:COPY2
::move "%Drive%"\WAD "%Drive%"\WAD%COUNT%>nul
rename "%Drive%"\WAD WAD%COUNT%
goto:creditcheck
::.................................................ACTUAL DOWNLOAD CODE...........................................................................
:DOWNLOADSTART
if /i "%loadorgo%" EQU "load" goto:ADVPAGE2
if /i "%loadorgo%" EQU "load4queue" goto:processDLCheck2
if /i "%loadorgo%" EQU "load4switch" goto:processDLCheck2switch
if /i "%loadorgo%" EQU "load4mym2csm" goto:load4mym2csm
set retry=1
set attempt=1
::DBUPDATE.bat check (added in v4.5.0)
::instead of putting out ModMii updates for minor things, the update check can be used to create\download a DBUPDATE.bat file to modify variables like "wadname", "md5", etc.
::if exist "temp\DBUPDATE%currentversion%.bat" call "temp\DBUPDATE%currentversion%.bat"
:DOWNLOADSTART2
::change drive to usb if applicable
set "DRIVE=%REALDRIVE%"
if /i "%USBCONFIG%" NEQ "USB" goto:skipchange
if /i "%WADNAME%" EQU "WiiBackupManager.zip" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "apps\usbloader_cfg\" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "apps\usbloader_gx\" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "apps\wiiflow\" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "Program Files\FAT32_GUI_Formatter\" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "Program Files\NKit\" set "DRIVE=%DRIVEU%"
if /i "%PATH1%" EQU "Program Files\GamecubeISOTool\" set "DRIVE=%DRIVEU%"
:skipchange
if /i "%MENU1%" EQU "S" set DRIVE=temp
if not exist "%Drive%" mkdir "%Drive%"
::if /i "%PATH1%" EQU "FAT32_GUI_Formatter\" set "DRIVE=%DRIVEU%"
::USBGUIDE
if /i "%MENU1%" EQU "U" goto:makewbfsfolder
if /i "%MENU1%" NEQ "W" goto:skip
if /i "%USBGUIDE%" NEQ "Y" goto:skip
:makewbfsfolder
set "wbfsdir=%Drive%\WBFS"
if /i "%USBCONFIG%" EQU "USB" set "wbfsdir=%DriveU%\WBFS"
if not exist "%wbfsdir%" mkdir "%wbfsdir%"
:skip
:actualDL
if /i "%retry%" EQU "1" SET /a CURRENTDL=%CURRENTDL%+1
if /i "%CURRENTDL%" NEQ "1" echo.
if /i "%retry%" EQU "1" support\sfk echo [%redtext%]Downloading %CURRENTDL% of %DLTOTAL%: %name%
if /i "%retry%" NEQ "1" support\sfk echo [%yellowtext%]Re-Downloading %CURRENTDL% of %DLTOTAL%: %name%
echo.
::---------------SKIN MODE-------------
if /i "%SkinMode%" NEQ "Y" goto:notskin
if /i "%CURRENTDL%" EQU "1" set percent=0
::if "%percent%"=="" set percent=0
set percentlast=%percent%
set /a percent=%CURRENTDL%00/%DLTOTAL%
if %percent% LSS %percentlast% set percent=%percentlast%
start support\wizapp PB UPDATE %percent%
:notskin
::---------Exceptions----------------
if /i "%category%" EQU "CHEATS" goto:CHEATS
if /i "%category%" EQU "ManualUpdate" goto:MANUALUPDATE
if /i "%category%" EQU "fullextract" goto:fullextract
if /i "%category%" EQU "auto" goto:fullextract
if /i "%category%" EQU "themes" goto:THEMES
if /i "%category%" EQU "STUBS" goto:STUBS
if /i "%basewad%" NEQ "none" goto:CIOSMAKER
if /i "%name%" EQU "Hackmii Installer" goto:wget
if /i "%category%" EQU "userdefined" goto:CustomDL
if /i "%category%" EQU "FORWARDER" goto:FORWARDER
if /i "%code1%" EQU "SNEEKAPP" goto:DownloadApp
if /i "%code1%" EQU "MYMAPP" goto:DownloadApp
if /i "%code1%" EQU "URL" goto:DownloadURL
::if /i "%category%" EQU "IOS" goto:nusd
::--------------------------NUSD.EXE Downloader---------------
:nusd
if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
::----if exist and fails md5 check, delete and redownload----
:checkifwadexist
if not exist "%Drive%"\WAD\%wadname% goto:nocheckexisting
set md5check=
set md5altcheck=
support\sfk md5 -quiet -verify %md5% "%Drive%"\WAD\%wadname%
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5alt% "%Drive%"\WAD\%wadname%
if errorlevel 1 set md5altcheck=fail
IF "%md5altcheck%"=="" set md5altcheck=pass
if /i "%md5altcheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%"\WAD\%wadname%>nul
if exist temp\%wadname% del temp\%wadname%>nul
if exist temp\titles rd /s /q temp\titles
goto:DOWNLOADSTART2
:pass
if /i "%OPTION1%" EQU "OFF" goto:no01check
if not exist temp\%code1%\%code2%\v%version% goto:nocheckexisting
if /i "%OPTION1%" EQU "ON" goto:option1on
if /i "%OPTION1%" EQU "ALL" (goto:option1on) else (goto:option1noton)
:option1on
if not exist "%Drive%"\%code1%\%code2%\v%version% mkdir "%Drive%"\%code1%\%code2%\v%version%
copy /y temp\%code1%\%code2%\v%version% "%Drive%"\%code1%\%code2%\v%version% >nul
:option1noton
if /i "%OPTION1%" EQU "NUS" goto:option1NUS
if /i "%OPTION1%" EQU "ALL" (goto:option1NUS) else (goto:no01check)
:option1NUS
if not exist "%Drive%"\NUS\%code1%%code2%v%version% mkdir "%Drive%"\NUS\%code1%%code2%v%version%
copy /y temp\%code1%\%code2%\v%version% "%Drive%"\NUS\%code1%%code2%v%version% >nul
:no01check
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
set alreadyexists=yes
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %wadname%: Valid">>temp\ModMii_Log.bat
goto:NEXT
:nocheckexisting
::SAVE TO WAD FOLDER ONLY
if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
if exist temp\%wadname% goto:AlreadyinTemp
echo If you encounter long periods of inactivity, type "C" while holding "Ctrl",
echo then type "N", then "Enter" (i.e. Ctrl+C, N, Enter)
echo.
cd temp
..\support\nusd.exe %code1%%code2% %version%
cd..
if exist temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad move /y temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad temp\%wadname%>nul
if not exist temp\%code1%\%code2%\v%version% mkdir temp\%code1%\%code2%\v%version%
if exist temp\titles\%code1%%code2%\%version% copy /y temp\titles\%code1%%code2%\%version% temp\%code1%\%code2%\v%version%\ >nul
if exist temp\titles rd /s /q temp\titles
:AlreadyinTemp
if /i "%MENU1%" NEQ "S" copy /y temp\%wadname% "%Drive%"\WAD\%wadname% >nul
if /i "%MENU1%" EQU "S" move /y temp\%wadname% "%Drive%"\WAD\%wadname% >nul
if /i "%OPTION1%" EQU "ON" goto:option1on
if /i "%OPTION1%" EQU "ALL" (goto:option1on) else (goto:option1noton)
:option1on
if not exist "%Drive%"\%code1%\%code2%\v%version% mkdir "%Drive%"\%code1%\%code2%\v%version%
copy /y temp\%code1%\%code2%\v%version% "%Drive%"\%code1%\%code2%\v%version% >nul
:option1noton
if /i "%OPTION1%" EQU "NUS" goto:option1NUS
if /i "%OPTION1%" EQU "ALL" (goto:option1NUS) else (goto:option1notNUS)
:option1NUS
if not exist "%Drive%"\NUS\%code1%%code2%v%version% mkdir "%Drive%"\NUS\%code1%%code2%v%version%
copy /y temp\%code1%\%code2%\v%version% "%Drive%"\NUS\%code1%%code2%v%version% >nul
:option1notNUS
:wadverifyretry
::----check after downloading - if md5 check fails, delete and redownload----
if exist "%Drive%"\WAD\%wadname% goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%: [%redtext%]Missing">>temp\ModMii_Log.bat
echo.
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5check=
set md5altcheck=
support\sfk md5 -quiet -verify %md5% "%Drive%"\WAD\%wadname%
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5alt% "%Drive%"\WAD\%wadname%
if errorlevel 1 set md5altcheck=fail
IF "%md5altcheck%"=="" set md5altcheck=pass
if /i "%md5altcheck%" NEQ "fail" goto:pass
:fail
echo.
if /i "%attempt%" NEQ "1" goto:multiplefail
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%"\WAD\%wadname%>nul
if exist temp\%wadname% del temp\%wadname%>nul
if exist temp\titles rd /s /q temp\titles
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
set multiplefail=Y
echo.
if /i "%KeepInvalidOverride%" NEQ "Y" (if exist "%Drive%\WAD\%wadname%" del "%Drive%\WAD\%wadname%">nul) & (if exist "%Drive%\%code1%\%code2%\v%version%" rd /s /q "%Drive%\%code1%\%code2%\v%version%")
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%: [%redtext%]Invalid">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo [%greentext%]Download Successful
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %wadname%: Valid">>temp\ModMii_Log.bat
goto:NEXT
::--------------------------STUBS Downloader---------------
:STUBS
::----if exist and fails md5 check, delete and redownload----
:checkifwadexist
if not exist "temp\%wadname%" goto:nocheckexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "temp\%wadname%"
if not errorlevel 1 (set md5check=pass) & (goto:STUBSTUFF)
set md5check=fail
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
if exist temp\%wadname% del temp\%wadname%>nul
if exist temp\titles rd /s /q temp\titles
goto:DOWNLOADSTART2
:nocheckexisting
::SAVE TO temp FOLDER ONLY (for now)
echo If you encounter long periods of inactivity, type "C" while holding "Ctrl",
echo then type "N", then "Enter" (i.e. Ctrl+C, N, Enter)
echo.
cd temp
..\support\nusd.exe %code1%%code2% %version%
cd..
if exist temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad move /y temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad temp\%wadname%>nul
::no point in saving STUB contents
::if not exist temp\%code1%\%code2%\v%version% mkdir temp\%code1%\%code2%\v%version%
::if exist temp\titles\%code1%%code2%\%version% copy /y temp\titles\%code1%%code2%\%version% temp\%code1%\%code2%\v%version%\ >nul
if exist temp\titles rd /s /q temp\titles
::----check after downloading - if md5 check fails, delete and redownload----
if exist "temp\%wadname%" goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
echo.
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "temp\%wadname%"
if not errorlevel 1 (set md5check=pass) & (goto:STUBSTUFF)
set md5check=fail
:fail
echo.
if /i "%attempt%" NEQ "1" goto:multiplefail
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
if exist temp\%wadname% del temp\%wadname%>nul
if exist temp\titles rd /s /q temp\titles
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
set multiplefail=Y
echo.
if /i "%KeepInvalidOverride%" NEQ "Y" (if exist "temp\%wadname%" del "temp\%wadname%">nul) & (if exist "%Drive%\%code1%\%code2%\v%version%" rd /s /q "%Drive%\%code1%\%code2%\v%version%")
echo "support\sfk echo %name%: [%redtext%]Invalid">>temp\ModMii_Log.bat
goto:NEXT
:STUBSTUFF
::COPY TO WAD\STUBS FOLDER and change slot and version number (v404 not found, lol)
if not exist "%Drive%\WAD\STUBS" mkdir "%Drive%\WAD\STUBS"
if /i "%DRIVE:~1,1%" EQU ":" (set "DRIVEadj=%DRIVE%") else (set "DRIVEadj=..\%DRIVE%")
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\stubs.txt) do call :processstubs %%A
goto:quickskip
:processstubs
set stubnum=%*
set wadname2=STUB-IOS%stubnum%-64-v404.wad
echo Creating %wadname2%...
::copy /y "temp\%wadname%" "%Drive%\WAD\STUBS\%wadname2%">nul
cd support
patchios "..\temp\%wadname%" -slot %stubnum% -v 404 -O "%DRIVEadj%\WAD\STUBS\%wadname2%">nul
cd..
goto:EOF
:quickskip
echo.
support\sfk echo [%greentext%]Download Successful
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:NEXT
::-------------------------------cIOS Maker-----------------------------------------------------
:CIOSMAKER
if "%wadname:~-4%" EQU ".wad" set wadname=%wadname:~0,-4%
::no md5 check for dml
if /i "%wadname:~0,3%" EQU "DML" goto:nocheckexisting
::----if exist and fails md5 check, delete and redownload----
if exist "%Drive%"\WAD\%wadname%.wad (goto:checkexisting) else (goto:nocheckexisting)
:checkexisting
set md5check=
set md5altcheck=
support\sfk md5 -quiet -verify %md5% "%Drive%"\WAD\%wadname%.wad
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5alt% "%Drive%"\WAD\%wadname%.wad
if errorlevel 1 set md5altcheck=fail
IF "%md5altcheck%"=="" set md5altcheck=pass
if /i "%md5altcheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%"\WAD\%wadname%.wad>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
set alreadyexists=yes
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %wadname%.wad: Valid">>temp\ModMii_Log.bat
goto:NEXT
:nocheckexisting
::missing Support folder error message and skip
if not exist Support support\sfk echo -spat [%yellowtext%] Missing "Support" folder - Required to make cIOSs/cMIOSs
if not exist Support support\sfk echo -spat \x20 \x20 [%yellowtext%] Redownload ModMii from https://modmii.github.io
if not exist Support support\sfk echo -spat \x20 \x20 [%yellowtext%] Skipping download
if not exist Support @ping 127.0.0.1 -n 5 -w 1000> nul
if not exist Support goto:NEXT
if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
:downloadbasewad
::download base wad to "%Drive%"
echo.
echo Downloading Base Wad: %basewad%
echo.
::----Check base IOS-----------
::----if exist and fails md5 check, delete and redownload----
if exist temp\%basewad%.wad (goto:checkexisting) else (goto:nocheckexisting)
:checkexisting
set md5basecheck=
set md5basealtcheck=
support\sfk md5 -quiet -verify %md5base% temp\%basewad%.wad
if errorlevel 1 set md5basecheck=fail
IF "%md5basecheck%"=="" set md5basecheck=pass
if /i "%md5basecheck%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5basealt% temp\%basewad%.wad
if errorlevel 1 set md5basealtcheck=fail
IF "%md5basealtcheck%"=="" set md5basealtcheck=pass
if /i "%md5basealtcheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This base wad already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del temp\%basewad%.wad>nul
goto:downloadbasewad
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base Wad already exists and has been verified, Continuing...
echo.
goto:basealreadythere
:nocheckexisting
echo If you encounter long periods of inactivity, type "C" while holding "Ctrl",
echo then type "N", then "Enter" (i.e. Ctrl+C, N, Enter)
echo.
if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
cd temp
..\support\nusd.exe %code1%%code2% %version%
cd..
if exist temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad move /y temp\titles\%code1%%code2%\%version%\%code1%%code2%-NUS-v%version%.wad temp\%basewad%.wad>nul
if not exist temp\%code1%\%code2%\v%version% mkdir temp\%code1%\%code2%\v%version%
if exist temp\titles\%code1%%code2%\%version% copy /y temp\titles\%code1%%code2%\%version% temp\%code1%\%code2%\v%version%\ >nul
if exist temp\titles rd /s /q temp\titles
::----check after downloading - if md5 check fails, delete and redownload----
if exist temp\%basewad%.wad goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat
echo.
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The basewad is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:downloadbasewad
:checkexisting
set md5basecheck=
set md5basealtcheck=
support\sfk md5 -quiet -verify %md5base% temp\%basewad%.wad
if errorlevel 1 set md5basecheck=fail
IF "%md5basecheck%"=="" set md5basecheck=pass
if /i "%md5basecheck%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5basealt% temp\%basewad%.wad
if errorlevel 1 set md5basealtcheck=fail
IF "%md5basealtcheck%"=="" set md5basealtcheck=pass
if /i "%md5basealtcheck%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del temp\%basewad%.wad>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:downloadbasewad
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.wad: [%redtext%]Invalid">>temp\ModMii_Log.bat
set multiplefail=Y
echo.
goto:NEXT
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base Wad has been Downloaded Successfully, Continuing...
echo.
:basealreadythere
::----------PATCHIOS Category-------------
if /i "%category%" NEQ "patchios" goto:notpatchios
if not "%lastbasemodule%"=="" goto:notpatchios
copy /y temp\%basewad%.wad "%Drive%"\WAD\%wadname%.wad>nul
cd support
if /i "%DRIVE:~1,1%" EQU ":" (set "DRIVEadj=%DRIVE%") else (set "DRIVEadj=..\%DRIVE%")
if "%lastbasemodule%"=="" patchios "%DRIVEadj%"\WAD\%wadname%.wad -FS -ES -NP -VP -slot %ciosslot% -v %ciosversion%
if not "%lastbasemodule%"=="" patchios "%DRIVEadj%"\WAD\%wadname%.wad -FS -ES -NP -VP
cd..
if "%wadname:~-4%" NEQ ".wad" set wadname=%wadname%.wad
goto:wadverifyretry
:notpatchios
::----------------------------------------
::unpack base wad
echo.
echo Unpacking Base Wad: %basewad%
echo.
if exist %basecios% rd /s /q %basecios%
mkdir %basecios%
support\wadmii -in temp\%basewad%.wad -out %basecios%
::-----------DML Stuff------------
:DML-stuff
if /i "%wadname:~0,3%" NEQ "DML" goto:SkipDML-stuff
::download DML currentrev if missing
echo.
echo Downloading %dlname%
echo.
if exist "temp\DML\%dlname%" goto:getfixelf
if not exist "%dlname%" start /min /wait support\wget --no-check-certificate -t 3 "%URL%"
if not exist "%dlname%" (rd /s /q %basewad%) & (rd /s /q %basecios%) & (echo.) & (support\sfk echo [%magentatext%] %dlname% Failed to Download properly, Skipping download.) & (echo "support\sfk echo %wadname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat) & (echo.) & (goto:NEXT)
if not exist "temp\DML" mkdir "temp\DML"
move /y "%dlname%" "temp\DML\%dlname%">nul
:getfixelf
echo.
echo Downloading FixELF
echo.
if exist "temp\DML\FixELF.exe" goto:gotfixelf
if not exist "FixELF.zip" start /min /wait support\wget --no-check-certificate -t 3 "https://tiny.cc/fixelfmirror"
if not exist "FixELF.zip" (rd /s /q %basewad%) & (rd /s /q %basecios%) & (echo.) & (support\sfk echo [%magentatext%] %dlname% Failed to Download properly, Skipping download.) & (echo "support\sfk echo %wadname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat) & (echo.) & (goto:NEXT)
support\7za e -aoa "FixELF.zip" -o"temp\DML" *.* -r>nul
if not exist "temp\DML\FixELF.exe" (Corrupted archive detected and deleted...) & (del "temp\DML\FixELF.zip">nul) & (goto:NEXT)
del FixELF.zip>nul
:gotfixelf
move /y "%basecios%\00000001.app" "temp\DML\MIOS.app">nul
cd "temp\DML"
if exist 00000001.app del 00000001.app>nul
echo.
echo Running Crediar's FixELF to patch MIOS.app
echo.
FixELF MIOS.app "DMLr%CurrentDMLRev%.elf" 00000001.app>nul
cd..
cd..
move /y "temp\DML\00000001.app" "%basecios%\00000001.app">nul
goto:repackwad
:SkipDML-stuff
::--------------------base wad B------------------------
:downloadbasewadb
::download SECOND base wadB to "%Drive%" (if applicable)
if /i "%basewadb%" EQU "none" goto:nobasewadb
echo.
echo Downloading Base Wad: %basewadb%
echo.
::----Check base IOS B-----------
::----if exist and fails md5 check, delete and redownload----
if exist temp\%basewadb%.wad (goto:checkexisting) else (goto:nocheckexisting)
:checkexisting
set md5basebcheck=
set md5basebaltcheck=
support\sfk md5 -quiet -verify %md5baseb% temp\%basewadb%.wad
if errorlevel 1 set md5basebcheck=fail
IF "%md5basebcheck%"=="" set md5basebcheck=pass
if /i "%md5basebcheck%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5basebalt% temp\%basewadb%.wad
if errorlevel 1 set md5basebaltcheck=fail
IF "%md5basebaltcheck%"=="" set md5basebaltcheck=pass
if /i "%md5basebaltcheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This base wad already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del temp\%basewadb%.wad>nul
goto:downloadbasewadb
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base Wad already exists and has been verified, Continuing...
echo.
goto:baseBalreadythere
:nocheckexisting
echo If you encounter long periods of inactivity, type "C" while holding "Ctrl",
echo then type "N", then "Enter" (i.e. Ctrl+C, N, Enter)
echo.
cd temp
..\support\nusd.exe %code1b%%code2b% %versionb%
cd..
if exist temp\titles\%code1b%%code2b%\%versionb%\%code1b%%code2b%-NUS-v%versionb%.wad move /y temp\titles\%code1b%%code2b%\%versionb%\%code1b%%code2b%-NUS-v%versionb%.wad temp\%basewadb%.wad>nul
if not exist temp\%code1b%\%code2b%\v%versionb% mkdir temp\%code1b%\%code2b%\v%versionb%
if exist temp\titles\%code1b%%code2b%\%versionb% copy /y temp\titles\%code1b%%code2b%\%versionb% temp\%code1b%\%code2b%\v%versionb%\ >nul
if exist temp\titles rd /s /q temp\titles
::----check after downloading - if md5 check fails, delete and redownload----
if exist temp\%basewadb%.wad goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat
echo.
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The basewad is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:downloadbasewadb
:checkexisting
set md5basebcheck=
set md5basebaltcheck=
support\sfk md5 -quiet -verify %md5baseb% temp\%basewadb%.wad
if errorlevel 1 set md5basebcheck=fail
IF "%md5basebcheck%"=="" set md5basebcheck=pass
if /i "%md5basebcheck%" NEQ "fail" goto:pass
support\sfk md5 -quiet -verify %md5basebalt% temp\%basewadb%.wad
if errorlevel 1 set md5basebaltcheck=fail
IF "%md5basebaltcheck%"=="" set md5basebaltcheck=pass
if /i "%md5basebaltcheck%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del temp\%basewadb%.wad>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:downloadbasewadb
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.wad: [%redtext%]Invalid">>temp\ModMii_Log.bat
echo.
set multiplefail=Y
goto:NEXT
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base Wad has been Downloaded Successfully, Continuing...
echo.
:baseBalreadythere
::----unpack base wad
echo.
echo Unpacking Base Wad: %basewadb%
echo.
mkdir %basewadb%
support\wadmii -in temp\%basewadb%.wad -out %basewadb%
if /i "%wadname:~0,3%" EQU "cBC" goto:cbc-stuff
::----specific for cios223v4[37+38]
::move modules that are from 38 and to be patched
move /y %basewadb%\00000001.app %basecios%\00000001.app>nul
move /y %basewadb%\%lastbasemodule%.app %basecios%\%lastbasemodule%.app>nul
rd /s /q %basewadb%
goto:nobasewadb
:cbc-stuff
::download NMM\DML-installer if missing
if exist "temp\%dlname:~0,-4%\FixElf\FixELF.exe" goto:gotit
::download unrar if missing
if not exist temp\UnRAR.exe echo.
if not exist temp\UnRAR.exe echo Downloading UnRAR
if not exist temp\UnRAR.exe start /min /wait support\wget --no-check-certificate -t 3 "https://sourceforge.net/projects/menuui/files/UnRAR.exe"
if exist UnRAR.exe move /y UnRAR.exe temp\UnRAR.exe>nul
echo.
echo Downloading %dlname%
if not exist "%dlname%" start /min /wait support\wget --no-check-certificate -t 3 "%URL%"
echo.
if not exist "%dlname%" (rd /s /q %basewadb%) & (rd /s /q %basecios%) & (echo.) & (support\sfk echo [%magentatext%] %dlname% Failed to Download properly, Skipping download.) & (echo "support\sfk echo %wadname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat) & (echo.) & (goto:NEXT)
if not exist "temp\%dlname:~0,-4%" mkdir "temp\%dlname:~0,-4%"
temp\unrar.exe x -y %dlname% "temp\%dlname:~0,-4%">nul
if exist %dlname% del %dlname%>nul
:gotit
if exist "temp\%dlname:~0,-4%\%wadname:~4,3%.elf" move /y "temp\%dlname:~0,-4%\%wadname:~4,3%.elf" "temp\%dlname:~0,-4%\FixElf\%wadname:~4,3%.elf">nul
move /y "%basewadb%\00000001.app" "temp\%dlname:~0,-4%\FixElf\MIOS.app">nul
rd /s /q %basewadb%
cd "temp\%dlname:~0,-4%\FixElf"
if exist 00000001.app del 00000001.app>nul
echo.
echo Running Crediar's FixELF to patch MIOS.app
echo.
FixELF MIOS.app %wadname:~4,3%.elf 00000001.app>nul
cd..
cd..
cd..
move /y "temp\%dlname:~0,-4%\FixElf\00000001.app" "%basecios%\00000001.app">nul
goto:repackwad
:nobasewadb
::------for theming system Menus only----------
if /i "%category%" NEQ "SMTHEME" goto:skip
goto:mym_download
:SMTHEME2
echo.
echo Patching System Theme, please wait...
echo.
rename %basecios%\00000001.app 00000001-original.app
call support\subscripts\TMCL_Portable_Fix.bat
cd /d temp
TMCL.exe "%ModMiiDir%\temp\%mym1%" "%ModMiiDir%\%basecios%\00000001-original.app" "temp.csm">nul
TMCL.exe "%ModMiiDir%\temp\%mym2%" "temp.csm" "%ModMiiDir%\%basecios%\00000001.app">nul
if exist "temp.csm" del "temp.csm">nul
if exist "tmp" rd /s /q "tmp"> nul
cd /d "%ModMiiDir%"
del %basecios%\00000001-original.app>nul
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
goto:repackwad
:skip
::-----cios/cmios stuff------------
::rename *.cert and *.footer (doesn't need to be patched), rename components that need to be patched (excluding tik and tmd)
echo.
echo Patching A handful of BaseWad Component Files
echo.
if /i "%code2%" NEQ "%code2new%" ren %basecios%\%code1%%code2%.cert %code1%%code2new%.cert
if /i "%code2%" NEQ "%code2new%" ren %basecios%\%code1%%code2%.footer %code1%%code2new%.footer
::skip for non d2x cIOSs
set usetmdedit=
if /i "%basecios:~12,3%" NEQ "d2x" goto:notd2x
if %ciosversion% GEQ 21009 set usetmdedit=Y
::if /i "%d2x-beta-rev%" EQU "9-beta(r47)" set usetmdedit=
::if /i "%d2x-beta-rev%" EQU "10-beta52" set usetmdedit=
::if /i "%d2x-beta-rev%" EQU "10-beta53-alt" set usetmdedit=
::::force on (testing only)
::set usetmdedit=Y
::::force off (testing only)
::set usetmdedit=
if /i "%usetmdedit%" EQU "Y" (goto:NotRenamedOriginal2) else (goto:NotRenamedOriginal)
:notd2x
if exist support\Diffs\%diffpath%\%diffpath%_00.diff ren %basecios%\00000000.app 00000000-original.app
if exist support\Diffs\%diffpath%\%diffpath%_01.diff ren %basecios%\00000001.app 00000001-original.app
if exist support\Diffs\%diffpath%\%diffpath%_02.diff ren %basecios%\00000002.app 00000002-original.app
if exist support\Diffs\%diffpath%\%diffpath%_%lastbasemodule%.diff ren %basecios%\%lastbasemodule%.app %lastbasemodule%-original.app
::rename tik & tmd for cMIOSs
if /i "%code2%" EQU "00000101" goto:rename
if /i "%category%" EQU "patchios" goto:rename
goto:notcMIOS
:rename
::ren %basecios%\%code1%%code2new%.tik %code1%%code2new%-original.tik
ren %basecios%\%code1%%code2new%.tmd %code1%%code2new%-original.tmd
:notcMIOS
::-------------diff patch files----------------
if exist support\Diffs\%diffpath%\%diffpath%_00.diff support\jptch %basecios%\00000000-original.app support\Diffs\%diffpath%\%diffpath%_00.diff %basecios%\00000000.app
if exist support\Diffs\%diffpath%\%diffpath%_01.diff support\jptch %basecios%\00000001-original.app support\Diffs\%diffpath%\%diffpath%_01.diff %basecios%\00000001.app
if exist support\Diffs\%diffpath%\%diffpath%_02.diff support\jptch %basecios%\00000002-original.app support\Diffs\%diffpath%\%diffpath%_02.diff %basecios%\00000002.app
if exist support\Diffs\%diffpath%\%diffpath%_%lastbasemodule%.diff support\jptch %basecios%\%lastbasemodule%-original.app support\Diffs\%diffpath%\%diffpath%_%lastbasemodule%.diff %basecios%\%lastbasemodule%.app
::patch tmd and tiks when they've been renamed to *-original.tik\tmd (for cMIOSs)
if /i "%code2%" EQU "00000101" goto:RenamedOriginal
if /i "%category%" EQU "patchios" goto:RenamedOriginal
goto:NotRenamedOriginal
:RenamedOriginal
::if exist support\Diffs\%diffpath%\%diffpath%_tik.diff support\jptch %basecios%\%code1%%code2%-original.tik support\Diffs\%diffpath%\%diffpath%_tik.diff %basecios%\%code1%%code2new%.tik
if exist support\Diffs\%diffpath%\%diffpath%_tmd.diff support\jptch %basecios%\%code1%%code2%-original.tmd support\Diffs\%diffpath%\%diffpath%_tmd.diff %basecios%\%code1%%code2new%.tmd
goto:deletefiles
:NotRenamedOriginal
if exist support\Diffs\%diffpath%\%diffpath%_tmd.diff support\jptch %basecios%\%code1%%code2%.tmd support\Diffs\%diffpath%\%diffpath%_tmd.diff %basecios%\%code1%%code2new%.tmd
::use different tik diff files depending on what base wad downloaded
:NotRenamedOriginal2
if not exist "support\Diffs\%diffpath%\%diffpath%_tik.diff" goto:notik
if /i "%md5basecheck%" EQU "pass" support\jptch %basecios%\%code1%%code2%.tik support\Diffs\%diffpath%\%diffpath%_tik.diff %basecios%\%code1%%code2new%.tik
:notik
if not exist "support\Diffs\%diffpath%\%diffpath%_tik2.diff" goto:notik2
if /i "%md5basealtcheck%" EQU "pass" support\jptch %basecios%\%code1%%code2%.tik support\Diffs\%diffpath%\%diffpath%_tik2.diff %basecios%\%code1%%code2new%.tik
:notik2
::delete un-needed original files that have already been patched
:deletefiles
if exist %basecios%\00000000-original.app del %basecios%\00000000-original.app>nul
if exist %basecios%\00000001-original.app del %basecios%\00000001-original.app>nul
if exist %basecios%\00000002-original.app del %basecios%\00000002-original.app>nul
if exist %basecios%\%lastbasemodule%-original.app del %basecios%\%lastbasemodule%-original.app>nul
::--for cMIOS's that have tiks and tmds renamed to -original
if exist %basecios%\%code1%%code2%-original.tik del %basecios%\%code1%%code2%-original.tik>nul
if exist %basecios%\%code1%%code2%-original.tmd del %basecios%\%code1%%code2%-original.tmd>nul
::override for IOS60
if /i "%basecios%" EQU "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])" goto:signcios
if /i "%code2%" EQU "00000101" goto:repackwad
if /i "%category%" EQU "patchios" goto:repackwad
if exist %basecios%\%code1%%code2%.tik del %basecios%\%code1%%code2%.tik>nul
::don't delete base tmd if usetmdedit=Y
if /i "%usetmdedit%" NEQ "Y" if exist %basecios%\%code1%%code2%.tmd del %basecios%\%code1%%code2%.tmd>nul
::---------------Korean Key Patch---------------
::skip korean key patch and copying of custom modules for d2x cIOSs (will be done later)
if /i "%basecios:~12,3%" EQU "d2x" goto:signcios
if /i "%basewad:~3,2%" EQU "38" goto:nokorpatch
if /i "%basecios%" EQU "cIOS223[37-38]-v4" goto:nokorpatch
if /i "%wadname:~0,3%" EQU "cBC" goto:repackwad
if /i "%basecios%" EQU "IOS236v65535(IOS36v3351[FS-ES-NP-VP])" goto:repackwad
echo.
echo Patching %lastbasemodule%.app to support the Korean Common Key
::IOS37-64-v3869
if /i "%basewad%" EQU "IOS37-64-v3869" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x1FD00=0xE0
if /i "%basewad%" EQU "IOS37-64-v3869" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x278E0=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS57-64-v5661
if /i "%basewad%" EQU "IOS57-64-v5661" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21340=0xE0
if /i "%basewad%" EQU "IOS57-64-v5661" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x28F5C=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::NEXT GEN BASES
::IOS37-64-v5662
if /i "%basewad%" EQU "IOS37-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x1FD88=0xE0
if /i "%basewad%" EQU "IOS37-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x27968=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS53-64-v5662
if /i "%basewad%" EQU "IOS53-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x1FD88=0xE0
if /i "%basewad%" EQU "IOS53-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x27968=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS55-64-v5662
if /i "%basewad%" EQU "IOS55-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x1FD88=0xE0
if /i "%basewad%" EQU "IOS55-64-v5662" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x27968=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS56-64-v5661
if /i "%basewad%" EQU "IOS56-64-v5661" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21424=0xE0
if /i "%basewad%" EQU "IOS56-64-v5661" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x29078=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS57-64-v5918
if /i "%basewad%" EQU "IOS57-64-v5918" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21424=0xE0
if /i "%basewad%" EQU "IOS57-64-v5918" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x29078=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS58-64-v6175
if /i "%basewad%" EQU "IOS58-64-v6175" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21424=0xE0
if /i "%basewad%" EQU "IOS58-64-v6175" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x29078=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS60-64-v6174
if /i "%basewad%" EQU "IOS60-64-v6174" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x20678=0xE0
if /i "%basewad%" EQU "IOS60-64-v6174" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x28294=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS70-64-v6687
if /i "%basewad%" EQU "IOS70-64-v6687" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21340=0xE0
if /i "%basewad%" EQU "IOS70-64-v6687" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x28f5c=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
::IOS80-64-v6943
if /i "%basewad%" EQU "IOS80-64-v6943" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x21424=0xE0
if /i "%basewad%" EQU "IOS80-64-v6943" support\hexalter.exe %basecios%\%lastbasemodule%.app 0x29078=0x63,0xB8,0x2B,0xB4,0xF4,0x61,0x4E,0x2E,0x13,0xF2,0xFE,0xFB,0xBA,0x4C,0x9B,0x7E
echo.
:nokorpatch
::copy over extra components
echo.
echo Copying over Custom Modules
echo.
::222v4
if /i "%basecios%" EQU "cIOS222[38]-v4" copy support\Hermes\mloadv3.app %basecios%\0000000f.app
::223v4
if /i "%basecios%" EQU "cIOS223[37-38]-v4" copy support\Hermes\mloadv3.app %basecios%\0000000f.app
::222v5
if /i "%basecios%" EQU "cIOS222[38]-v5" copy support\Hermes\mloadv5.app %basecios%\0000000f.app
::223v5 base37
if /i "%basecios%" EQU "cIOS223[37]-v5" copy support\Hermes\mloadv5.app %basecios%\0000000f.app
::224v5 base57
if /i "%basecios%" EQU "cIOS224[57]-v5" copy support\Hermes\mloadv5.app %basecios%\00000013.app
::202v5.1R base60
if /i "%basecios%" EQU "cIOS202[60]-v5.1R" copy support\Hermes\mloadv5.1R.app %basecios%\0000000f.app
::222v5.1R base38
if /i "%basecios%" EQU "cIOS222[38]-v5.1R" copy support\Hermes\mloadv5.1R.app %basecios%\0000000f.app
::223v5.1R base37
if /i "%basecios%" EQU "cIOS223[37]-v5.1R" copy support\Hermes\mloadv5.1R.app %basecios%\0000000f.app
::224v5.1R base57
if /i "%basecios%" EQU "cIOS224[57]-v5.1R" copy support\Hermes\mloadv5.1R.app %basecios%\00000013.app
::249v19 base37
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\mload.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\EHCI.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\FAT.app %basecios%\00000011.app
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\SDHC.app %basecios%\00000012.app
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\DIPP.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[37]-v19" copy support\W19modules\FFSP.app %basecios%\00000014.app
::249v19 base38
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\mload.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\EHCI.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\FAT.app %basecios%\00000011.app
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\SDHC.app %basecios%\00000012.app
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\DIPP.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[38]-v19" copy support\W19modules\FFSP.app %basecios%\00000014.app
::249v20 base38
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\mload.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\EHCI.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\FAT.app %basecios%\00000011.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\SDHC.app %basecios%\00000012.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\DIPP.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\ES.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[38]-v20" copy support\W20modules\FFSP.app %basecios%\00000015.app
::249v20 base56
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\mload.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\EHCI.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\FAT.app %basecios%\00000011.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\SDHC.app %basecios%\00000012.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\DIPP.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\ES.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[56]-v20" copy support\W20modules\FFSP.app %basecios%\00000015.app
::249v19 base57
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\mload.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\EHCI.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\FAT.app %basecios%\00000015.app
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\SDHC.app %basecios%\00000016.app
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\DIPP.app %basecios%\00000017.app
if /i "%basecios%" EQU "cIOS249[57]-v19" copy support\W19modules\FFSP.app %basecios%\00000018.app
::249v20 base57
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\mload.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\EHCI.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\FAT.app %basecios%\00000015.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\SDHC.app %basecios%\00000016.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\DIPP.app %basecios%\00000017.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\ES.app %basecios%\00000018.app
if /i "%basecios%" EQU "cIOS249[57]-v20" copy support\W20modules\FFSP.app %basecios%\00000019.app
::249v17b
if /i "%basecios%" EQU "cIOS249-v17b" copy support\W17bmodules\0000000f.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249-v17b" copy support\W17bmodules\00000010.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249-v17b" copy support\W17bmodules\00000011.app %basecios%\00000011.app
::249v14
if /i "%basecios%" EQU "cIOS249-v14" copy support\W14modules\EHCI.app %basecios%\0000000f.app
if /i "%basecios%" EQU "cIOS249-v14" copy support\W14modules\SDHC.app %basecios%\00000010.app
if /i "%basecios%" EQU "cIOS249-v14" copy support\W14modules\FAT.app %basecios%\00000011.app
::249v21 base 37/38/56
if /i "%basecios%" EQU "cIOS249[37]-v21" goto:yes
if /i "%basecios%" EQU "cIOS249[38]-v21" goto:yes
if /i "%basecios%" EQU "cIOS249[53]-v21" goto:yes
if /i "%basecios%" EQU "cIOS249[55]-v21" goto:yes
if /i "%basecios%" EQU "cIOS249[56]-v21" goto:yes
goto:skip
:yes
copy support\W21modules\mload.app %basecios%\0000000f.app
copy support\W21modules\FAT.app %basecios%\00000010.app
copy support\W21modules\SDHC.app %basecios%\00000011.app
copy support\W21modules\EHCI.app %basecios%\00000012.app
copy support\W21modules\DIPP.app %basecios%\00000013.app
copy support\W21modules\ES.app %basecios%\00000014.app
copy support\W21modules\FFSP.app %basecios%\00000015.app
:skip
::249v21 base57
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\mload.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\FAT.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\SDHC.app %basecios%\00000015.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\EHCI.app %basecios%\00000016.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\DIPP.app %basecios%\00000017.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\ES.app %basecios%\00000018.app
if /i "%basecios%" EQU "cIOS249[57]-v21" copy support\W21modules\FFSP.app %basecios%\00000019.app
::249v21 base58
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\mload.app %basecios%\00000013.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\FAT.app %basecios%\00000014.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\SDHC.app %basecios%\00000015.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\USBS.app %basecios%\00000016.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\DIPP.app %basecios%\00000017.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\ES.app %basecios%\00000018.app
if /i "%basecios%" EQU "cIOS249[58]-v21" copy support\W21modules\FFSP.app %basecios%\00000019.app
::------sign cIOS with details---------
:signcios
set d2xNumber=
set d2xhexNumber=
set baseNumber=
set basehexNumber=
set d2xsubversion=
set string=
set string1=
set cIOSsubversion=
if /i "%code2%" EQU "00000101" goto:repackwad
echo.
echo Tagging 00000000.app with cIOS details
echo.
::----convert some values from dec to hex----
if /i "%basecios:~12,3%" NEQ "d2x" goto:minijump
echo "set cIOSversionNum=%d2x-beta-rev%">temp\cIOSrev.bat
support\sfk filter -spat temp\cIOSrev.bat -rep _\x22__ -rep _"-*"__ -write -yes>nul
call temp\cIOSrev.bat
del temp\cIOSrev.bat>nul
:minijump
support\sfk hex %cIOSversionNum% -digits=8 >hex.txt
::set a file with 1 line as a variable
set /p cIOShexNumber= <hex.txt
if exist hex.txt del hex.txt>nul
::-----
set baseNumber=%basewad:~3,2%
::base # for 37+38=75
if /i "%basecios%" EQU "cIOS223[37-38]-v4" set baseNumber=75
support\sfk hex %baseNumber% -digits=8 >hex.txt
::set a file with 1 line as a variable
set /p basehexNumber= <hex.txt
if exist hex.txt del hex.txt>nul
::-----cIOSFamilyName (this part required for d2x betas only)-------
if /i "%basecios:~12,3%" NEQ "d2x" goto:tinyjump
set cIOSsubversion=
set cIOSFamilyName=d2x
if exist support\d2x-beta\d2x-beta.bat call support\d2x-beta\d2x-beta.bat
::limit cios family name to 16 chars
set cIOSFamilyName=%cIOSFamilyName:~0,16%
::-----version string (ie. beta1) (this part required for d2x betas only)------
set string1=%cIOSversionNum%
set versionlength=1
::letter by letter loop
:loopy
if /i "%string1%" EQU "" goto:endloopy
set string1=%string1:~1%
set /A versionlength=%versionlength%+1
goto loopy
:endloopy
echo set cIOSsubversion=@d2x-beta-rev:~%versionlength%,16@>cIOSsubversion.bat
support\sfk filter cIOSsubversion.bat -spat -rep _@_%%_ -write -yes>nul
call cIOSsubversion.bat
del cIOSsubversion.bat>nul
:tinyjump
::copy template .app
copy /y "support\00000000-template.app" "%basecios%\00000000.app">nul
::hexalter version number and base wad number
support\hexalter.exe "%basecios%\00000000.app" 0x8=0x%cIOShexNumber:~0,2%,0x%cIOShexNumber:~2,2%,0x%cIOShexNumber:~4,2%,0x%cIOShexNumber:~6,2%,0x%basehexNumber:~0,2%,0x%basehexNumber:~2,2%,0x%basehexNumber:~4,2%,0x%basehexNumber:~6,2%
::convert %cIOSFamilyName% to hex then hexalter
set var=%cIOSFamilyName%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p cIOSFamilyNamehex= <temphex.txt
del /f /q temphex.txt
set cIOSFamilyNamehex=0x%cIOSFamilyNamehex:~0,-4%
support\hexalter.exe "%basecios%\00000000.app" 0x10=%cIOSFamilyNamehex%
::only patch cIOSsubversion if not = nul
if "%cIOSsubversion%"=="" goto:tinyjump
set var=%cIOSsubversion%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p cIOSsubversionhex= <temphex.txt
del /f /q temphex.txt
set cIOSsubversionhex=0x%cIOSsubversionhex:~0,-4%
support\hexalter.exe "%basecios%\00000000.app" 0x20=%cIOSsubversionhex%
:tinyjump
::---------RC24 Replace nintendo's RSA public key [A7144290...919AF969] with RC24's----------
::override for IOS60
if /i "%basecios%" EQU "IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24])" (set offset=5A7F8) & (goto:RC24key)
goto:skipRC24key
:RC24key
echo.
echo Patching the RiiConnect24 RSA public key
echo.
support\hexalter.exe "%basecios%\00000006.app" 0x%offset%=0xDC,0x60,0x8C,0x0D,0x49,0x3A,0x2B,0x8C,0x5B,0x24,0x3C,0xE6,0xD1,0xB8,0x1D,0x0F,0x63,0xFF,0x66,0x07,0xAC,0x5C,0xFA,0x20,0xB5,0xF3,0xB5,0x5A,0x2F,0x11,0xEE,0xA1,0x1E,0x4C,0x9C,0xEA,0xD7,0xA3,0x38,0x86,0x39,0xBC,0xAF,0x60,0x1C,0x85,0xCD,0xEC,0x0A,0xE5,0xFD,0x73,0xC5,0xC0,0x73,0x98,0x49,0x94,0xF9,0x75,0xC2,0xA5,0x0E,0xE0,0x78,0x69,0x89,0xDE,0x69,0x6E,0x46,0x5F,0x62,0x63,0xBE,0x10,0x1C,0x68,0x23,0x79,0x28,0x93,0xCB,0xFA,0xA4,0x94,0xDE,0xF7,0x4C,0xD8,0x27,0x90,0x5C,0x32,0x16,0x2E,0x3B,0x0B,0x07,0xCD,0x6C,0xC2,0x3F,0x2D,0xC9,0x1A,0x13,0x5A,0x58,0x26,0x0C,0x06,0x2C,0xDA,0xFA,0x12,0x48,0xD0,0x13,0x89,0xF2,0x0F,0xBF,0xE6,0xA0,0x6A,0x0D,0xE5,0x1A,0x9A,0xD7,0x48,0x3C,0x57,0x25,0xF6,0x79,0x92,0x6B,0x75,0xC4,0x19,0xE6,0xB6,0xA0,0x5C,0x67,0x8C,0x42,0x56,0x5E,0x69,0x25,0x34,0x93,0xD3,0x32,0x3A,0xB9,0xC4,0x51,0x79,0x93,0x24,0x55,0x3E,0x8E,0x69,0xC6,0x99,0xE6,0x1A,0x84,0x85,0xEB,0x9E,0x23,0x70,0x25,0xEC,0x89,0x76,0x63,0x33,0xCB,0xBB,0x96,0x42,0x46,0x02,0xE8,0x82,0x84,0x98,0x05,0xF8,0x67,0xB5,0x8E,0xE4,0x57,0x39,0xC8,0x69,0x5C,0xC4,0x89,0x85,0x67,0x87,0x8F,0x3B,0x70,0x14,0x66,0xEC,0x88,0xE6,0x51,0x4D,0x81,0xF4,0xAE,0xBA,0x73,0x02,0x00,0x33,0x4E,0x1A,0x47,0xFE,0xA9,0x8E,0xAE,0x7F,0x82,0xE7,0xF5,0x6B,0x44,0x16,0x59,0x9E,0xE5,0xDA,0x4B,0x53,0x26,0x46,0xDB,0x93,0x5A,0x6F,0xBB,0x03
:skipRC24key
::---------patches for d2x cIOSs via ciosmaps.xml (including IRQ4 patch if applicable)--------
if /i "%basecios:~12,3%" NEQ "d2x" goto:repackwad
echo.
echo Patching some IOS modules
echo.
if exist Support\d2x-beta\ciosmaps.xml (copy /y Support\d2x-beta\ciosmaps.xml temp\ciosmaps.xml>nul) else (copy /y Support\d2xModules\ciosmaps.xml temp\ciosmaps.xml>nul)
::get base IOS section
support\sfk -spat filter temp\ciosmaps.xml -inc "base ios\x3d\x22%basewad:~3,2%" to "\x2fbase" -nocheck -write -yes>nul
::rename comments and redirects
support\sfk -spat filter temp\ciosmaps.xml -rep _"\x3c\x21\x2d\x2d"_commentstart_ -rep _"\x2d\x2d\x3e"_commentend_ -write -yes>nul
support\sfk -spat filter temp\ciosmaps.xml -rep _"\x3c"__ -rep _"\x2f\x3e"_LineEnd_ -rep _"\x3e"_LineEnd_ -write -yes>nul
::remove quotes, equal signs, and trailing spaces\slashes
support\sfk -spat filter temp\ciosmaps.xml -rep _"\x3d"__ -rep _"\x22"__ -write -yes>nul
support\sfk -spat filter temp\ciosmaps.xml -lerep _"\x2f"__ -lerep _"\x20"__ -write -yes>nul
::remove blank lines
support\sfk filter temp\ciosmaps.xml -no-empty-lines -no-blank-lines -write -yes>nul
::force remove IRQ4 patch for d2x v8 base 58 (harmless but included by davebaol by accident)
if /i "%basewad:~3,2%" NEQ "58" goto:no58fix
if /i "%ciosversion%" NEQ "21008" goto:no58fix
support\sfk -spat filter temp\ciosmaps.xml -!"patch offset0x28530 size4 originalbytes0xFF,0xFF,0x5D,0x52 newbytes0xFF,0xFF,0x5D,0x5C" -write -yes>nul
:no58fix
::get contentscount\basemodules\modulescount --> basemodules=lastbasemodules+1 (includes 00000000.app)
set /p topline= <temp\ciosmaps.xml
::-------disable getting info for now, not needed-------
goto:DisableGettingcIOSINFO
echo %topline%>temp\temp.txt
support\sfk filter temp\temp.txt -rep _*contentscount__ -rep _" "*__ -write -yes>nul
set /p contentscount= <temp\temp.txt
support\sfk dec %lastbasemodule%>temp\temp.txt
set /p basemodules= <temp\temp.txt
set /a basemodules=%basemodules%+1
set /a modulescount=%contentscount%-%basemodules%
::echo %contentscount%
::echo %basemodules%
::echo %modulescount%
:DisableGettingcIOSINFO
::--------------------------------------------------------
::remove topline
support\sfk filter temp\ciosmaps.xml -!"%topline%" -write -yes>nul
::remove 00000000.app patches (done later)
support\sfk -spat filter temp\ciosmaps.xml -cut "*" to "\x2fcontent" -nocheck -write -yes>nul
::remove /content and /base
support\sfk -spat filter temp\ciosmaps.xml -!"\x2fcontent" -!"\x2fbase" -write -yes>nul
::split to temp\ciosmodules.xml
support\sfk filter temp\ciosmaps.xml ++"module" -!"commentstart" -!"commentend" -!"\x2fbase">temp\ciosmodules.xml
support\sfk filter temp\ciosmaps.xml -!"module" -!"\x2fbase" -write -yes>nul
set contentid=0
set xmlcomment=
set newbytes=
set newbytestemp=
set getnewbytes=
::-----------------------:process ciosmaps.xml: loop though xml---------------------------
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\ciosmaps.xml) do call :processciosmaps %%A
goto:quickskip
:processciosmaps
::set xmlLine=%*
echo %*>temp\temp.txt
findStr /I /C:"commentend" "temp\temp.txt" >nul
if not ERRORLEVEL 1 (set xmlcomment=) & (goto:EOF)
if /i "%xmlcomment%" EQU "on" goto:EOF
findStr /I /C:"commentstart" "temp\temp.txt" >nul
if not ERRORLEVEL 1 (set xmlcomment=on) & (goto:EOF)
findStr /I /C:"content id" "temp\temp.txt" >nul
if not ERRORLEVEL 1 (set /a contentid=%contentid%+1) & (goto:EOF)
::----patching...----
::get current contendid
support\sfk hex %contentid% -digits=8 >temp\hex.txt
set /p contentidhex= <temp\hex.txt
set contentidhex=%contentidhex:~0,-1%
::get patchoffset
findStr /I /C:"patch offset" "temp\temp.txt" >nul
if ERRORLEVEL 1 goto:skip
support\sfk -spat filter temp\temp.txt -rep _*"patch offset"__ -rep _" "*__ -rep _"LineEnd"*__ -write -yes>nul
set /p patchoffset= <temp\temp.txt
:skip
::get newbytes
echo %*>temp\temp.txt
findStr /I /C:"newbytes" "temp\temp.txt" >nul
if not ERRORLEVEL 1 set getnewbytes=on
if /i "%getnewbytes%" NEQ "on" goto:skip
::filter for newbytes
support\sfk -spat filter temp\temp.txt -rep _*"newbytes"__ -rep _\x20\x20__ -lsrep _\x20__ -rep _"LineEnd"*__ -rep _" "*__ -write -yes>nul
set newbytestemp=
set /p newbytestemp= <temp\temp.txt
set newbytes=%newbytes%%newbytestemp%
if "%newbytes%"=="" goto:EOF
if /i "%newbytes:~0,2%" NEQ "0x" (set newbytes=) & (goto:EOF)
:skip
::check LineEnd
echo %*>temp\temp.txt
findStr /I /C:"LineEnd" "temp\temp.txt" >nul
if ERRORLEVEL 1 goto:EOF
if "%newbytes%"=="" goto:EOF
if "%patchoffset%"=="" goto:EOF
::::verbose
::echo support\hexalter.exe %basecios%\%contentidhex%.app %patchoffset%=%newbytes%
support\hexalter.exe %basecios%\%contentidhex%.app %patchoffset%=%newbytes%
set patchoffset=
set newbytes=
set newbytestemp=
set getnewbytes=
goto:EOF
:quickskip
echo.
echo Copying over Custom Modules
echo.
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\ciosmodules.xml) do call :processciosmodules %%A
goto:quickskip
:processciosmodules
set /a contentid=%contentid%+1
support\sfk hex %contentid% -digits=8 >temp\hex.txt
set /p contentidhex= <temp\hex.txt
set contentidhex=%contentidhex:~0,-1%
::set xmlLine=%*
echo %*>temp\temp.txt
::get module
support\sfk -spat filter temp\temp.txt -rep _*" module"__ -rep _" "*__ -write -yes>nul
set /p module= <temp\temp.txt
if exist support\d2x-beta\%module%.app (copy support\d2x-beta\%module%.app %basecios%\%contentidhex%.app) else (copy Support\d2xModules\%module%.app %basecios%\%contentidhex%.app)
goto:EOF
:quickskip
echo.
::use tmdedit.exe to patch tmd
if /i "%usetmdedit%" NEQ "Y" goto:repackwad
if exist Support\d2x-beta\ciosmaps.xml (set xml=Support\d2x-beta\ciosmaps.xml) else (set xml=Support\d2xModules\ciosmaps.xml)
::get tmd version from cIOS ; e.g. <ciosgroup name="d2x-v10-beta53-alt" version="21010" basescount="10">
support\sfk -spat filter "%xml%" ++"ciosgroup name" ++"version" ++"basescount" -rep _*version\x3d\x22__ -rep _\x22*__ >temp\d2xversion.xml
set /p tmdversion= <temp\d2xversion.xml
del temp\d2xversion.xml>nul
support\TMDedit.exe -b "%basecios%\%code1%%code2new%.tmd" -xml %xml% -group d2x-v%d2x-beta-rev% %tmdversion% -base %basewad:~3,2% %version% -folder "%basecios%" -basefile %basecios%\%code1%%code2%.tmd -outIOS 249
del %basecios%\%code1%%code2%.tmd>nul
::---------pack files into cIOS wad---------
:repackwad
echo.
echo Repacking Wad
echo.
support\wadmii -in "%basecios%" -out "%Drive%\WAD\%wadname%.wad"
::delete unpacked files
rd /s /q %basecios%
::Change version number and slot number (using patchios) only if required
:patchios
if /i "%ciosslot%" EQU "unchanged" goto:skip
echo.
echo Changing version number and/or slot number
echo.
cd support
if /i "%DRIVE:~1,1%" EQU ":" (set "DRIVEadj=%DRIVE%") else (set "DRIVEadj=..\%DRIVE%")
patchios "%Driveadj%\WAD\%wadname%.wad" -slot %ciosslot% -v %ciosversion%
cd..
echo.
:skip
if "%wadname:~-4%" NEQ ".wad" set wadname=%wadname%.wad
if /i "%wadname:~0,3%" EQU "DML" goto:simpleDMLcheck
goto:wadverifyretry
:simpleDMLcheck
if not exist "%Drive%"\WAD\%wadname% goto:missing
:pass
echo.
support\sfk echo [%greentext%]Download Successful
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:NEXT
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
echo.
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
::----------------------------------------THEMES-------------------------------------
:THEMES
if not exist "%Drive%"\ModThemes mkdir "%Drive%"\ModThemes
::----if exist and fails md5 check, delete and redownload----
if exist "%Drive%"\ModThemes\%wadname%.csm (goto:checkexisting) else (goto:nocheckexisting)
:checkexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%"\ModThemes\%wadname%.csm
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%"\ModThemes\%wadname%.csm>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:NEXT
:nocheckexisting
::-------------Download base app----------------------
echo.
echo Downloading Base app from System Menu %wadname:~-4%: 000000%version%.app
echo.
set dlname=000000%version%_%wadname:~-4%.app
::----if exist and fails md5 check, delete and redownload----
if not exist "%Drive%"\ModThemes\%dlname% goto:nocheckexisting
set md5basecheck=
support\sfk md5 -quiet -verify %md5base% "%Drive%"\ModThemes\%dlname%
if errorlevel 1 set md5basecheck=fail
IF "%md5basecheck%"=="" set md5basecheck=pass
if /i "%md5basecheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This base app already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%"\ModThemes\%dlname%>nul
if exist temp\%dlname% del temp\%dlname%>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base App already exists and has been verified, Continuing...
echo.
goto:mym_download
:nocheckexisting
if exist temp\%dlname% goto:AlreadyinTemp
support\NusFileGrabber.exe %version% http://ccs.cdn.sho.rc24.xyz/ccs/download/
if exist 000000%version%.app move /Y 000000%version%.app temp\%dlname%>nul
:AlreadyinTemp
copy /y temp\%dlname% "%Drive%"\ModThemes\%dlname% >nul
::----Check base APP-----------
::----check after downloading - if md5 check fails, delete and redownload----
if exist "%Drive%"\ModThemes\%dlname% goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.csm: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5basecheck=
support\sfk md5 -quiet -verify %md5base% "%Drive%"\ModThemes\%dlname%
if errorlevel 1 set md5basecheck=fail
IF "%md5basecheck%"=="" set md5basecheck=pass
if /i "%md5basecheck%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This base app already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%"\ModThemes\%dlname%>nul
if exist temp\%dlname% del temp\%dlname%>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set multiplefail=Y
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %wadname%.csm: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] Base App has been Downloaded Successfully, Continuing...
echo.
::if /i "%AdvancedDownload%" NEQ "Y" echo "echo %wadname%.csm: Valid">>temp\ModMii_Log.bat
goto:mym_download
::-------------------mym download to build csm file---------------------
:mym_download
set mym0=%mym1%
set md5mym0=%md5mym1%
set mym2=
:mym2_download
echo.
echo Downloading %mym0%
echo.
::----if exist and fails md5 check, delete and redownload----
if not exist "temp\%mym0%" goto:nocheckexisting
set md5mymcheck=
support\sfk md5 -quiet -verify %md5mym0% "temp\%mym0%"
if errorlevel 1 set md5mymcheck=fail
IF "%md5mymcheck%"=="" set md5mymcheck=pass
if /i "%md5mymcheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This mym file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "temp\%mym0%">nul
goto:DOWNLOADSTART2
:pass
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] File already exists and has been verified, Continuing...
echo.
::if /i "%category%" EQU "SMTHEME" goto:SMTHEME2
goto:download_mym2
:nocheckexisting
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/%mym0%"
if exist "%mym0%" move /Y "%mym0%" temp>nul
::----Check mym file after downloading-----------
::----check after downloading - if md5 check fails, delete and redownload----
if exist "temp\%mym0%" goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5mymcheck=
support\sfk md5 -quiet -verify %md5mym0% "temp\%mym0%"
if errorlevel 1 set md5mymcheck=fail
IF "%md5mymcheck%"=="" set md5mymcheck=pass
if /i "%md5mymcheck%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This File already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "temp\%mym0%">nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set multiplefail=Y
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] File has been Downloaded Successfully, Continuing...
echo.
::if /i "%category%" EQU "SMTHEME" goto:SMTHEME2
::goto:build_csm
:download_mym2
if /i "%mym0%" EQU "%mym2%" goto:thememiiDL
if /i "%effect%" EQU "No-Spin" set mym2=optional_non_spinning_outline.mym
if /i "%effect%" EQU "No-Spin" set md5mym2=9e70e955aa9ba04cb904b350402ed5b3
if /i "%effect%" EQU "Spin" set mym2=optional_spinning_outline.mym
if /i "%effect%" EQU "Spin" set md5mym2=b66e0d93eac883651898090236c14306
if /i "%effect%" EQU "Fast-Spin" set mym2=optional_fast_spinning_outline.mym
if /i "%effect%" EQU "Fast-Spin" set md5mym2=1ddddcf02bc7024b7fde393308cdbd5f
set mym0=%mym2%
set md5mym0=%md5mym2%
goto:mym2_download
::---------thememii cmd line download-------------
:thememiiDL
echo.
echo Downloading ThemeMii Cmd Line
echo.
set ThemeMiiZip=thememii_cmd.v1.1_3.5NetFramework.zip
set md5themewii=e80cd96a5691705ff323f480d873418d
::if exist "temp\DBUPDATE%currentversion%.bat" call "temp\DBUPDATE%currentversion%.bat"
::----if exist and fails md5 check, delete and redownload----
if not exist temp\themewii.exe goto:nocheckexisting
set md5themewiicheck=
support\sfk md5 -quiet -verify %md5themewii% temp\themewii.exe
if errorlevel 1 set md5themewiicheck=fail
IF "%md5themewiicheck%"=="" set md5themewiicheck=pass
if /i "%md5themewiicheck%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del temp\themewii.exe>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] File already exists and has been verified, Continuing...
echo.
goto:build_csm
:nocheckexisting
start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/%ThemeMiiZip%"
if exist %ThemeMiiZip% support\7za e -aoa %ThemeMiiZip% -otemp *.* -r
if exist %ThemeMiiZip% del %ThemeMiiZip%>nul
::----Check mym file after downloading-----------
::----check after downloading - if md5 check fails, delete and redownload----
if exist temp\themewii.exe goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5themewiicheck=
support\sfk md5 -quiet -verify %md5themewii% temp\themewii.exe
if errorlevel 1 set md5themewiicheck=fail
IF "%md5themewiicheck%"=="" set md5themewiicheck=pass
if /i "%md5themewiicheck%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del temp\themewii.exe>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set multiplefail=Y
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo -spat \x20 \x20 \x20 [%greentext%] File has been Downloaded Successfully, Continuing...
echo.
::goto:build_csm
:build_csm
if /i "%category%" EQU "SMTHEME" goto:SMTHEME2
echo.
echo Building Theme (%wadname%.csm), please wait...
echo.
call support\subscripts\TMCL_Portable_Fix.bat
cd /d temp
TMCL.exe "%ModMiiDir%\temp\%mym1%" "%ModMiiDir%\temp\%dlname%" "temp.csm">nul
TMCL.exe "%ModMiiDir%\temp\%mym2%" "temp.csm" "%wadname%.csm">nul
if exist "temp.csm" del "temp.csm">nul
if exist "tmp" rd /s /q "tmp"> nul
::sign csm using themewii.exe (aka modmiithemesigner) to avoid warning prompts after MyMenuifyMod's 2023 update
if exist "%wadname%.csm" themewii.exe "%wadname%.csm" "%wadname%.csm"
if not exist "%wadname%.csm" goto:skip
if /i "%DRIVE:~1,1%" EQU ":" (move /y "%wadname%.csm" "%Drive%\ModThemes\%wadname%.csm">nul) else (move /y "%wadname%.csm" "%ModMiiDir%\%Drive%\ModThemes\%wadname%.csm">nul)
:skip
cd /d "%ModMiiDir%"
::del %basecios%\00000001-original.app>nul
call support\subscripts\TMCL_Portable_Fix_Reversal.bat
::if exist "temp\%wadname%.csm" move /y "temp\%wadname%.csm" "%Drive%\ModThemes\%wadname%.csm">nul
::----check after downloading - if md5 check fails, delete and redownload----
if exist "%Drive%"\ModThemes\%wadname%.csm goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:checkexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%"\ModThemes\%wadname%.csm
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%"\ModThemes\%wadname%.csm>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set multiplefail=Y
if /i "%KeepInvalidOverride%" NEQ "Y" (if exist "%Drive%\ModThemes\%wadname%.csm" del "%Drive%\ModThemes\%wadname%.csm">nul)
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Invalid">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo [%greentext%]Download Successful
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:NEXT
::--------------------------------------Cheat Codes: txtcodes from codes.rc24.xyz------------------------------
:CHEATS
::set cheatregion=all
if exist "codeindex.txt" del "codeindex.txt" >nul
if exist "codeindextemp.txt" del "codeindextemp.txt">nul
echo.
echo Downloading %cheatregion% Region Cheat Codes for the following console(s):
echo.
if /i "%wiicheat%" EQU "ON" echo * Wii
if /i "%WiiWarecheat%" EQU "ON" echo * WiiWare
if /i "%VCArcadecheat%" EQU "ON" echo * VC Arcade
if /i "%WiiChannelscheat%" EQU "ON" echo * Wii Channels
if /i "%Gamecubecheat%" EQU "ON" echo * Gamecube
if /i "%NEScheat%" EQU "ON" echo * NES/Famicom VC
if /i "%SNEScheat%" EQU "ON" echo * Super NES/Famicom VC
if /i "%N64cheat%" EQU "ON" echo * Nintendo 64 VC
if /i "%SMScheat%" EQU "ON" echo * Sega Master System VC
if /i "%Segacheat%" EQU "ON" echo * Sega Genesis/Mega Drive VC
if /i "%NeoGeocheat%" EQU "ON" echo * NeoGeo VC
if /i "%Commodorecheat%" EQU "ON" echo * Commodore 64 VC
if /i "%MSXcheat%" EQU "ON" echo * MSX VC
if /i "%TurboGraFX-16cheat%" EQU "ON" echo * TurboGraFX-16 VC
if /i "%TurboGraFX-CDcheat%" EQU "ON" echo * TurboGraFX-CD VC
echo.
if /i "%cheatlocation%" EQU "B" echo Location(s) to save cheats: (txtcodes and codes\X\L)
if /i "%cheatlocation%" EQU "T" echo Location(s) to save cheats: (txtcodes)
if /i "%cheatlocation%" EQU "C" echo Location(s) to save cheats: (codes\X\L)
echo.
if /i "%overwritecodes%" EQU "OFF" echo Overwrite existing txtcodes (Disabled)
if /i "%overwritecodes%" EQU "ON" echo Overwrite existing txtcodes (Enabled)
echo.
echo Note: The above settings can be customized in the Cheat Code Options
echo.
echo.
echo Grabbing current list of cheats from codes.rc24.xyz,
echo Please wait...
echo.
::---get game/iso list and game count-------
if /i "%cheatlocation%" EQU "C" goto:skip
if not exist "%drive%"\txtcodes mkdir "%drive%"\txtcodes
:skip
::-----------used to get full list of all games---------------
goto:skipcheatrepeat
:cheatrepeat
if exist codeindex.txt copy /y codeindex.txt codeindextemp.txt >nul
if exist codeindex.txt (copy /y codeindextemp.txt+"index*=all" codeindex.txt >nul) else (move /y "index*=all" "codeindex.txt">nul)
if exist "index*=all" del "index*=all" >nul
if exist "codeindextemp.txt" del "codeindextemp.txt" >nul
goto:%nextcheatlist%
:skipcheatrepeat
::--------------ALL REGION---------------
if /i "%cheatregion%" NEQ "all" goto:skipall
::-------Wii Games--------
set nextcheatlist=allwiiwarecheats
if /i "%wiicheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=R&r=*&l=all"
goto:cheatrepeat
::-------WiiWare------
:allwiiwarecheats
set nextcheatlist=allvccheats
if /i "%WiiWarecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=W&r=*&l=all"
goto:cheatrepeat
::-------VC Arcade------
:allVCcheats
set nextcheatlist=allwiichannelcheats
if /i "%VCArcadecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=D&r=*&l=all"
goto:cheatrepeat
::-------Wii Channels------
:allwiichannelcheats
set nextcheatlist=allGCcheats
if /i "%WiiChannelscheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=H&r=*&l=all"
goto:cheatrepeat
::-------Gamecube------
:allGCcheats
set nextcheatlist=allNEScheats
if /i "%Gamecubecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=G&r=*&l=all"
goto:cheatrepeat
::-------NES------
:allNEScheats
set nextcheatlist=allSNEScheats
if /i "%NEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=F&r=*&l=all"
goto:cheatrepeat
::-------SNES------
:allSNEScheats
set nextcheatlist=allN64cheats
if /i "%SNEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=J&r=*&l=all"
goto:cheatrepeat
::-------N64------
:allN64cheats
set nextcheatlist=allSMScheats
if /i "%N64cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=N&r=*&l=all"
goto:cheatrepeat
::-------SMS------
:allSMScheats
set nextcheatlist=allGenesischeats
if /i "%SMScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=L&r=*&l=all"
goto:cheatrepeat
::-------Genesis------
:allGenesischeats
set nextcheatlist=allNEOcheats
if /i "%Segacheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=M&r=*&l=all"
goto:cheatrepeat
::-------NEO------
:allNEOcheats
set nextcheatlist=allCOMcheats
if /i "%NeoGeocheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=E&r=*&l=all"
goto:cheatrepeat
::-------COMMODORE------
:allCOMcheats
set nextcheatlist=allMSXcheats
if /i "%Commodorecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=C&r=*&l=all"
goto:cheatrepeat
::-------MSX------
:allMSXcheats
set nextcheatlist=allT16cheats
if /i "%MSXcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=X&r=*&l=all"
goto:cheatrepeat
::-------T16------
:allT16cheats
set nextcheatlist=allTCDcheats
if /i "%TurboGraFX-16cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=P&r=*&l=all"
goto:cheatrepeat
::-------TCD------
:allTCDcheats
set nextcheatlist=skipall
if /i "%TurboGraFX-CDcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=Q&r=*&l=all"
goto:cheatrepeat
:skipall
::--------------USA REGION---------------
if /i "%cheatregion%" NEQ "USA" goto:skipUSA
::-------Wii Games--------
set nextcheatlist=USAwiiwarecheats
if /i "%wiicheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=R&r=E&l=all"
goto:cheatrepeat
::-------WiiWare------
:USAwiiwarecheats
set nextcheatlist=USAvccheats
if /i "%WiiWarecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=W&r=E&l=all"
goto:cheatrepeat
::-------VC Arcade------
:USAVCcheats
set nextcheatlist=USAwiichannelcheats
if /i "%VCArcadecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=D&r=E&l=all"
goto:cheatrepeat
::-------Wii Channels------
:USAwiichannelcheats
set nextcheatlist=USAGCcheats
if /i "%WiiChannelscheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=H&r=E&l=all"
goto:cheatrepeat
::-------Gamecube------
:USAGCcheats
set nextcheatlist=USANEScheats
if /i "%Gamecubecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=G&r=E&l=all"
goto:cheatrepeat
::-------NES------
:USANEScheats
set nextcheatlist=USASNEScheats
if /i "%NEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=F&r=E&l=all"
goto:cheatrepeat
::-------SNES------
:USASNEScheats
set nextcheatlist=USAN64cheats
if /i "%SNEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=J&r=E&l=all"
goto:cheatrepeat
::-------N64------
:USAN64cheats
set nextcheatlist=USASMScheats
if /i "%N64cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=N&r=E&l=all"
goto:cheatrepeat
::-------SMS------
:USASMScheats
set nextcheatlist=USAGenesischeats
if /i "%SMScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=L&r=E&l=all"
goto:cheatrepeat
::-------Genesis------
:USAGenesischeats
set nextcheatlist=USANEOcheats
if /i "%Segacheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=M&r=E&l=all"
goto:cheatrepeat
::-------NEO------
:USANEOcheats
set nextcheatlist=USACOMcheats
if /i "%NeoGeocheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=E&r=E&l=all"
goto:cheatrepeat
::-------COMMODORE------
:USACOMcheats
set nextcheatlist=USAMSXcheats
if /i "%Commodorecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=C&r=E&l=all"
goto:cheatrepeat
::-------MSX------
:USAMSXcheats
set nextcheatlist=USAT16cheats
if /i "%MSXcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=X&r=E&l=all"
goto:cheatrepeat
::-------T16------
:USAT16cheats
set nextcheatlist=USATCDcheats
if /i "%TurboGraFX-16cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=P&r=E&l=all"
goto:cheatrepeat
::-------TCD------
:USATCDcheats
set nextcheatlist=skipUSA
if /i "%TurboGraFX-CDcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=Q&r=E&l=all"
goto:cheatrepeat
:skipUSA
::--------------PAL REGION---------------
if /i "%cheatregion%" NEQ "PAL" goto:skipPAL
::-------Wii Games--------
set nextcheatlist=PALwiiwarecheats
if /i "%wiicheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=R&r=P&l=all"
goto:cheatrepeat
::-------WiiWare------
:PALwiiwarecheats
set nextcheatlist=PALvccheats
if /i "%WiiWarecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=W&r=P&l=all"
goto:cheatrepeat
::-------VC Arcade------
:PALVCcheats
set nextcheatlist=PALwiichannelcheats
if /i "%VCArcadecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=D&r=P&l=all"
goto:cheatrepeat
::-------Wii Channels------
:PALwiichannelcheats
set nextcheatlist=PALGCcheats
if /i "%WiiChannelscheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=H&r=P&l=all"
goto:cheatrepeat
::-------Gamecube------
:PALGCcheats
set nextcheatlist=PALNEScheats
if /i "%Gamecubecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=G&r=P&l=all"
goto:cheatrepeat
::-------NES------
:PALNEScheats
set nextcheatlist=PALSNEScheats
if /i "%NEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=F&r=P&l=all"
goto:cheatrepeat
::-------SNES------
:PALSNEScheats
set nextcheatlist=PALN64cheats
if /i "%SNEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=J&r=P&l=all"
goto:cheatrepeat
::-------N64------
:PALN64cheats
set nextcheatlist=PALSMScheats
if /i "%N64cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=N&r=P&l=all"
goto:cheatrepeat
::-------SMS------
:PALSMScheats
set nextcheatlist=PALGenesischeats
if /i "%SMScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=L&r=P&l=all"
goto:cheatrepeat
::-------Genesis------
:PALGenesischeats
set nextcheatlist=PALNEOcheats
if /i "%Segacheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=M&r=P&l=all"
goto:cheatrepeat
::-------NEO------
:PALNEOcheats
set nextcheatlist=PALCOMcheats
if /i "%NeoGeocheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=E&r=P&l=all"
goto:cheatrepeat
::-------COMMODORE------
:PALCOMcheats
set nextcheatlist=PALMSXcheats
if /i "%Commodorecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=C&r=P&l=all"
goto:cheatrepeat
::-------MSX------
:PALMSXcheats
set nextcheatlist=PALT16cheats
if /i "%MSXcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=X&r=P&l=all"
goto:cheatrepeat
::-------T16------
:PALT16cheats
set nextcheatlist=PALTCDcheats
if /i "%TurboGraFX-16cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=P&r=P&l=all"
goto:cheatrepeat
::-------TCD------
:PALTCDcheats
set nextcheatlist=skipPAL
if /i "%TurboGraFX-CDcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=Q&r=P&l=all"
goto:cheatrepeat
:skipPAL
::--------------JPN REGION---------------
if /i "%cheatregion%" NEQ "JPN" goto:skipJPN
::-------Wii Games--------
set nextcheatlist=JPNwiiwarecheats
if /i "%wiicheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=R&r=J&l=all"
goto:cheatrepeat
::-------WiiWare------
:JPNwiiwarecheats
set nextcheatlist=JPNvccheats
if /i "%WiiWarecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=W&r=J&l=all"
goto:cheatrepeat
::-------VC Arcade------
:JPNVCcheats
set nextcheatlist=JPNwiichannelcheats
if /i "%VCArcadecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=D&r=J&l=all"
goto:cheatrepeat
::-------Wii Channels------
:JPNwiichannelcheats
set nextcheatlist=JPNGCcheats
if /i "%WiiChannelscheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=H&r=J&l=all"
goto:cheatrepeat
::-------Gamecube------
:JPNGCcheats
set nextcheatlist=JPNNEScheats
if /i "%Gamecubecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=G&r=J&l=all"
goto:cheatrepeat
::-------NES------
:JPNNEScheats
set nextcheatlist=JPNSNEScheats
if /i "%NEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=F&r=J&l=all"
goto:cheatrepeat
::-------SNES------
:JPNSNEScheats
set nextcheatlist=JPNN64cheats
if /i "%SNEScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=J&r=J&l=all"
goto:cheatrepeat
::-------N64------
:JPNN64cheats
set nextcheatlist=JPNSMScheats
if /i "%N64cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=N&r=J&l=all"
goto:cheatrepeat
::-------SMS------
:JPNSMScheats
set nextcheatlist=JPNGenesischeats
if /i "%SMScheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=L&r=J&l=all"
goto:cheatrepeat
::-------Genesis------
:JPNGenesischeats
set nextcheatlist=JPNNEOcheats
if /i "%Segacheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=M&r=J&l=all"
goto:cheatrepeat
::-------NEO------
:JPNNEOcheats
set nextcheatlist=JPNCOMcheats
if /i "%NeoGeocheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=E&r=J&l=all"
goto:cheatrepeat
::-------COMMODORE------
:JPNCOMcheats
set nextcheatlist=JPNMSXcheats
if /i "%Commodorecheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=C&r=J&l=all"
goto:cheatrepeat
::-------MSX------
:JPNMSXcheats
set nextcheatlist=JPNT16cheats
if /i "%MSXcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=X&r=J&l=all"
goto:cheatrepeat
::-------T16------
:JPNT16cheats
set nextcheatlist=JPNTCDcheats
if /i "%TurboGraFX-16cheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=P&r=J&l=all"
goto:cheatrepeat
::-------TCD------
:JPNTCDcheats
set nextcheatlist=skipJPN
if /i "%TurboGraFX-CDcheat%" NEQ "on" goto:%nextcheatlist%
start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t10 -T30 --random-wait --accept index*l=all "https://codes.rc24.xyz/index.php?chid=Q&r=J&l=all"
goto:cheatrepeat
:skipJPN
support\sfk filter -quiet codeindex.txt -+"index.php?c=******" -write -yes
goto:nextstep
::----------DISABLED------------
::-----remove titles that already exist (if applicable)---------
if /i "%overwritecodes%" EQU "on" goto:nextstep
if not exist "%drive%"\txtcodes\*.txt goto:nextstep
::echo Checking for new cheat codes
::echo This could take a minute, please wait...
::echo.
echo The following cheats already exist and will be removed from the download queue:
echo.
dir /b "%drive%"\txtcodes>existingcodes.txt
support\sfk filter -quiet existingcodes.txt -+.txt -rep _.txt__ -write -yes
::Loop through the existing list of codes (existingcodes.txt) and remove each existing game from codeindex.txt
for /F "tokens=*" %%A in (existingcodes.txt) do call :processthis %%A
goto:nextstep
:processthis
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set removetitleID=%*
echo Skipping %removetitleID%.txt...
support\sfk filter -quiet codeindex.txt -!%removetitleID% -write -yes
goto:EOF
:nextstep
if exist existingcodes.txt del existingcodes.txt>nul
support\sfk filter codeindex.txt -unique -write -yes>nul
FINDSTR /N href codeindex.txt>codeindexfull.txt
del codeindex.txt>nul
::totalcodes
setlocal ENABLEDELAYEDEXPANSION
set totalcodes=0
set codenumber=0
for /f "delims=" %%i in (codeindexfull.txt) do set /a totalcodes=!totalcodes!+1
setlocal DISABLEDELAYEDEXPANSION
echo.
:processcode
copy /y codeindexfull.txt codeindexfull2.txt>nul
if /i "%totalcodes%" EQU "%codenumber%" goto:nextstep
set /a codenumber=%codenumber%+1
support\sfk filter -quiet codeindexfull2.txt -ls+"%codenumber%:<" -ls!"%codenumber%%codenumber%:<" -ls!"%codenumber%%codenumber%%codenumber%:<" -rep _"*title='*["_"set titleid="_ -rep _"] *"__ -rep _"set titleid=set titleid="_"set titleid="_ -write -yes
::support\sfk filter -quiet codeindexfull2.txt -ls+"%codenumber%:<" -ls!"%codenumber%%codenumber%:<" -ls!"%codenumber%%codenumber%%codenumber%:<" -rep _"*'Wii ["_"set titleid="_ -rep _"] *"__ -write -yes
FINDSTR /N set codeindexfull2.txt>codeindex.bat
del codeindexfull2.txt>nul
support\sfk filter -quiet codeindex.bat -ls+"1:" -rep _"1:"__ -write -yes
call codeindex.bat
del codeindex.bat>nul
::now get game name!!
copy /y codeindexfull.txt codeindexTitle.bat>nul
::add in delay so support\sfk has access to codeindexTitle.bat (Foez reported bug)
::@ping 127.0.0.1 -n 1 -w 1500> nul
support\sfk filter -quiet codeindexTitle.bat -+"%titleid%" -rep _"*c=%titleid%"_"set titlename="_ -rep _" [%titleid%]*"_"""_ -rep _>__ -write -yes
support\sfk filter -quiet codeindexTitle.bat -ls+"set titlename=" -write -yes
call codeindexTitle.bat
del codeindexTitle.bat>nul
::if /i "%cheatlocation%" EQU "T" goto:skipconsoleinfo
::now get console!!
copy /y codeindexfull.txt codeindexConsole.bat>nul
support\sfk filter -quiet codeindexConsole.bat -+"%titleid%" -rep _"*sysn' title='"_"set console="_ -rep _"'>[*"_"""_ -write -yes
support\sfk filter -quiet codeindexConsole.bat -rep _"""__ -write -yes
support\sfk filter -quiet codeindexConsole.bat -ls+"set console=" -write -yes
call codeindexConsole.bat
del codeindexConsole.bat>nul
::get console code
set consolecode=
if /i "%console%" EQU "Wii" set consolecode=R
if /i "%console%" EQU "WiiWare" set consolecode=W
if /i "%console%" EQU "VC Arcade" set consolecode=D
if /i "%console%" EQU "GameCube" set consolecode=G
::Wii Channels(H)-currently no codes, so unsure of "Wii Channels"
if /i "%console%" EQU "Wii Channels" set consolecode=H
if /i "%console%" EQU "NES/Famicom VC" set consolecode=F
if /i "%console%" EQU "Super NES/Famicom VC" set consolecode=J
if /i "%console%" EQU "Nintendo 64 VC" set consolecode=N
if /i "%console%" EQU "Sega Master System VC" set consolecode=L
if /i "%console%" EQU "Sega Genesis/Mega Drive VC" set consolecode=M
if /i "%console%" EQU "NeoGeo VC" set consolecode=E
if /i "%console%" EQU "Commodore 64 VC" set consolecode=C
if /i "%console%" EQU "MSX VC" set consolecode=X
if /i "%console%" EQU "TurboGraFX-16 VC" set consolecode=P
if /i "%console%" EQU "TurboGraFX-CD VC" set consolecode=Q
::get first letter of titlename (actually second letter cuz first one is ")
set letter1=%titlename:~1,1%
if /i "%letter1%" EQU "0" set letter1=#
if /i "%letter1%" EQU "1" set letter1=#
if /i "%letter1%" EQU "2" set letter1=#
if /i "%letter1%" EQU "3" set letter1=#
if /i "%letter1%" EQU "4" set letter1=#
if /i "%letter1%" EQU "5" set letter1=#
if /i "%letter1%" EQU "6" set letter1=#
if /i "%letter1%" EQU "7" set letter1=#
if /i "%letter1%" EQU "8" set letter1=#
if /i "%letter1%" EQU "9" set letter1=#
:skipconsoleinfo
::echo %titlename%
::echo %titleid%
::echo %console%
::echo %consolecode%
::echo %letter1%
echo.
echo Downloading Cheat %codenumber% of %totalcodes%: %titlename% [%titleid%]
if /i "%cheatlocation%" EQU "T" goto:skip
if not exist "%drive%\codes\%consolecode%\%letter1%" mkdir "%drive%\codes\%consolecode%\%letter1%"
:skip
if /i "%overwritecodes%" EQU "on" goto:overwritecheat
::----copy existing codes to alternate location if missing----
if /i "%cheatlocation%" EQU "C" goto:skip
if not exist "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" goto:skip
if not exist "%drive%\txtcodes\%titleid%.txt" echo Copying from codes\%consolecode%\%letter1%\%titleid%.txt to txtcodes\%titleid%.txt
if not exist "%drive%\txtcodes\%titleid%.txt" copy /y "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" "%drive%\txtcodes\%titleid%.txt">nul
:skip
if /i "%cheatlocation%" EQU "T" goto:skip
if not exist "%drive%\txtcodes\%titleid%.txt" goto:skip
if not exist "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" echo Copying from txtcodes\%titleid%.txt to codes\%consolecode%\%letter1%\%titleid%.txt
if not exist "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" copy /y "%drive%\txtcodes\%titleid%.txt" "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt">nul
:skip
if /i "%cheatlocation%" EQU "C" goto:skip
if not exist "%drive%\txtcodes\%titleid%.txt" goto:downloadcheat
:skip
if /i "%cheatlocation%" EQU "T" goto:skip
if not exist "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" goto:downloadcheat
:skip
echo %titleid%.txt already exists,
echo Skipping download...
echo.
goto:processcode
:overwritecheat
if /i "%cheatlocation%" EQU "C" goto:skip
if exist "%drive%\txtcodes\%titleid%.txt" echo Overwriting %drive%\txtcodes\%titleid%.txt...
:skip
if /i "%cheatlocation%" EQU "T" goto:skip
if exist "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt" echo Overwriting %drive%\codes\%consolecode%\%letter1%\%titleid%.txt...
:skip
:downloadcheat
start /min /wait support\wget --no-check-certificate "https://codes.rc24.xyz/txt.php?txt=%titleid%"
if /i "%cheatlocation%" EQU "T" move /y "txt.php@txt=%titleid%" "%drive%\txtcodes\%titleid%.txt">nul
if /i "%cheatlocation%" EQU "C" move /y "txt.php@txt=%titleid%" "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt">nul
if /i "%cheatlocation%" EQU "B" copy /y "txt.php@txt=%titleid%" "%drive%\txtcodes\%titleid%.txt">nul
if /i "%cheatlocation%" EQU "B" move /y "txt.php@txt=%titleid%" "%drive%\codes\%consolecode%\%letter1%\%titleid%.txt">nul
::for some reason VC downloads fail, and they leave index.html as a trace instead
if exist index.html del index.html>nul
goto:processcode
:nextstep
del codeindexfull.txt>nul
del codeindexfull2.txt>nul
::Simple Check
if /i "%cheatlocation%" EQU "C" goto:skip
If exist "%DRIVE%"\txtcodes\*.txt echo "echo Cheat Codes: Found">>temp\ModMii_Log.bat
If not exist "%DRIVE%"\txtcodes\*.txt echo "support\sfk echo Cheat Codes: [%redtext%]Missing">>temp\ModMii_Log.bat
:skip
if /i "%cheatlocation%" EQU "B" goto:skip
if /i "%cheatlocation%" EQU "T" goto:skip
If exist "%DRIVE%"\codes echo "echo Cheat Codes: Found">>temp\ModMii_Log.bat
If not exist "%DRIVE%"\codes echo "support\sfk echo Cheat Codes: [%redtext%]Missing">>temp\ModMii_Log.bat
:skip
goto:NEXT
::------------------------NUS File Grabber Downloader---------------------
:DownloadApp
if /i "%code1%" EQU "MYMAPP" goto:MYMAPP
::SNEEKAPP
if not exist "%Drive%"\SNEEKFILES mkdir "%Drive%"\SNEEKFILES
goto:skip
:MYMAPP
if not exist "%Drive%"\ModThemes mkdir "%Drive%"\ModThemes
:skip
set filename=%wadname%
if /i "%code1%" EQU "SNEEKAPP" set path1=SNEEKFILES\
if /i "%code1%" EQU "MYMAPP" set path1=ModThemes\
set md5alt=%md5%
goto:DownloadURL
:DownloadApp2
set dlname=%wadname:~0,8%.app
if exist temp\%wadname% goto:AlreadyinTemp
support\NusFileGrabber.exe %version% http://ccs.cdn.sho.rc24.xyz/ccs/download/
move /Y "%dlname%" temp\%wadname%>nul
:AlreadyinTemp
if /i "%code1%" EQU "MYMAPP" copy /Y temp\"%wadname%" "%Drive%"\ModThemes\%wadname%>nul
if /i "%code1%" EQU "SNEEKAPP" copy /Y temp\"%wadname%" "%Drive%"\SNEEKFILES\%wadname%>nul
goto:URLverifyretry
::-------------------------Download from URLs------------------------------
:DownloadURL
::----if exist and fails md5 check, delete and redownload----
if not exist "%Drive%\%path1%%filename%" goto:nocheckexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%\%path1%%filename%"
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%\%path1%%filename%">nul
if exist temp\%wadname% del temp\%wadname%>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:rootYAWMcheck
:nocheckexisting
if /i "%code1%" EQU "MYMAPP" goto:DownloadApp2
if /i "%code1%" EQU "SNEEKAPP" goto:DownloadApp2
:DownloadURL2
if not exist temp\%wadname% start /min /wait support\wget --no-check-certificate %code2%
if exist %dlname% move /y %dlname% temp\%wadname% >nul
support\7za e -aoa temp\%wadname% -o"%Drive%"\%path1% *.%version% -r
::save identifier for bannerbombs
if /i "%dlname%" EQU "aad1f_v108.zip" echo Bannerbombv1 >"%Drive%\%path1%Bannerbomb_v1.txt"
if /i "%dlname%" EQU "abd6a_v200.zip" echo Bannerbombv2 >"%Drive%\%path1%Bannerbomb_v2.txt"
:URLverifyretry
if "%DRIVErestore%"=="" set "DRIVErestore=%Drive%"
::----check after downloading - if md5 check fails, delete and redownload----
if exist "%Drive%\%path1%%filename%" goto:checkexisting
:missing
:missingauto
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set "DRIVE=%DRIVErestore%"
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
set "DRIVE=%DRIVErestore%"
if /i "%category%" EQU "auto" goto:DOWNLOADSTART2
if exist temp\%wadname% del temp\%wadname%>nul
goto:DOWNLOADSTART2
:checkexisting
if /i "%category%" EQU "auto" goto:autopass
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%\%path1%%filename%"
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%\%path1%%filename%">nul
if exist temp\%wadname% del temp\%wadname%>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
set "DRIVE=%DRIVErestore%"
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set "DRIVE=%DRIVErestore%"
set multiplefail=Y
if /i "%KeepInvalidOverride%" NEQ "Y" (if exist "%Drive%\%path1%%filename%" del "%Drive%\%path1%%filename%">nul)
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Invalid">>temp\ModMii_Log.bat
goto:NEXT
:autopass
echo.
if exist "temp\%wadname%" (support\sfk echo [%greentext%]Download Successful) else (support\sfk echo [%redtext%]Download Failed [%yellowtext%]but Already Exists on Drive)
echo.
set "DRIVE=%DRIVErestore%"
if exist "temp\%wadname%" (echo "echo %name%: Found">>temp\ModMii_Log.bat) else (echo "support\sfk echo %name%: [%yellowtext%]Found [%redtext%]but not updated">>temp\ModMii_Log.bat)
goto:rootYAWMcheck
:pass
echo.
support\sfk echo [%greentext%]Download Successful
echo.
set "DRIVE=%DRIVErestore%"
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
::save YAWM's elf and dol to root when applicable
:rootYAWMcheck
if /i "%wadname%" NEQ "yawmME.zip" goto:next
if /i "%AbstinenceWiz%" EQU "Y" goto:rootYAWM
if /i "%MENU1%" EQU "H" goto:rootYAWM
if /i "%virgin%" EQU "N" goto:next
If /i "%FIRMSTART%" EQU "4.3" goto:next
if /i "%REGION%" EQU "K" goto:rootYAWM
goto:next
::-----Bannerbomb yawmME instead of HackMii installer------
:rootYAWM
if exist "%Drive%"\apps\yawmME\yawmME_boot.elf copy /Y "%Drive%"\apps\yawmME\yawmME_boot.elf "%Drive%"\boot.elf >nul
if exist "%Drive%"\apps\yawmME\boot.dol copy /Y "%Drive%"\apps\yawmME\boot.dol "%Drive%"\boot.dol >nul
if /i "%AbstinenceWiz%" EQU "Y" copy /Y "Support\ExploitAppSelector.bat" "%Drive%\ExploitAppSelector.bat" >nul
goto:NEXT
::----------------------------------------
:fullextract
set "DRIVErestore=%Drive%"
if /i "%wadname%" EQU "WiiBackupManager.zip" goto:doit
if /i "%name%" EQU "ShowMiiWads" goto:doit
if /i "%filename%" EQU "CustomizeMii.exe" goto:doit
if /i "%filename%" EQU "WiiGSC.exe" goto:doit
if /i "%CODE1%" EQU "PC" goto:doit
goto:skip
:doit
if /i "%PCSAVE%" EQU "Local" set "DRIVE=%cd%"
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" set "DRIVE=%cd%"
:skip
if not exist "%Drive%" mkdir "%Drive%"
::no md5 check for dml
::if /i "%name%" NEQ "%CurrentDMLRev%" goto:notdios
::if exist "temp\DML\%wadname%" (goto:FullExtractZipAlreadyExists) else (goto:nocheckexisting)
:::notdios
::---------no md5 check for AUTO category------------------
if /i "%category%" NEQ "auto" goto:notauto
if /i "%attempt%" NEQ "1" start /min /wait support\wget --no-check-certificate %code2%
if /i "%attempt%" NEQ "1" goto:skip
if /i "%AUSKIP%" EQU "OFF" start /min /wait support\wget --no-check-certificate %code2%
if /i "%AUSKIP%" EQU "OFF" goto:skip
:jumpAUSKIP
::Auto-Updating downloads will skip update check if cached on first attempt only
if exist "temp\%wadname%" goto:fullextract2
start /min /wait support\wget --no-check-certificate %code2%
:skip
if exist %dlname% (move /y %dlname% "temp\%wadname%">nul) & (goto:fullextract2)
if /i "%attempt%" EQU "1" goto:missingauto
if exist "temp\%wadname%" goto:fullextract2
goto:URLverifyretry
:notauto
::skip checks for Twilight beta1 and beta2
if /i "%wadname%" NEQ "twilight_hack_v0.1_beta1.zip" goto:fullextract2
if /i "%wadname%" NEQ "Twilight-hack-v0.1-beta2.zip" goto:fullextract2
::----if exist and fails md5 check, delete and redownload----
if not exist "%Drive%\%path1%%filename%" goto:nocheckexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%\%path1%%filename%"
if errorlevel 1 set md5check=fail
if /i "%wadname%" NEQ "bootmii_sd_files.zip" goto:notbootmiisd
set md5check=fail
support\sfk md5 -quiet -verify %md5% "%Drive%\%path1%%filename%"
if not errorlevel 1 set md5check=pass
support\sfk md5 -quiet -verify %md5alt% "%Drive%\%path1%%filename%"
if not errorlevel 1 set md5check=pass
set md5alt=
:notbootmiisd
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
del "%Drive%\%path1%%filename%">nul
if exist temp\%wadname% del temp\%wadname%>nul
set "DRIVE=%DRIVErestore%"
goto:DOWNLOADSTART2
:pass
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
set "DRIVE=%DRIVErestore%"
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:NEXT
:nocheckexisting
:fullextract2
if exist "temp\%wadname%" goto:FullExtractZipAlreadyExists
if not exist "temp\%dlname%" (start /min /wait support\wget --no-check-certificate %code2%) else (move /y "temp\%dlname%" "temp\%wadname%">nul)
if exist "%dlname%" move /y "%dlname%" "temp\%wadname%">nul
:FullExtractZipAlreadyExists
::extract selected apps differently...
if /i "%CODE1%" EQU "PC" goto:PC
if /i "%path1%" NEQ "apps\MyMenuifyMod\" goto:notmym
support\7za e -aoa temp\%wadname% -o"%Drive%"\%path1% *.%version% -r
goto:skipnormalextraction
:notmym
if /i "%path1%" NEQ "apps\usbloader_gx\" goto:notGX
support\7za x -aoa temp\%wadname% -o"%Drive%"
::---!!!DISABLED BUILDING CONFIG!!!---::
goto:skipnormalextraction
::create config file only if doesn't exist already to return to IDCL forwarder, but only if the forwarder is also being downloaded
if exist "%Drive%\%path1%GXGlobal.cfg" goto:skipnormalextraction
if /i "%USBX%" NEQ "*" goto:skipnormalextraction
echo # USB Loader GX R1272 - Main settings file>"%Drive%\%path1%GXGlobal.cfg"
echo # Note: This file is automatically generated by ModMii to set returnTo IDCL>>"%Drive%\%path1%GXGlobal.cfg"
echo returnTo = 4944434c>>"%Drive%\%path1%GXGlobal.cfg"
goto:skipnormalextraction
:notGX
if /i "%path1%" NEQ "apps\wiiflow\" goto:notFLOW
support\7za x -aoa temp\%wadname% -o"%Drive%" -x!wfl*changes.txt
::---!!!DISABLED BUILDING CONFIG!!!---::
goto:skipnormalextraction
::create config file only if doesn't exist already to return to IDCL forwarder, but only if the forwarder is also being downloaded, and not downloading GX with has boot sequence priority
if exist "%Drive%\%path1%wiiflow_lite.ini" goto:skipnormalextraction
if /i "%USBX%" NEQ "*" goto:skipnormalextraction
if /i "%usbgx%" EQU "*" goto:skipnormalextraction
if exist "%Drive%\apps\usbloader_gx\boot.dol" goto:skipnormalextraction
echo [GENERAL]>"%Drive%\%path1%wiiflow_lite.ini"
echo returnto=IDCL>>"%Drive%\%path1%wiiflow_lite.ini"
goto:skipnormalextraction
:notFLOW
if /i "%path1%" EQU "apps\Priiloader\" (support\7za X -aoa "temp\%wadname%" -o"%Drive%" -r) & (goto:skipnormalextraction)
if /i "%wadname%" EQU "USBLoader(s)-ahbprot58-SD-USB-v14-IDCL.zip" support\7za x -aoa temp\%dlname% -o"%Drive%" *.%version% -r
if /i "%wadname%" EQU "USBLoader(s)-ahbprot58-SD-USB-v14-IDCL.zip" goto:skipnormalextraction
if /i "%wadname%" EQU "indiana-pwns.zip" (support\7za X -aoa "temp\%wadname%" -o"%Drive%" private -r) & (goto:skipnormalextraction)
if /i "%wadname%" EQU "bathaxx.zip" support\7za X -aoa "temp\%wadname%" -o"%Drive%" private -r
if /i "%wadname%" EQU "bathaxx.zip" goto:skipnormalextraction
if /i "%wadname%" EQU "return-jodi.zip" support\7za X -aoa "temp\%wadname%" -o"%Drive%" private -r
if /i "%wadname%" EQU "return-jodi.zip" goto:skipnormalextraction
if /i "%wadname%" EQU "EriHaKawai-USA+PAL.zip" support\7za X -aoa "temp\%wadname%" -o"%Drive%" private -r
if /i "%wadname%" EQU "EriHaKawai-USA+PAL.zip" goto:skipnormalextraction
::if /i "%name%" EQU "Neogamma Backup Disc Loader" (support\7za X -aoa "temp\%wadname%" -o"%Drive%" apps -r) & (support\7za X -aoa "temp\%wadname%" -o"%Drive%" NeoGamma -r) & (goto:skipnormalextraction)
if /i "%path1%" EQU "apps\SIP\" (support\7za X -aoa "temp\%wadname%" -o"%Drive%" apps -r) & (goto:skipnormalextraction)
if /i "%name%" NEQ "WiiFlow Forwarder Channel\dol" goto:skipFLOWF
::if /i "%MENU1%" EQU "S" support\7za e -aoa temp\%dlname% -o"%Drive%"/ *.wad *.dol -r
support\7za X -aoa temp\%dlname% -o"%Drive%" -r
goto:skipnormalextraction
:skipFLOWF
if /i "%name%" NEQ "switch2uneek" goto:skipS2U
if /i "%MENU1%" EQU "S" support\7za e -aoa temp\%wadname% -o"%Drive%/WAD"/ %filename% -r
if /i "%MENU1%" EQU "S" goto:skipnormalextraction
::for when MENU1 not equal to "S"
support\7za x -aoa temp\%dlname% -o"%Drive%" -r -x!switch2uneek-4EMUNand-v12-S2RL.wad
if not exist "%DRIVEU%" mkdir "%DRIVEU%"
if not exist "%DRIVEU%"\nandpath.txt echo NOFILE>"%DRIVEU%"\nandpath.txt
if exist "%DRIVEU%"\nandslot.bin goto:skipnormalextraction
echo 00000000>dump.txt
support\sfk filter dump.txt +hextobin "%DRIVEU%"\nandslot.bin
del dump.txt>nul
goto:skipnormalextraction
:skipS2U
if /i "%name%" NEQ "Casper" goto:skipcasper
if not exist "%Drive%\apps\Casper" mkdir "%Drive%\apps\Casper"
support\7za e -aoa "temp\%wadname%" -otemp *.* -r
support\7za e -aoa "temp\%wadname:~0,-3%" -o"%Drive%\apps\Casper" *.* -r
move /y "%Drive%\apps\Casper\casper_0.3.elf" "%Drive%\apps\Casper\boot.elf">nul
copy /y "%Drive%\apps\Casper\boot.elf" "%Drive%\boot.elf">nul
::erase boot.dol on root if exists as some cases will prioritize it over boot.elf
if exist "%Drive%\boot.dol" del "%Drive%\boot.dol"> nul
::abstinence wizard only - boot exploit-mmm instead of casper
if /i "%AbstinenceWiz%" NEQ "Y" goto:skipnormalextraction
if /i "%FIRMSTART%" EQU "4.3" goto:skipnormalextraction
if /i "%FIRMSTART%" EQU "4.2" goto:skipnormalextraction
if exist "%Drive%"\apps\yawmME\yawmME_boot.elf copy /Y "%Drive%"\apps\yawmME\yawmME_boot.elf "%Drive%"\boot.elf >nul
if exist "%Drive%"\apps\yawmME\boot.dol copy /Y "%Drive%"\apps\yawmME\boot.dol "%Drive%"\boot.dol >nul
::copy /Y "Support\ExploitAppSelector.bat" "%Drive%\ExploitAppSelector.bat" >nul
goto:skipnormalextraction
:skipcasper
if /i "%name%" NEQ "Wilbrand" goto:skipWilbrand
echo Wilbrand by giantpune
echo.
echo MAC:%macaddress%
echo 4.3%REGION%
echo.
::get yesterday's date
set CurDate=
if exist date.vbs del /f /q date.vbs
>date.vbs echo wscript.echo Right(String(2,"0") ^& Month(date), 2) ^& "/" ^& Right(String(2,"0") ^& Day(date), 2) ^& "/" ^& Year(date)
for /f "tokens=*" %%a in ('cscript//nologo date.vbs') do set CurDate=%%a
if exist date.vbs del /f /q date.vbs
Set Day=%CurDate:~3,2%
Set Month=%CurDate:~0,2%
Set Year=%CurDate:~-4%
if /i "%day%" NEQ "01" (set /a day=%day%-1) & (goto:yesterday)
::jan to dec
if /i "%month%" EQU "01" (set /a year=%year%-1) & (set day=31) & (set month=12) & (goto:yesterday)
set /a month=%month%-1
if "%month:~1%"=="" set month=0%month%
if /i "%month%" EQU "01" set day=31
if /i "%month%" EQU "02" set day=28
if /i "%month%" EQU "03" set day=31
if /i "%month%" EQU "04" set day=30
if /i "%month%" EQU "05" set day=31
if /i "%month%" EQU "06" set day=30
if /i "%month%" EQU "07" set day=31
if /i "%month%" EQU "08" set day=31
if /i "%month%" EQU "09" set day=30
if /i "%month%" EQU "10" set day=31
if /i "%month%" EQU "11" set day=30
::if /i "%month%" EQU "12" set day=31
:yesterday
::echo yesterday
::echo mm/dd/yyyy
::echo %Month%/%day%/%year%
if exist temp\temp.txt del temp\temp.txt>nul
temp\wilbrand.exe %macaddress% %Month%/%day%/%year% 4.3%REGION% "%Drive%">temp\temp.txt
findStr /I /C:"Wrote to:" "temp\temp.txt" >nul
IF not ERRORLEVEL 1 (echo "echo %name% - 4.3%REGION% - MAC:%macaddress%: Valid">>temp\ModMii_Log.bat) & (echo.) & (support\sfk echo [%greentext%]Download Successful) & (echo.) & (goto:NEXT)
goto:skipnormalextraction
:skipWilbrand
if /i "%name%" NEQ "nSwitch" goto:skipnSwitch
if not exist "%Drive%\WAD" mkdir "%Drive%\WAD"
copy /y "temp\%wadname%" "%Drive%\WAD\%wadname%" >nul
goto:skipnormalextraction
:skipnSwitch
if /i "%name%" NEQ "postLoader Forwarder Channel" goto:skipPLC
if not exist "%Drive%\WAD" mkdir "%Drive%\WAD"
copy /y "temp\%wadname%" "%Drive%\WAD\%wadname%" >nul
goto:skipnormalextraction
:skipPLC
if /i "%wadname%" NEQ "Open_HBC_1.1.5_LULZ.wad" goto:skipOHBC
if not exist "%Drive%\WAD" mkdir "%Drive%\WAD"
copy /y "temp\%wadname%" "%Drive%\WAD\%wadname%" >nul
goto:skipnormalextraction
:skipOHBC
if /i "%name%" NEQ "DML" goto:skipdios
::if not exist "temp\DML" mkdir "temp\DML"
if not exist "%Drive%\WAD" mkdir "%Drive%\WAD"
::if exist "temp\%wadname%" move /y "temp\%wadname%" "temp\DML\%wadname%" >nul
copy /y "temp\%wadname%" "%Drive%\WAD\%wadname%" >nul
goto:simpleDMLcheck
:skipdios
if /i "%wadname%" NEQ "WiiBackupManager.zip" goto:notWBM
if exist "%Drive%\%path1%%filename%" (set shortcuts=n) else (set shortcuts=y)
if not exist "%Drive%\%path1%" mkdir "%Drive%\%path1%"
::support\7za x -aoa temp\%wadname% -o"%Drive%\WiiBackupManager" -r
support\7za x -aoa "temp\%wadname%" -o"%Drive%\%path1%" -r
if /i "%shortcuts%" EQU "n" goto:skip
if /i "%PCSAVE%" EQU "Local" goto:createshortcuts
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" (goto:createshortcuts) else (goto:skip)
:createshortcuts
if exist "%homedrive%\Program Files (x86)" (set OSbit=64) else (set OSbit=32)
if not exist "%Drive%\%path1%WiiBackupManager_Win%OSbit%.exe" goto:skip
support\nircmd.exe shortcut "%Drive%\%path1%WiiBackupManager_Win%OSbit%.exe" "~$folder.desktop$" "WiiBackupManager"
support\nircmd.exe shortcut "%Drive%\%path1%WiiBackupManager_Win%OSbit%.exe" "~$folder.programs$\ModMii" "WiiBackupManager"
:skip
goto:skipnormalextraction
:notWBM
if /i "%name%" NEQ "ShowMiiWads" goto:notSMW
if exist "%Drive%\%path1%%filename%" (set shortcuts=n) else (set shortcuts=y)
if not exist "%Drive%\%path1%" mkdir "%Drive%\%path1%"
support\7za x -aoa "temp\%wadname%" -o"%Drive%\%path1%" -r
if exist support\common-key.bin goto:commonkeyalreadythere
::silently build common-key.bin
echo EBE42A225E8593E448D9C5457381AAF7>support\common-key.txt
support\sfk filter support\common-key.txt +hextobin support\common-key.bin>nul
del support\common-key.txt>nul
:commonkeyalreadythere
copy /y support\common-key.bin "%Drive%\%path1%common-key.bin">nul
if /i "%shortcuts%" EQU "n" goto:skip
if /i "%PCSAVE%" EQU "Local" goto:createshortcuts
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" (goto:createshortcuts) else (goto:skip)
:createshortcuts
if exist "%homedrive%\Program Files (x86)" (set OSbit=64) else (set OSbit=32)
if not exist "%Drive%\%path1%ShowMiiWads_Win%OSbit%.exe" goto:skip
support\nircmd.exe shortcut "%Drive%\%path1%ShowMiiWads_Win%OSbit%.exe" "~$folder.desktop$" "ShowMiiWads"
support\nircmd.exe shortcut "%Drive%\%path1%ShowMiiWads_Win%OSbit%.exe" "~$folder.programs$\ModMii" "ShowMiiWads"
:skip
goto:skipnormalextraction
:notSMW
if /i "%filename%" NEQ "CustomizeMii.exe" goto:notCM
if exist "%Drive%\%path1%%filename%" (set shortcuts=n) else (set shortcuts=y)
if not exist "%Drive%\%path1%" mkdir "%Drive%\%path1%"
::download unrar if missing
if not exist temp\UnRAR.exe echo.
if not exist temp\UnRAR.exe echo Downloading UnRAR
if not exist temp\UnRAR.exe start /min /wait support\wget --no-check-certificate -t 3 "https://sourceforge.net/projects/menuui/files/UnRAR.exe"
if exist UnRAR.exe move /y UnRAR.exe temp\UnRAR.exe>nul
temp\unrar.exe x -y "temp\%wadname%" "%Drive%\%path1%"
if /i "%shortcuts%" EQU "n" goto:skip
if /i "%PCSAVE%" EQU "Local" goto:createshortcuts
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" (goto:createshortcuts) else (goto:skip)
:createshortcuts
if not exist "%Drive%\%path1%CustomizeMii.exe" goto:skip
support\nircmd.exe shortcut "%Drive%\%path1%CustomizeMii.exe" "~$folder.desktop$" "CustomizeMii"
support\nircmd.exe shortcut "%Drive%\%path1%CustomizeMii.exe" "~$folder.programs$\ModMii" "CustomizeMii"
:skip
goto:skipnormalextraction
:notCM
if /i "%filename%" NEQ "WiiGSC.exe" goto:notWiiGSC
if exist "%Drive%\%path1%%filename%" (set shortcuts=n) else (set shortcuts=y)
if not exist "%Drive%\%path1%" mkdir "%Drive%\%path1%"
support\7za x -aoa "temp\%wadname%" -o"%Drive%\%path1%" -r
if /i "%shortcuts%" EQU "n" goto:skip
if /i "%PCSAVE%" EQU "Local" goto:createshortcuts
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" (goto:createshortcuts) else (goto:skip)
:createshortcuts
if exist "%Drive%\%path1%WiiGSC.exe" support\nircmd.exe shortcut "%Drive%\%path1%WiiGSC.exe" "~$folder.desktop$" "Wii Game Shortcut Creator"
if exist "%Drive%\%path1%WiiGSC.exe" support\nircmd.exe shortcut "%Drive%\%path1%WiiGSC.exe" "~$folder.programs$\ModMii" "Wii Game Shortcut Creator"
if exist "%Drive%\%path1%CrazyInstaller.exe" support\nircmd.exe shortcut "%Drive%\%path1%CrazyInstaller.exe" "~$folder.programs$\ModMii" "Crazy Installer"
::if exist "%Drive%\%path1%KeyStego.exe" support\nircmd.exe shortcut "%Drive%\%path1%KeyStego.exe" "~$folder.programs$\ModMii" "KeyStego"
:skip
goto:skipnormalextraction
:notWiiGSC
if /i "%CODE1%" NEQ "PC" goto:notPC
:PC
if exist "%Drive%\%path1%%filename%" (set shortcuts=n) else (set shortcuts=y)
if not exist "%Drive%\%path1%" mkdir "%Drive%\%path1%"
if /i "%wadname:~-4%" EQU ".zip" goto:archive
if /i "%wadname:~-3%" EQU ".7z" goto:archive
if /i "%Drive%" NEQ "temp" copy /y "temp\%wadname%" "%Drive%\%path1%%wadname%">nul
goto:afterarchive
:archive
if /i "%version%" NEQ "2" support\7za x -aoa "temp\%wadname%" -o"%Drive%\%path1%" -r
if /i "%version%" EQU "2" support\7za x -aoa "temp\%wadname%" -o"%Drive%\Program Files\" -r
::also save HashMyFiles for drag and drop
if /i "%name%" EQU "HashMyFiles" support\7za x -aoa "temp\%wadname%" -o"temp\%dlname:~0,-4%" -r
:afterarchive
if /i "%shortcuts%" EQU "n" goto:skip
if /i "%PCSAVE%" EQU "Local" goto:createshortcuts
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" EQU "%ModMiiDrive%" (goto:createshortcuts) else (goto:skip)
:createshortcuts
if exist "%Drive%\%path1%%filename%" support\nircmd.exe shortcut "%Drive%\%path1%%filename%" "~$folder.desktop$" "%name%"
if exist "%Drive%\%path1%%filename%" support\nircmd.exe shortcut "%Drive%\%path1%%filename%" "~$folder.programs$\ModMii" "%name%"
:skip
goto:skipnormalextraction
:notPC
if /i "%path1%" NEQ "apps\usbloader_cfg\" goto:skipusbloadercfg
::rename existing usb-loader folder if applicable - DISABLED, instead apps folder will be updated, and usb-loader folder will skip files if already found
::set COUNT9=0
:::renameusbloader
::if not exist "%Drive%\usb-loader" goto:extractusbloader
::SET /a COUNT9=%COUNT9%+1
::if exist "%Drive%\usb-loader%COUNT9%" goto:renameusbloader
::move "%Drive%\usb-loader" "%Drive%\usb-loader%COUNT9%">nul
:extractusbloader
::-aoa Overwrite All existing files without prompt for app folder ONLY
support\7za x -aoa temp\%wadname% -o"%Drive%" -x!usb-loader
::-aos Skip extracting of existing files
support\7za x -aos temp\%wadname% -o"%Drive%" -x!apps
::---!!!DISABLED BUILDING CONFIG!!!---::
goto:noIDCL
::only set return to IDCL if config doesn't exist, and if the forwarder is also being downloaded, and not downloading GX & Flow which have boot sequence priority
if exist "%DRIVE%\usb-loader\config.txt" goto:noIDCL
if /i "%USBX%" NEQ "*" goto:noIDCL
if /i "%usbgx%" EQU "*" goto:noIDCL
if /i "%FLOW%" EQU "*" goto:noIDCL
if exist "%Drive%\apps\usbloader_gx\boot.dol" goto:noIDCL
if exist "%Drive%\apps\wiiflow\boot.dol" goto:noIDCL
echo return_to_channel = IDCL>>"%DRIVE%\usb-loader\config.txt"
:noIDCL
::------extra for USB-Loader Setup Guide-------
::FAT or NTFS partition will only be valid if the \wbfs folder exists
if not exist "%Drive%\WBFS" mkdir "%Drive%\WBFS"
::---!!!DISABLED BUILDING CONFIG!!!---::
goto:skipnormalextraction
if not exist "%DRIVE%"\usb-loader\music mkdir "%DRIVE%"\usb-loader\music
echo Save music Here>"%DRIVE%\usb-loader\music\Save MP3s Here To Play at USB-Loader Menu"
if /i "%USBCONFIG%" EQU "USB" echo music = usb:/usb-loader/music>>"%DRIVE%\usb-loader\config.txt"
if /i "%USBCONFIG%" NEQ "USB" echo music = sd:/usb-loader/music>>"%DRIVE%\usb-loader\config.txt"
echo unlock_password = AAAA>>"%DRIVE%\usb-loader\config.txt"
echo disable_remove = BLAHBLAH>>"%DRIVE%\usb-loader\config.txt"
echo disable_format = BLAHBLAH>>"%DRIVE%\usb-loader\config.txt"
echo admin_unlock = BLAHBLAH>>"%DRIVE%\usb-loader\config.txt"
support\sfk filter -write -yes "%DRIVE%\usb-loader\config.txt" -rep _BLAHBLAH_1_> nul
:skip
if /i "%USBCONFIG%" NEQ "USB" goto:skip
echo covers_path = usb:/usb-loader/covers>>"%DRIVE%\usb-loader\config.txt"
echo covers_path_2d = usb:/usb-loader/covers/2d>>"%DRIVE%\usb-loader\config.txt"
echo covers_path_3d = usb:/usb-loader/covers/3d>>"%DRIVE%\usb-loader\config.txt"
echo covers_path_disc = usb:/usb-loader/covers/disc>>"%DRIVE%\usb-loader\config.txt"
echo covers_path_full = usb:/usb-loader/covers/full>>"%DRIVE%\usb-loader\config.txt"
::if /i "%FORMAT%" EQU "2" support\sfk filter -write -yes "%DRIVE%\usb-loader\config.txt" -rep _usb:_ntfs:_> nul
:skip
goto:skipnormalextraction
:skipusbloadercfg
if /i "%wadname%" NEQ "twilight_hack_v0.1_beta1.zip" goto:skipTWI
::add logic for 2nd private folder if v2 detected
::TWILIGHT2 USA
if exist "%DRIVE%\private\wii\title\rzde_twilight_beta2\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzde\data.bin" goto:skip
support\sfk md5 -quiet -verify 225c218815eda839b2fa03729ebe067b "%DRIVE%\private\wii\title\rzde\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzde" "%DRIVE%\private\wii\title\rzde_twilight_beta2"> nul
:skip
::TWILIGHT2 JPN
if exist "%DRIVE%\private\wii\title\rzdj_twilight_beta2\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzdj\data.bin" goto:skip
support\sfk md5 -quiet -verify abae916201ba444c0da951627e3071ce "%DRIVE%\private\wii\title\rzdj\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzdj" "%DRIVE%\private\wii\title\rzdj_twilight_beta2"> nul
:skip
::TWILIGHT2 EURO
if exist "%DRIVE%\private\wii\title\rzdp_twilight_beta2\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzdp\data.bin" goto:skip
support\sfk md5 -quiet -verify 7d0ac865218738364da4c67466ed59fb "%DRIVE%\private\wii\title\rzdp\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzdp" "%DRIVE%\private\wii\title\rzdp_twilight_beta2"> nul
:skip
support\7za X -aoa temp\%wadname% -o"%Drive%" private -r
if exist "%DRIVE%\private\wii\title\rzde_twilight_beta1" rd /s /q "%DRIVE%\private\wii\title\rzde_twilight_beta1"
if exist "%DRIVE%\private\wii\title\rzdj_twilight_beta1" rd /s /q "%DRIVE%\private\wii\title\rzdj_twilight_beta1"
if exist "%DRIVE%\private\wii\title\rzdp_twilight_beta1" rd /s /q "%DRIVE%\private\wii\title\rzdp_twilight_beta1"
goto:skipnormalextraction
:skipTWI
if /i "%wadname%" NEQ "Twilight-hack-v0.1-beta2.zip" goto:skipTWI2
::add logic for 2nd private folder if v1 detected
::TWILIGHT USA
if exist "%DRIVE%\private\wii\title\rzde_twilight_beta1\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzde\data.bin" goto:skip
support\sfk md5 -quiet -verify 02639bd145730269a98f69a4fd466225 "%DRIVE%\private\wii\title\rzde\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzde" "%DRIVE%\private\wii\title\rzde_twilight_beta1"> nul
:skip
::TWILIGHT JPN
if exist "%DRIVE%\private\wii\title\rzdj_twilight_beta1\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzdj\data.bin" goto:skip
support\sfk md5 -quiet -verify b51cd6a64bc911cc5c8e41ed5d9fd8ae "%DRIVE%\private\wii\title\rzdj\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzdj" "%DRIVE%\private\wii\title\rzdj_twilight_beta1"> nul
:skip
::TWILIGHT EURO
if exist "%DRIVE%\private\wii\title\rzdp_twilight_beta1\data.bin" goto:skip
if not exist "%DRIVE%\private\wii\title\rzdp\data.bin" goto:skip
support\sfk md5 -quiet -verify 704bd625ea5b42d7ac06fc937af74d38 "%DRIVE%\private\wii\title\rzdp\data.bin"
if not errorlevel 1 move /y "%DRIVE%\private\wii\title\rzdp" "%DRIVE%\private\wii\title\rzdp_twilight_beta1"> nul
:skip
support\7za X -aoa temp\%wadname% -o"%Drive%" private -r
if exist "%DRIVE%\private\wii\title\rzde_twilight_beta2" rd /s /q "%DRIVE%\private\wii\title\rzde_twilight_beta2"
if exist "%DRIVE%\private\wii\title\rzdj_twilight_beta2" rd /s /q "%DRIVE%\private\wii\title\rzdj_twilight_beta2"
if exist "%DRIVE%\private\wii\title\rzdp_twilight_beta2" rd /s /q "%DRIVE%\private\wii\title\rzdp_twilight_beta2"
goto:skipnormalextraction
:skipTWI2
if /i "%path1%" EQU "apps\homebrew_browser\" support\7za X -aoa temp\%wadname% -o"%Drive%"\apps homebrew_browser -r
if /i "%path1%" EQU "apps\homebrew_browser\" goto:skipnormalextraction
if /i "%wadname%" EQU "YU-GI-OWNED-ALL.zip" support\7za X -aoa temp\%wadname% -o"%Drive%" private -r
if /i "%wadname%" EQU "YU-GI-OWNED-ALL.zip" goto:skipnormalextraction
if exist temp\%wadname% support\7za x -aoa temp\%wadname% -o"%Drive%" -x!README
:skipnormalextraction
goto:URLverifyretry
::DONE (will retry if necessary)
::---------------CustomDL--------------------------
:CUSTOMDL
echo Note that custom downloads are not verified, and are not necessarily safe.
echo Make sure you know what you're doing! Use at your own risk!
echo.
if /i "%DEC%" EQU "SM" set HEX=00000002
if /i "%DEC%" EQU "MIOS" set HEX=00000101
if /i "%DEC%" EQU "SM" goto:skiphexcalc
if /i "%DEC%" EQU "MIOS" goto:skiphexcalc
support\sfk hex %DEC% -digits=8 >hex.txt
::Loop through the the following once for EACH line in whatever.txt
for /F "tokens=*" %%A in (hex.txt) do call :processhexx %%A
goto:skiphexcalc
:processhexx
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set hex=%*
goto:EOF
:skiphexcalc
if exist hex.txt del hex.txt>nul
if not exist "%DRIVE%"\WAD mkdir "%DRIVE%"\WAD
echo If you encounter long periods of inactivity, type "C" while holding "Ctrl",
echo then type "N", then "Enter" (i.e. Ctrl+C, N, Enter)
echo.
cd temp
..\support\nusd.exe 00000001%HEX% "%VER%"
cd..
::get version # if * is entered
if /i "%verfinal%" NEQ "NEW" goto:SkipGettingV
dir /b "temp\titles\00000001%HEX%">"%temp%\ver.txt"
set /p VER= <"%temp%\ver.txt"
set VERFINAL=%VER%
::echo %VER%
:SkipGettingV
::if not exist 00000001%HEX%\00000001%HEX%.wad goto:missing
if /i "%ROOTSAVE%" EQU "OFF" (set wadfolder=WAD\) else (set wadfolder=)
if /i "%DEC%" EQU "SM" goto:SYSMENU
if /i "%DEC%" EQU "MIOS" goto:MIOS2
::IOS
if exist "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" move /y "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" "%Drive%\%wadfolder%IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad">nul
::if /i "%verfinal%" EQU "NEW" goto:option1notNUS
if /i "%OPTION1%" EQU "ON" goto:option1on
if /i "%OPTION1%" EQU "ALL" (goto:option1on) else (goto:option1noton)
:option1on
if not exist "%Drive%\00000001\%HEX%\v%verfinal%" mkdir "%Drive%\00000001\%HEX%\v%verfinal%"
if exist "temp\titles\00000001%HEX%\%VER%" copy /y "temp\titles\00000001%HEX%\%VER%" "%Drive%\00000001\%HEX%\v%verfinal%" >nul
:option1noton
if /i "%OPTION1%" EQU "NUS" goto:option1NUS
if /i "%OPTION1%" EQU "ALL" (goto:option1NUS) else (goto:option1notNUS)
:option1NUS
if not exist "%Drive%\NUS\00000001%HEX%v%verfinal%" mkdir "%Drive%\NUS\00000001%HEX%v%verfinal%"
if exist "temp\titles\00000001%HEX%\%VER%" copy /y "temp\titles\00000001%HEX%\%VER%" "%Drive%\NUS\00000001%HEX%v%verfinal%" >nul
:option1notNUS
if exist temp\titles rd /s /q temp\titles
if /i "IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad" EQU "IOS%DEC%-64-v%VERFINAL%.wad" goto:nopatching
echo.
cd support
if /i "%DRIVE:~1,1%" EQU ":" (set "DRIVEadj=%DRIVE%") else (set "DRIVEadj=..\%DRIVE%")
if exist "%DRIVEadj%"\%wadfolder%IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad (patchios "%DRIVEadj%"\%wadfolder%IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad%PATCHCODE%%slotcode%%versioncode%) & (echo.) & (echo Note: Patches are not always successful, read the PatchIOS log above for details)
cd..
:nopatching
if exist "%DRIVE%"\%wadfolder%IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad (goto:there) else (goto:missing)
:SYSMENU
if exist "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" move /Y "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" "%Drive%"\%wadfolder%SystemMenu-NUS-v%VERFINAL%.wad>nul
::if /i "%verfinal%" EQU "NEW" goto:option1notNUS
if /i "%OPTION1%" EQU "ON" goto:option1on
if /i "%OPTION1%" EQU "ALL" (goto:option1on) else (goto:option1noton)
:option1on
if not exist "%Drive%"\00000001\%HEX%\v%verfinal% mkdir "%Drive%"\00000001\%HEX%\v%verfinal%
if exist "temp\titles\00000001%HEX%\%VER%" copy /Y "temp\titles\00000001%HEX%\%VER%" "%Drive%"\00000001\%HEX%\v%verfinal% >nul
:option1noton
if /i "%OPTION1%" EQU "NUS" goto:option1NUS
if /i "%OPTION1%" EQU "ALL" (goto:option1NUS) else (goto:option1notNUS)
:option1NUS
if not exist "%Drive%"\NUS\00000001%HEX%v%verfinal% mkdir "%Drive%"\NUS\00000001%HEX%v%verfinal%
copy /y "temp\titles\00000001%HEX%\%VER%" "%Drive%"\NUS\00000001%HEX%v%verfinal% >nul
:option1notNUS
if exist temp\titles rd /s /q temp\titles
if exist "%Drive%"\%wadfolder%SystemMenu-NUS-v%VERFINAL%.wad (goto:there) else (goto:missing)
:MIOS2
if /i "%ROOTSAVE%" EQU "OFF" (set wadfolder=WAD\) else (set wadfolder=)
if exist "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" move /Y "temp\titles\00000001%HEX%\%VER%\00000001%HEX%-NUS-v%VER%.wad" "%Drive%"\%wadfolder%RVL-mios-v%VERFINAL%.wad>nul
::if /i "%verfinal%" EQU "NEW" goto:option1notNUS
if /i "%OPTION1%" EQU "ON" goto:option1on
if /i "%OPTION1%" EQU "ALL" (goto:option1on) else (goto:option1noton)
:option1on
if not exist "%Drive%"\00000001\%HEX%\v%verfinal% mkdir "%Drive%"\00000001\%HEX%\v%verfinal%
if exist "temp\titles\00000001%HEX%\%VER%" copy /Y "temp\titles\00000001%HEX%\%VER%" "%Drive%"\00000001\%HEX%\v%verfinal% >nul
:option1noton
if /i "%OPTION1%" EQU "NUS" goto:option1NUS
if /i "%OPTION1%" EQU "ALL" (goto:option1NUS) else (goto:option1notNUS)
:option1NUS
if not exist "%Drive%"\NUS\00000001%HEX%v%verfinal% mkdir "%Drive%"\NUS\00000001%HEX%v%verfinal%
copy /y "temp\titles\00000001%HEX%\%VER%" "%Drive%"\NUS\00000001%HEX%v%verfinal% >nul
:option1notNUS
if exist temp\titles rd /s /q temp\titles
if exist "%Drive%"\%wadfolder%RVL-mios-v%VERFINAL%.wad (goto:there) else (goto:missing)
::----check after downloading - if md5 check fails, delete and redownload----
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
support\sfk echo -spat \x20 \x20 \x20 [%magentatext%] Most likely reason is that the file does not exist.
support\sfk echo -spat \x20 \x20 \x20 [%magentatext%] Double check your custom values.
echo.
if /i "%DEC%" EQU "SM" (echo "support\sfk echo SystemMenu-NUS-v%VERFINAL%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat) & (goto:NEXT)
if /i "%DEC%" EQU "MIOS" (echo "support\sfk echo %RVL-mios-v%VERFINAL%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat) & (goto:NEXT)
echo "support\sfk echo IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
::if exist temp\%wadname% del temp\%wadname%>nul
goto:DOWNLOADSTART2
:there
echo.
support\sfk echo [%greentext%]Advanced Download Successful
if /i "%DEC%" EQU "SM" (echo "echo SystemMenu-NUS-v%VERFINAL%.wad: Found">>temp\ModMii_Log.bat) & (goto:NEXT)
if /i "%DEC%" EQU "MIOS" (echo "echo RVL-mios-v%VERFINAL%.wad: Found">>temp\ModMii_Log.bat) & (goto:NEXT)
echo "echo IOS%DEC%-64-v%VERFINAL%%patchname%%slotname%%versionname%.wad: Found">>temp\ModMii_Log.bat
goto:NEXT
::---------------HackMii Installer support\wget --no-check-certificate Download CODE-----------------------
:wget
::----if exist and fails md5 check, delete and redownload----
if not exist "%Drive%"\apps\HackMii_Installer\boot.elf goto:nocheckexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%"\apps\HackMii_Installer\boot.elf
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%"\apps\HackMii_Installer\boot.elf>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
if exist temp\%wadname% del temp\%wadname%>nul
goto:DOWNLOADSTART2
:pass
support\sfk echo [%greentext%]This file already exists and has been verified, Skipping download
echo.
COPY /Y "%Drive%"\apps\HackMii_Installer\boot.elf "%Drive%"\boot.elf> nul
::erase boot.dol on root if exists as some cases will prioritize it over boot.elf
if exist "%Drive%\boot.dol" del "%Drive%\boot.dol"> nul
COPY /Y "%Drive%"\apps\HackMii_Installer\bootmini.elf "%Drive%"\bootmini.elf> nul
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
goto:alreadyhavehackmii
:nocheckexisting
if exist index.html del index.html>nul
::if not exist temp\%wadname% start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject "*.html" --reject "index.html.tmp" --reject "%2A" --reject "get.php@file=hackmii_installer_v1.0*" %code2%
if not exist temp\%wadname% start /min /wait support\wget --no-check-certificate -c -l1 -r -nd --retr-symlinks -t2 -T30 --random-wait --reject html,tmp --accept-regex ".*hackmii_installer_v1\.2.*" %code2%
if not exist temp\%wadname% move /y "get.php@file=%wadname%*" temp\%wadname%>nul
if exist get.* del /f /q get.*
if not exist "%Drive%"\apps\HackMii_Installer mkdir "%Drive%"\apps\HackMii_Installer
support\7za e -aoa temp\%wadname% -o"%Drive%"\apps\HackMii_Installer *.%version% *.txt -r
support\7za e -aoa temp\%wadname% -o"%Drive%" *.%version% -r
support\7za e -aoa temp\%wadname% -o"temp" wiiload.exe -r
::get custom icon and meta.xml
if not exist temp\%zipname% start /min /wait support\wget --no-check-certificate %code3%
if exist %zipname% move /y %zipname% "temp\%zipname%">nul
if exist temp\%zipname% support\7za e -aoa temp\%zipname% -o"%Drive%"\apps\HackMii_Installer\ * -r
::----check after downloading - if md5 check fails, delete and redownload----
if exist "%Drive%"\apps\HackMii_Installer\boot.elf goto:checkexisting
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
if exist temp\%wadname% del temp\%wadname%>nul
goto:DOWNLOADSTART2
:checkexisting
set md5check=
support\sfk md5 -quiet -verify %md5% "%Drive%"\apps\HackMii_Installer\boot.elf
if errorlevel 1 set md5check=fail
IF "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:pass
:fail
if /i "%attempt%" NEQ "1" goto:multiplefail
echo.
support\sfk echo [%yellowtext%] This file already exists but it failed MD5 verification.
support\sfk echo [%yellowtext%] The current version of the file will be deleted and the file will be re-downloaded.
echo.
del "%Drive%"\apps\HackMii_Installer\boot.elf>nul
if exist temp\%wadname% del temp\%wadname%>nul
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:multiplefail
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
set multiplefail=Y
if /i "%KeepInvalidOverride%" NEQ "Y" (if exist "%Drive%\apps\HackMii_Installer\boot.elf" del "%Drive%\apps\HackMii_Installer\boot.elf">nul)
if /i "%AdvancedDownload%" NEQ "Y" echo "support\sfk echo %name%: [%redtext%]Invalid">>temp\ModMii_Log.bat
goto:NEXT
:pass
echo.
support\sfk echo [%greentext%]Download Successful
echo.
if /i "%AdvancedDownload%" NEQ "Y" echo "echo %name%: Valid">>temp\ModMii_Log.bat
::goto:NEXT
:alreadyhavehackmii
if /i "%MENU1%" EQU "H" goto:RenameBootToHackMii
if /i "%virgin%" EQU "N" goto:next
If /i "%FIRMSTART%" EQU "4.3" goto:next
if /i "%REGION%" EQU "K" goto:RenameBootToHackMii
goto:next
::-----Bannerbomb yawmME instead of HackMii installer------
:RenameBootToHackMii
if exist "%Drive%"\apps\yawmME\yawmME_boot.elf copy /Y "%Drive%"\apps\yawmME\yawmME_boot.elf "%Drive%"\boot.elf >nul
if exist "%Drive%"\apps\yawmME\boot.dol copy /Y "%Drive%"\apps\yawmME\boot.dol "%Drive%"\boot.dol >nul
::copy /Y "Support\ExploitAppSelector.bat" "%Drive%\ExploitAppSelector.bat" >nul
goto:next
::----------------------FORWARDER------------------
:FORWARDER
if not exist "%Drive%\DOLS" mkdir "%Drive%\DOLS"
if /i "%FORWARDERTYPE%" EQU "1" copy /y support\DOLS\SDUSBFORWARDER_v14.dol "%Drive%\DOLS\%wadname%.dol">nul
if /i "%FORWARDERTYPE%" EQU "1b" copy /y support\DOLS\SDUSBFORWARDER_v12.dol "%Drive%\DOLS\%wadname%.dol">nul
if /i "%FORWARDERTYPE:~0,1%" EQU "2" copy /y support\DOLS\INTERNETFORWARDER.dol "%Drive%\DOLS\%wadname%.dol">nul
if /i "%FORWARDERTYPE:~0,1%" EQU "3" copy /y support\DOLS\CHANNELFORWARDER.dol "%Drive%\DOLS\%wadname%.dol">nul
::%s:/ = 0x25,0x73,0x3a,0x2f
if "%path-1%"=="" goto:nopath-1
echo Patching %wadname%.dol with path #1: %path-1%
set var=%path-1:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7F979=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77426=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-1:~204,1%" EQU "" (echo.) & (goto:nopath-1)
set var=%path-1:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FA45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x774F6=%hex%
echo.
:nopath-1
if "%path-2%"=="" goto:nopath-2
echo Patching %wadname%.dol with path #2: %path-2%
set var=%path-2:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FA79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7752d=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-2:~204,1%" EQU "" (echo.) & (goto:nopath-2)
set var=%path-2:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FB45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x775FD=%hex%
echo.
:nopath-2
if "%path-3%"=="" goto:nopath-3
echo Patching %wadname%.dol with path #3: %path-3%
set var=%path-3:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FB79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77631=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-3:~204,1%" EQU "" (echo.) & (goto:nopath-3)
set var=%path-3:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FC45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77701=%hex%
echo.
:nopath-3
if "%path-4%"=="" goto:nopath-4
echo Patching %wadname%.dol with path #4: %path-4%
set var=%path-4:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FC79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77735=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-4:~204,1%" EQU "" (echo.) & (goto:nopath-4)
set var=%path-4:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FD45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77805=%hex%
echo.
:nopath-4
if "%path-5%"=="" goto:nopath-5
echo Patching %wadname%.dol with path #5: %path-5%
set var=%path-5:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FD79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77839=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-5:~204,1%" EQU "" (echo.) & (goto:nopath-5)
set var=%path-5:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FE45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77909=%hex%
echo.
:nopath-5
if "%path-6%"=="" goto:nopath-6
echo Patching %wadname%.dol with path #6: %path-6%
set var=%path-6:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FE79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7793d=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-6:~204,1%" EQU "" (echo.) & (goto:nopath-6)
set var=%path-6:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FF45=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77A0D=%hex%
echo.
:nopath-6
if "%path-7%"=="" goto:nopath-7
echo Patching %wadname%.dol with path #7: %path-7%
set var=%path-7:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x7FF79=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77a41=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-7:~204,1%" EQU "" (echo.) & (goto:nopath-7)
set var=%path-7:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80045=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77B11=%hex%
echo.
:nopath-7
if "%path-8%"=="" goto:nopath-8
echo Patching %wadname%.dol with path #8: %path-8%
set var=%path-8:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80079=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77b45=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-8:~204,1%" EQU "" (echo.) & (goto:nopath-8)
set var=%path-8:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80145=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77C15=%hex%
echo.
:nopath-8
if "%path-9%"=="" goto:nopath-9
echo Patching %wadname%.dol with path #9: %path-9%
set var=%path-9:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80179=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77c49=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-9:~204,1%" EQU "" (echo.) & (goto:nopath-9)
set var=%path-9:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80245=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77D19=%hex%
echo.
:nopath-9
if "%path-10%"=="" goto:nopath-10
echo Patching %wadname%.dol with path #10: %path-10%
set var=%path-10:~0,204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80279=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77d4d=0x25,0x73,0x3a,0x2f,%hex%
if /i "%path-10:~204,1%" EQU "" (echo.) & (goto:nopath-10)
set var=%path-10:~204%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
if /i "%FORWARDERTYPE%" EQU "1" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x80345=%hex%
if /i "%FORWARDERTYPE%" EQU "1b" support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x77E1D=%hex%
echo.
:nopath-10
if "%URLPATH%"=="" goto:noURLPATH
echo Converting %URLPATH% to hex
set var=%URLPATH%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
echo Patching %wadname%.dol with %URLPATH%
support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x1f3a4=%hex%
echo.
:noURLPATH
if "%FORWARDERTITLEID%"=="" goto:noFORWARDERTITLEID
::if more than 4 chars it's already hex and skip conversion
if not "%FORWARDERTITLEID:~4%"=="" (echo %FORWARDERTITLEID%, >temphex.txt) & (goto:quickskip)
echo Converting %FORWARDERTITLEID% to hex
set var=%FORWARDERTITLEID%
call support\subscripts\Ascii2hex.bat
setlocal DISABLEDELAYEDEXPANSION
:quickskip
support\sfk filter -quiet "temphex.txt" -rep _,_,0x_ -write -yes
set /p hex= <temphex.txt
del /f /q temphex.txt
set hex=0x%hex:~0,-4%
echo Patching %wadname%.dol with %FORWARDERTITLEID%
support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x2ee6=%hex:~0,9%
support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x2eee=%hex:~10%
if "%hex%"=="0x48,0x41,0x41,0x41" set bigt=02
if "%hex%"=="0x48,0x41,0x42,0x41" set bigt=02
if "%hex%"=="0x48,0x41,0x43,0x41" set bigt=02
if "%hex%"=="0x48,0x41,0x46,0x41" set bigt=02
if "%hex%"=="0x48,0x41,0x46,0x45" set bigt=02
if "%hex%"=="0x48,0x41,0x46,0x4A" set bigt=02
if "%hex%"=="0x48,0x41,0x46,0x50" set bigt=02
if "%hex%"=="0x48,0x41,0x47,0x41" set bigt=02
if "%hex%"=="0x48,0x41,0x47,0x45" set bigt=02
if "%hex%"=="0x48,0x41,0x47,0x4A" set bigt=02
if "%hex%"=="0x48,0x41,0x47,0x50" set bigt=02
if "%hex%"=="0x48,0x41,0x59,0x41" set bigt=02
if /i "%bigt%" NEQ "1" (echo.) & (echo Patching Channel Type: 000100%bigt%) & (support\hexalter.exe "%Drive%\DOLS\%wadname%.dol" 0x2eeb=0x0%bigt%)
echo.
:noFORWARDERTITLEID
if exist "%Drive%\DOLS\%wadname%.dol" (goto:there) else (goto:missing)
::----check after downloading----
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%FORWARDERDOLorISO%" EQU "1" echo "support\sfk echo %FORWARDERNAME% DOL: [%redtext%]Missing">>temp\ModMii_Log.bat
if /i "%FORWARDERDOLorISO%" EQU "2" echo "support\sfk echo %FORWARDERNAME% ISO: [%redtext%]Missing">>temp\ModMii_Log.bat
if /i "%FORWARDERDOLorISO%" EQU "3" echo "support\sfk echo %FORWARDERNAME% DOL and ISO: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
::if exist temp\%wadname% del temp\%wadname%
goto:DOWNLOADSTART2
:there
if /i "%FORWARDERDOLorISO%" NEQ "1" goto:FORWARDERISO
echo "echo %FORWARDERNAME% DOL: Found">>temp\ModMii_Log.bat
echo.
support\sfk echo [%greentext%]Advanced Download Successful
goto:NEXT
:FORWARDERISO
echo.
echo Creating Forwarder ISO...
echo.
if /i "%FORWARDERDOLorISO%" EQU "2" move /y "%Drive%\DOLS\%FORWARDERNAME%.dol" "support\disc-template\sys\main.dol">nul
if /i "%FORWARDERDOLorISO%" NEQ "2" copy /v /y "%Drive%\DOLS\%FORWARDERNAME%.dol" "support\disc-template\sys\main.dol">nul
::make WBFS folder for forwarder ISO
if not exist "%Drive%\WBFS\%FORWARDERNAME% [%discid%]" mkdir "%Drive%\WBFS\%FORWARDERNAME% [%discid%]"
if exist "%Drive%\WBFS\%FORWARDERNAME% [%discid%]\%discid%.iso" del "%Drive%\WBFS\%FORWARDERNAME% [%discid%]\%discid%.iso" >nul
Support\wit copy -s ./Support/disc-template/ -d "%Drive%/WBFS/%FORWARDERNAME% [%discid%]/%discid%.iso" --id %discid% --name "%FORWARDERNAME%" -q -C
del "support\disc-template\sys\main.dol">nul
if exist "%Drive%\WBFS\%FORWARDERNAME% [%discid%]\%discid%.iso" echo Forwarder ISO Created
if exist "%Drive%\WBFS\%FORWARDERNAME% [%discid%]\%discid%.iso" (goto:there) else (goto:missing)
::----check after downloading----
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
if /i "%FORWARDERDOLorISO%" EQU "2" echo "support\sfk echo %FORWARDERNAME% ISO: [%redtext%]Missing">>temp\ModMii_Log.bat
if /i "%FORWARDERDOLorISO%" EQU "3" echo "support\sfk echo %FORWARDERNAME% DOL: FOUND - %FORWARDERNAME% ISO: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:NEXT
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:there
if /i "%FORWARDERDOLorISO%" EQU "2" echo "echo %FORWARDERNAME% ISO: Found">>temp\ModMii_Log.bat
if /i "%FORWARDERDOLorISO%" EQU "3" echo "echo %FORWARDERNAME% DOL and ISO: Found">>temp\ModMii_Log.bat
echo.
support\sfk echo [%greentext%]Advanced Download Successful
goto:NEXT
::----------------MetaChecker----------------
:MetaChecker
if not exist "%DRIVE%\%path1%meta.xml" (echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat) & (goto:NEXT)
if not exist "%DRIVE%\%path1%boot.dol" (echo "support\sfk echo %name%: [%redtext%]Missing">>temp\ModMii_Log.bat) & (goto:NEXT)
support\sfk filter -quiet "%DRIVE%\%path1%meta.xml" -+"/version" -rep _"*<version>"_"set currentcode="_ -rep _"</version*"__ >currentcode.bat
call currentcode.bat
del currentcode.bat>nul
echo "support\sfk echo %name%: [%redtext%]Not Updated[def]: Found Version %currentcode%">>temp\ModMii_Log.bat
goto:NEXT
::----------------------NEXT----------------------
:NEXT
::-----ROOT SAVE OPTION for IOSs (does not apply to wizard)-----
if /i "%MENU1%" EQU "W" goto:miniskip
if /i "%MENU1%" EQU "RC" goto:miniskip
if /i "%MENU1%" EQU "SU" goto:miniskip
if /i "%MENU1%" EQU "H" goto:miniskip
if /i "%category%" EQU "ios" goto:noskip
if /i "%category%" EQU "patchios" (goto:noskip) else (goto:miniskip)
:noskip
if "%wadname:~-4%" NEQ ".wad" (set movename="%wadname%.wad") else (set movename="%wadname%")
if /i "%ROOTSAVE%" EQU "ON" move /Y "%Drive%"\WAD\%movename% "%DRIVE%"\%movename% >nul
:miniskip
::-----------Exceptions for DL Wizard and syscheck updater----------
if /i "%name%" NEQ "IOS36" goto:skipwizardexceptions
if /i "%MENU1%" EQU "W" goto:exception
if /i "%MENU1%" NEQ "SU" goto:skipwizardexceptions
:exception
if "%wadname:~-4%" NEQ ".wad" (set movename="%wadname%.wad") else (set movename="%wadname%")
move /Y "%Drive%"\WAD\%movename% "%DRIVE%"\%movename% >nul
:skipwizardexceptions
::----------------------------
if /i "%category%" EQU "userdefined" goto:quickskip
if /i "%category%" EQU "FORWARDER" goto:quickskip
if /i "%AdvancedDownload%" EQU "Y" goto:customcopyandpatch
:quickskip
support\sfk filter -quiet "temp\DLgotos.txt" -le!"%CurrentDLNAME%" -write -yes
goto:DLSETTINGS3
::-----------------------------------------cUSTOM COPY AND PATCH (only for advanced downloads)--------------------------------
:customcopyandpatch
if /i "%loadorgo%" EQU "load" goto:ADVPAGE2
if "%wadname:~-4%" EQU ".wad" set wadname=%wadname:~0,-4%
::move from WAD folder
if "%alreadyexists%" EQU "yes" goto:makeacopy
if exist "%DRIVE%"\WAD\%wadname%.wad move /Y "%DRIVE%"\WAD\%wadname%.wad "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad>nul
goto:nocopy
:makeacopy
if exist "%DRIVE%"\WAD\%wadname%.wad copy /Y "%DRIVE%"\WAD\%wadname%.wad "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad>nul
:nocopy
if exist "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad goto:copyisthere
if not exist "%DRIVE%"\WAD mkdir "%DRIVE%"\WAD >nul
::move from root
if "%alreadyexists%" EQU "yes" goto:makeacopy
if exist "%DRIVE%"\%wadname%.wad move /Y "%DRIVE%"\%wadname%.wad "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad>nul
goto:nocopy
:makeacopy
if exist "%DRIVE%"\%wadname%.wad copy /Y "%DRIVE%"\%wadname%.wad "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad>nul
:nocopy
if exist "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad (goto:copyisthere) else (goto:missing)
:copyisthere
echo.
cd support
if /i "%DRIVE:~1,1%" EQU ":" (set "DRIVEadj=%DRIVE%") else (set "DRIVEadj=..\%DRIVE%")
patchios "%DRIVEadj%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad%PATCHCODE%%slotcode%%versioncode%
cd..
echo.
echo Note: Patches are not always successful, read the PatchIOS log above for details
echo.
:nopatching
if exist "%DRIVE%"\WAD\%wadnameless%%patchname%%slotname%%versionname%.wad goto:there
::----check after Advanced downloading----
:missing
if /i "%attempt%" EQU "1" goto:missingretry
echo.
support\sfk echo [%magentatext%] This file has failed to download properly multiple times, Skipping download.
echo.
support\sfk filter -quiet "temp\DLgotos.txt" -ls!"%CurrentDLNAME%" -write -yes
echo "support\sfk echo %wadnameless%%patchname%%slotname%%versionname%.wad: [%redtext%]Missing">>temp\ModMii_Log.bat
goto:DLSETTINGS3
:missingretry
echo.
support\sfk echo [%yellowtext%] The file is missing, retrying download.
echo.
SET /a retry=%retry%+1
SET /a attempt=%attempt%+1
goto:DOWNLOADSTART2
:there
if /i "%multiplefail%" EQU "Y" (support\sfk echo [%magentatext%] Base wad failed hash check multiple times, Advanced download probably corrupted) else (support\sfk echo [%greentext%]Advanced Download Successful)
echo.
if /i "%multiplefail%" EQU "Y" (echo "support\sfk echo %wadnameless%%patchname%%slotname%%versionname%.wad: Found but potentially corrupt">>temp\ModMii_Log.bat) else (echo "echo %wadnameless%%patchname%%slotname%%versionname%.wad: Found">>temp\ModMii_Log.bat)
:miniskip
support\sfk filter -quiet "temp\DLgotos.txt" -ls!"%CurrentDLNAME%" -write -yes
goto:DLSETTINGS3
::---------------------------------------SNEEKINSTALLER----------------------------------
:SNEEKINSTALLER
cls
if not exist "%DRIVE%" mkdir "%DRIVE%"
if /i "%SNEEKTYPE%" EQU "UD" goto:checkdriveU
if /i "%SNEEKTYPE%" EQU "U" (goto:checkdriveU) else (goto:skip)
:checkdriveU
if not exist "%DRIVEU%" mkdir "%DRIVEU%"
:skip
::if running uneek or uneek+di, check for sneek installations on SD, replace is default
set SNEEKreplace=R
if /i "%SNEEKTYPE:~0,1%" NEQ "U" goto:skipcheck
if not exist "%DRIVE%\sneek\kernel.bin" goto:skipcheck
if not exist "%DRIVE%\sneek\rev.txt" goto:prompt
::prompt if SNEEK found, otherwise skipcheck and overwrite\update
findStr /I "SNEEK" "%DRIVE%\sneek\rev.txt" >nul
IF ERRORLEVEL 1 goto:skipcheck
:prompt
if exist "%DRIVE%\sneek\rev.txt" support\sfk echo [%redtext%]SNEEK (SD Version) detected[def] in "%DRIVE%\sneek"
if not exist "%DRIVE%\sneek\rev.txt" support\sfk echo [%redtext%]SD:\sneek\ folder detected[def], but unable to determine what version
echo If you want to launch UNEEK using Bootmii, Nswitch or Switch2Uneek,
echo you need to replace SD:\sneek\kernel.bin with UNEEK's kernel.bin (USB version).
echo.
echo If you launch UNEEK using USB-Loader GX, it loads USB:\sneek\ directly so you
echo can skip it to keep SNEEK (SD version) on your SD card.
echo.
if not exist "%DRIVE%\sneek\rev.txt" echo Note: If you know that the detected folder is for UNEEK or UNEEK+DI, then you should choose to replace.
if not exist "%DRIVE%\sneek\rev.txt" echo.
echo Replace or Skip? R/S
echo.
:SNEEKreplace
set SNEEKreplace=
set /p SNEEKreplace= Enter Selection Here:
echo.
if /i "%SNEEKreplace%" EQU "S" goto:skipcheck
if /i "%SNEEKreplace%" NEQ "R" goto:notreplace
::check for and delete di.bin (kernel.bin will be overwritten even if only building neek without di)
if exist "%DRIVE%\sneek\di.bin" del "%DRIVE%\sneek\di.bin">nul
::if exist "%DRIVE%\sneek\font.bin" del "%DRIVE%\sneek\font.bin">nul
goto:skipcheck
:notreplace
echo You Have Entered an Incorrect Key
goto:SNEEKreplace
:skipcheck
::if running sneek or sneek+di, check for uneek installations on SD, replace is default
set UNEEKreplace=R
if /i "%SNEEKTYPE:~0,1%" NEQ "S" goto:skipcheck
if not exist "%DRIVE%\sneek\kernel.bin" goto:skipcheck
::if di.bin found then this install is for SNEEK+DI and we will overwrite it
if exist "%DRIVE%\sneek\di.bin" goto:skipcheck
if not exist "%DRIVE%\sneek\rev.txt" goto:prompt
::prompt if UNEEK found, otherwise skipcheck and overwrite\update
findStr /I "UNEEK" "%DRIVE%\sneek\rev.txt" >nul
IF ERRORLEVEL 1 goto:skipcheck
:prompt
if exist "%DRIVE%\sneek\rev.txt" support\sfk echo [%redtext%]UNEEK (USB version) detected[def] in "%DRIVE%\sneek"
if not exist "%DRIVE%\sneek\rev.txt" support\sfk echo [%redtext%]SD:\sneek\ folder detected[def], but unable to determine what version
echo If you want to launch UNEEK using Bootmii, Nswitch or Switch2Uneek,
echo SD:\sneek\kernel.bin with UNEEK's kernel.bin (USB version) is needed.
echo.
echo If you launch UNEEK using USB-Loader GX, it loads USB:\sneek\ directly so you
echo can replace it with SNEEK (SD version) on your SD card.
echo.
if not exist "%DRIVE%\sneek\rev.txt" echo Note: If you know that the detected folder is for SNEEK or SNEEK+DI, then you should choose to replace.
if not exist "%DRIVE%\sneek\rev.txt" echo.
echo Replace or Abort? R/A
echo.
:UNEEKreplace
set UNEEKreplace=
set /p UNEEKreplace= Enter Selection Here:
echo.
if /i "%UNEEKreplace%" NEQ "A" goto:notabort
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:MENU
echo User aborted %neekname% installation due to conflict with UNEEK >temp\ModMii_CMD_LINE_NEEK_Errors.txt
if /i "%SKINmode%" NEQ "Y" start notepad "temp\ModMii_CMD_LINE_NEEK_Errors.txt"
if /i "%SNEEKSELECT%" EQU "3" goto:SNKNANDBUILDER
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
if /i "%SKINmode%" EQU "Y" start support\wizapp PB CLOSE
exit
:notabort
if /i "%UNEEKreplace%" NEQ "R" goto:notreplace
::check for and delete di.bin (kernel.bin will be overwritten even if only building neek without di)
if exist "%DRIVE%\sneek\di.bin" del "%DRIVE%\sneek\di.bin">nul
::if exist "%DRIVE%\sneek\font.bin" del "%DRIVE%\sneek\font.bin"
goto:skipcheck
:notreplace
echo You Have Entered an Incorrect Key
goto:UNEEKreplace
:skipcheck
::delete DI files from USB if detected if building UNEEK (kernel will be replaced)
if /i "%SNEEKTYPE%" NEQ "U" goto:skip
::if exist "%DRIVEU%"\SNEEK\kernel.bin del "%DRIVEU%"\SNEEK\kernel.bin>nul
if exist "%DRIVEU%"\SNEEK\di.bin del "%DRIVEU%"\SNEEK\di.bin>nul
::if exist "%DRIVEU%"\SNEEK\font.bin del "%DRIVEU%"\SNEEK\font.bin>nul
:skip
::delete DI files from SD if detected if building SNEEK (kernel will be replaced)
if /i "%SNEEKTYPE%" NEQ "S" goto:skip
::if exist "%DRIVE%"\SNEEK\kernel.bin del "%DRIVE%"\SNEEK\kernel.bin>nul
if exist "%DRIVE%"\SNEEK\di.bin del "%DRIVE%"\SNEEK\di.bin>nul
::if exist "%DRIVE%"\SNEEK\font.bin del "%DRIVE%"\SNEEK\font.bin>nul
:skip
::Special handling of bootmii\armboot.bin to avoid deleting Bootmii-SD Files
if not exist "%DRIVE%"\bootmii\armboot.bin goto:skip
::No Bootmii-SD Files
if not exist "%DRIVE%"\bootmii\ppcboot.elf del "%DRIVE%"\bootmii\armboot.bin>nul
if not exist "%DRIVE%"\bootmii\ppcboot.elf goto:skip
::RENAME Bootmii Booter Folder
set countbootmii=0
:renamebootmii
SET /a countbootmii=%countbootmii%+1
if exist "%DRIVE%"\bootmii_SDBooter%countbootmii% goto:renamebootmii
rename "%DRIVE%"\bootmii bootmii_SDBooter%countbootmii% >nul
:skip
if /i "%neek2o%" EQU "on" goto:neek2obuild
if /i "%SNEEKTYPE%" EQU "SD" echo Building SNEEK+DI rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "UD" echo Building UNEEK+DI rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "U" echo Building UNEEK rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "S" echo Building SNEEK rev%CurrentRev%
goto:skipneek2obuild
:neek2obuild
if /i "%SNEEKTYPE%" EQU "SD" echo Building SNEEK+DI neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "UD" echo Building UNEEK+DI neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "U" echo Building UNEEK neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "S" echo Building SNEEK neek2o rev%CurrentRev%
:skipneek2obuild
echo.
if /i "%neek2o%" EQU "on" echo neek2o Enabled (can be changed in options)
if /i "%neek2o%" NEQ "on" echo neek2o Disabled (can be changed in options)
echo.
if /i "%SSD%" EQU "on" echo SNEEK and SNEEK+DI SD Access Enabled (can be changed in options)
if /i "%SSD%" NEQ "on" echo SNEEK and SNEEK+DI SD Access Disabled (can be changed in options)
::download unrar if missing
if not exist temp\UnRAR.exe echo.
if not exist temp\UnRAR.exe echo Downloading UnRAR
if not exist temp\UnRAR.exe start /min /wait support\wget --no-check-certificate -t 3 "https://sourceforge.net/projects/menuui/files/UnRAR.exe"
if exist UnRAR.exe move /y UnRAR.exe temp\UnRAR.exe>nul
if /i "%neek2o%" EQU "on" set NewInstallerRev=70
if /i "%neek2o%" NEQ "on" set NewInstallerRev=186
if %CurrentRev% GEQ %NewInstallerRev% goto:newinstaller
::old installer
set wadname=SNEEKInstallerv0.6c-cred.rar
set md5=bcdd0ddb85dc63c1ad7fad0007b6b606
goto:skipnew
:newinstaller
set wadname=SNEEKInstallerv0.7a-cred.rar
set md5=e1c094efd57d19e9a3726bcb8f543660
:skipnew
::if exist "temp\DBUPDATE%currentversion%.bat" call "temp\DBUPDATE%currentversion%.bat"
echo.
echo Downloading Official Sneek Installer (%wadname:~14,5%)
if not exist temp\%wadname:~0,-4%\SNEEKInstaller.exe goto:nocheck
set md5check=
support\sfk md5 -quiet -verify %md5% temp\%wadname:~0,-4%\SneekInstaller.exe
if errorlevel 1 set md5check=fail
if "%md5check%"=="" set md5check=pass
if /i "%md5check%" NEQ "fail" goto:AlreadyinTemp
:nocheck
if exist temp\%wadname:~0,-4% rd /s /q temp\%wadname:~0,-4%
mkdir temp\%wadname:~0,-4%
start /min /wait support\wget --no-check-certificate -t 3 http://ufpr.dl.sourceforge.net/project/sneek-modmii/%wadname%
if exist %wadname% temp\unrar.exe x -y %wadname% temp\%wadname:~0,-4%
if exist %wadname% del %wadname%>nul
:AlreadyinTemp
if not exist temp\%wadname:~0,-4%\SNEEKInstaller.exe goto:sneekwarning
::create empty sneek installer config file
type NUL > temp\%wadname:~0,-4%\sinst.ini
echo.
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 15
echo Downloading Autoit
if exist temp\autoit3.exe goto:AlreadyinTemp
if not exist autoit-v3.zip start /min /wait support\wget --content-disposition --no-check-certificate -t 3 https://www.autoitscript.com/autoit3/files/archive/autoit/autoit-v3.3.16.0.zip -O autoit-v3.zip
if exist autoit-v3.zip support\7za e -aoa autoit-v3.zip -otemp autoit3.exe -r
if exist autoit-v3.zip del autoit-v3.zip>nul
if not exist temp\autoit3.exe goto:sneekwarning
:AlreadyinTemp
echo.
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 30
echo Downloading 0000000e.app from IOS80
if exist temp\0000000e_IOS80.app goto:AlreadyinTemp
support\NusFileGrabber.exe 0e http://ccs.cdn.sho.rc24.xyz/ccs/download/
move /Y 0000000e.app temp\0000000e_IOS80.app>nul
:AlreadyinTemp
copy /Y temp\0000000e_IOS80.app temp\0000000e.app>nul
if not exist temp\0000000e.app goto:sneekwarning
echo.
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 45
::only old installer uses 0x1.app for neek+di
if /i "%wadname%" NEQ "SNEEKInstallerv0.6c-cred.rar" goto:skipDL01
if /i "%SNEEKTYPE%" EQU "SD" goto:DL01
if /i "%SNEEKTYPE%" EQU "UD" goto:DL01
goto:skipDL01
:DL01
echo Downloading 00000001.app from IOS60
if exist temp\00000001_IOS60.app goto:AlreadyinTemp
support\NusFileGrabber.exe 01_60 http://ccs.cdn.sho.rc24.xyz/ccs/download/
move /Y 00000001.app temp\00000001_IOS60.app>nul
:AlreadyinTemp
copy /Y temp\00000001_IOS60.app temp\00000001.app>nul
if not exist temp\00000001.app goto:sneekwarning
echo.
:skipDL01
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 60
::FONT.BIN
if /i "%SNKFONT%" EQU "B" echo Downloading Black font.bin (this can be changed in Options)
if /i "%SNKFONT%" EQU "R" echo Downloading Red font.bin (this can be changed in Options)
if /i "%SNKFONT%" EQU "W" echo Downloading White font.bin (this can be changed in Options)
if /i "%SNKFONT%" EQU "B" set fonturl=raw.githubusercontent.com/modmii/modmii.github.io/master/temp/fontb.bin
if /i "%SNKFONT%" EQU "W" set fonturl=raw.githubusercontent.com/modmii/modmii.github.io/master/temp/fontw.bin
if /i "%SNKFONT%" EQU "R" set fonturl=raw.githubusercontent.com/modmii/modmii.github.io/master/temp/fontr.bin
if not exist temp\font%SNKFONT%.bin start /min /wait support\wget --no-check-certificate -t 3 %fonturl%
if exist font%SNKFONT%.bin move /Y font%SNKFONT%.bin temp\font%SNKFONT%.bin>nul
:skip
if /i "%SNEEKTYPE:~0,1%" NEQ "S" goto:skip
if not exist "%DRIVE%"\SNEEK mkdir "%DRIVE%"\SNEEK
if exist temp\font%SNKFONT%.bin copy /Y temp\font%SNKFONT%.bin "%DRIVE%"\SNEEK\font.bin>nul
if not exist "%DRIVE%"\SNEEK\font.bin goto:sneekwarning
:skip
if /i "%SNEEKTYPE:~0,1%" NEQ "U" goto:skip
if not exist "%DRIVEU%"\SNEEK mkdir "%DRIVEU%"\SNEEK
if exist temp\font%SNKFONT%.bin copy /Y temp\font%SNKFONT%.bin "%DRIVEU%"\SNEEK\font.bin>nul
if not exist "%DRIVEU%"\SNEEK\font.bin goto:sneekwarning
:skip
echo.
echo Grabbing Modules for %neekname% Rev%CurrentRev%
echo.
if exist "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" goto:Extract
start /min /wait support\wget --no-check-certificate -t 3 "http://ufpr.dl.sourceforge.net/project/%googlecode%/%neekname%-rev%CurrentRev%.zip"
if not exist "%neekname%-rev%CurrentRev%.zip" goto:sneekwarning
if not exist "temp\%neekname%" mkdir "temp\%neekname%"
move /y "%neekname%-rev%CurrentRev%.zip" "temp\%neekname%\%neekname%-rev%CurrentRev%.zip">nul
if exist "temp\dimodule-sd.elf" del "temp\dimodule-sd.elf">nul
if exist "temp\dimodule-usb.elf" del "temp\dimodule-usb.elf">nul
:EXTRACT
support\7za e -aoa "temp\%neekname%\%neekname%-rev%CurrentRev%.zip" -o"temp" *.* -r>temp\7zalog.txt
findStr /I /C:"Everything is Ok" "temp\7zalog.txt" >nul
IF ERRORLEVEL 1 (Corrupted archive detected and deleted, please try again..) & (del temp\7zalog.txt>nul) & (del "temp\%neekname%\%neekname%-rev%CurrentRev%.zip">nul) & (goto:sneekwarning)
del temp\7zalog.txt>nul
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 75
::Sneek SD Card Access
if /i "%SSD%" EQU "on" move /y "temp\esmodule-sdon.elf" "temp\esmodule.elf">nul
if /i "%SNEEKTYPE:~0,1%" NEQ "S" goto:noSDdi
if exist "temp\dimodule-sd.elf" move /y "temp\dimodule-sd.elf" "temp\dimodule.elf">nul
:noSDdi
if /i "%SNEEKTYPE:~0,1%" NEQ "U" goto:noUSBdi
if exist "temp\dimodule-usb.elf" move /y "temp\dimodule-usb.elf" "temp\dimodule.elf">nul
:noUSBdi
echo Building...
echo.
::create autoit script
echo WinWait ("SNEEK Installer","install SNEEK")>custom.au3
echo WinActivate ("SNEEK Installer","install SNEEK")>>custom.au3
if /i "%SNEEKTYPE%" EQU "S" echo ControlClick ("SNEEK Installer","SNEEK setup","SNEEK")>>custom.au3
if /i "%SNEEKTYPE%" EQU "SD" echo ControlClick ("SNEEK Installer","SNEEK setup","SNEEK+DI")>>custom.au3
if /i "%SNEEKTYPE%" EQU "U" echo ControlClick ("SNEEK Installer","SNEEK setup","UNEEK")>>custom.au3
if /i "%SNEEKTYPE%" EQU "UD" echo ControlClick ("SNEEK Installer","SNEEK setup","UNEEK+DI")>>custom.au3
if /i "%sneekverbose%" EQU "on" echo ControlClick ("SNEEK Installer","SNEEK setup","Verbose output")>>custom.au3
::ControlSetText vs ControlSend
::support for unicode (only if on windows 10, as it may not work on older versions), restored back to 437 later
ver>temp\temp.txt
support\sfk filter -quiet "temp\temp.txt" -rep _*" "__ -rep _"."*__ -rep _"]"__ -write -yes
support\sfk filter -quiet "temp\temp.txt" -no-empty-lines -no-blank-lines -write -yes
set /p winver= <temp\temp.txt
::echo %winver%
if /i %winver% GEQ 10 chcp 65001>nul
::old simple method:: ver | findstr "10.0">NUL && chcp 65001>nul
echo ControlSetText("SNEEK Installer","","[CLASS:Edit; INSTANCE:2]","%cd%\temp")>>custom.au3
echo ControlSetText("SNEEK Installer","","[CLASS:Edit; INSTANCE:3]","%cd%\temp")>>custom.au3
set "DRIVEabsolute=%cd%\%DRIVE%"
if /i "%DRIVE:~1,1%" EQU ":" set "DRIVEabsolute=%DRIVE%"
::SNEEKreplace "S" skip requires override
if /i "%SNEEKreplace%" NEQ "S" goto:next
if not exist temp\neektemp mkdir temp\neektemp
set "DRIVEabsolute=%cd%\temp\neektemp"
:next
echo ControlSetText("SNEEK Installer","","[CLASS:Edit; INSTANCE:1]","%DRIVEabsolute%")>>custom.au3
:afteroverride
::how to only change field if empty
::echo $a = ControlGetText ("SNEEK Installer","","[CLASS:Edit; INSTANCE:1]")>>custom.au3
::echo if $a = "" Then ControlSetText("SNEEK Installer","","[CLASS:Edit; INSTANCE:1]","%DRIVE%")>>custom.au3
if /i "%SNEEKTYPE%" EQU "S" goto:skip
if /i "%SNEEKTYPE%" EQU "SD" goto:skip
set "DRIVEUabsolute=%cd%\%DRIVEU%"
if /i "%DRIVEU:~1,1%" EQU ":" set "DRIVEUabsolute=%DRIVEU%"
echo ControlSetText("SNEEK Installer","","[CLASS:Edit; INSTANCE:4]","%DRIVEUabsolute%")>>custom.au3
:skip
echo ControlClick ("SNEEK Installer","SNEEK setup","install SNEEK")>>custom.au3
cd temp\%wadname:~0,-4%
start /I /min SneekInstaller.exe
cd..
cd..
echo start /wait temp\AutoIt3.exe custom.au3>run.bat
call run.bat
del run.bat>nul
::restore 437 codepage
chcp 437>nul
@ping 127.0.0.1 -n 3 -w 1000> nul
taskkill /im SneekInstaller.exe /f >nul
del custom.au3>nul
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 100
if /i "%AbstinenceWiz%" EQU "Y" copy /y "%DRIVE%\bootmii\armboot.bin" "%DRIVE%\bootmii_ios.bin">nul
::if /i "%AbstinenceWiz%" EQU "Y" rd /s /q "%DRIVE%\bootmii"
if /i "%AbstinenceWiz%" EQU "Y" goto:norename
if /i "%SNKS2U%" NEQ "Y" goto:noswitch2uneek
if exist "%DRIVE%\bootmiiuneek" rd /s /q "%DRIVE%\bootmiiuneek"
rename "%DRIVE%\bootmii" "bootmiiuneek"
:noswitch2uneek
::if /i "%neek2o%" EQU "off" goto:norename
if exist "%DRIVE%\bootmiineek" rd /s /q "%DRIVE%\bootmiineek"
rename "%DRIVE%\bootmii" "bootmiineek"
:norename
::save rev information
if /i "%neek2o%" EQU "on" goto:neek2orevinfo
if /i "%sneekverbose%" EQU "on" goto:sneekverbose
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SSD%" EQU "off" goto:miniskip
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (with SD Access On) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (with SD Access On) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
:miniskip
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
goto:skipsneekverbose
:sneekverbose
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (verbose) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (verbose) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SSD%" EQU "off" goto:miniskip
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (verbose and SD Access On) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (verbose and SD Access On) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
:miniskip
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI (verbose) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI (verbose) rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK (verbose) rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK (verbose) rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
:skipsneekverbose
goto:skipneek2orevinfo
:neek2orevinfo
if /i "%sneekverbose%" EQU "on" goto:sneekverbose
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SSD%" EQU "off" goto:miniskip
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (with SD Access On) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (with SD Access On) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
:miniskip
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI neek2o rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK neek2o rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
goto:skipsneekverbose
:sneekverbose
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (verbose) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (verbose) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
::neek2o sd access temporarily always disabled
goto:miniskip
if /i "%SSD%" EQU "off" goto:miniskip
if /i "%SNEEKTYPE%" EQU "SD" echo SNEEK+DI (verbose and SD Access On) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "S" echo SNEEK (verbose and SD Access On) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
:miniskip
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI (verbose) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "UD" echo UNEEK+DI (verbose) neek2o rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK (verbose) neek2o rev%CurrentRev% >"%DRIVEabsolute%"\sneek\rev.txt
if /i "%SNEEKTYPE%" EQU "U" echo UNEEK (verbose) neek2o rev%CurrentRev% >"%DRIVEUabsolute%"\sneek\rev.txt
:skipsneekverbose
:skipneek2orevinfo
if /i "%SNEEKSELECT%" EQU "3" goto:SNKNANDBUILDER
goto:finishsneekinstall3
:sneekwarning
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:notcmdfinish
echo Some files required for %neekname% installation >temp\ModMii_CMD_LINE_NEEK_Errors.txt
echo are missing. Aborting %neekname% installation, >>temp\ModMii_CMD_LINE_NEEK_Errors.txt
echo check your internet connection then try again. >>temp\ModMii_CMD_LINE_NEEK_Errors.txt
if /i "%SKINmode%" NEQ "Y" start notepad "temp\ModMii_CMD_LINE_NEEK_Errors.txt"
if /i "%SNEEKSELECT%" EQU "3" goto:SNKNANDBUILDER
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
if /i "%SKINmode%" EQU "Y" start support\wizapp PB CLOSE
exit
:notcmdfinish
echo.
support\sfk echo -spat \x20 [%yellowtext%] WARNING: Some files Required for the %neekname% install are missing.
support\sfk echo -spat \x20 \x20 \x20 \x20 [%yellowtext%] Aborting %neekname% Installation, check your internet connection
support\sfk echo -spat \x20 \x20 \x20 \x20 [%yellowtext%] Then repeat the Installation to try again.
echo.
if /i "%SKINmode%" EQU "Y" goto:noaudio
if /i "%AudioOption%" NEQ "on" goto:noaudio
start support\nircmd.exe mediaplay 3000 "%Fail.mp3%"
:noaudio
echo Press any key to return to the Main Menu.
pause>nul
goto:MENU
::------------------------wad2nand-install wads from temp\wad to emu nand--------------------
:wad2nand
if exist support\common-key.bin goto:commonkeyalreadythere
::silently build common-key.bin
echo EBE42A225E8593E448D9C5457381AAF7>support\common-key.txt
support\sfk filter support\common-key.txt +hextobin support\common-key.bin>nul
del support\common-key.txt>nul
:commonkeyalreadythere
set "nandpathadj=..\%nandpath%"
if /i "%nandpath:~1,1%" EQU ":" set "nandpathadj=%nandpath%"
set line1="<?xml version="1.0" standalone="yes"?>"
set line2="<ShowMiiWads>"
set line3=" <Settings>"
set line4=" <Version>1.5</Version>"
set line5=" <Language>English</Language>"
set line6=" <LangFile />"
set line7=" <AutoSize>true</AutoSize>"
set line8=" <NandPath>%nandpathadj%</NandPath>"
set line9=" <ShowPath>true</ShowPath>"
set line10=" <AddSub>false</AddSub>"
set line11=" <Portable>False</Portable>"
set line12=" <Accepted>false</Accepted>"
set line13=" <SaveFolders>true</SaveFolders>"
set line14=" <CreateBackups>false</CreateBackups>"
set line15=" <SplashScreen>false</SplashScreen>"
set line16=" <View>ShowMiiWads</View>"
set line17=" </Settings>"
set line18=" <Window>"
set line19=" <WindowWidth>930</WindowWidth>"
set line20=" <WindowHeight>396</WindowHeight>"
set line21=" <LocationX>50</LocationX>"
set line22=" <LocationY>200</LocationY>"
set line23=" <WindowState>Normal</WindowState>"
set line24=" </Window>"
set line25=" <Folders>"
set line26=" <MRU0>..\temp\WAD</MRU0>"
if "%addwadfolder%"=="" set line27=" <MRU1 />"
if not "%addwadfolder%"=="" set line27=" <MRU1>%addwadfolder%</MRU1>"
set line28=" <MRU2 />"
set line29=" <MRU3 />"
set line30=" <MRU4 />"
if "%addwadfolder%"=="" set line31=" <Foldercount>1</Foldercount>"
if not "%addwadfolder%"=="" set line31=" <Foldercount>2</Foldercount>"
set line32=" <Folder0>..\temp\WAD</Folder0>"
if "%addwadfolder%"=="" set line33=
if not "%addwadfolder%"=="" set line33=" <Folder1>%addwadfolder%</Folder1>"
set line34=" </Folders>"
set line35="</ShowMiiWads>"
echo %line1%>support\ShowMiiWads.cfg
echo %line2%>>support\ShowMiiWads.cfg
echo %line3%>>support\ShowMiiWads.cfg
echo %line4%>>support\ShowMiiWads.cfg
echo %line5%>>support\ShowMiiWads.cfg
echo %line6%>>support\ShowMiiWads.cfg
echo %line7%>>support\ShowMiiWads.cfg
echo %line8%>>support\ShowMiiWads.cfg
echo %line9%>>support\ShowMiiWads.cfg
echo %line10%>>support\ShowMiiWads.cfg
echo %line12%>>support\ShowMiiWads.cfg
echo %line13%>>support\ShowMiiWads.cfg
echo %line14%>>support\ShowMiiWads.cfg
echo %line15%>>support\ShowMiiWads.cfg
echo %line16%>>support\ShowMiiWads.cfg
echo %line17%>>support\ShowMiiWads.cfg
echo %line18%>>support\ShowMiiWads.cfg
echo %line19%>>support\ShowMiiWads.cfg
echo %line20%>>support\ShowMiiWads.cfg
echo %line21%>>support\ShowMiiWads.cfg
echo %line22%>>support\ShowMiiWads.cfg
echo %line23%>>support\ShowMiiWads.cfg
echo %line24%>>support\ShowMiiWads.cfg
echo %line25%>>support\ShowMiiWads.cfg
echo %line26%>>support\ShowMiiWads.cfg
echo %line27%>>support\ShowMiiWads.cfg
echo %line28%>>support\ShowMiiWads.cfg
echo %line29%>>support\ShowMiiWads.cfg
echo %line30%>>support\ShowMiiWads.cfg
echo %line31%>>support\ShowMiiWads.cfg
echo %line32%>>support\ShowMiiWads.cfg
if not "%addwadfolder%"=="" echo %line33%>>support\ShowMiiWads.cfg
echo %line34%>>support\ShowMiiWads.cfg
echo %line35%>>support\ShowMiiWads.cfg
support\sfk filter -quiet "support\ShowMiiWads.cfg" -lsrep _"""__ -lerep _"""__ -rep _"&"_"&amp;"_ -rep _"'"_"&apos;"_ -write -yes
cls
if /i "%SNEEKSELECT%" NEQ "5" goto:tinyskip
if /i "%emuwadcount%" EQU "0" goto:skipSMWall
:tinyskip
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 10
echo Loading ShowMiiWads
echo.
echo installing wads from "temp\WAD\"
if not "%addwadfolder%"=="" echo and from "%addwadfolder%"
if not "%addwadfolder%"=="" echo.
echo to emulated nand: "%nandpath%\"
echo.
echo Please wait for ShowMiiWads to finish doing its job...
cd support
if not "%addwadfolder%"=="" goto:forceSMW
if not exist ..\temp\WAD\*.wad goto:skipSMW
:forceSMW
SMW-Mod.exe
:skipSMW
cd..
:skipSMWall
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 50
::---delete non-temp files---
if exist temp\WAD\WiiFlow_ModMii_v14b_forwarder_DWFA.wad del temp\WAD\WiiFlow_ModMii_v14b_forwarder_DWFA.wad>nul
if exist temp\WAD\switch2uneek-4EMUNand-v12-S2RL.wad del temp\WAD\switch2uneek-4EMUNand-v12-S2RL.wad>nul
if exist temp\WAD\cIOS249-v14.wad del temp\WAD\cIOS249-v14.wad>nul
if exist temp\WAD\cBC-NMMv0.2a.wad del temp\WAD\cBC-NMMv0.2a.wad>nul
::if exist temp\WAD\cBC-DML.wad del temp\WAD\cBC-DML.wad>nul
if exist "temp\WAD\IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad" del "temp\WAD\IOS60v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad">nul
if exist "temp\WAD\IOS70v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad" del "temp\WAD\IOS70v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad">nul
if exist "temp\WAD\IOS80v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad" del "temp\WAD\IOS80v65535(IOS60v6174[FS-ES-NP-VP-DIP-RC24]).wad">nul
if exist temp\WAD\*.wad move temp\WAD\*.wad temp\>nul
::restore setting.txt if applicable
if /i "%SNEEKSELECT%" EQU "5" goto:skipSMW
if not exist "%nandpath%\title\00000001\00000002\data" mkdir "%nandpath%\title\00000001\00000002\data"
if /i "%SNKSERIAL%" EQU "current" move /y "%nandpath%"\setting.txt "%nandpath%"\title\00000001\00000002\data\setting.txt>nul
:skipSMW
if exist support\ShowMiiWads.cfg del support\ShowMiiWads.cfg>nul
::NANDINFO.TXT
if /i "%SNEEKSELECT%" EQU "2" goto:newnand
if /i "%SNEEKSELECT%" EQU "3" (goto:newnand) else (goto:nonewnand)
:newnand
if exist "%nandpath%\sneek\nandcfg.bin" del "%nandpath%\sneek\nandcfg.bin" >nul
echo ================================================== >"%nandpath%\nandinfo.txt"
echo %SNKVERSION%%SNKREGION% Emulated NAND created by ModMii on %DATE% >>"%nandpath%\nandinfo.txt"
echo ================================================== >>"%nandpath%\nandinfo.txt"
:nonewnand
if /i "%SNEEKSELECT%" NEQ "5" goto:nomoddednand
echo ============================================== >>"%nandpath%\nandinfo.txt"
echo Emulated NAND Modified by ModMii on %DATE% >>"%nandpath%\nandinfo.txt"
echo ============================================== >>"%nandpath%\nandinfo.txt"
:nomoddednand
::if /i "%SNEEKSELECT%" EQU "5" goto:skip
::Build setting.txt
if /i "%SNKSERIAL%" EQU "current" goto:skip
echo.
echo Building setting.txt using serial number: %SNKSERIAL%
support\settings %SNKSERIAL% >nul
if /i "%SNKREGION%" EQU "K" move /y KORsetting.txt "%nandpath%"\title\00000001\00000002\data\setting.txt >nul
if /i "%SNKREGION%" EQU "U" move /y USAsetting.txt "%nandpath%"\title\00000001\00000002\data\setting.txt >nul
if /i "%SNKREGION%" EQU "E" move /y EURsetting.txt "%nandpath%"\title\00000001\00000002\data\setting.txt >nul
if /i "%SNKREGION%" EQU "J" move /y JPNsetting.txt "%nandpath%"\title\00000001\00000002\data\setting.txt >nul
if /i "%SNKREGION%" NEQ "K" del KORsetting.txt>nul
if /i "%SNKREGION%" NEQ "E" del EURsetting.txt>nul
if /i "%SNKREGION%" NEQ "J" del JPNsetting.txt>nul
if /i "%SNKREGION%" NEQ "U" del USAsetting.txt>nul
if exist "%nandpath%"\title\00000001\00000002\data\setting.txt (echo setting.txt built using this serial: %SNKSERIAL% >>"%nandpath%\nandinfo.txt") else (echo setting.txt failed to build properly >>"%nandpath%\nandinfo.txt")
:skip
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 60
if "%ThemeSelection%"=="" goto:quickskip2
if /i "%ThemeSelection%" EQU "N" goto:quickskip
if /i "%ThemeSelection%" EQU "D" goto:quickskip
echo.
echo Copying over Custom Theme
if /i "%ThemeSelection%" EQU "R" set themecolour=Red
if /i "%ThemeSelection%" EQU "G" set themecolour=Green
if /i "%ThemeSelection%" EQU "BL" set themecolour=Blue
if /i "%ThemeSelection%" EQU "O" set themecolour=Orange
if exist "temp\ModThemes\DarkWii_%themecolour%_%effect%_%SNKVERSION%%SNKREGION%.csm" (echo Custom System Menu Theme Installed - Dark Wii %themecolour% >>"%nandpath%\nandinfo.txt") else (echo Custom System Menu Theme Failed to Install Properly >>"%nandpath%\nandinfo.txt")
move /y "temp\ModThemes\DarkWii_%themecolour%_%effect%_%SNKVERSION%%SNKREGION%.csm" "%nandpath%"\title\00000001\00000002\content\%SMTHEMEAPP%.app>nul
goto:quickskip2
:quickskip
if /i "%ThemeSelection%" NEQ "D" goto:quickskip2
echo.
echo Restoring Original Theme
if exist "temp\ModThemes\%SMTHEMEAPP%_%SNKVERSION%%SNKREGION%.app" (echo Original System Menu Theme Restored >>"%nandpath%\nandinfo.txt") else (echo Failed to Restore Original System Menu Theme >>"%nandpath%\nandinfo.txt")
move /y "temp\ModThemes\%SMTHEMEAPP%_%SNKVERSION%%SNKREGION%.app" "%nandpath%"\title\00000001\00000002\content\%SMTHEMEAPP%.app>nul
:quickskip2
if exist temp\ModThemes rd /s /q temp\ModThemes
if exist temp\WAD rd /s /q temp\WAD
::disable wbfs and games folder creation for now
goto:notDI
if /i "%SNEEKSELECT%" EQU "5" goto:skip
::---------if building uneek+di or sneek+di add games\wbfs folder to usb---------
if /i "%SNEEKTYPE:~1,1%" NEQ "D" goto:notDI
if not exist "%DRIVEU%\games" mkdir "%DRIVEU%\games" >nul
if /i "%neek2o%" EQU "off" goto:notDI
if not exist "%DRIVEU%\WBFS" mkdir "%DRIVEU%\WBFS" >nul
:notDI
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 70
if /i "%SNEEKSELECT%" EQU "5" goto:skip
::---------building cdf.vff----------
echo.
echo Building cdb.vff to speed up the time required to launch s\uneek the first time
cd support
writecbd.exe
cd..
if exist support\cdb.vff move /y support\cdb.vff "%nandpath%"\title\00000001\00000002\data\cdb.vff>nul
:skip
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 80
if /i "%PRIIFOUND%" EQU "Yes" goto:skipSNKpri
if /i "%SNKPRI%" NEQ "Y" goto:skipSNKpri
echo.
echo Downloading Priiloader for Emulated NANDs
echo.
if /i "%AUSKIP%" EQU "OFF" start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/EmuPriiloader.zip"
if /i "%AUSKIP%" EQU "OFF" goto:skip
if not exist temp\EmuPriiloader.zip start /min /wait support\wget --no-check-certificate -t 3 "https://raw.githubusercontent.com/modmii/modmii.github.io/master/temp/EmuPriiloader.zip"
::Priiloader-v0.7neek.app is a mirror of: https://sourceforge.net/projects/neek2o/files/priiloader.app/download?use_mirror=master&download=&failedmirror=ufpr.dl.sourceforge.net
:skip
if exist EmuPriiloader.zip move /Y EmuPriiloader.zip temp\EmuPriiloader.zip>nul
if not exist temp\EmuPriiloader.zip (echo Failed to Install Priiloader >>"%nandpath%\nandinfo.txt") & (goto:skipSNKpri)
echo Priiloader Installed >>"%nandpath%\nandinfo.txt"
support\7za x -aoa "temp\EmuPriiloader.zip" -o"%nandpath%" -r
move /y "%nandpath%\title\00000001\00000002\content\%SMAPP%.app" "%nandpath%\title\00000001\00000002\content\1%SMAPP:~1%.app" >nul
move /Y "%nandpath%\title\00000001\00000002\content\000000Priiloader.app" "%nandpath%\title\00000001\00000002\content\%SMAPP%.app" >nul
::if not exist "%nandpath%"\title\00000001\00000002\data mkdir "%nandpath%"\title\00000001\00000002\data >nul
::move /Y temp\hacks.ini "%nandpath%"\title\00000001\00000002\data\hacks.ini >nul
::move /Y temp\hacks_hash.ini "%nandpath%"\title\00000001\00000002\data\hackshas.ini >nul
if /i "%SNKFLOW%" NEQ "Y" goto:skipSNKpri
echo Adding WiiFlow forwarder dol to Priiloader's installed file.
echo.
if exist temp\Priiloader-Forwader-Loader-DWFA.dol move /y temp\Priiloader-Forwader-Loader-DWFA.dol "%nandpath%"\title\00000001\00000002\data\main.bin>nul
:skipSNKpri
if /i "%SNKFLOW%" EQU "Y" echo WiiFlow Forwarder Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%uninstallprii%" NEQ "yes" goto:skippriiuninstall
echo.
echo Removing Priiloader from emulated NAND
echo.
move /y "%nandpath%\title\00000001\00000002\content\1%SMAPP:~1%.app" "%nandpath%\title\00000001\00000002\content\%SMAPP%.app" >nul
if exist "%nandpath%"\title\00000001\00000002\data\hacks.ini del "%nandpath%"\title\00000001\00000002\data\hacks.ini >nul
if exist "%nandpath%"\title\00000001\00000002\data\hackshas.ini del "%nandpath%"\title\00000001\00000002\data\hackshas.ini >nul
if exist "%nandpath%"\title\00000001\00000002\data\main.bin del "%nandpath%"\title\00000001\00000002\data\main.bin >nul
echo Priiloader Uninstalled >>"%nandpath%\nandinfo.txt"
:skippriiuninstall
::add extra info to "%nandpath%\nandinfo.txt"
if not exist "%nandpath%\title\00010001\4e4b324f\content\00000001.app" goto:skip
if /i "%nswitchFound%" NEQ "YES" echo nSwitch Channel Installed >>"%nandpath%\nandinfo.txt"
:skip
if /i "%SNKOHBC%" EQU "Y" echo Homebrew Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%SNKPLC%" EQU "Y" echo postLoader Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%SNKCIOS%" EQU "Y" echo cIOS249 rev14 Installed >>"%nandpath%\nandinfo.txt"
if /i "%SNKS2U%" EQU "Y" echo Switch2Uneek Forwarder Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%PIC%" EQU "Y" echo Photo Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%NET%" EQU "Y" echo Internet Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%WEATHER%" EQU "Y" echo Weather Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%NEWS%" EQU "Y" echo News Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%MIIQ%" EQU "Y" echo Mii Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%Shop%" EQU "Y" echo Shopping Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%Speak%" EQU "Y" echo Wii Speak Channel Installed >>"%nandpath%\nandinfo.txt"
if /i "%SNEEKSELECT%" NEQ "5" goto:skipthis
if /i "%BCtype%" EQU "BC" goto:skipthis
if /i "%BCtype%" EQU "NONE" goto:skipthis
::Old DML is uninstalled when detected
if /i "%SNKcBC%" NEQ "DML" goto:continue
if /i "%BCtype%" EQU "DML" echo Outdated DML uninstalled from Emulated NAND >>"%nandpath%\nandinfo.txt"
if /i "%BCtype%" EQU "DML" goto:skipthis
:continue
if /i "%BCtype%" EQU "%SNKcBC%" goto:skipthis
echo %BCTYPE% Uninstalled >>"%nandpath%\nandinfo.txt"
:skipthis
if /i "%BCtype%" EQU "NMM" goto:noNMM
if /i "%SNKcBC%" EQU "NMM" echo NMM (No More Memory-Cards) Installed >>"%nandpath%\nandinfo.txt"
:noNMM
if /i "%BCtype%" EQU "DML" goto:noDML
if /i "%SNKcBC%" EQU "DML" echo DML WAD (install to real NAND) >>"%nandpath%\nandinfo.txt"
:noDML
IF not "%addwadfolder%"=="" echo Custom Folder of WADs Installed: "%addwadfolder%" >>"%nandpath%\nandinfo.txt"
if exist temp\Priiloader-Forwader-Loader-DWFA.dol del temp\Priiloader-Forwader-Loader-DWFA.dol>nul
copy /y temp\ModMii_Log.bat temp\ModMii_Log_SNK.bat>nul
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 100
::small pause
::@ping 127.0.0.1 -n 2 -w 1000> nul
goto:finishsneekinstall
::----------------------------------SNEEK INSTALL FINISH------------------------------------
:finishsneekinstall
::RESTORE DRIVE SETTINGS
set "DRIVE=%REALDRIVE%"
::if /i "%SNEEKSELECT%" EQU "1" goto:finishsneekinstall3
::clear download queue
set MENUREAL=S
goto:CLEAR
:finishsneekinstall2
set MENU1=1
::queue up files that need to TRULY be saved to %Drive%
if /i "%SNKS2U%" NEQ "Y" (set nSwitch=*) & (set yawm=*)
if /i "%nswitchFound%" EQU "Yes" (set nSwitch=) & (set yawm=)
if /i "%SNKS2U%" EQU "Y" (set S2U=*) & (set yawm=*)
if /i "%SNKcBC%" EQU "DML" (set DML=*) & (set yawm=*)
if /i "%SNKFLOW%" EQU "Y" set FLOW=*
if /i "%SNKPLC%" EQU "Y" set PL=*
if /i "%AbstinenceWiz%" EQU "Y" (set nSwitch=) & (set yawm=) & (goto:Download)
:tinyskip
goto:DLCOUNT
:finishsneekinstall3
::check for errors - do not do if ONLY installing sneek
if /i "%SNEEKSELECT%" EQU "1" goto:nocheck
if exist temp\ModMii_Log_SNK.bat del temp\ModMii_Log_SNK.bat>nul
if not exist "temp\ModMii_Log.bat" (set problematicDLs=0) & (goto:nocounting)
support\sfk filter -quiet "temp\ModMii_Log.bat" -rep _"""__ -write -yes
::count # of problematic downloads
support\sfk filter -quiet "temp\ModMii_Log.bat" -+"[%redtext%]" -write -yes
set problematicDLs=0
setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%i in (temp\ModMii_Log.bat) do set /a problematicDLs=!problematicDLs!+1
setlocal DISABLEDELAYEDEXPANSION
:nocounting
if /i "%problematicDLs%" EQU "0" (set snksuccess=Successfully) else (set snksuccess=)
if /i "%problematicDLs%" EQU "0" (set snkfailure=) else (set snkfailure= but with errors)
if /i "%SKINmode%" EQU "Y" goto:noaudio
if /i "%AudioOption%" NEQ "on" goto:noaudio
if /i "%problematicDLs%" EQU "0" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
:noaudio
:nocheck
if /i "%SKINmode%" EQU "Y" goto:noaudio
if /i "%SNEEKSELECT%" NEQ "1" goto:noaudio
if /i "%AudioOption%" NEQ "on" goto:noaudio
start support\nircmd.exe mediaplay 3000 "%Success.mp3%"
:noaudio
if /i "%cmdlinemode%" EQU "Y" goto:problemlog
set MENUREAL=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
if /i "%AbstinenceWiz%" NEQ "Y" goto:notabstinence
if /i "%FIRMSTART%" NEQ "o" echo Abstinence Wizard for %FIRMSTART%%REGION%
if /i "%FIRMSTART%" EQU "o" echo Abstinence Wizard for ^<2.2%REGION%
echo.
:notabstinence
::both sneek install and nand build
if /i "%SNEEKSELECT%" NEQ "3" goto:skip
if /i "%neek2o%" EQU "on" goto:neek2o3report
if /i "%SNEEKTYPE%" EQU "SD" echo %snksuccess% installed SNEEK+DI rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "UD" echo %snksuccess% installed UNEEK+DI rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "S" echo %snksuccess% installed SNEEK rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "U" echo %snksuccess% installed UNEEK rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
goto:skip
:neek2o3report
if /i "%SNEEKTYPE%" EQU "SD" echo %snksuccess% installed SNEEK+DI neek2o rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "UD" echo %snksuccess% installed UNEEK+DI neek2o rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "S" echo %snksuccess% installed SNEEK neek2o rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "U" echo %snksuccess% installed UNEEK neek2o rev%CurrentRev% and built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
:skip
::only install sneek
if /i "%SNEEKSELECT%" NEQ "1" goto:skip
if /i "%neek2o%" EQU "on" goto:neek2o1report
if /i "%SNEEKTYPE%" EQU "SD" echo Successfully installed SNEEK+DI rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "UD" echo Successfully installed UNEEK+DI rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "U" echo Successfully installed UNEEK rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "S" echo Successfully installed SNEEK rev%CurrentRev%
goto:skip
:neek2o1report
if /i "%SNEEKTYPE%" EQU "SD" echo Successfully installed SNEEK+DI neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "UD" echo Successfully installed UNEEK+DI neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "U" echo Successfully installed UNEEK neek2o rev%CurrentRev%
if /i "%SNEEKTYPE%" EQU "S" echo Successfully installed SNEEK neek2o rev%CurrentRev%
:skip
::only build nand
if /i "%SNEEKSELECT%" NEQ "2" goto:skip
if /i "%SNEEKTYPE%" EQU "SD" echo %snksuccess% Built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "UD" echo %snksuccess% Built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "U" echo %snksuccess% Built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
if /i "%SNEEKTYPE%" EQU "S" echo %snksuccess% Built a %SNKVERSION%%SNKREGION% Emulated Nand%snkfailure%
:skip
if /i "%SNEEKSELECT%" EQU "5" echo Emulated Nand has been modified %snkfailure%
:problemlog
::list problematic Download
if /i "%SNEEKSELECT%" EQU "1" goto:noproblems
if /i "%problematicDLs%" EQU "0" goto:noproblems
if /i "%cmdlinemode%" NEQ "Y" echo.
if /i "%cmdlinemode%" NEQ "Y" echo The following file(s) failed to download properly:
if /i "%cmdlinemode%" NEQ "Y" call temp\ModMii_Log.bat
support\sfk filter -quiet "temp\ModMii_Log.bat" -rep _[%redtext%]__ -rep _[def]__ -rep _"support\sfk echo "__ -rep _"echo "__ >temp\ModMii_Log_temp.txt
echo ------ >>"%nandpath%\nandinfo.txt"
echo Errors >>"%nandpath%\nandinfo.txt"
echo ------ >>"%nandpath%\nandinfo.txt"
if exist "temp\nandinfo.txt" del "temp\nandinfo.txt">nul
copy "%nandpath%\nandinfo.txt"+"temp\ModMii_Log_temp.txt" "temp\nandinfo.txt">nul
move /y "temp\nandinfo.txt" "%nandpath%\nandinfo.txt">nul
:noproblems
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:notcmdfinish
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
if /i "%problematicDLs%" EQU "0" exit
support\sfk filter -quiet "temp\ModMii_Log.bat" -rep _"support\sfk echo "__ -rep _"echo "__ -rep _"[%redtext%]"__ -rep _"[%yellowtext%]"__ -write -yes
move /y "temp\ModMii_Log.bat" "temp\ModMii_CMD_LINE_Log_Errors.txt">nul
if /i "%SKINmode%" NEQ "Y" start notepad "temp\ModMii_CMD_LINE_Log_Errors.txt"
if /i "%SKINmode%" EQU "Y" start support\wizapp PB CLOSE
exit
:notcmdfinish
echo.
if /i "%SNEEKSELECT%" NEQ "2" goto:skip
if /i "%SNEEKTYPE%" EQU "U" goto:skipsdmsg
if /i "%SNEEKTYPE%" EQU "UD" goto:skipsdmsg
:skip
echo * Make sure the contents of "%DRIVE%" is saved to your FAT32 SD Card
:skipsdmsg
if /i "%SNEEKTYPE%" EQU "UD" goto:UDRIVEMSG
if /i "%SNEEKTYPE%" NEQ "U" goto:skipUDRIVEMSG
:UDRIVEMSG
echo * Make sure the contents of "%DRIVEU%" is saved to your FAT32 Hard Drive
:skipUDRIVEMSG
echo.
echo CUSTOMIZED NOTES FOR YOUR BUILD OF NEEK:
echo.
echo * When launching any form of SNEEK for the first time, it could take a long time
echo to load the System Menu, but it will be much quicker the second time around.
echo.
echo * If you experience issues make sure your device is formatted as FAT32,
echo MBR (not GPT) and the drive is set to primary (not logical).
echo ModMii's USB-Loader Setup Wizard can help with FAT32 and MBR.
echo.
echo * If you have problems loading your Emulated NAND, copy cert.sys
echo from an original nand dump to your emulated nand's sys folder.
echo.
echo * You can manually override Bootmii to launch neek by renaming
echo your BootmiiNeek folder to SD:\Bootmii and launching "Bootmii"
echo.
echo * You can launch uneek (or uneek+DI) without requiring an SD Card
echo using USB-Loader GX. USB-Loader GX also has an option to copy
echo a console's SYSCONF into your current emuNAND (channel) path,
echo so if you add new controllers or a balance board to your NAND,
echo use the copy SYSCONF feature also add it to neek's emuNAND.
echo.
echo * SD:\Bootmii is not required to launch neek from USB-Loader GX.
echo If you use USB-Loader GX's EmuNAND neek feature, you can have both SNEEK and
echo UNEEK at the same time (with or without DI). ModMii will detect SNEEK when
echo installing UNEEK and vice versa and ask if you want to overwrite SD files.
echo For dual boot you will want only SNEEK files on SD and only UNEEK files on USB.
echo The version of NEEK that will be loaded is based on your EmuNAND
echo location in USB-Loader GX's settings: Sneek if on SD, and Uneek if on USB.
echo.
if /i "%SNKS2U%" EQU "Y" goto:quickskip
echo * Install the neek2o (nSwitch) WAD\channel then launch the channel in order to
echo start NEEK. You can also use this channel to return to your real NAND.
echo.
:quickskip
if /i "%SNKS2U%" NEQ "Y" goto:quickskip
echo * Access UNEEK/UNEEK+DI by launching switch2uneek from the HBC.
echo Alternatively, can use YAWM ModMii Edition to install the
echo switch2uneek forwarder channel that ModMii saved to your SD card.
echo.
:quickskip
if /i "%SNKcBC%" NEQ "DML" goto:skipDMLmsg
echo * Install the DML WAD using YAWM ModMii Edition to your REAL NAND
echo in order for your Emulated NAND to use DML. DML currently
echo requires SNEEK+DI r157 or higher and neek2o has yet to support DML.
echo.
:skipDMLmsg
if /i "%SNEEKTYPE%" EQU "S" goto:skipDIComments
if /i "%SNEEKTYPE%" EQU "U" goto:skipDIComments
if /i "%neek2o%" EQU "on" goto:skipDiscexWarning
echo * Warning: you have disabled ModMii's neek2o option and have built a DI
echo version of the original neek instead. At least 1 game must be saved to
echo your usb:/games folder in extracted neek format or DI freezes and
echo neek+di will not boot.
echo.
:skipDiscexWarning
echo * To add Games to the Game/DI Menu, you can use ModMii, WiiBackupManager
echo or wit.exe to extract Games in neek format to your FAT32 USB Hard Drive.
if /i "%neek2o%" EQU "on" echo neek2o is also able to load standard game file formats from USB:\WBFS.
echo.
echo * When using SNEEK+DI or UNEEK+DI, you can access the Game/DI Menu
echo by pressing "1" on the Wiimote. To access other settings
echo (including Region Options), you must press "+" from within the DI Menu.
echo.
:skipDIComments
echo * Access neek settings by pressing "2" on the Wiimote while in
echo the emulated system menu.
echo.
echo * Both ModMii and ShowMiiWads can be used to decrypt your real
echo Wii's Bootmii NAND dump (nand.bin) to use as an emulated NAND,
echo and they can add custom channels/WADs to an emulated NAND.
echo ShowMiiWads is available on ModMii Classic's Download Page 2.
echo.
echo * For more SNEEK info, like formatting a USB Hard Drive for SNEEK,
echo you can visit: tiny.cc/SNEEK-DI
echo.
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:notcmdfinish
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
echo After Reviewing Your Tips - Press Any Key to Exit
pause>nul
exit
:notcmdfinish
if /i "%SNEEKSELECT%" EQU "1" goto:miniskip
if /i "%SNEEKSELECT%" EQU "4" goto:miniskip
if exist "%nandpath%\nandinfo.txt" start notepad "%nandpath%\nandinfo.txt"
:miniskip
echo Press any key to return to the Main Menu.
pause>nul
echo.
echo Are you sure^? Make sure you have read or copied these notes^!
echo Press any key again to return to the Main Menu.
pause>nul
goto:MENU
::.........................................FINISH / Verify..................................
:FINISH
if exist temp\DLnames.txt del temp\DLnames.txt>nul
if exist temp\DLgotos.txt del temp\DLgotos.txt>nul
set played=
if /i "%MENU1%" EQU "S" goto:wad2nand
:FINISH2
if /i "%MENUREAL%" EQU "S" goto:finishsneekinstall3
setlocal ENABLEDELAYEDEXPANSION
set loglines=0
if /i "%DB%" EQU "C" goto:countcustom
if not exist temp\ModMii_Log.bat goto:donecounting
support\sfk filter -quiet "temp\ModMii_Log.bat" -rep _"""__ -write -yes
for /f "delims=" %%i in (temp\ModMii_Log.bat) do set /a loglines=!loglines!+1
::count # of problematic downloads
copy /y "temp\ModMii_Log.bat" "temp\ModMii_Log_Red.bat">nul
support\sfk filter -quiet "temp\ModMii_Log_Red.bat" -+"[%redtext%]" -write -yes
set problematicDLs=0
for /f "delims=" %%i in (temp\ModMii_Log_Red.bat) do set /a problematicDLs=!problematicDLs!+1
del "temp\ModMii_Log_Red.bat">nul
goto:donecounting
:countcustom
if exist Custom.md5 for /f "delims=" %%i in (Custom.md5) do set /a loglines=!loglines!+1
:donecounting
setlocal DISABLEDELAYEDEXPANSION
::check ACTUAL drive letter
::SD
if /i "%DRIVE:~1,1%" NEQ ":" (set ActualDrive=%cd:~0,2%) else (set ActualDrive=%DRIVE:~0,2%)
if /i "%ActualDrive%" EQU "%cd:~0,2%" (set DrivesNeedingFreeSpace=%ActualDrive%) else (set DrivesNeedingFreeSpace=%ActualDrive% and %cd:~0,2%)
::USB
if /i "%USBCONFIG%" NEQ "USB" goto:skip
if /i "%DRIVEU:~1,1%" NEQ ":" (set ActualDriveU=%cd:~0,2%) else (set ActualDriveU=%DRIVEU:~0,2%)
if /i "%ActualDriveU%" EQU "%cd:~0,2%" goto:skip
if /i "%ActualDriveU%" EQU "%ActualDrive%" goto:skip
set DrivesNeedingFreeSpace=%DrivesNeedingFreeSpace% and %ActualDriveU%
:skip
if /i "%DB%" EQU "C" goto:noaudio
if /i "%SKINmode%" EQU "Y" goto:noaudio
if /i "%AudioOption%" NEQ "on" goto:noaudio
if /i "%played%" EQU "yes" goto:noaudio
if /i "%problematicDLs%" EQU "0" (start support\nircmd.exe mediaplay 3000 "%Success.mp3%") else (start support\nircmd.exe mediaplay 3000 "%Fail.mp3%")
set played=yes
:noaudio
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\" goto:skip
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii.lnk" support\nircmd.exe shortcut "%cd%\ModMii.exe" "~$folder.programs$\ModMii" "ModMii"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\ModMii Skin.lnk" support\nircmd.exe shortcut "%cd%\ModMiiSkin.exe" "~$folder.programs$\ModMii" "ModMii Skin"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Uninstall.lnk" support\nircmd.exe shortcut "%cd%\Uninstall.exe" "~$folder.programs$\ModMii" "Uninstall"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Website & Help.lnk" support\nircmd.exe shortcut "https://modmii.github.io" "~$folder.programs$\ModMii" "Website & Help"
if not exist "%appdata%\Microsoft\Windows\Start Menu\Programs\ModMii\Open ModMii Folder.lnk" support\nircmd.exe shortcut "%windir%\explorer.exe" "~$folder.programs$\ModMii" "Open ModMii Folder" "%cd%\"
:skip
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:notcmdfinish
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
if /i "%problematicDLs%" EQU "0" echo * %DLTOTAL% file(s) downloaded succcessfully>>temp\ModMii_Log.bat
if /i "%problematicDLs%" EQU "0" goto:noproblemscmd
echo * %problematicDLs% of %DLTOTAL% file(s) are Invalid, Missing or were Not Updated properly>>temp\ModMii_Log.bat
:noproblemscmd
support\sfk filter -quiet "temp\ModMii_Log.bat" -rep _"support\sfk echo "__ -rep _"echo "__ -rep _"[%redtext%]"__ -rep _"[%yellowtext%]"__ -write -yes
move /y "temp\ModMii_Log.bat" "temp\ModMii_CMD_LINE_Log.txt">nul
if /i "%SKINmode%" EQU "Y" (start support\wizapp PB CLOSE) & (exit)
if /i "%problematicDLs%" NEQ "0" start notepad "temp\ModMii_CMD_LINE_Log.txt"
exit
:notcmdfinish
Set FINISH=
cls
echo ModMii v%currentversion%
echo by XFlak
echo.
if /i "%DB%" EQU "N" echo DOWNLOAD LOG
if /i "%DB%" EQU "C" echo DOWNLOAD LOG - Custom Log
echo.
::disable md5 stuff
goto:SkipCustomCheck
If not exist Custom.md5 goto:SkipCustomCheck
if /i "%DB%" NEQ "C" goto:SkipCustomCheck
support\fvc -x -v Custom.md5
:SkipCustomCheck
if /i "%DB%" NEQ "N" goto:miniskip
if exist temp\ModMii_Log.bat (call temp\ModMii_Log.bat)
:miniskip
if /i "%DB%" EQU "C" goto:skipcopytoSDmsg
echo.
if /i "%problematicDLs%" NEQ "0" goto:problems
support\sfk echo -spat \x20 \x20[%greentext%]* %DLTOTAL% file\x28s\x29 downloaded succcessfully
if /i "%MENU1%" EQU "W" goto:showme
if /i "%MENU1%" EQU "H" goto:showme
if /i "%MENU1%" EQU "U" goto:showme
if /i "%MENU1%" EQU "SU" goto:showme
if /i "%MENU1%" EQU "RC" goto:showme
if /i "%AbstinenceWiz%" EQU "Y" goto:showme
goto:dontshow
:showme
support\sfk echo -spat \x20 \x20 [%greentext%] You should now follow your custom generated ModMii guide.
:dontshow
goto:noproblems
:problems
support\sfk echo -spat \x20 \x20[%redtext%]* %problematicDLs% of %DLTOTAL% file\x28s\x29 are Invalid, Missing or were Not Updated properly
echo.
echo * Make sure you have free space here: %DrivesNeedingFreeSpace%
echo Check internet connection (try disabling firewall/bypasing proxy if applicable)
support\sfk echo -spat \x20 \x20 [%redtext%] Enter \x22R\x22 to repeat download before proceeding with your ModMii guide.
goto:skipcopytoSDmsg
:noproblems
if /i "%USBCONFIG%" EQU "USB" goto:skipcopytoSDmsg
echo.
echo * Make sure the contents of "%DRIVE%" is saved to your FAT32 SD Card
echo.
echo * Most homebrew (except Bootmii ^& Sneek) also work if copied
echo to a FAT32 Hard Drive and plugged into USB Port0 (the one nearest the edge)
echo.
echo * If you don't have an SD Card or a Hard Drive you can still load apps
echo (dol\elf files) or install WADs to your Wii via WiFi by opening them
echo with ModMii or via drag and drop
:skipcopytoSDmsg
::Warning message for 2x Bannerbomb DLs
if /i "%BB1%" NEQ "*" goto:no2xBB
if /i "%BB2%" NEQ "*" goto:no2xBB
echo.
echo Note: Bannerbomb v1 saved to "private" folder and Bannerbomb v2 saved to
echo "private2" folder. To use Bannerbomb v2 instead of v1 swap the
echo private folder names.
:no2xBB
echo.
if exist "%DRIVE%" echo O = Open File Location "%Drive%"
if /i "%DB%" NEQ "C" goto:miniskip
if exist custom.md5 echo L = Log: View custom.md5 to see which files were checked
:miniskip
if /i "%DLTOTAL%" EQU "0" goto:dltotaliszero
echo.
echo R = Repeat Download
echo S = Save Download Queue
:dltotaliszero
echo.
if /i "%DB%" EQU "N" goto:miniskip
if exist temp\ModMii_Log.bat echo N = Verify NEW Downloads only
:miniskip
if /i "%DB%" EQU "C" goto:miniskip
if exist Custom.md5 echo C = Verify Files against Custom.md5
:miniskip
if exist CUSTOM_COPY_TO_SD goto:tinyskip
if exist CUSTOM_COPY_TO_USB (goto:tinyskip) else (goto:nocustoms)
:tinyskip
echo.
if exist CUSTOM_COPY_TO_SD echo CC = Copy Contents of CUSTOM_COPY_TO_SD to "%Drive%"
if exist CUSTOM_COPY_TO_USB echo CCU = Copy Contents of CUSTOM_COPY_TO_USB to "%DriveU%"
:nocustoms
echo.
echo M = Main Menu
echo E = Exit
echo.
set /p FINISH= Enter Selection Here:
if /i "%FINISH%" NEQ "CC" goto:miniskip
if not exist CUSTOM_COPY_TO_SD goto:miniskip
if not exist "%DRIVE%" mkdir "%DRIVE%" >nul
xcopy /y /e "CUSTOM_COPY_TO_SD" "%DRIVE%"
goto:FINISH2
:miniskip
if /i "%FINISH%" NEQ "CCU" goto:miniskip
if not exist CUSTOM_COPY_TO_USB goto:miniskip
if not exist "%DRIVEU%" mkdir "%DRIVEU%" >nul
xcopy /y /e "CUSTOM_COPY_TO_USB" "%DRIVEU%"
goto:FINISH2
:miniskip
if /i "%FINISH%" EQU "M" goto:MENU
if /i "%FINISH%" EQU "E" EXIT
if not exist "%DRIVE%" goto:drivedoesnotexist2
if /i "%FINISH%" EQU "O" explorer "%DRIVE%"
if /i "%FINISH%" EQU "O" goto:Finish2
:drivedoesnotexist2
if /i "%DB%" NEQ "C" goto:nolog
if not exist "custom.md5" goto:nolog
if /i "%FINISH%" EQU "L" start notepad "custom.md5"
if /i "%FINISH%" EQU "L" goto:Finish2
:nolog
if not exist Custom.md5 goto:skip
if /i "%FINISH%" EQU "C" SET DB=C
if /i "%FINISH%" EQU "C" goto:Finish2
:skip
if not exist temp\ModMii_Log.bat goto:skip
if /i "%FINISH%" EQU "N" SET DB=N
if /i "%FINISH%" EQU "N" goto:FINISH2
:skip
if /i "%DLTOTAL%" EQU "0" goto:dltotaliszero2
if /i "%FINISH%" EQU "R" copy /y "temp\DLgotos-copy.txt" "temp\DLgotos.txt">nul
if /i "%FINISH%" EQU "R" goto:DLSettings2
if /i "%FINISH%" EQU "S" (set beforesave=FINISH) & (goto:SaveDownloadQueue)
:dltotaliszero2
echo You Have Entered an Incorrect Key
@ping 127.0.0.1 -n 2 -w 1000> nul
goto:FINISH2
::..........................DOWNLOAD SETTINGS................................
:DLSETTINGS
cls
set "REALDRIVE=%DRIVE%"
if /i "%MENU1%" EQU "W" goto:guide
if /i "%MENU1%" EQU "H" goto:guide
if /i "%MENU1%" NEQ "U" goto:miniskip
if /i "%USBCONFIG%" EQU "USB" set "DRIVE=%DRIVEU%"
goto:guide
:miniskip
if /i "%MENU1%" EQU "SU" goto:guide
if /i "%MENU1%" EQU "RC" goto:guide
if /i "%secondrun%" EQU "Y" goto:DLSETTINGS2
if /i "%AbstinenceWiz%" EQU "Y" goto:guide
:DLSETTINGS2
cls
if exist temp\ModMii_Log_SNK.bat goto:donotdeletelog
if exist temp\ModMii_Log.bat del temp\ModMii_Log.bat>nul
:donotdeletelog
SET CURRENTDL=0
:DLSETTINGS3
::clear a bunch of stuff
set name=
set wadname=
set dlname=
set ciosslot=
set ciosversion=
set md5=
set md5alt=
set basewad=none
set basewadb=none
set md5base=
set md5basealt=
set code1=
set code2=
set version=
set md5baseb=
set md5basebalt=
set code1b=
set code2b=
set path1=
set versionb=
set basecios=
set diffpath=
set code2new=
set lastbasemodule=
set category=
set wadnameless=
set patchname=
set slotname=
set slotcode=
set versionname=
set versioncode=
set DEC=
set VERFINAL=
set HEX=
set VER=
set wadfolder=
set verfinal=
set PATCHCODE=
set alreadyexists=
set patch=
set multiplefail=
set AdvancedDownload=
if not exist temp\DLgotos.txt goto:FINISH
::Loop through the the following once for EACH line in *.txt
for /F "tokens=*" %%A in (temp\DLgotos.txt) do call :processDLnext %%A
goto:Finish
:processDLnext
set CurrentDLNAME=%*
::if /i "%name:~0,17%" EQU "Advanced Download" set AdvancedDownload=Y
if /i "%CurrentDLNAME:~-4%" EQU ".bat" set AdvancedDownload=Y
if /i "%CurrentDLNAME:~-4%" EQU ".bat" call "%CurrentDLNAME%"
if /i "%CurrentDLNAME:~-4%" EQU ".bat" goto:downloadstart
call "Support\subscripts\DB.bat"
::goto:EOF
::cls
goto:downloadstart
::---------------------------EXPLOITS GUIDES------------------------------
:EXPLOITS
::check if only 1 exploit (since str2hax is always a secondary option, only happens if str2hax explicity selected. Unless on 4.3 then we'll make LetterBomb Secondary
if /i "%FIRMSTART%" EQU "4.3" goto:skip
if /i "%EXPLOIT%" EQU "X" (copy /y "%Drive%"\%guidename%+Support\Guide\str2hax.001 "%Drive%"\%guidename%>nul) & (goto:%afterexploit%)
:skip
if /i "%AbstinenceWiz%" EQU "Y" (echo You only need to perform ONE of the these exploits to complete this guide.^<br^>^<br^> >>"%Drive%"\%guidename%) & (goto:skipthispart)
::title for multiple exploits
echo ^<font size^=^"5^"^>^<b^>Launch an Exploit^<^/b^>^<^/font^>^<br^>>>"%Drive%"\%guidename%
If /i "%MENU1%" EQU "H" goto:startYawmME
::not hackmii solutions
If /i "%REGION%" NEQ "K" goto:skip
If /i "%FIRMSTART%" NEQ "4.3" goto:startYawmME
::not hackmii solutions and not korean start
:skip
echo You only need to perform ONE of the these exploits to complete this guide.^<br^>^<br^>Note that if you're missing an SD Card or your SD Card reader is broken, you can use the str2hax exploit to install the HBC and skip installing Bootmii and making a nand backup for now until you get an SD Card.^<br^>^<br^>>>"%Drive%"\%guidename%
goto:skipthispart
::korean start and Hackmii solutions
:startYawmME
echo You only need to perform ONE of the these exploits to complete this guide.^<br^>^<br^>Note that if you're missing an SD Card or your SD Card reader is broken, you cannot readily use the str2hax exploit to launch YAWM ModMii Edition.^<br^>^<br^>>>"%Drive%"\%guidename%
:skipthispart
echo ^<div style^>>>"%Drive%"\%guidename%
::For 3.0-4.2 make Bannerbomb primary, str2hax secondary, copy script, and goto after
if /i "%FIRMSTART%" EQU "3.x" (echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Bannerbomb v1'^)^"^>Bannerbomb v1^<^/button^>>>"%Drive%"\%guidename%) & (echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%) & (goto:afterbuttons)
if /i "%FIRMSTART%" EQU "4.0" (echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Bannerbomb v1'^)^"^>Bannerbomb v1^<^/button^>>>"%Drive%"\%guidename%) & (echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%) & (goto:afterbuttons)
if /i "%FIRMSTART%" EQU "4.1" (echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Bannerbomb v1'^)^"^>Bannerbomb v1^<^/button^>>>"%Drive%"\%guidename%) & (echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%) & (goto:afterbuttons)
if /i "%FIRMSTART%" EQU "4.2" (echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Bannerbomb v2'^)^"^>Bannerbomb v2^<^/button^>>>"%Drive%"\%guidename%) & (echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%) & (goto:afterbuttons)
::make whatever was selected the primary
if /i "%EXPLOIT%" EQU "S" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Smash Stack'^)^"^>Smash Stack^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" NEQ "W" goto:skip
if /i "%Wilbrand%" NEQ "*" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'LetterBomb'^)^"^>LetterBomb^<^/button^>>>"%Drive%"\%guidename%
if /i "%Wilbrand%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Wilbrand'^)^"^>Wilbrand^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "L" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Indiana Pwns'^)^"^>Indiana Pwns^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" EQU "Y" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Yu-Gi Owned'^)^"^>Yu-Gi Owned^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" EQU "LB" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Bathaxx'^)^"^>Bathaxx^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" EQU "LS" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Return of the Jodi'^)^"^>Return of the Jodi^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" EQU "TOS" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Eri HaKawai'^)^"^>Eri HaKawai^<^/button^>>>"%Drive%"\%guidename%
if /i "%EXPLOIT%" EQU "T" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Twilight Hack'^)^"^>Twilight Hack^<^/button^>>>"%Drive%"\%guidename%
::str2hax primary if "all" exploits selected, unless MAC addy actually entered for Wilbrand, then make that primary cuz that took effort
if /i "%EXPLOIT%" EQU "?" goto:stay
if /i "%EXPLOIT%" EQU "X" (goto:stay) else (goto:skip)
:stay
if /i "%Wilbrand%" NEQ "*" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%
if /i "%Wilbrand%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--primary^" id^=^"defaultOpen^" style^=^"font-size^: x-large^;^" onclick=^"openTab^('ExploitTab', 'Wilbrand'^)^"^>Wilbrand^<^/button^>>>"%Drive%"\%guidename%
::str2hax secondary if "all" selected but mac addy entered
if /i "%Wilbrand%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%
:skip
::str2hax secondary if exploit is NOT "all" OR "X"
if /i "%EXPLOIT%" EQU "?" goto:skip
if /i "%EXPLOIT%" NEQ "X" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'str2hax'^)^"^>str2hax^<^/button^>>>"%Drive%"\%guidename%
:skip
::fill in secondaries
::wilbrand is never a secondary, if it's secondary Letterbomb used instead
::fill in secondaries
if /i "%FIRMSTART%" NEQ "4.3" goto:skip
if /i "%Wilbrand%" EQU "*" goto:skip
if /i "%EXPLOIT%" NEQ "W" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'LetterBomb'^)^"^>LetterBomb^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "S" goto:skip
If /i "%SMASH%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Smash Stack'^)^"^>Smash Stack^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "L" goto:skip
If /i "%PWNS%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Indiana Pwns'^)^"^>Indiana Pwns^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "Y" goto:skip
If /i "%YUGI%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Yu-Gi Owned'^)^"^>Yu-Gi Owned^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "LB" goto:skip
If /i "%Bathaxx%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Bathaxx'^)^"^>Bathaxx^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "LS" goto:skip
If /i "%ROTJ%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Return of the Jodi'^)^"^>Return of the Jodi^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "TOS" goto:skip
If /i "%TOS%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Eri HaKawai'^)^"^>Eri HaKawai^<^/button^>>>"%Drive%"\%guidename%
:skip
if /i "%EXPLOIT%" EQU "T" goto:skip
If /i "%TWI%" EQU "*" echo ^<button class^=^"tablinks btn btn--large btn--info^" style^=^"font-size^: x-large^;^" onclick^=^"openTab^('ExploitTab', 'Twilight Hack'^)^"^>Twilight Hack^<^/button^>>>"%Drive%"\%guidename%
:skip
:afterbuttons
echo ^<br^>^<br^>>>"%Drive%"\%guidename%
echo ^<div id^=^"str2hax^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\str2hax.001 "%Drive%"\%guidename%>nul
echo ^<^/div^>>>"%Drive%"\%guidename%
if /i "%BB1%" EQU "*" echo ^<div id^=^"Bannerbomb v1^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
if /i "%BB1%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\BBv1.001 "%Drive%"\%guidename%>nul
if /i "%BB1%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
if /i "%BB2%" EQU "*" echo ^<div id^=^"Bannerbomb v2^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
if /i "%BB2%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\BBv2.001 "%Drive%"\%guidename%>nul
if /i "%BB2%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
if /i "%Wilbrand%" EQU "*" echo ^<div id^=^"Wilbrand^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
if /i "%Wilbrand%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\Wilbrand.001 "%Drive%"\%guidename%>nul
if /i "%Wilbrand%" EQU "*" echo Note^: this exploit is console specific and has been created by ModMii for the ^<i^>4.3%region%^<^/i^> console with MAC address ^<i^>%macaddress:~0,-4%^*^*^*^*^<^/i^>. If you want to use this exploit on a different 4.3 console, use ModMii to build it again, or construct and download LetterBomb directly through your browser ^<a href^=^"https^:^/^/modmii.github.io^/LetterBomb.html^" target^=^"_blank^"^>here^<^/a^>.^<br^>>>"%Drive%"\%guidename%
if /i "%Wilbrand%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
if /i "%FIRMSTART%" NEQ "4.3" goto:skip
echo ^<div id^=^"LetterBomb^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\LetterBomb.001 "%Drive%"\%guidename%>nul
if /i "%REGION%" NEQ "E" echo ^<li^>Input your Wii's MAC Address and ^set your System Menu Version to 4.3%REGION%.>>"%Drive%"\%guidename%
if /i "%REGION%" EQU "E" echo ^<li^>Input your Wii's MAC Address and confirm System Menu Version 4.3E is selected.>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\LetterBomb2.001 "%Drive%"\%guidename%>nul
echo ^<^/div^>>>"%Drive%"\%guidename%
:skip
If /i "%SMASH%" EQU "*" echo ^<div id^=^"Smash Stack^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%SMASH%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\SmashStack.001 "%Drive%"\%guidename%>nul
If /i "%SMASH%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%PWNS%" EQU "*" echo ^<div id^=^"Indiana Pwns^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%PWNS%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\PWNS.001 "%Drive%"\%guidename%>nul
If /i "%PWNS%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%YUGI%" EQU "*" echo ^<div id^=^"Yu-Gi Owned^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%YUGI%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\YUGI.001 "%Drive%"\%guidename%>nul
If /i "%YUGI%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%Bathaxx%" EQU "*" echo ^<div id^=^"Bathaxx^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%Bathaxx%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\Bathaxx.001 "%Drive%"\%guidename%>nul
If /i "%Bathaxx%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%ROTJ%" EQU "*" echo ^<div id^=^"Return of the Jodi^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%ROTJ%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\ROTJ.001 "%Drive%"\%guidename%>nul
If /i "%ROTJ%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%TOS%" EQU "*" echo ^<div id^=^"Eri HaKawai^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%TOS%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\EriHaKawai.001 "%Drive%"\%guidename%>nul
If /i "%TOS%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
If /i "%TWI%" EQU "*" echo ^<div id^=^"Twilight Hack^" class^=^"ExploitTab^"^>>>"%Drive%"\%guidename%
If /i "%TWI%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\Twilight.001 "%Drive%"\%guidename%>nul
If /i "%TWI%" EQU "*" echo ^<^/div^>>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\side_spoiler_script.001 "%Drive%"\%guidename%>nul
goto:%afterexploit%
:guide
set installwads=
:guidestart
set guidename=ModMii_Wizard_Guide.html
set tabname=ModMii Wizard Guide
if /i "%MENU1%" EQU "H" (set guidename=ModMii_HackMii_Solutions_Guide.html) & (set tabname=ModMii HackMii Solutions Guide)
if /i "%MENU1%" EQU "U" (set guidename=ModMii_USBLoader_Setup_Guide.html) & (set tabname=ModMii USB-Loader Setup Guide)
if /i "%MENU1%" EQU "SU" (set guidename=ModMii_sysCheck_Updater_Guide.html) & (set tabname=ModMii SysCheck Updater Guide)
if /i "%MENU1%" EQU "RC" (set guidename=ModMii_Region_Change_Guide.html) & (set tabname=ModMii Region Change Guide)
if /i "%AbstinenceWiz%" EQU "Y" (set guidename=ModMii_Abstinence_Guide.html) & (set tabname=ModMii Abstinence Guide)
if exist "%temp%\format.txt" del "%temp%\format.txt">nul
if exist "%temp%\format2.txt" del "%temp%\format2.txt">nul
if exist "%temp%\Get-Disk.txt" del "%temp%\Get-Disk.txt">nul
SET COUNT7=1
cls
echo Generating Guide, it should pop up in a moment.
echo.
if /i "%SETTINGS%" EQU "G" echo Please read your guide carefully.
if /i "%SETTINGS%" NEQ "G" echo You can start to carefully read your guide while ModMii keeps working.
if /i "%SETTINGS%" NEQ "G" @ping 127.0.0.1 -n 3 -w 1000> nul
::---------------SKIN MODE-------------
if /i "%SkinMode%" EQU "Y" start support\wizapp PB UPDATE 50
if not exist "%DRIVE%" mkdir "%DRIVE%" >nul
if not exist "%Drive%"\%guidename% goto:norename
SET /a COUNT6=%COUNT6%+1
if exist "%DRIVE%"\%guidename:~0,-5%%COUNT6%.html goto:guide
move /y "%Drive%"\%guidename% "%DRIVE%"\%guidename:~0,-5%%COUNT6%.html >nul
:norename
::HTML HEADER
::so this works instead... why was I bothering with sfk echo before? Answer: it doesn't work with exclamation marks!
::echo ^<html^>
support\sfk echo -spat \x3chtml\x3e >"%Drive%"\%guidename%
support\sfk echo -spat \x3chead\x3e >>"%Drive%"\%guidename%
support\sfk echo -spat \x3ctitle\x3e%tabname%\x3c/title\x3e >>"%Drive%"\%guidename%
support\sfk echo -spat \x3clink rel=\x22icon\x22 type=\x22image/ico\x22 href=\x22https\x3a\x2f\x2fraw.githubusercontent.com/modmii/modmii.github.io/master/Support/icon.ico\x22\x3e\x3c/link\x3e>>"%Drive%"\%guidename%
support\sfk echo -spat \x3cstyle type=\x22text/css\x22\x3e>>"%Drive%"\%guidename%
support\sfk echo -spat body { font-family: Calibri, Arial, Helvetica, \x22Century Gothic\x22, sans-serif; }>>"%Drive%"\%guidename%
echo ol ^> li^:^:marker ^{font^-weight^: bold^;^}>>"%Drive%"\%guidename%
support\sfk echo -spat \x3c/style\x3e>>"%Drive%"\%guidename%
::UTF-8 fix just in case
echo ^<meta http-equiv^=^"Content-Type^" content^=^"text^/html^; charset^=UTF-8^"^> >>"%Drive%"\%guidename%
::so this works... why was I bothering with sfk echo before? Answer: it doesn't work with exclamation marks!
support\sfk echo -spat \x3c/head\x3e >>"%Drive%"\%guidename%
support\sfk echo -spat \x3cbody style=\x22margin:5px 5px 5px 35px;\x22\x3e >>"%Drive%"\%guidename%
support\sfk echo -spat %tabname%\x3cspan style\x3d\x22float\x3aright\x3b\x22\x3ev%currentversion% DB:%DBversion% Generated on %DATE% - %TIME:~0,-6%\x3c\x2fspan\x3e\x3cbr\x3e\x3cbr\x3e >>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\sprint-paramstart.001 "%Drive%"\%guidename%>nul
if /i "%MENU1%" NEQ "RC" goto:notRC
support\sfk echo -spat \x3cli\x3eDesired System Menu is %FIRM%%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "R" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Red Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "G" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Green Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "BL" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Blue Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "O" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Orange Theme\x3c/li\x3e>>"%Drive%"\%guidename%
goto:skipusb
:notRC
::------Abstinence parameters---------------
if /i "%AbstinenceWiz%" NEQ "Y" goto:notAbstinenceWiz
if /i "%FIRMSTART%" NEQ "o" support\sfk echo -spat \x3cli\x3eCurrent System Menu is %FIRMSTART%%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%FIRMSTART%" EQU "o" support\sfk echo -spat \x3cli\x3eCurrent System Menu is less than 2.2%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
support\sfk echo -spat \x3cli\x3eBuild %SNKVERSION%%SNKREGION% Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNEEKTYPE%" EQU "SD" support\sfk echo -spat \x3cli\x3eBuild SNEEK+DI Rev%CurrentRev%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNEEKTYPE%" EQU "UD" support\sfk echo -spat \x3cli\x3eBuild UNEEK+DI Rev%CurrentRev%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNEEKTYPE%" EQU "U" support\sfk echo -spat \x3cli\x3eBuild UNEEK Rev%CurrentRev%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNEEKTYPE%" EQU "S" support\sfk echo -spat \x3cli\x3eBuild SNEEK Rev%CurrentRev%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%neek2o%" EQU "on" support\sfk echo -spat \x3cli\x3eneek2o Enabled (can be changed in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%neek2o%" NEQ "on" support\sfk echo -spat \x3cli\x3eneek2o Disabled (can be changed in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNEEKTYPE:~0,1%" EQU "U" goto:miniskip
if /i "%SSD%" EQU "on" support\sfk echo -spat \x3cli\x3eSNEEK and SNEEK+DI SD Access Enabled (can be changed in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SSD%" NEQ "on" support\sfk echo -spat \x3cli\x3eSNEEK and SNEEK+DI SD Access Disabled (can be changed in options)\x3c/li\x3e>>"%Drive%"\%guidename%
:miniskip
if /i "%SNKSERIAL%" NEQ "current" support\sfk echo -spat \x3cli\x3esetting.txt will be created using this serial number: %SNKSERIAL%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKSERIAL%" EQU "current" support\sfk echo -spat \x3cli\x3eExisting setting.txt will be kept\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKPRI%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Priiloader to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKCIOS%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall cIOS249 rev14 to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKOHBC%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Homebrew Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKPLC%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall postLoader Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%SNKFLOW%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall WiiFlow Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "R" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Red Theme to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "G" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Green Theme to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "BL" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Blue Theme to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "O" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Orange Theme to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%PIC%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Photo Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%NET%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Internet Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%WEATHER%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Weather Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%NEWS%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall News Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%MIIQ%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Mii Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%Shop%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Shopping Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%Speak%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Wii Speak Channel to Emulated NAND\x3c/li\x3e>>"%Drive%"\%guidename%
if not "%addwadfolder%"=="" support\sfk echo -spat \x3cli\x3eInstall wads to Emulated NAND from custom folder: %addwadfolder%\x3c/li\x3e>>"%Drive%"\%guidename%
goto:skipusb
:notAbstinenceWiz
if /i "%MENU1%" EQU "U" (set USBGUIDE=Y) & (goto:usbparam)
if /i "%VIRGIN%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall and\or update all recommended softmods\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%VIRGIN%" EQU "N" support\sfk echo -spat \x3cli\x3eInstall and\or update only user-selected softmods\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "SU" goto:miniskip
if /i "%FIRMSTART%" NEQ "o" support\sfk echo -spat \x3cli\x3eCurrent System Menu is %FIRMSTART%%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%FIRMSTART%" EQU "o" support\sfk echo -spat \x3cli\x3eCurrent System Menu is less than 2.2%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "H" goto:skipusb
support\sfk echo -spat \x3cli\x3eDesired System Menu is %FIRM%%REGION%\x3c/li\x3e>>"%Drive%"\%guidename%
:miniskip
if /i "%VIRGIN%" EQU "Y" goto:skipvirginstandard
if /i "%HM%" EQU "*" support\sfk echo -spat \x3cli\x3eInstall and\or update the Homebrew Channel and Bootmii\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%RECCIOS%" NEQ "Y" goto:smallskip
if /i "%hermesOPTION%" EQU "on" (support\sfk echo -spat \x3cli\x3eInstall recommended cIOSs and cMIOS\x3c/li\x3e>>"%Drive%"\%guidename%) else (support\sfk echo -spat \x3cli\x3eInstall recommended cIOSs\x3c/li\x3e>>"%Drive%"\%guidename%)
:smallskip
if /i "%PRIQ%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall and\or update Priiloader\x3c/li\x3e>>"%Drive%"\%guidename%
:skipvirginstandard
if /i "%ThemeSelection%" EQU "R" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Red Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "G" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Green Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "BL" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Blue Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ThemeSelection%" EQU "O" support\sfk echo -spat \x3cli\x3eInstall Dark Wii Orange Theme\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ACTIVEIOS%" NEQ "ON" goto:skipupdatelog
if /i "%UpdatesIOSQ%" EQU "N" goto:skipupdatelog
support\sfk echo -spat \x3cli\x3eUpdate active IOSs (can be disabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
goto:skip
:skipupdatelog
support\sfk echo -spat \x3cli\x3eDo not update active IOSs (can be enabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
:skip
if /i "%RECCIOS%" EQU "Y" goto:semiskip
if /i "%VIRGIN%" EQU "N" goto:tinyskip
if /i "%CMIOSOPTION%" EQU "on" support\sfk echo -spat \x3cli\x3eInstall a cMIOS (can be disabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
:semiskip
if /i "%CMIOSOPTION%" EQU "off" support\sfk echo -spat \x3cli\x3eDo not install a cMIOS (can be enabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
:tinyskip
if /i "%hermesOPTION%" EQU "off" support\sfk echo -spat \x3cli\x3eDo not install Hermes cIOSs (can be enabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%hermesOPTION%" EQU "on" support\sfk echo -spat \x3cli\x3eInstall Hermes cIOSs (can be disabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%FWDOPTION%" EQU "off" support\sfk echo -spat \x3cli\x3eDo not install a USB-Loader Forwarder Channel (can be enabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%FWDOPTION%" EQU "on" support\sfk echo -spat \x3cli\x3eInstall a USB-Loader Forwarder Channel (can be disabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ExtraProtectionOPTION%" EQU "off" support\sfk echo -spat \x3cli\x3eDo not install Extra Brick Protection (patched IOS60 in unused system menu IOS slots) (can be enabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%ExtraProtectionOPTION%" EQU "on" support\sfk echo -spat \x3cli\x3eInstall Extra Brick Protection (patched IOS60 in unused system menu IOS slots) (can be disabled in options)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%PIC%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Photo Channel\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%NET%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Internet Channel\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%WEATHER%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Weather Channel\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%NEWS%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall News Channel\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%MIIQ%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Mii Channel\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%Shop%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Shopping Channel (and IOS56)\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%Speak%" EQU "Y" support\sfk echo -spat \x3cli\x3eInstall Wii Speak Channel\x3c/li\x3e>>"%Drive%"\%guidename%
::---------
if /i "%USBGUIDE%" NEQ "Y" goto:skipusb
:usbparam
if /i "%LOADER%" EQU "CFG" support\sfk echo -spat \x3cli\x3eDownload Configurable USB-Loader\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "GX" support\sfk echo -spat \x3cli\x3eDownload USB-Loader GX\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" support\sfk echo -spat \x3cli\x3eDownload WiiFlow\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" support\sfk echo -spat \x3cli\x3eDownload USB-Loader GX, Configurable USB-Loader and WiiFlow\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%USBCONFIG%" EQU "USB" support\sfk echo -spat \x3cli\x3eUSB-Loader Settings and config files saved to USB Hard Drive\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%USBCONFIG%" NEQ "USB" support\sfk echo -spat \x3cli\x3eUSB-Loader Settings and config files saved to SD Card\x3c/li\x3e>>"%Drive%"\%guidename%
:skipusb
If /i "%MENU1%" EQU "SU" support\sfk echo -spat \x3cli\x3eGuide generated based on ModMii's analysis of the syscheck report contained in the spoiler below\x3c/li\x3e>>"%Drive%"\%guidename%
::closing tag and linebreak: </ul><br>
support\sfk echo -spat \x3c/ul\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::add syscheck spoiler for syscheck updater wizards
If /i "%MENU1%" NEQ "SU" goto:SkipSyscheckSpoiler
support\sfk echo -spat "<div style><div class=\x22spoilerfont\x22 style=\x22text-align:left;\x22><input value=\x22 Click to see Supplied SysCheck Report \x22 style=\x22margin: 0px; padding: 0px; font-size: x-large;\x22 onclick=\x22if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display \x21= '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Click to hide Supplied SysCheck Report '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Click to see Supplied SysCheck Report '; }\x22 type=\x22button\x22></div><div class=\x22alt2\x22 style=\x22border: 0px inset ; margin: 0px; padding: 6px;\x22><div style=\x22display: none;\x22>">>"%Drive%"\%guidename%
::copy /y "%Drive%"\%guidename%+"%sysCheckName%" "%Drive%"\%guidename%>nul
echo ^<ul style^=align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
::Loop through the syscheck line by line to insert bullets and breaks
if exist temp\syscheck.csv del temp\syscheck.csv>nul
copy /y "%sysCheckName%" temp\syscheck.csv>nul
for /F "tokens=*" %%A in (temp\syscheck.csv) do call :sysprocess %%A
goto:nextstep
:sysprocess
::this is repeated for each line of the txt.file
::"%*" (no quotes) is the variable for each line as it passes through the loop
set sysline=%*
if "%sysline%"=="" echo ^<br^>^<br^>>>"%Drive%"\%guidename%
::hide Console ID
if /i "%sysline:~0,11%" EQU "Console ID:" set "sysline=%sysline:~0,17%****"
if /i "%sysline:~0,26%" EQU "Identifiant de la console:" set "sysline=%sysline:~0,32%****"
if /i "%sysline:~0,11%" EQU "ID console:" set "sysline=%sysline:~0,17%****"
if /i "%sysline:~0,14%" EQU "ID de consola:" set "sysline=%sysline:~0,20%****"
if /i "%sysline:~0,12%" EQU "Konsolen-ID:" set "sysline=%sysline:~0,18%****"
if not "%sysline%"=="" echo ^<li^>%sysline%>>"%Drive%"\%guidename%
goto:EOF
:nextstep
If /i "%MENU1%" EQU "SU" echo ^<^/ul^>^<^/div^>^<^/div^>^<^/div^>^<br^>>>"%Drive%"\%guidename%
:SkipSyscheckSpoiler
:Important notes title and bullet opening tag
echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Notes^"^>Important Notes^<^/a^>^<^/li^>^<^/font^>^<br^>^<ul style^=align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
if /i "%AbstinenceWiz%" NEQ "Y" goto:skipAWnotes
copy /y "%Drive%"\%guidename%+Support\Guide\AbstinenceNotes.001 "%Drive%"\%guidename%>nul
if /i "%FIRMSTART%" EQU "4.3" goto:skipAWnotes
if /i "%FIRMSTART%" EQU "4.2" goto:skipAWnotes
support\sfk echo -spat \x3cli\x3eSince you are on an older firmware, this guide will direct you to install IOS53. This is an original\unmodified IOS, but if you are not comfortable installing this, then you can update to the latest firmware from the Wii Settings menu and try this wizard again - or just accept the very minimal risk and softmod your wii using ModMii's main wizard instead!\x3c/li\x3e>>"%Drive%"\%guidename%
:skipAWnotes
if /i "%MENU1%" EQU "RC" copy /y "%Drive%"\%guidename%+Support\Guide\RegionChangenotes.001 "%Drive%"\%guidename%>nul
If /i "%EXPLOIT%" NEQ "X" support\sfk echo -spat \x3cli\x3eThis guide does not require a WiFi connection on your Wii.\x3c/li\x3e>>"%Drive%"\%guidename%
If /i "%EXPLOIT%" EQU "X" support\sfk echo -spat \x3cli\x3eThis guide only requires a WiFi connection on your Wii for the str2hax step.\x3c/li\x3e>>"%Drive%"\%guidename%
If /i "%MENU1%" EQU "SU" goto:notes4NoFAT32_SD
If /i "%MENU1%" EQU "RC" (goto:notes4NoFAT32_SD) else (goto:skip)
:notes4NoFAT32_SD
echo ^<li^>Make sure the files ModMii downloaded are on your SD Card, and your SD Card is inserted in the Wii.^<^/li^>>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
echo ^<li^>If you don't have an SD Card, you can still accomplish ^<u^>most^<^/u^> things using a Hard Drive formatted as FAT32 in place of an SD Card ^(SD is notably required for Bootmii and NAND backup^).^<^/li^>>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
echo ^<li^>Use ModMii's USB-Loader Setup feature if you need help formatting your HDD as FAT32.^<^/li^>>>"%Drive%"\%guidename%
echo ^<li^>Make sure to always plug your hard drive into usb port0 - the one nearest the edge of the Wii.^<^/li^>>>"%Drive%"\%guidename%
echo ^<^/ul^>>>"%Drive%"\%guidename%
::RC should not be done over WiFi
If /i "%MENU1%" NEQ "RC" echo ^<li^>If you don't have an SD Card or Hard Drive, you can launch apps and install WADs over WiFi to your Wii from your PC. Just open apps ^(boot.dol\elf files^) or WADs with ModMii.^<^/li^>>>"%Drive%"\%guidename%
If /i "%MENU1%" NEQ "RC" echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
If /i "%MENU1%" NEQ "RC" echo ^<li^>Note that some apps may not work properly or support all features if they require an SD or HDD.^<^/li^>>>"%Drive%"\%guidename%
If /i "%MENU1%" NEQ "RC" echo ^<^/ul^>>>"%Drive%"\%guidename%
echo ^<^/ul^>>>"%Drive%"\%guidename%
:skip
if /i "%AbstinenceWiz%" EQU "Y" goto:skipnotes
if /i "%MENU1%" NEQ "U" copy /y "%Drive%"\%guidename%+Support\Guide\softmodnotes.001 "%Drive%"\%guidename%>nul
:skipnotes
::----USB-Loader Notes----
if /i "%USBGUIDE%" NEQ "Y" goto:skipall
if /i "%cIOS249[57]-d2x-v10-beta52%" NEQ "*" support\sfk echo -spat \x3cli\x3ecIOS(s) required to use USB-Loaders, if you are missing cIOS(s) run the ModMii Wizard function to softmod your Wii before setting up your USB-Loader and/or external Hard-Drive.\x3c/li\x3e>>"%Drive%"\%guidename%
if /i "%AbstinenceWiz%" NEQ "Y" support\sfk echo -spat \x3cli\x3eAfter completing this guide, you can launch your USB-Loader via the Homebrew Channel or a USB-Loader forwarder channel.\x3c/li\x3e>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\usbloadernotes.001 "%Drive%"\%guidename%>nul
if /i "%MENU1%" EQU "W" support\sfk filter "%Drive%\%guidename%" -!"if you are missing cIOS(s) run the ModMii Wizard" -write -yes>nul
:skipall
::-------------------------
::common important note, end bullet tag and line break
echo ^<li^>Detailed guides covering a broader range of Wii topics available at the ^<a href^=^"http://www.sites.google.com/site/completesg/^" target^=^"_blank^"^>Complete Softmod Guide^<^/a^> and ^<a href^=^"http://wii.hacks.guide^" target^=^"_blank^"^>wii.guide^</a^>^</li^> >>"%Drive%"\%guidename%
echo ^<li^>If you come across a term or abbreviation that you're not familar with you can reference the ^<a href^=^"https://wiibrew.org/wiki/Glossary^" target^=^"_blank^"^>WiiBrew Glossary^<^/a^> or the ^<a href^=^"https://sites.google.com/site/completesg/other-stuff/wii-glossary^" target^=^"_blank^"^>CSG Glossary^</a^>^</li^> >>"%Drive%"\%guidename%
echo ^<li^>If you need help, have questions, or just want to chat visit the ^<a href^=^"https://gbatemp.net/threads/modmii-for-windows-official-support-topic.207126/^" target=^"_blank^"^>official ModMii page on gbatemp^</a^> or the ^<a href^=^"https://discord.gg/cMnBRACQwQ^" target^=^"_blank^"^>ModMii Discord Server^</a^> and ask away^!^</li^>^</ul^>^<br^> >>"%Drive%"\%guidename%
::Start of AbstinenceWizGUIDE steps listings. This must be here for the guide
if /i "%AbstinenceWiz%" NEQ "Y" goto:NotAbstinenceWiz
support\sfk echo -spat \x3cfont size=\x226\x22\x3e\x3cli\x3e\x3ca name=\x22Hacking\x22\x3eLaunch %neekname% Without Hacking Your Wii\x3c/a\x3e\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e\x3col\x3e>>"%Drive%"\%guidename%
goto:SDformat
::goto:CasperPickUp
:NotAbstinenceWiz
if /i "%MENU1%" EQU "U" goto:USBGUIDESTEP1
::Start of hacking steps listings ordered list. This must be here for all guides (AW and U done above)
if /i "%MENU1%" EQU "W" echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Hacking^"^>Hacking your Wii^<^/a^>^<^/li^>^<^/font^>^<br^>^<ol^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "SU" echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Hacking^"^>Updating your Wii Hacks^<^/a^>^<^/li^>^<^/font^>^<br^>^<ol^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "H" echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Hacking^"^>Resolving HackMii Installer Issues^<^/a^>^<^/li^>^<^/font^>^<br^>^<ol^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "RC" echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Hacking^"^>Region Changing your Wii^<^/a^>^<^/li^>^<^/font^>^<br^>^<ol^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "RC" copy /y "%Drive%"\%guidename%+Support\Guide\NANDBACKUP.001 "%Drive%"\%guidename%>nul
::since yawmME can retain priloader, we can always install Priiloader first (unless custom SM version is detected)
if /i "%MENU1%" EQU "RC" goto:PRIIGUIDE
::if /i "%MENU1%" EQU "RC" goto:installwads
::SD format stuff here...
:SDformat
if /i "%MENU1%" EQU "SU" goto:notfat32
support\sfk echo -spat \x3cfont size="5"\x3e\x3cli\x3eFormat the SD Card as FAT32 (if applicable)\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::---------------------Connected Drive Information Spoiler (1 of 2: SD)------------------------
::if exist "%temp%\format.txt" del "%temp%\format.txt">nul
::if exist "%temp%\Get-Disk.txt" del "%temp%\Get-Disk.txt">nul
::if exist "%temp%\Get-Disk.txt" goto:USBSpoiler
::if exist "%temp%\format.txt" goto:USBSpoiler
::Partition Style \ Partition Table MBR vs GPT check
::direct powershell get-disk output screwed up by nircmd.exe win commands to resize window for some strange reason, work around via subscript and start separately\hidden3
::powershell Get-Disk >"%temp%\Get-Disk.txt"
::powershell "Invoke-Command {Get-Disk}" >"%temp%\Get-Disk.txt"
::powershell "Invoke-Command {Get-Volume | Where-Object {$_.drivetype -eq 'removable'} | Get-Partition | Get-Disk | Select-Object -Unique | Format-Table -AutoSize -Wrap}"
::echo powershell "Invoke-Command {Get-Volume | Where-Object {$_.drivetype -eq 'removable'} | Get-Partition | Get-Disk | Format-Table -AutoSize -Wrap}" ^>Get-Disk.txt>"%temp%\Get-Disk.bat"
::echo wmic logicaldisk where Description="Removable Disk" get deviceid,filesystem^>format.txt>>"%temp%\Get-Disk.bat"
echo powershell "Invoke-Command {Get-Disk | Format-Table -AutoSize -Wrap}" ^>Get-Disk.txt>"%temp%\Get-Disk.bat"
echo wmic logicaldisk where FileSystem!=null get deviceid,filesystem^>format.txt>>"%temp%\Get-Disk.bat"
echo exit>>"%temp%\Get-Disk.bat"
::vbs to run script invisibly, "nircmd.exe exec hide" can run hidden but not hide+wait
echo Set ws = WScript.CreateObject("WScript.Shell")>"%temp%\Get-Disk.vbs"
echo cmd = "%temp%\Get-Disk.bat">>"%temp%\Get-Disk.vbs"
echo ret = ws.Run(cmd, 0, True)>>"%temp%\Get-Disk.vbs"
echo Set ws = Nothing>>"%temp%\Get-Disk.vbs"
set "ModMiiDir=%cd%"
cd /d "%temp%"
start /wait Get-Disk.vbs
cd /d "%ModMiiDir%"
support\sfk filter -quiet "%temp%\Get-Disk.txt" -ls!- -ls!0 -no-empty-lines -no-blank-lines -write -yes
cmd /a /c type "%temp%\format.txt">"%temp%\format2.txt"
support\sfk filter -quiet "%temp%\format2.txt" -ls!"%homedrive%" -no-empty-lines -no-blank-lines -write -yes
::check if file is null
::for %%R in (temp\Get-Disk.txt) do if %%~zR lss 1 (echo no removable drives) else (echo yes removable drives)
:::USBSpoiler
::check Removable Disk filesystem format types, if no : in output, then no removable devices connected
findStr /I ":" "%temp%\format2.txt" >nul
IF ERRORLEVEL 1 goto:SkipUSBSpoiler
echo Partition style\format information for devices that were connected when this guide was created has been saved to the spoiler below.^<br^>^<br^>>>"%Drive%"\%guidename%
::add spoiler for Connected Drive Information if any connected
support\sfk echo -spat "<div style><div class=\x22spoilerfont\x22 style=\x22text-align:left;\x22><input value=\x22 Click to see Connected Drive Information \x22 style=\x22margin: 0px; padding: 0px; font-size: x-large;\x22 onclick=\x22if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display \x21= '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Click to hide Connected Drive Information '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Click to see Connected Drive Information '; }\x22 type=\x22button\x22></div><div class=\x22alt2\x22 style=\x22border: 0px inset ; margin: 0px; padding: 6px;\x22><div style=\x22display: none;\x22>">>"%Drive%"\%guidename%
echo ^<pre^>>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+"%temp%\format2.txt" "%Drive%"\%guidename%>nul
::line count, count lines, if only 1 then don't show
set /a TotalDrives=0
cd /d "%temp%"
for /f %%a in (Get-Disk.txt) do set /a TotalDrives+=1
cd /d "%ModMiiDir%"
::echo %TotalDrives%
if /i %TotalDrives% GTR 1 echo ^<^/pre^>Partition Style below should be MBR by default for almost all SD Cards. If for some reason yours is not, convert it to MBR using the directions from ModMii's USB-Loader Setup guide.^<br^>^<pre^>>>"%Drive%"\%guidename%
if /i %TotalDrives% GTR 1 copy /y "%Drive%\%guidename%"+"%temp%\Get-Disk.txt" "%Drive%"\%guidename%>nul
if /i %TotalDrives% GTR 1 echo ^<br^>>>"%Drive%"\%guidename%
::copy /y "%Drive%\%guidename%"+"%temp%\format2.txt" "%Drive%"\%guidename%>nul
echo ^<^/pre^>^<^/div^>^<^/div^>^<^/div^>>>"%Drive%"\%guidename%
:SkipUSBSpoiler
copy /y "%Drive%"\%guidename%+Support\Guide\FAT32_SD.001 "%Drive%"\%guidename%>nul
if /i "%PCSAVE%" EQU "Portable" goto:portableF32
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" NEQ "%cd:~0,2%" goto:portableF32
:skip
support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"shortcuts on your Start Menu or Desktop or directly from %cd:_=\x5f%\Program Files"_ -write -yes
if /i "%Homedrive%" NEQ "%cd:~0,2%" support\sfk filter -quiet "%Drive%\%guidename%" -rep _"<!--formatwarning"__ -rep _"formatwarning-->"__ -write -yes
goto:noportableF32
:portableF32
if /i "%USBCONFIG%" EQU "USB" support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"%DRIVEU:_=\x5f%\Program Files"_ -write -yes
if /i "%USBCONFIG%" NEQ "USB" support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"%DRIVE:_=\x5f%\Program Files"_ -write -yes
support\sfk filter -quiet "%Drive%\%guidename%" -rep _"<!--formatwarning"__ -rep _"formatwarning-->"__ -write -yes
:noportableF32
if /i "%Drive:~1,1%" EQU ":" (set "fulldrive=%Drive%") else (set "fulldrive=%cd%\%Drive%")
echo ^<li^>The files should be saved here: "%fulldrive%" >>"%Drive%"\%guidename%
echo ^<li^>When the files are finished copying to the SD card, you should safely remove your SD Card from your computer and reinsert it into your Wii and proceed to the next step.^<^/ul^>^<^/ol^>^<br^> >>"%Drive%"\%guidename%
:notfat32
::::::::::::::::::
::for Abstinence Wizard
if /i "%AbstinenceWiz%" EQU "Y" goto:CasperPickUp
::-----------------------------------------virgin Korean non-4.3 Wiis-----------------------------------
If /i "%MENU1%" NEQ "H" goto:nothackmiisolutions
::launch yawmME using an exploit
copy /y "%Drive%"\%guidename%+Support\Guide\HMSolutions.001 "%Drive%"\%guidename%>nul
set afterexploit=continueHMsolutions
goto:exploits
:continueHMsolutions
support\sfk echo -spat \x3cbr\x3eThis will launch YAWM ModMii Edition.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\WADHMheader.001 "%Drive%"\%guidename%>nul
goto:wadlist
:HMafterwadlist
copy /y "%Drive%"\%guidename%+Support\Guide\HMSolutions2.001 "%Drive%"\%guidename%>nul
copy /y "%Drive%"\%guidename%+Support\Guide\HBC2.001 "%Drive%"\%guidename%>nul
::remove direction to run HM Solutions wizard, since this is that wizard
support\sfk filter -spat "%Drive%"\%guidename% -!"<li>If the \x22Press 1 to continue\x22 message doesn't appear" -write -yes>nul
::--------End of hacking steps listings (and line break). This must be here for the hacking guide------------
support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
GOTO:supportxflak
:nothackmiisolutions
::-----------------------------------------virgin Korean non-4.3 Wiis-----------------------------------
If /i "%VIRGIN%" NEQ "Y" goto:nonkorean
If /i "%REGION%" NEQ "K" goto:nonkorean
If /i "%FIRMSTART%" EQU "4.3" goto:nonkorean
::launch yawmME using an exploit
copy /y "%Drive%"\%guidename%+Support\Guide\HMSolutions.001 "%Drive%"\%guidename%>nul
::support\sfk echo -spat \x3cfont size="5"\x3e\x3cli\x3eLaunch YAWM ModMii Edition\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
set afterexploit=continueKorean
goto:exploits
:continueKorean
copy /y "%Drive%"\%guidename%+Support\Guide\KoreanStart.001 "%Drive%"\%guidename%>nul
copy /y "%Drive%"\%guidename%+Support\Guide\HBC2.001 "%Drive%"\%guidename%>nul
support\sfk filter -spat "%Drive%"\%guidename% -rep _"<b>Use the HackMii Installer to install the HBC and Bootmii</b>"_"<li>Use the HackMii Installer to install the HBC and Bootmii</li>"_ -write -yes>nul
goto:nandbackup
::---------------------------virgin NON-Korean Wiis-----------------------------------
::---------------------------------HACKMII INSTALLER-----------------------------
:nonkorean
If /i "%MENU1%" EQU "SU" goto:skipme
If /i "%HM%" NEQ "*" goto:PRIIGUIDE
:skipme
::syscheck updater logic
If /i "%MENU1%" NEQ "SU" goto:miniskip
if /i %HBCversion% LSS 1.0.7 goto:UpdateHBCfirst
if /i "%IOS58%" EQU "*" goto:installwads
If /i "%HM%" NEQ "*" goto:PRIIGUIDE
:UpdateHBCfirst
echo ^<font size^=^"5^"^>^<li^>Update The Homebrew Channel (HBC) and Bootmii^<^/li^>^<^/font^>^<br^>^<ul style^=^align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
echo ^<li^>Launch the HackMii Installer from the Homebrew Channel.^<^/ul^>>>"%Drive%"\%guidename%
goto:continueHBC
:miniskip
copy /y "%Drive%"\%guidename%+Support\Guide\HBC.001 "%Drive%"\%guidename%>nul
set afterexploit=continueHBC
goto:exploits
:continueHBC
copy /y "%Drive%"\%guidename%+Support\Guide\HBC2.001 "%Drive%"\%guidename%>nul
:nandbackup
copy /y "%Drive%"\%guidename%+Support\Guide\NANDBACKUP.001 "%Drive%"\%guidename%>nul
::syscheck updater logic
If /i "%MENU1%" NEQ "SU" goto:miniskip
::priiloader and wads steps already done if HBCversion GEQ "1.0.7" and IOS58 already installed (i.e. not toggled)
if /i %HBCversion% LSS 1.0.7 goto:PRIIGUIDE
if /i "%IOS58%" EQU "*" goto:MyMGuide
:miniskip
::--------------------------INSTALL PRIILOADER-------------------------------
:PRIIGUIDE
if /i "%installwads%" EQU "done" goto:skip
::::since yawmME can retain priloader, we can always install Priiloader first (unless custom SM version is detected)
::if /i "%FIRM%" NEQ "%FIRMSTART%" goto:installwads
if /i "%customSMfix%" EQU "yes" goto:installwads
::syscheck updater logic
If /i "%MENU1%" NEQ "SU" goto:miniskip
if /i "%IOS58%" EQU "*" goto:installwads
:miniskip
if /i "%PRI%" NEQ "*" goto:installwads
:skip
if /i "%PRI%" NEQ "*" goto:reinstallHBC
copy /y "%Drive%"\%guidename%+Support\Guide\Priiloader.001 "%Drive%"\%guidename%>nul
if /i "%MENU1%" EQU "RC" support\sfk filter "%Drive%"\%guidename% -rep _"<!--<li>If you already have Priiloader"_"<li>If you already have Priiloader"_ -rep _"Priiloader or just reinstall it.<br><br>-->"_"Priiloader or just reinstall it.<br><br>"_ -write -yes>nul
if /i "%MENU1%" EQU "RC" goto:installwads
if /i "%installwads%" EQU "done" goto:reinstallHBC
goto:installwads
::----------------------ANY REGION CHANGER (ARC)-----------------------------
:ARCGUIDE
copy /y "%Drive%"\%guidename%+Support\Guide\ARC.001 "%Drive%"\%guidename%>nul
if /i "%REGION%" EQU "K" copy /y "%Drive%"\%guidename%+Support\Guide\KK2K.001 "%Drive%"\%guidename%>nul
if /i "%REGION%" NEQ "K" copy /y "%Drive%"\%guidename%+Support\Guide\KK2O.001 "%Drive%"\%guidename%>nul
goto:noMyM
::----------------------Install Wads-----------------------------
:installwads
if /i "%YAWM%" NEQ "*" goto:pickmeup
if /i "%SETTINGS%" EQU "G" goto:skipconfig
if /i "%SETTINGSHM%" EQU "G" goto:skipconfig
if /i "%YAWM%" EQU "*" if not exist "%Drive%"\WAD mkdir "%Drive%"\WAD
if /i "%YAWM%" EQU "*" echo ;wm_config.txt made by ModMii> "%Drive%"\WAD\wm_config.txt
if /i "%YAWM%" EQU "*" echo NANDDevice=Disable>> "%Drive%"\WAD\wm_config.txt
if /i "%YAWM%" EQU "*" echo StartupPath=/WAD>> "%Drive%"\WAD\wm_config.txt
::if /i "%YAWM%" EQU "*" echo FatDevice=sd>> "%Drive%"\WAD\wm_config.txt
:skipconfig
copy /y "%Drive%"\%guidename%+Support\Guide\WADheader.001 "%Drive%"\%guidename%>nul
::adjust for priiloader retention if a new system menu is being installed
if /i "%customSMfix%" NEQ "yes" goto:skip
if /i "%PRI%" NEQ "*" goto:makeEdit
:skip
if /i "%FIRM%" EQU "%FIRMSTART%" goto:wadlist
:makeEdit
support\sfk filter "%Drive%"\%guidename% -ls!"<li><b>After successfully installing all the WADs" -write -yes>nul
support\sfk filter "%Drive%"\%guidename% -rep _"<!--<li>When asked"_"<li>When asked"_ -rep _"retain Priiloader</b>.<br>-->"_"retain Priiloader</b>.<br>"_ -rep _"<!--<li><b>After successfully"_"<li><b>After successfully"_ -rep _"at a later time.</b><br>-->"_"at a later time.</b><br>"_ -write -yes>nul
:wadlist
if /i "%MENU1%" EQU "RC" goto:Konami
::if /i "%customSMfix%" EQU "yes" goto:Konami
goto:NoKonami
:Konami
support\sfk filter -spat "%Drive%"\%guidename% -rep _"most likely \x22Wii SD Slot\x22, and <b>Press <kbd>A</kbd></b>."_"most likely \x22Wii SD Slot\x22, and <b>Enter the Konami Code: <kbd>&#8593;</kbd><kbd>&#8593;</kbd><kbd>&#8595;</kbd><kbd>&#8595;</kbd>KONAMIPART"_ -write -yes>nul
support\sfk filter "%Drive%"\%guidename% -rep _"KONAMIPART"_"<kbd>&#8592;</kbd><kbd>&#8594;</kbd><kbd>&#8592;</kbd><kbd>&#8594;</kbd><kbd>B</kbd><kbd>A</kbd></b>"_ -write -yes>nul
support\sfk filter "%Drive%"\%guidename% -rep _"<li>Install WADs</li>"_"<li>Install WADs using the Konami Code</li>"_ -write -yes>nul
support\sfk filter "%Drive%"\%guidename% -rep _"yawmME.gif"_"yawmMEkonami.gif"_ -write -yes>nul
::replace yawmME youtube link with yawmMEkonami link
support\sfk filter -spat "%Drive%"\%guidename% -rep _"eTODLzI\x5fHsk"_"0P0Db76S7X4"_ -write -yes>nul
:NoKonami
set guidewadcount=0
if /i "%cIOS202[60]-v5.1R%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS202[60]-v5.1R\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS222[38]-v4%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS222[38]-v4\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS223[37-38]-v4%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS223[37-38]-v4\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS224[57]-v5.1R%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS224[57]-v5.1R\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS248[38]-d2x-v10-beta52%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS248[38]-d2x-v%d2x-beta-rev%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS249[56]-d2x-v10-beta52%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS249[56]-d2x-v%d2x-beta-rev%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS250[57]-d2x-v10-beta52%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS250[57]-d2x-v%d2x-beta-rev%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%cIOS251[58]-d2x-v10-beta52%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ecIOS251[58]-d2x-v%d2x-beta-rev%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%EULAE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eEULA-NUS-v3[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%EULAJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eEULA-NUS-v3[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%EULAK%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eEULA-NUS-v3[K]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%EULAU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eEULA-NUS-v3[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS11P60%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS11v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS12%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS12-64-v526\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS13%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS13-64-v1032\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS14%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS14-64-v1032\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS15%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS15-64-v1032\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS17%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS17-64-v1032\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS20P60%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS20v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS21%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS21-64-v1039\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS22%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS22-64-v1294\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS236%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS236v65535^(IOS36v3351[FS-ES-NP-VP]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS28%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS28-64-v1807\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS30P60%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS30v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS31%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS31-64-v3608\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS33%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS33-64-v3608\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS34%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS34-64-v3608\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS35%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS35-64-v3608\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS36v3608%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS36-64-v3608\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS37%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS37-64-v5663\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS38%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS38-64-v4124\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS40P60%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS40v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS41%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS41-64-v3607\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS43%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS43-64-v3607\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS45%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS45-64-v3607\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS46%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS46-64-v3607\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS48v4124%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS48-64-v4124\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS50P%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS50v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS52P%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS52v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS53%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS53-64-v5663\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS55%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS55-64-v5663\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS56%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS56-64-v5662\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS57%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS57-64-v5919\x3c/li\x3e>>"%Drive%"\%guidename%)
::korean start has already installed IOS58
If /i "%VIRGIN%" NEQ "Y" goto:yes58
If /i "%REGION%" NEQ "K" goto:yes58
If /i "%FIRMSTART%" EQU "4.3" goto:yes58
::If /i "%FIRMSTART%" EQU "4.3" goto:nonkorean
goto:skip
:yes58
if /i "%IOS58%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS58-64-v6176\x3c/li\x3e>>"%Drive%"\%guidename%)
:skip
if /i "%IOS59%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS59-64-v9249\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS60P%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS60v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS61%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS61-64-v5662\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS62%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS62-64-v6430\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS70K%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS70v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS80K%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS80v65535^(IOS60v6174[FS-ES-NP-VP-DIP-RC24]^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IOS9%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eIOS9-64-v1034\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%MII%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eMii-Channel-NUS-v6\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%NE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eNEWS-Channel-NUS-v7[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%NJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eNEWS-Channel-NUS-v7[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%NU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eNEWS-Channel-NUS-v7[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%OHBC%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eOpen_HBC_1.1.5_LULZ\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eOpera-Internet-Channel-NUS[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eOpera-Internet-Channel-NUS[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%IU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eOpera-Internet-Channel-NUS[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%P%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ePhoto-Channel-1.1-NUS-v3\x3c/li\x3e>>"%Drive%"\%guidename%)
::if /i "%PK%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3ePhoto-Channel-1.1-NUS-v3[K]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%RSE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRegion-Select-NUS-v2[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%RSJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRegion-Select-NUS-v2[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%RSK%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRegion-Select-NUS-v2[K]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%RSU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRegion-Select-NUS-v2[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%RVL-cMIOS-v65535(v10)_WiiGator_WiiPower_v0.2%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRVL-cMIOS-v65535^(v10^)_WiiGator_WiiPower_v0.2\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%M10%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eRVL-mios-v10\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%S%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eShopping-Channel-NUS-v21\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SK%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eShopping-Channel-NUS-v21[K]\x3c/li\x3e>>"%Drive%"\%guidename%)
::if /i "%customSMfix%" EQU "yes" goto:skipSMlist
:customSMfix
if /i "%SM4.1E%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1E_v450\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1E-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1E_v450_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1E-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1E_v450_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1E-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1E_v450_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1E-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1E_v450_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1J%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1J_v448\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1J-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1J_v448_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1J-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1J_v448_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1J-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1J_v448_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1J-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1J_v448_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1K%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1K_v454\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1K-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1K_v454_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1K-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1K_v454_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1K-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1K_v454_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1K-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1K_v454_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1U%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1U_v449\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1U-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1U_v449_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1U-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1U_v449_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1U-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1U_v449_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.1U-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.1U_v449_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2E%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2E_v482\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2E-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2E_v482_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2E-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2E_v482_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2E-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2E_v482_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2E-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2E_v482_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2J%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2J_v480\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2J-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2J_v480_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2J-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2J_v480_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2J-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2J_v480_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2J-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2J_v480_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2K%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2K_v486\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2K-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2K_v486_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2K-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2K_v486_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2K-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2K_v486_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2K-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2K_v486_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2U%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2U_v481\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2U-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2U_v481_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2U-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2U_v481_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2U-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2U_v481_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.2U-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.2U_v481_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3E%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3E_v514\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3E-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3E_v514_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3E-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3E_v514_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3E-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3E_v514_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3E-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3E_v514_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3J%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3J_v512\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3J-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3J_v512_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3J-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3J_v512_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3J-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3J_v512_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3J-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3J_v512_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3K%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3K_v518\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3K-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3K_v518_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3K-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3K_v518_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3K-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3K_v518_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3K-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3K_v518_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3U%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3U_v513\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3U-DWB%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3U_v513_DarkWiiBlue_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3U-DWG%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3U_v513_DarkWiiGreen_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3U-DWO%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3U_v513_DarkWiiOrange_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%SM4.3U-DWR%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eSystemMenu_4.3U_v513_DarkWiiRed_%effect%\x3c/li\x3e>>"%Drive%"\%guidename%)
:skipSMlist
if /i "%USBX%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eUSBLoader^(s^)-ahbprot58-SD-USB-v14-IDCL ^(see spoiler for boot info^)\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWeather-Channel-NUS-v7[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWeather-Channel-NUS-v7[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWeather-Channel-NUS-v7[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WSE%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWii-Speak-Channel-NUS[E]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WSJ%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWii-Speak-Channel-NUS[J]\x3c/li\x3e>>"%Drive%"\%guidename%)
if /i "%WSU%" EQU "*" (SET /a guidewadcount=%guidewadcount%+1) & (support\sfk echo -spat \x3cli\x3eWii-Speak-Channel-NUS[U]\x3c/li\x3e>>"%Drive%"\%guidename%)
::replace "_guidewadcountplaceholder" (if exists) with number of wads
if /i "%guidewadcount%" EQU "0" echo *None.>>"%Drive%"\%guidename%
if /i "%guidewadcount%" EQU "0" support\sfk filter "%Drive%"\%guidename% -rep _"guidewadcountplaceholder WADs"_"WADs"_ -write -yes>nul
if /i "%guidewadcount%" NEQ "0" support\sfk filter "%Drive%"\%guidename% -rep _guidewadcountplaceholder_%guidewadcount%_ -write -yes>nul
::add closing bullet tag and line break
support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "H" goto:HMafterwadlist
if /i "%USBX%" EQU "*" copy /y "%Drive%"\%guidename%+Support\Guide\ForwarderWAD.001 "%Drive%"\%guidename%>nul
::Optional Stub Stuff, syscheck updater guide only
if /i "%MENU1%" NEQ "SU" goto:skipstubs
if /i "%STUBS%" NEQ "*" goto:skipstubs
if not exist temp\stubs.txt goto:skipstubs
::line count
set /a TotalSTUBS=0
for /f %%a in (temp\stubs.txt) do set /a TotalSTUBS+=1
support\sfk echo -spat "<div style><div class=\x22spoilerfont\x22 style=\x22text-align:left;\x22><input value=\x22 Optional %TotalSTUBS% Stub IOS WADs \x22 style=\x22margin: 0px; padding: 0px; font-size: large;\x22 onclick=\x22if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Click to hide Optional Stub IOS WADs '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Optional %TotalSTUBS% Stub IOS WADs '; }\x22 type=\x22button\x22></div><div class=\x22alt2\x22 style=\x22border: 0px inset ; margin: 0px; padding: 6px;\x22><div style=\x22display: none;\x22>">>"%Drive%"\%guidename%
echo You have some extra IOSs installed on your Wii that are unnecessary. Optionally recover some space by navigating to the WAD/STUBS folder and repeating the steps above to install the %TotalSTUBS% stub IOS WADs below. Ignore this for any slots you intentionally installed (e.g. for ^<a href^=^"https^:^/^/gbatemp.net^/threads^/release-fakemote-an-ios-module-that-fakes-wiimotes-from-the-input-of-usb-game-controllers.601771^" target^=^"_blank^"^>Fakemote^<^/a^> support).^<br^>^<br^>>>"%Drive%"\%guidename%
::start ordered list of stubs
echo ^<ol^>>>"%Drive%"\%guidename%
::Loop through the stubs line by line to insert bullets
for /F "tokens=*" %%A in (temp\stubs.txt) do echo ^<li^>STUB-IOS%%A-64-v404^<^/li^>>>"%Drive%"\%guidename%
echo ^<br^>Note: You can recover a bit more space by following the steps above except pressing ^<kbd^>-^<^/kbd^> instead of ^<kbd^>^+^<^/kbd^> to uninstall the %TotalSTUBS% stub IOS WADs. Do NOT uninstall any other WADs unless you know what you are doing; see warning about uninstalling WADs above.^<br^>^<br^>>>"%Drive%"\%guidename%
::end ordered list and close spoiler
echo ^<^/ol^>^<^/div^>^<^/div^>^<^/div^>>>"%Drive%"\%guidename%
:skipstubs
::close spoiler for everything except AW and H (which is already gone)
if /i "%MENU1%" NEQ "AW" echo ^<^/div^>^<^/div^>^<^/div^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "RC" support\sfk echo -spat \x3cb\x3eNOTE:\x3c/b\x3e YAWMM ModMii Edition will only allow you to install a different region System Menu WAD if you enter the Konami Code.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::-------Custom system menu fix------
if /i "%customSMfix%" NEQ "yes" goto:skipCSMfix
if /i "%secondmmmrun%" EQU "yes" goto:skipCSMfix
::support\sfk echo -spat \x3cb\x3eNOTE:\x3c/b\x3e YAWMM ModMii Edition will only allow you to install a System Menu WAD by entering the Konami Code because you have a custom System Menu installed.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::skip using MMM to just install the SM wad, not needed since using YAWM ModMii Edition
goto:skipCSMfix
:pickmeup
copy /y "%Drive%"\%guidename%+Support\Guide\WADheader.001 "%Drive%"\%guidename%>nul
set secondmmmrun=yes
set guidewadcount=0
goto:customSMfix
:skipCSMfix
set secondmmmrun=
if /i "%customSMfix%" EQU "yes" support\sfk echo -spat \x3cb\x3eWARNING:\x3c/b\x3e Whenever you install a new System Menu, like you just did, Priiloader will get uninstalled unless you used yawmME and were prompted and chose to retain it. If you accidentally removed Priiloader ^(re^)install it immediately.\x3cbr\x3e>>"%Drive%"\%guidename%
::if /i "%customSMfix%" EQU "yes" support\sfk echo -spat \x3cbr\x3e>>"%Drive%"\%guidename%
::if /i "%customSMfix%" EQU "yes" support\sfk echo -spat \x3cb\x3eNOTE:\x3c/b\x3e If you are able to load MMM but the Wiimote doesn't respond, try using an older Wiimote without Motion+ built in as MMM doesn't support these newer contollers; a gamecube controller also works. If you don't have either, google for WiiMod Lite and use it in place of MMM to install the System Menu WAD listed above. Be careful with WiiMod Lite, after you finish installing your WAD be sure to press the Home button to return to the HBC immediately otherwise if you press B to return to the main menu it may crash.\x3cbr\x3e>>"%Drive%"\%guidename%
if /i "%customSMfix%" EQU "yes" goto:tinyskip
if /i "%MENU1%" EQU "RC" echo ^<font color^=^"red^"^>^<b^>WARNING: Do NOT power off your Wii or exit the HBC or you may semi-brick.^<^/b^>^<^/font^> At this critical stage you are halfway through a region change, unless you have Bootmii installed to boot2 or you used yawmME and were prompted and chose to retain Priiloader you will semi-brick ^<u^>if^<^/u^> you exit the HBC before installing Priiloader or fixing your AREA/SysMenu mismatch using Any Region Changer.^<br^>^<br^>>>"%Drive%"\%guidename%
if /i "%FIRM%" NEQ "%FIRMSTART%" support\sfk echo -spat \x3cb\x3eWARNING:\x3c/b\x3e Whenever you install a new System Menu, like you just did, Priiloader will get uninstalled unless you used yawmME and were prompted and chose to retain it. If you accidentally removed Priiloader ^(re^)install it immediately.\x3cbr\x3e>>"%Drive%"\%guidename%
:tinyskip
::extra line break
support\sfk echo -spat \x3cbr\x3e>>"%Drive%"\%guidename%
set installwads=done
::::since yawmME can retain priloader, we can always install Priiloader first (unless custom SM version is detected)
::if /i "%FIRM%" NEQ "%FIRMSTART%" goto:PRIIGUIDE
if /i "%MENU1%" EQU "RC" goto:ARCGUIDE
if /i "%customSMfix%" EQU "yes" goto:PRIIGUIDE
If /i "%MENU1%" NEQ "SU" goto:SKIPWAD
if /i "%IOS58%" EQU "*" goto:PRIIGUIDE
:SKIPWAD
::------------------------reinstall HBC / Fix Upsidedown homebrew channel----------------------------
:reinstallHBC
If /i "%HM%" NEQ "*" goto:MyMGuide
::if /i "%MENU1%" NEQ "SU" support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eReinstall the Homebrew Channel (if applicable)\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::syscheck updater logic
If /i "%MENU1%" NEQ "SU" goto:miniskip
if /i "%IOS58%" NEQ "*" goto:MyMGuide
::redirect to initial HBC installation instructions instead of reinstall for when no prior instructions exist
if /i %HBCversion% GEQ 1.0.7 goto:UpdateHBCfirst
::support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eReinstall the Homebrew Channel\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::copy /y "%Drive%"\%guidename%+Support\Guide\HBCreinstall2.001 "%Drive%"\%guidename%>nul
goto:MyMGuide
:miniskip
::copy /y "%Drive%"\%guidename%+Support\Guide\HBCreinstall.001 "%Drive%"\%guidename%>nul
::copy /y "%Drive%"\%guidename%+Support\Guide\HBCreinstall2.001 "%Drive%"\%guidename%>nul
::------------------------Install Custom Theme Using MyMenuify----------------------------
:MyMGuide
If /i "%MyM%" NEQ "*" goto:noMyM
copy /y "%Drive%"\%guidename%+Support\Guide\MyMenuify.001 "%Drive%"\%guidename%>nul
echo ^<li^>^<b^>Navigate to the theme you would like to install^<^/b^> that corresponds to your specific System Menu Version ^(%FIRM%%REGION%^) then ^<b^>Press ^<kbd^>A^<^/kbd^>^<^/b^> to select it.^<li^>^<b^>Press ^<kbd^>A^<^/kbd^>^<^/b^> to install the theme>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"square^"^>^<li^>If the theme is unsigned you will need to Press A one more time to confirm.^<li^>When finished it should display ^"Complete^"^<^/ul^>>>"%Drive%"\%guidename%
echo ^<li^>Press any button to exit to the System Menu.>>"%Drive%"\%guidename%
If /i "%FIRM%%REGION%" EQU "4.1J" set appfile=78
If /i "%FIRM%%REGION%" EQU "4.1K" set appfile=81
If /i "%FIRM%%REGION%" EQU "4.1U" set appfile=7b
If /i "%FIRM%%REGION%" EQU "4.1E" set appfile=7e
If /i "%FIRM%%REGION%" EQU "4.2J" set appfile=84
If /i "%FIRM%%REGION%" EQU "4.2U" set appfile=87
If /i "%FIRM%%REGION%" EQU "4.2E" set appfile=8a
If /i "%FIRM%%REGION%" EQU "4.2K" set appfile=8d
If /i "%FIRM%%REGION%" EQU "4.3J" set appfile=94
If /i "%FIRM%%REGION%" EQU "4.3U" set appfile=97
If /i "%FIRM%%REGION%" EQU "4.3E" set appfile=9a
If /i "%FIRM%%REGION%" EQU "4.3K" set appfile=9d
echo ^<ul style^=align^=^"left^" type^=^"square^"^>^<li^>If you later want to restore the original theme launch MyMenuifyMod and either enter "+" or install 000000%appfile%_%FIRM%%REGION%.app.^<^/ul^>^<^/ol^>^<br^>>>"%Drive%"\%guidename%
:noMyM
::--------End of hacking steps listings (and line break). This must be here for the hacking guide------------
support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
if /i "%USBGUIDE%" EQU "Y" goto:USBGUIDESTEP1
::--------------------After Modding-----------------------
:AFTERMODDING
echo ^<font size^=^"6^"^>^<li^>^<a name^=^"Done^"^>After modding your Wii^<^/a^>^<^/li^>^<^/font^>^<br^>^<ul style^=^align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "RC" echo ^<li^>Some of your currently installed Nintendo channels (e.g. News, Internet, etc.) may not work on your new region. To fix this, download and install the channels for your new %Region% Region (see RiiConnect24 note below). Duplicate channels can optionally be removed by googling for Any Title Deleter, but be careful, you can easily brick your Wii with this tool if you delete the wrong thing!>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "U" goto:skip
if /i "%USBGUIDE%" NEQ "Y" echo ^<li^>To play Wii ^(and Gamecube^) games off a USB hard drive, run the USB-Loader Setup wizard from ModMii's Main Menu.>>"%Drive%"\%guidename%
:skip
copy /y "%Drive%"\%guidename%+Support\Guide\AfterModding.001 "%Drive%"\%guidename%>nul
::---------------------credits and support XFLAK-----------------------
:supportxflak
copy /y "%Drive%"\%guidename%+Support\Guide\Credits-XFlak-End.001 "%Drive%"\%guidename%>nul
::guide finish, remove carriage returns and open
support\sfk filter "%Drive%"\%guidename% -lsrep _.__ -rep _"printbutton {"_".printbutton {"_ -write -yes>nul
::replace <kbd> tags for keyboard buttons with <kbd class="keyboard-key nowrap" style="border: 1px solid #aaa; border-radius: 0.2em; box-shadow: 0.1em 0.1em 0.2em rgba(0,0,0,0.1); background-color: #f9f9f9; background-image: linear-gradient(to bottom, #eee, #f9f9f9, #eee); color: #000; padding: 0.1em 0.3em; font-family: inherit; font-size: 0.85em;">
support\sfk filter -spat "%Drive%"\%guidename% -rep _"<kbd>"_"<kbd class=\x22keyboard-key nowrap\x22 style=\x22border: 1px solid #aaa; border-radius: 0.2em; box-shadow: 0.1em 0.1em 0.2em rgba(0,0,0,0.1); <kbd2>"_ -write -yes>nul
support\sfk filter -spat "%Drive%"\%guidename% -rep _"<kbd2>"_"background-color: #f9f9f9; background-image: linear-gradient(to bottom, #eee, #f9f9f9, #eee); color: #000; padding: 0.1em 0.3em; font-family: inherit; font-size: 0.85em;\x22>"_ -write -yes>nul
::Inject Region Change warning into the Priiloader step
if /i "%MENU1%" EQU "RC" support\sfk filter -spat "%Drive%"\%guidename% -rep _"<li>Access Priiloader by powering off the Wii"_"<li><b>If Priiloader failed to install, do NOT power off your Wii or exit the HBC</b>, try the installer again. RCREPLACEME"_ -write -yes>nul
if /i "%MENU1%" EQU "RC" support\sfk filter -spat "%Drive%"\%guidename% -rep _"RCREPLACEME"_"If still unsuccessful, proceed immediately to the Any Region Changer step to fix your AREA/SysMenu mismatch RCREPLACEME"_ -write -yes>nul
if /i "%MENU1%" EQU "RC" support\sfk filter -spat "%Drive%"\%guidename% -rep _"RCREPLACEME"_"otherwise you will semi-brick once you exit a homebrew environment (unless you have Bootmii boot2).<li>Access Priiloader by powering off the Wii"_ -write -yes>nul
if /i "%debug%" NEQ "on" start /D "%Drive%" %guidename%
::---------------CMD LINE MODE-------------
if /i "%cmdlinemode%" NEQ "Y" goto:notcmdfinish
if /i "%cmdguide%" NEQ "G" goto:notcmdfinish
if exist support\settings.bak move /y support\settings.bak support\settings.bat>nul
exit
:notcmdfinish
if /i "%AbstinenceWiz%" NEQ "Y" goto:notAbstinenceWiz
set casper=
set BB1=
set BB2=
set SMASH=
set PWNS=
set Twi=
set YUGI=
set Bathaxx=
set ROTJ=
set TOS=
set f32=
if /i "%SETTINGS%" EQU "G" goto:SNKNANDCONFIRM
goto:SNEEKINSTALLER
:notAbstinenceWiz
if /i "%SETTINGS%" EQU "G" goto:DOWNLOADQUEUE
if /i "%SETTINGSHM%" EQU "G" goto:HACKMIISOLUTION
goto:DLSETTINGS2
::-------------USB-Loader Setup Steps--------------
:USBGUIDESTEP1
support\sfk echo -spat \x3cfont size=\x226\x22\x3e\x3cli\x3eUSB Loader and Hard Drive setup\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "W" support\sfk echo -spat The rest of the guide is performed on your computer in order to set up your USB-Loader. Also note that a FAT32 SD\SDHC\SDXC Card can optionally be used in place of a Hard Drive.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::add <ol> but not for Abstinence Wizard
support\sfk echo -spat \x3col\x3e>>"%Drive%"\%guidename%
::---------------------Connected Drive Information Spoiler (2 of 2)------------------------
if exist "%temp%\Get-Disk.txt" goto:USBSpoiler
if exist "%temp%\format2.txt" goto:USBSpoiler
::Partition Style \ Partition Table MBR vs GPT check
::direct powershell get-disk output screwed up by nircmd.exe win commands to resize window for some strange reason, work around via subscript and start separately\hidden3
::powershell Get-Disk >"%temp%\Get-Disk.txt"
::powershell "Invoke-Command {Get-Disk}" >"%temp%\Get-Disk.txt"
::powershell "Invoke-Command {Get-Volume | Where-Object {$_.drivetype -eq 'removable'} | Get-Partition | Get-Disk | Select-Object -Unique | Format-Table -AutoSize -Wrap}"
::echo powershell "Invoke-Command {Get-Volume | Where-Object {$_.drivetype -eq 'removable'} | Get-Partition | Get-Disk | Format-Table -AutoSize -Wrap}" ^>Get-Disk.txt>"%temp%\Get-Disk.bat"
::echo wmic logicaldisk where Description="Removable Disk" get deviceid,filesystem^>format.txt>>"%temp%\Get-Disk.bat"
echo powershell "Invoke-Command {Get-Disk | Format-Table -AutoSize -Wrap}" ^>Get-Disk.txt>"%temp%\Get-Disk.bat"
echo wmic logicaldisk where FileSystem!=null get deviceid,filesystem^>format.txt>>"%temp%\Get-Disk.bat"
echo exit>>"%temp%\Get-Disk.bat"
::vbs to run script invisibly, "nircmd.exe exec hide" can run hidden but not hide+wait
echo Set ws = WScript.CreateObject("WScript.Shell")>"%temp%\Get-Disk.vbs"
echo cmd = "%temp%\Get-Disk.bat">>"%temp%\Get-Disk.vbs"
echo ret = ws.Run(cmd, 0, True)>>"%temp%\Get-Disk.vbs"
echo Set ws = Nothing>>"%temp%\Get-Disk.vbs"
set "ModMiiDir=%cd%"
cd /d "%temp%"
start /wait Get-Disk.vbs
cd /d "%ModMiiDir%"
support\sfk filter -quiet "%temp%\Get-Disk.txt" -ls!- -ls!0 -no-empty-lines -no-blank-lines -write -yes
cmd /a /c type "%temp%\format.txt">"%temp%\format2.txt"
support\sfk filter -quiet "%temp%\format2.txt" -ls!"%homedrive%" -no-empty-lines -no-blank-lines -write -yes
::check if file is null
::for %%R in (temp\Get-Disk.txt) do if %%~zR lss 1 (echo no removable drives) else (echo yes removable drives)
:USBSpoiler
::check Removable Disk filesystem format types, if no : in output, then no removable devices connected
findStr /I ":" "%temp%\format2.txt" >nul
IF ERRORLEVEL 1 goto:SkipUSBSpoiler
echo External hard drive partition style\format information for drives that were connected when this guide was created has been saved to the spoiler below.^<br^>^<br^>>>"%Drive%"\%guidename%
::add spoiler for Connected Drive Information if any connected
support\sfk echo -spat "<div style><div class=\x22spoilerfont\x22 style=\x22text-align:left;\x22><input value=\x22 Click to see Connected Drive Information \x22 style=\x22margin: 0px; padding: 0px; font-size: x-large;\x22 onclick=\x22if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display \x21= '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = ' Click to hide Connected Drive Information '; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = ' Click to see Connected Drive Information '; }\x22 type=\x22button\x22></div><div class=\x22alt2\x22 style=\x22border: 0px inset ; margin: 0px; padding: 6px;\x22><div style=\x22display: none;\x22>">>"%Drive%"\%guidename%
echo ^<pre^>>>"%Drive%"\%guidename%
::copy /y "%Drive%"\%guidename%+"%temp%\format2.txt" "%Drive%"\%guidename%>nul
::line count, count lines, if only 1 then don't show
set /a TotalDrives=0
cd /d "%temp%"
for /f %%a in (Get-Disk.txt) do set /a TotalDrives+=1
cd /d "%ModMiiDir%"
::echo %TotalDrives%
::if /i %TotalDrives% GTR 1 echo ^<^/pre^>Partition Style below should be MBR by default for almost all SD Cards. If for some reason yours is not, convert it to MBR using the directions from ModMii's USB-Loader Setup guide.^<br^>^<pre^>>>"%Drive%"\%guidename%
if /i %TotalDrives% GTR 1 copy /y "%Drive%\%guidename%"+"%temp%\Get-Disk.txt" "%Drive%"\%guidename%>nul
if /i %TotalDrives% GTR 1 echo ^<br^>>>"%Drive%"\%guidename%
copy /y "%Drive%\%guidename%"+"%temp%\format2.txt" "%Drive%"\%guidename%>nul
echo ^<^/pre^>^<^/div^>^<^/div^>^<^/div^>^<br^>>>"%Drive%"\%guidename%
:SkipUSBSpoiler
:CasperPickUp
copy /y "%Drive%"\%guidename%+Support\Guide\MBR.001 "%Drive%"\%guidename%>nul
if /i "%PCSAVE%" EQU "Portable" goto:portableF32
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" NEQ "%cd:~0,2%" goto:portableF32
:skip
support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"shortcuts on your Start Menu or Desktop or directly from %cd:_=\x5f%\Program Files"_ -write -yes
if /i "%Homedrive%" NEQ "%cd:~0,2%" support\sfk filter -quiet "%Drive%\%guidename%" -rep _"<!--formatwarning"__ -rep _"formatwarning-->"__ -write -yes
goto:noportableF32
:portableF32
if /i "%USBCONFIG%" EQU "USB" support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"%DRIVEU:_=\x5f%\Program Files"_ -write -yes
if /i "%USBCONFIG%" NEQ "USB" support\sfk filter -quiet -spat "%Drive%\%guidename%" -rep _"shortcuts on your Start Menu or Desktop."_"%DRIVE:_=\x5f%\Program Files"_ -write -yes
support\sfk filter -quiet "%Drive%\%guidename%" -rep _"<!--formatwarning"__ -rep _"formatwarning-->"__ -write -yes
:noportableF32
copy /y "%Drive%"\%guidename%+Support\Guide\side_spoiler_script.001 "%Drive%"\%guidename%>nul
support\sfk filter -quiet "%Drive%\%guidename%" -rep _"//document.getElementById"_"document.getElementById"_ -write -yes
if /i "%AbstinenceWiz%" NEQ "Y" goto:notAW
::for AW remove all buttons that don't use FAT32
support\sfk filter "%Drive%"\%guidename% -!"'FormatGroup', 'WBFS'" -write -yes>nul
support\sfk filter "%Drive%"\%guidename% -!"'FormatGroup', 'NTFS'" -write -yes>nul
goto:AbstinenceWizGUIDE
:notAW
if /i "%USBCONFIG%" NEQ "USB" goto:skipcopytousb
if /i "%DriveU:~1,1%" EQU ":" set "fulldriveu=%Driveu%"
if /i "%DriveU:~1,1%" NEQ ":" set "fulldriveu=%cd%\%Driveu%"
support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eCopy Files to the Hard Drive\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e^<ul style^=align^=^"left^" type^=^"disc^"^>^<li^>At this time you should copy the files ModMii downloaded to the root of your hard-drive\partition (or SD Card if your HDD is WBFS).^<ul style^=align^=^"left^" type^=^"square^"^>^<li^>The files should be saved here: "%fulldriveu%"^<^/ul^>^<^/ul^>\x3cbr\x3eWhen finished copying, you can proceed with the optional steps below or safely remove the hard drive from your computer and plug it into port0 on your Wii to start playing^!\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
:skipcopytousb
::-------------WiiBackupManager--------------
support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eManage Game backups (optional)\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
if /i "%PCSAVE%" EQU "Portable" goto:portableWBM
if /i "%PCSAVE%" NEQ "Auto" goto:skip
if /i "%Homedrive%" NEQ "%cd:~0,2%" goto:portableWBM
:skip
echo ^<li^>Launch the below tools from shortcuts on your Start Menu or Desktop.>>"%Drive%"\%guidename%
goto:noportableWBM
:portableWBM
if /i "%USBCONFIG%" EQU "USB" echo ^<li^>WiiBackupManager.exe is saved here: "%DRIVEU%\Program Files\WiiBackupManager">>"%Drive%"\%guidename%
if /i "%USBCONFIG%" EQU "USB" echo ^<li^>NKitProcessingApp.exe is saved here: "%DRIVEU%\Program Files\NKit">>"%Drive%"\%guidename%
if /i "%USBCONFIG%" EQU "USB" echo ^<li^>GCBM.exe is saved here: "%DRIVEU%\Program Files\GCBM">>"%Drive%"\%guidename%
if /i "%USBCONFIG%" NEQ "USB" echo ^<li^>WiiBackupManager.exe is saved here: "%DRIVE%\Program Files\WiiBackupManager">>"%Drive%"\%guidename%
if /i "%USBCONFIG%" NEQ "USB" echo ^<li^>NKitProcessingApp.exe is saved here: "%DRIVE%\Program Files\NKit">>"%Drive%"\%guidename%
if /i "%USBCONFIG%" NEQ "USB" echo ^<li^>GCBM.exe is saved here: "%DRIVE%\Program Files\GCBM">>"%Drive%"\%guidename%
:noportableWBM
echo ^<^/ul^>^<br^>>>"%Drive%"\%guidename%
echo ^<font size="5"^>^<b^>Wii Backup Manager^</b^>^</font^>^<br^>>>"%Drive%"\%guidename%
echo ^<i^>Wii Backup Manager (WBM) is a Windows program to help transfer Wii games to and from hard drives and SD cards.^<br^>It can also download game covers, list your games, identify what games are missing between devices, and more.^<^/i^>^<br^>^<br^>>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\WBM.001 "%Drive%"\%guidename%>nul
echo ^<ul style^=align^=^"left^" type^=^"disc^"^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" support\sfk echo -spat "\x3cli\x3eTo copy Wii Discs, launch USB-Loader GX or Configurable USB-Loader and insert the disc into your Wii, if you're not prompted to copy\install the game you can press <kbd>+</kbd> to start making a backup.">>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "CFG" support\sfk echo -spat "\x3cli\x3eTo copy Wii Discs, launch Configurable USB-Loader and insert the disc into your Wii, then press <kbd>+</kbd>.">>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "GX" support\sfk echo -spat "\x3cli\x3eTo copy Wii Discs, launch USB-Loader GX and insert the disc into your Wii, if you're not prompted to copy\install the game you can press <kbd>+</kbd> to start making a backup.">>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" support\sfk echo -spat "\x3cli\x3eWiiFlow Lite cannot be used to copy Wii Discs. You will have to use a different USB-Loader or an older version of WiiFlow.">>"%Drive%"\%guidename%
echo ^<li^>To copy GameCube (or Wii) Discs, launch "CleanRip" from the HBC and insert the disc into your Wii, then follow the very simple on-screen instructions. Note that CleanRip does not support devices formatted as WBFS.>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"square^"^>^<li^>^<b^>Warning^<^/b^>^: Using your Wii to rip games to NTFS is ^<u^>very^<^/u^> unstable, it is highly recommended to rip games to a FAT32 or WBFS formatted HDD, then transfer them to your NTFS drive using a computer. Recall that GameCube games cannot be played when saved to NTFS devices.^<^/ul^>>>"%Drive%"\%guidename%
echo ^<^/ul^>^<br^>>>"%Drive%"\%guidename%
::-------------CONFIGURE/CUSTOMIZE USB-LOADER (OPTIONAL)-------------
copy /y "%Drive%"\%guidename%+Support\Guide\CustomizeLoader.001 "%Drive%"\%guidename%>nul
if /i "%LOADER%" EQU "GX" echo ^<li^>If you have questions about getting started with USB-Loader GX ^<a href^=^"https^:^/^/web.archive.org^/web^/20231213215727^/wii.guide^/usbloadergx^" target^=^"_blank^"^>click here^<^/a^>.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" echo ^<li^>If you have questions about getting started with WiiFlow ^<a href^=^"https^:^/^/web.archive.org^/web^/20231213215727^/wii.guide^/wiiflow^" target^=^"_blank^"^>click here^<^/a^>.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" echo ^<li^>WiiFlow Lite emulator plugins allow the loader to also launch games for classic consoles as well. Grab the emulator plugins pack from ^<a href^=^"https^:^/^/gbatemp.net^/threads^/the-great-quest-for-wiiflow-plugins-tm-a-call-for-adventurers.563575" target^=^"_blank^"^>click here^<^/a^>. Note: ignore the v6 download from 2021 and use the newer pack.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "FLOW" echo ^<li^>A popular WiiFlow Lite theme is the beautiful 'Rhapsodii Shima' theme. Check it out by clicking ^<a href^=^"https^:^/^/gbatemp.net^/threads^/rhapsodii-shima-5-4.555062^" target^=^"_blank^"^>here^<^/a^>.^<^/ul^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" echo ^<li^>If you have questions about getting started with USB-Loader GX ^<a href^=^"https^:^/^/web.archive.org^/web^/20231213215727^/wii.guide^/usbloadergx^" target^=^"_blank^"^>click here^<^/a^>.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" echo ^<li^>If you have questions about getting started with WiiFlow ^<a href^=^"https^:^/^/web.archive.org^/web^/20231213215727^/wii.guide^/wiiflow^" target^=^"_blank^"^>click here^<^/a^>.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" echo ^<li^>WiiFlow Lite emulator plugins allow the loader to also launch games for classic consoles as well. Grab the emulator plugins pack from ^<a href^=^"https^:^/^/gbatemp.net^/threads^/the-great-quest-for-wiiflow-plugins-tm-a-call-for-adventurers.563575" target^=^"_blank^"^>click here^<^/a^>. Note: ignore the v6 download from 2021 and use the newer pack.^<br^>>>"%Drive%"\%guidename%
if /i "%LOADER%" EQU "ALL" echo ^<li^>A popular WiiFlow Lite theme is the beautiful 'Rhapsodii Shima' theme. Check it out by clicking ^<a href^=^"https^:^/^/gbatemp.net^/threads^/rhapsodii-shima-5-4.555062^" target^=^"_blank^"^>here^<^/a^>.^<^/ul^>>>"%Drive%"\%guidename%
::USBFOLDER indicates cfg usb loader
if /i "%USBFOLDER%" NEQ "*" goto:skip
::---!!!DISABLED BUILDING CONFIG!!!---::
::copy /y "%Drive%"\%guidename%+Support\Guide\CustomizeCFG.001 "%Drive%"\%guidename%>nul
if /i "%USBCONFIG%" EQU "USB" echo ^<li^>To customize CFG USB-Loader use the Configurator for Configurable USB-Loader found here: "%DRIVEU%\usb-loader\CfgLoaderConfigurator.exe"^<br^>>>"%Drive%"\%guidename%
if /i "%USBCONFIG%" NEQ "USB" echo ^<li^>To customize CFG USB-Loader use the Configurator for Configurable USB-Loader found here: "%DRIVE%\usb-loader\CfgLoaderConfigurator.exe"^<br^>>>"%Drive%"\%guidename%
echo ^<ul style^=align^=^"left^" type^=^"square^"^>>>"%Drive%"\%guidename%
echo ^<li^>For tips and tricks on using the Configurator ^<a href^=^"http^:^/^/gwht.wikidot.com^/configurable-options^" target^=^"_blank^"^>click here^<^/a^>.^<^/ul^>^<br^>>>"%Drive%"\%guidename%
:skip
::ADD end of ordered list and line break for ALL usb-loader guides (</ol><br>)
support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
if /i "%MENU1%" EQU "W" goto:AFTERMODDING
GOTO:supportxflak
::---------AbstinenceWizguide (after USB SETUP)----------
:AbstinenceWizGUIDE
::copy files to USB
if /i "%SNEEKTYPE:~0,1%" EQU "U" support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eCopy Files to the Hard Drive\x3c/li\x3e\x3c/font\x3e\x3cbr\x3eCopy everything inside the "%DRIVEU%" folder to the root of your FAT32 hard-drive\partition.\x3cbr\x3eThen safely remove it from your computer and plug it into port0 on your Wii and proceed to the next step.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eLaunch an Exploit on Your Wii\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::goto exploit
set afterexploit=continueAbstinenceguide
goto:exploits
:continueAbstinenceguide
::Install IOS53 if required
if /i "%FIRMSTART%" EQU "4.3" goto:skipWADIOS53
if /i "%FIRMSTART%" EQU "4.2" goto:skipWADIOS53
copy /y "%Drive%"\%guidename%+Support\Guide\WADIOS53.001 "%Drive%"\%guidename%>nul
:skipWADIOS53
support\sfk echo -spat \x3cbr\x3eThis runs Casper which is configured to start %neekname%.\x3cbr\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::NEEK TIPS
support\sfk echo -spat \x3cfont size=\x225\x22\x3e\x3cli\x3eHelpful Hints on Using %neekname%\x3c/li\x3e\x3c/font\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
copy /y "%Drive%"\%guidename%+Support\Guide\NEEKTIPS.001 "%Drive%"\%guidename%>nul
if /i "%SNEEKTYPE:~-1%" EQU "D" copy /y "%Drive%"\%guidename%+Support\Guide\NEEKDITIPS.001 "%Drive%"\%guidename%>nul
copy /y "%Drive%"\%guidename%+Support\Guide\NEEKTIPSEND.001 "%Drive%"\%guidename%>nul
::ADD end of ordered list and line break (</ol><br>)
::support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
::ADD end of ordered list and line break (</ol><br>)
support\sfk echo -spat \x3c/ol\x3e\x3cbr\x3e>>"%Drive%"\%guidename%
GOTO:supportxflak