Commit graph

384 commits

Author SHA1 Message Date
Timo Kreuzer
6fa23913f1 [CRT]
Add powf() wrapper

svn path=/trunk/; revision=49153
2010-10-15 12:33:08 +00:00
Pierre Schweitzer
6d0861e9ed [NTOSKRNL]
Implemented IopFetchConfigurationInformation(), IopCreateArcNamesCd(), IopCreateArcNamesDisk(), IopVerifyDiskSignature()
Removed IopApplyRosCdromArcHack(), IopGetDiskInformation(), IopAssignArcNamesToCdrom()
Finally, rewritten IopCreateArcNames()

To make it short, this is the rewrite of ARC names handling in the kernel.
This brings our kernel to a higher state of existence. Indeed, it's leaving NT4 design for a proper NT5.2 design, with less hacks, less ROS specific stuff and such.
This code handles the mount manager we don't have yet.

svn path=/trunk/; revision=49131
2010-10-12 20:29:50 +00:00
Eric Kohl
6df63531e0 Fix build failure from r48863.
svn path=/trunk/; revision=48867
2010-09-25 07:53:07 +00:00
Timo Kreuzer
003e0bb556 [CRT]
- Remove "implementations" of __lc_collate_cp, __lc_handle and __lc_codepage. These are not functions, but varuables, implemented as MSVCRT_*
- add ___lc_codepage_func and ___lc_handle_func taken from wine
- Fix msvcrt spec file
- Fixes compilation with gcc 4.5.1

svn path=/trunk/; revision=48473
2010-08-06 22:42:07 +00:00
Timo Kreuzer
cf02088179 [CRT]
Implement a proper version of _assert. It nows shows a message box with the details and let's the user choose to either abort, debug or ignore the assertion.
See bug 5486, bug 5507, bug 5511

svn path=/trunk/; revision=48432
2010-08-03 16:09:33 +00:00
Timo Kreuzer
0e58e11548 [CRT]
Add logf wrapper

svn path=/trunk/; revision=48271
2010-07-26 01:10:20 +00:00
Amine Khaldi
fbdc7009aa [PSDK]
- Make FORCEINLINE extern (not static)
- Declare WspiapiLegacyFreeAddrInfo, WspiapiLegacyGetAddrInfo and WspiapiLegacyGetNameInfo as static __inline.
[CRT]
- Convert FillBuf to static __inline.
[NTOS]
- Convert MmProtectToPteMask to extern.
- Convert LpcpAllocateFromPortZone to static __inline.

svn path=/trunk/; revision=48239
2010-07-25 01:22:15 +00:00
Timo Kreuzer
f0daba18dd [CRT]
- Add a number of amd64 specific math functions
- add generic c versions of cos and sin
- Remove leading underscores from amd64 symbols

svn path=/trunk/; revision=48161
2010-07-21 16:03:44 +00:00
Timo Kreuzer
0711c75539 [CRT]
- Add amd64 versions of setjmp / longjmp
- Add amd64 versions of chkstk_asm.s, seh.s to libcntpr

svn path=/trunk/; revision=48151
2010-07-21 00:26:51 +00:00
Timo Kreuzer
2faf924bad [CRT]
Move #include <precomp.h> to the top, as precompiled headers must be the first thing that is included or it won't take advantage of being precompiled

svn path=/trunk/; revision=48082
2010-07-16 15:08:03 +00:00
Gabriel Ilardi
386c15f491 Fix build, sorry. Thanks Timo.
svn path=/trunk/; revision=48080
2010-07-16 13:37:29 +00:00
Gabriel Ilardi
f9dc8f0766 [CRT]
Add a debug print to help bugs like 5486.

svn path=/trunk/; revision=48078
2010-07-16 13:00:02 +00:00
Sylvain Petreolle
cbc71e8180 Implement _osplatform
Import _makepath_s and _wmakepath_s from Wine.
Passes msvcrt data and dir tests.

svn path=/trunk/; revision=47999
2010-07-11 16:25:30 +00:00
Aleksey Bragin
bc5435e23f - Fix a typo.
svn path=/trunk/; revision=47991
2010-07-10 21:39:55 +00:00
Sylvain Petreolle
697fc48c13 Sync __crtGetStringTypeW from Wine.
Fixes msvcrt:locale crash.


svn path=/trunk/; revision=47978
2010-07-09 14:33:03 +00:00
Sylvain Petreolle
358331354d [CRT]
-Export memmove_s and memcpy_s
-Implement rnd_s


svn path=/trunk/; revision=47964
2010-07-07 20:05:47 +00:00
Daniel Reimer
d848c9746e Sync most idl files with Wine head. (Samuel Serapion)
Modify shell32 and uuid to work with the new idls.
This will break build till next commit.

svn path=/trunk/; revision=47953
2010-07-05 23:00:19 +00:00
Pierre Schweitzer
22576dee05 [IOEVENT]
Added a library containing GUIDs for PnP notifications

