Jump to content

DS2Key 1.01 - Now with Windows and Linux console support


Recommended Posts

UPDATE: DS2Key 1.01 released! Binaries available here



Version 1.01 (Revision 44) January 20, 2009

  1. Fixed bug with arrow keys sending numpad keys (2, 4, 6, 8).
  2. Fixed GH Pad repeat bug reported blahblahblaster from gbadev.org.
  3. Fixed CPU usage with server console versions.
  4. Fixed repeated sending of "/p?".
  5. Fixed a bug with the mouse cursor sending negative values, causing wrapping in the linux version.

Recently cualquiercosa327 contacted me with an interest in adding adapters, such as the Guitar Hero Grip, to my DS2Key application. I spoke to him saying I had lost all the server source code, which would make it impossible without recoding everything again to add these features. Long story short with some help from cualquiercosa327 I have almost completed the server and client working with all old features of DS2Key, and I've added the Guitar Hero Grip feature. I'm not going to release binaries until I feel that it is polished enough for the normal user. Although I am asking if you are able to compile it from the SVN to please give input on what features you would like to see. If anyone would like to help with this project simply get the source from the SVN and either post your changes or send them to me directly. Any help including bug reports would be greatly appreciated.


Current Status

The server (PC side) is either a GUI or console window (only console in Linux for now). It runs off of configuration files it generates when it first needs to use them. You are able to edit them by hand if you're using the console version. At this point it's undocumented, but it shouldn't be too hard to figure out the codes if you're able to compile it, just read through the source code a bit.


The client (DS side) has a simple GUI at this point. tapping the top left where you see a badly drawn rotating gear you can edit the settings, which are also saved. To edit the settings just tap "[Edit]" next to the setting and it'll bring up a keyboard, pressing enter when you're done editing will take you back. You'll have to change the IP for sure the first time, the default is which is invalid for everyone. Then press "[Done]" to go back to using DS2Key. at the bottom right corner is a cursor image, tapping that will lock the screen back lights on, and you'll be able to use the mouse or mouse buttons, tapping it again will deactivate this mode.



  • Action Buttons (Normal button input, a, b, left, right, etc)
  • Exact Mouse movement (Touching the middle of the touch screen sets the cursor on the middle of the PC screen, etc)
  • Mouse Touch Screen buttons (The screen is divided into having 12 buttons working similar to the normal buttons)
  • (New)Guitar Hero Grip buttons (All four buttons act the same as the normal buttons, but have their own settings)
  • (New)Mouse Clicks (Left, right, and middle buttons)
  • (New)Linux Support (All functions work as they do in Windows now)
  • (New)Windows GUI Support (Very friendly GUI :3 )


  • Relative Mouse movement (Similar to a laptop's mouse pad)
  • Profile Toggle Function (Press or hold a key to switch to another profile)

Known Bugs:

  • (Squashed)Mouse input doesn't cover entire screen -- deadzone borders need to be made for the touch screen.
  • (Squashed)GUI log is disabled -- log caused lags, disabling command logs should fix this
  • (Squashed)Setting mouse button clicks in the GUI doesn't work -- mouse clicks actually work, just setting them up in the GUI doesn't
  • (Squashed)After changing the IP on the DS, the server ends up sending /p? repeatedly -- restarting the DS makes everything work fine
  • (Squashed)Arrow key settings actually send numpad arrow keys, or numbers, depending on numlocks status
  • Setting GUI log to "All Messages" causes lag. This log mode is mostly for testing your connection, just switch the setting to something else and it will run lag free



Edited by sypherce
Link to comment
Share on other sites

  • Replies 61
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

svn checkout-ed, compiled for both, and am currently playing Touhou using my DS as controller.


Thanks for the work :3


[edit] IIRC, the address to the server is hard coded into the code? Had to alter that value. Or is there an undocumented server setting outside the code?


[edit2] Ah, it's on the DS as menu thingy, I see.

Edited by Lorentz
Link to comment
Share on other sites

  • 2 weeks later...
Will this work with newer DSLites? Right now, my DSLite freezes when I choose a controller, which is strange, because for the first two weeks that I had my DS, it was working.

I've tried it extensively with my DSPhat and DSLite, cualquiercosa327's DSLite works as well. I'm not sure if my or his DSLite is a new or old one at this point though. I'm guessing it should all work fine though, considering I'm using the newest stable DSWifi library.

Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...

wow, glad to see the app is still being worked on. Was just digging it up now that I finally have a slot1 flash cart.

Used to play with this on my GBA flashcart and through a WiFi homebrew download server some years ago.

Now with NDS emulators I can use the DS as a controller :3

Course with a flash cart that beats the point.


Anyway, thanks for the continued work. Can't wait to download this.

Adding Guitar Hero adapter support is a cool idea.

Arkanoid turn dial support would be cool too, though its hard to get outside of japan anyway. Still, would be a good solution for a turn dial for Mame for me :3

A Wiimote just doesn't cut it.

Link to comment
Share on other sites

Arkanoid turn dial support would be cool too, though its hard to get outside of japan anyway. Still, would be a good solution for a turn dial for Mame for me :3

A Wiimote just doesn't cut it.


I wish I could add support for it, but lack of the actual device makes it very hard for me to add support. It took me quite a bit of code tinkering to get the Guitar Hero pad to work perfectly.

Link to comment
Share on other sites

  • 2 weeks later...

Hey, hamtotem again. I'd just like to say that while this project is fricken awesome, it isn't getting the recognition it deserves.


This topic was posted two months ago and only 4 people other than sypherce have replied. Maybe you should post a topic on a more active site like GBATemp at some point and inform us of updates even if its just what you have done so far.


Personally, I don't care if you take another year to finish this project. At the least I know that you're still working on it.

Link to comment
Share on other sites

Hey, I don't know if you read my post or not but it seems that you have updated your first post. Still, as much as I appreciate your work, I honestly don't think anyone will know about because these forums are deserted.


I decided to take your advice GBAtemp post.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...