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
- 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
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
- 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
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
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
- 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
- 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
- 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
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
- 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
- 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
Import x87 asm version of pow() from glibc. Replaces our broken implementation, fixing a bunch of winetests (oleaut32 vartest)
svn path=/trunk/; revision=46283
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
- 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
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