/* $Id: ToDO.txt,v 1.19 2001/12/06 13:35:25 phaller Exp $ */

To Do list for ODIN:


Assigned Status Topic -------------------------------------------------------

NOONE           DDRAW/OS2SURFACE::SurfDoBlt (#2703) broken in certain
                circumstances (lpSrcRect or lpDestRect == NULL and
                getting dereferenced -> moorhuhn2.exe)

PH       DONE   Equip HandleManager w/ symbolic links and name mgmt
                functionality (LPTx - \Device\ParallelPortx, etc.)

                Update Mesa to latest stable build (might fix Parsec)

                Eventually start porting over D3D support from WINE

PH       DONE   Implement support for Parallel Port Devices

                Fix wrong reference count after window creation
                (unable to unregister window class)

                Reimplement Global / Local / Heap mgmt

PH       DONE   WSOCK32 calls are not FS: safe (OS2gethostbyname)

PH              Implement WaitForSingleObject() for process handles

NOONE           Implement RegNotifyKeyChange()

PD       DONE   Handle named pipes via HandleManager

MM       DONE   Do COM (serial port) support for ODIN (requires
                pseudo-device in HM)

PH       DONE   Sync SHELL32 with WINE

SvL      DONE   Add HKLM\\SOFTWARE\Microsoft\WINDOWS\CurrentVersion
                Key CommonFilesDir="?:\Program Files\Common Files" for
                TogetherJ installation to the ODIN installer.

PH       DONE   Sync NTDLL with WINE

JW       ----   Put in correct FS:-wrappers in CRTDLL and MSVCRT

JW              Improve CRTDLL and MSVCRT as this is one major show stopper 
                currently

SvL      ----   Remove GPI32 calls from the original FS: macros and replace
                them with ODINFUNCTION wrappers. Internally call to ODIN_xxx
                GPI functions to get much better performance.

SvL             WINMM: wave recording (test & finish)

SvL             USER32/GDI32: Use unicode codepages and update control code

NOONE           long2ShortName in kernel32\oslibdos.cpp

NOONE           FindFirstFileA -> use 64 bits OS/2 api

NOONE           Out of process COM objects (OLE). Important because new
                InstallShield installers use this feature!

NOONE           WINSPOOL: Implement remaining apis and complete existing
                          The Win32 printer api resembles the PM spool API quite a lot!

NOONE           KERNEL32: Build fake PE headers for odin dlls (dll handle must be pointer to header)
                          (some applications use the handles as pointers)
                        (partially done)
                        
NOONE  DONE     USER32: Fix LoadImage to resize icons, cursors or bitmaps
                        to the specified dimensions (if required)

NOONE           WINMM: Rewrite winmm to use driver architecture (port Wine's winmm
                       + integrate current Odin code)

NOONE           WINMM: Fix and finish MIDI in/out (using RTMIDI)

SvL       DONE  KERNEL32: Async file io

SvL       DONE  KERNEL32: Vio support for console applications

NOONE     DONE  WSOCK32: Winsock 2 implementation (WS2_32.DLL, WS2HELP.DLL)

NOONE           GDI32: Rewrite using Gpi api (remove Open32 dependancy)

NOONE           Setup a test /verification plan and freeze some modules such
                as LZ32, VERSION which are considered complete.
                Also ensure the source code is well documented and structured.
