gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS Misc > Tablet driver for Windows based on Colors! code?

#143618 - eric3dee - Wed Oct 24, 2007 7:12 pm

Alright-- "just daydreaming" time. This is semi-related to Colors, but I couldn't think of a better Forum Topic to post this under...
As mentioned earlier in this forum, I am hardly a programmer, but I was wondering:
With the pressure-sensing capabilities of the DS as well as local Wifi capabilites as both brilliantly demonstrated by Jesse here on Colors... how possible would it be to use the DS as a wireless wacom tablet (and dare I say Cintiq)? By remotely sending both mouse coordinates as well as pressure data to a PC/Mac- similar to the Adhoc Wifi feature soon-to-be-implemented into Colors? Even if it was technically impossible to display the PC monitor screen on the DS (and say the DS screen instead simply remained black), I would think that sort of thing would still prove priceless to some people as a sort of "poor-man's Wacom". Am I dreaming past the machines capabilities? Just curious (well, that and if it IS possible I just wanted to stick that bug in some brilliant hombrewers ear ;) ).

#143619 - tepples - Wed Oct 24, 2007 7:25 pm

eric3dee: Ever tried Win2DS?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#143636 - Jesse - Wed Oct 24, 2007 10:17 pm

eric3dee wrote:
I would think that sort of thing would still prove priceless to some people as a sort of "poor-man's Wacom".

That's a pretty cool idea and it would be pretty simple to do a simple app where the touch-screen input would be sent to a small service running on a PC. The only problem as I see it is that it it could be hard to convert that data on the PC into mouse/pressure info. I guess the traditional way to do it would be to write a mouse driver, but that doesn't sound very tempting for me. :)
_________________
http://www.collectingsmiles.com/colors & http://www.collectingsmiles.com/hyena

#143637 - eric3dee - Wed Oct 24, 2007 10:38 pm

tepples wrote:
eric3dee: Ever tried Win2DS?


Yes-- this is what I'm referring to, but to me the big thing would be to include the pressure sensitivty so you can use it for apps such as Photoshop, Flash, artRage, etc.

Jesse wrote:
I guess the traditional way to do it would be to write a mouse driver, but that doesn't sound very tempting for me. :)


Surely its a tempting thing for someone out there! ;) I think it would be quite the handy app.

#143652 - kusma - Thu Oct 25, 2007 1:22 am

eric3dee wrote:
Surely its a tempting thing for someone out there!

Perhaps this is your opportunity to learn how to code?

#143662 - HyperHacker - Thu Oct 25, 2007 1:52 am

Writing a driver as your first program? I fear to think of the consequences. Drivers should generally be left up to those with a lot of experience. I bet it's possible to do without writing a driver on at least Linux though.
_________________
I'm a PSP hacker now, but I still <3 DS.

#143681 - recapsure - Thu Oct 25, 2007 7:33 am

eric3dee wrote:
tepples wrote:
eric3dee: Ever tried Win2DS?


Yes-- this is what I'm referring to, but to me the big thing would be to include the pressure sensitivty so you can use it for apps such as Photoshop, Flash, artRage, etc.


Haha, I tried it for that exact same reason too.

Manipulating my desktop with the DS had very little appeal, except maybe hitting pause on a DVD from further away... but... a baby-sized wireless graphic tablet/cintiq...? OH YES!

Unfortunately for me, my network complications are such that A) I couldn't get Win2DS to work (c'est la vie) and B) I heard it has no pressure sense... boring!

Ah well :D

#143714 - kidcodea - Thu Oct 25, 2007 3:25 pm

had this similar idea a few months back but i thought it was so obvious that sooner or later colors would support a pcdriver for that (mini cintiq).
i see now it wasnt in the included plans, so here's one more vote in support for that idea.
however it would prolly have to have:

.fast zoom resolution with up and down (fs or region of screen centered at stylus point of contact)
.left back big button pressure for activating ink (or right for lefties). meaning that traveling the stylus on ds would only do the pc cursor move and dat for inking or clickin you would have to keep pressed the left big back exterior button of ds (dunno name sry) for activating it, rlsing it would turn to nonclick.
.usage of this would be 100% or close to it with eyes focused on pc monitor.
.adjustable interpolation values (lagged smooth vs warpy instant)

#143726 - eric3dee - Thu Oct 25, 2007 5:48 pm

HyperHacker wrote:
Writing a driver as your first program? I fear to think of the consequences. Drivers should generally be left up to those with a lot of experience. I bet it's possible to do without writing a driver on at least Linux though.


Ya- I figured it was way over my head-- not to mention I'm mostly a Mac user- making it even harder. Maybe this should be more of a suggested feature for Win2DS anyways. And from what I understand- it may even have to be a patch written for Photoshop as opposed to a driver-- i dunno tho-- like I said- I no codey

#143732 - jetboy - Thu Oct 25, 2007 6:40 pm

Personally I would rather have all the features that were originally ment for colors made first.

What are you writing about here is far beyond simplistic sketch application, that's a totally different project. I bet it wouldn't be too hard for Jesse to implement, but how many people would make real use of this? 10? 20? I doubt that much would. Of course even a couple hundred, maybe more would try that for 5 minutes, but it wouldn't be really useful for everyday work. I think that Jesse could make a lot better use of his programming skills.
_________________
Colors! gallery -> http://colors.collectingsmiles.com
Any questions? Try http://colors.collectingsmiles.com/faq.php first, or official forums http://forum.brombra.net

#143737 - bear - Thu Oct 25, 2007 7:14 pm

Controlling the cursor is relatively easy and can already be done with existing software.

To make applications like photoshop aware of the pressure (on windows) you probably have to write a wintab driver which I have no idea how complex that would be (not sure if vista still uses wintab and if it might be more straightforward on OSX/Linux).

