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 Flash Equipment > Need for passkey/passme/...?

#104962 - KayH - Wed Oct 04, 2006 7:16 pm

Hello!

This is probably a really stupid question, sorry for that!

I read that I would need one of the different passthrough devices for the DS slot to run homebrew from the GBA slot. Recently I tried running an application designed for the GBA (prog.gba, located on an EZF Advance). And I was surprised that it works without one of the mentioned devices inside the DS slot.

Am I right that I only need these pieces, when I run programs designed for the DS specifically? That means the extension is one of the ds specific and I use both the ARM9 and ARM7 instruction sets?

Thanx in advance for your comment!

#104965 - sasq - Wed Oct 04, 2006 7:48 pm

Yes, if you run a GBA-rom your DS will start up in GBA-mode and it works just like it would on the old Gameboy Advance - it will start without needing to modify the hardware in anyway.

If you want to run an NDS-rom from a GBA-flashcart (staying in DS mode) you will need a pass-device in the DS-slot.

As soon as you are able to run NDS-code however, you can flash your BIOS with flashme - which removes the checks from your BIOS, and after that you can run code without the passme-device inserted.

#104966 - OOPMan - Wed Oct 04, 2006 7:48 pm

First, this should be in the the Devices forum...

Second, I believe that a Pass is not required for GBA stuff...
_________________
"My boot, your face..." - Attributed to OOPMan, Emperor of Eroticon VI

You can find my NDS homebrew projects here...

#104967 - Sausage Boy - Wed Oct 04, 2006 7:51 pm

The GBA mode and the DS mode are very different things. In GBA mode, you get a gba, nothing more, nothing less. It always starts from the GBA cart. It is impossible to go from GBA mode to DS mode.

If you want to run a program in DS mode, the earliest solution was to use a passthrough device, commonly a PassMe. The PassMe works by using a real DS game card to handle all the handshaking and cryptography and stuff. It passes through it, hence the name. But, when the game card sends information about where to start execution, the PassMe steps in; "HAHA!", it says, and changes it to start from the gba slot. The DS will now run a program in DS mode from the GBA cart.
_________________
"no offense, but this is the gayest game ever"

#104987 - Lynx - Wed Oct 04, 2006 10:07 pm

And being this seems like a very unresearched topic, might as well throw in that a PassMe1 won't work on current selling DSs and you can check your firmware to see if it will by doing THIS . If you can't use a PassMe1, you can use a PassMe2 or NoPass. PassMe2 requires SRAM and is just to much of a hassle these days, so you might as well just get a NoPass and call it a day.

Not sure, or don't want to check? Get a NoPass.. it works on every DS.
_________________
NDS Homebrew Roms & Reviews

#104997 - HyperHacker - Wed Oct 04, 2006 11:31 pm

Simple answer to your question:
GBA apps require only a GBA flash cart. DS apps require a flash cart and some sort of pass device; NoPass is recommended. Certain types of wireless cards can be used as a pass device on firmwares V1 through V3.

More information you may or may not need:
Other pass devices aren't really useful now that NoPass exists, as they're about the same price but more difficult to use and a bit easier to break. PassMe2 also isn't compatible with carts lacking SRAM such as GBAMP, or with certain DS games. These devices can be useful for hardware hackers though, as they provide a serial interface.

PassMe1 can be upgraded to PassMe2 by soldering on a cable and writing some new firmware to it, but it can't be upgraded to NoPass.

Once you have a way to run DS apps you might want to install FlashMe (a hacked Nintendo firmware) or FWNitro (a homebrew firmware), which let you boot DS apps from the GBA slot without a pass device. There's a slight risk of ruining your DS by installing new firmware, but if you follow the instructions it's pretty easy. Make sure you get the correct version (Phat or Lite) if you want brightness control. I don't think FWNitro supports Lite (it runs, but has no brightness control). Both can be uninstalled, but I don't think FWNitro has an uninstaller (you can use NoFlashMe).

There were reports of DSes being temporarily bricked (unable to start) after being used with a Wifi game with older FlashMe versions. These problems were fixed quite some time ago, and there are no known problems with current FlashMe versions.

In addition to removing the need for a pass device these firmwares offer brick protection. Older DS systems have a hardware switch that protects the first 64K of firmware from being deleted, so a bricker or buggy program can't touch this area, but the Nintendo firmware doesn't take advantage of this so such a program would still ruin it. The only way to recover from a bricking with Nintendo firmware is to flash the chip itself. On Phat you have to solder some cables to it; on Lite the chip is socketed so you can switch to a working one, then switch back once the FlashMe installer is running and reflash that way.
FlashMe and FWNitro put some recovery code in this sector so even if something erases or damages the rest of the firmware you can still boot a DS app to restore it. This is among the first things written during installation, and the last things removed during uninstallation, so the chances of a failed (un)installation bricking the system are minimal.
Newer DSes (and presumably Lites) have a better protection; the entire chip, except for the part that holds the user settings, is protected by the hardware switch. Hence with these models even the Nintendo firmware is brick-proof unless you've activated the switch (so there is still danger in installing new firmware). The only way I know to tell which is which is to install FlashMe and remove the shorting tool at above 25%; if it stops writing, you have the newer type.

One last bonus of FlashMe is that some newer Phats (V5+) have Lite hardware, and by installing FlashMe Lite, you can gain the brightness control features of Lite. This really hurts battery life though. The installer will tell you which model you have, so if you don't get brightness control, your model just doesn't have it.

Lynx identified a way to check your firmware version, but the document is a bit out of date; a newer one is here.
_________________
I'm a PSP hacker now, but I still <3 DS.

#105022 - KayH - Thu Oct 05, 2006 7:28 am

Many thanks for all the helpfull comments!

And sorry, I was unsure about the right forum. :-/ As the question was also related to the programming stuff and not related to any dedicated pass device I choosed the more general forum. Sorry for that!

But now it's (more) clear. Again, thank you very much!
KayH