Welcome, Guest. Please login or register.

Author Topic: GPL RTG driver information available  (Read 15826 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
GPL RTG driver information available
« on: May 16, 2016, 01:31:19 AM »
Excuse me for being a bit vague, but I'm trying to avoid the use of a name similar to "P9x" even in passing so that there is zero chance I get slapped with a trademark or copyright dispute.

All current code is based on WinUAE and E-UAE, the rest is from my interpretation of what those were doing. I've never seen an official DDK.

I've worked on an open source RTG driver on and off for a while and lately I'm seeing more people doing the same, which is awesome for the community.

I've just started a git repository for an open DDK for Amiga compatible drivers at https://github.com/jeperk/OpenVideoDDK

It's very early, I've just started getting old info together into the repository and I'm planning to revive my unfinished example OpenPCI Voodoo3 driver as time permits.

Most of it is based on WinUAE, but with hopefully correct translations of the PSSO_ offsets used in WinUAE to actual C structures.

I've also taken the comments in WinUAE and based on the code, written what I think are correct SAS/C style stubs for most functions.

It is not complete by any means, but having the information available can't hurt.

If anyone wants to contribute info or code, feel free to contact me.

Edit: I renamed the project to correct a typo (capital I in Video, thanks polluks), so the URL has changed.

Edit 2: Now under LGPL due to problematic nature of GPL and linking in Amiga-like systems.
« Last Edit: May 17, 2016, 02:43:01 AM by Heiroglyph »
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #1 on: May 16, 2016, 02:22:36 AM »
I'm not sure what can be said about distributing source with no signed NDA. If you don't want people using your ABI, don't release binaries to the public.

I just think it's important to be able to find info on writing drivers for the platform.

Amiga 68k is currently dominated by this API, so that's what I'm trying to give an example of.

Aros 68k can use the .card files by way of the UAE wrapper code Aros includes, so it helps them too.

It's not a new RTG API standard like the Aros CGX RTG, just more information on using the current one most of us have.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #2 on: May 16, 2016, 02:44:10 AM »
I understand that a replacement is highly desirable, this is just the itch I chose to scratch at the moment.

Stay tuned for more GPL code coming for various projects I've been sitting on.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #3 on: May 16, 2016, 05:05:41 AM »
Very nice link. I wasn't aware of that.

Glancing over the source it looks very similar to some I don't have clean enough to release yet, but I'm sure I'll learn a lot from his code. He's good.

His are MIT licensed which is great, but I'm more concerned with people using open source code to their financial advantage without giving back to the community at this point.

If they learn from mine and write their own from scratch, that's wonderful, but if they make changes to my code then I'd like them to release it for the benefit of the community.

If Aros or UAE developers want to relicense some of my (eventual) code then I'll give them permission as long as it's open. They've given me enough over the years that it's the least I can do.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #4 on: May 16, 2016, 03:08:34 PM »
Thomas,

I have the utmost respect for you and your work and I have absolutely no intention of making you mad or arguing with you. In fact, very much the opposite, however, we disagree on this point, so I'd like to make my position clear and discuss rationally.

I'm not patching their code and I'm not using their source.

Because I've never signed a document to receive the DDK, I'm merely a user of their software.

What I'm releasing is merely a piece of non-commercial software that is compatible with their binaries.

I don't believe that the clause you seem to be concerned with applies to this and if it did, I don't believe that it could be legally binding.

This is as clear a case of interoperability as I could think of and that is protected by law in many countries.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #5 on: May 16, 2016, 04:14:32 PM »
Quote from: Kronos;808579
The question is how sure can you be that the source code in UAE at no point contained (disassembled) P96 code.

Given that the author didn't even bother providing a proper copyright header speaks volumes about you being able to make that call.

All this is offcourse legal fineprint in a case that will most likely never see a court day, but it will for ever be unknown wether you are p###ing on the hard work invested in P96, or if those orginal authors are trying to pull a Kruse.....


From what I understand, Brian King (?) had the DDK legally. Possibly other UAE developers as well.

The Picasso96 installer specifically lists UAE as a supported option, so they were aware that it was used in a GPL'ed application and gave support for it.

The question would really come down to "is UAE legally GPL or does UAE break the Picasso DDK license?"

Given that Picasso explicitly lists UAE as an option, that leads me to believe that UAE does not break the Picasso DDK license.

This is based on UAE and uses the same GPL license, so I believe it to be as legal as UAE.

If I had to read between the lines, I'd say that if you make money off of it, they want their cut. UAE and other GPL drivers are not commercial so there is no cut for them to care about.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #6 on: May 16, 2016, 04:56:05 PM »
I would like to make it clear that while I believe I am in the clear legally, if they were still developing and supporting the software I would cut them some slack and not leverage the legal system over courtesy.

By all appearances, they are not a part of the community anymore. At that point, legality is really all that matters IMHO.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #7 on: May 17, 2016, 02:44:03 AM »
I've just changed the license to LGPL at Jason McMullen's suggestion.

There are serious problems with GPL libraries on Amiga-like OSs.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #8 on: May 17, 2016, 03:20:04 PM »
Quote from: wawrzon;808631
mcmullan.. ;) good move. thats at least more convenient in case of aros. openpci might deserve similar treatment. whats jasons involvement, anyway?

btw, the legality of this might still need to be confirmed, imho, before it meets any serious use.


Jason is not involved, just someone I have contact with. I gave him a courtesy call before using some of his nice clean driver code from the saga driver.

