#145851 - tondopie - Fri Nov 23, 2007 9:37 pm
Description
bootlib is a library that aids in the booting of .nds files in programs.
GBAMP Internal loader = Works
SuperCard Internal Loader = Works
Chishm's Loader = Workis
M3 Internal Loader = Works
EZ-Flash 4 Loader = Works
Feedback is much apprciated!
Compatability
* SuperCard Slot-2: Works
* M3 Slot-2: Works
* EZ-Flash IV: Works
* EZ-Flash V: Works (Unconfirmed)
* SuperCard DS One: Failed (Unconfirmed)
* R4/M3 Simply: Failed
* MMD: Works
* GBAMP: Works
* All others: Probably Works
Features
* Cart Detection
* Automatic loader selection
* Works in libnds and PAlib.
PAlib solution: http://palib.info/forum/modules/newbb/viewtopic.php?topic_id=3889
Copyrights
bootlib 1.3b
Copyright 2007 Maxwell Goodman (TeenDev, max482wert, tondopie, TheOnlyEnglishRose)
load.bin
Copyright 2007 Michael Chisholm (chishm)
License
Licensed under GNU General Public License version two.
Requirements
* DevKitARM r20/r21
* libfat
* libnds or PAlib
Usage
* Refer to the included example for your prefered library (libnds or PAlib).
* Include the bootlib directory in your project root (for the example project)
ARM9:
void bootnds(filename);
ARM7:
void bootndsCheck();
* Just call the above functions for each processor. The library features automatic cart detection and calls a different loader for each flashcart.
* Add the *.bin into your arm9 "data" directory.
Contact
* Email: teendev@gmail.com
* AIM: max482wert
* MSN: max@tondopro.com
THANKS
* Lick (Looking at the rebootlib source helped me make a structure for this library)
* Chishm (For the Generic NDS Loader as well as the GBAMP one too. This would not be possible without libfat either)
* Moonlight (For the SuperCard Loader)
* DragonMinded (For the SuperCard Loader)
Changelog:
1.3b:
Changed to GPLv2
Fixed EZ4 Loader
1.2:
* Fixed EZ4 and M3 Loaders.
* Fixed test application so it will not crash in the M3 OS.
* Added a variable to detect bootlib version
* Fixed a little arm7 compiling warning.
1.1:
* Added EZ4 Detection and Loader *Cleaned UP the Code
1.0:
* Added M3 Loader * Fixed SuperCard Loader
0.7
Downloads:
bootlib 1.3b
bootlib 1.2
bootlib 1.1
bootlib 1.0
bootlib 0.7
Last edited by tondopie on Sun Dec 16, 2007 5:30 am; edited 19 times in total
#145852 - Lick - Fri Nov 23, 2007 9:50 pm
Download link is dead. And by the way, there's a bootnds function in rebootlib, although it only uses Chishm's loader.
Hope to use this in my boot menu (yes, another one of those coming!)
_________________
http://licklick.wordpress.com
#145863 - tondopie - Sat Nov 24, 2007 1:48 am
I might have to rename the function. Also I fixed the download link.
#145903 - tondopie - Sun Nov 25, 2007 5:13 am
I added the EZ4 loader and cleaned it up a bit so its not so messy...
Unfortunetly, cards like the R4/M3S and the SCDSOne will not be able to be booted with this library, at least until I add MightyMax's exec_stub with custom SCONE and R4/M3S stubs.
Link is added above ^^
#146101 - tondopie - Thu Nov 29, 2007 12:34 am
Sorry for the mass DBL posting but I just need to post updates.
I fixed the M3 and EZ4 loaders, so they should work now. (Thanks cory1492)
#146111 - tepples - Thu Nov 29, 2007 1:25 am
Here we go again, another homemade license, and now I have to go spouting off my DISCLAIMER: not legal advice interpretation of how some of its terms might play out in practice.
Quote: |
1. Give Credit to those credited here, including myself. |
Reasonable enough. Many free software licenses include a requirement that copyright notices be preserved in some form.
Quote: |
2. Do not use for illegal purposes (e.g. Loading illegal ROMs, etc.) |
Illegal in whose jurisdiction? Yours, or that of the developer of the work that uses the library?
Quote: |
3. Do not modify it and reuse and/or redistribute without my approval and knowledge. |
Just linking the library into a program is modifying/reusing/redistributing. Did you intend this to mean that you want veto power over all publicly distributed programs linked to the library?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#146117 - mufunyo - Thu Nov 29, 2007 2:46 am
I'll tell you right now that I don't like the holier-than-thou attitude that your licence has, and that it's probably not going to stop people who are already doing illegal things from using it. What it will stop, is flash card makers (who, evidenced by the source code of the AceKard RPG firmware, apparently use homebrew tools like libnds) from implementing universal homebrew loaders for flash card firmware. And that just because they also happen to have ROM dump loaders in there to boost sales (reality check: homebrewing alone is not enough to support a flash card financially). I for one would applaud if for instance the use of bootlib in, say, the R4 firmware to be able to run more homebrew without patching, or source modification. The R4 still has issues with a lot of homebrew. But your licence doesn't allow that. Please think of the consequences of "playing policeman". Leave enforcing of the law to the authorities, and leave suing to Nintendo. You only need to cover your own ass.
#146120 - tondopie - Thu Nov 29, 2007 3:16 am
ok I will change the license... GPLv2 sound good?
#146121 - chishm - Thu Nov 29, 2007 3:19 am
load.bin is distributed under GPL v2. It's a stand-alone binary, so the GPL shouldn't infect your library. If it does, I'll switch it to the LGPL. This just means you need to give people the source code to load.bin when they ask for it.
I don't want to add to your license woes, I'm just clearing this up before anyone else asks.
_________________
http://chishm.drunkencoders.com
http://dldi.drunkencoders.com
#146122 - tondopie - Thu Nov 29, 2007 3:24 am
I'll re-license it tomorrow
#146168 - HyperHacker - Fri Nov 30, 2007 12:12 am
tondopie wrote: |
ok I will change the license... GPLv2 sound good? |
That would be good, but a non-viral license would be even better.
_________________
I'm a PSP hacker now, but I still <3 DS.
#146173 - tondopie - Fri Nov 30, 2007 12:50 am
HyperHacker wrote: |
tondopie wrote: | ok I will change the license... GPLv2 sound good? | That would be good, but a non-viral license would be even better. |
non-viral?
#146176 - tepples - Fri Nov 30, 2007 2:32 am
"Copyleft", sometimes called "viral licensing", refers to copyright licenses that require programs linked with the library to be free software. Wikipedia can explain it better than I.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#146754 - tondopie - Sat Dec 08, 2007 7:14 pm
Okay, finally relicensed it under GPLv2...
#146760 - spinal_cord - Sat Dec 08, 2007 9:35 pm
Any ideas what wrong with it working on R4/M3S? do you think it will ever work on this card(s)?
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage
#146785 - tondopie - Sun Dec 09, 2007 2:21 am
What ever it is, it is the same reason DragonMinded created special exec_stubs for GBAMP, SCOne, and R4/M3S.
I will add support for SCDSOne and R4/M3S if I get the okay from DM to use his custom exec_stubs.
#146919 - GrizzlyAdams - Tue Dec 11, 2007 10:14 am
R4's dldi doesn't work on ARM7. I don't remember exactly why it doesn't work.
Feel free to use the vram loader from dschannels if it helps.
http://grizzly.thewaffleiron.net/downloads/exec_test.zip
#146950 - tondopie - Tue Dec 11, 2007 11:01 pm
I'll try it!
BTW, that exec_stub test you posted won't work on r21 so you know, so I'm not using it.
I'll try the DS CHannels way.
#147017 - cornaljoe - Thu Dec 13, 2007 6:25 am
I can confirm Bootlib 1.3 doesn't work on either the EZ5 or EZ4. This is tested with the included demo, your app, and my own project. On the EZ5 it displays now loading then black screens. On the EZ4 it freezes on Loading... Homebrew.nds
DSChannels is the only boot app that can boot on the EZ5. And DSO and DSChannels works on the EZ4. You just have to rename them to .nds
#147064 - tondopie - Thu Dec 13, 2007 11:14 pm
I forgot to lock the RAM in the EZ 4 loader, I am uploading a new version.
#149157 - cornaljoe - Wed Jan 16, 2008 1:51 am
Hey tondopie, thanks for the fix working perfectly now on the EZ4. I have a question concerning my project. My file browser uses DLDI and DLDS to access 2 FAT at the same time. DLDS is just a DLDI with a modified magic string to differentiate the two. You can view more info here: DLDI Topic.
Currently booting doesn't work for DLDS FAT. Is it possible to make it work? If so could you help me out on how to do so. Thanks for the help!
#149223 - tondopie - Wed Jan 16, 2008 10:58 pm
libfat uses 'fat:/' as default and that will be what evr the DLDI patch is applyed to.
use fat:/ or fat0:/ for default libfat DLDI patched card, and fat1:/ to force slot -1 and fat2:/ to force slot-2.
E.g.
Code: |
bootnds("fat2:/ndsfile.nds"); |
will force booting of that file on the Slot-2 card. Detect if it is a slot-1 card or a SLot-2 card and just use fat:1/ for Slot-1 and fat2:/ for slot-2
#149227 - cornaljoe - Thu Jan 17, 2008 12:22 am
tondopie wrote: |
libfat uses 'fat:/' as default and that will be what evr the DLDI patch is applyed to.
use fat:/ or fat0:/ for default libfat DLDI patched card, and fat1:/ to force slot -1 and fat2:/ to force slot-2.
E.g.
Code: | bootnds("fat2:/ndsfile.nds"); | will force booting of that file on the Slot-2 card. Detect if it is a slot-1 card or a SLot-2 card and just use fat:1/ for Slot-1 and fat2:/ for slot-2 |
Yes, but that only works for the DLDI FAT. When I use a DLDS patch for the same supported cart it doesn't boot.
#149232 - tondopie - Thu Jan 17, 2008 12:52 am
i dont know what to expect
#149269 - Lynx - Thu Jan 17, 2008 3:55 pm
Yeah.. GPL compatible bootlib!
_________________
NDS Homebrew Roms & Reviews
#151874 - HyperHacker - Thu Mar 06, 2008 7:55 am
Quote: |
====================
Usage:
====================
* Refer to the included example for your prefered library (libnds or PAlib). |
Sure, if it were included.
_________________
I'm a PSP hacker now, but I still <3 DS.
#151949 - john_rampton1 - Thu Mar 06, 2008 11:49 pm
You can get a version with the examples Here
#151955 - tondopie - Fri Mar 07, 2008 12:27 am
yeah sorry 1.3b was just kind of a fix for 1.3a and I was tired of zipping stuff together.