OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Applications => Topic started by: Martin Iturbide on June 09, 2015, 12:03:12 am

Title: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 12:03:12 am
Hi

Checking the IBM DDK license (http://www.os2world.com/wiki/index.php/IBM_OS/2_Products_Licensing_Analysis#IBM_Device_Driver_Kit_-_2004) I can say that:
* The source code of DDK (IBM Code) can not be open sourced.
* DDK Customers can create freeware version (not open source) of the "screen01, kbdbase, clock01" since it is part of the "IBM Code" on those CDs.

So, I will like to know if someone is interested to create/build some "test-beta-AS IS- no support - under your own risk" drivers for "screen01, kbdbase, clock01, print01" and turn them freeware for all use. I want to test a "non-IBM" produced drivers on my experimental VM.

(Maybe it is already done, I know that a freeware print01 is on hobbes)

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Sergey Posokhov on June 09, 2015, 12:46:34 am
OS/4 has its own screen and clock drivers.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 01:57:39 am
Sergey, do the drivers works on eCS / OS/2 Warp 4.5, or only works for OS/4 ?

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: OS4User on June 09, 2015, 08:18:38 am
... do the drivers works on eCS / OS/2 Warp 4.5, or only works for OS/4 ?

Unfortunately they do not since they use extended KEE.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Lars on June 09, 2015, 03:20:30 pm
What's the point in building drivers from the DDK sources and releasing them as freeware ?

1) the drivers already exist and are part of the OS/2 product. Just rebuilding them and declaring them as freeware adds nothing.
2) the DDK sources might be outdated with regards to the binary drivers that come with OS/2. This is even very likely (I am sure this is the case for OS2CDROM.DMD for example).
In other words: you might run into a whole bunch of bugs and problems using these built drivers that where already solved.

The only reason why print01.sys exists on hobbes is because a functional limitiation was removed that existed in print01.sys and people where "desperate" for a fix.
You still run the risk of the DDK code not being up-to-date.

I have already gone through this nightmare for all the USB drivers. You are just opening a can of worms.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 04:35:21 pm
Hi Lars.

"You are just opening a can of worms." I have hear that comment lately too much :)
It is kind of strange that people don't want to talk about some things in public, or just quickly dismiss all ideas.... it is like someone is whispering at the community ears individually. Is someone else calling you on the background like it is happening to me?

Quote
What's the point in building drivers from the DDK sources and releasing them as freeware ?
I need to know how far is last source code level that we have for screen01, kbdbase, clock01, print01 compared to the latest version of OS/2 Warp and eComStation, and if it keeps working on our current OS/2 or not.

If IBM did changed to screen01, kbdbase, clock01, print01 and never released the source code on IBM DDK, that binary software is abandoned without possibilities to be improved. We need to grab the latest source code for "screen01, kbdbase, clock01, print01" and make it up to date and possible make a community close source project, just like you are doing with the USB Drivers.

Those drivers are key for the kernel: http://www.edm2.com/index.php/OS/2_Kernel#Files

I like open source and screen01, kbdbase, clock01, print01 are not and can not be. We have the source code form IBM but it is under the DDK license, so freeware version of this products can be legally released and use as an alternative since we can not open source it.

If someone wants to help me on this experiment is welcome to contact me or discuss on this forum, if not, move on the next thread.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Roderick Klein on June 09, 2015, 05:46:33 pm
Hello Martin,

Right now I can not find your posting back reggarding your question about the DDK license.
I did recently ask Steve Levine about the DDK and from he can remember there are no less stricter DDK licenses.
In other words the DDK to his knowlegde never contained language that would allow you to open source the DDK.

If that would have been in the DDK license Timur Tabi would have tried that at the end of the nighties when he still worked IBM. But since it was not possible Timur started the never finished open DDK project.

And yes when you get to hear you are opening a can of worms and you get such a comment for Lars, take it for granted. I consider getting new drivers out from the DDK does not benefit anybody.

It would waste the limited developer resources we have and indeed what I remember the DDK a lot of code is pretty old. So you would bring new binaries in roulation that end users would have to test as developers mostly do not have access to a lot of equipment... And yes you would run the risk with the old DDK code to break things.
From what I remember some of the code is from still from 1992 and 1994.

You know I admire your effort to get things open source but I consider the this discussion not very usefull.
Infact far from...

I think the community is much more in need of new drivers for hardware. The isuee's are certainly not with the drivers you mention! The USB drivers are also hardware related.

I think time would be better spent if people would have looked for example at Multimac.
So far most of the core work done on the mayor open source drivers was done by Steve Levine and David Azariwicz.
And not many other people.

Screen01.sys did not need updating for years. I have never seen screen01 hang on systems since the new ACPI builds from David are around.

