Homebrew 3DS Controller

  • Thread starter CTurt
  • Start date
  • Views 413,678
  • Replies 1,200
  • Likes 104

kheldar

Well-Known Member
Member
Joined
Jul 4, 2014
Messages
522
Trophies
0
XP
420
Country
I'm sorry if this has been asked before I'm receiving this error while trying to run the exe file. "libgcc_s_dw2-1.dll" is missing etc etc.. I installed vJoy version 2.0.4

Edit 1 : I managed to fix it by finding required dll files on net and placing them in 3DS controller folder but now I'm encountering another error.

"vJoy failed (1) Buttons will still work, but joy stick won't work"

Edit 2 : Oh okay it was my own stupidity >.< I forgot to install vJoy again after uninstalling to see if it would fix the first problem. I successfully managed to run both 3ds app and pc but controller doesn't work. What could be the problem?

I'm pretty sure I'm using the right ip adress and made sure that my firewall doesn't block the connection.

Edit 3 : Okay I managed to fix it by changing the port to 8888 :) Thank you for this great app

Edit 4 : Another question is it possible to assign left or right mouse click to some button or tapping to touch screen and can i use circle pad as mouse?
Also up and right buttons typing down 2,4,6,8 I guess they are assigned to numlock buttons? Is it possible to change those to arrow buttons?
 
Last edited by kheldar,

CTurt

Well-Known Member
OP
Member
Joined
May 3, 2015
Messages
73
Trophies
0
XP
317
Country
Kek. Don't count on it. I'm talking to CTurt. He's done with the project.
I never said that. Just that I was busy with something else.

Yesterday I updated the PC client to be compatible with the latest compilers and latest version of vJoy.

Is there no way to turn the backlights off?

This homebrew seems to drain battery like crazy.

Love it. Use if for all my emulators.
I don't think I can turn off backlight, but I could definitely reduce the power consumption of the 3DS app. There is currently no throttling for it, it streams all keys once per frame. Also, looking at the source now, double buffering seems to be enabled when there is no need for it. I never tested this for any long periods of time.

I also see a lot of people complaining about DLL errors still, I will sort it soon. Sorry for the delay,
 
Last edited by CTurt,
  • Like
Reactions: Hashtastrophe

OctopusRift

GBATemp's Local Octopus, Open 9am-2am. "Not Yet"
Member
Joined
Nov 19, 2014
Messages
1,460
Trophies
0
XP
947
Country
Saint Kitts and Nevis
I never said that. Just that I was busy with something else.

Yesterday I updated the PC client to be compatible with the latest compilers and latest version of vJoy.


I don't think I can turn off backlight, but I could definitely reduce the power consumption of the 3DS app. There is currently no throttling for it, it streams all keys once per frame. Also, looking at the source now, double buffering seems to be enabled when there is no need for it. I never tested this for any long periods of time.

I also see a lot of people complaining about DLL errors still, I will sort it soon. Sorry for the delay,
Well Well WELLL. He's here now!
 

CTurt

Well-Known Member
OP
Member
Joined
May 3, 2015
Messages
73
Trophies
0
XP
317
Country
Thanks for the support, everyone!

I just managed to get backlight control working, which will be in the next version:

Code:
#ifndef REG_LCDBACKLIGHTMAIN
#define REG_LCDBACKLIGHTMAIN (u32)(0x1ED02240 - 0x1EB00000)
#endif

#ifndef REG_LCDBACKLIGHTSUB
#define REG_LCDBACKLIGHTSUB (u32)(0x1ED02A40 - 0x1EB00000)
#endif

static u32 brightnessMain;
static u32 brightnessSub;

void disableBacklight() {
u32 off = 0;

GSPGPU_ReadHWRegs(NULL, REG_LCDBACKLIGHTMAIN, &brightnessMain, 4);
GSPGPU_ReadHWRegs(NULL, REG_LCDBACKLIGHTSUB, &brightnessSub, 4);

GSPGPU_WriteHWRegs(NULL, REG_LCDBACKLIGHTMAIN, &off, 4);
GSPGPU_WriteHWRegs(NULL, REG_LCDBACKLIGHTSUB, &off, 4);
}

void enableBacklight() {
GSPGPU_WriteHWRegs(NULL, REG_LCDBACKLIGHTMAIN, &brightnessMain, 4);
GSPGPU_WriteHWRegs(NULL, REG_LCDBACKLIGHTSUB, &brightnessSub, 4);
}

Hopefully this should reduce the battery drain significantly when using 3DS Controller.

I've also been looking into the possibility of a Linux port, but I'm not promising that it will be in the next version, or will ever be released for that matter.
 
Last edited by CTurt,

dark_samus3

Well-Known Member
Member
Joined
May 30, 2015
Messages
2,372
Trophies
0
XP
2,042
Country
United States
I've also been looking into the possibility of a Linux port, but I'm not promising that it will be in the next version, or will ever be released for that matter.
that would be awesome :D I've stopped booting into windows at this point... it's actually surprisingly unstable compared with Linux (I'm tired of bluescreens and all of the extra programs you need to do things Linux can do on a fresh install)
I run all of my games with wine (lets you run windows apps on Linux, though for something like this an official port would probably work better)
 

CTurt

Well-Known Member
OP
Member
Joined
May 3, 2015
Messages
73
Trophies
0
XP
317
Country
Interesting, good work! Is it per screen (main = top, sub = bottom), or do main & sub mean something else, and the screens can't be controlled independently?
Main is the top screen, sub is the bottom screen. The naming convention stems back from the DS scene which had two video engines: the main engine (which can do 3D graphics and has more VRAM) and the sub engine; each screen is assigned 1 engine (can be either way around). But for the 3DS, main is always the top, and sub is always the bottom.

It is indeed possible to control both screens' backlight independently, but it is not a good idea to do this, because the 2DS only has a single screen. Controlling both ensures that it behaves the same on a 2DS and 3DS.

that would be awesome :D I've stopped booting into windows at this point... it's actually surprisingly unstable compared with Linux (I'm tired of bluescreens and all of the extra programs you need to do things Linux can do on a fresh install)
I run all of my games with wine (lets you run windows apps on Linux, though for something like this an official port would probably work better)
All operating systems have their flaws; but overall I choose to use Windows. If I had to use anything else, I'd use FreeBSD with GNOME 3 though; you should too if your main concern is stability.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: https://www.youtube.com/watch?v=_9PnFJMnYT0