Commit Graph

380 Commits

Author SHA1 Message Date
Alexandre Julliard 3c9cf42d00 Removed extra call to TASK_StartTask. 1999-04-18 14:44:26 +00:00
Eric Pouech 85aac70064 Fixed memory freeing. 1999-04-18 13:31:34 +00:00
Alexandre Julliard db000ee3e8 Fixed toolhelp routines usage in GetModuleFromPath (reported by Bertho
Stultiens).
1999-04-18 13:18:42 +00:00
Bertho Stultiens c1d1cfe976 Reorganization of the loader to correctly load and free libraries and
implementation of load order to load different types of libraries.
1999-04-18 12:14:06 +00:00
Bertho Stultiens cebb2f1157 New files to support load order and partial stubs for elfdlls. 1999-04-18 12:09:21 +00:00
Kevin Holbrook a8f8bef098 Fix ambiguous else warning. 1999-04-18 09:33:20 +00:00
Marcus Meissner d8a8b00ae0 Disable AC bit on receiving alignment exceptions. 1999-04-18 09:22:12 +00:00
Andreas Mohr dca5e56b90 - Implemented proper ("real", compressed) Win16 entry tables.
- Fixed MyAlloc (AKA NE_AllocateSegment).
- Implemented PatchCodeHandle16.
1999-04-16 08:17:17 +00:00
Marcus Meissner f31ec0b08a FreeBSD 3 multithreading final fix. Do not use libc_r, libc is just as
reentrant concerning errno. Revert unneeded FreeBSD hack to
loader/signal.c from last patch.
1999-04-15 16:38:38 +00:00
Ulrich Weigand d1e2239ff0 Bugfix: Always release the Win16Lock in TASK_Reschedule. 1999-04-15 15:30:33 +00:00
Marcus Meissner c26063818f - Started multithreading for FreeBSD (incomplete, but some
applications now at least start up again).
- Use _thread_sys_sigaction/_thread_sys_sigaltstack.
- CR2 on pagefault gets passed in sc_err (some kind of kludge in
  FreeBSD owns fault handling we can use)
1999-04-11 15:20:29 +00:00
Ulrich Weigand 7761cbe0b6 Implemented 'kernel services thread'. 1999-04-11 15:01:20 +00:00
Bertho Stultiens 1b34697ad3 FreeLibrary partial implementation. 1999-04-11 14:52:24 +00:00
Ulrich Weigand 2e658768dc Send USIG_PROCESS_CREATE signal.
Bugfix: GetProcessDword offset -8 should return parent process ID.
1999-04-11 12:06:04 +00:00
Bertho Stultiens c6ba86377e GetModuleFromPath now checks for loaded modules via filenames which
were specified without a path.
1999-04-10 16:47:47 +00:00
Marcus Meissner 574ef76b9f Added some SetLastError()s in GetProcAddress() and LoadLibrary(). 1999-04-03 16:23:47 +00:00
Ove Kaaven 240bdacb8d Made DOSVM_GetTimer survive EAGAIN errors... 1999-04-01 11:53:52 +00:00
Ulrich Weigand e392a0c975 Added USER32.UserSignalProc to Callout table.
Implemented built-in UserSignalProc().
Don't announce Win3.1-style USER handler any more.
1999-04-01 11:44:52 +00:00
Ulrich Weigand 8139c30125 Implemented PROCESS_CallUserSignalProc().
Send USER signals at various appropriate places.
Moved [GS]etProcessDword() to scheduler/process.c.
1999-04-01 11:43:05 +00:00
Marcus Meissner 9c6735e6a2 "foo" was not translated to "foo.so" in elf loader. 1999-04-01 10:09:46 +00:00
Ulrich Weigand 6903156eb5 Allow NULL NE resource handler; call the default handler directly.
Removed WPROCS / Callbacks support for WineLib resource handlers.
1999-04-01 10:08:21 +00:00
Jess Haas 1ff60f3451 Fixed CreateProcessA so it can handle commandlines with arguments and
no .exe.
1999-03-28 15:00:44 +00:00
Jess Haas 0f6efae8bf Fixed GetModuleHandle16. 1999-03-28 14:57:37 +00:00
Marcus Meissner d208d8264a Empty DOSVM_QueueEvent for !MZ_SUPPORTED. 1999-03-28 12:34:25 +00:00
Ulrich Weigand e469a583ca Fixed sequence of DLL_PROCESS_DETACH notification calls.
Moved PE_MODREF flags to WINE_MODREF level.
Better handling of LoadLibraryEx flags.
PE_InitTls() changed to work only on the current thread.
1999-03-27 16:45:57 +00:00
Ulrich Weigand da5779e5bd Allow UserYield16 to be called from 32-bit thread. 1999-03-27 16:10:52 +00:00
Stephane Lussier 35ffc5d8c0 Made the timer code thread safe. 1999-03-25 13:23:26 +00:00
Ove Kaaven 5394258a90 Added infrastructure and definitions for general-purpose event and IRQ
handling for the Wine dos box. Removed the obsolete MZ_Tick. Added
event message loop, message handling, CLI/STI handling, and minimal
PIC support.
1999-03-25 10:53:08 +00:00
Ove Kaaven 9ea09ca866 Added handling of SIGUSR2 for the new event interruption handling,
bumping up the protocol revision. Made some debug messages not be
output when it's not necessary.
1999-03-25 10:52:03 +00:00
Ulrich Weigand 0092390cd6 Bugfix: cope with quoted arguments for CreateProcess(). 1999-03-22 17:47:36 +00:00
Ulrich Weigand 919a8109aa Fixed typo in SizeofResource(). 1999-03-22 17:47:13 +00:00
Andreas Mohr ad2ffe5022 Cosmetics. 1999-03-22 14:52:46 +00:00
Sergey Turchanov 5ffd2df797 Implementation for FreeLibraryAndExitThread.
Made GetBinaryType = GetBinaryTypeA.
1999-03-22 12:35:48 +00:00
Ulrich Weigand 93b23d746d Run Win32 processes in their own threads.
Process exit sequence adapted.
1999-03-22 10:35:44 +00:00
Alexandre Julliard f016752b45 Changed process initialisation to use the new server requests.
Started to move the process init to the right context, not finished yet.
1999-03-21 19:26:25 +00:00
Andreas Mohr 3292030ada Fixed typo. 1999-03-21 08:51:51 +00:00
Marcus Meissner 6b9dd2e098 Lots of warning fixed, one missing WINAPI in ddraw.c added. 1999-03-18 17:39:57 +00:00
Ulrich Weigand 892627b12b Pass CreateProcess() SECURITY_ATTRIBUTES through to PROCESS_Create(). 1999-03-16 16:29:26 +00:00
Ulrich Weigand b211ec4c95 Fix compiler warnings. 1999-03-16 10:39:16 +00:00
Marcus Meissner 7f95bb7f75 Use MESSAGE_RESOURCE_* defines from SDK headers, updated LoadMessage*
code.
1999-03-15 15:13:14 +00:00
Jim Aston 2e1cafa288 Renamed wintypes.h to windef.h. 1999-03-14 16:35:05 +00:00
Theodore S. Hetke 5d1d777e69 Added tracing for delayed imports and removed the fixme. 1999-03-14 15:18:08 +00:00
Uwe Bonnes f59d2f6155 Make GetModuleHandle16 only look for module names, not path names. 1999-03-14 13:44:04 +00:00
Peter Ganten 4e5b11680f Fix CreateProcess to handle lpCommandline better. 1999-03-13 17:05:39 +00:00
Marcus Meissner 1a27fe6b1a Mask out the upper 12 bits from the resourceid, just like win95 does. 1999-03-13 12:49:31 +00:00
Ulrich Weigand 1442253dfa Deleted NE_FreePEResource(). 1999-03-10 14:04:39 +00:00
Ulrich Weigand 1b938b1817 Adapted to cursor/icon handling changes. 1999-03-10 14:03:06 +00:00
Ulrich Weigand 0511282627 Allow accessing both NE and PE resources with both 16- and 32-bit API.
Hook cursor/icon destruction into FreeResource (like Win95).
1999-03-10 14:02:06 +00:00
Ulrich Weigand aa23b0bd63 Bugfix: Allow lpCommandLine == NULL in CreateProcess(). 1999-03-10 13:28:54 +00:00
Juergen Schmied 3de25095ed Fix use of wrong prototype from ntdll.h. 1999-03-09 17:44:58 +00:00
Marcus Meissner de43ef45ec Fixed a lot of warnings using WINE_UNUSED, casts, commenting out and
additional {}. Rewrote GetCreationModeFromSTGM so we don't get
"possible use of uninitialized variable".
1999-02-28 19:56:59 +00:00
Andreas Mohr e518f4743c Added support for quoted file names in CreateProcess(). 1999-02-28 19:28:44 +00:00
Alexandre Julliard 96c08d817c Use server handles directly for Win32 handles. Removed use of K32OBJ. 1999-02-28 13:27:56 +00:00
David Luyer ee517e863e - fixed missing stdlib.h and string.h includes everywhere
- removed a couple of unneeded stdlib.h and stdio.h includes
1999-02-28 12:27:56 +00:00
Alexandre Julliard 8feb3bc177 Process and thread id now use the server-side id instead of an
obfuscated pointer.
1999-02-28 12:25:03 +00:00
Ulrich Weigand f6a9361942 Adapted to CreateProcess changes. 1999-02-28 11:19:10 +00:00
Ulrich Weigand fe14b6603d NE modules adapted to CreateProcess changes.
LoadModule16/LoadLibrary16 reorganization.
1999-02-28 11:17:03 +00:00
Ulrich Weigand 6e0d38603e Process creation sequence reorganized:
- Removed instance data segment for all but NE modules.
- Check binary type in CreateProcess before loading module.
- Unix process creation moved from WinExec to CreateProcess.
- Bugfix: fill in thdb->teb.htask16 member correctly.
1999-02-28 11:14:32 +00:00
Alexandre Julliard a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Pavel Roskin 85f5304fa5 Made message "Resource not found" WARN. 1999-02-25 16:37:46 +00:00
Ulrich Weigand 1d90d69f08 Modified process creation sequence: call PE_CreateModule in the
context of the new process (in TASK_CallToStart).
Changed all PE/Module routines so as to always operate on the current
process; adapted all callers.
1999-02-24 14:27:07 +00:00
Marcus Meissner 219cfd8387 Optimized away more includes, readded some #includes for necessary
prototypes.
1999-02-24 13:05:13 +00:00
Michael Veksler 3fbb8dc829 - Fix headers to include less or smaller header files.
- Fix header and source files to include missing header files to avoid
  warnings and errors.
1999-02-21 18:23:26 +00:00
Marcus Meissner 4ede296356 Change "g" (general regs) into "r" (hardregs) in clone / modify_ldt /
wine_sigaction __PIC__ cases, since "g" will not work with
-fomit-frame-pointer ("g" is referenced using %esp which was
invalidated before). Bug found and (other) fix suggested by
<daniel@mat.utfsm.cl> Daniel Serpell.
1999-02-21 18:18:42 +00:00
Stephane Lussier b50272bd75 Fix problem where you need mouse activity to unlock some 16 bits
thread with multi-threaded apps.
1999-02-21 18:15:26 +00:00
Uwe Bonnes 688221460b Only append .dll if no extension yet. 1999-02-19 15:35:23 +00:00
Marcus Meissner 04c3e1d456 Removed a lot of occurences of windows.h (and added necessary other
includes).
1999-02-19 10:37:02 +00:00
Marcus Meissner 317af320cf Optimized include/*.h: (recursively) include all headers needed by
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.
1999-02-17 13:51:06 +00:00
Joseph Pranevich ebc0e5e0a4 Moved initialization until later. Also moved around code a bit to be
consistant.
1999-02-14 11:15:47 +00:00
Marcus Meissner 9faa7d735a Moved the if1632/signal.c stuff into loader/signal.c, adapted function
pointers for wine_debug and INSTR_EmulateInstruction.
1999-02-13 17:55:17 +00:00
Alexandre Julliard 4b461128d6 Added input queue to server-side console object,
read/write_console_input requests, and use them for
Read/WriteConsoleInput.
1999-01-31 19:04:30 +00:00
Ulrich Weigand 6d76a209db Modify NE_FindTypeSection and NE_FindResourceFromType so as to be
usable by the VERSION code.
1999-01-31 10:13:44 +00:00
Ulrich Weigand 9a61495c8f Added GetResDirEntryA for use by the VERSION code. 1999-01-31 10:13:13 +00:00
Marcus Meissner 03479f8adb Fixed a lot of warnings for possible problems. 1999-01-28 10:06:38 +00:00
Ove Kaaven e257cb5af2 Moved DOS handle allocation slightly, to fix potential memory
leaks and lost handles. Also removed some useless init code.
1999-01-24 19:00:46 +00:00
Andreas Mohr a7894d9311 Implemented Int 0x15/0xc0: BIOS - GET CONFIG and some other BIOS
data.
1999-01-24 09:32:10 +00:00
Andreas Mohr 94e4485bff Implemented WIN16_CallMsgFilter32, WIN16_DispatchMessage32,
DrawAnimatedRects16 (stub), FormatMessage16, WIN16_GetMessage32,
WIN16_PeekMessage32 and WIN16_TranslateMessage32.
1999-01-23 14:15:17 +00:00
Marcus Meissner b12e72d685 DOS programs use handles 0-4 without opening/closing any of those
handles first. Split up Init from AllocDosHandle and call it from
the DOSVM.
1999-01-23 14:01:08 +00:00
Marcus Meissner 688c565880 Fixed accelerator handling. ACCEL16 used internal, ACCEL32 for Win32
API, PE_ACCEL for PE Accelerators. See documentation/accelerators.
1999-01-22 17:09:46 +00:00
Ulrich Weigand 901ca36b19 Allow passing task handles to GetThreadQueue() and SetFastQueue(). 1999-01-20 13:35:34 +00:00
Ulrich Weigand c4137d510a Check module name length in ModuleNext(). 1999-01-20 13:08:23 +00:00
Alexandre Julliard 8da12c43a9 Group commit for recovery after disk crash.
See Changelog for changes WRT release 990110.
1999-01-17 16:55:11 +00:00
Alexandre Julliard 638f169b1e Recovery of release 990110 after disk crash.
See Changelog for changes between 990103 and 990110.
1999-01-17 16:32:32 +00:00
Joseph Pranevich 3aa839f558 Set console video mode when loading DOS app. (Eventually, I want to
mimic Windows 9x's behavior by setting the video mode only when non
INT 21 calls are used to allow for arbitrary-sized consoles).
1999-01-03 16:16:14 +00:00
Alexandre Julliard 0562539d18 Implemented file sharing checks in the server.
Added set file time server request.
Overall clean up of the file handling (DOS device handling is now
broken, should be redone).
1999-01-03 11:55:56 +00:00
Michael Veksler ca1bc866cf Moves more stuff from windows.h.
- include/winuser.h - interface relevant to user32.spec
- include/wine/winuser16.h - the old 16 bit interface (internal use)
- include/winbase.h - some minor updates to keep things coherent.
- Lot of other files made to include wine/winuser16.h, which is no
  longer included from windows.h
1999-01-01 18:57:33 +00:00
Alexandre Julliard 1392658679 Use Win32 file handles instead of Unix ones. 1999-01-01 16:55:02 +00:00
Alexandre Julliard f8e741bcbe Take into account handle inheritance flag. 1999-01-01 16:53:11 +00:00
Alexandre Julliard 55443878fc Removed client-side wait functions; all waiting is now done through
the server.
1998-12-31 15:52:06 +00:00
Alexandre Julliard 338e757d08 Added beginnings of server-side file handling.
Added -debugmsg +server support.
Better server request dumping for varargs requests.
1998-12-27 15:28:54 +00:00
Joseph Pranevich 06591f671f Add support for selection of console mode drivers to use using the
-console option. Currently "tty", "ncurses", and "xterm" are
supported.
Add stubs for resizing the screen on mode changes.
1998-12-25 08:48:56 +00:00
Ove Kaaven b8e7a833c7 Added some new dosmod communication possibilities, including
activating a dosmod-specific setitimer(), and the capture of some
common signals, which is returned to Wine (previously a SIGILL
would just cause a "dosmod sync lost" without explanation, now it
invokes the Wine debugger). Invokes int 08 upon receipt of dosmod
SIGALRM, thus simulating the DOS timer. Made DOS interrupt calls
be reported by -debugmsg +relay instead of -debugmsg +int. And
fixed non-i386 compilation of dosmod. (Anything else?!)
1998-12-24 16:23:01 +00:00
Ulrich Weigand a844189d1a Desktop window queue handling adapted. 1998-12-24 15:17:02 +00:00
Ulrich Weigand ff35e1fb13 Use Callout table instead of direct GetProcAddress.
UserYield moved to USER.
1998-12-24 15:13:54 +00:00
Ulrich Weigand be672fe587 Handle non-hardware X events correctly with native USER
(removed reference to MESSAGEQUEUE from KERNEL code).
Handle Expose events with native USER.
1998-12-24 14:59:53 +00:00
Ulrich Weigand ffa2c6f9ba Reorganized PE module loading to prepare for elf-dll loader.
WINE_MODREF creation moved to one central location.
Bugfix: correctly select native/built-in version if .DLL
extension is missing in LoadLibrary call.
1998-12-18 15:38:15 +00:00
Marcus Meissner ad7538bfc5 Made async IO (SIGIO) stuff from WINSOCK generic useable.
Added async IO support to FILE and CONSOLE objects.
1998-12-14 18:15:10 +00:00
Ove Kaaven 35693719af Moved DPMI wrapper allocation code to dosmem.c to REALLY make the
RMcall shortcuts independent of dosmod. SS had been left out of
the REALMODECALL copy routines for some reason, fixed now. Also
cleaned up a few compiler warnings.
1998-12-14 17:26:04 +00:00
Andreas Mohr 7a6228d1e1 Fixed a bunch of compiler warnings. 1998-12-11 09:16:48 +00:00
Ulrich Weigand 7b57b24fda Adapted to CreateSystemTimer interface change. 1998-12-10 10:47:26 +00:00
Marcus Meissner 658e35be81 Warn if two .exes conflict with each other and the second does not
have relocation records.
1998-12-10 09:53:41 +00:00
Ulrich Weigand 2aad33e032 LoadModule32/WinExec32 should return 16-bit hInstance/hTask. 1998-12-10 08:30:30 +00:00
Marcus Meissner 537772a6bb Enhanced Win32 Console (XTERM)
- inputhandling enhanced (keys and mouseclicks)
- win32 synchronization (partial)
- lots of enhancements to drawing functions
- simple/complex console (simple-stdin/stdout -> complex-xterm).
1998-12-09 16:37:04 +00:00
Marcus Meissner d5e7c7927c Some unnecessary #include and messages removed. 1998-12-09 11:06:00 +00:00
Marcus Meissner 96fc54ba24 Warn about invalid entrypoints (created by viruses) which result in
Wine crashes.
1998-12-08 10:06:59 +00:00
Marcus Meissner 88cb335142 Move TWEAK_Init from USER to GDIInit. 1998-12-08 09:49:45 +00:00
Ove Kaaven 373bd357ae Fixed DPMI_CallRMProc (I think). 1998-12-07 16:10:11 +00:00
Andreas Mohr 26952d7f60 NE_MODULE.stack_size was set to a ridiculously small value of 5.
Windows sets 0x1400 in such cases for programs.
1998-12-07 12:52:23 +00:00
Andreas Mohr a00b49f068 - Several kernel.spec return type mismatch fixes
- [GS]etSelectorBase Win32s offset support by Ulrich Weigand (thanks v.m. !!)
- Move AppToWine/WineToApp macros as W32S_APP2WINE etc. to ldt.h
- LocalNotify() basic support
- Fixes for local heap handling with heap handles created by Virtual*()
1998-12-07 10:48:09 +00:00
Joseph Pranevich 791cd6a342 Added console support. 1998-12-02 19:58:08 +00:00
Huw D M Davies d6a91b7a74 Move OEM resources to the x11drv. 1998-12-02 10:29:04 +00:00
Marcus Meissner 586e46c8f4 Remove unnecessary check for entrypoint address (test binary was
infected by a virus which uses invalid PE loading stuff).
1998-11-26 16:00:26 +00:00
Ulrich Weigand b9eab15d5c Implemented KERNEL.602 and stub for KERNEL.490. 1998-11-26 14:58:11 +00:00
Ulrich Weigand 80a69b6bdf Moved ...Resource16 routines to loader/resource.c.
Implemented accessing PE-file resources with 16-bit resource routines.
1998-11-25 17:58:51 +00:00
Ulrich Weigand 5443a7e658 Implementation of PE->NE resource conversion routines (KERNEL.615-618). 1998-11-25 17:57:26 +00:00
Ulrich Weigand 6529aa7643 Bugfix: Call InitThreadInput in GetFastQueue with correct parameter
for 32-bit queues.
1998-11-24 20:46:36 +00:00
Marcus Meissner 335276ab6b Adjust broken entrypoint addresses. (win98 notepad.exe) 1998-11-24 20:22:53 +00:00
Juergen Schmied d0fc60ad05 Implementation of CreateProcess32W. 1998-11-22 15:46:05 +00:00
Marcus Meissner 0a45ada038 Do not relocate the pointers in the IMAGE_THREAD_LOCAL_STORAGE
directory, for they seem to be relocated by the standard relocating
mechanism. (Explicitly checked one program using it)
1998-11-22 14:11:59 +00:00
Huw D M Davies 9650864743 Takes print spooler functions out of win16drv.
Allows the PostScript driver to go into libwine.
1998-11-22 12:55:24 +00:00
Alexandre Julliard 737fa07db7 Small atom fixes. 1998-11-15 17:29:15 +00:00
Juergen Schmied 65064b9d60 LoadLibraryEx: show a warning when called with unimplemented parm. 1998-11-15 12:15:07 +00:00
Ulrich Weigand afac2e476c Some fixes to Wine startup/termination sequence with native USER.
Do not call built-in USER signal handler when using native USER.
1998-11-14 18:45:25 +00:00
Ulrich Weigand e8b02745e3 Bugfix: really *do* switch to the initial task's stack.
CallLargeStack mechanism re-enabled.
1998-11-08 12:07:36 +00:00
Andreas Mohr 5fa740af1d Unified "No implementation for..." warnings. 1998-11-07 12:35:50 +00:00
Ulrich Weigand 7df1fbb3df Run Winelib applications as 32-bit processes in the initial task.
Simplified/removed several special 'if (__winelib)' cases in
Wine main code obsoleted by that change.
1998-11-01 18:01:53 +00:00
Ulrich Weigand c75d0e16bd Implemented new Wine startup sequence, separating startup into
KERNEL/USER/GDI related parts, allowing native replacement.
Implemented initial 'kernel' task.
1998-11-01 17:59:35 +00:00
Marcus Meissner f63f8bc24b Detection of the end of imports with Characteristics 0 fail for Borland
programs (which seem to have always characteristics 0). Changed to algorithm
to something a bit more intelligent.
1998-11-01 14:48:25 +00:00
Ove Kaaven b247ab3061 Ignores a couple of signals. 1998-11-01 12:52:14 +00:00
Ove Kaaven 7f740cbb04 Indirection for INSTR_EmulateInstruction for use by DOS code.
Added support for a 55Hz system timer, letting DOS apps calibrate
their delay loops and such. Calls INSTR_EmulateInstruction for
instruction emulation (principally I/O port access). Added macro
V86_FLAG.
1998-11-01 12:41:19 +00:00
Stephen Langasek 48325f1f18 Bugfix for fixup_imports: Enable checking for terminating import
struct with Characteristics bitfield set to 0.
1998-10-31 12:10:08 +00:00
Ulrich Weigand 12dc8e7185 Bugfix: memory overwrite bug. 1998-10-27 13:17:43 +00:00
Alexandre Julliard 75796ea8fe Fixed bug in SwitchStackTo. 1998-10-25 08:05:46 +00:00
Ove Kaaven 72b279236e Fixed DOS environment passing. 1998-10-23 16:20:12 +00:00
Ove Kaaven 28c11324b5 First shot at DPMI realmode calls. 1998-10-23 09:50:07 +00:00
Ulrich Weigand ebc543cdb0 Fixed several bugs with DLL initialization. 1998-10-23 09:37:23 +00:00
Marcus Meissner 2958416d83 Take virtual sizes in account for the total vma size. 1998-10-22 15:52:36 +00:00
Ove Kaaven 8163465a49 Added indirection for ctx_debug to the DOS loader, so Winelib works
again.
1998-10-21 17:20:48 +00:00
Alex Korobka 92c8178a00 Added debugging output. 1998-10-18 10:47:03 +00:00
Patrik Stridvall 1e1cf48107 Compile fix for Solaris. 1998-10-17 12:56:00 +00:00
Uwe Bonnes 73d6c134c2 Renamed all LPIMAGE_* types to PIMAGE_*. 1998-10-16 09:30:33 +00:00
Ulrich Weigand a3527cf369 Implemented new PE DLL initalization code, trying to call the
DllEntryPoint routines always in correct order :-)
Bypass snooping when getting data buffer addresses (thunk buffers,
__GP handlers) and for 32-bit routines directly called from 16-bit
(due to stack address size problems).
1998-10-11 19:31:10 +00:00
Ulrich Weigand 2e244c45a3 Implemented CommonUnimpStub, MapHInst(LS|SL)_PN, W32S_BackTo32.
Stub for HouseCleanLogicallyDeadHandles, fixed k32wvsprintfA.
1998-10-11 19:29:22 +00:00
Andreas Mohr e6c12eeb04 Yet another small self-loader fix. 1998-10-11 17:36:46 +00:00
Juergen Schmied c289be71e5 Cosmetics. 1998-10-11 15:44:50 +00:00
Alexander Larsson d235b137a8 GetModuleFileName32A() returns long filename if app sets osversion >=
4.0. Also moved the long filename hackery to GetLongPathName32A() so
it can be used by win32 programs.
1998-10-11 13:59:08 +00:00
Ove Kaaven 7dc3c60658 Moved some system dependencies to loader/dos/dosvm.c. Implemented
environmental argv[0] passing to DOS apps. Added XMS hooks.
1998-10-11 12:15:18 +00:00
Marcus Meissner 8220bc9d7d Generic dynamic dll loader using dl*() API.
Includes: stdcall->cdecl mapping ability, snooping.
(Tested only with glide2x.dll -> libglide2x.so)
1998-10-11 11:10:27 +00:00
Alexandre Julliard c0d52e0688 Initial revision 1998-10-04 18:02:24 +00:00
Alexandre Julliard d30dfd24d6 Release 980927
Sun Sep 27 14:25:38 1998  Petter Reinholdtsen <pere@td.org.uit.no>

	* [files/drive.c]
	Make sure GetDriveType32A() handles param NULL.  Added some
	doc on function.

Sun Sep 27 14:07:26 1998  Huw D M Davies <daviesh@abacus.physics.ox.ac.uk>

	* [controls/edit.c] [windows/win.c]
	Don't call SetWindowLong() in EDIT_WM_NCREATE.
	Fix SetWindowLong(GWL_[EX]STYLE) to work for 16bit windows. Remove
	UpdateWindow() call. 

Sun Sep 27 13:41:22 1998  Alexandre Julliard  <julliard@lrc.epfl.ch>

	* [scheduler/*.c] [server/event.c] [server/mutex.c]
	  [server/semaphore.c]
	Implemented server-side synchronisation objects.

Sun Sep 27 01:13:35 1998  Alex Priem <alexp@sci.kun.nl>

	* [dlls/comctl32/treeview.c] [include/treeview.h] [include/comctl.h]
	Treeview implementation.

	* [dlls/comctl32/trackbar.c] [include/trackbar.h] 
	Trackbar implementation.

Sat Sep 26 20:49:13 1998  Ulrich Weigand <weigand@informatik.uni-erlangen.de>

	* [if1632/thunk.c] [tools/build.c] [win32/kernel32.c]
	Bugfix: several problems with flat thunks fixed.

	* [memory/selector.c]
	Bugfix: IsBad...Ptr16 didn't work for limit_in_pages segments.

	* [scheduler/thread.c]
	Bugfix: CreateThread: Allow id parameter == NULL.

	* [objects/gdiobj.c]
	Bugfix: IsGDIObject: Return correct object type for stock objects.

	* [msdos/dpmi.c]
	Bugfix: fixed typo in INT_DoRealModeInt.

	* [msdos/int21.c]
	Bugfix: int21 READ *must* use WIN16_hread, not _hread16.

	* [if1632/kernel.spec] [if1632/dummy.c] [if1632/thunk.c]
	  [loader/ne/module.c] [scheduler/event.c] [scheduler/synchro.c]
	  [scheduler/thread.c] [win32/kernel32.c] [win32/ordinals.c]
	Added names/stubs for all undocumented KERNEL routines (Win95).
	Added the following undoc. 16-bit equivalents to Win32 routines:
	KERNEL.441-443,449-453,456-462,471-476,479-486,488.
	Added stubs for some other KERNEL routines.

	* [memory/heap.c] [memory/global.c] [include/global.h]
	Implemented Local32... 32-bit local heap routines (KERNEL.208-215, 229).

	* [miscemu/instr.c] [loader/module.c] [include/module.h]
	Implemented __GP fault handling and HasGPHandler (KERNEL.338).

	* [misc/error.c]
	Implemented LogParamErrorRegs (KERNEL.327).

	* [loader/task.c] [include/windows.h]
	Implemented GetCodeInfo (KERNEL.104).

	* [loader/task.c] [scheduler/thread.c] [include/thread.h]
	Implemented [GS]etThreadQueue and [GS]etFastQueue (KERNEL.463/4, 624/5).

	* [if1632/gdi.spec] [objects/dc.c] [objects/dib.c]
	  [objects/bitmap.c] [include/windows.h]
	Bugfix: fixed wrong parameter for CreateDIBSection16.
	Added [GS]etDIBColorTable16, stub for GetBoundsRect16.
	Partially implemented BITMAP_GetObject16 for DIBs.

	* [if1632/gdi.spec] [relay32/gdi32.spec] [objects/palette.c]
	Added some GDI stubs.

	* [if1632/Makefile.in] [if1632/display.spec] [if1632/mouse.spec]
	  [if1632/keyboard.spec] [if1632/builtin.c] [windows/keyboard.c]
	Added some stubs for Win16 drivers: KEYBOARD, MOUSE, DISPLAY.

	* [if1632/wprocs.spec] [msdos/vxd.c]
	Added some stubs for VxDs: VMM, ConfigMG, TimerAPI.

	* [msdos/int2f.c]
	Added some stubs for real-mode network drivers.

Sat Sep 26 18:18:18 1998  Marcus Meissner <marcus@jet.franken.de>

	* [configure.in]
	Merged in some more of the FreeBSD ports/emulators/wine patches. 
	(Maintainer(s) of this port: You can just submit these
	patches to Alexandre directly.)

	 * [loader/pe_image.c]
	Check filesize of image against size derived from header
	to spot truncated executeables without crashing.

	* [files/directory.c]
	Set envvar "COMSPEC". One win32(!!) program crashes without it.

	* [multimedia/mmio.c]
	Added mmioSetInfo32.

	* [include/file.h]
	Return STD_ERROR_HANDLE for AUX and PRT dos handles.

	* [loader/module.c]
	Handle executeables with spaces in their names a bit better in
	CreateProcess.

	* [relay32/msvfw32.spec][if1632/msvideo.spec][multimedia/msvideo.c][include/vfw.h]
	Started on MS Video support (can load Win32 ICMs).

	* [tools/testrun]
	A bit smarter use of ps.

	* [memory/virtual.c]
	Report PAGE_GUARDed pages as PAGE_PROTECTED (AutoCAD LT R17 fails
	without that check (since Win95 doesn't know about PAGE_GUARD)).

Sat Sep 26 15:04:05 1998  Ove Kaaven <ovek@arcticnet.no>

	* [include/miscemu.h] [if1632/builtin.c] [loader/task.c]
	  [miscemu/instr.c] [msdos/dpmi.c] [msdos/int21.c]
	  [msdos/interrupts.c] [windows/user.c]
	INT_[S|G]etHandler was renamed to INT_[S|G]etPMHandler.
	Added handlers to deal with real-mode interrupts; DOS
	programs are now able to hook real-mode interrupts.

	* [loader/dos/module.c] [msdos/dosmem.c] [msdos/int21.c]
	Moved real-mode interrupt table initialization to
	msdos/dosmem.c, and made new V86 tasks get a full copy
	of the existing "system memory" instead of almost empty
	space. Misc fixes.

	* [include/dosexe.h] [loader/dos/module.c] [msdos/dpmi.c]
	  [msdos/int2f.c]
	First shot at letting DOS programs start up DPMI (but DPMI
	is still disabled for DOS programs, for pkunzip's sake).

	* [include/debugger.h] [debugger/break.c] [debugger/dbg.y]
	  [debugger/registers.c] [debugger/memory.c] [debugger/info.c]
	  [loader/dos/dosvm.c]
	First shot at making Wine's debugger work for DOS programs.
	The -debug flag works, as do "nexti" and "stepi".

Sat Sep 26 13:13:13 1998  Juergen Schmied <juergen.schmied@metronet.de>

	* [dlls/shell32/dataobject.c]
	New classes IEnumFORMATETC implemented, IDataObject stubs.
	
	* [dlls/shell32/*.*][relay32/shell32.spec]
	Bugfixes.
	New: ICM_InsertItem(), ILCreateFromPath().
	Implemented: ILCloneFirst().
	Stubs: ILIsEqual(), ILFindChild(), SHLogILFromFSIL(),
	  PathMatchSpec(), PathIsExe().
	Changed: ILGetSize(), _ILIsDesktop(), PathCombine().

	* [include/shlobj.h]
	New SHLGUID's
	New structures: DVTARGETDEVICE32, STGMEDIUM32, FORMATETC32,
	CLIPFORMAT32.
	New interfaces: IEnumFORMATETC, IDataObject, ICommDlgBrowser
	IDockingWindowFrame, IServiceProvider.

	* [dlls/shell32/folders.c]
	Stubs for IShellLink.

	* [loader/resource.c]
	Small fixes.

	* [misc/crtdll.c][relay32/crtdll.spec]
	New __dllonexit().

	* [windows/message.c]
	SendNotifyMessageA, SendMessageCallBack32A half implemented.

	* [controls/edit.c]
	EDIT_WM_SetText set EF_UPDATE flag not for ES_MULTILINE.

	* [files/file.c]
	Handling of fileposition fixed.

Fri Sep 25 18:13:30 1998  Patrik Stridvall <ps@leissner.se>

	* [include/windows.h] [include/wintypes.h]
	  [ole/ole2nls.h] [relay32/kernel32.spec]
	Implemented EnumDateFormats and EnumTimeFormats.
	Only adds US English support.

	* [Makefile.in] [configure.in] 
	  [dlls/Makefile.in] [dlls/psapi/Makefile.in] 
	  [dlls/psapi/psapi_main.c] 
	New files to implement stubs for PSAPI.DLL (NT only).

	* [relay32/Makefile.in] [relay32/builtin32.c] 
	  [relay32/psapi.spec]
	New spec file for PSAPI.DLL (NT only).

	* [scheduler/handle.c]
	HANDLE_GetObjPtr should only interpret the pseudo handles as the
	current thread or the current process if a thread or a process is
	requested.

	* [include/winversion.h] [misc/version.c]
	Adds the global function VERSION_GetVersion() so functions can
	have different behavior depending on the -winver flag.

	* [include/oledlg.h] [ole/oledlg.c]
	Minor fixes. 

	* [windows/winproc.c]
	Minor changes.

	* [include/imm.h] [misc/imm.c]
	Now returns correct values under both Windows 95 and NT 4.0.

Thu Sep 24 22:11:44 1998  Kristian Nielsen  <kristian.nielsen@risoe.dk>

	* [configure.in] [include/acconfig.h] [include/thread.h]
	  [scheduler/sysdeps.c]
	Autoconfig test for non-reentrant libc.

Wed Sep 23 19:52:12 1998  Matthew Becker <mbecker@glasscity.net>

	* [*/*.c]
	Miscellaneous documentation updates and debugging output 
	standardizations.

	* [objects/clipping.c]
	Added ExtSelectClipRgn.

Wed Sep 23 00:03:28 EDT 1998  Pete Ratzlaff <pratzlaff@cfa.harvard.edu>

	* [include/windows.h] [if1632/user.spec] [relay32/user32.spec]
	  [windows/keyboard.c]
	Added, marginally implemented, GetKeyboardLayoutName().
	Only returns US English keyboard name.

Tue Sep 22 16:32:41 1998  Marcel Baur <mbaur@iiic.ethz.ch>

	* [programs/control/*]
	New Winelib application.

Mon Sep 21 00:29:18 1998  Peter Hunnisett <hunnise@nortel.ca>

	* [include/dplay.h][multimedia/dplay.c][ole/compobj.c]
	Added all DirectPlayLobby interfaces and enhanced DirectPlay
	and DirectPlayLobby support. Still not all that much. Useful
	enough if you just need to start a program, don't try any
	real dplay/lobby stuff.

	* [documentation/status/directplay]
	Added a very little bit.

	* [graphics/ddraw.c]
	- Call to SetWindowLong32A wasn't working because there was no
	  memory set aside when the window class was registered.
	- Fixed some xlib reference counting and change the behaviour
	  of DirectDrawSurface3_SetPalette to mimic observed behaviour
	  (palette is associated will all backbuffers)
	- Also stored all palette colour fields and spit back our saved
	  colour fields rather than query X for them.
	- Added plenty of AddRef and Release traces.
	- Added Xlib support for using -desktop option.
	- Fixed Xlib message handling. Messages weren't being passed to
	  the application. Fixes mouse movements in some xlib DDraw games.
	- Added a few stubs.

	* [windows/win.c][include/winerror.h]
	Fixed up some error handling in WIN_SetWindowLong. SetLastError
	wasn't being used. Could cause problems with 0 return codes.
	Added new error in winerror (1400).

	* [AUTHORS] [include/authors.h]
	Added myself as a Wine author.

Sun Sep 20 21:22:44 1998  Alexander Larsson  <alla@lysator.liu.se>

	* [loader/module.c]
	Changed GetModuleFileName32A so that is returns the
	long version of the filename. Note that just the name
	is long, not the directories.

Sat Sep 19 20:05:30 1998 Per Ångström <pang@mind.nu> 

	* [controls/menu.c]
	Made a couple of fixes to make life easier for applications that alter
	their menus at runtime.

	* [windows/defdlg.c]
	Removed the cast of the return value from dialog procedures to a 16-bit
	bool. The return value needs to retain all its 32 bits, since it is not 
	always a bool, such as when responding to the WM_NCHITTEST message.

Fri Sep 18 11:30:38 1998  Sergey Turchanov <turchanov@usa.net>

	* [loader/resource.c]
	Fixed very funny bug (though gravely affecting further excecution)
	with FindResource[Ex]32 functions.

	* [include/multimon.h] [windows/multimon.c] [relay32/user32.spec]
	  [include/windows.h] [windows/sysmetrics.c]
	Default implementation for Multimonitor API.

	* [include/windows.h] [windows/winpos.c]
	Fixed incorrect declaration (and behaviour) of GetWindowRect32.

Wed Sep 16 10:21:15 1998  Gerard Patel <G.Patel@Wanadoo.fr>

	* [controls/edit.c]
	Fixed EDIT_EM_GetLine to use correctly length of lines.

Tue Sep 15 20:40:16 1998  Eric Kohl <ekohl@abo.rhein-zeitung.de>

	* [misc/tweak.c][include/tweak.h][controls/menu.c]
	Replaced the tweak graphic routines by calls to DrawEdge32().

	* [misc/tweak.c][include/tweak.h][documentation/win95look]
	  [wine.ini][*/*]
	Changed "look and feel" selection. Allows Win3.1, Win95 and
	Win98 (no GUI code implemented) look and feel.

	* [dlls/comctl32/header.c][include/header.h][include/commctrl.h]
	Started callback item support and did some minor improvements.

	* [dlls/comctl32/imagelist.c]
	Fixed bug in transparent image display.
	ImageList_GetIcon is still buggy :-(

	* [dlls/comctl32/toolbar.c]
	Fixed button drawing (partial hack).

	* [dlls/comctl32/commctrl.c]
	Fixed MenuHelp().

	* [controls/button.c]
	Added 3d effect for groupbox.

	* [windows/msgbox.c]
	Added font support for message boxes.

	* [windows/nonclient.c]
	Fixed window moving bug.

	* [dlls/comctl32/*.c]
	Various improvements.

	* [dlls/comctl32/listview.c][dlls/comctl32/rebar.c]
	  [include/commctrl.h]
	More messages.

	* [windows/syscolor.c][include/windows.h]
	Introduced new Win98 system colors.

Tue Sep 15 18:29:45 1998 Wesley Filardo <eightknots@aol.com>

	* [files/profile.c]
	Added support in PROFILE_LoadWineIni for -config option

	* [misc/main.c] [include/options.h]
	Added -config option.

Tue Sep 15 18:22:26 1998  Petter Reinholdtsen <pere@td.org.uit.no>

	* [documentation/Makefile.in]
	Make sure directory exists before installing into it.

Tue Sep 15 01:47:33 1998  Pablo Saratxaga <pablo.sarachaga@ping.be>

	* [ole/nls/*] [ole/ole2nls.c] [include/winnls.h]
	Fixed a few errors and completed some NLS files.

Mon Sep 14 01:23:45 1998  Joseph Pranevich <knight@baltimore.wwaves.com>

	* [include/miscemu.h] [msdos/interrupts.c]
	Removed a compilation warning, added INT 25 to the list of interrupts
	callable from DOS applications, added a debug message when unsupported
	interrupts are used.

Sun Sep 13 19:55:22 1998  Lawson Whitney <lawson_whitney@juno.com>

	* [if1632/relay.c]
	CallProcEx32W should not reverse arguments.

Sun Aug 17 21:18:12 1998  Eric Pouech  <eric.pouech@lemel.fr>

	* [multimedia/midi.c] [multimedia/init.c] [multimedia/mmsys.c] 
	  [include/multimedia.h] [include/mmsystem.h] 
	  [multimedia/Makefile.in] [multimedia/midipatch.c]
	  [if1632/multimedia.spec]
	Made MIDI input and output functional on OSS capable systems.

	* [multimedia/timer.c]
	Changes to trigger callbacks at the accurate pace even when
	fake timers are used.
1998-09-27 18:28:36 +00:00