Anyone have anything to add to this before I send it to wine patches ?
Tom
Wine Status - Known To Dos
Window management
- In Desktop Mode all processes started from one wine invocation should be confined to one desktop window.
- Window management needs proper inter-process handling of activation, focus, repaint.
- Workaround for the "no keyboard without Desktop mode" problem.
National Language Support
- Make sure ASCII functions call the Unicode one and not the other way around.(probably will stay forever.)
- BiDi support (currently in works)
- Add localization to more languages.(probably will stay forever.)
- Add localization to more parts of Wine.(probably will stay forever.)
- Better support of Chinese, Korean, Japanese...(currently in works)
x11drv
- Add support for keyboard layout APIs.
NTDLL
- Finish ntdll/kernel32 separation.
- Implement security APIs and make them use native OS security facilities.
Winsock
- Fix use of direct system calls by Winsock 1 (in particular, select()). Use Wine Synchronization APIs instead.
- More unit tests, e.g. for asynchronous IO.
- Make sure OOB data is handled properly.
- WS2: Implement service programming interface (SPI), use for supporting other services.
- Try to provide more services such as IrDA natively.
- Fix stubs left in ws2_32.spec
DirectX
[DirectShow] - Filter manager (IGraphBuilder) - File source filter - Video renderer - Audio renderer - AVI splitter
[DirectDraw] - YUV overlays - Support for FOURCC surface [D3D] - Compressed texture support - Improve Z Buffer support - Multi texturing (and more generally, OpenGL extension handling) - Off screen rendering - Proper color keying - Finish migration of D3D1-7 code to use d3dcore - Add hardware vertex shader and pixel shader support - LOD support - Multisampling (antialising) support - Palette texturing fixes (not really tested) - Swapchain support - Better device management (mainly caps) - index/vertex buffer hardware support - Surface->DC handling - Real Preloading support (using a memory manager) - UpdateTexture/UpdateSurface - various optimisations [DirectSound] - Hardware accelerated direct sound capture driver support using the Windows CE2 HAL API - 3D buffer support in software is present but incomplete. - 3D buffer hardware support - Sound effects on buffers - Capture effects - Full duplex support is stubbed out but not functional. - DX9 support for new PCM formats (24/32 bit and float samples) and for more than 2 channels is not present. [DirectMusic] - DMusicPerformance scanning of files [DirectInput] - Improve DX8 support (especially joystick) [DirectPlay] - Add support for DX8
Sound Drivers
- ALSA driver (on final 0.9 interface)
- Improve the jack audio server, e.g. WaveIn & Resampling.
- Implement the audio compression codecs.
- Fix Sound Blaster emulation.
Video
msrle32 : nearly complete - some improvements possible - ICM_DECOMPRESS_SET_PALETTE (if needed) avifil32: (sorted by decreasing priority) - make the hole library thread save - interface for AVI files: - interleave support - native version has problems with reading our files - interface decompressing video: - interface for WAV files: - Sun Audio still missing. * API for saving: - only (semi-)stubs. * API and interface for editing: - only stubs, need implementation of IAVIEditStream interface * API for clipboard: - only stubs. (native version doesn't work). * API for streaming: - only stubs. (definitions in vfw.h are missing) - translation of resource's to some often used languages: French, ... msvfw32: * DrawDib needs some work - Some flags are ignored - handle palette * stub implementation for file dialogs with AVI preview * stub implementation for codec-selection-dialog * resources are missing (also see the 2 above points) * StretchDib method is missing * many 16-bit methods are missing avicap32: "Video Capture" * only stub DLL.
FreeBSD
- Add support for MZ_SUPPORTED
DOS
- VM86 emulation still has races in irq handling.
- DPMI supports now irqs but still not interrupt reflection.
- Obsolete Win32s VxDs need to be deleted.
- VxD handling should be rewritten so that it no longer uses a separate 16-bit DLL.
- If Win16 program uses real mode code, there are code paths where Wine fails to properly initialize DOS memory.
- DOS memory management code needs restructuring.
- Ioport emulation code should be migrated to winedos.
- VESA emulation is missing many important functions.
- Bitplane VGA modes are totally unsupported.
- Many DOS7 extensions are missing.
- System timer code only supports simple cases.
- DOS4GW does not work.
- NTDLL still has lots of DOS emulation code.
GDI
- DIB engine
GDB
- Add the MSC/PDB info support to gdb
Winedbg
- Make winedbg use dbghelp DLL
- Speed up PDB support
DDE
- Enhance memory management issues (interprocess sending)
OLE
- Handle apartments properly in CoCreateInstance, etc.
- Fix type library support
- Implement ICreateTypeLib support
- Implement Var* (e.g. VarMod) and variant conversion routines
- Implement missing features in OLE*.
Native Programs
- Winhelp: fix invocation thru WinHelp
File Management
- Implement NT file namespace
- UNC support
- Allow flexibility in FS "mounting" (for example, SMB shares)
Fonts
- Support for non-TT fonts (eg Type1, bitmap,....)
- Subpixel rendering - a.k.a. ClearType
- Reduce per font startup time
Printers
- Write a printer configuration applet
Tools
- Wine installation process should install and configure wine
- Perform Windows' reboot operations automatically when required
- Winemaker fixes
- Run C regression tests on Windows with MSVC
- Work on WRC as it does not find system headers
Instructions
- Documentation updates
Aspect or Component
- Review of Wine Server Protocol
- Finalize Server Protocol
- Visual C++'s native COM support
- Create replacement of browser component (Internet Explorer/IExplore)
Porting issues for Mingw/Cygwin/MS_VC
- Better separation of win16/32 code
- Remove/rewrite win16/9x API dependency on newer code
- Remove/rewrite wineisms from code
- Rewrite/fix unixisms in most WINE dlls
- Documentation fixes
Low priority items
- VxD support with dynamic loading
For the full 0.9 Bug List, please see Tasklets
For the full 1.0 Bug List, please see Tasklist