Homebrew [NDS] Forwarder CIAs for your HOME Menu

Red771

Active Member
Newcomer
Joined
Feb 14, 2016
Messages
37
Trophies
0
XP
923
Country
Mauritius
@Robz8, I've been using this forwarder on my DSTT clone for about a month now. Only tried MegaMan StarForce and StarForce 2. Both work great. I just saw you added support for DSTWO. But with this forwarder, do the dstwo real time save or slow motion feature works? Also, does that mean the forwarder work with the DSTWO plus as well? (BTW, I don't have a DSTWO or DSTWO plus) Thanks.
 
Last edited by Red771,

Leooogamer

Well-Known Member
Newcomer
Joined
May 13, 2016
Messages
66
Trophies
0
XP
49
Country
Brazil
does this support pokemon black & white? for some reason it gets really slow on the intro scene sometimes even crashing, using a r4i-sdhc, actually it doesn't crash, it just freezes, and it's not sometimes it's everytime... i can't get past the "tell me your name part"
managed to get past the initial screen did the first battles, tried to save, froze again
 

SolotheHawk

Member
Newcomer
Joined
Apr 19, 2016
Messages
12
Trophies
0
Age
34
XP
49
Country
United States
How likely is it that forwarders for Acekard 2i get figured out soon? Should I keep a close eye on the thread or just check back in a month or two?
 

Classicgamer

Well-Known Member
Member
Joined
Aug 20, 2012
Messages
646
Trophies
1
XP
974
Country
United States
How likely is it that forwarders for Acekard 2i get figured out soon? Should I keep a close eye on the thread or just check back in a month or two?

I'm also awaiting it patiently, hopefully it can be done period. It'll be pretty cool having all the hand held games I have readily accessible on one console screen!
 

Dimensional

Well-Known Member
Member
Joined
Dec 7, 2008
Messages
1,008
Trophies
1
Age
34
Location
Texas
XP
2,757
Country
United States
For some reason this isn't working on my 3DS. I'm using a Supercard DSWTWO+ on a Luma3DS(6.0.1 Dev) CFW n3DS running 11.0, and I'm attempting to play after installing it on sysNAND. The game is Pokemon White, and it's not customized or edited, but the icon/banner is still white/blank, and whenever I attempt to load it I get the "error has occurred" message.
 
  • Like
Reactions: angelhp

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
I just get the "An error has occurred" screen, sadly, despite the flashcard working. Any suggestions? My card is a DSTT clone
What CFW are you using? And SysNAND or EmuNAND?

--------------------- MERGED ---------------------------

@Robz8, I've been using this forwarder on my DSTT clone for about a month now. Only tried MegaMan StarForce and StarForce 2. Both work great. I just saw you added support for DSTWO. But with this forwarder, do the dstwo real time save or slow motion feature works? Also, does that mean the forwarder work with the DSTWO plus as well? (BTW, I don't have a DSTWO or DSTWO plus) Thanks.
You need to rebuild them for the DSTWO, since it uses a different forwarder template.

Also, the DSTWO forwarders only work on Luma3DS v6 developer branch.

Edit: Misread your question. I think they should work on the DSTWO+ too since it uses the same loader for NDS games. But who knows?

--------------------- MERGED ---------------------------

@Robz8
Another thing @Robz8, is your app open source? I'd like to take a peek and see if I can learn a thing or two

Do you mean the Forwarder3DS app? I made it, and it's closed source right now. I will probably release the source in github once I'm not able to update it anymore.

And if you were talking about the NDS template files and all those 3DS-side files, everything is mostly work of @Robz8 and some are from @ahezard
 
Last edited by Olmectron,
  • Like
Reactions: Red771

angelhp