[BUGCODES]
Added missing bugcheck code for PnP manager

[NTOSKRNL]
- Implemented FsRtlNotifyVolumeEvent()
- Implemented IoReportTargetDeviceChange(), IoReportTargetDeviceChangeAsynchronous()
- Craplemented PpSetCustomTargetEvent() to match our actual PnP manager notifications system. This is to be rewritten
- Added support for custom notifications in IopNotifyPlugPlayNotification()
- Added use of FsRtlNotifyVolumeEvent() in RawUserFsCtrl() to notify volume state changes
- Added use of IoEvent library to ntoskrnl

[FASTFAT]
- Added use of FsRtlNotifyVolumeEvent() when successfully mounting a volume

Finally, purpose of that patch is to implement volumes events notifications. Behaviour and implementation is correct till PpSetCustomTargetEvent(). The PnP notifications manager should be rewritten to match Microsoft's one. Furthermore, it appears that in Windows, those notifications are asynchronous.

svn path=/trunk/; revision=47837
2010-06-23 19:37:22 +00:00
Timo Kreuzer
cfb8a35516 [CRT]
- Stubplement _controlfp_s, rand_s
- Implement _invalid_parameter, _get_invalid_parameter_handler, _set_invalid_parameter_handler
- Implement memmove_s, strncpy_s
- sync heap.c with wine
Patch by Samuel Serapion

svn path=/trunk/; revision=47822
2010-06-21 19:57:36 +00:00
Timo Kreuzer
226e9212dd Add missing file
svn path=/trunk/; revision=47771
2010-06-13 01:32:13 +00:00
Timo Kreuzer
ec1169363d [CRT]
- CRT update part 1/x
- sync C++ / exception related CRT code with wine
- add support for non-underscored symbols
- Patch by Samuel Serapion, slightly modified by me

svn path=/trunk/; revision=47770
2010-06-13 01:24:42 +00:00
Michael Martin
f6d5918b31 [crt]
- mbstowcs: Fix incorrect size passed as the second parameter for call to RtlMultiByteToUnicodeN.
Fixes loading assemblies when manifest is in a manifest file due to parsing failure.

svn path=/trunk/; revision=47527
2010-06-02 23:58:28 +00:00
Timo Kreuzer
f0c2cec9d5 [CRT]
- add clang compatible asm version of ldexp and make the code more readable
- constify strndup parameter to match standard
- fix broken pointer comparison in signal()

svn path=/trunk/; revision=47479
2010-05-31 01:50:09 +00:00
Timo Kreuzer
2991d5eb42 [CRT]
- Don't define __int64 for clang (patch by Amine Khaldi)
- Fix file and purpose in the header

svn path=/trunk/; revision=47471
2010-05-30 22:28:00 +00:00
Christoph von Wittich
1d5afb8039 [CRT]
fix behavior of _system (fixes msvcrt environ winetest)

svn path=/trunk/; revision=47403
2010-05-29 09:23:23 +00:00
Timo Kreuzer
794e740131 Merge from amd64 branch:
46478
[CRT]
- define _CRTBLD
- rename float_t/double_t/long_double_t to float_s/double_s/long_double_s to avoid name conflicts

46511
[FREELDR]
snprintf -> _snprintf

46534
[CRT]
- Set crt="static" in freeldr, rtl, bmfs, ftfd, rtl, mini_hal
- define "CRTDLL" in ntdll, crtdll, msvcrt, msvcrt20, msvcrt40

46535
[CRT HEADERS]
- add _mingw_mac.h from ming-w64 and include it into _mingw.h
- Update _CRTIMP definition
- Fix definition of _wctype
- onexit is not _CRTIMP

46537
[MINGW]
Update mingw library to mingw-w64 trunk (mingw-w64-src_20100325)

46538
Apply MSVC compilation fix.

46539
[MINGW]
Apply MSVC compilation fixes

svn path=/trunk/; revision=46597
2010-03-30 13:30:36 +00:00
Timo Kreuzer
b8a5d2b45c [CRT]
- Implement x86 ceilf, floorf, fmodf (taken from mingw-w64)
- Implement cosf, sinf, sqrtf (simply wrappers)
- Fix missing definitions

svn path=/branches/ros-amd64-bringup/; revision=46536
2010-03-28 23:18:31 +00:00
Timo Kreuzer
a26b8712a8 Merge from amd64-branch:
46483 (tkreuzer)
[CRT]
- add _wctype table, it's not identical to _ctype as assumed before
- point _pwctype to _wctype instead of _ctype
- implement __pctype_func and __pwctype_func

46502 (tkreuzer)
[MSVCRT]
- enable exports for __pctype_func, __pwctype_func, _wctype

svn path=/trunk/; revision=46504
2010-03-27 23:01:05 +00:00
Timo Kreuzer
d134d80d0b [CRT]
- add _wctype table, it's not identical to _ctype as assumed before
- point _pwctype to _wctype instead of _ctype
- implement __pctype_func and __pwctype_func

