Great! Mind if I try to include the code in Analog+? (I guess I'll need to do two separate compiles?)
Yes I do mind... I've been working night and day trying to make the code fit as nicely as possible into Mame Analog+, and I need some more time.
I'm in not in any hurry if you're still working on it: any work you do is less for me.

Also, I'm currently trying to fix some fairly minor bugs in Analog+ before I'll look at actually adding your rawinput code. And I have no problem waiting a release or seven before adding it.
If you run into any questions, of course, I'm here.

Cool, I wasn't sure if you'd want to be responsible for maintaining code that you can't test/* <jake> */conveniently.
Testing would be a great excuse to go over to my friend and ask if I could use his computer, especially if I bring my dual trackball CP over with me and ask him to help in the "testing".

Seriously, I've said I won't upgrade to winXP until it had multiple mouse support; looks like I know what I'll get myself within 6 months, since the major reason stopping me looks like it has been removed (the other stopping reason is $$$, of course). So I should be able to test at home soon-ish.
And Analog+ is begging for the winXP multi-trackball support; any "responsiblity" I take in including your code I'd consider minor compaired to the work you are doing making it work.
Plus I do get to
blame credit you as the author of the code.

As far as separate compiles are concerned, that shouldn't be necessary as long as I add something in that prevents the user from executing any raw input code with older windows versions. However, you might still want to do separate builds if you don't want to keep your regular Analog+ build environment the same as the Mame one.
/*</jake> */
Oh, ya ... shucks; forgot about the editted header & new lib.

I don't want to make it any harder for other people compiling their own analog+ variant than I have to, again. (like back in the dx8 days) Hmm...[still thinking]
And in case I didn't say it before, thank you!