View Single Post
Old 23 May 2016, 01:57   #341
Registered User
Join Date: Jun 2010
Location: USA
Posts: 68
Originally Posted by strim View Post
I like what you did there. But honestly, this OpenPCI release, at this point of time... does not change much for the existing solutions. Of course it is great, if potentially someone decides to create a new PCI bridge (no point in implementing 12th or so PCI API in Amiga land).

However, using binary "backend" drivers is problematic. They are full of bugs. In theory you can write a single driver using OpenPCI API and have it work with G-REX, Mediator, Prometheus etc. But in reality try to write a more complex driver... and you'll discover really, really ugly stuff. In my opinion the next-generation of OpenPCI should completely dump the bugged vendor drivers and reimplement them from scratch. Of course the only vendor that provided documentation was Matay for their Prometheus, but G-REX and Mediator were sufficiently reverse engineered by now. Just 3 cents from someone who did that awful reverse engineering work .

Btw. if you want some examples of breakage in vendor drivers, check out various issues in SonnetAmiga project (which uses Elbox's pci.library) and search forums for threads related to Ratte's OpenPCI Radeon driver.
I didn't start this recently, this is very old code I got permission to open source.

It made a lot of sense to write this so that one driver could work on multiple vendor's hardware and since they were closed, that's how it had to work or else not exist.

I agree with you but you can see why it was done.

If nobody writes open back ends then at least it's one more library that isn't lost completely.
Heiroglyph is offline  
AdSense AdSense  
Page generated in 0.05397 seconds with 9 queries