XCI-Cutter tool (Windows)

main.png


XCI-Cutter


Features:

- cuts off (trims) unused sectors
- optionally cuts in pieces (splits)
- batch processing


This tool reads the XCI-Header to determine the full cartridge-size and the actually used space.

By default, the tool checks if the sectors after the used space/gamedata are really unused (filled with FF).
It refuses to cut, if it finds any data in that area (this check can be bypassed by using "Fast Mode").

The tool can be used to restore these FF-sectors and expand XCI-files back to the full cartridge size.


@ChronoX_ compiled a list with actual datasizes over at:
https://wiki.gbatemp.net/wiki/XCI-Cutter


UPDATE 20.06.2018:
Trimmed and split games are now fully compatible with SX OS!

!!! Important Note: !!!
Dumps that were split with a version before v2.4.2,
have to be joined/uncut using that OLDER version.
And afterwards split again using the NEW version.
!!!


Download:
https://github.com/Destiny1984/XCI-Cutter/releases


Changelog:

v2.4.2:
- changed partsize to make split-dumps compatible with SX OS

v2.4.1:
- Bugfix release
fixed splitting which was broken in v2.4

v2.4:
- added "fast mode" to batch processing
(Direct trim of inputfiles / no safety checks)

v2.2:
Changes to batchprocessing:
- added recursive folder scanning (thanks to @RapidRaid aka getraid)
- add files and folders by Drag&Drop

v2.0:
- added batch processing with optional inputfile deletion

v1.5:
- fixed some exceptions
- implemented optional splitting

v1.0:
Initial Release
 
Last edited by MHDestination,

Joe88

[λ]
Global Moderator
Joined
Jan 6, 2008
Messages
12,736
Trophies
2
Age
36
XP
7,440
Country
United States
isnt it the same thing that any compression algorithm do? im pretty sure that putting it in 7z archive would give similar result
A backup loader wont run a 7z file, though I really dont know if they will load these files either
just have to wait and see
 
D

Deleted User

Guest
A backup loader wont run a 7z file, though I really dont know if they will load these files either
just have to wait and see
then... whats your point? it's only made for storing the files...

--------------------- MERGED ---------------------------

No it's not.

A compressed file would be even smaller, but you won't be able to
use an archive (zip/rar/7z ...) in a backuploader
you will probably not be able to use this im a backup loader too
 

Joe88

[λ]
Global Moderator
Joined
Jan 6, 2008
Messages
12,736
Trophies
2
Age
36
XP
7,440
Country
United States
then... whats your point? it's only made for storing the files...

--------------------- MERGED ---------------------------


you will probably not be able to use this im a backup loader too
to save space of the microsd card where you will play your xci backups on the switch, you can see the huge amount of space that was saved from thequickbrownfox's post
 
D

Deleted User

Guest
to save space of the microsd card where you will play your xci backups on the switch, you can see the huge amount of space that was saved from thequickbrownfox's post
...yes... exactly the reason why I always use 7z archieving
 

jfosheezy

Active Member
Newcomer
Joined
Feb 7, 2017
Messages
33
Trophies
0
Age
29
XP
273
Country
United States
Just opened and checked the files I had locally.

Unknown if working afterwards of course but here are some file names.

Lego.City.Undercover.USA.PROPER.NSW-BigBlueBox - 15,232.00MB -> 7,691.69MB

Cave.Story.plus.USA.PROPER.NSW-BigBlueBox - 1,904.00MB -> 519.59MB

Mario.plus.Rabbids.Kingdom.Battle.PROPER.NSW-BigBlueBox - 3808.00MB -> 2774.49MB

Pokken.Tournament.DX.PROPER.NSW-BigBlueBox - 3808.00MB -> 3708.13MB

Super.Bomberman.R.PROPER.NSW-BigBlueBox - 3808.00MB -> 2325.75MB

Kirby Star Allies - bbb-h-ah26a.xci - 3808.00MB -> 3324.01MB

Sonic Forces USA NSW-BigBlueBox - 7616.00MB -> 7078.05MB

The Elder Scrolls V Skyrim NSW-BigBlueBox - 15232.00MB -> 15032.16MB

Resident.Evil.Revelations.NSW-BigBlueBox - 15232.00MB -> 12714.82MB

I.Am.Setsuna.PROPER.NSW-BigBlueBox - 1904.00MB ->1720.79MB

DOOM.NSW-BigBlueBox - 15,232.00MB -> 14,363.42MB

GGUN2BY3DSPARADISE - 3808.00MB -> 3604.16MB

Batman.The.Telltale.Series.NSW-BigBlueBox - 7616.00MB -> 6641.70MB

