Yabasic binaries?
Moderator: cheriff
Yabasic binaries?
I hope there is someone from Europe that frequently reads this forum. I would like a copy of the Yabasic binary (or binaries) that are only available on the Europe PlayStation2 Demo disk. Please note that honoring this request is *NOT* illegal! These binaries are REQUIRED to be distributed under the terms of the General Public License since they are a derived work of Yabasic (a GPL covered work).
I am looking into what would be involved in porting Yabasic for PS2 to the ps2dev/ps2sdk libaries. While the GPL requires Sony to release the *FULL* source code that make up a GPL derived work, Sony has decided to violate the GPL by re-interrupting what makes up the full source code. The full source code should include the unmodified, modified and added files which are used to create the binary. Sony has decided to leave out the unmodified files from their port of Yabasic v2.66. Since only v2.751 is available on the offical Yabasic website, there is some additional work that is needed to apply their modified files to correctly compile with the newer version. But, they also decided to complettely leave out additional files which make up the binary so the references to libyabasic.c and libyabasic.h in their modified files are, for purposes of a 3th party compiling the program, complettely invalid. I believe that SCEE is complettely aware that they have violated the GPL and provided the little source code they did as a smoke and mirrors attempt to make novices believe they are honoring the GPL. It is also my opinion that SCEE has no intention of EVER honoring the GPL in regards to Yabasic for PS2.
So... I'm looking to gain any information I can from disassembling the Yabasic binaries. I have been unable to find anyone that has posted these binaries online. It might be possible that no one that has a copy of the demo disk is aware of the fact that the binary is covered under the GPL and can be legally redistributed. Or, since the binaries can only be booted from the offical demo disk or via mod-chip, maybe no one thought there was any point in posted the binaries? Either way, I would like to find out how to get hold of the binaries. If your unconfortable with copying the binaries (possibly believing that it is illegal pirating?), but are willing to sell your original demo disk, I would be more than happy to make arrangements to pay a fair fee plus shipping for the demo disk.
Thanks
I am looking into what would be involved in porting Yabasic for PS2 to the ps2dev/ps2sdk libaries. While the GPL requires Sony to release the *FULL* source code that make up a GPL derived work, Sony has decided to violate the GPL by re-interrupting what makes up the full source code. The full source code should include the unmodified, modified and added files which are used to create the binary. Sony has decided to leave out the unmodified files from their port of Yabasic v2.66. Since only v2.751 is available on the offical Yabasic website, there is some additional work that is needed to apply their modified files to correctly compile with the newer version. But, they also decided to complettely leave out additional files which make up the binary so the references to libyabasic.c and libyabasic.h in their modified files are, for purposes of a 3th party compiling the program, complettely invalid. I believe that SCEE is complettely aware that they have violated the GPL and provided the little source code they did as a smoke and mirrors attempt to make novices believe they are honoring the GPL. It is also my opinion that SCEE has no intention of EVER honoring the GPL in regards to Yabasic for PS2.
So... I'm looking to gain any information I can from disassembling the Yabasic binaries. I have been unable to find anyone that has posted these binaries online. It might be possible that no one that has a copy of the demo disk is aware of the fact that the binary is covered under the GPL and can be legally redistributed. Or, since the binaries can only be booted from the offical demo disk or via mod-chip, maybe no one thought there was any point in posted the binaries? Either way, I would like to find out how to get hold of the binaries. If your unconfortable with copying the binaries (possibly believing that it is illegal pirating?), but are willing to sell your original demo disk, I would be more than happy to make arrangements to pay a fair fee plus shipping for the demo disk.
Thanks
I bought two playstation 2 in France, I never got any demo disc which came with yabasic. The first one came with a demo disc containing a demo of a tennis game I forgot the name, and the second was a pack with LOTR DVD and remote control. And I can't find any by my friends... sorry.
pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department.
haha yes yabasic is what got me into ps2dev in the first place. I am a big fan of yabasic and of yabasic.co.uk. porting yabasic was going to be my first project for the real hardware. I know the src is on one of the sony sites but it is well hidden. Instead you can download it http://www.yabasic.co.uk/ps2yabasic.zip
If you read closely at the notes from the SCEE developer he talks of yabasic ported as a library. When i wanted to port yabasic to the ps2 i planned on porting it as a library for ps2lib to allow people to just pump basic code into their project and compile. Yeah pretty wild idea. :lol:
-Good luck!
If you read closely at the notes from the SCEE developer he talks of yabasic ported as a library. When i wanted to port yabasic to the ps2 i planned on porting it as a library for ps2lib to allow people to just pump basic code into their project and compile. Yeah pretty wild idea. :lol:
-Good luck!
-
- Posts: 564
- Joined: Sat Jan 17, 2004 10:22 am
- Location: Sweden
- Contact:
Re: Yabasic binaries?
You need to take some legal classes, and if you ever ever bring up suck crap talk again you will be booted from this forum.fluke wrote:I hope there is someone from Europe that frequently reads this forum. I would like a copy of the Yabasic binary (or binaries) that are only available on the Europe PlayStation2 Demo disk. Please note that honoring this request is *NOT* illegal! These binaries are REQUIRED to be distributed under the terms of the General Public License since they are a derived work of Yabasic (a GPL covered work).
Kung VU
Darren: As mentioned, that code is missing a lot of the yabasic code, which the correct version is not readily available from the main yabasic website.
fluke: Sony seems quite sneaky in how they deal with GPL code in order to avoid giving out PS2 details, and while it can be debated they are being unethical they do not seem to be violating the license, just working around it.
To be specific, the yabasic version is v2.66-5. I have a copy of that sourcecode and but have only taken time to take a casual look at it. The only thing that seems to be missing is the build information for the PS2 (neither ps2 information in makefile nor docs on compiling). Its possible it was environment setup that caused it to build for PS2 though, in which case it's part of the porting to ps2dev issue.
If I don't figure something out soon I'll post the old yabasic source somewhere.
AFAIK the GPL does NOT require the binaries to be freely distributable, only for the source to be distributed to anyone who the binaries are distributed to, under the terms of the GPL. So unless sony has specifically allowed the binaries they have created to be distributed, it should be considered copyright violation and as such I will lock/delete any more requests for the binaires.
fluke: Sony seems quite sneaky in how they deal with GPL code in order to avoid giving out PS2 details, and while it can be debated they are being unethical they do not seem to be violating the license, just working around it.
To be specific, the yabasic version is v2.66-5. I have a copy of that sourcecode and but have only taken time to take a casual look at it. The only thing that seems to be missing is the build information for the PS2 (neither ps2 information in makefile nor docs on compiling). Its possible it was environment setup that caused it to build for PS2 though, in which case it's part of the porting to ps2dev issue.
If I don't figure something out soon I'll post the old yabasic source somewhere.
AFAIK the GPL does NOT require the binaries to be freely distributable, only for the source to be distributed to anyone who the binaries are distributed to, under the terms of the GPL. So unless sony has specifically allowed the binaries they have created to be distributed, it should be considered copyright violation and as such I will lock/delete any more requests for the binaires.
Shoot Pixels Not People!
Makeshift Development
Makeshift Development
Drak's got it right. The GPL does not require a work to be distributed solely because it is GPL. It requires the source to be distributed to anyone who has legally obtained a binary distribution, upon their request.
Since you have not apparently received a legal binary distribution of what you ask for, no one is required to give the source to you. However, if you *do* find someone with the source, they may *choose* to distribute it to you, since it is freely distributable regardless (whomever is in possession of GPL source may do as they please with it, within the constraints of the GPL).
However, the binaries themselves that came from Sony should not be automatically assumed to be distributable. One would have to make their own binaries from GPL source in order to guarantee distribution rights of such binaries.
Since you have not apparently received a legal binary distribution of what you ask for, no one is required to give the source to you. However, if you *do* find someone with the source, they may *choose* to distribute it to you, since it is freely distributable regardless (whomever is in possession of GPL source may do as they please with it, within the constraints of the GPL).
However, the binaries themselves that came from Sony should not be automatically assumed to be distributable. One would have to make their own binaries from GPL source in order to guarantee distribution rights of such binaries.
One more thing,
I do not think the GPL requires that all source be divulged, only GPL'ed and derivatives. If some source files that are not GPL are kept apart by Sony, there is no violation of the GPL. No one is required under the GPL to provide all source that comprises a working product, only those parts that are GPL'ed.
Sony is therefore not violating the GPL. In fact, Sony has been rather exemplary in releasing GPL'ed sources.
I do not think the GPL requires that all source be divulged, only GPL'ed and derivatives. If some source files that are not GPL are kept apart by Sony, there is no violation of the GPL. No one is required under the GPL to provide all source that comprises a working product, only those parts that are GPL'ed.
Sony is therefore not violating the GPL. In fact, Sony has been rather exemplary in releasing GPL'ed sources.
blackdriod: I have taken legal classes and also work with the Free Software Foundation's primary lawyer, Eben Moglen, on investigation GPL violations in the past. Thank you for your warning and your opinion on this issue. I withdraw my request that parts of the disk be copy. Instead, I resubmit my request that someone sell me an original demo disk that contains Yabasic. If this is also a violation of some international law or terms of use of the forum then in that case I would be willing to also publically recall my request to be able to purchase the disk. I hope that you agree that my request for purchase of a disk is at least valid?
drakonite: What would be a sneaky workaround is if libyabasic was part of the bios itself and thus fall under the exception of being part of a major component of the OS. But I highly doubt that this is the case. Even if libyabasic is part of the bios, the libyabasic.h (what the GPL refers to as an "associated interface defination file") is still part of the complete source which Sony failed to provide. If this is a work-around, then they are over doing it to the extend of violation of the GPL.
gorim: I didn't claim that Sony is required to give the source to *me* specifically. What I am claiming is that what Sony appears to be providing as being the source code would not honor the GPL defination of being complette.
The binaries are a translation to machine code of a GPL work. Each author of the source code still retains copyright on the translated work. For example, lets say I write a document in english and state that anyone can redistribute it if the reciever also is given rights to redistribute it. Then lets say you translate the document into spanish. You do not become the sole copyright holder of the work in spanish and while I would also not be the sole copyright holder of the translation, you would still be obligated to honor my terms to gain permission to redistribute the translation. Sony has choosen to redistribute a translation of a work covered by the GPL and must honor the redistribution terms of the GPL in regards to that translation (the binary form).
Feel free to contact the Free Software Foundation if you believe that what I am saying is false.
Lastly, while you do not think the GPL requires that all the source be divulged, what the GPL actually says is:
"For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."
According to the C include statements in what little source code Sony did provide, libyabasic.h is an associated interface definition file of the work and is part of the complete source code. Since libyabasic.h is not provided, what Sony provides via the web would not satify a source code request by someone that has been provided a copy of the binary by SCEE.
While your correct that Sony has no obligations to *me*, I would be interested in hearing if SCEE submits to a request from someone they are obligated too with the same exact source archive they make available on the web.
Since you seem to be located in Japan, is it safe to assume that you also don't have the SCEE demo disk with Yabasic? If you happen to actually be one of the lucky few or have contact with someone that is, would you be kind enough to have them submit a request from the full derived GPL source code that makes up Yabasic for PS2?
Thanks
drakonite: What would be a sneaky workaround is if libyabasic was part of the bios itself and thus fall under the exception of being part of a major component of the OS. But I highly doubt that this is the case. Even if libyabasic is part of the bios, the libyabasic.h (what the GPL refers to as an "associated interface defination file") is still part of the complete source which Sony failed to provide. If this is a work-around, then they are over doing it to the extend of violation of the GPL.
gorim: I didn't claim that Sony is required to give the source to *me* specifically. What I am claiming is that what Sony appears to be providing as being the source code would not honor the GPL defination of being complette.
The binaries are a translation to machine code of a GPL work. Each author of the source code still retains copyright on the translated work. For example, lets say I write a document in english and state that anyone can redistribute it if the reciever also is given rights to redistribute it. Then lets say you translate the document into spanish. You do not become the sole copyright holder of the work in spanish and while I would also not be the sole copyright holder of the translation, you would still be obligated to honor my terms to gain permission to redistribute the translation. Sony has choosen to redistribute a translation of a work covered by the GPL and must honor the redistribution terms of the GPL in regards to that translation (the binary form).
Feel free to contact the Free Software Foundation if you believe that what I am saying is false.
Lastly, while you do not think the GPL requires that all the source be divulged, what the GPL actually says is:
"For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."
According to the C include statements in what little source code Sony did provide, libyabasic.h is an associated interface definition file of the work and is part of the complete source code. Since libyabasic.h is not provided, what Sony provides via the web would not satify a source code request by someone that has been provided a copy of the binary by SCEE.
While your correct that Sony has no obligations to *me*, I would be interested in hearing if SCEE submits to a request from someone they are obligated too with the same exact source archive they make available on the web.
Since you seem to be located in Japan, is it safe to assume that you also don't have the SCEE demo disk with Yabasic? If you happen to actually be one of the lucky few or have contact with someone that is, would you be kind enough to have them submit a request from the full derived GPL source code that makes up Yabasic for PS2?
Thanks
I will stand corrected on this point.fluke wrote: Lastly, while you do not think the GPL requires that all the source be divulged, what the GPL actually says is:
"For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."
It is safe to assume that I don't have anything related to YABASIC. Neither do I know of anyone who might have it, as I am not affiliated with professional game developers who might have it in their library or area of influence, and that includes Sony, so sorry. (I know my location creates obvious questions about my line of work, suffice to say I am merely your average Joe contributor to PS2DEV).fluke wrote: Since you seem to be located in Japan, is it safe to assume that you also don't have the SCEE demo disk with Yabasic?
Thanks
I think in this case we can compare the situation of the PS2Linux RTE, which is clearly required for the GPL'ed linux os to work, but the RTE is clearly itself proprietary. This likely falls under the "interface" exception. Sony even went as far as to distribute the GPL'ed and non-GPL'ed components on separate DVD disks, although that probably was not strictly necessary.fluke wrote:
drakonite: What would be a sneaky workaround is if libyabasic was part of the bios itself and thus fall under the exception of being part of a major component of the OS. But I highly doubt that this is the case. Even if libyabasic is part of the bios, the libyabasic.h (what the GPL refers to as an "associated interface defination file") is still part of the complete source which Sony failed to provide. If this is a work-around, then they are over doing it to the extend of violation of the GPL.
If Sony is still compliant based on the PS2Linux OS and RTE, which has no doubt received MUCH scrutiny (both publicly and most definitely by Sony's own legal team, which will NOT be a slouch), and if YABASIC followed a similar model, the almost certainly you do not have a case against Sony.
I strongly suspect Sony followed the GPL to the letter (lets leave aside any talk of "spirit" of the license, which is irrelevant), and still protected any proprietary information they wanted to keep protected.
The only work the RTE comes in contact with is the Linux kernel which is not strictly under the GPL. If you download a copy of the kernel source and look closely at the "COPYING" file, you will notice that it starts off with an exception which almost no other GPL covered work contains. The Linux kernel contributors accept that anything that links with the kernel via the kernel module API can be provided under a different non-compatible license. The RTE takes advantages of this exception. Also, all the files needed to recompile the kernel for PS2 remain and the kernel binary can be reproduced by any third party that chooses to compile it.
Now, on the other hand, the CLIE development group made changes to a GPL work called POSE (Palm Emulator for Palm OS v3/4). These developers centralized the majority of their changes in a new set of object files that had never existed in the POSE project and refrained from redistributing them. Similar to Yabasic for PS2, recompilation of the binary for the CLIE version of POSE required the files that Sony failed to redistribute. Since POSE has no exception clause, Sony was found to be in violation of the GPL and eventually choose to honor the GPL by releasing the complette source code which allowed for recompilation of the binary.
The Yabasic for PS2 case fits the POSE case more than the Linux PS2 situation. Yabasic for PS2 does not have an exception clause added to the GPL. Also, reproduction of the binary is not possible without the libyabasic.h file which Sony has failed to provide. However, I do not want this to be the huge embarrassment to Sony like occured to encourage Sony to correct their POSE GPL violation.
Now, on the other hand, the CLIE development group made changes to a GPL work called POSE (Palm Emulator for Palm OS v3/4). These developers centralized the majority of their changes in a new set of object files that had never existed in the POSE project and refrained from redistributing them. Similar to Yabasic for PS2, recompilation of the binary for the CLIE version of POSE required the files that Sony failed to redistribute. Since POSE has no exception clause, Sony was found to be in violation of the GPL and eventually choose to honor the GPL by releasing the complette source code which allowed for recompilation of the binary.
The Yabasic for PS2 case fits the POSE case more than the Linux PS2 situation. Yabasic for PS2 does not have an exception clause added to the GPL. Also, reproduction of the binary is not possible without the libyabasic.h file which Sony has failed to provide. However, I do not want this to be the huge embarrassment to Sony like occured to encourage Sony to correct their POSE GPL violation.
Other members of this site have more knowledge than I of the nature of the RTE, but my understanding is that the RTE is not a part of the linux kernel or OS in any way. It does not link with it like a module, and does not act as a "shared" executable. It is a completely separate middle-ware piece that sits between the Kernel and the IOP (I/O processor) of the PS2. The method the kernel uses to communicate with the RTE is as client to server via a RPC call mechanism much in the manner of BIOS calls. As a completely standalone chunk of code, that executes independantly of the kernel, it is intended perhaps to be Sony's way of complying with the GPL without handing over the keys to the system. Based on my reading of the GPL, this would be quite legal.fluke wrote:The only work the RTE comes in contact with is the Linux kernel which is not strictly under the GPL. If you download a copy of the kernel source and look closely at the "COPYING" file, you will notice that it starts off with an exception which almost no other GPL covered work contains. The Linux kernel contributors accept that anything that links with the kernel via the kernel module API can be provided under a different non-compatible license. The RTE takes advantages of this exception. Also, all the files needed to recompile the kernel for PS2 remain and the kernel binary can be reproduced by any third party that chooses to compile it.
Another way to look at it is: if someone writes a GPL'ed client that communicates with a proprietary server, the proprietary server does not automatically become GPL'ed. Sure, the client cannot work without the presence of the server, but they are still separately independant pieces of code, whether or not they operate on the same host or different hosts.
I believe this is the case here for PS2Linux. But then, all we have established then is that the case may not be similar to Yabasic.
Gorim
Well, it's just 3 years since the Yabasic issue was discussed (time flies, guess it's about time to start to feel old).
http://lists.topica.com/lists/ps2dev/re ... &start=775
If you actually bother to look at Yabasic (http://www.yabasic.de/), and more specific, it's license(s), you'll see that it is provided under terms of _either_ the GPL or something called the Artistic License.
Gee, I wonder which path Sony took. And I really don't think they did the "d) make other distribution arrangements with the Copyright Holder.", I mean, then we wouldn't be allowed to get all the SOURCE for FREE.
Now you all go code instead.
http://lists.topica.com/lists/ps2dev/re ... &start=775
If you actually bother to look at Yabasic (http://www.yabasic.de/), and more specific, it's license(s), you'll see that it is provided under terms of _either_ the GPL or something called the Artistic License.
Gee, I wonder which path Sony took. And I really don't think they did the "d) make other distribution arrangements with the Copyright Holder.", I mean, then we wouldn't be allowed to get all the SOURCE for FREE.
Now you all go code instead.
What Sony does that is sneaky is to create an extra layer that sits between the GPL'd code and the hardware so that the GPL'd code only contains information about talking to that layer and not the actual hardware. While this may be sneaky and possibly unethical, the way Sony seems to have handled things is NOT in violation of the license. As Pukko pointed out, yabasic is available under either the GPL or the Artistic License, which means they don't even have to worry about about some of the GPL's problems.fluke wrote:drakonite: What would be a sneaky workaround is if libyabasic was part of the bios itself and thus fall under the exception of being part of a major component of the OS. But I highly doubt that this is the case. Even if libyabasic is part of the bios, the libyabasic.h (what the GPL refers to as an "associated interface defination file") is still part of the complete source which Sony failed to provide. If this is a work-around, then they are over doing it to the extend of violation of the GPL.
You entire argument seems to hinge on your statement that libyabasic.h is not included, however it most definatly IS included. The only thing that seems lacking at all is the build information, which really isn't much of a problem as we'd most likely be replacing all of it anyways.
Save yourself some time, everything you need is in the source and there is nothing you need from their binary.
The workload I have today prevents me from getting to my linux partition to grab the old yabasic source; however either tonight or tomorrow, depending how busy I get, I'll post the yabasic source so that everyone that wants can take a look at it.
Shoot Pixels Not People!
Makeshift Development
Makeshift Development
The key here is the start of that sentence - "For an executable work." The work is NOT an executable, it is a library. Libraries are not executable works, they require some host program to do anything useful. Sony makes available the library code. They are under no obligation to make available the code to a proprietary program using the library unless the library is statically linked into the program.fluke wrote: "For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."