RVZ <>ย ISO Converter Script Files for Dolphin Emulator
In this repository you will find utility scripts made in PowerShell to automate the conversion between GameCube and Wii's console ISO files to RVZ file format, and vice versa.
RVZ format is only supported by Dolphin emulator. It is the modern, optimal, lossless format of choice:
These script files will use DolphinTool on background:
-
DolphinTool.exe standalone executable file, which is included in Dolphin emulator package:
-
Microsoft PowerShell (which is integrated in Microsoft Windows OS), or the cross-platform PowerShell Core:
-
At least one GameCube or Wii ISO or RVZ file to use any of these script files, obviously.
Download the latest release by clicking here,
Please note that using block size values larger than 128 KB (131072 bytes) may cause emulation issues depending on the capabilities of the machine you use to emulate the ROMs. On a PC, a block size of 32 MB (33554432 bytes) should be generally safe and work well without any negative effects.
However, the script files are provided "as-is", so use them at your own risk. Make sure to review the settings before running the scripts, back up your ROMs, and test the compressed ROMs before deleting the original ones.
-
Download the
Convert_ISO_to_RVZ.ps1(or simpler versionConvert_ISO_to_RVZ.bat) script file from this repository (make click on the file in GitHub to view the code and copy it, and also you can find a button to download the raw file). -
Open the script file in notepad and edit as you like the values of the Variables section at the very top of the script. The default values are:
$dolphinToolFullPath = "$PSScriptRoot\DolphinTool.exe"
$inputDirectoryPath = "$PSScriptRoot"
$outputDirectoryPath = ""
$recursiveSearch = $false
$overwriteConfirm = $true
$sendConvertedFilesToRecycleBin = $true
$compressionFormat = "lzma2" # none, zstd, bzip, lzma, lzma2
$compressionLevel = 9 # zstd: 1~22, bzip/lzma/lzma2: 1~9
$blockSize = 32mb
| Variable Name | Meaning |
|---|---|
| $dolphinToolFullPath | The DolphinTool.exe full file path (it can be a relative path) |
| $inputDirectoryPath | The directory where to search for ISO files to convert them to RVZ format. |
| $outputDirectoryPath | The directory where to write the converted RVZ files. |
| $recursiveSearch | Flag to indicate whether to perform a recursive search for ISO files. |
| $overwriteConfirm | Flag to confirm overwrite for any existing RVZ file in the output directory. |
| $sendConvertedFilesToRecycleBin | Flag to send successfully converted ISO files to recycle bin. If you set this value to $false, converted ISO files will be kept. |
| $compressionFormat | Compression format |
| $compressionLevel | Compression level |
| $blockSize | Block size used for compression |
- Run the script file, and wait until the conversion operation completes.
-
Download the
Extract_RVZ_to_ISO.ps1(or simpler versionExtract_RVZ_to_ISO.bat) script file from this repository (make click on the file in GitHub to view the code and copy it, and also you can find a button to download the raw file). -
Open the script file in notepad and edit as you like the values of the Variables section at the very top of the script. The default values are:
$dolphinToolFullPath = "$PSScriptRoot\DolphinTool.exe"
$inputDirectoryPath = "$PSScriptRoot"
$outputDirectoryPath = ""
$recursiveSearch = $false
$overwriteConfirm = $true
$sendConvertedFilesToRecycleBin = $true
| Variable Name | Meaning |
|---|---|
| $dolphinToolFullPath | The DolphinTool.exe full file path (it can be a relative path). |
| $inputDirectoryPath | The directory where to search for RVZ files to extract them to ISO format. |
| $outputDirectoryPath | The directory where to write the extracted ISO files. |
| $recursiveSearch | Flag to indicate whether to perform a recursive search for RVZ files. |
| $overwriteConfirm | Flag to confirm overwrite for any existing ISO file in the output directory. |
| $sendConvertedFilesToRecycleBin | Flag to send successfully converted RVZ files to recycle bin. If you set this value to $false, RVZ files will be kept. |
- Run the script file, and wait until the conversion operation completes.
Run the script files with administrator privileges. You can safely remove this line from the script files if it causes any issues to you:
try { Set-ExecutionPolicy -ExecutionPolicy "Unrestricted" -Scope "Process" } catch { }
I'm not a PowerShell enthusiast, it's just a quick tool that I use to satisfy some programmatic needs, so the source code of the scripts in this repository are ugly and some parts of the code a mess (poorly structured code, many repeated lines, resorting to .NET classes usage rather than pure Powershell and pipes, etc), but hey, it works as expected, so I shared them as is.
Explore the complete list of changes, bug fixes, and improvements across different releases by clicking here.
Your contribution is highly appreciated!. If you have any ideas, suggestions, or encounter issues, feel free to open an issue by clicking here.
Your input helps make this Work better for everyone. Thank you for your support! ๐
This work is distributed for educational purposes and without any profit motive. However, if you find value in my efforts and wish to support and motivate my ongoing work, you may consider contributing financially through the following options:
| Platform | How to Support |
|---|---|
| Become my sponsor on GitHub Contribute any amount you prefer and unlock rewards! |
|
| Support me on Ko-fi Buy me a coffee! |
|
| Become a Patron on Patreon Support my open-source work regularly! |
|
| Make a PayPal Donation Donate any amount you like via PayPal! |
|
| Purchase my software at Envato's CodeCanyon Discover my desktop tools and DevCase Class Library for .NET, an extensive API suite. |
This software and its associated repository are provided strictly on an "as is" basis, without warranties of any kind, whether express or implied. This includes, but is not limited to, any implied warranties of merchantability, reliability, or fitness for a particular purpose.
The authors and copyright holders assume no liability for any direct, indirect, incidental, or consequential damagesโincluding data loss or system errorsโarising from the use, misuse, or inability to use this software. You are solely responsible for determining the appropriateness of using this tool and assume all associated risks.
Furthermore, this project operates entirely independently. The utilization of any third-party libraries or components within this software does not imply any affiliation with, or endorsement or approval by, their respective original authors.
This work has no affiliation, approval or endorsement by the authors of Dolphin Emulator.
By using this software, you agree to indemnify and hold harmless the authors from any claims, damages, or liabilities arising from your use or misuse of it.
This project is licensed under the Apache License, Version 2.0. See the License file for details.





