> > Finally someone did the job: Code USB programs with assembly language.
> Well, 170000 lines of Assembly and 5000 of C,

It would interest me where he stated these numbers.

> who will ever be
> able to understand and update that code?

Who will ever be able to understand and update Georg's host driver?  
Certainly not anyone except him, since it's closed source.

> I hope at least Bret still understands it :-).

What's your point? Good code is easier to maintain than bad code, and by  
what I've read from him (I previously looked at some of his other  
programs, before he released the USB stuff) his code is very good,  
commented a lot and easily understood by anyone able to write in that  
programming language.

> I am really curious about performance and compatibility
> comparisons between the Bret Johnson USB drivers and the
> Georg Potthast drivers.

I'm not interested about that. Even if Georg's drivers are faster, I trust  
Bret's work more and think he's faster and better regarding support. What  
do you mean by compatibility?

> If they both give access to the packet layer (the Georg
> Potthast one does, afair) through their APIs in some
> way, it should be possible to write a wrapper: Then you
> could use device drivers made for one of the 2 USB stacks
> with the respectively other USB stack :-).

I would prefer if a single host driver would become a standard - making  
such wrappers, which could potentially cause a lot of bugs, unnecessary.  
By what I've read from Bret's documentation, the wrapper thing might be  
impossible anyway - Bret's host driver is designed for interrupt-driven  
background execution. (Since it's modular too, meaning that the main  
module only contains the host driver, the specific device drivers for  
things such as disks and pen drives have access to the USB packets using  
the API.)

> As said, the FreeDOS OEM edition of the G.P. drivers is
> free for any use with FreeDOS and has public domain device
> drivers but a closed source freeware USB stack,

Last time someone provided a "FreeDOS special licensing" (I'm thinking of  
4DOS) it wasn't really accepted. Why? Because "FreeDOS" seems to imply  
that it can be used on FreeDOS systems only, but not on those running  
MS-/PC-/DR-/EDR-/PTS-/RxDOS instead. (Whether a system is defined by the  
kernel only or by a set of distributed programs doesn't matter in this  
case, it's bad either way.)

> while the
> B.J. drivers are completely "source available" but I could
> not find the license details for that one.

Read the documentation. It doesn't state that it has XYZ's license, but  
the provided explanation clearly states how the programs are meant to be  
used. I'll cite USBINTRO.DOC a bit:

> All of these programs, as well as their documentation and source code,
> are freely available to anyone who wants them.

Should be less difficult to understand.

> You can use the programs
> without restriction, but you cannot directly or indirectly use the
> executable programs, documentation, or source code to create or
> distribute new programs that are not also freely available.

It contains some sort of Copyleft.

> You also
> cannot distribute the programs, documentation, or source code and charge
> (even indirectly) for their distribution.

 From this, and what I've read from Bret elsewhere, it seems that you  
aren't allowed to sell the program/documentation/source itself, but usage  
in a business shouldn't be restricted. (Just ask Bret if in doubt, it's  
his work.)

Note that the cited parts aren't the full license as stated in  
USBINTRO.DOC. There you'll find some more text with clarifications and  
such. Essentially, the license is mostly similar to the GPL [version 2]  
(with emphasis on the mustn't-sell-it-itself point) but MUCH shorter and  
easier to understand.


Freedos-user mailing list

Reply via email to