svn path=/branches/ros-amd64-bringup/; revision=46483
2010-03-27 01:14:24 +00:00
Timo Kreuzer
c57a8df416 [CRT]
- define _CRTBLD
- rename float_t/double_t/long_double_t to float_s/double_s/long_double_s to avoid name conflicts

svn path=/branches/ros-amd64-bringup/; revision=46478
2010-03-26 23:41:53 +00:00
Timo Kreuzer
f8b4d53d3c revert r39331
svn path=/branches/ros-amd64-bringup/; revision=46477
2010-03-26 23:39:12 +00:00
Timo Kreuzer
9df4519b79 Merge trunk HEAD (r46369)
(part 6/6)

svn path=/branches/ros-amd64-bringup/; revision=46380
2010-03-24 00:03:54 +00:00
Timo Kreuzer
b751e1e10b [CRT]
Import x87 asm version of pow() from glibc. Replaces our broken implementation, fixing a bunch of winetests (oleaut32 vartest)

svn path=/trunk/; revision=46283
2010-03-20 00:49:30 +00:00
Hervé Poussineau
37d9cf31a4 Fix include directories
svn path=/trunk/; revision=46015
2010-03-08 21:40:29 +00:00
Christoph von Wittich
c666e0e3e7 [MSCTF]
sync msctf to wine 1.1.40

svn path=/trunk/; revision=45982
2010-03-07 09:48:42 +00:00
Christoph von Wittich
2097d927f1 [CRT]
sync fseek with wine 1.1.40 (all msvcrt file tests pass now)

svn path=/trunk/; revision=45952
2010-03-06 15:51:12 +00:00
Christoph von Wittich
dd3fc3f8e7 [CRT]
sync read_i with wine 1.1.40

svn path=/trunk/; revision=45948
2010-03-06 14:53:55 +00:00
Christoph von Wittich
7632ce84a0 [CRT]
add TrailBytes-info for codepage 1361
<david dot hedberg at gmail dot com>

svn path=/trunk/; revision=45946
2010-03-06 14:40:19 +00:00
Daniel Reimer
90ce7d8b37 XML Compliance Patch for the RBUILD Files. By Samuel Serapion
svn path=/trunk/; revision=45631
2010-02-20 12:41:24 +00:00
Timo Kreuzer
2e97a01a5d add setjmp/longjmp to libcntpr, just like in ms sdks
svn path=/trunk/; revision=45522
2010-02-09 02:34:42 +00:00
Timo Kreuzer
eb35955f30 Merge trunk head (r45466)
svn path=/branches/ros-amd64-bringup/; revision=45467
2010-02-06 20:36:45 +00:00
Timo Kreuzer
0e4459beb1 [CRT]
- Remove underscore from _MsgUnimplemented

svn path=/branches/ros-amd64-bringup/; revision=45444
2010-02-06 01:28:58 +00:00
Timo Kreuzer
28c8b7fbec [AMD64]
Switch from underscore prefixed symbols to unprefixed symbols. (MSVC compatibility)

svn path=/branches/ros-amd64-bringup/; revision=45410
2010-02-04 04:58:09 +00:00
Timo Kreuzer
cb076d0fef [CRT]
Add back sin and cos to libcntpr, as they are needed by win32k atm ...

svn path=/branches/ros-amd64-bringup/; revision=45409
2010-02-04 04:45:58 +00:00
Timo Kreuzer
f495eb586a Fix setjmp based on the new syntax
svn path=/branches/ros-amd64-bringup/; revision=45397
2010-02-03 18:47:30 +00:00
Timo Kreuzer
9943d23d5d fix the same typo once more
svn path=/branches/ros-amd64-bringup/; revision=45295
2010-01-28 02:37:28 +00:00
Timo Kreuzer
01afdbbe91 [CRT]
Implement sin() in C. Code is actually 99% identical to cos.
Note: We are using even exponents for sin, too, as this results in higher precision than using uneven exponents.

svn path=/branches/ros-amd64-bringup/; revision=45294
2010-01-28 01:18:12 +00:00
Timo Kreuzer
80be387663 fix a typo
svn path=/branches/ros-amd64-bringup/; revision=45292
2010-01-28 00:59:40 +00:00
Timo Kreuzer
c21ada51d6 [CRT]
- implement generic C version of cos(). On amd64 machines it will compile into very optimized SSE2 code. No need to use assembly.

svn path=/branches/ros-amd64-bringup/; revision=45290
2010-01-27 23:42:34 +00:00
Timo Kreuzer
9c9f4a9fd7 Revert r45245 - r45247
Although the idea of using mingw-w64's routines is good, we can't because it's using x87. We need SSE2.

svn path=/branches/ros-amd64-bringup/; revision=45255
2010-01-25 22:01:02 +00:00