gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > GBAMP DevLauncher

#109308 - 0xtob - Fri Nov 17, 2006 3:18 am

Hi!

I've had this idea for a while, now I finally implemented it. This is a tool with which you can quickly change the boot application of your GBAMP. Holding B while booting brings up a menu in which you can select the application that is launched on boot. I find this useful for switching between wifi loaders and launchers/media players.

http://tobw.net/ds/devlauncher.zip

Bye!
Tob

#109316 - tepples - Fri Nov 17, 2006 4:36 am

Good job so far! It will make musical CF cards (or Wi-Fi booting) much more bearable. Now here's the constructive criticism:

0xtob wrote:
Holding B while booting

Is there a reason that it was B? Normally the firmware uses B to skip booting the DS card when both a DS card and a GBA card are present.

+Control Pad does nothing.

Double-tapping a name does nothing. A lot of licensed games, as well as DSOrganize, use tap to select (highlight), tap again to choose (use default action).

There are scrolling artifacts if any name at the bottom of a scrolling list has a descender (e.g. "dsftp.nds", "dsorganize gray.nds").

This part of the manual is confusing:
Quote:
It does not work on my M3/SuperCard/G6/DS-X/EZ4/Flashcart!

Read the name of the program out loud :-)

Isn't the M3 branded as a GBA Movie Player v3?

Would it be hard to write a message like the following to one screen while it boots?
Quote:
loading moonshell.nds...
(press b button to cancel)


Have you used nm -n arm9.elf and nm -n arm7.elf to investigate why the program takes 150 KB? I took a brief look at it in a hex editor, and I see a few zeroed out areas as well as symbol names of C++ exception handlers. In a tile editor, I saw the default libnds console font (which doesn't appear to be used).
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#109321 - Jeremysr - Fri Nov 17, 2006 5:57 am

Very nice program, I find it very useful. Thanks! :D

#109375 - pas - Fri Nov 17, 2006 8:09 pm

Yep very useful little proggy (which is in the root of my CF now ^^) I like to ask you something:

Could you pleas make the Control pad able to select and the A Button to chose ?

Way to go !

#110837 - 0xtob - Sat Dec 02, 2006 2:03 am

Hi again! Thanks for all the constructive criticism, tepples! I threw together this program in about an hour, so I didn't care about the details at the initial release.
tepples wrote:
Is there a reason that it was B? Normally the firmware uses B to skip booting the DS card when both a DS card and a GBA card are present.

I don't know, but when I first had the idea of this program I thought: "You must hold B to enter the menu. It cannot be anything else." But since B is already taken, I have completely re-thought the key idea of the program and changed the button to Y :-)
tepples wrote:
+Control Pad does nothing.

It does now.
tepples wrote:
Double-tapping a name does nothing. A lot of licensed games, as well as DSOrganize, use tap to select (highlight), tap again to choose (use default action).

Implemented.
tepples wrote:
There are scrolling artifacts if any name at the bottom of a scrolling list has a descender (e.g. "dsftp.nds", "dsorganize gray.nds").

Yes, and there's terrible flickering when scrolling. You will have to live with this ugliness for now :-)
tepples wrote:
Isn't the M3 branded as a GBA Movie Player v3?

You're right. Made that clear.
tepples wrote:
Would it be hard to write a message like the following to one screen while it boots?
Quote:

loading moonshell.nds...
(press b button to cancel)

I added a message. It's displayed for 30 VBlanks, so boot time is increased a little.
tepples wrote:
Have you used nm -n arm9.elf and nm -n arm7.elf to investigate why the program takes 150 KB?

That's quite an interesting command, didn't know about it before. The file size is mostly due to my GUI toolkit, which is from my early days of DS coding, where I still thought using STL would be a good idea (which it is on platforms where size doesn't matter). I thought the debug symbols were stripped by devkitPro's linker scripts. Removing "-g" from the Makefiles did not have any effect on the file size. Anyway, I saved a few KB by removing all drivers except for the GBAMP one from gba_nds_fat.

The updated version is available from the same place, which is here.