I'll reply more when I'm not on mobile.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #9 on: May 17, 2016, 06:27:14 PM »
Say what you will, but Thomas has some very valid points. Those are the questions I'm hoping to get sorted out by doing what I'm doing. He's just not going along with the easy route and is taking a lot of flack for it.

There are multiple people doing exactly the same thing and calling it a driver, whether it is open or closed source and there have been for the last 15 years or so because the community clearly wants these drivers and has no other way to get them.

Like it or not, we're stuck with this ABI (it's not even an API, it's just an undocumented binary interface) at the moment.

Either I will be contacted or I won't. The worst case is that I'm not contacted at all and we carry on with the status quo.

If I am, why weren't all the others?

If I (or we) are contacted, why wait so long and condone its use in GPL'ed UAE by including it in the installer?

Why not accept registrations if you feel that your 20 year old software is still worth something? Care to update it?

I may not be in the right and I may change my mind based on Thomas' statements, those of another user or those of the developers, but these are important questions IMHO.

I just think someone needs to blow on this house of cards and see what happens.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #10 on: May 17, 2016, 08:52:59 PM »
Please guys, refrain from personal insults, this has been a decent discussion I think.

So lets examine the one case I remember and if anyone has more info on the outcome, chime in.

Elbox created a driver by reverse engineering and/or a alleged pirated DDK.
P96 (I can't remember the company name) told them to pay up or stop.
Elbox said no.
?????
You can still buy Elbox Mediators and software.

What became of that?

Here is a link to one of Elbox's public replies: http://anna.amigazeux.org/comments2.php?view=0974382064&category=news&start=101&103

And here is a reply from Tobias Abt of P96 (interestingly complete with a shout-out to Thomas): https://web.archive.org/web/20040704075635/http://www.vgr.com/mediator/pic96-press.txt
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #11 on: May 17, 2016, 09:03:57 PM »
Quote from: Linde;808675
Also, Hieroglyph,

If your code is indeed based on the GPL licensed (Win/)UAE source code, you can't simply re-license it under LGPL without express permission from its contributor(s). I don't know what you think is particularly impractical about the GPL for Amiga, anyway. All you need to do is make sure that the source of any application based on it is available to anyone with a copy of the software.

That's true, I was just contemplating that at lunch.

It was originally GPL, so no problem, then Jason brought up how problematic dynamic linking is with a GPL library and it made a lot of sense so I chose to err on the side of safety.

I will rewrite some of it and contact Toni to see if there is a problem.

My C structs are created by looking at his PSSO_ offsets and their sizes to infer the type (he exclusively uses offsets to make it easier in the emulator) and also looking at how he used them, so although not clean-room, it's not copy paste.

If you notice, the places where we do share stucts are not quite the same either. His have additional data for the emulator to use that are not needed by a native driver.

A lot of the comments and separators are leftovers from converting the PSSO_ definitions to structs as I went.

Many of the defines for values are copy pastes, but given the intent of my code I'd hope he would cut some slack on those. I could retype them with new names if needed, but that seems pedantic considering Jason's very similar MIT licensed one that I'm sure Toni is aware of.

The notes.txt comments are lifted almost verbatim from his cpp file and I wrote the stubs myself. That could still be GPL if needed, it's just documentation.

Edit: Actually based on this new info I found (below), I'm not sure Jason was correct.

Both versions of the GPL have an exception to their copyleft, commonly called the system library exception. If the GPL-incompatible libraries you want to use meet the criteria for a system library, then you don't have to do anything special to use them; the requirement to distribute source code for the whole program does not include those libraries, even if you distribute a linked executable containing them.

The criteria for what counts as a "system library" vary between different versions of the GPL. GPLv3 explicitly defines "System Libraries" in section 1, to exclude it from the definition of "Corresponding Source." GPLv2 says the following, near the end of section 3:

However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

If I don't distribute the OS or use third-party libraries that are non-GPL
and
I don't distribute P96

I think GPL might accomplish exactly what I wanted, preventing closed source derivatives of the work.

LGPL leaves the loophole of putting all the working parts into a separate, closed library.
« Last Edit: May 17, 2016, 09:52:21 PM by Heiroglyph »
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #12 on: May 17, 2016, 10:02:55 PM »
Quote from: wawrzon;808687
great to see you are in good contact with both main m68k maintainers out there. however i recall there is quite a cautiousness about a headers or code that may be questionable on part of aros team, should it be contributed. it needs to be well proven and documented;)


Only because they are easy to get along with.

They're more than welcome to anything I have that they want and think is safe to use. I'll even relicense the parts they want if I have the authority to do so.

Hopefully I can get past the license issue, get my Mediator box up and running yet again and get some code up there.

Every time I open the case the thing breaks.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #13 on: May 17, 2016, 10:57:05 PM »
Quote from: kolla;808696
What was "legal" status of P96 drivers in Amithlon/AmigaOSXL?


Lol, who knows.

If someone told me they stole the CDs I wouldn't be surprised.
 

Offline HeiroglyphTopic starter

  • Hero Member
  • *****
  • Join Date: Jun 2010
  • Posts: 1100
    • Show all replies
Re: GPL RTG driver information available
« Reply #14 on: May 18, 2016, 01:16:33 AM »
Thomas,

If you (or anyone else) have valid contact info for someone who would have authority, please feel free to send my email address to them, or send their address to me.

I'm willing to work with them, but they've simply dropped off the face of the Earth.

I hope that I've made it clear that I'm a reasonable person and won't simply scream at them and spam them, I'm just trying to help the community as a whole.

I'll PM you my contact information just in case.

Thanks