Rom tool 3DS: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
|title=rom_tool
|image=Romtool3ds2.png
|description=ROM trimming and un-trimming.
|author=3DSGuy
|lastupdated=2013/11/08
|type=ROM Managers and Patchers
|version=3.1
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrews/romtool3ds.7z 2.9
|website=https://gbatemp.net/threads/3ds-rom-tool-rom_tool.349314
|source=https://github.com/3DSGuy/rom_tool
}}
{{Obsolete}}


{{Infobox 3DS homebrew
rom_tool is a command line tool designed to check/manipulate CTR Cartridge Image (CCI) files, usually referred to in the 3DS Scene as 3DS ROM dumps.
| title      = 3DS ROM Tool
| image      = [[File:3DS_TOOL.png|300px]]
| type        = utility
| version    = 2.9
| licence    = Mixed
| author      = 3DSGuy
| website    =
| download    = http://filetrip.net/3ds-downloads/utilities/start-3ds-rom-tool-29-f32412.html
| source      =
}} 
"rom_tool" is a tool I wrote in light of the recently announced Gateway 3DS. It has three main features:


Its major use is to reduce the size of CCI files (trimming) by removing dummy bytes (and being able to restore them again). Trimmed CCI files are compatible with the Gateway 3DS flash cart, and associated clones.
'''Note:''' The link is for v2.9 only (latest release is v3.1).
==Features==
* Read 3DS ROMs, and print information about them, including actual ROM file size, and minimum required 3DS FW etc.
* Read 3DS ROMs, and print information about them, including actual ROM file size, and minimum required 3DS FW etc.
* Accurately trim 3DS ROMs, and be able to restore them again.
* Accurately trim 3DS ROMs, and be able to restore them again.
* Extract the partitions from 3DS ROMs (and other NCSD Images, such as NAND Dumps)
* Extract the partitions from 3DS ROMs (and other NCSD Images, such as NAND Dumps).


ROM trimming and un-trimming is tested(to trim and un-trim correctly), and works with all 3DS ROM sizes, large(4GB) and small(128MB).
==User guide==
'''Note:''' You can remove about 30MB extra from a CCI by removing the update data (in versions prior to rom_tool 3.0, this was referred to as Super Trimming). However unlike regular CCI trimming, this is a permanent modification, and cannot be reversed. So use with caution and only when space is scarce. CCIs which have had their update data removed will only work with Gateway3DS v1.1 and above.


NOTE: In release v2.6 and onwards, there exists a feature called "Super Trim". This works by removing the update partition(in addition to unused bytes) from the ROM. However as this is removing used data from the ROM, the removed update partition CANNOT be restored, and the ROM is PERMANENTLY altered. As update partitions are approximately 30MB in size, Super Trimming offers little advantage over regular trimming when dealing with large ROMs. So Super Trimming a ROM should only be done when space is scarce.
===Predict CCI Compatibility with Flashcards===
You can use rom_tool to view CCI Info to predict CCI Compatibility with 3DS Flashcards. If any of the following are true, then the CCI will not work.


NOTE: Super Trimmed ROMs are only compatible with Gateway Version 1.1a and above. This is because the update partition is removed, and under normal circumstances the 3DS would register an error. However in GW Version 1.1a and above, game card update check is bypassed, so removing the update partition will not affect playing the ROM.
For R4i Gold 3DS Deluxe 2.0/Gateway Firmware 1.2:
* If "Media Type:" is "CARD2" (Flashcards can currently only emulate cards of type CARD1).
* If "SDK Version:" is "5.0.0 Release" or greater. (Firmwares < 5.0.0-11X, fail with the new format).


==HOW TO USE==
For R4i Gold 3DS Deluxe 3.0/Gateway Firmware 2.0B1):
* If "Media Type:" is "CARD2" (Flashcards can currently only emulate cards of type CARD1).


===Command line===
This is a command line tool, so you have to use cmd.
This is a command line tool, so you have to use cmd.


View ROM/NAND Dump Info:
* View ROM/NAND Dump Info <code>rom_tool -i Test.3ds</code>
* Extract ROM Partitions <code>rom_tool -x [directory to extract partitions] Test.3ds</code>
* Trim ROM <code>rom_tool -t Test.3ds</code>
* Super Trim ROM (permanently remove update partition) <code>rom_tool -s Test.3ds</code>
* Restore ROM (untrim) <code>rom_tool -r Test.3ds</code>


rom_tool -i Test.3ds
ROM trimming and un-trimming is tested (to trim and un-trim correctly), and works with all 3DS ROM sizes, large(4GB) and small(128MB).


Extract ROM Partitions:
==Screenshots==
https://dlhb.gamebrew.org/3dshomebrews/romtool3ds3.png


rom_tool -x [directory to extract partitions] Test.3ds
https://dlhb.gamebrew.org/3dshomebrews/romtool3ds4.png


Trim ROM:
==Compatibility==
Tested on the following systems:
* Windows 32bit/64bit (Tested on Windows 7/8).
* Mac OS X (Tested on 10.8.3).