If you would look around good you would find updated print01.sys, clock01.sys and kdbbase.sys.
The last driver, why would it need updating.

Again if you want to update these drivers have a reason to. Not just create compiled drivers if the current binaries have not been updated for years. Screen01.sys has not been updated since 2004 or 2005. And Panorama works without any updates...

Roderick Klein
President OS/2 VOICE
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 06:33:44 pm
Roderick, just move the next thread and ignore me if you don't like or support the idea.

Roderick, I'm not saying that IBM DDK can be open source, I'm saying that binaries created with DDK code can be freeeware.

It seems to be a status quo on driver development on the platform that when I ask something related to the IBM DDK, everybody wants to shut me up. I only suggested to built a driver for an experimental use, that's all, but it seems Taboo to a lot of people.

What is going on? Is driver development a secret mystery that is only for the "chosen one" ? Please if you don't support this move to the next thread.

I still need to know if there is interest on someone to built a freeware release of "screen01, kbdbase, clock01, print01".

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Andy Willis on June 09, 2015, 07:32:50 pm
Roderick, just move the next thread and ignore me if you don't like or support the idea.

Roderick, I'm not saying that IBM DDK can be open source, I'm saying that binaries created with DDK code can be freeeware.

It seems to be a status quo on driver development on the platform that when I ask something related to the IBM DDK, everybody wants to shut me up. I only suggested to built a driver for an experimental use, that's all, but it seems Taboo to a lot of people.

What is going on? Is driver development a secret mystery that is only for the "chosen one" ? Please if you don't support this move to the next thread.

I still need to know if there is interest on someone to built a freeware release of "screen01, kbdbase, clock01, print01".

Regards
I think the concern is having old versions floating around with new dates and people trying to use them thinking they are an "update". 
I built print01 with the only change being this line:
#define  IRQ15           48   // MAXimum IRQ number
where it had been 15.  This allowed IRQs greater than 15. 
The others, I suspect, will likely build just as easily but will be old code.  (print01.sys that I have with eCS 2.1 was 10.70 and I think the code in the DDK is at 10.59 - which I am still not certain of).  When the choices are not having print01 work at all or have it backlevelled then you might choose backlevelled.  I think it would be trivial to build these files but seeings they are based on old code I don't think they should be put up for general use to prevent confusion.  Maybe a page here on OS2World with full listing as to what they are and their purpose. 
In fact I just built kbdbase (sbcs, for dbcs the makefile is telling me it doesn't know how to make the ob1 files which I haven't figured out why yet) and clock01.  I can't find screen01 source so far and print01 is on hobbes.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Ian B Manners on June 09, 2015, 07:48:44 pm
HI Martin,

I read Roderick's reply as..

Using the IBM DDK would be introducing old code that is nolonger relevant for todays hardware, from a programmers point of view it would be easier to compile modern code for usage under OS/2, that would also completely remove dependencies on code that is copyright and the licensing required in both legally accessing and using the IBM DDK.

I would be better legally, and very likely from a coding POV to recreate drivers from already open sourced code, or via a clean room method, you at least get rid of any legal problems right from the start and have a driver code base under current control.

I think I see were you are going with this but there is progress being made though slowly with new/updated drivers. Multimac, soon we should see SNAP again, USB drivers, word of possibly upgrading/advancing the USB Audio driver, which I'm very interested in so I
can use my MUSE USB sticks under OS/2 as well. Yes OS/2 lag's with driver development but look at how many people are working on it compared to other operating systems :(

Note, I've never looked at driver development under OS/2 so what I'm saying above could be me just blowing it out be backside,
just what I've picked up and possibly misunderstood in the process.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 09:03:56 pm
Hi Ian.

Sorry, but the discussion is shifting away.  screen01, kbdbase, clock01, print01 are important drivers for the platform. The code may be old on the DDK, but it is the only thing we got. There is no way to port "screen01, kbdbase, clock01, print01" from other platforms like it was network drivers.

Again, this is a experimental stuff on a VM that I'm making, I'm not forcing anybody to accept it or use them. But for the moment I take the following from this discussion:

1) There is a taboo about IBM DDK, everybody is scared about a license of use which nobody read.
2) There is a negative force on this forums when someone talks about device driver development and the IBM DDK.
3) We can make "Close source" collaborative projects on netlabs with IBM DDK code, Lars is doing it.
4) Drivers based on IBM DDK code can be turned into "Freeware", that is demonstrated for years on the OS/2 market and community.

I'm still looking for someone to compile screen01, kbdbase, clock01, print01 and send it over to me to experiment. Those drivers are key for OS.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Roderick Klein on June 09, 2015, 11:01:48 pm
Roderick, just move the next thread and ignore me if you don't like or support the idea.

