Homebrew nds-bootstrap modified to allow play DS games with only one screen

  • Thread starter xonn
  • Start date
  • Views 11,441
  • Replies 36
  • Likes 20

xonn

Well-Known Member
OP
Member
Joined
Jan 11, 2020
Messages
147
Trophies
0
Age
33
XP
847
Country
Spain
Hello to everyone.
I have included a swap screen option through key combination SELECT+UP / SELECT+DOWN in nds-bootstrap to enjoy NDS titles in GBMacros or DS with one screen damaged.
To use it follow those instructions:
  1. Download it from this repository and copy it to _nds folder of TwilighMenu++.
  2. In your console, press Y in a NDS title and select nds-bootstrap = nightly
  3. Start your game and use key combination whenever you want.
I have checked some games, and for now, I only have found one that is not swap-screen-friendly: Mario64 DS. Some games reset the screens (like MKDS) when a level is completed, or a cinematic is displayed. In this case, just re-swap again :)
 
Last edited by xonn,

banjo2

gamer
Member
Joined
May 31, 2016
Messages
2,288
Trophies
1
Location
society
Website
youtube.com
XP
4,606
Country
United States
I was curious to try it out
(Don't have a GB Macro or broken top screen, but I do have some dead pixels)

IMG_20210203_172028292.jpg

Seems to work on Mario Party DS

Unfortunately it didn't work for me in Metroid Prime Hunters, it would just instantly switch back to the regular screen setting when in-game or menus

Also, if anyone's having trouble, it may help to know that you have to hold the button combo for ~1 second :)
 
Last edited by banjo2,

xonn

Well-Known Member
OP
Member
Joined
Jan 11, 2020
Messages
147
Trophies
0
Age
33
XP
847
Country
Spain
I was curious to try it out
(Don't have a GB Macro or broken top screen, but I do have some dead pixels)

View attachment 244791
Seems to work on Mario Party DS

Unfortunately it didn't work for me in Metroid Prime Hunters, it would just instantly switch back to the regular screen setting when in-game or menus

Also, if anyone's having trouble, it may help to know that you have to hold the button combo for ~1 second :)
I was thinking about two options to swap:
A) L+R+UP for a second (safer but slower)
B) SELECT+UP / SELECT+DOWN to set main screen up or down. This option could be activated instantly (usafer but fast)

What would be better?
 
  • Like
Reactions: Aphelios and banjo2

RocketRobz

Stylish TWiLight Hero
Developer
Joined
Oct 1, 2010
Messages
15,375
Trophies
2
Age
23
XP
18,342
Country
United States
I was thinking about two options to swap:
A) L+R+UP for a second (safer but slower)
B) SELECT+UP / SELECT+DOWN to set main screen up or down. This option could be activated instantly (usafer but fast)

What would be better?
I've made it so that holding L+R+Up+X for 1 second swaps the screens.
 

whywhy2

Active Member
Newcomer
Joined
Aug 21, 2019
Messages
30
Trophies
0
Age
27
XP
84
Country
United States
does the swap screen option also possible for B4DS or is this only for nds-bootstrap?
also thank you very much for your contribution to nds-bootstrap! never thought that it was possible to swap DS screen on software because all i ever see about swap screen is only through hardware
 
Last edited by whywhy2,
  • Like
Reactions: banjo2

MikaDubbz

Well-Known Member
Member
Joined
Dec 12, 2017
Messages
2,996
Trophies
1
Age
34
XP
5,326
Country
United States
This is really coo, but what's the advantage of this? or is it just preference?
Seems like the key demographic would be for people that turned an old or broken DS or DSLite into a GBA Macro as they've become known (some people completely remove the hinge part, others leave it or add things like that glow rod, but it's all the same idea, the bottom of half of a DS can function as a nice sized GBA), so for any DS game that only needs the top screen, this adds more game compatibility for GBA Macro owners, as you can still put DS games in it and boot them up too. But it does seem you could also use this if you'd prefer for DS games on any fully intact DS/3DS to display the top screen on the bottom.
 

banjo2

