[TOOL] .nds NO-INTRO roms to DSiWARE

Discussion in 'NDS - Emulation and Homebrew' started by fwannmacher, Aug 7, 2018.

  1. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    Hello everyone,

    I have created a simple linux tool to convert .nds NO-INTRO roms to the DSiWARE format used by HiyaCFW. I did it because downloading the DSiWARE to my 3DS and copying it to my DSi was really boring :-P

    The usage is very simple:
    ./convert_to_dsiware.bash ".nds file name"

    For those who want to run this tool on Windows, just follow this instructions to setup bash in your system: https://www.lifewire.com/how-to-run-the-bash-command-line-in-windows-10-4072207

    The tool can be found in my Github https://github.com/fwannmacher/nds2dsiware

    For the roms... well you can search for NO-INTRO DSi DLC in the well known 3DS iso site.

    Enjoy!

    Windows version thanks to @redunka attached below.
     

    Attached Files:

    Last edited by fwannmacher, Nov 1, 2018
    Disco, DarthDub, H1B1Esquire and 4 others like this.
  2. Flame

    Flame Me > You

    Moderator
    15
    GBAtemp Patron
    Flame is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 15, 2008
    this is an awesome tool.

    very underrated imo.
     
    Memoir and fwannmacher like this.
  3. pandavova

    pandavova @pandavova FOLLOW ME ON TWITTER

    Member
    6
    Oct 27, 2015
    Germany
    Windows 10 Pro
    OMG!
    Thank you... Thats what i wanted! Now i need this for windows...
    (I would love if someone converts it for use with windows)
     
    hikarisilver likes this.
  4. Flame

    Flame Me > You

    Moderator
    15
    GBAtemp Patron
    Flame is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 15, 2008
    but im having a problem every time i copy to the content to my sd card and then put it in the DSi. the content just disappears.

    its like the dsi knows that ive copied something which i shouldnt have copied?


    @fwannmacher i think it cause it doesn't create the title.tmd
     
    Last edited by Flame, Aug 8, 2018
    MrMcTiller likes this.
  5. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    It should create the tmd. I'll check.

    But, maybe, you have to change the permissions of the maketmd binary.

    — Posts automatically merged - Please don't double post! —

    One thing I forgot to mention: a screen saying that the save is corrupt will appear in the first time the game is launched.
     
  6. redunka

    redunka GBAtemp Fan

    Member
    5
    Nov 26, 2014
    Russia
    Neat! :)
    Would it be possible to also generate a banner.sav for games that use it?
    By the way, you don't really have to make a fat12 image for saves, a zerofilled file of proper size should be enough.
     
  7. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    I tried doing it with a zero filled file and it hasn't worked for me.

    Could you give me the name of a game that needs the banner.sav?
     
  8. redunka

    redunka GBAtemp Fan

    Member
    5
    Nov 26, 2014
    Russia
    Brain Age Express Sudoku or Zenonia use banner.sav, some other games too.
    You may already know, the size of banner.sav is always 0x4000 and whether it's used or not is determined by bit2 of 0x1BF.
    This one
    The zerofilled file actually should've worked as long as the size is correct. :unsure:
    When the game gives you that error about corrup save, it means that it didn't recognize the save as correct either way.
    I remember that I was able to make correct fat12 images that games accepted without errors with WinImage, default settings, but cluster size had to be 512 bytes.
     
  9. Flame

    Flame Me > You

    Moderator
    15
    GBAtemp Patron
    Flame is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 15, 2008
    im using ubuntu 16.04

    that why i was having the problem missing some stuff
     
    Last edited by Flame, Aug 8, 2018
  10. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    So, it's working now?

    — Posts automatically merged - Please don't double post! —

    I'll take a look on banner.save and update the script ;-)
     
  11. Flame

    Flame Me > You

    Moderator
    15
    GBAtemp Patron
    Flame is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 15, 2008
    no my ubuntu is missing libcrypto.so.1.1
     
  12. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    You can build your own maketmd. That should work.
     
  13. redunka

    redunka GBAtemp Fan

    Member
    5
    Nov 26, 2014
    Russia
    What if you try this for creating save files?
    Code:
    mkfs.msdos -v -F 12 -s 1 -D 0 -r 224 public.sav
    Do games still complain that save is corrupt with this?

    P.S. There's actually another save type out there, private.sav, but I don't know if it'd be worth adding.
    It's used almost exclusively by system titles, the only non-system title that uses it is web browser, I think?
    Anyways, the size for it is stored in ROM right next to public.sav's size, at 0x23C.
     
    Last edited by redunka, Aug 8, 2018
    fwannmacher likes this.
  14. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    I get the save file size from the rom. The problem is the minimum file size that the mkfs accepts. And if I can remember it is 35KB. That way I have to truncate the file for small saves.

    Another thing is that the game usually creates a file inside the fat12 filesystem. So it will always alert the corruption because that file doesn't exist.
     
  15. redunka

    redunka GBAtemp Fan

    Member
    5
    Nov 26, 2014
    Russia
    Yeah, I understand about size, I mean using this command before truncating.
    When mkfs formats large file to fat12, it may set some values incorrect for that format.
    This example in my previous post sets sectors per cluster to 512, root directory entries to 224 and drive number to 0.
    I tested save file formatted with these parameters, and the game didn't give me usual corruption error.
    But I'd still like to confirm if it works for others too. :P
     
  16. Flame

    Flame Me > You

    Moderator
    15
    GBAtemp Patron
    Flame is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Jul 15, 2008
    im on holiday right now so my main setup is not with me. im using my chromebook which is running Ubuntu 16.04.

    but i can see the full potential of this project.

    thank you.
     
    Last edited by Flame, Aug 9, 2018
  17. andot

    andot Newbie

    Newcomer
    2
    Apr 11, 2017
    Switzerland
    The public.sav of "Shantae - Risky's Revenge" created by this tool can't work.
     
  18. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    I've have tried this exact game and it worked for me. I'll take another look.
     
  19. andot

    andot Newbie

    Newcomer
    2
    Apr 11, 2017
    Switzerland
    The game (Shantae - Risky's Revenge (Europe)) can be played, but the progress can't be saved.
     
    Last edited by andot, Aug 9, 2018
  20. fwannmacher
    OP

    fwannmacher Member

    Newcomer
    2
    Mar 23, 2016
    Brazil
    Fixed save creation. Shantae should work now (thanks @redunka)

    Also compiled a new maketmd with static libs.
     
    Last edited by fwannmacher, Aug 9, 2018
    redunka likes this.
Loading...