> > > Just out of interest, what card are you reverse engineering? > LynxAES16. I had the same talk to the manufacturer as Marek, so I understand him fully. Talking to them can be somewhat frustrating experience. They didn't give me the specs despite my promise to sign theirs NDA. That was strange, because their web site said they will support any user with unsupported system after signing the NDA. BTW, I discovered this driver should work with any Lynx cards :) appropriate if's are in the code :) > I have a Guillemot Maxi Sound ISIS which I'd be very interested in > finding ALSA drivers for. The card is unsupported, and only has Windows > 98 drivers. I did subscribe to a list involved in working on the driver, > but have lost the relevant URL, and didn't hear any more. As a graduate > of "Electronic Engineering with Music Technology", do you think I could > make any progress myself? Where might I start? To reverse engineer a driver you have to: - know assembly language (however extremely deep knowledge of every instruction is not necessary. It is important to know how the compiler produces machine code - stack frames, basic c instructions, and so on) - know how devices work (e.g. PCI communication) and the mechanisms of operating system (e.g. responding to interrupts, memory management) and common practices used in audio hardware - know how to write drivers in windows - you have to know the API one has to use and interfaces one has to implement to write the driver - know how to write alsa drivers for linux. - have plenty of time :) Automatic decompilation is theoretically impossible in general case (as the algorithm is separated from the data structures), but doable. But keep in mind that disassembling the driver is only the first step. You have to - discover data structures used by the driver - discover function signatures used in the driver - discover proprietary protocol used to driver-device communication - writing the actual linux alsa driver is the smallest part of work comparing to decompilation > > I probably won't find time - I'm driving around a lot for my boss at the > moment, and need to spend time (and money!) working on my car too. The > lack of time and money is also what drives my desire to get the card > working under Linux. You may give yourself a try, I assure you it's an interesting activity :) but time consuming and there is no sure it will end with success. You've been warned :) best regards, Michal Kostrzewa