1.2.Switch.PROPER.NSW-BigBlueBox - 1904.00MB -> 1796.99MB

Rayman.Legends.Definitive.Edition.PROPER.NSW-BigBlueBox - 3808.00MB -> 3365.59MB

Dragon.Ball.Xenoverse.2.PROPER.NSW-BigBlueBox - 7616.00MB -> 6944.24MB

Disgaea.5.Complete.EUR.PROPER.NSW-BigBlueBox - 7616.00MB -> 6798.58MB

Xenoblade.Chronicles.2.NSW-BigBlueBox - 15232.00MB -> 13698.64MB

Snipperclips.Plus.Cut.it.Out.Together.NSW-BigBlueBox - 1904.00MB -> 1573.36MB

Monopoly.NSW-BigBlueBox - 3808.00MB -> 3333.05MB

Nintendo.Labo.ToyCon.02.Robot.Kit.NSW-BigBlueBox - 1904.00MB -> 1434.69MB

South.Park.The.Fractured.But.Whole.NSW-BigBlueBox - 15232.00MB -> 14860.39MB

FIFA.18.NSW-BigBlueBox - 15232.00MB -> 14005.60MB

NBA.2K18.NSW-BigBlueBox - 7616.00MB -> 7384.67MB

Total Before trim = 180,880MB (180.88GB)

Total after trim = 156694.56MB (156.69GB)

Saved = 24.19GB

Impressive. Really hope trimming will be supported
 
Last edited by jfosheezy,
D

Deleted User

Guest
This program trims the blank area of the cartridge dump, which is usually all 0xFF bytes and is not read by the system.

I see no reason why a trimmed dump shouldn't work on Switch.
sometimes systems check if the file is trimmed. I read somewhere that some ds games checked the empty places im the rom as a way to prevent piracy. not that it will help in the long run, but in the short-term it might not (i'd even say won't) work with backup loaders.
 

MHDestination

Well-Known Member
OP
Member
Joined
Sep 12, 2009
Messages
392
Trophies
0
Location
Under your bed
XP
888
Country
Germany
then... whats your point? it's only made for storing the files...

--------------------- MERGED ---------------------------


you will probably not be able to use this im a backup loader too

We don't know yet.
But the chance that it'll work is quite high.

The filestructure isn't changed at all.
The only possibility that these files don't work is if nintendo implemented an
function to check the actual modulesize.

But i'm quite sure that they just read the size by checking the header.
 
D

Deleted User

Guest
We don't know yet.
But the chance that it'll work is quite high.

The filestructure isn't changed at all.
The only possibility that these files don't work is if nintendo implemented an
function to check the actual modulesize.

But i'm quite sure that they just read the size by checking the header.
I wouldnt say that the chances are high. we will need to implement some algorithm that returns ff each time the game tries to acess unused space. it might be simple but its code that would need to run besides the game itself. again, some games on previous consoles used the unused space as intended behavior or even just checked if some adresses are ff. its not that nintendo made them. its extremely simple to implement that in-game...
 

GerbilSoft

Well-Known Member
Member
Joined
Mar 8, 2012
Messages
2,395
Trophies
2
Age
35
XP
4,269
Country
United States
I wouldnt say that the chances are high. we will need to implement some algorithm that returns ff each time the game tries to acess unused space. it might be simple but its code that would need to run besides the game itself. again, some games on previous consoles used the unused space as intended behavior or even just checked if some adresses are ff. its not that nintendo made them. its extremely simple to implement that in-game...
Assuming it's like 3DS (and it probably is, given the reuse of the 3DS OS): Games can't access cartridges on a sector-by-sector level. They can only request access by filename.

This is part of the reason why you need ARM9 homebrew to dump DS/3DS cartridges on 3DS. The ARM11 can't access the cartridge directly; it can only request files.
 

MHDestination

Well-Known Member
OP
Member
Joined
Sep 12, 2009
Messages
392
Trophies
0
Location
Under your bed
XP
888
Country
Germany
I wouldnt say that the chances are high. we will need to implement some algorithm that returns ff each time the game tries to acess unused space. it might be simple but its code that would need to run besides the game itself. again, some games on previous consoles used the unused space as intended behavior or even just checked if some adresses are ff. its not that nintendo made them. its extremely simple to implement that in-game...

Again: we don't know (yet) if such a check exists.

If it does: No problem. Just restore the removed sectors.

If not: Profit!

Doesn't hurt anyone


And by using a cfw / backuploader, it won't be hard to patch out such checks.
 
Last edited by MHDestination,
D

Deleted User

Guest
Assuming it's like 3DS (and it probably is, given the reuse of the 3DS OS): Games can't access cartridges on a sector-by-sector level. They can only request access by filename.

