#166538 - Emmanuel - Mon Feb 09, 2009 4:02 pm
Which lines and where do I add them to embed EFS and generate a ds.gba along with the .nds at compilation?
I'm using the Combined template...
(or embedding with NitroFS... even better)
BTW, Why should I use NitroFS over EFS?
Where can I get NitroFS if it's better than EFS? How is it used?
Last edited by Emmanuel on Tue Feb 10, 2009 2:53 pm; edited 1 time in total
#166545 - kusma - Mon Feb 09, 2009 5:21 pm
NitroFS isn't really "better" than EFS, it's a bit more light-weight and focused IMO. While EFS supports writing files, NitroFS does not. There might also be some performance differences, but that'd be outside of my knowledge.
#166567 - Echo49 - Mon Feb 09, 2009 9:33 pm
I don't know much about makefiles, but I use the following setup (I associate .nds with no$gba):
Makefile (added to the end):
Code: |
emu:
ndstool -c $(TARGET).nds -7 $(TARGET).arm7 -9 $(TARGET).arm9 -d nitro |
Batch file:
Code: |
make
make emu
start [name].nds |
#166568 - cory1492 - Mon Feb 09, 2009 9:42 pm
In the combined makefile (the root one, not one of the ones in the arm dirs) look for a bit like this:
Code: |
#---------------------------------------------------------------------------------
$(TARGET).nds : $(TARGET).arm7 $(TARGET).arm9
ndstool -c $(TARGET).nds -7 $(TARGET).arm7 -9 $(TARGET).arm9 |
Which is what you'd modify. As Echo49 mentions above, if your files are going to be used by NitroFS you can just add the "-d dirname" bit to the end of the ndstool line. For EFS I'm not so sure, though it appears it uses exactly the same method for appending (ndstool's -d option) so something along these lines:
Code: |
#---------------------------------------------------------------------------------
$(TARGET).nds : $(TARGET).arm7 $(TARGET).arm9
ndstool -c $(TARGET).nds -7 $(TARGET).arm7 -9 $(TARGET).arm9 -d dirname
efs $(TARGET).nds |
though efs.exe itself will need to be somewhere on the paths that the makefile is aware of.
#166577 - Echo49 - Tue Feb 10, 2009 6:32 am
Btw, the reason I use a separate command for adding the directory is because it allows me to use just the "make" command to compile for DS, since I only use NitroFS when testing on an emulator, whereas I read straight from fat when testing on hardware.
#166582 - Emmanuel - Tue Feb 10, 2009 2:53 pm
Thanks, it works all right