Hello,
Can anyone point me to documentation/help or tools for disassembling Windows 95 drv and vxd files and/or porting them to wine??
I have a Roland SCP-55 Soundcanvas card (pcmcia ) which is not recognized by linux, and Windows XP ( which I don't like using anyway ) will not recognize the drivers when it prompts for a driver file.
Ideally I'd like to decode the windows drivers to help with developing a pure linux driver.
Barring that, it seems that I should have better luck with wine since it happly emulates and runs win 95 stuff.
However, while I've found plenty in the wine docs about running /porting windows _programs_, almost nothing about what to do with the win 95 *.inf *.drv *.vxd and *.ini that come in the driver package for the pcmcia card.
Thanks for the help, John
Running 2.6.12-gentoo-r6 and Wine-072505 on an IBM T20 Pentium III Thinkpad.
Hi,
On Tue, Aug 09, 2005 at 10:19:24AM -0400, John Shillinglaw wrote:
Hello,
Can anyone point me to documentation/help or tools for disassembling Windows 95 drv and vxd files and/or porting them to wine??
This is a rather totally wrong kind of query, since Wine won't be able to help you at all, since it doesn't support any binary VxDs.
You really want to try ALSA instead, and especially look at http://www.alsa-project.org/alsa-doc/index.php?vendor=vendor-Roland_Edirol#m... which unfortunately doesn't list any SCP-xxx card.
I have a Roland SCP-55 Soundcanvas card (pcmcia ) which is not recognized by linux, and Windows XP ( which I don't like using anyway ) will not recognize the drivers when it prompts for a driver file.
This is an all too common situation...
Ideally I'd like to decode the windows drivers to help with developing a pure linux driver.
Very nice! That's the only really useful solution anyway... Oh, and I'd like to especially encourage you to *not* throw that card away and buy a new one, since Linux *does* need more sound drivers in order to be able to finally support *all* cards on the market.
I've written an ALSA driver for the entirely undocumented Aztech PCI168 card (a low-end, crap card), by spending some weeks reverse-engineering Windows drivers using IDA (Interactive DisAssembler).
(you might want to search the wine-devel archive for recent discussions of IDA, since someone asked about a nice selection of good disassemblers)
However, while I've found plenty in the wine docs about running /porting windows _programs_, almost nothing about what to do with the win 95 *.inf *.drv *.vxd and *.ini that come in the driver package for the pcmcia card.
...since we don't (~= cannot) support that at all. It should be done entirely via Linux kernel driver anyway.
Another idea would be to try and see whether virtual machines such as VMWare can give an insight what the hardware interface looks like.
But, most importantly, you should ask Roland whether they will give you (parts of) the card specs required to be able to write a driver (without laborous reverse-engineering, that is).
And of course you should read all relevant ALSA pages about supporting an undocumented sound card.
And maybe the SCP-55 card is similar to another Roland card supported by ALSA? That could be a start...
Feel free to ask me about further ALSA driver specifics, I may be able to help.
Andreas
On Tuesday 09 August 2005 10:19, John Shillinglaw wrote:
Hello,
Can anyone point me to documentation/help or tools for disassembling Windows 95 drv and vxd files and/or porting them to wine??
I have a Roland SCP-55 Soundcanvas card (pcmcia ) which is not recognized by linux
I'd start by politely asking Roland for the specs. Only if they openly refuse it's time to start working on a linux driver. As far as using wine for the task, I bet you might be better off instead by looking how the ndiswrapper folks have done it for NDIS drivers. Probably there's some wine code that you could snatch to implement something special that the driver needs, but presumably it'll be all rudimentary low-level stuff related to interfacing with the PCMCIA stack and so on, which is not present in wine anyway IIRC.
Disclaimer: I'd start by extending ndiswrapper, but there of course are other ways :)
Cheers, Kuba
Thank you all for your help. I was vaguely aware that wine could not use the 95 drivers for my card, and developing pcmcia-cs / alsa drivers was my goal. Finding accurate, recent win 95 decodeing info/ tools on the net was difficult, and I knew that wine developers face the same problem in developing wine to support apps.
Your help was a good start in my endeavor and thank you again. On Tue, 2005-08-09 at 11:00 -0400, Kuba Ober wrote:
wine-devel@winehq.org
John Shillinglaw wrote:
Thank you all for your help. I was vaguely aware that wine could not use the 95 drivers for my card, and developing pcmcia-cs / alsa drivers was my goal. Finding accurate, recent win 95 decodeing info/ tools on the net was difficult, and I knew that wine developers face the same problem in developing wine to support apps.
FYI, the Win98 DDK is available online (for free) at MSDN somewhere.
Felix
--- John Shillinglaw jshillinglaw@hotpop.com wrote:
Hello,
Can anyone point me to documentation/help or tools for disassembling Windows 95 drv and vxd files and/or porting them to wine??
I have a Roland SCP-55 Soundcanvas card (pcmcia ) which is not recognized by linux, and Windows XP ( which I don't like using anyway ) will not recognize the drivers when it prompts for a driver file.
Ideally I'd like to decode the windows drivers to help with developing a pure linux driver.
Barring that, it seems that I should have better luck with wine since it happly emulates and runs win 95 stuff.
However, while I've found plenty in the wine docs about running /porting windows _programs_, almost nothing about what to do with the win 95 *.inf *.drv *.vxd and *.ini that come in the driver package for the pcmcia card.
Thanks for the help, John
Running 2.6.12-gentoo-r6 and Wine-072505 on an IBM T20 Pentium III Thinkpad.
Hmmm... if you had a .sys file, it would be easy to reverse engineer, since Windows WDM drivers are nicely stacked and it is easy to insert "filter" drivers into the stack, to monitor IRP flow. Tools like usbsnoopy do this for USB drivers, I believe there are similar ones that work for other drivers in general.
I never had a look at how you write VxD's, but there is stuff in the MSDN library (it should be accessible online, look for VDDs in the Windows DDK documentation).
And have a look at whether the ReactOS project supports VxD's.
Good luck, such device drivers are very ugly :-).
Damjan Jovanovic
____________________________________________________ Start your day with Yahoo! - make it your home page http://www.yahoo.com/r/hs