This is part of the reason why you need ARM9 homebrew to dump DS/3DS cartridges on 3DS. The ARM11 can't access the cartridge directly; it can only request files.
oh I didnt know that... that sounds reasonable. but then it means on the cart itself theres a pretty complex processor to handle all that..?
 

SirNapkin1334

Renound Aritst
Member
Joined
Aug 20, 2017
Messages
1,665
Trophies
1
XP
975
Country
United States
Just opened and checked the files I had locally.

Unknown if working afterwards of course but here are some file names.

[snip]

Total Before trim = 180,880MB (180.88GB)

Total after trim = 156694.56MB (156.69GB)

Saved = 24.19GB

Impressive. Really hope trimming will be supported
Maybe put those in a spoiler?
 

jakkal

Well-Known Member
Member
Joined
Apr 27, 2018
Messages
2,303
Trophies
1
Age
44
XP
3,982
Country
United States
i hope this works
i have over 400gb worth of switch games. trimming those down will save me a whole lot of space
 

Zumoly

GBATemp Analyst
Member
Joined
Apr 27, 2018
Messages
1,820
Trophies
0
Location
Yorosso
XP
3,142
Country
Mali
I don't get the blank data part!?
Why require 10 GB if the actual game data is 5 GB?
Anyway great tool! I just hope trimming and getting rid of the original won't be an issue later.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • SylverReZ @ SylverReZ:
    @Jayro, I don't see whats so special about the DS ML, its just a DS lite in a phat shell. At least the phat model had louder speakers, whereas the lite has a much better screen.
    +1
  • SylverReZ @ SylverReZ:
    They probably said "Hey, why not we combine the two together and make a 'new' DS to sell".
  • Veho @ Veho:
    It's a DS Lite in a slightly bigger DS Lite shell.
    +1
  • Veho @ Veho:
    It's not a Nintendo / iQue official product, it's a 3rd party custom.
    +1
  • Veho @ Veho:
    Nothing special about it other than it's more comfortable than the Lite
    for people with beefy hands.
    +1
  • Jayro @ Jayro:
    I have yaoi anime hands, very lorge but slender.
  • Jayro @ Jayro:
    I'm Slenderman.
  • Veho @ Veho:
    I have hands.
  • BakerMan @ BakerMan:
    imagine not having hands, cringe
    +1
  • AncientBoi @ AncientBoi:
    ESPECIALLY for things I do to myself :sad:.. :tpi::rofl2: Or others :shy::blush::evil:
    +1
  • The Real Jdbye @ The Real Jdbye:
    @SylverReZ if you could find a v5 DS ML you would have the best of both worlds since the v5 units had the same backlight brightness levels as the DS Lite unlockable with flashme
  • The Real Jdbye @ The Real Jdbye:
    but that's a long shot
  • The Real Jdbye @ The Real Jdbye:
    i think only the red mario kart edition phat was v5
  • BigOnYa @ BigOnYa:
    A woman with no arms and no legs was sitting on a beach. A man comes along and the woman says, "I've never been hugged before." So the man feels bad and hugs her. She says "Well i've also never been kissed before." So he gives her a kiss on the cheek. She says "Well I've also never been fucked before." So the man picks her up, and throws her in the ocean and says "Now you're fucked."
    +2
  • BakerMan @ BakerMan:
    lmao
  • BakerMan @ BakerMan:
    anyways, we need to re-normalize physical media

    if i didn't want my games to be permanent, then i'd rent them
    +1
  • BigOnYa @ BigOnYa:
    Agreed, that why I try to buy all my games on disc, Xbox anyways. Switch games (which I pirate tbh) don't matter much, I stay offline 24/7 anyways.
  • AncientBoi @ AncientBoi:
    I don't pirate them, I Use Them :mellow:. Like I do @BigOnYa 's couch :tpi::evil::rofl2:
    +1
  • cearp @ cearp:
    @BakerMan - you can still "own" digital media, arguably easier and better than physical since you can make copies and backups, as much as you like.

    The issue is DRM
  • cearp @ cearp:
    You can buy drm free games / music / ebooks, and if you keep backups of your data (like documents and family photos etc), then you shouldn't lose the game. but with a disk, your toddler could put it in the toaster and there goes your $60

    :rofl2:
  • cearp @ cearp:
    still, I agree physical media is nice to have. just pointing out the issue is drm
  • rqkaiju2 @ rqkaiju2:
    i like physical media because it actually feels like you own it. thats why i plan on burning music to cds
  • cearp @ cearp:
    It's nice to not have to have a lot of physical things though, saves space
    cearp @ cearp: It's nice to not have to have a lot of physical things though, saves space