Commit graph

24350 commits

Author SHA1 Message Date
Alex Ionescu 4b795a9e2d - Add "fs" to npfs and msfs.
- Put blue in drivers\setup.
- Re-organize Audio stack in /wdm and /ksfilter directories.

svn path=/trunk/; revision=26252
2007-04-03 14:55:54 +00:00
Alex Ionescu baf845546d - Add missing .rbuild files from last commit.
- Move serial stack to /serial.
- Move parallel stack to /parallel and make room for parport/parclass (NT5+ Parallel stack).

svn path=/trunk/; revision=26251
2007-04-03 14:22:00 +00:00
Alex Ionescu d03eaaa66d - Cleanup /storage directory and prepare for NT5+ Storage Stack and Floppy Port/Class drop.
svn path=/trunk/; revision=26250
2007-04-03 14:14:25 +00:00
Aleksey Bragin 3340addefa - Remove old unused code for sending sense requests.
- Bugfix new sense request code (it was saving a pointer to the wrong SRB).
- Implement requests, which bypass frozen queue. CdRom should now work properly.
- Some very small code reformating.

svn path=/trunk/; revision=26249
2007-04-02 20:24:54 +00:00
Alex Ionescu 05d2982786 - Revert 26244, 26245, 26246, 26247.
- Stop committing on crack.
- Read IRC logs and use your head.
- GCC 3.4.5 is buggy, don't use. Don't break good code to hide compiler bugs.

