{"id":27429734,"url":"https://github.com/gerbilsoft/rvthtool","last_synced_at":"2025-04-14T14:29:16.577Z","repository":{"id":45074669,"uuid":"117544556","full_name":"GerbilSoft/rvthtool","owner":"GerbilSoft","description":"RVT-H Tool","archived":false,"fork":false,"pushed_at":"2025-02-01T03:31:21.000Z","size":16691,"stargazers_count":35,"open_issues_count":8,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-01T04:23:26.252Z","etag":null,"topics":["devkit","iso","ndev","nintendo","rvt","rvt-h","rvt-r","wii"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GerbilSoft.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-15T12:47:40.000Z","updated_at":"2025-02-01T03:31:25.000Z","dependencies_parsed_at":"2023-12-11T00:22:26.452Z","dependency_job_id":"9ca9b01b-db44-4372-a383-e449832f62de","html_url":"https://github.com/GerbilSoft/rvthtool","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GerbilSoft%2Frvthtool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GerbilSoft%2Frvthtool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GerbilSoft%2Frvthtool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GerbilSoft%2Frvthtool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GerbilSoft","download_url":"https://codeload.github.com/GerbilSoft/rvthtool/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248896626,"owners_count":21179466,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devkit","iso","ndev","nintendo","rvt","rvt-h","rvt-r","wii"],"created_at":"2025-04-14T14:29:15.873Z","updated_at":"2025-04-14T14:29:16.565Z","avatar_url":"https://github.com/GerbilSoft.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RVT-H Tool\n\nThis is an open-source tool for managing RVT-H Reader consoles.\n\n[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)\u003cbr\u003e\n[![AppVeyor Build status](https://ci.appveyor.com/api/projects/status/l83tx6d16gqr4ov2?svg=true)](https://ci.appveyor.com/project/GerbilSoft/rvthtool/branch/master)\n\n![RVT-H Reader, RVT-R Reader, Wii RVL-001, and Commodore 1541C](doc/RVT.jpg)\n\n## Current Features\n\n* Lists all disc images currently installed on the RVT-H system.\n* Can find \"deleted\" images that aren't accessible on the RVT-H but are still\n  present on the HDD, and has an option to undelete these images.\n  * Can undelete any image deleted by rvtwriter, which only clears the\n    bank table entry.\n  * Can undelete Wii images that were \"flushed\" using the front-panel button.\n    * GameCube images deleted this way cannot currently be undeleted.\n* Extracts disc images from an RVT-H system or HDD image into a GCM file.\n  * Supports optional recryption to convert a debug-encrypted image to retail\n    encryption with fake-signed ticket and TMD.\n* Signature verification for all Wii disc images. Indicates if the signature\n  is valid, invalid, or fakesigned. (Game partition only at the moment.)\n* Installation of GameCube and Wii disc images onto an RVT-H system. If\n  importing a retail Wii disc image, it will automatically be re-signed and\n  re-encrypted using the debug keys. (Update partitions will be removed, since\n  retail updates won't work properly on RVT-H.)\n  * Supported image formats: GCM, headered GCM, CISO, WBFS\n  * Split WBFS is not currently supported. Combine the .wbfs and .wbfs1 files\n    before processing.\n* Standalone disc image re-signing to convert e.g. retail to debug, debug\n  to retail, unencrypted to debug, etc. Conversion to retail will result\n  in a fakesigned image.\n* Querying all available RVT-H Reader devices to determine which device name\n  is associated with which reader.\n* Converting unencrypted debug-signed disc images to retail fake-signed and\n  debug-encrypted debug-signed.\n\n## Planned Features\n\n* Extend the bank table to support more than 8 banks. Requires an RVT-H Reader\n  with an HDD larger than 40 GB.\n  * Bank 1 will be relocated to before the bank table, limiting it to GameCube\n    images.\n\nA future version will also add a GUI.\n\n## Usage\n\nThe following commands assume `/dev/sdb` is the RVT-H device.\n\nFull unencrypted RVT-H disk image dumps taken from the front-panel USB port\nand by dumping the drive directly are also supported.\n\nDirect device access on Windows is possible by specifying `\\\\.\\PhysicalDriveN`,\nwhere N is the physical disk number. Disk Management will show the physical disk\nnumber in the bottom pane.\n\n**WARNING:** Disk Management will prompt to initialize the RVT-H device. DO NOT\nALLOW IT TO INITIALIZE THE DRIVE; this may cause data loss.\n\nThe following commands assume `/dev/sdb` is the RVT-H Reader, and will\nextract bank 1.\n\n* List disc images:\n  * `$ sudo ./rvthtool list /dev/sdb`\n* Extract a bank with no modifications:\n  * `$ sudo ./rvthtool extract /dev/sdb 1 disc.gcm`\n* Extract a bank and convert to retail fakesigned encryption:\n  * `$ sudo ./rvthtool extract --recrypt=retail /dev/sdb 1 disc.gcm`\n* Delete a bank:\n  * `$ sudo ./rvthtool delete /dev/sdb 1`\n  * NOTE: This will only clear the bank table entry.\n* Undelete a bank:\n  * `$ sudo ./rvthtool undelete /dev/sdb 1`\n* Import a GameCube or Wii game:\n  * `$ sudo ./rvthtool import /dev/sdb 1 disc.gcm`\n  * If the game is retail-encrypted, it will be converted to debug encryption\n    and signed using the debug keys.\n* Convert an RVT-R disc image to retail fakesigned:\n  * `$ ./rvthtool extract --recrypt=retail RVT-R.gcm RetailFakesigned.gcm`\n  * The bank number may be omitted if the source file is a standalone disc\n    image instead of an RVT-H HDD image or RVT-H Reader device.\n* Query available RVT-H Readers:\n```\n$ ./rvthtool query\n\n/dev/sdb\n- Manufacturer:  Nintendo Co., Ltd.\n- Product Name:  RVT-H READER\n- Serial Number: 20xxxxxx\n- HDD Firmware:  01.0\n- HDD Vendor:    WDC     \n- HDD Model:     WD800BEVE-00UYT0\n- HDD Size:      74.5 GB\n```\n\n## Encryption\n\nThe RVT-H's internal hard drive is not encrypted. This allows `rvthtool` to\noperate on an RVT-H system that's connected directly using USB, as well as\ndisk image dumps from both the USB interface and from a direct HDD dump.\n\nDisc images on the RVT-H may or may not be encrypted:\n* GameCube: Not encrypted.\n* Wii: May be encrypted using the RVT-R debug key, or not encrypted.\n\nDebug-signed Wii disc images (with and without encryption) are playable on\nthe [Dolphin emulator](https://dolphin-emu.org/) with no changes. They can\nalso be used on retail consoles with a USB loader if the image is re-encrypted\nand fakesigned using the retail encryption key.\n\n### Note about Debug IOS\n\nRVT-R disc images typically include debug versions of IOS. These will not\ninstall on retail consoles, since they're encrypted with debug keys.\nDo **NOT** attempt to install them by re-encrypting them with the retail\nkeys. Doing so will most likely result in a brick, especially if the 128 MB\nmode IOS WADs are used.\n\n## wadresign\n\nThis is a command line tool to resign WAD files to and from any Wii keyset.\nConversion to Debug will be realsigned. Conversion to retail or Korean will\nbe fakesigned.\n\nIn addition, this tool supports reading early devkit WADs, which makes it\npossible to convert them to run on emulators and/or later devkits.\n\n**WARNING:** Use with caution if converting a system title for installation\non real hardware, since this may result in an unrecoverable brick.\n\n## nusresign\n\nThis is a command line tool to resign NUS/WUP packages for Wii U to and from\nany Wii U keyset. Conversion to Debug will be realsigned. Conversion to retail\nwill be unsigned.\n\n**WARNING:** Use with caution if converting a system title for installation\non real hardware, since this may result in an unrecoverable brick.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerbilsoft%2Frvthtool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgerbilsoft%2Frvthtool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerbilsoft%2Frvthtool/lists"}