Well-Known Member
Member
Joined
Nov 30, 2014
Messages
509
Trophies
0
XP
2,335
Country
United States
For some reason this isn't working on my 3DS. I'm using a Supercard DSWTWO+ on a Luma3DS(6.0.1 Dev) CFW n3DS running 11.0, and I'm attempting to play after installing it on sysNAND. The game is Pokemon White, and it's not customized or edited, but the icon/banner is still white/blank, and whenever I attempt to load it I get the "error has occurred" message.
Use short names for games ,
and install in sysnand and emunand
 

KapuDaKoopa

That One Splatoon Dataminer
Member
Joined
Mar 12, 2016
Messages
474
Trophies
0
XP
984
Country
United States
Has this had patches for Apache Thunder's fixes for carts that usually don't work at all?
Like my R4 Upgrade for example, because it doesn't run YSMenu or Wood, only the original firmware, but it works with the fixed launcher.
 
Last edited by KapuDaKoopa,

DanTheMan827

Well-Known Member
Member
Joined
May 3, 2015
Messages
639
Trophies
0
Age
33
Location
Wisconsin
XP
621
Country
United States
What CFW are you using? And SysNAND or EmuNAND?

--------------------- MERGED ---------------------------


You need to rebuild them for the DSTWO, since it uses a different forwarder template.

Also, the DSTWO forwarders only work on Luma3DS v6 developer branch.

Edit: Misread your question. I think they should work on the DSTWO+ too since it uses the same loader for NDS games. But who knows?

--------------------- MERGED ---------------------------



Do you mean the Forwarder3DS app? I made it, and it's closed source right now. I will probably release the source in github once I'm not able to update it anymore.

And if you were talking about the NDS template files and all those 3DS-side files, everything is mostly work of @Robz8 and some are from @ahezard

Oh, sorry about that... I thought @Robz8 made the GUI... shows how much I pay attention...

I've made a forwarder file that does things a little differently than the ones provided and I have a couple suggestions / requests for using external template files

You can get the banner offset of the NDS file from bytes 0x68 - 0x6C
I've made a sample java file

For the .nds path and length, what about searching for some marker strings in the forwarder instead of hard coding the offset and length?
Something like <<<NDS Path Start and NDS Path End>>>

The banner size won't always be 0x23C0 bytes...

For example, ndstool compiles a .nds with a banner size of 0x840 bytes (do you know why or have a workaround @Robz8?), bytes 0x208 - 0x20C contain the size... You could probably modify this byte range with the size of the replacement banner and add the additional bytes to the NDS file (not tested)... currently if I try to give your app a .nds with a 0x840 byte banner it generates no output

