Homebrew [Homebrew] 3DS Remote Desktop

retrozelda

Active Member
OP
Newcomer
Joined
Jun 27, 2007
Messages
39
Trophies
0
XP
240
Country
United States
That was my first idea, to pass VBA window handle instead of screen handle. Unfortunately, as it says in GetFrontBufferData() reference, this function only works at full screen level. Passing a window handle instead of desktop handle causes a D3DERR_INVALIDCALL.
I know that most live-streaming programs, which used DX9, usually captured specific areas simply by cropping Desktop capture, so it seems there was some kind of limitation in DX9 in that regard. Whether it's worth switching to DX10 or not I don't know(I'm really new to all this :) ), probably not, but it could potentially add to performance.

I played around a bit, and getting the internal buffer would kinda be dumb now that i think about it(and because everything i did wouldnt work as you said lol). But, because some apps use openGL, a directX handle wouldnt work across everything. So I decided to go a different route and this is what I came up with:



sorry about an alarm going off, i was using my phone. regardless....
the code is still |**really**| ugly, but i was just focusing on getting the core functionality done. It is in the focus-window branch on bitbucket if you wanna pull it and try. But its not a big enough bottleneck to effect performance, as it is still the same.

EDIT: Code is much cleaner in the repo now

There have also been a lot of changes to wireless over the years, but not many improvements over the B/G spectrum. N and AC are where a lot of the focus is now in the 5Ghz spectrum. I think the improvement in speed is likely due to a lot of wireless routers and access points being capable of dual band which allows two streams of data transfer to take place at a time. Perhaps they added a second antenna to help which is one of the differences between the old and new 3DS.

I have a Meraki AP at home I could test with, it gives data input/output over time. Perhaps I can play with that over the weekend using youtube as a testing point on both units.

that info would definitely be sexy. but regardless of hte results, I think better compression would still be needed. OR! an Ethernet hardmod xD
 

Monado_III

Well-Known Member
Member
Joined
Feb 8, 2015
Messages
722
Trophies
0
Location
/dev/null
XP
1,443
Country
Canada
Would the exe work on Wine? I've tried it but it displays the same message as it does on a Windows PC.("d3d9x_43.dll is not installed"). I've tried using the static one as well.
 

X-ite_SDF

Active Member
Newcomer
Joined
Jun 26, 2011
Messages
28
Trophies
1
XP
296
Country
Russia
I played around a bit, and getting the internal buffer would kinda be dumb now that i think about it(and because everything i did wouldnt work as you said lol). But, because some apps use openGL, a directX handle wouldnt work across everything. So I decided to go a different route and this is what I came up with:

*snip*

sorry about an alarm going off, i was using my phone. regardless....
the code is still |**really**| ugly, but i was just focusing on getting the core functionality done. It is in the focus-window branch on bitbucket if you wanna pull it and try. But its not a big enough bottleneck to effect performance, as it is still the same.

Basically we've arrived at the same "Capture the whole screen then crop" solution, but your method of keeping focus is better :)
But you should still make a handle for desktop, cause not all people have 1920x1080 screens. Mine is 1920x1200 for example. That was present in my code, but either I'm stupid, or BitBucket doesn't allow me to make a pull request.
 

retrozelda

Active Member
OP
Newcomer
Joined
Jun 27, 2007
Messages
39
Trophies
0
XP
240
Country
United States
Would the exe work on Wine? I've tried it but it displays the same message as it does on a Windows PC.("d3d9x_43.dll is not installed"). I've tried using the static one as well.

idk much about wine, but i think you just need to instal the directX9 redist package

Basically we've arrived at the same "Capture the whole screen then crop" solution, but your method of keeping focus is better :)
But you should still make a handle for desktop, cause not all people have 1920x1080 screens. Mine is 1920x1200 for example. That was present in my code, but either I'm stupid, or BitBucket doesn't allow me to make a pull request.
PM your bitbucket username or your email address and I can grant you write access. Since GetFrontBuffer() require the monitor resolution, I hardcoded in mine and i just forgot to make it dynamic ><
 

Chrisser_75

Well-Known Member
Member
Joined
Dec 12, 2014
Messages
264
Trophies
0
Location
Germany
XP
321
Country
Germany
no matter in which variant i enter my pc-ip on the 3ds ... i see nothing :(
My PC's IP configuration is: XXX.XXX.XX.X (9 digits)
Client IP configuration is: XXX.XXX.XXX.XXX PORT (12 digits)
How should I enter the IP on the 3DS?
E.G:
Server (Adress 0): 192.168.12.3
Input on DS?: 192.168.012.003 or 192.168.120.300 or what?
PLS help! :(
 

nastys

Well-Known Member
Member
Joined
Aug 5, 2014
Messages
1,732
Trophies
1
Age
26
Location
Earth
XP
1,810
Country
Italy
I get a similar problem with Wine. When I run the Server, it closes immediately.
d3dx9 is installed.
Couldn't this simply be ported to be cross-platform?
 

Attachments

  • Schermata del 2015-02-23 17:29:34.png
    Schermata del 2015-02-23 17:29:34.png
    14.9 KB · Views: 455

Chrisser_75

Well-Known Member
Member
Joined
Dec 12, 2014
Messages
264
Trophies
0
Location
Germany
XP
321
Country
Germany

Chrisser_75

Well-Known Member
Member
Joined
Dec 12, 2014
Messages
264
Trophies
0
Location
Germany
XP
321
Country
Germany

KniknokOne

Member
Newcomer
Joined
Jan 28, 2014
Messages
23
Trophies
0
Age
28
XP
76
Country
Gambia, The
"Well thats very strange retrozelda said in his first post we would need ASCII decimal values but

provides us with Hexadecimal values?? Anyway could you specifie your problem a bit more? like does the 3ds even send any input or is the input data all scrambled up?

It should actually work with the first link i've sent...

(Here is a link wich is basicly the same as the first one but a bit better (if you ask me)
http://www.asciitable.com/)

P.S. Sorry for the delay but something is wrong with my post window ?_?
 

retrozelda

Active Member
OP
Newcomer
Joined
Jun 27, 2007
Messages
39
Trophies
0
XP
240
Country
United States
The 0x means it's a hexadecimal number. The ini file needs the values to be decimal. So, you just need to convert them first. I updated the first post, but you can use windows calculator or tools like this to get the dec value
 
  • Like
Reactions: Chrisser_75

retrozelda

Active Member
OP
Newcomer
Joined
Jun 27, 2007
Messages
39
Trophies
0
XP
240
Country
United States
IP shown by 3ds and Windows are not the same

the IP that shows in the 3DS you change to match whatever IP the server is running through. you can use the 3DS dpad to change it. The default one that is shown is mine and i left it in because i dont have a way to save the last connected IP/port yet. This is something that I have planned to do, but for now, you just have to change it everytime(or just recompile the client with your ip set as the default so you dont have to reenter it every time)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    A friend give me a $35 cigar, and pssf, just as good as a $5 one. But of course gonna have to tell him it was awesome.
  • Psionic Roshambo @ Psionic Roshambo:
    What makes a good Cuban rum soaked cigar is a nice cosmopolitan to go with it.
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Used to do that every time I went to Miami on business
  • Psionic Roshambo @ Psionic Roshambo:
    There was this little bar I would stop in have that combo and watch the beach
    +1
  • BigOnYa @ BigOnYa:
    I've never met a girl named cosmopolitan, but cool. And where do you insert the cigar? Mr clinton
  • Psionic Roshambo @ Psionic Roshambo:
    Slightly more than 35 dollars lol but I was making thousands on a job.
  • Psionic Roshambo @ Psionic Roshambo:
    Cosmopolitan is just vodka and cranberry juice lol
  • Psionic Roshambo @ Psionic Roshambo:
    I'm a martini glass
  • K3Nv2 @ K3Nv2:
    My dental assistant is Cuban I'm gonna have to him for cigars and sandwiches now
    +1
  • BigOnYa @ BigOnYa:
    Yea wish I could get Cubans cheap, they are ridiculous priced up here. But they are hard workers.
  • Psionic Roshambo @ Psionic Roshambo:
    I think I was paying like 75 back in the early 90s
  • Psionic Roshambo @ Psionic Roshambo:
    Rolled on the thighs of virgins if the stories are to be believed
  • K3Nv2 @ K3Nv2:
    I don't think we belive any of your stories
  • Psionic Roshambo @ Psionic Roshambo:
    That's honestly for the best lol
  • BigOnYa @ BigOnYa:
    I'd read his autobiography.
  • K3Nv2 @ K3Nv2:
    "If I may have done it."
  • Psionic Roshambo @ Psionic Roshambo:
    I'm deliberately vague about some of the details sure it's been 30 years but some crimes don't have limitations
  • K3Nv2 @ K3Nv2:
    Psis sex life is Dubai
    FB-IMG-1717887564361.jpg
  • BigOnYa @ BigOnYa:
    Or I picture its like quagmire from family guy, gigity.
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    Back then I was so wasteful with money, didn't bother me to spend 600 bucks in a strip club, some of those private dances though... Lol
  • Psionic Roshambo @ Psionic Roshambo:
    My life back then was a mix of Breaking Bad and John Wick and Dumb and Dumber lol
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    The things we do as kids so lucky to be alive lol
  • Sonic Angel Knight @ Sonic Angel Knight:
    Kids put chocolate in their pockets :ninja:
    Sonic Angel Knight @ Sonic Angel Knight: Kids put chocolate in their pockets :ninja: