ROM Hack How to edit DS files in Linux

A-Humane-Dragon

New Member
OP
Newbie
Joined
Jul 30, 2022
Messages
1
Trophies
0
Age
16
Location
Victoria
XP
18
Country
Australia
I have a Linux operating system (Raspberry Pi OS to be exact) and all the DS rippers I can find are for Windows software.

At the moment I only have access to a Linux system (a Raspberry Pi 4 to be exact).

What software (compatible with ARM64) can I use to rip open and get the code/textures/audio etc and where/how can I get them?

Thanks :)
 
Last edited by A-Humane-Dragon,

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,348
Country
United Kingdom
Linux and raspberry pi are not necessarily the same thing for these purposes. For one thing it eliminates Wine and co from the running, not that I would particularly suggest relying on them for this sort of thing.

There is a version of ndstool available for Linux, I use it all the time actually to the point I have it in my quick links to folders, though the compiled versions you will find are for X86/X64 rather than ARM. You probably could get it done though as it is open source at some level (though devkitpro has closed up some stuff so might be harder to find there, I believe there were some ports to other languages).
You could always go manual as well
http://problemkaputt.de/gbatek.htm#dscartridgenitroromandnitroarcfilesystems

Emulators are available but tend to be more limited as far as debugging options (though I believe the recent new version of desmume has some abilities on this front, or at least a better GDB option).

Tinke was made in c#/.net which means you could generally slap mono hard enough to get it working and that makes a reasonable option if searching for a replacement for crystaltile2 (granted tinke is more of a file approach where CT2 is more of a general hex/disassembler/tile viewer/text viewer that happens to be file aware which never quite sat that nice with me).
They also generally represent the best options for tile editors, though I am seeing https://github.com/Garhoogin/NitroPaint which might bear playing with and https://github.com/puggsoy/tiledggd-pe- is mostly C# so again mono might do something.
Most older editors will not do GBA8bpp mode which the DS used extensively, much less anything with nice alpha options or arrangements like half the 3d textures were.

GIMP has some plugins that will import things from known formats ( https://www.romhacking.net/documents/[469]nds_formats.htm for the formats, forgot the name of the plugin though and that was several installs ago which says how much I liked using it) but I don't think it can be persuaded to be a general tile editor and I have no idea what goes for the ARM side of things there right now either. There is a bit more for Susie plugin supporting programs (Susie being rather popular in Japanese graphics circles) https://gbatemp.net/threads/susie-p...nitrosdk-images-and-nitro-rom-file-sy.162863/ is a bit old but might be a start.

Hex editors are for the most part hex editors (sadly bless has gone downhill so I go for Ghex these days). None quite stack up to the Hex workshop or 010 editor for paid Windows or HxD + XVI32 + Tiny Hexer + Hexplorer combo for freeware but hey 99% of things are done by fiddling with the window size of the hex editor and find/goto command. https://www.romhacking.net/utilities/513/.

The much adored by me monkey moore relative search tool https://www.romhacking.net/utilities/513/ does not have an equivalent on Linux, much less ARM. Relative search is also mostly only used by ROM hackers and maybe some cryptographers so eh.

There are a few python tools but not many, even fewer options in Java (I believe Tahaxan was that) and I am not sure I can even lay hands on them right now.

https://github.com/Barubary/dsdecmp is a reasonable compression tool (though much prefer https://www.romhacking.net/utilities/826/ ) and at least the decompression aspect was made in Java.

I am not aware of any sound based tools (vgmtrans, vgmtoolbox and such) that work for the Linux side of things. Audacity's raw import and wave exports can do some things (most DS formats are either SDAT, something well known in general, something well known in games or something custom that plays to the DS hardware which happens to support select PCM and ADPCM types) and the playback plugins might be available as well.

That said ROM hacking is largely a Windows only affair. Other than some more exotic aspects of emulation it does not need a powerful machine at all -- emulate a windows XP virtual machine, find an ancient laptop... that will be far far far easier in the long run.

Feel free to poke around on https://www.romhacking.net/utilities/ as you might find some nice java or python or other interpreted software that could be persuaded to run.

There are some web based disassemblers you could use, similar story for patchers and web based hex editors are very old hat. Some were talking about tile editors being made accordingly but I did not see the final results -- some level editors for things would serve as more than proof of concept though.
 
  • Like
Reactions: Rapercat03

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: https://www.youtube.com/watch?v=dZbUuSmFgMo