Peter Puck has already made bindings for Direct X 8. The site appears to be down at the moment, but if you google for
dx8 "Peter Puck" you can probably find them, I believe these are MingW bindings, but they work fine with cygwin. Contrary to popular belief you can use the COM/C++ bindings. Gcc's default way of doing thunking is different than visual C's, but if you use the compiler option -fvtable-thunks it uses the vtable method. Due to this being a ABI change, you will need to build all your source files with this. This obviously does not fix the name mangling incompatibilities with Visual C, but on a COM interface such as DX, this does not matter. The biggest problem you will have are with DirectShow, and the D3DX libraries. DirectShow (or whatever it is called these days) has a C++ interface to it, and as such will only work with visual C's mangling scheme. So no joy there.. With D3DX, the problem is that the libraries are statically linked, and use Visual C++'s name mangling scheme for most of the internal symbols. This leaves them somewhat useless for any compiler rather than Visual C. There are 2 solutions to this. - don't use them, they are convenient, but not essential to DX programming. - Make a wrapper DLL for them with visual C. I believe someone has already done this to enable them to use the librarys in Borland C. A google search should yield some answers. Cheers, Andy -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/