These changes would make it easier for testing new / updated forwarders since it would auto-detect all of the file offsets (you could still give the user the prompt to confirm they're correct though...)
 
Last edited by DanTheMan827,

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Oh, sorry about that... I thought @Robz8 made the GUI... shows how much I pay attention...

I've made a forwarder file that does things a little differently than the ones provided and I have a couple suggestions / requests for using external NDS forwarder files

You can get the banner offset of the NDS file from bytes 0x68 - 0x6C
I've made a sample java file

For the .nds path and length, what about searching for some marker strings in the forwarder instead of hard coding the offset and length?
Something like <<<NDS Path Start and NDS Path End>>>

The banner size won't always be 0x23C0 bytes...

For example, ndstool compiles a .nds with a banner size of 0x840 bytes (do you know why or have a workaround @Robz8?), bytes 0x208 - 0x20C contain the size... You could probably modify this byte range with the size of the replacement banner and add the additional bytes to the NDS file (not tested)... currently if I try to give your app a .nds with a 0x840 byte banner it generates no output

These changes would make it easier for testing new / updated forwarders since it would auto-detect all of the file offsets (you could still give the user the prompt to confirm they're correct though...)
Originally, the app generated either a NTR (DS normal game) forwarder or a TWL (DSi enhanced game) forwarder, each with its own template. However, this made impossible to move correctly the NTR forwarders in the 3DS DSiWare management options. So, we talked about it and decided to always use a TWL template, so even NTR games with 0x840 length banners would translate to a 0x23C0 byte length banner for the TWL template to be alright with it.

Here you can find specs about the banners: http://problemkaputt.de/gbatek.htm#dscartridgeicontitle

We fill the banner data with more titles so we cover the extra language titles that aren't in NTR games, and put the icon and palette data in the places where the animation has their first banner and palette, so it gets alright with the TWL icon data.

After all of this, the CRC16 checksums are calculated again, just as the link I put says they should be.
 
Last edited by Olmectron,

DanTheMan827

Well-Known Member
Member
Joined
May 3, 2015
Messages
639
Trophies
0
Age
33
Location
Wisconsin
XP
621
Country
United States
Originally, the app generated either a NTR (DS normal game) forwarder or a TWL (DSi enhanced game) forwarder, each with its own template. However, this made impossible to move correctly the NTR forwarders in the 3DS DSiWare management options. So, we talked about it and decided to always use a TWL template, so even NTR games with 0x840 length banners would translate to a 0x23C0 byte length banner for the TWL template to be alright with it.

Here you can find specs about the banners: http://problemkaputt.de/gbatek.htm#dscartridgeicontitle

We fill the banner data with more titles so we cover the extra language titles that aren't in NTR games, and put the icon and palette data in the places where the animation has their first banner and palette, so it gets alright with the TWL icon data.

After all of this, the CRC16 checksums are calculated again, just as the link I put says they should be.
Thanks for that info, that explains the size difference...

But, as far as the external templates go...

Would it be possible to auto-fill the GamePath offset, banner offset, and GamePath length based on my above post? I have some sample code

You could still show the dialog but auto-fill the text fields with the detected data

That way for testing new templates, you wouldn't need to go into a hex editor to find the offset values / length for everything
 
Last edited by DanTheMan827,

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Thanks for that info, that explains the size difference...

But, as far as the external templates go...

Would it be possible to auto-fill the GamePath offset, banner offset, and GamePath length based on my above post? I have some sample code

You could still show the dialog but auto-fill the text fields with the detected data

That way for testing new templates, you wouldn't need to go into a hex editor to find the offset values / length for everything
Oh. I hadn't understood what you meant.

Yeah, I can add that. Still leaving it open for editing for if someone else wants to try something different.

For the .nds path and length, what about searching for some marker strings in the forwarder instead of hard coding the offset and length?
Something like <<<NDS Path Start and NDS Path End>>>

I don't get this part at all. This would mean @Robz8 should hard code some markers in every template, right? And anyone wanting to make a template to test would need to remember to add these markers. It's not a standard thing right now, like the banner location you commented.

We would need to talk about it.

--------------------- MERGED ---------------------------

Thanks for that info, that explains the size difference...

But, as far as the external templates go...

Would it be possible to auto-fill the GamePath offset, banner offset, and GamePath length based on my above post? I have some sample code

You could still show the dialog but auto-fill the text fields with the detected data

That way for testing new templates, you wouldn't need to go into a hex editor to find the offset values / length for everything
By the way. I've changed my mind about the source.

I'm releasing it after adding what you said about the banner location. Need to clean it a little bit too.
 

DanTheMan827

Well-Known Member
Member
Joined
May 3, 2015
Messages
639
Trophies
0
Age
33
Location
Wisconsin
XP
621
Country
United States
Oh. I hadn't understood what you meant.

Yeah, I can add that. Still leaving it open for editing for if someone else wants to try something different.



I don't get this part at all. This would mean @Robz8 should hard code some markers in every template, right? And anyone wanting to make a template to test would need to remember to add these markers. It's not a standard thing right now, like the banner location you commented.

We would need to talk about it.

Actually...the NDS cartridge header does specify where the banner is located... 0x68 and is 4 bytes...

But on the topic of the markers... if you take a look at my template on line 57, you'll see what I mean

It would make it easier to find the string programatically than just putting game.nds followed by a bunch of spaces in the code

You could certainly still pop up the offset dialog in case someone didn't use the markers but have them pre-filled if they did

I also added another thing specific to my template (which your GUI obviously wouldn't support...)

There's a string with the value of Double ARM9 Speed = 0 which if you change the 0 to a 1 my code would double the ARM9 speed. (implementation can be found here)

Maybe you could search for this string and if it exists add a checkbox to the individual game options? Then the other templates could implement
 
Last edited by DanTheMan827,

Olmectron

Well-Known Member
Member
Joined
Dec 31, 2012
Messages
2,657
Trophies
2
Age
31
Location
A game
XP
3,855
Country
Mexico
Actually...the NDS cartridge header does specify where the banner is located... 0x68 and is 4 bytes...

But on the topic of the markers... if you take a look at my template on line 57, you'll see what I mean

It would make it easier to find the string programatically than just putting game.nds followed by a bunch of spaces in the code

You could certainly still pop up the offset dialog in case someone didn't use the markers but have them pre-filled if they did

I also added another thing specific to my template (which your GUI obviously wouldn't support...)

There's a string with the value of Double ARM9 Speed = 0 which if you change the 0 to a 1 my code would double the ARM9 speed. (implementation can be found here)

Maybe you could search for this string and if it exists add a checkbox to the individual game options? Then the other templates could implement
Just rolled out update v2.1, including all of your suggestions. Excepting the ARM9 byte, will look into it later, and if @Robz8 implements it to the other templates.
 
Last edited by Olmectron,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Psionic Roshambo @ Psionic Roshambo:
    Batman joined the Trans Justice League
    +2
  • Sicklyboy @ Sicklyboy:
    based af
    +2
  • Sonic Angel Knight @ Sonic Angel Knight:
    Forget the base, get on the roof.
  • K3Nv2 @ K3Nv2:
    Is that a bat in your buckle or are you just happy to have me
  • Psionic Roshambo @ Psionic Roshambo:
    Wonder "Woman" lol you wonder if they are a woman?
  • Psionic Roshambo @ Psionic Roshambo:
    The Riddler has questions...
  • K3Nv2 @ K3Nv2:
    Played a little of snow day glad I didn't spend $30
  • K3Nv2 @ K3Nv2:
    It's asthetic is okay maybe a good $10 grab
  • Psionic Roshambo @ Psionic Roshambo:
    Lol is it a game about doing cocaine?
  • K3Nv2 @ K3Nv2:
    Probably in pvp
  • Psionic Roshambo @ Psionic Roshambo:
    I tried Balders Gate II on the PS2 a few minutes ago, not bad lol
  • Psionic Roshambo @ Psionic Roshambo:
    My back catalog of games is like that scene at the end of Indiana Jones where the arc of the covenant is being stored in a giant ass warehouse
  • K3Nv2 @ K3Nv2:
    At least I can will my game catalog to family members
    +1
  • K3Nv2 @ K3Nv2:
    It's your problem now bitches
  • Psionic Roshambo @ Psionic Roshambo:
    Put it in your will that in order to receive any money they have to beat certain games, hard games and super shitty games...
  • Psionic Roshambo @ Psionic Roshambo:
    Say 20 bucks per Ninja Gaiden on the NES lol 60 bucks for all 3
  • Psionic Roshambo @ Psionic Roshambo:
    People you like "Beat level 1 of Ms Pacman" lol
  • K3Nv2 @ K3Nv2:
    Hello kitty ds is required
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Beat Celebrity Death Match on the PS1 omg tried it earlier today .... Absolutely trash
  • Psionic Roshambo @ Psionic Roshambo:
    Like -37 out of 10
  • Psionic Roshambo @ Psionic Roshambo:
    One of the worst games I have ever played
  • K3Nv2 @ K3Nv2:
    Make them rank up every cod game out
  • K3Nv2 @ K3Nv2:
    "Now I know why he took his own life"
    K3Nv2 @ K3Nv2: "Now I know why he took his own life"