I would like to get a new MacBook since I need better performance but this will brick my audio interface (Edirol UA-25) which only works with Mojave (at a push).<p>The business of Edirol / Roland is to force new hardware purchases, so they don't want to make any new drivers.<p>This is quite annoying. I hate the idea of unnecessary waste and obsolescence and the hardware is still good.<p>I am daydreaming about having an unofficial driver written for it. Crowdsourced, open-sourced, I don't know... but I just have no idea how complicated or time-consuming this could be and whether it's a stupid idea.<p>Does anyone here have experience of making / updating audio interface drivers? Could anyone say roughly how much work this would be? Hours / weeks / months?<p>I guess it must be fairly difficult otherwise there'd be loads of unofficial drivers out there but I just have no idea...<p>(btw sorry if this is the wrong type of post for HN - I didn't know where else to ask)
Device drivers can be very simple code, but you have to know something about systems programming to write them.<p>(E.g. you might be able to just allocate a buffer, copy data into the buffer, write to an I/O register to start the DMA and it is that many lines of code.)<p>You have to know how the device works. The vendor may or may not have gone out of the way to make it hard to initialize the device to control who can write drivers for it. Also the device could have many modes but you only need to use one which is less work.)<p>So it is high risk. In an easy case with good luck and the right skills an audio driver could be working in a day. In a hard case a professional reversing firm could do it with a $1M budget (think of the people who unlocked a terrorist’s iPhone for the fbi)<p>Other than writing new drivers there are ways to ‘virtualize’ a device driver to get it to run in a different environment, particularly for USB devices. That is, the driver works through an OS interface to send USB packets and you can tap it at this level, see how it works, tunnel the USB data to another OS, etc.
I have no specific knowledge of this but it looks like it is supported by ALSA so you could run Linux to keep it working. <a href="https://alsa.opensrc.org/Edirol_UA-25" rel="nofollow">https://alsa.opensrc.org/Edirol_UA-25</a> but I suspect developing open source drivers for OS X might be a bit more difficult.