gamer
Member
Joined
May 31, 2016
Messages
2,288
Trophies
1
Location
society
Website
youtube.com
XP
4,606
Country
United States
Seems like the key demographic would be for people that turned an old or broken DS or DSLite into a GBA Macro as they've become known (some people completely remove the hinge part, others leave it or add things like that glow rod, but it's all the same idea, the bottom of half of a DS can function as a nice sized GBA), so for any DS game that only needs the top screen, this adds more game compatibility for GBA Macro owners, as you can still put DS games in it and boot them up too. But it does seem you could also use this if you'd prefer for DS games on any fully intact DS/3DS to display the top screen on the bottom.
Yeah, it can actually be really nice to have the top screen be the "primary" display (like in MPDS, although it'd take some getting used to), I typically prefer it that way.
 

ruffo

Active Member
Newcomer
Joined
Dec 28, 2019
Messages
28
Trophies
0
Age
34
XP
276
Country
Chile
what if I awnt to try this with a NDS Catdrige game? I have Skate it DS and my top screen is broken. There is a black cloud covering half of the skater's body u__u

Also I don't understad how this runs instead of "nightly" bootstrap. It doesn't even replace the nigthly file
 
Last edited by ruffo,
  • Like
Reactions: banjo2

xonn

Well-Known Member
OP
Member
Joined
Jan 11, 2020
Messages
147
Trophies
0
Age
33
XP
847
Country
Spain
I have updated here the release with two alternatives:
  • Old version: Swap screen option through key combination L+R+UP (press for 1 second)
  • Fast version: Set main screen on top or bottom just pressing SELECT+UP or SELECT+DOWN (instant change)
Due to code size limitations, I have commented the soft-reset feature in ARM9 to save lines in fast version. If I try to compile with all code, it fails and throw following error message: cardengine_arm9_dldi.elf section `.bss' is not within region `vram'
 

ruffo

Active Member
Newcomer
Joined
Dec 28, 2019
Messages
28
Trophies
0
Age
34
XP
276
Country
Chile
Man, this is great, thank you for your work
I've tried this with Skate it DS (with a rom, can't get it to work with the original catgridge) and it works flawlessly. It's cool how the touch screen keeps its touch input actions while displaying what is on the top screen at the same time.

I have also tried with Taiko No Tatsujin which requires to run in DS Mode since there is an issue of screen flickering/swapping and it doesn't work, doesn't swap screens, probably due to be running under DS Mode.

Also doesn't seem to work with Animal Crossing Wild World.

I'll be checking with your new version to see if there is changes about these points I've mentioned.
 
  • Like
Reactions: banjo2

xonn

Well-Known Member
OP
Member
Joined
Jan 11, 2020
Messages
147
Trophies
0
Age
33
XP
847
Country
Spain
Man, this is great, thank you for your work
I've tried this with Skate it DS (with a rom, can't get it to work with the original catgridge) and it works flawlessly. It's cool how the touch screen keeps its touch input actions while displaying what is on the top screen at the same time.

I have also tried with Taiko No Tatsujin which requires to run in DS Mode since there is an issue of screen flickering/swapping and it doesn't work, doesn't swap screens, probably due to be running under DS Mode.

Also doesn't seem to work with Animal Crossing Wild World.

I'll be checking with your new version to see if there is changes about these points I've mentioned.
Some games are constantly setting the order of screens in each frame. When you force swap screen, it's "fixed" instantly.
For now, this problem can't be solved :(
 

xonn

Well-Known Member
OP
Member
Joined
Jan 11, 2020
Messages
147
Trophies
0
Age
33
XP
847
Country
Spain
Hey @Robz8 , I have modified the source code to make the user screen configuration persistent. Now, the program remembers which screen has been selected as bottom screen and changes it each vblank event. It seems that performance has not been affected. I hope it will be interesting for you :)
 

Lolight4

Member
Newcomer
Joined
Jan 10, 2021
Messages
11
Trophies
0
Age
23
XP
106
Country
Portugal
Is there any way to run homebrew with this?
It would be amazing to run JenesisDS or even the new Cave story DS port on a macro, but at the moment no matter what I do I can't seem to get this functionality to work.
I suspect its because of some difference in the nds bootstrap for homebrew and the nds bootstrap for official games?
Also @Robz8 , would it be possible in any way to add the option to choose the screen swap button combo to Twilight menu?
I personally really prefer the (Select + up/down) instant screen change as its a much easier button combo to remember, but I assume I am a minority here.
Thank you both for your hard work! It is greatly appreciated :)
 
  • Like
Reactions: banjo2
General chit-chat
Help Users
  • No one is chatting at the moment.
    KenniesNewName @ KenniesNewName: Afrocandy looks like a good movie