I was just wondering if there is a fairly straightforward way to
convert most Windows drivers to other OSes. I'm guessing they are
mostly x86 bytecode consisting of assembly language IN and OUT
instructions.

Re: converting by Don

Don
Sat Dec 23 16:53:56 CST 2006

Nope, there is no assembler and little in the way of IN and OUT
instructions. With the exception of NDIS miniports (where Linux has an
emulation library) there is no way you can convert the code short of the C
source and a ton of work to use the code.


--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply



<bob@coolgroups.com> wrote in message
news:1166914134.040577.27950@h40g2000cwb.googlegroups.com...
>I was just wondering if there is a fairly straightforward way to
> convert most Windows drivers to other OSes. I'm guessing they are
> mostly x86 bytecode consisting of assembly language IN and OUT
> instructions.
>



Re: converting by Maxim

Maxim
Sat Dec 23 17:52:01 CST 2006

> mostly x86 bytecode consisting of assembly language IN and OUT
> instructions.

No IN and OUT in Windows drivers, "call HAL!WRITE_PORT_UCHAR" is used instead
:-) assembly language is no more used to them anyway.

Conversion is impossible without 100% rewrite, unless the other OS have some
Windows-compatibility layer - FreeBSD and Linux have NDIS, for instance.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com


Re: converting by Tim

Tim
Sun Dec 24 18:58:54 CST 2006

bob@coolgroups.com wrote:
>
>I was just wondering if there is a fairly straightforward way to
>convert most Windows drivers to other OSes. I'm guessing they are
>mostly x86 bytecode consisting of assembly language IN and OUT
>instructions.

With the exception of the VGA-compatible part of graphics chips, PCI
devices virtually never use IN and OUT ports. The address space is way too
limited, and access is significantly slower than memory mapping.
--
Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Re: converting by Maxim

Maxim
Sun Dec 24 21:37:31 CST 2006

> With the exception of the VGA-compatible part of graphics chips, PCI
> devices virtually never use IN and OUT ports. The address space is way too
> limited, and access is significantly slower than memory mapping.

Well, UHCI USB controller is another such exception :-)

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com


Re: converting by soviet_bloke

soviet_bloke
Mon Dec 25 13:10:43 CST 2006

> > With the exception of the VGA-compatible part of graphics chips, PCI
> > devices virtually never use IN and OUT ports. The address space is way too
> > limited, and access is significantly slower than memory mapping.
>
> Well, UHCI USB controller is another such exception :-)

PS/2 kbd and mouse are 2 more examples.....

Anton Bassov

Maxim S. Shatskih wrote:
> > With the exception of the VGA-compatible part of graphics chips, PCI
> > devices virtually never use IN and OUT ports. The address space is way too
> > limited, and access is significantly slower than memory mapping.
>
> Well, UHCI USB controller is another such exception :-)
>
> --
> Maxim Shatskih, Windows DDK MVP
> StorageCraft Corporation
> maxim@storagecraft.com
> http://www.storagecraft.com


Re: converting by Maxim

Maxim
Mon Dec 25 13:36:59 CST 2006

> > Well, UHCI USB controller is another such exception :-)
>
> PS/2 kbd and mouse are 2 more examples.....

They are not PCI.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com