Wine Developer's Guide


Table of Contents
I. Developing Wine
1. Debugging Wine
1.1. Introduction
1.2. WineDbg's modes of invocation
1.3. Using the Wine Debugger
1.4. Useful memory addresses
1.5. Configuration
1.6. WineDbg Command Reference
1.7. Other debuggers
1.8. Limitations
2. Documenting Wine
2.1. An Overview Of Wine Documentation
2.2. Writing Wine API Documentation
2.3. The Wine DocBook System
3. Submitting Patches
3.1. Patch Format
3.2. Some notes about style
3.3. Quality Assurance
4. Writing Conformance tests
4.1. Introduction
4.2. What to test for?
4.3. Running the tests in Wine
4.4. Building and running the tests on Windows
4.5. Inside a test
4.6. Writing good error messages
4.7. Handling platform issues
5. Internationalization
5.1. Adding New Languages
II. Wine Architecture
6. Overview
6.1. Basic Overview
6.2. Module Overview
6.3. Wine/Windows DLLs
7. Debug Logging
7.1. Debugging classes
7.2. Debugging channels
7.3. Are we debugging?
7.4. Helper functions
7.5. Controlling the debugging output
7.6. Compiling Out Debugging Messages
7.7. A Few Notes on Style
8. COM/OLE in Wine
8.1. Writing OLE Components for Wine
9. Wine and OpenGL
9.1. What is needed to have OpenGL support in Wine
9.2. How to configure
9.3. How it all works
9.4. Known problems - shortcomings
10. Wine and Multimedia
10.1. Overview
10.2. Low level layers
10.3. Mid level drivers (MCI)
10.4. High level layers
10.5. Multimedia configuration
10.6. Multimedia architecture
10.7. MS ACM Dlls
III. Advanced Topics
11. Low-level Implementation
11.1. Undocumented APIs
11.2. Accelerators
11.3. Doing A Hardware Trace
12. Porting Wine to new Platforms
12.1. Porting Wine to new Platforms
13. Consoles in Wine
14. How to do regression testing using CVS
List of Tables
1-1. Debuggers comparison
13-1. Function consoles implementation comparison