#143750 - HyperHacker - Thu Oct 25, 2007 8:38 pm

Yeah, it's easy to move and click the mouse, but pressure is another issue. You could simulate mouse wheel rotation, but I don't know of any programs that interpret that as pressure.

Also I agree that a DS tablet and Colors! are two different projects and it'd be a bit silly to combine them. Like building a toaster into a fridge because they're both kitchen appliances.
_________________
I'm a PSP hacker now, but I still <3 DS.

#143793 - recapsure - Fri Oct 26, 2007 12:43 am

jetboy wrote:
Personally I would rather have all the features that were originally ment for colors made first.


I'm not sure anyone is suggesting that all of that doesn't happen first.

In fact, it's more likely to be as you said, that any DS-2-Win-Tablet-Replacement app would be.. well, a completely different application to Colors!

People are just getting excited, and speculating :D

Soo... Now I'm wondering how the various original features are coming along (:
Collab for instance!
And I'm still curious to kow what people think of the double-colour-swatch idea ;-)

#143882 - kidcodea - Sat Oct 27, 2007 1:15 am

of course this would be a side project.
its not built in colors, obviously and if u read what people are saying you will understand that.
just that this side project could share a lot of similar code to the colors project so if he feels like doing it, theres people here interested, but surely even more not here, coz the pc crowd is huge and a miniwacom (not cintiq) is too exciting to pass on.

#143885 - M3d10n - Sat Oct 27, 2007 2:40 am

Does Windows even provide a standard API for pressure, or pressure-aware programs do it by interacting directly with drivers?

#144071 - Dood77 - Sun Oct 28, 2007 11:02 pm

I'm not sure how exactly it works, but my sister has one of those Compaq laptops where the screen flips down over the keyboard with the screen facing up, and there's a pen you can use for the mouse, etc. Anyway it comes with a program suite, one of which is called ink art; a cool little program that simulates all kinds of methods for drawing and painting, and touch sensitivity is used for brush strokes and such. The sensitivity works with the pen, because the special tip is like a little button that can be pushed harder or softer. (I haven't yet really figured out how the screen knows where the pen is; you can hover the pen over the screen to move the mouse around without clicking)

Anyway, this program comes in a Windows XP Tablet PC edition suite of programs, but I've no idea whether there's any kind of API for such things...
_________________
If I use a term wrong or something then feel free to correct, I?m not much of a programmer.

Original DS Phat obtained on day of release + flashme v7
Supercard: miniSD, Kingston 1GB, Kingston 2GB
Ralink chipset PCI NIC

#144467 - OOPMan - Fri Nov 02, 2007 10:49 am

Tablet PC's and graphics tablets in general function a bit differently to the DS's touch-screen. I don't know the intimate details though.

Anyway, it's probably quite possibly to write a special DS Tablet driver, but you'd have to do some digging to find info on how to do it...
_________________
"My boot, your face..." - Attributed to OOPMan, Emperor of Eroticon VI

You can find my NDS homebrew projects here...

#144689 - naleksiev - Mon Nov 05, 2007 7:55 pm

normal mouse movement will be easy like
SendMessage(hWndTarget, WM_MOUSEMOVE, 0, MAKELONG(x,y));
I couldn't find any pressure sensitive api for windows but it should be there.

Anyway correct me if I'm wrong but DS is not pressure sensitive.

#144691 - Mighty Max - Mon Nov 05, 2007 8:07 pm

naleksiev wrote:
normal mouse movement will be easy like
SendMessage(hWndTarget, WM_MOUSEMOVE, 0, MAKELONG(x,y));
I couldn't find any pressure sensitive api for windows but it should be there.


You should not rely on such hacks. This approach only works on some situations, and fails for a lot other (i.e. using Direct Input)
The Windows DDK has templates for HIDs such as mice and tablets. Start from there and you won't have to care about how the App reads out the Input.

Quote:

Anyway correct me if I'm wrong but DS is not pressure sensitive.


It is pressure sensitive. See colors.
_________________
GBAMP Multiboot

#144698 - tepples - Mon Nov 05, 2007 10:21 pm

Mighty Max wrote:
The Windows DDK has templates for HIDs such as mice and tablets.

And due to changes in the code signing policy, you might have to restart your computer in an ugly "test mode" in order to be able to run any homemade input device driver.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#144705 - NeX - Mon Nov 05, 2007 10:48 pm

GlovePIE would probably be a good way of implementing this.
_________________
Strummer or Drummer?.
Or maybe you would rather play with sand? Sandscape is for you in that case.

#144706 - Mighty Max - Mon Nov 05, 2007 10:56 pm

tepples wrote:
Mighty Max wrote:
The Windows DDK has templates for HIDs such as mice and tablets.

And due to changes in the code signing policy, you might have to restart your computer in an ugly "test mode" in order to be able to run any homemade input device driver.


Well in that case it is still superior to the SendMessage approach which wouldn't work at all due to the changed policity in sending message to other windows where applications on the same desktop might run with different rights (SendMessage command injection -> rights elevation)

It is not called Driver Development Kit because it is'nt the way to do drivers.
_________________
GBAMP Multiboot

#144712 - tepples - Mon Nov 05, 2007 11:38 pm

NeX wrote:
GlovePIE would probably be a good way of implementing this.

GlovePIE was region coded last time I checked. What should people who live in regions where GlovePIE is not available do? Move?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#145011 - bear - Sat Nov 10, 2007 1:13 pm

Glovepie isn't able to emulate a tablet in any case so it wouldn't be of any help for pressure as far as I can tell.

Quote:
Does Windows even provide a standard API for pressure, or pressure-aware programs do it by interacting directly with drivers?


Wintab is (or at least has been) the standard used by tablet aware programs.