svn path=/trunk/; revision=26248
2007-04-02 15:08:54 +00:00
Magnus Olsen 3fd4c41408 some gcc 3.4.5 fixed; but not all we need
svn path=/trunk/; revision=26247
2007-04-02 10:32:21 +00:00
Magnus Olsen ceac8e2667 fixing the build for gcc 3.4.5
svn path=/trunk/; revision=26246
2007-04-02 09:48:51 +00:00
Magnus Olsen fbfe1712be fixing the build for gcc 3.4.5
svn path=/trunk/; revision=26245
2007-04-02 09:01:15 +00:00
Magnus Olsen 550b42f6d2 fixing the build for gcc 3.4.5
svn path=/trunk/; revision=26244
2007-04-02 08:58:34 +00:00
Aleksey Bragin cfb33d951a - Revert double spinlock releasing introduced by 26242 (but thanks for fixing DPRINT :) ).
svn path=/trunk/; revision=26243
2007-04-02 08:00:31 +00:00
Dmitry Gorbachev 982ab11661 Do not assume ReleaseSpinLock == LowerIrql.
svn path=/trunk/; revision=26242
2007-04-01 22:04:26 +00:00
Hervé Poussineau 4b824a0114 Take care of ROS_AUTOMAKE variable in rbuild
svn path=/trunk/; revision=26241
2007-04-01 20:47:00 +00:00
Aleksey Bragin f32c6a7cd9 - Add more compile-time checks for KPRCB C vs. asm fields match.
svn path=/trunk/; revision=26240
2007-04-01 19:35:05 +00:00
Aleksey Bragin d860e7b5eb - Rename scsiport-new to scsiport (couldn't do that in the previous commit).
svn path=/trunk/; revision=26239
2007-04-01 19:27:59 +00:00
Aleksey Bragin 4e7b22b216 - Commit "new" storage stack drivers support based on NT4 DDK's sample drivers (with some modifications and a couple of hacks - they are marked with "HACK" keyword in the source code).
- ReactOS boots/works (faster/stabler), VMWare bug is gone.
- Delete the old scsiport, switching to the new scsiport instead.
NOTE(!): Before commenting this commit read license.txt files. If you still want to comment, read license.txt again, it should help.
- Warnings fixes, improvements, etc to the code will come later.

svn path=/trunk/; revision=26238
2007-04-01 19:25:38 +00:00
Magnus Olsen 934ee21b1f this file is auotgenreate sorry, thx alex
svn path=/trunk/; revision=26237
2007-04-01 19:00:29 +00:00
Magnus Olsen 1c0e162f29 some have delete the napi.h I do not known how did that. it break the win32k complete it is a private header file
svn path=/trunk/; revision=26236
2007-04-01 18:48:25 +00:00
Saveliy Tretiakov f18384ae4f Implement UserUnloadKeyboardLayout()
svn path=/trunk/; revision=26234
2007-04-01 17:34:00 +00:00
Saveliy Tretiakov 9e8d69fa5d Implement NtUserUnloadKeyboardLayout()
svn path=/trunk/; revision=26233
2007-04-01 17:30:44 +00:00
Saveliy Tretiakov 36af38d7dd Add missing check
svn path=/trunk/; revision=26232
2007-04-01 17:27:59 +00:00
Saveliy Tretiakov 9a92415ba4 Implement EngUnloadImage
svn path=/trunk/; revision=26231
2007-04-01 17:20:50 +00:00
Saveliy Tretiakov d1004e8c13 Implement EngUnloadImage()
svn path=/trunk/; revision=26230
2007-04-01 17:15:58 +00:00
Saveliy Tretiakov eecef5a1de Implement SystemUnloadGdiDriverInformation
svn path=/trunk/; revision=26229
2007-04-01 17:15:08 +00:00
Saveliy Tretiakov 0048eddd14 Fix build
svn path=/trunk/; revision=26228
2007-04-01 17:14:24 +00:00
Aleksey Bragin b684c23b8e - Remove audit brake / svn:needs-lock property, since these drivers are going to become svn history soon.
svn path=/trunk/; revision=26227
2007-04-01 16:29:16 +00:00
Aleksey Bragin 1d3fb59485 - Move handlers of SRB_FUNCTION_ATTACH and RELEASE to a standalone function, and don't do reference/dereference of the DeviceObject
- Implement RELEASE_QUEUE and FLUSH_QUEUE srb functions
- Turn off DPRINTs, since scsiport seems to finally work (without advanced features, but enough to install and boot using ATAPI and DISK drivers)!

svn path=/trunk/; revision=26226
2007-04-01 12:13:55 +00:00
Aleksey Bragin 01da330bc2 - More DPRINTs added to ease debugging
- Bugfixes: IOCTL_SCSI_GET_CAPABILITIES fixed, setting inquiry operation in CDB fixed, storing information about bus scanning fixed

svn path=/trunk/; revision=26225
2007-04-01 11:17:48 +00:00
KJK::Hyperion 643b171651 !!! ATTENTION EVERYONE - do a make clean after getting this revision !!!
!!! ATTENTION PSEH USERS - new features & a change in rules !!!

modified   include/reactos/libs/pseh/framebased.h
modified   include/reactos/libs/pseh/framebased/internal.h
deleted    include/reactos/libs/pseh/setjmp.h
modified   lib/pseh/framebased.c
deleted    lib/pseh/i386/setjmp.asm
modified   lib/pseh/pseh.rbuild
   Big PSEH revamp. If God is kind and merciful, this might be the last revision to PSEH ever
   !!! RULE CHANGE !!! Obsoleted _SEH_NO_NATIVE_NLG, do NOT use it anymore, it will now cause fatal compile-time errors
   !!! RULE CHANGE !!! As a side effect to the fix for a bug where a _SEH_TRY nested in a _SEH_HANDLE would lead to stack corruption, using "return" or "goto" from anywhere inside a PSEH block is now FORBIDDEN; all code that already did has been fixed in this revision
   !!! NEW FEATURE !!! To leave a PSEH block from anywhere inside it, use the new _SEH_YIELD(<statement>) macro; examples: _SEH_YIELD(return value), _SEH_YIELD(goto label), _SEH_YIELD(returnvalue = value; goto label); ALWAYS ensure a _SEH_YIELD() leads outside the top-level _SEH_TRY block - do NOT goto into an ancestor _SEH_TRY block!!! Also note that _SEH_YIELD() disables SEH protection for the enclosed statement, so do NOT perform operations that might throw exceptions inside a _SEH_YIELD(); finally, ensure the enclosed statement does NOT allow execution to continue, or _SEH_YIELD() will get in an infinite loop; bear with me, for I have done the impossible, so don't expect miracles
   Don't use a fake setjmp/longjmp *ever*, too dangerous; removed _SEHLongJmp & _SEHSetJmp, obsoleted _SEH_NO_NATIVE_NLG
   On GCC, use __builtin_setjmp/__builtin_longjmp instead of setjmp/longjmp; they produce efficient code that plays well with optimizations, require no external library and are designed specifically for exception handling; should result in faster code and no hidden bugs
   Use inline code to enter/leave trylevels; yields much better binary code
   Inline handlers inside _SEH_PortableFrame_t instead of pointing to them; yields better code for the most common usages
   Turn all top-level statements generated by macros from bare scopes into for loops, to ensure they are used correctly as stand-alone statements
   Removed bitrotten old syntax, because it wasn't being used nor maintained

modified   dll/3rdparty/freetype/freetype.rbuild
modified   dll/win32/kernel32/kernel32.rbuild
modified   drivers/network/tcpip/tcpip.rbuild
modified   lib/drivers/ip/ip.rbuild
modified   lib/rtl/rtl.rbuild
modified   ntoskrnl/ntoskrnl.rbuild
modified   subsystems/win32/win32k/win32k.rbuild
   Removed obsolete _SEH_NO_NATIVE_NLG define

modified   drivers/network/afd/afd/lock.c
modified   drivers/network/afd/afd/tdi.c
modified   subsystems/csr/csrsrv/api.c
modified   subsystems/win32/win32k/ntuser/clipboard.c
modified   subsystems/win32/win32k/ntuser/window.c
   Use the new _SEH_YIELD macro to return/goto from SEH blocks

modified   tools/rbuild/backend/mingw/modulehandler.cpp
modified   tools/rbuild/backend/mingw/modulehandler.h
modified   tools/rbuild/module.cpp
modified   tools/rbuild/project.dtd
modified   tools/rbuild/rbuild.h
   Don't use the obsolete _SEH_NO_NATIVE_NLG flag anymore
   Only add underscores to imported symbols when module is marked underscoresymbols="true"; fixes debugsup and, indirectly, PSEH tracing

modified   lib/3rdparty/mingw/mingw.rbuild
   Build with underscoresymbols="true"

svn path=/trunk/; revision=26224
2007-04-01 00:07:25 +00:00
Dmitry Gorbachev 9ce1b28fc1 Fix the bug introduced in r26219.
svn path=/trunk/; revision=26223
2007-03-31 22:18:16 +00:00
Aleksey Bragin ebf23937a3 - Fix a few obvious bugs (incorrect DeviceExtension pointer arithmetic, non-initialized field usage).
- Packets are sequentially numbered.

Now all devices are perfectly enumerated (SpBuildDeviceMap() may still need work, but later), and problem occurs later when servicing IOCTLs.

svn path=/trunk/; revision=26222
2007-03-31 20:47:42 +00:00
Aleksey Bragin fd27183f35 - Implement timeouts / retrying after timeout.
svn path=/trunk/; revision=26221
2007-03-31 20:03:07 +00:00
Aleksey Bragin fc3d38d1cb - Finish ScsiPortInitialize() refactoring / improving. Only DMA stuff and 2-interrupts case are missing now.
svn path=/trunk/; revision=26220
2007-03-31 18:37:07 +00:00
Dmitry Gorbachev c08f45390a Do not wait for explorer startup. Hack.
svn path=/trunk/; revision=26219
2007-03-31 11:52:24 +00:00
Magnus Olsen 151cc9133b more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26218
2007-03-30 22:58:02 +00:00
Magnus Olsen 898210e00d more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26217
2007-03-30 21:17:33 +00:00
Dmitry Gorbachev fda50948f1 Fix a bug.
svn path=/trunk/; revision=26216
2007-03-30 21:08:23 +00:00
Magnus Olsen 1ca4f18dc7 more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26215
2007-03-30 21:08:09 +00:00
Magnus Olsen 043a16c1dc more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26214
2007-03-30 20:49:26 +00:00
Magnus Olsen a6246fbb17 more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26213
2007-03-30 20:04:05 +00:00
Aleksey Bragin 7ea1266acd - Fix ScsiPortGetDeviceBase() / ScsiPortSetDeviceBase().
svn path=/trunk/; revision=26212
2007-03-30 19:24:11 +00:00
Aleksey Bragin c891e7315a - Further work on ScsiPortInitialize(): old PortConfig section is deleted.
- SpiGetPciData() code improved, part of the code is transferred into a new function.

Right now a crash is introduced in ScsiPortFreeDeviceBase(), because of the changes in ScsiPortInitialize(): will be fixed by the next commit.

svn path=/trunk/; revision=26211
2007-03-30 19:10:29 +00:00
Aleksey Bragin 1f9a18b920 - Revert useless commit:
* No need to copy stuff from DDK, it's prohibited (#define _INC_NEWDEV)
 * #pragma was put there especially, and no reason to remove it was said
 * pushpack / poppack does not do anything if there are no structs definitions

svn path=/trunk/; revision=26210
2007-03-30 15:39:27 +00:00
Magnus Olsen dedbc24d60 more compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26209
2007-03-30 15:32:34 +00:00
Magnus Olsen 7b9e24ee13 moref compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26208
2007-03-30 15:24:03 +00:00
Magnus Olsen 07ec644063 moref compatible fix betwin reactos ddk and ms DDK version 3790.1830
svn path=/trunk/; revision=26207
2007-03-30 15:13:14 +00:00
Magnus Olsen d255db35bf fixing usb.h compatible with DDK version 3790.1830
adding usb200.h compatible with DDK version 3790.1830

svn path=/trunk/; revision=26206
2007-03-30 14:50:01 +00:00
Aleksey Bragin b33dcd50d9 - Start ScsiPortInitialize() refactoring: moving code to separate functions, adding support for various registry-defined options / tweaks (like DisableTaggedQueuing).
- Fixed a bug with using wrong spinlock (IrpLock instead of SpinLock).
- Doesn't fix anything yet, just makes work with the ScsiPortInitialize() more comfortable and initializing needed fields correctly. Also the "PortConfig" filling inside ScsiPortInitialize() will go away once it works fine in the standalone function.

svn path=/trunk/; revision=26205
2007-03-30 13:17:06 +00:00
Magnus Olsen e3701e4987 remove VidMemFree and HeapVidMemAllocAligned
they are protoypes belong to dmemmgr.h

ddrawi.h need be rewiten it is from wine so I add some hacks for now getting it works simluare to ms ddk version. 
This fix gdi32.dll break in the build

svn path=/trunk/; revision=26204
2007-03-30 09:53:34 +00:00
Magnus Olsen b18be77063 fixing newdev.h compatible with DDK version 3790.1830
it did not have #include <pshpack1.h>  and #include <poppack.h>

svn path=/trunk/; revision=26203
2007-03-30 08:47:54 +00:00
Magnus Olsen 0772fa79b5 adding ieverp.h compatible with DDK version 3790.1830
svn path=/trunk/; revision=26202
2007-03-30 08:41:21 +00:00