rom_tool -t Test.3ds
==Changelog==
'''v3.1'''
* Removed support for NAND dumps, now only supports CCI/CSU images.
* Ditched Crypto Library.
* Changed terminology, "CCI" has been used in place of "ROM".
* CCI information has been changed.
* Detects SDK version accurately.
* Detects required kernel (NATIVE_FIRM) version accurately.
* Detects encryption key used for each partition.


Super Trim ROM (Permanently remove update partition):
'''v2.9'''
 
* Extraction of NCSD Partitions should no longer bottleneck RAM.
rom_tool -s Test.3ds
* Save Encryption is now determined.
* The condition of the NCSD File Image, is displayed (Full Size, Trimmed, SuperTrimmed).
* An issue has been identified in Linux, and Linux versions will not work with large (>=2GB) roms.
* Checking the Size of the ROM has been improved.


Restore ROM (Untrim):
==External links==
* GitHub - https://github.com/3DSGuy/rom_tool
* GBAtemp - https://gbatemp.net/threads/3ds-rom-tool-rom_tool.349314


rom_tool -r Test.3ds
[[Category:3DS homebrew applications]]
 
[[Category:PC utilities for 3DS homebrew]]
Supported Operating Systems:
 
* Windows 32bit/64bit (Tested on Windows 7/8) (executable included in download)
 
* Mac OS X (Tested on 10.8.3) (executable included in download)
 
 
Change log (v2.9):
 
* Extraction of NCSD Partitions should no longer bottleneck RAM
* Save Encryption is now determined
* The condition of the NCSD File Image, is displayed (Full Size, Trimmed, SuperTrimmed)
* An issue has been identified in Linux, and Linux versions will not work with large (>=2GB) roms.
* Checking the Size of the ROM has been improved

Latest revision as of 12:35, 3 April 2022

rom_tool
Romtool3ds2.png
General
Author3DSGuy
TypeROM Managers and Patchers
Version3.1
LicenseMixed
Last Updated2013/11/08
Links
2.9 Download
Website
Source

rom_tool is a command line tool designed to check/manipulate CTR Cartridge Image (CCI) files, usually referred to in the 3DS Scene as 3DS ROM dumps.

Its major use is to reduce the size of CCI files (trimming) by removing dummy bytes (and being able to restore them again). Trimmed CCI files are compatible with the Gateway 3DS flash cart, and associated clones.

Note: The link is for v2.9 only (latest release is v3.1).

Features

  • Read 3DS ROMs, and print information about them, including actual ROM file size, and minimum required 3DS FW etc.
  • Accurately trim 3DS ROMs, and be able to restore them again.
  • Extract the partitions from 3DS ROMs (and other NCSD Images, such as NAND Dumps).

User guide

Note: You can remove about 30MB extra from a CCI by removing the update data (in versions prior to rom_tool 3.0, this was referred to as Super Trimming). However unlike regular CCI trimming, this is a permanent modification, and cannot be reversed. So use with caution and only when space is scarce. CCIs which have had their update data removed will only work with Gateway3DS v1.1 and above.

Predict CCI Compatibility with Flashcards

You can use rom_tool to view CCI Info to predict CCI Compatibility with 3DS Flashcards. If any of the following are true, then the CCI will not work.

For R4i Gold 3DS Deluxe 2.0/Gateway Firmware 1.2:

  • If "Media Type:" is "CARD2" (Flashcards can currently only emulate cards of type CARD1).
  • If "SDK Version:" is "5.0.0 Release" or greater. (Firmwares < 5.0.0-11X, fail with the new format).

For R4i Gold 3DS Deluxe 3.0/Gateway Firmware 2.0B1):

  • If "Media Type:" is "CARD2" (Flashcards can currently only emulate cards of type CARD1).

Command line

This is a command line tool, so you have to use cmd.

  • View ROM/NAND Dump Info rom_tool -i Test.3ds
  • Extract ROM Partitions rom_tool -x [directory to extract partitions] Test.3ds
  • Trim ROM rom_tool -t Test.3ds
  • Super Trim ROM (permanently remove update partition) rom_tool -s Test.3ds
  • Restore ROM (untrim) rom_tool -r Test.3ds

ROM trimming and un-trimming is tested (to trim and un-trim correctly), and works with all 3DS ROM sizes, large(4GB) and small(128MB).

Screenshots

romtool3ds3.png

romtool3ds4.png

Compatibility

Tested on the following systems:

  • Windows 32bit/64bit (Tested on Windows 7/8).
  • Mac OS X (Tested on 10.8.3).

Changelog

v3.1

  • Removed support for NAND dumps, now only supports CCI/CSU images.
  • Ditched Crypto Library.
  • Changed terminology, "CCI" has been used in place of "ROM".
  • CCI information has been changed.
  • Detects SDK version accurately.
  • Detects required kernel (NATIVE_FIRM) version accurately.
  • Detects encryption key used for each partition.

v2.9

  • Extraction of NCSD Partitions should no longer bottleneck RAM.
  • Save Encryption is now determined.
  • The condition of the NCSD File Image, is displayed (Full Size, Trimmed, SuperTrimmed).
  • An issue has been identified in Linux, and Linux versions will not work with large (>=2GB) roms.
  • Checking the Size of the ROM has been improved.

External links

Advertising: