Regarding the tpf.h file, the only thing which is similar to Microsoft files are the enum names.
In particular, we use the same names for the opcodes as those used by Microsoft (even though the identifiers have a different prefix). However, the "dlls/wined3d/shader_sm1.c" file in Wine contains an opcode list for D3D9/SM1 shaders, and uses exactly the same practice of using the Microsoft opcode names with a different namespace. The reason of doing this is that it makes things much clearer, since anyone which is an expert in HLSL shaders or driver development will be able to immediately understand what the code is doing, which would not be the case if we invented random opcode names. The rest of file is written very differently: in particular, Microsoft uses (trivial) accessor macros, while we define unions of structs with bitfields. In addition to avoiding copyright concerns, I believe my approach looks and works better (for instance, IDE autocompletion will give you suggestions). _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev