VOGONS

Common searches


Steam (Valve) using Dosbox for its "id Super Pack"

Topic actions

Reply 140 of 149, by red_avatar

User metadata
Rank Oldbie
Rank
Oldbie

Well it's only activated at 10am on the day of release - by then I already received my mail 😜

If those certain people are so silly as to pay $20 just so they don't have to patience to wait an hour or so ...

Hell, it would cost an extra 6-7 euros here to download the game because 1Gb=1 euro in Belgium.

Reply 141 of 149, by CodeJunkie

User metadata
Rank Newbie
Rank
Newbie
gulikoza wrote:
Actually depends on what you are distributing :happy:. You are free to distribute the sources of your patched dosbox (obviously) […]
Show full quote

Actually depends on what you are distributing 😀. You are free to distribute the sources of your patched dosbox (obviously). You would be free to distribute your proprietary binary DLL (provided you did not include any dosbox headers or link with any other GPL software in the making - kinda hard if you are making a new cpu core, but let's say it works 😁) in a separate package under your license. But the minute you distribute a compiled and linked dosbox executable that has your DLL as a requirement, you are making an extended version of dosbox that is one whole program and has to be GPL. Simply wrapping proprietary code into a DLL does not get you off or everybody would do it. That's why LGPL was invented. (Plain)GPL libraries can only be used in GPL programs!

Now, the license cannot distinguish what was first - your DLL or dosbox, or in this case is dosbox linked to Steam or Steam to dosbox. It only says that "Linking ABC statically or dynamically with other modules is making a combined work based on ABC." So linking with Steam libraries makes that a combined work based on DOSBox and such a GPL work. That's why GPL is sometimes considered a "viral" license - it "infects" everything it touches 😀
To distribute non-free programs with GPL software, "...you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program." This is clearly not the case when a modified dosbox version needs steam.dll to function properly.

Now, there was an interesting post on the steam forums, I thought I'd post it here before it gets lost:

ATimson wrote:

If it's truely a binary wrapper, injected into a compiled EXE and not edited into the source code, then I think the following could be considered as applying:

"In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License."

If it can be unassociated into a binary identical to the unwrapped one, there's a definite argument that the wrapper constitutes a distribution medium.

If this really holds...I don't know 😀

Maybe I'm missing something here, but as long as they distribute their modified DOSbox source code aren't they in the clear? Since you would be able to go in and take out their code and recompile it. Not to mention the games work just fine with the non-modified version of the source. Their proprietary DLLs are the same as Windows or .NET DLLs that have to be linked into an open source Windows application. It looks like getting them to release the modified source like they should is going to be the problem.

Reply 143 of 149, by CodeJunkie

User metadata
Rank Newbie
Rank
Newbie

Does the source include the modifications that Valve made to it to use the steam DLLs? I can't imagine their being much code involved that they would have added to use their own DLL. If all it was doing was loading the DLL and using the DLL to check and see if you are logged into Steam there should not be much code for that. Or at least nothing that would be dangerous to give away.

Reply 144 of 149, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

1. They DON'T distribute their modifications.

2. The GPLv2 license make explicit allowances for linking with DDL's and libraries that are distributed as part of the standard OS (and accompanying utilities).

3. The GPLv2 license says that linking GPL'v2 code with proprietary code (e.i. steam.dll) results in derivative a work that must follow the GPLv2 rules of being free and open, including the source to the steam.dll.

4. One of the goals of GPLv2 is to ensure that free and open code remains free and open. And to make sure improvements to said code is available to all.

It think it is fair to say that you have missed something.

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 145 of 149, by CodeJunkie

User metadata
Rank Newbie
Rank
Newbie
MiniMax wrote:
1. They DON'T distribute their modifications. […]
Show full quote

1. They DON'T distribute their modifications.

2. The GPLv2 license make explicit allowances for linking with DDL's and libraries that are distributed as part of the standard OS (and accompanying utilities).

3. The GPLv2 license says that linking GPL'v2 code with proprietary code (e.i. steam.dll) results in derivative a work that must follow the GPLv2 rules of being free and open, including the source to the steam.dll.

4. One of the goals of GPLv2 is to ensure that free and open code remains free and open. And to make sure improvements to said code is available to all.

It think it is fair to say that you have missed something.

The only part I don't like is #3. If they would release their modified DOSbox code you would think that would suffice. I can see why this GPL stuff it is referred to as a "virus" now...haha.

Then again, I don't see why they tried to do this in the first place considering you can just replace their DOSbox.exe with the stock one and the games work fine. Did they think that the people that would be buying the games would not figure this one out.

Reply 146 of 149, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

Re: 3) That follows standard copyright laws. I can't take one of Frank Herberts books, e.g. Dune, and rewrite it with a female heroine, tweak the ending a bit, and release it as my work.

Re: stock - No, that is not what they thought, but trixing with DOSBox was the only thing they could do.

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 147 of 149, by CodeJunkie

User metadata
Rank Newbie
Rank
Newbie

I understand the whole part of changing some elses work and saying it is yours that makes perfect sense and is morally/ethically wrong in my opinion for someone to try and attempt to do this. I would very much hate it if someone did this with my work.

However, in this case I was suggesting that in order for them to fullfill the GPL license they could simply release their modified DOSBox source code and of course all the other necessary license files and what not. They have obviously not released the modified source which is wrong on their part and have in a round about way claimed that they wrote the code even though they have not, which is wrong as well.

I just don't get the part of them being expected to release the source to their DLL file. I'm sure they do not want people to know the ins and outs of steam and the protocols they use. I understand the GPL license says they "have" to, but something just seems wrong about that as well. (one reason why I stay away from open-source development, not that it is bad, but it can make life hell if you are trying to project your intellectual property) But, then again Valve should have done their homework on such matters before trying to implement this in the way that it was done.

Reply 148 of 149, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

Look at it this way: id had these games laying on a shelve somewhere, unable to sell them because they didn't work on modern OS'es. Along comes this free, open software called DOSBox, and suddenly those long dead programs gets a new shelve life. Who should benefit from this? id+Valve only? DOSBox only? Or both parties?

Valve could have approached the DOSBox folk and negotiated a license that allowed them to link DOSBox with their checking code. I have no idea what such a deal would have costs them, or if it could have been made at all.

Instead the GPL at least tries to guarantee that the DOSBox people get something for their work: Access to part of Valve's source code.

And - GPL doesn't really make it difficult to protect your IP. You are entirely free to use it GPL'ed tools in your development process. You are even free to use the GPL'ed code for internal test and production use. You can treat and process customer data with it - as long as you/your company is doing the processing. But you CAN NOT license your product and its share of GPL'ed code to a 3rd party under a non-GPL license.

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 149 of 149, by CodeJunkie

User metadata
Rank Newbie
Rank
Newbie

Oh and I agree, they should have worked out a deal with DOSbox in the first place and/or done what they needed to do in accordance with the GPL, LGPL or FSF whatever the licenses are or maybe even shared some of the profits. That is whole heartedly their fault in the matter.

I guess what my suggestion for Valve would be is to rectify this matter in a way that they do not have to give up their Steam source code and so that DOSBox gets its just recognition while still providing DOS gamers with an opportunity to play these great games, if they don't already own them that is. Or if they cannot, simply refund the users their money and cancel the idea all together.