Roderick, I'm not saying that IBM DDK can be open source, I'm saying that binaries created with DDK code can be freeeware.

It seems to be a status quo on driver development on the platform that when I ask something related to the IBM DDK, everybody wants to shut me up. I only suggested to built a driver for an experimental use, that's all, but it seems Taboo to a lot of people.

What is going on? Is driver development a secret mystery that is only for the "chosen one" ? Please if you don't support this move to the next thread.

I still need to know if there is interest on someone to built a freeware release of "screen01, kbdbase, clock01, print01".

Regards

You are totaly taking what I say out of content. I am just giving you pretty sound technicall advise as to why these old free drivers would not be usefull to the average users.  You can BTW already get updated screen01.sys from SNAP. The last 10 years it needed no updates.

The question is do you have a list of issue's WHAT needs to be fixed on screen01.sys, kbdase, clock01, print01 ?

As I said we have more problems with unsupported hardware then we have in these drivers. It clearly seems almost as a shot in the dark trying to update this old DDK. As I said why not have other people work on Mutlimac to get more NIC drivers ?

Its just a completely bizar priority from my point of view... There is nobody that wants to shut you down. I am just giving some advise and asking some questions to which no serious answer comes back to in my opinion.


Getting more NIC drivers out for OS/2 will most likely do more for OS/2 then fixing these drivers you mentioned.
Look with all my years of work at Mensys it where these drivers you mentioned that actualy gave the least of trouble, or better put no trouble...

Roderick
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 09, 2015, 11:25:39 pm
Roderick.

Change to other thread, discuss your priorities on other thread. This is not a priority, I'm not saying it is. This is my request for an experiment that I'm running that nobody cares and Andy already replied.

Go ahead and move on, enjoy your vacations.

Regards

Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Dave Yeo on June 10, 2015, 02:58:33 am
Martin, I believe you mentioned that you have a copy of the DDK, so why not just compile them yourself? It should just be a matter of setting up the environment and typing nmake. Then you can test them and beat them (preferably on an SMP system) and see if there are differences between the latest and the DDK versions.
If in the future there is a reason to release them to the public then you can but currently I can't see any reason to as they are only useful to someone with an OS/2 install and anyone with an OS/2 install already has access to these drivers as well as newer versions that probably have bug fixes.
You'd also maybe get a better reaction from the community if you started a thread "How to compile screen01" or such and it could be an interesting learning experience.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 10, 2015, 03:25:47 am
Hi Dave

I already got help and Andy sent me the compiled the drivers that I'm going to test happily on my experimental VM. Sadly I do know have the knowledge to do that myself for the moment.

Quote
You'd also maybe get a better reaction from the community if you started a thread "How to compile screen01" or such and it could be an interesting learning experience.
I agree with you on this, but I don't see anything "extreme/intimidating/" on my first post.

What is bursting out my nerves, is that when I ask for something, there are people that do not want to help and just want to discourage you to do anything by saying "it is not a priority" or "why do you want to do that, it is opening a can of worms". Like a told before to everyone, if it does not interest you, if it is not your priority, if you don't have anything to add, you are not forced to reply everything that shows up, just move to the next thread.

It is not like I said on my first post "THIS PROJECT SHOULD BE PRIORITY #1 TO THE COMMUNITY", no. Does it says "I WILL FORCE EVERYONE WITH MY MAGIC POWERS TO USE AN OLDER RELEASE OF THIS DRIVERS" ? no.  :) Let the people have stupid ideas, if you think they are stupid just ignore them, move on and be happy.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Dave Yeo on June 10, 2015, 04:06:17 am

Quote
You'd also maybe get a better reaction from the community if you started a thread "How to compile screen01" or such and it could be an interesting learning experience.
I agree with you on this, but I don't see anything "extreme/intimidating/" on my first post.

I think it was this paragraph, which can be construed that you want to release the old drivers,
Quote
So, I will like to know if someone is interested to create/build some "test-beta-AS IS- no support - under your own risk" drivers for "screen01, kbdbase, clock01, print01" and turn them freeware for all use. I want to test a "non-IBM" produced drivers on my experimental VM.

English is an inaccurate language and it's easy to misconstrue things, in particular the term "freeware" instead of the license allows sharing binaries and I'd like a copy.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 10, 2015, 04:47:17 am

So, I will like to know if someone is interested to create/build some "test-beta-AS IS- no support - under your own risk" drivers for "screen01, kbdbase, clock01, print01" and turn them freeware for all use. I want to test a "non-IBM" produced drivers on my experimental VM.

Sorry, I keep reading my first post and I don't see the "monstrosity" that can be interpreted that I'm going to put a gun on the OS/2 community to use drivers based on old code.

