Giter VIP home page Giter VIP logo

nxdumptool's Introduction

Hi there 👋

GitHub Stats

Top Languages

nxdumptool's People

Contributors

bilditup1 avatar darkmattercore avatar dirn avatar enderghast13 avatar johnson4242 avatar masagrator avatar tsrberry avatar vinfall avatar whovian9369 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nxdumptool's Issues

Unable to dump games on non-primary console

Describe the bug
When trying to dump games on a secondary console, it would give an error

To Reproduce
Steps to reproduce the behavior:

  1. Go to Dump installed SD card / eMMC content
  2. Click on Any of the games downloaded from the eShop
  3. Click on Nintendo Submission Package (NSP) dump
  4. Click on Dump base application (if updates are installed)
  5. Click on Start NSP dump process
  6. See error

Screenshots
Will post in a few minutes.

Please complete the following information:

  • HOS 9.1.0
  • Atmosphere CFW
  • Atmosphere 10.1
  • Hekate 5.1.1 + NYX 0.8.4
  • NXDumpTool version: 1.1.8
  • Title override
  • SD content
  • SD card specs: Samsung EVO 128 GB

Additional context

ETA shows 19H erroneously

It seems as though the hour field in the remaining time is hard coded to be 19.

Gamecards used: JUST DANCE® 2019, The Legend of Zelda Breath of the Wild, V-Rally 4
SD card: SanDisk Ultra 400GB microSDXC UHS-I
gcdumptool version: 1.0.8
CFW: AtlasNX Kosmos
Switch firmware: 7.0.1

2019061319571900-DB1426D1DFD034027CECDE9C2DD914B8
2019061320045000-DB1426D1DFD034027CECDE9C2DD914B8
2019061320143100-DB1426D1DFD034027CECDE9C2DD914B8
2019061320160300-DB1426D1DFD034027CECDE9C2DD914B8

Set the archive bit for split XCI dumps

Instead of dumping to name.xc0, name.xc1, etc., it could be dumped to name.xci/00, name.xci/01 etc, where name.xci is a folder. You could then set the archive bit on name.xci using Result fsdevSetArchiveBit(const char *path), which would make HOS treat name.xci as a file and not as a folder. This could be done for dumping NSPs as well

ncmContentStorageReadContentIdFile() fails with error 0x00017c05 under certain FW versions (gamecard only).

Affects NSP/ExeFS/RomFS dumping. The user who reported this problem has a Switch console on 3.0.0. This seems to only affect gamecard NCA content retrieval.

Switchbrew states that this error occurs because the "gamecard is not initialized" (which, to be honest, got me perplexed).

I already tried a little bit of trickery, like reading a small data chunk from the gamecard using a IStorage instance, but nothing I came up with worked.

Fixing this without a proper correction would require rewriting NSP/ExeFS/RomFS dumping procedures to also work with a raw gamecard storage interface.

Splits data.arc into multiple files on exfat

When I dump the romfs from Smash Ultimate it splits it into multiple files even though I have an exFat sd card and plenty of space. Also I can't use a split data.arc file for smash ultimate modding so it makes the data.arc file unusable.

Stack memory exhaustion while dumping RomFS content from titles with a very high file entry count.

I was interested in this tool as it looks like it could be a good replacement to guiding users through the tedious process of hactool.

When dumping from a BOTW (NA v0.0.0 cart) + Update (1.6.0) it processes a large chunk of Actor/Pack folder (4,847 actorpacks of the 7,203)
The last file processed seems to be Npc_oasis009.bactorpack the file is not correctly dumped and that is when it appears to crash.

here's an atmosphere crash report if that'd be helpful.
01565712611_010000000000100d.log

it seems to be very consistent. If running from a game homebrew the Nintendo HOS handles it fairly well and closes the application. However, if launched from the gallery HOS crashes outright (resulting in the crash log above)

Let me know if there's anything else I could provide that'd help out.
Extra Info: SanDisk 64gb [10mb/s] SDXC formated in 2 32gb fat32 partitions

Can't dump games from SD/eMMC

Describe the bug
Can't dump installed games. prod.keys exists and is not empty but I get an error trying to dump the games: "loadExternalKeys: unable to parse necessary keys from 'sdmc:/switch/prod.keys'! (keys file empty?)"

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Dump installed SD card / eMMC content'
  2. Click on a game
  3. Click dump
  4. Click start
  5. See error

  • Horizon OS (Switch FW) version: 9.1.0
  • CFW: Atmosphere
  • CFW version: 10.1
  • Atmosphère launch method (if applicable): fusee-primary
  • NXDumpTool version: 1.1.8
  • Homebrew launch method: title override and Album applet
  • Source storage used with the application (if applicable): SD/eMMC
  • SD card specs: Samsung EVO Select 256 GB

