Sign in to follow this  
JamesKershaw

Advise needed programming a device driver.

Recommended Posts

JamesKershaw    102
Hi guys, today I bought a Microsoft Sidewinder C84-00005 from a thrift-type store, to use as a gamepad for Emulation. When I got home, I found out that it's unsupported by Windows 7. I then decided that I'd need to write a device driver for it myself, the problem being; I have no idea where to start, and my C++ skills are minimal. Would I even write it in C++? What dev environment would it be written in? Can anyone help me?

Thanks,
- James

Share this post


Link to post
Share on other sites
Serapth    6671
[quote name='Boneyards' timestamp='1313166830' post='4848292']
Hi guys, today I bought a Microsoft Sidewinder C84-00005 from a thrift-type store, to use as a gamepad for Emulation. When I got home, I found out that it's unsupported by Windows 7. I then decided that I'd need to write a device driver for it myself, the problem being; I have no idea where to start, and my C++ skills are minimal. Would I even write it in C++? What dev environment would it be written in? Can anyone help me?

Thanks,
- James
[/quote]

Just so you are aware of the volume of work you are embarking on, it's quite similar to buying a car then deciding you want to engineer and replace the drive train on it.

Simple advice, don't.

Share this post


Link to post
Share on other sites
inavat    317
That's very ambitious :)

Device drivers are typically written in C. You're going to want to spend a lot of time learning C quite well, before you even think about writing a device driver.

Regarding what Seraph said...

Don't try to write this driver if you just want to use your joystick. Only embark on this if it's because you want to learn how to write drivers, because you're interested.

Share this post


Link to post
Share on other sites
JamesKershaw    102
Well I'm a computer systems degree student, so learning C and how to program drivers would probably stand me in good stead? Where would I start? Do any of you guys have any decent resources please?

Thanks for your replies,
James

Share this post


Link to post
Share on other sites
Serapth    6671
Well, first off you need [url="http://msdn.microsoft.com/en-us/windows/hardware/gg487428"]the DDK[/url]
Next read and memorize everything [url="http://www.usb.org/developers/hidpage/"]on this site.[/url]
Install and read the source code [url="http://www.redcl0ud.com/xbcd.html"]for this driver[/url]

Then completely give up this folly because of the absolute mountain of work involved.

Share this post


Link to post
Share on other sites
inavat    317
[color=#333333][font=Arial, Helvetica, sans-serif][size=2]You're 5 foot nothin', 100 and nothin', and you have barely a speck of [s]athletic[/s] device driver coding ability. And you hung in there with the best [s]college football players[/s] device driver coders in the land for 2 years. And you're gonna walk outta here with a degree from the [s]University of Notre Dame[/s] whatever school you go to. In this life, you don't have to prove nothin' to nobody but yourself. And after what you've gone through, if you haven't done that by now, it ain't gonna never happen. [/size][/font][/color]
[color=#333333][font=Arial, Helvetica, sans-serif][size=2]
[/size][/font][/color]
[color=#333333][font=Arial, Helvetica, sans-serif][size=2][quote][/size][/font][/color][color=#1C2837][size=2]Well I'm a computer systems degree student, so learning C and how to program drivers would probably stand me in good stead?[/size][/color][color=#333333][font=Arial, Helvetica, sans-serif][size=2][/quote][/size][/font][/color]
[color=#333333][font=Arial, Helvetica, sans-serif][size=2]
[/size][/font][/color]
[color=#333333][font=Arial, Helvetica, sans-serif][size=2]Writing drivers is a very specialized field. I mean it when I say only do it if you're very interested. The vast majority of people with Computer Science degrees have never even seen device driver code, myself included. [/size][/font][/color]

Share this post


Link to post
Share on other sites
JamesKershaw    102
[quote name='A Brain in a Vat' timestamp='1313181688' post='4848408']
[color="#333333"][font="Arial, Helvetica, sans-serif"][size="2"]You're 5 foot nothin', 100 and nothin', and you have barely a speck of [s]athletic[/s] device driver coding ability. And you hung in there with the best [s]college football players[/s] device driver coders in the land for 2 years. And you're gonna walk outta here with a degree from the [s]University of Notre Dame[/s] whatever school you go to. In this life, you don't have to prove nothin' to nobody but yourself. And after what you've gone through, if you haven't done that by now, it ain't gonna never happen. [/size][/font][/color]
[color="#333333"][font="Arial, Helvetica, sans-serif"] [/font][/color]
[color="#333333"][font="Arial, Helvetica, sans-serif"][size="2"][quote][/size][/font][/color][color="#1C2837"][size="2"]Well I'm a computer systems degree student, so learning C and how to program drivers would probably stand me in good stead?[/size][/color][color="#333333"][font="Arial, Helvetica, sans-serif"][size="2"][/quote][/size][/font][/color]
[color="#333333"][font="Arial, Helvetica, sans-serif"] [/font][/color]
[color="#333333"][font="Arial, Helvetica, sans-serif"][size="2"]Writing drivers is a very specialized field. I mean it when I say only do it if you're very interested. The vast majority of people with Computer Science degrees have never even seen device driver code, myself included. [/size][/font][/color]
[/quote]

I don't know what you're getting at. If you're telling me to steer clear of programming device drivers, say it explicity rather than being an asshole, 'cause you're not funny dude.

Share this post


Link to post
Share on other sites
inavat    317
It was a modified quote from the movie Rudy, and was there basically to poke fun at Seraph for dissuading you. In what world could that have been a literal statement directed towards you?

And how exactly was I an asshole? I was telling you the truth. It's hard and requires specialized platform-specific knowledge and techniques that you don't typically learn in the course of a CS degree.

I wasn't telling you to steer clear of programming device drivers. Much the opposite, I was offering support where Serapth was clearly dissuading you.

I'm not your daddy. Make up your own mind, little boy. I was simply taking time out of my busy day to help you know exactly what you're getting into. I guess that's what you get for trying to help someone out.

Share this post


Link to post
Share on other sites
Serapth    6671
For the record, I got the reference and the joke.

Also for the record, I still think it's an idiotic project to embark on and am continuing to try and dissuade you, but like Vat, I'm not your daddy(*).


(*)I think.

Share this post


Link to post
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

Sign in to follow this