Maybe some people thinks that releasing a driver as a freeware for all use (individual and commercial) is a crime on these days.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Andi B. on June 10, 2015, 11:18:58 am
Although stated above I want to say it in other words - Martin, if you build old code and if you distribute that old code, others will test it too. To some average user it may misleadingly seem your 'old code, newly compiled' version must be better then the 'old dated' (but actually newer code) version he already uses. If it wouldn't be better (fix some problems) there would not has been released a newly version the average user may think. Nowadays we are used to updated all kind of software on our machines and smartphones regularly. Nearly no one ever reads why and what they update. Most users only use the 'latest' version as taught by the whole IT industry since years.

Some average users for sure will use your newly released 'old code'. He may have problems afterwards or not. He may have other seemingly not related strange problems after months of using your 'old code'. He may even had forgotten that he had overwritten the 'old dated but latest code' with a 'new dated but old buggy code' (if he ever had realized what he has done). AND he may call for help fixing his problem. Either on forums or on bugtrackers.

Hope I explained what someone called opening a can of worms (or bugs). So be very careful when you distribute such buggy code. And it is buggy for sure. IBM wouldn't have fixed it afterwards if not.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 10, 2015, 04:08:29 pm
Hi Andi B.

I understood from the first day that there is a risk to have back leveled binaries of this drivers and that was not what I was requesting on the first post. I was asking for something experimental, and not for anybody to use under their freee will.

My issue is that the negativism of important people of the community is scaring/stopping people to assist me on my request for help. Please remember that I also need help like anybody on this community, and having people on my back that see only the negative side of what I post is not helping me.

On this case I thanks Andy for helping on this subject.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Andi B. on June 10, 2015, 04:41:03 pm
Maybe the wording 'and turn them freeware for all use' in -
Quote
to create/build some "test-beta-AS IS- no support - under your own risk" drivers for "screen01, kbdbase, clock01, print01" and turn them freeware for all use
triggers alarm bells in a lot of heads beside mine.

The warning that this 'opens a can of worms' in this context must be an allowed reply without being call negativism and should not scare you IMHO.

Peace :-)
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 10, 2015, 05:34:42 pm
Hi.

I may be over sensitive since on my last experiment (moving the OS/2 paths) the some opinions was to try to stop me and do not waste time on that. And I needed to pull harder until some more people help me out to finish that experiment.

When I dare to post about my next experiment on a VM, that will really freak some out to a higher level. But I need to complete the EDM/2 Components page first (http://www.os2world.com/forum/index.php?topic=742.msg7121#msg7121).

Peace :)
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Roderick Klein on June 10, 2015, 10:17:49 pm
Oke here is a suggestion how you could maybe look if its worthwhile to compile the drivers.

Its a bit if work but if you take all the readme files of all fixpaks from Warp 4 and MCP you might be able to make some list of what fixes where made.

For the person that has a DDK, based on what ever time stamp information you can then see (I do not know how hard it would be), how many potential bugs the new drivers could contain.

Look the idea is nice but compiiling the drivers and releasing them. If you could list the *potential* defects you possibly get that fixed by working on that code that is in the DDK.

Thats why I asked why you select these drivers ? Its a free world. I just have not seen many defects in these drivers that you mention over the years.  But thats just my 1 cent.
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Martin Iturbide on June 10, 2015, 11:15:11 pm
Hi Roderick.

This was an experiment I was doing with OS/2. Thanks for your comments (which now seems more constructive), but this is not a project or a thing will go on production, it is an experiment for my home and nobody wants to know what I'm doing (there is no interest), do not worry, be happy.

Please Roderick,  do not contact me in private to tell me that X or Y effort is a waste of time (In your Humble opinion), I'm not asking you to do it, don't take any of my crazy ideas I post personal. This is my hobbie and I choose how to waste my time.

Regards
Title: Re: IBM DDK Drivers - screen01, kbdbase, clock01, print01
Post by: Roderick Klein on June 10, 2015, 11:43:46 pm
Sorry for the sharp edges on my comment. I just did a pretty extensive posting and some updates how to write device drivers for OS/2. I finaly after Warpstock during my vacation some spare time to sit down. What David Yeo pointed out was in this thread.

http://www.os2world.com/forum/index.php/topic,762.msg7147.html#msg7147
I thought you wanted to release the drivers to the genereal public.  At least that is how I think David also read it.
We are not against plans but you want to discuss them in public I guess for a reason.

Sorry for the sharp edges on my comments in your direction.  Sometimes I am to blund and other cases I use the English language incorrect. Years ago I wrote to somebody " I want to have a little chat with you". I meant that as in Dutch, discuss something briefly. But in proper English it means you wanne say somebody the truth! Anyway my spoken English is a whole lot better then my wirtten English as I make sometimes also my sentences "Dutch-English".