Compatibility with USB mass storage devices.

Thanks for this great tool! I‘m looking forward the batch-dumping. :)
Sadly my sd-card is really full. Is it possible to select a HDD as the destination for the dumps? I think this would be the best for backups. :)

Unable to retrieve the game card Title ID!

The error mentions being above the cartridge's FW, but my system is on 5.1.0 so these 2.1 and 3.1 carts shouldn't be erroring.

Is network connectivity necessary to download the XML db?

Homebrew crashes when verifying a XCI dump with missing node data in NSWReleases.xml.

Using version v1.0.5
Switch Firmware is the latest availble
SD Card: fat32 (So i use the split option when dumping
I've tried dumping the game twice now (restarting the deuce the first time to try and rule any random thing out), and the software would crash around the latter half of the dumping (Cant get specifics as I am not paying attention to the device while it dumps) process.

Logs attached are all that I could find in relation to me dumping the game.
2-dump-logs.zip

Note: I am on the latest switch version, which at the time of writing is 7.0.1 and I am using Atmosphere version 0.8.6

Edit: This is also happening for Super Mario Bros U Deluxe

Suggestion: More accurate dumps (retrieve comms keydata sector from cartridge)

Here you (@DarkMatterCore) suggested that the dumps made with this tool aren't 1:1 - they are partially decrypted and are probably missing "ECC data".
Would it be feasible to dump the carts encrypted - and would the resultant ROM dump be decryptable?
Would it also be feasible to dump the "padding" properly (what you think is probably "ECC data") - as I understand it, this data is dumped as "FF" bytes, but this is not an accurate reproduction of the data on the ROM chip.

Logo partition FS data parsing.

The current method of mounting HFS0 partitions to view/extract data from them doesn't work with the logo partition from type 0x02 gamecards.

There's supposedly a "MountLogo" IPC call available somewhere, but I still have to gather info about it.

If everything else fails, we can manually parse the filelist from the HFS0 header and display that.

ES savefile processing crashes under 10.0.0.

Describe the bug
If I try to dump update v196608 (0.0.3.0) for the Amnesia: Collection as an NSP, the interface hangs at “Retrieving information from encrypted NCA content files...” And then NXDumpTool crashes. Sometimes Atmosphere crashes.

Edit: I should preface by saying that this is regarding a genuine eShop copy of the game.

To Reproduce
Steps to reproduce the behavior:

  1. Start NXDumpTool 1.1.9 (either title override or applet mode)
  2. Dump installed SD card / eMMC content
  3. Choose Amnesia: Collection
  4. NSP Dump
  5. Dump installed update NSP
  6. Start NSP dump process

Please complete the following information:

  • Horizon OS (Switch FW) version: 10.0.0
  • CFW: Atmosphère
  • CFW version: 0.11.1
  • Atmosphère launch method (if applicable): Hekate v5.1.4
  • NXDumpTool version: 1.1.9
  • Homebrew launch method: Tried under both title override and applet mode methods.
  • Source storage used with the application (if applicable): SD card/eMMC
  • SD card specs: Sandisk Ultra A1 400 GB

Additional context
I think other title updates are ripping correctly. I’ll add further examples if I come across them.

Multigame cart metadata handling.

As of v1.0.7, gcdumptool is only able to retrieve the metadata for the first regular application entry from any gamecard.

If a multigame cart is inserted (like Wheel of Fortune + Jeopardy! and other physical releases), there'll be missing information in the main menu. Also, this could prevent a full XCI dump from being properly verified against the XML database if the Title ID from any of the other application entries is being used on it.

All dumping operations should work fine, nonetheless.

Output part size used when splitting big files exceeds the max part size used by HOS in directories with the archive bit set.

Through tons of trouble shooting I have determined what seems like an issue with how your tool splits the data.arc file when its dumped. Using the latest version dumping the romfs with an update and then moving,renaming, and then archiving in a folder of the same name so it can be used on a fat32 sd card for modding does not work. However if you conjoin the parts and then re-split them using splitNSP and do the same preparation steps, it works. The only difference thus far I can see between the files when they are split is there size. Here you can see the splitnsp one on the left and the original split ones from your tool on the right.

Filesizecamparison

When compared using HxD it noted that while the files were identical the file sizes were different.

hexcomparison

While I don't get how they can be identical if they are different sizes I have one last test to verify if its just size which is to use 7zip to split the files at using identical sizes that splitnsp uses to see if it really is just file size, but HxD seems to make that the case.

Suggestion: Use distinct file names for XCI dumps with/without cert and NSP dumps with/without ticket or changed/unchanged RSA sig.

Hello,

I want to suggest a small change to functionality that would help a lot with file organization. As someone who does multiple dumps with the different settings in the app, I think having different file names for different XCI and NSP dumps would help a lot.

For example: Mario Kart 8 Deluxe v327680 (0100152000022000) (with Cert).xci
Mario Kart 8 Deluxe v327680 (0100152000022800) (UPD, unchanged RSA sig, with Ticket).nsp

Titlekey decryption failure with installed CDNSP dump.

Describe the bug
Invalid magic word for Program NCA section #0 PSF0 partition! Wrong KAEK ? (0xE2603D03)

Screenshots
2019120817592900

Please complete the following information:

  • Horizon OS (Switch FW) version: 9.1.0 emuNAND
  • CFW: SX OS
  • CFW version: 2.9.3
  • NXDumpTool version: 1.1.8
  • Homebrew launch methods: title override & Album applet
  • Source storage used with the application (if applicable): SD/eMMC
  • SD card specs: SanDisk Ultra microSDXC UHS-I 400 GB

Additional context
I wanted to dump a specific game for future preservation purposes (Earthworms).
When I launch the dumping process, a message error appears.
I've redumped my personal prod.keys with the last LockPick_RCM for FW 9.1.0 and verified all the values.
No problem with any other games to dump, just that specific one.

Update ticket retrieval from Secure HFS0 partition fails during NSP creation.

Describe the bug
While trying to dump a bundled update (possibly DLC as well, but I can't remember/reproduce that currently), met with the error "invalid parameters to retrieve file from HFS0 partition!"

To Reproduce

  1. NSP Dump -> Dump bundled update NSP -> all options 'Yes' -> Start NSP dump process
  2. Examples of gamecards that present the issue: Sonic Mania Plus, Wasteland 2 Director's Cut, Terraria, Wargroove Deluxe Edition, Battle Chef Brigade Deluxe, and Hollow Knight (most recent copy from Fan Gamer with all DLC's on the cart.)

Please complete the following information:

  • Horizon OS (Switch FW) version: 9.0.1
  • CFW: Atmosphère
  • CFW version: 0.9.4
  • Atmosphère launch method: Hekate
  • NXDumpTool version: 1.1.7
  • Homebrew launch method: title override
  • Source storage used with the application (if applicable): gamecard
  • SD card specs: Sandisk 400 GB micro SD

Additional context

Note: Installed NSP updates dump just fine. If downloaded from the eShop, the update will dump just fine from the orphan updates/DLC submenu. If downloaded from (elsewhere) and installed via Goldleaf, the update will dump just fine from the orphan updates/DLC submenu. But if the gamecard contains the latest update (like Sonic Mania Plus, Wargroove Deluxe Edition, and Hollow Knight, etc.) there is no way to trigger the eShop to download the update separately. So no current workaround has been discovered by myself, other than sourcing the updates from elsewhere and installing via Goldleaf, which will then produce a dump-able orphan update.

Batch dumping of titles

It would be great to have an option to batch-dump all titles on the SD/eMMC. Maybe with filter options (only SD, only eMMC, only Base, only DLC, only Updates)? With an option to skip or override existing titles.

Currently dumping all the contents it pretty annoying because you have to dump them individually. (+ there is no indication of which titles where already dumped)

ES certificate retrieval procedure fails if there's no personalized ticket certificate.

Describe the bug
I get this "Unable to find FS index from key" error whenever I try to dump my already installed games.
It only happens on 1.1.7. Version 1.1.6 seems to work fine. The procedure isn't finished yet, but it's at 3/108 at the moment.

To Reproduce
Steps to reproduce the behavior:

  1. Dump SD card / eMMC (NANDUSER) content
  2. Press X to enter batch mode
  3. Start batch dump process (leave everything on default)

Screenshots
2019112415035600-3C66B776DB1AA06323037049FACD96D3

Please complete the following information:

  • Horizon OS (Switch FW) version: 9.0.0
  • CFW: Atmosphère
  • CFW version: I'm not sure, but it's probably 0.9.4
  • Atmosphère launch method (if applicable): Hekate
  • NXDumpTool version: 1.1.7
  • Homebrew launch method: Title override
  • Source storage used with the application (if applicable): SD
  • SD card specs: Alfawise 256GB

Additional context
Here's my prod.keys file that I dumped today with Lockpick_RCM 1.7.1. I had to put a .txt at the end, otherwise GitHub wouldn't let me upload it.

Unable to generate output dump name for orphan content when no base applications are installed.

Describe the bug
I have a designated Switch as my “ripping” Switch; its only current purpose is to rip gamecards, updates, and DLC. So not (currently) for playing and not for installing games onto.

Cannot dump updates/DLC.

On 9.0.1, AMS 0.9.4, nxdumptool 1.1.7 - run under Applet mode and run under Title mode.

To Reproduce

  1. Have no games installed to NAND or SD card - only updates and DLC.

  2. Open nxdumptool to dump updates/DLC.

  3. Select “Dump SD card / eMMC content”

  4. Press “Y” for orphaned updates/DLC.

  5. Try to dump any updates/DLC - met with “unable to generate output dump name!"

Work-around

  1. Install any game (possibly any application?) to NAND or SD card.

  2. Return to step 3 in “to reproduce”.

  3. Installed title should show up under “Dump SD card / eMMC content”.

  4. Press “Y” for orphaned updates/DLC.

  5. Updates/DLC should dump appropriately now.

Please complete the following information:

  • Horizon OS (Switch FW) version: 9.0.1
  • CFW: Atmosphère
  • CFW version: 0.9.4
  • Atmosphère launch method (if applicable): Hekate
  • NXDumpTool version: 1.1.7
  • Homebrew launch method: [e.g. title override / applet mode]: Both

Please wait... stuck!

When i launch the app to dump a game, i insert a game (like always), but the "Please wait..." message lasts forever. i have to push the HOME button to exit.

Compatibility with PegaSwitch on FW < 4.0.0.

Since CFWs (Hekate, SX OS) provide full permissions under FW >= 4.0.0, the application works fine while using them. However, lower firmware versions are also compatible with PegaSwitch, which is launched at runtime once the system has already booted and thus, doesn't offer the same access permissions.

There's a dumpXCI.js PegaSwitch script made by @AcK77 that works by performing a privilege escalation procedure to gain access to FS services. I have tried to port that code to libnx in order to make the application able to perform such procedure as well, but it hasn't worked for me.

Any help/hints on this matter would be greatly appreciated.

Indicator if dumped version of the title already exist on the SD card.

Similar to issue #23 and maybe #22 . It would be great to have some kind of indication of the list of titles on the SD/eMMC to show the user it already has been dumped (=> a file with the target filename exists on the sd card).

Context: Currently I am trying to dump all updates from my consoleand it's pretty hard to keep up with the updates I've already dumped.

Move nxdumptool sd folder?

I feel like it would be more consistent with the rest of homebrew to move the nxdumptool folder from the root of the SD card into switch/. (Mostly just my OCD though :P )

Padding?

Does this padding exist on the ROM chip, or is it just added by this program?
If the latter, could there be an option for dumping the ROM without the padding?

Dump from SD: Games missing from SysNAND

Hey guys,

I have SysNAND and EmuNAND.
On EmuNAND I have the CFW (SX OS) with nxdumptool.

When I choose to "dump installed SD card / eMMC content" I only get the games I installed on emuNAND, but I want to dump a game update of graveyard keeper, which I bought in the eshop on sysNAND.

So I want to copy the update from sysNAND to emuNAND. Is this possible with nxdumptool?

Thanks in advance and best regards
Nick

RomFS block collision check code: edge case not being properly handled.

I'm trying to dump some games & updates from a 8.1.0 EUR Switch console - for backup and future preservation researches.

Everything went fine on all the games apart for 3 of them.

  • Spice & Wolf VR (0100C9B00EAEE000)
  • Geki J Pachisuro Hana Hana Matsuri! TOP5 Seizoroi SP / 激Jパチスロ ハナハナ祭り!TOP5勢ぞろいSP (0100FB500D8F8000)
  • Soulslayer (010088E00EBB6000)

They can't be backup'ed with NXDumpTool 1.1.5. and the program throws an error when I try to create an NSP file.
1

RomFS an ExeFS can be dumped for the three of them.
3

Tried to dump these problematic games and updates with SX Installer 1.52.
I could extract the three mentioned games + updates and verified them.

Wolf

Seems to be a bug inside NXDumpTool that I want to report and to be checked.

Dump speeds slow down to nothing

Tried with latest release with each second it loses 1mibps in speed. Went from start of 10mibps down to 0 before my dump ever completed.

Game card launch error after using the application.

This is a known bug and it's related to fsp-srv. The error displayed by Horizon is not a kernel panic and doesn't get logged in the error history. It doesn't force the user to reboot the console.

Just reinserting the game card seems to do trick. But an alternate solution would be preferrable.

Please Wait error flash

nxdumptool: 1.1.6
switch: 9.0.1
hekate: 5.0.2
sd card: Samsung 128GB 100MB/s (U3) MicroSDXC Evo Select

Using the tool on BotW cartridge it shows "Please Wait" for a few seconds and then flashes an error and goes back to please wait. I saw something about sd card but could make out the full error.

Sorry for the blurriness. I had to take a video with my phone, dump that into a video editing software, step through frame by frame and take a screenshot of that lol

image

Managed to get another capture
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.