reactos.git
14 years ago- Create \dev\physmem section during section initialization, not later.
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:52:44 +0000 (00:52 +0000)]
- Create \dev\physmem section during section initialization, not later.
- Setup SharedUserData settings during Phase 0, not Phase 1. Fixes an old bug where the Inbv driver assumed ReactOS was in "server mode" simply because the default SharedUserData->NtProductType was "0" (which is an invalid product type, but it's != NtProductTypeNt).
  - Also fixed it such that this reports NtProductServer, which is what ReactOS reports to be (Windows 2003 Server SP 1).
- Initialize the modified page writer and balancer thread in phase 1, not phase 2.
  - Phase 2 should make the executive pageable, but I don't think this is supported yet...

svn path=/trunk/; revision=42251

14 years ago- Fix a ridiculous copy-paste-error-while-writing-the-commit-log error. Sorry for...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:17:38 +0000 (00:17 +0000)]
- Fix a ridiculous copy-paste-error-while-writing-the-commit-log error. Sorry for breaking the build!

svn path=/trunk/; revision=42250

14 years ago- Delete the blaoted, overweight and slow nonpaged pool implementation.
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:14:56 +0000 (00:14 +0000)]
- Delete the blaoted, overweight and slow nonpaged pool implementation.
- Plug-in support to use the ARM nonpaged pool instead.
- This patch has been tested for over 2 months and all known regressions were fixed.
  - Thanks to Aleksey Bragin for providing a pool regression suite.
  - Thanks to Aleksey Bragin for providing initial implementation details and code from older attempts.
  - Thanks to http://uninformed.org/?v=4&a=2&t=txt and http://www.dfrws.org/2008/proceedings/p58-schuster_pres.pdf for allocation strategies.

svn path=/trunk/; revision=42249

14 years ago- Do not print out ReactOS nonpaged pool VA address range anymore, since it will...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:11:39 +0000 (00:11 +0000)]
- Do not print out ReactOS nonpaged pool VA address range anymore, since it will be deprecated.

svn path=/trunk/; revision=42248

14 years ago- The old nonpaged pool statistic functions (TAB+xxx) in KDBG are incompatible with...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:10:37 +0000 (00:10 +0000)]
- The old nonpaged pool statistic functions (TAB+xxx) in KDBG are incompatible with newer nonpaged pool implementation -- remove them.
- The NtQuerySystemInformation API's pool information levels provide the same information, when implemented properly.

svn path=/trunk/; revision=42247

14 years ago- DebugPool implementation is not compatible with newer nonpaged pool algorithms...
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:09:09 +0000 (00:09 +0000)]
- DebugPool implementation is not compatible with newer nonpaged pool algorithms, so remove support for nonpaged pool debugging.
  - Special pool implementation will restore this functionality.

svn path=/trunk/; revision=42246

14 years ago- Implement the algorithms for pool allocation and de-allocation:
ReactOS Portable Systems Group [Mon, 27 Jul 2009 00:05:45 +0000 (00:05 +0000)]
- Implement the algorithms for pool allocation and de-allocation:
  - Only tested/works with nonpaged pool for now.
  - No support for session pool or special pool.
  - No support for pool tagging.
  - No support for accounting (free/available pages, etc).
  - No optimizations other than your average combine-with-previous-free and combine-with-next-free mechanisms to avoid fragmentation.
  - No support for debugging.
  - No consistency/validation checks.
  - Heavily commented for the inquiring mind.
  - Thread/MP safe.
- Not used yet.

svn path=/trunk/; revision=42245

14 years agoSome fixes for CLIENTINFO, based on symbol files
Timo Kreuzer [Sun, 26 Jul 2009 22:57:05 +0000 (22:57 +0000)]
Some fixes for CLIENTINFO, based on symbol files

svn path=/trunk/; revision=42243

14 years ago[rbuild] Implement delay import support for gcc in rbuild.
Timo Kreuzer [Sun, 26 Jul 2009 22:36:55 +0000 (22:36 +0000)]
[rbuild] Implement delay import support for gcc in rbuild.
As soon as you declare a library import with
<library delayimport="true"> you will link to the autogenerated delayimportlib. This will currenlty not work without a patched version of dlltool.

svn path=/trunk/; revision=42242

14 years agoFix 64bit compilation issues.
Timo Kreuzer [Sun, 26 Jul 2009 22:34:03 +0000 (22:34 +0000)]
Fix 64bit compilation issues.

svn path=/trunk/; revision=42241

14 years agoHey Arch, thanks for breaking other architectures...
Timo Kreuzer [Sun, 26 Jul 2009 21:46:21 +0000 (21:46 +0000)]
Hey Arch, thanks for breaking other architectures...

svn path=/trunk/; revision=42240

14 years ago- Initialize MmLowestPhysicalPage to -1, otherwise setting this value will never...
ReactOS Portable Systems Group [Sun, 26 Jul 2009 19:44:27 +0000 (19:44 +0000)]
- Initialize MmLowestPhysicalPage to -1, otherwise setting this value will never work properly since we'll never find a page lower than 0 (the default laoder-initialized value).
- Fixed by Stef.

svn path=/trunk/; revision=42237

14 years ago- At a minimum set the desktop to global class.
James Tabor [Sun, 26 Jul 2009 16:57:34 +0000 (16:57 +0000)]
- At a minimum set the desktop to global class.

svn path=/trunk/; revision=42236

14 years ago- Revert winbase.h interlocked intrinsic change for now *sigh*
Stefan Ginsberg [Sun, 26 Jul 2009 16:18:56 +0000 (16:18 +0000)]
- Revert winbase.h interlocked intrinsic change for now *sigh*

svn path=/trunk/; revision=42235

14 years ago- [Win32k] More Class work. Moved to use thread and process information structures.
James Tabor [Sun, 26 Jul 2009 16:17:50 +0000 (16:17 +0000)]
- [Win32k] More Class work. Moved to use thread and process information structures.
- Tested wine, Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42234

14 years ago- Misc fixes for msvc:
Stefan Ginsberg [Sun, 26 Jul 2009 15:36:35 +0000 (15:36 +0000)]
- Misc fixes for msvc:
- C89 compliance for "dbgprint"
- Fix more calling convention declarations in the DDK and gdi32
- Define noreturn attribute for crt's abort compatibly
- Fix some of the mess in psdk's intrinsics -- this needs some major clean up.
- Define DbgPrintEx the same way in debug.h as in NDK and DDK
- UUID doesn't need Wine-specific types -- include standard PSDK headers.

svn path=/trunk/; revision=42233

14 years ago- Use documented structure instead array
Dmitry Chapyshev [Sun, 26 Jul 2009 13:16:19 +0000 (13:16 +0000)]
- Use documented structure instead array
- Add some defines

svn path=/trunk/; revision=42232

14 years ago- Fixed event code. Remove junk too.
James Tabor [Sun, 26 Jul 2009 12:27:15 +0000 (12:27 +0000)]
- Fixed event code. Remove junk too.

svn path=/trunk/; revision=42230

14 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:55:46 +0000 (09:55 +0000)]
Silence a warning.

svn path=/trunk/; revision=42229

14 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:52:27 +0000 (09:52 +0000)]
Silence a warning.

svn path=/trunk/; revision=42228

14 years agoSilence a warning.
Dmitry Gorbachev [Sun, 26 Jul 2009 09:52:00 +0000 (09:52 +0000)]
Silence a warning.

svn path=/trunk/; revision=42227

14 years ago- Get rid of the concept and tracking of "mapped pages". The MapCount was never check...
ReactOS Portable Systems Group [Sun, 26 Jul 2009 08:20:29 +0000 (08:20 +0000)]
- Get rid of the concept and tracking of "mapped pages". The MapCount was never checked anywhere in terms of page accounting -- only the reference count is.
- Fix the issue with the system attempting to map page 0 into hyperspace.

svn path=/trunk/; revision=42226

14 years ago - Begin using ws2help_new
Cameron Gutman [Sun, 26 Jul 2009 06:00:32 +0000 (06:00 +0000)]
 - Begin using ws2help_new
 - I have tested this with various applications in ROS
 - Part 2 of 2

svn path=/trunk/; revision=42225

14 years ago - Remove our old ws2help in preparation for the transition to ws2help_new
Cameron Gutman [Sun, 26 Jul 2009 05:51:30 +0000 (05:51 +0000)]
 - Remove our old ws2help in preparation for the transition to ws2help_new
 - This will not build
 - Part 1 of 2

svn path=/trunk/; revision=42224

14 years ago- [Win32k] Moving forward and replace some of the old header types with the new ones...
James Tabor [Sun, 26 Jul 2009 01:59:08 +0000 (01:59 +0000)]
- [Win32k] Moving forward and replace some of the old header types with the new ones. This will continue and start the win32k object manager rewrite. Finding more bugs and this is still a work in progress. Run across the C_ASSERT bug. I see someone else noticed it.
- Finished the user32 system class proc start-up.
- Tested wine, Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42223

14 years agoAdd hack for gnu ld like in mingw lib, as it uses _image_base__ insetad of __ImageBase
Timo Kreuzer [Sun, 26 Jul 2009 00:22:57 +0000 (00:22 +0000)]
Add hack for gnu ld like in mingw lib, as it uses _image_base__ insetad of __ImageBase

svn path=/trunk/; revision=42222

14 years ago- Fix memory leak from r42218 ;0)
Stefan Ginsberg [Sat, 25 Jul 2009 22:19:45 +0000 (22:19 +0000)]
- Fix memory leak from r42218 ;0)

svn path=/trunk/; revision=42221

14 years ago- This is a HIGH RISK patch. It has been tested on multiple emulators and configurati...
ReactOS Portable Systems Group [Sat, 25 Jul 2009 21:35:31 +0000 (21:35 +0000)]
- This is a HIGH RISK patch. It has been tested on multiple emulators and configurations but requires broader input.
- Implement several changes to PFN database management:
  - The PTEs for the PFN Database are now created by ARM3. Unlike the old code which create PTE for every page on the machine, ARM3 only creates PTEs to account for pages that should be in the PFN database.
  - A second related change is what "pages should be in the PFN database". Previously, reserved or otherwise non-existing (ie: holes) memory regions would get a PFN entry created and marked as "BIOS". This is wasteful and not compatible with Windows: there should not be PFN entries created at all.
    - So we removed BIOS PFN entries, and now only create PTEs for valid pages as listed in the physical memory ranges.
    - This allows machines with "holes" in their physical address space not to waste dozens of MBs of nonpaged pool
    - Also saves memory on regular machines too, since 1-4MB worth of memory will now not be in the DB anymore
  - To keep track of pages that are invalid/unknown/ignored, there is now a "PFN Bitmap". This bitmap has one bit set for each valid PFN in the database.
    - And so, MiGetPfnEntry now also validates that, if there is a PFN Bitmap, the requested PFN is actually present in the database.
  - This introduces a major functional change: device pages, reserved pages, and other BIOS pages cannot be referenced, shared, or managed in any meaningful way.
    - We have attempted to fix parts of the OS that depended on this, but there may still be bugs.
      - A known issue may be an assertion during reboot and/or shutdown in the hyperspace mapping function. It is currently safe to simply "cont" in the debugger a couple of times.
        - We are working on a fix.

svn path=/trunk/; revision=42220

14 years ago- RamdiskWorkerThread: Don't return IoCompleteRequest as we return void (IoCompleteRe...
Stefan Ginsberg [Sat, 25 Jul 2009 20:24:50 +0000 (20:24 +0000)]
- RamdiskWorkerThread: Don't return IoCompleteRequest as we return void (IoCompleteRequest returns void though), msvc doesn't like this.
- Fix calling convention declaration for scsi function prototypes

svn path=/trunk/; revision=42219

14 years ago- Fix most freeldr compilation issues, most notably:
Stefan Ginsberg [Sat, 25 Jul 2009 20:17:23 +0000 (20:17 +0000)]
- Fix most freeldr compilation issues, most notably:
- Define structure packing correctly for msvc.
- Define Ke386EraseFlags for msvc too.
- Don't return a function returning void in a function returning void.
- VideoFadeIn: Don't rely on some fishy gcc extension for allocating memory from the stack -- just use the heap instead.
- Winldr remains

svn path=/trunk/; revision=42218

14 years ago - Make ipconfig /renew work even if we haven't got an address yet
Cameron Gutman [Sat, 25 Jul 2009 19:51:54 +0000 (19:51 +0000)]
 - Make ipconfig /renew work even if we haven't got an address yet
 - Fix several potential crashes
 - Fix an infinite loop caused by us sending a discover packet without adding a protocol first (this is exposed by releasing then renewing)
 - Fixes bug 4630

svn path=/trunk/; revision=42217

14 years ago- FIELD_OFFSET returns LONG, not LONG_PTR or size_t.
Stefan Ginsberg [Sat, 25 Jul 2009 19:38:52 +0000 (19:38 +0000)]
- FIELD_OFFSET returns LONG, not LONG_PTR or size_t.
- Define TYPE_ALIGNMENT for msvc.
- Define DbgPrintEx the same way in NDK and DDK
- C_ASSERT is a typedef, so don't put it inside functions as msvc doesn't allow this.
- Kernel now *compiles* with RosBE + msvc _and_ our DDK. Linker errors from the ninth circle of hell remains.

svn path=/trunk/; revision=42216

14 years ago- Fix a critical bug in ExAllocatePoolWithQuota spotted by msvc. Because of the curre...
Stefan Ginsberg [Sat, 25 Jul 2009 16:53:25 +0000 (16:53 +0000)]
- Fix a critical bug in ExAllocatePoolWithQuota spotted by msvc. Because of the current POOL_TAGGING mess in wdm.h, ExAllocatePoolWithQuotaTag is defined to ExAllocatePoolWithQuota, so when ExAllocatePoolWithQuota called the with-tag version, it ended up calling _itself_. Fix this by undefining the broken macro.

svn path=/trunk/; revision=42215

14 years ago- Add stubs for AppCleanup and videoThunk32
Dmitry Chapyshev [Sat, 25 Jul 2009 15:57:18 +0000 (15:57 +0000)]
- Add stubs for AppCleanup and videoThunk32
- Partially implement capCreateCaptureWindowW and capGetDriverDescriptionW

svn path=/trunk/; revision=42214

14 years ago- Fix incorrect definition of ZwCreateDebugObject after revision 41969 -- spotted...
Stefan Ginsberg [Sat, 25 Jul 2009 15:31:57 +0000 (15:31 +0000)]
- Fix incorrect definition of ZwCreateDebugObject after revision 41969 -- spotted by BugBoy

svn path=/trunk/; revision=42213

14 years ago- Leftover 2 from 42210
Stefan Ginsberg [Sat, 25 Jul 2009 14:55:52 +0000 (14:55 +0000)]
- Leftover 2 from 42210

svn path=/trunk/; revision=42212

14 years ago- Leftover from previous commit
Stefan Ginsberg [Sat, 25 Jul 2009 14:54:31 +0000 (14:54 +0000)]
- Leftover from previous commit

svn path=/trunk/; revision=42211

14 years ago- Fix most of the network stack for msvc (except tcpip and oskittcp)
Stefan Ginsberg [Sat, 25 Jul 2009 14:51:56 +0000 (14:51 +0000)]
- Fix most of the network stack for msvc (except tcpip and oskittcp)
- Fix calling convention definitions for ntdd8042.h
- Fix msfs' calling convention

svn path=/trunk/; revision=42210

14 years ago- Revert 42206 change to ddraw.h as it breaks dxapi
Stefan Ginsberg [Sat, 25 Jul 2009 14:32:06 +0000 (14:32 +0000)]
- Revert 42206 change to ddraw.h as it breaks dxapi

svn path=/trunk/; revision=42209

14 years ago- Make ks and portcls compile under msvc
Stefan Ginsberg [Sat, 25 Jul 2009 14:06:06 +0000 (14:06 +0000)]
- Make ks and portcls compile under msvc

svn path=/trunk/; revision=42208

14 years ago- Make most of the the video stack compile with msvc
Stefan Ginsberg [Sat, 25 Jul 2009 13:15:22 +0000 (13:15 +0000)]
- Make most of the the video stack compile with msvc

svn path=/trunk/; revision=42206

14 years ago- Make mp HAL MSC compatible
Stefan Ginsberg [Sat, 25 Jul 2009 11:44:27 +0000 (11:44 +0000)]
- Make mp HAL MSC compatible

svn path=/trunk/; revision=42205

14 years ago- Fix some kernel MSC compilation issues:
Stefan Ginsberg [Sat, 25 Jul 2009 11:43:48 +0000 (11:43 +0000)]
- Fix some kernel MSC compilation issues:
- ShutdownThreadMain: Define SMP-only variables compatibly
- MmArmInitSystem: Define MiNonPagedPoolStart and MiNonPagedPoolLength externs compatibly
- KdbpCallMainLoop: Add VOID to parameter list

svn path=/trunk/; revision=42204

14 years ago- Create a solid black brush for background color of a ConsoleWindowClass.
Aleksey Bragin [Sat, 25 Jul 2009 10:24:41 +0000 (10:24 +0000)]
- Create a solid black brush for background color of a ConsoleWindowClass.

svn path=/trunk/; revision=42202

14 years ago- Implement capCreateCaptureWindowA and capGetDriverDescriptionA (based on Wine code)
Dmitry Chapyshev [Sat, 25 Jul 2009 09:41:17 +0000 (09:41 +0000)]
- Implement capCreateCaptureWindowA and capGetDriverDescriptionA (based on Wine code)

svn path=/trunk/; revision=42198

14 years ago- Add avicap32 (stubs only)
Dmitry Chapyshev [Sat, 25 Jul 2009 09:28:18 +0000 (09:28 +0000)]
- Add avicap32 (stubs only)
- Add mfc42u.dll, msvbvm50.dll, msvbvm60.dll, msvcirt.dll optional entries to reactos.dff

svn path=/trunk/; revision=42197

14 years agoDo not fail when compiling with GCC 4.4.1
Dmitry Gorbachev [Sat, 25 Jul 2009 09:24:30 +0000 (09:24 +0000)]
Do not fail when compiling with GCC 4.4.1

svn path=/trunk/; revision=42196

14 years agoAdd / update Czech translations. Radek Liska. Bugs #4707 and #4708.
Dmitry Gorbachev [Sat, 25 Jul 2009 09:18:52 +0000 (09:18 +0000)]
Add / update Czech translations. Radek Liska. Bugs #4707 and #4708.

svn path=/trunk/; revision=42195

14 years agoUndo part of r42190. Sorry.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:59:18 +0000 (07:59 +0000)]
Undo part of r42190. Sorry.

svn path=/trunk/; revision=42194

14 years agoFix some bugs, reported by GCC.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:42:15 +0000 (07:42 +0000)]
Fix some bugs, reported by GCC.

svn path=/trunk/; revision=42193

14 years agoSilence GCC warnings.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:41:42 +0000 (07:41 +0000)]
Silence GCC warnings.

svn path=/trunk/; revision=42192

14 years ago- Declare iswblank() in wctype.h, not isblank().
Dmitry Gorbachev [Sat, 25 Jul 2009 07:41:14 +0000 (07:41 +0000)]
- Declare iswblank() in wctype.h, not isblank().
- Add iswblank() to wchar.h, too.

svn path=/trunk/; revision=42191

14 years agoFix "misrepresented license in FreeLDR", Robert Millan (rmh.reactos at aybabtu.com...
Dmitry Gorbachev [Sat, 25 Jul 2009 07:40:39 +0000 (07:40 +0000)]
Fix "misrepresented license in FreeLDR", Robert Millan (rmh.reactos at aybabtu.com), bug #4673.

svn path=/trunk/; revision=42190

14 years agoDo not fail with 'l' type modifier. Bug #4438.
Dmitry Gorbachev [Sat, 25 Jul 2009 07:40:35 +0000 (07:40 +0000)]
Do not fail with 'l' type modifier. Bug #4438.

svn path=/trunk/; revision=42189

14 years agows2_32_new compatibility fixes
Cameron Gutman [Sat, 25 Jul 2009 02:28:11 +0000 (02:28 +0000)]
ws2_32_new compatibility fixes
 - Fix the rest of the code which was using errno instead of WSAGetLastError()
 - Remove some dead code

svn path=/trunk/; revision=42188

14 years agows2_32_new compatibility fixes
Cameron Gutman [Sat, 25 Jul 2009 02:01:13 +0000 (02:01 +0000)]
ws2_32_new compatibility fixes
 - Use Sleep() to wait when we have no interfaces because select() will fail and return without waiting
 - Use WSAGetLastError() instead of errno

svn path=/trunk/; revision=42187

14 years ago- Removed unused ppi pointer.
James Tabor [Sat, 25 Jul 2009 01:42:04 +0000 (01:42 +0000)]
- Removed unused ppi pointer.

svn path=/trunk/; revision=42186

14 years ago- [Win32k] More work on classes. ReactOS seems to return the opposite WinProc and...
James Tabor [Sat, 25 Jul 2009 00:41:22 +0000 (00:41 +0000)]
- [Win32k] More work on classes. ReactOS seems to return the opposite WinProc and sometimes it is a CallProcData handle. This is confusing the class wine tests. The last thing it should do is return CallProcData handle after attempting to find the right proc. Fixed message class bits. Moved CallProc to CallProcData and updated related code. Started alternate function to replace NtUserGetClassLong and NtUserGetWindowLong.
- Tested wine, Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42185

14 years ago - Add support for adapters added after DHCP is started
Cameron Gutman [Fri, 24 Jul 2009 21:06:20 +0000 (21:06 +0000)]
 - Add support for adapters added after DHCP is started
 - Automatically request an IP address after an interface becomes ready (needed for DHCP support on WLAN adapters)

svn path=/trunk/; revision=42182

14 years ago - Implement OID_GEN_HARDWARE_STATUS
Cameron Gutman [Fri, 24 Jul 2009 20:49:39 +0000 (20:49 +0000)]
 - Implement OID_GEN_HARDWARE_STATUS

svn path=/trunk/; revision=42180

14 years ago- Turn a macro into an inline function to avoid a warning.
Dmitry Gorbachev [Fri, 24 Jul 2009 19:52:05 +0000 (19:52 +0000)]
- Turn a macro into an inline function to avoid a warning.
- Remove a stray acute accent.

svn path=/trunk/; revision=42179

14 years ago- Leftover from 42176
Stefan Ginsberg [Fri, 24 Jul 2009 19:39:07 +0000 (19:39 +0000)]
- Leftover from 42176

svn path=/trunk/; revision=42178

14 years ago- Kill off diskdump too
Stefan Ginsberg [Fri, 24 Jul 2009 19:09:39 +0000 (19:09 +0000)]
- Kill off diskdump too

svn path=/trunk/; revision=42177

14 years ago- Get rid of ccros.h, deprecated by revision 42175
Stefan Ginsberg [Fri, 24 Jul 2009 17:35:28 +0000 (17:35 +0000)]
- Get rid of ccros.h, deprecated by revision 42175

svn path=/trunk/; revision=42176

14 years ago- Remove deprecated/old/buggy/unused code.
ReactOS Portable Systems Group [Fri, 24 Jul 2009 15:49:27 +0000 (15:49 +0000)]
- Remove deprecated/old/buggy/unused code.
- Make MxGetNextPage return the lowest free physical page, not the highest.
  - This way we fragment the address space less.
  - Also makes calculation of "forgotten" pages when we build the PFN database earlier.
- Remove MmAllocEarlyPage and use MxGetNextPage instead.

svn path=/trunk/; revision=42175

14 years ago- move delayimp.h to psdk
Timo Kreuzer [Fri, 24 Jul 2009 11:29:54 +0000 (11:29 +0000)]
- move delayimp.h to psdk

svn path=/trunk/; revision=42174

14 years agoAdd missing license.
Dmitry Gorbachev [Fri, 24 Jul 2009 10:52:49 +0000 (10:52 +0000)]
Add missing license.

svn path=/trunk/; revision=42173

14 years ago[delayimp]
Timo Kreuzer [Fri, 24 Jul 2009 10:25:53 +0000 (10:25 +0000)]
[delayimp]
- move IndexFromPImgThunkData and PFromRva to delayimp.h
- use __ImageBase insetad of _image_base__
- fix include guard
- RVA is a DWORD, not a PVOID

svn path=/trunk/; revision=42172

14 years agoAdd a missing mockup image
Ged Murphy [Fri, 24 Jul 2009 07:44:51 +0000 (07:44 +0000)]
Add a missing mockup image

svn path=/trunk/; revision=42171

14 years agoAdd license header (LGPL)
Timo Kreuzer [Fri, 24 Jul 2009 04:30:09 +0000 (04:30 +0000)]
Add license header (LGPL)

svn path=/trunk/; revision=42170

14 years agoImplement delayimp lib
Timo Kreuzer [Fri, 24 Jul 2009 04:24:36 +0000 (04:24 +0000)]
Implement delayimp lib
This library will allow to delay import from dlls, if used together with the corresponding delayimport lib for that dll. An initial patch for dlltool can be found in bug #4730.
Based on Matt Pietrek's "Under the Hood" article: http://www.microsoft.com/msj/1298/hood/hood1298.aspx and msdn documentation.

svn path=/trunk/; revision=42169

14 years ago- [Win32k] More work on classes. Fixed SEH abuse and implemented NtUserGetWOWClass...
James Tabor [Fri, 24 Jul 2009 01:03:11 +0000 (01:03 +0000)]
- [Win32k] More work on classes. Fixed SEH abuse and implemented NtUserGetWOWClass. Minor bug fixes and modifications that help function compatibility based on wine.
- Tested wine (some improvements and losses): Msi seems to be fixed, did not test before these changes. My guess is Jeffrey Morlan fixed it in 42163, so a Big Thank You!!! Tested Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42168

14 years agoI always forget about RosBE ....
Ged Murphy [Thu, 23 Jul 2009 22:11:06 +0000 (22:11 +0000)]
I always forget about RosBE ....

svn path=/trunk/; revision=42167

14 years ago- fix clobering of stack in the event, property, method and start device routine
Johannes Anderwald [Thu, 23 Jul 2009 21:48:47 +0000 (21:48 +0000)]
- fix clobering of stack in the event, property, method and start device routine

svn path=/trunk/; revision=42166

14 years agoDraw the appropriate taskbar mockup image in the dialog when the user clicks the...
Ged Murphy [Thu, 23 Jul 2009 21:35:52 +0000 (21:35 +0000)]
Draw the appropriate taskbar mockup image in the dialog when the user clicks the checkboxes

svn path=/trunk/; revision=42165

14 years ago- Add calling convention for callback typedefs
Johannes Anderwald [Thu, 23 Jul 2009 21:32:39 +0000 (21:32 +0000)]
- Add calling convention for callback typedefs
- Ros needs msvc!

svn path=/trunk/; revision=42164

14 years agoLoadLibraryExW: After loading a library as a datafile, clean up properly (don't leak...
Jeffrey Morlan [Thu, 23 Jul 2009 20:48:43 +0000 (20:48 +0000)]
LoadLibraryExW: After loading a library as a datafile, clean up properly (don't leak SearchPath, and don't free DllName if we didn't allocate it)

svn path=/trunk/; revision=42163

14 years ago- Use the KiProcessorBlock array to loop the PRCBs in a portable way
Stefan Ginsberg [Thu, 23 Jul 2009 19:37:09 +0000 (19:37 +0000)]
- Use the KiProcessorBlock array to loop the PRCBs in a portable way

svn path=/trunk/; revision=42162

14 years ago- Don't blame Arch, it was ks.h
Johannes Anderwald [Thu, 23 Jul 2009 19:27:53 +0000 (19:27 +0000)]
- Don't blame Arch, it was ks.h

svn path=/trunk/; revision=42161

14 years ago[KS]
Johannes Anderwald [Thu, 23 Jul 2009 15:19:46 +0000 (15:19 +0000)]
[KS]
- Implement KsAcquireDevice, KsReleaseDevice, KsTerminateDevice
- Fix unimplemented tags
- Use double in spec for functions taking longlong arguments [[Colin Finck]]

svn path=/trunk/; revision=42156

14 years ago- Add types to unbreak build
Johannes Anderwald [Thu, 23 Jul 2009 14:18:22 +0000 (14:18 +0000)]
- Add types to unbreak build
- thanks dreimer

svn path=/trunk/; revision=42155

14 years ago- Add tons of stubs
Johannes Anderwald [Thu, 23 Jul 2009 13:13:45 +0000 (13:13 +0000)]
- Add tons of stubs
- Add (existing) exported functions
- Ks mostly has now WinXP' ks exported functions

svn path=/trunk/; revision=42153

14 years ago - Implement link speed and duplex detection
Cameron Gutman [Thu, 23 Jul 2009 04:21:06 +0000 (04:21 +0000)]
 - Implement link speed and duplex detection
 - Fix LED programming (we didn't set LEDPE so all our programming was ignored)
 - Add some other LED programming
 - Fixes bug 4703

svn path=/trunk/; revision=42152

14 years ago- [Win32k] More work on classes. Wine test drop to 35 failures from 52, now with...
James Tabor [Thu, 23 Jul 2009 01:34:31 +0000 (01:34 +0000)]
- [Win32k] More work on classes. Wine test drop to 35 failures from 52, now with the system class rewrite it is up to 42 failures. There is one User32 loaded so there is one User client Instance for this system. One System class per system not including Public (Global) or Private (Local) classes per process. Sorting continues.
- Tested wine (some improvements and losses), Firefox 1.15.xx and AbiWord 2.6.8.

svn path=/trunk/; revision=42151

14 years ago- Implement KsQueryObjectAccessMask, KsQueryObjectCreateItem
Johannes Anderwald [Thu, 23 Jul 2009 00:47:21 +0000 (00:47 +0000)]
- Implement KsQueryObjectAccessMask, KsQueryObjectCreateItem
- Use KSQUEUE_SPINLOCK_IRP_STORAGE macro for access the stored spin lock

svn path=/trunk/; revision=42150

14 years ago- Remove old irp queue implementation
Johannes Anderwald [Thu, 23 Jul 2009 00:13:04 +0000 (00:13 +0000)]
- Remove old irp queue implementation
- Implement KsCancelIo, KsReleaseIrpOnCancelableQueue, KsRemoveIrpFromCancelableQueue, KsRemoveSpecificIrpFromCancelableQueue, KsAddIrpToCancelableQueue, KsCancelRoutine

svn path=/trunk/; revision=42149

14 years ago- Initialize the value of MmBootImageSize in ARM3 now.
ReactOS Portable Systems Group [Wed, 22 Jul 2009 22:46:29 +0000 (22:46 +0000)]
- Initialize the value of MmBootImageSize in ARM3 now.
  - Also fix its value such that it's PDE aligned -- this makes sure that we don't step on any of the boot loader's PDE mappings and can blow everything away later.
- Initialize the MmSystem/User/Probe Addresses in ARM3 as well (no functional change).
- Print out a lot more of the VA ranges in ARM3's Phase 2 initialization. Most of the VA space is now dumped out.
- Write out the code to initialize session space VA ranges
  - Image space, view space, working set space and pool space values are all calculated properly.
    - NT default sizes are used, without support for registry overrides (yet).
  - Also system view space is initialized and sized.
  - Code is heavily commented and explained for inquisitive minds.
- Define the paged pool start address, minimum/default size, and add some extra pool header asserts/definitions.
- Define MmPagedPoolInfo to keep track of all paged pool related information (start/end PTEs, VA ranges, allocation/free bitmaps, etc).
- Fixed a lot of comments and added some new ones to provide extra clarity.
- Implement MiBuildPagedPool. It has two jobs:
  - Build and create the shadow system page directory, which double-maps the System process' PDE.
    - More explenations are in the comments.
  - Define the paged pool region and size, and initialize MmPagedPoolInfo accordingly.
  - Create and setup the paged pool allocation and free bitmaps (again explained in the comments).
- There shouldn't be any real functional change yet due to this commit.
  - We need to create memory areas for session space and system view space otherwise the VA regions could get used by ReactOS instead.

svn path=/trunk/; revision=42148

14 years ago- Fix totally broken KSWORKER implementation (it may have worked, but it didnt do...
Johannes Anderwald [Wed, 22 Jul 2009 21:27:44 +0000 (21:27 +0000)]
- Fix totally broken KSWORKER implementation (it may have worked, but it didnt do what it should have)
- Re-Implement KsQueueWorkItem, KsIncrementCountedWorker, KsDecrementCountedWorker, KsRegisterCountedWorker, KsUnregisterWorker, KsRegisterWorker

svn path=/trunk/; revision=42147

14 years ago- Use KSSTRING instead of hardcoding object class
Johannes Anderwald [Wed, 22 Jul 2009 19:08:57 +0000 (19:08 +0000)]
- Use KSSTRING instead of hardcoding object class
- Implement KsValidateAllocatorCreateRequest, KsValidateClockCreateRequest, KsValidateTopologyNodeCreateRequest

svn path=/trunk/; revision=42146

14 years ago- Add flags
Johannes Anderwald [Wed, 22 Jul 2009 19:05:58 +0000 (19:05 +0000)]
- Add flags
- Revert 42107

svn path=/trunk/; revision=42145

14 years ago[KS]
Johannes Anderwald [Wed, 22 Jul 2009 14:42:51 +0000 (14:42 +0000)]
[KS]
- Rewrite KSCREATE_ITEM handling to support clocks, nodes, allocators.
- Store create items in list instead of an array. Consequently, the code can be re-used for KSDEVICE_HEADER / KSOBJECT_HEADER functions.
- Implement KsAddObjectCreateItemToObjectHeader
- Implement now KspCreate and IKsDevice_Create properly
- Implement KsGetDevice by using KSBASIC_HEADER struct which must be positioned before its object specific (PKSFILTER, PKSFILTERFACTOR, PKSPIN)
- Remove a hack from KspCreateObjectType
[PORTCLS]
- Store real dispatched object in FsContext2
- Implement a fast device i/o handler
- Increase minimum data threshold when a stream stops prematurely by 10 audio frames (port driver WaveCyclic)
- Remove the hack of checking wether pin create request is passed. Since create items now work nicely, use a different function and handle pin creation requests seperately.
[KMIXER]
- Remove the hack of checking wether pin create request is passed. Since create items now work nicely, use a different function and handle pin creation requests seperately.
[SYSAUDIO]
- Remove the hack of checking wether pin create request is passed. Since create items now work nicely, use a different function and handle pin creation requests seperately.

svn path=/trunk/; revision=42143

14 years agofix a minor translation mistake
Matthias Kupfer [Wed, 22 Jul 2009 12:11:56 +0000 (12:11 +0000)]
fix a minor translation mistake

svn path=/trunk/; revision=42140

14 years ago- Add missing braces to prevent PVOID pointer arithmetic.
Aleksey Bragin [Wed, 22 Jul 2009 11:15:34 +0000 (11:15 +0000)]
- Add missing braces to prevent PVOID pointer arithmetic.

svn path=/trunk/; revision=42138

14 years ago- Prettify PFN dump output (add totals for each consumer and page type).
ReactOS Portable Systems Group [Wed, 22 Jul 2009 07:52:47 +0000 (07:52 +0000)]
- Prettify PFN dump output (add totals for each consumer and page type).

svn path=/trunk/; revision=42132

14 years ago- Separe ARM3 Init into 3 defined phases:
ReactOS Portable Systems Group [Wed, 22 Jul 2009 07:33:22 +0000 (07:33 +0000)]
- Separe ARM3 Init into 3 defined phases:
  - 1: No PFN Database exists
  - 2: PFN Database exists
  - 3: ReactOS NP Pool exists (deprecated)
- Cleanup ReactOS Mm init to work with this.
- ARM3 Phase 1 Init now uses pages directly from the physical memory descriptor.
  - This similar to how "MmAllocEarlyPage" used to work.
    - A new function MxGetNextPage now does this.
    - MxGetNextPage can allocate more than just one page however (making it possible to get contiguous physical memory without going through the PFN-based MmAllocateContiguousMemory beast)
    - Also MxGetNextPage will bugcheck with INSTALL_MORE_MEMORY if it runs out of pages.
  - Renamed the physical memory descriptor variables to MxFreeDescriptor, MxOldFreeDescriptor instead of MiFreeDescriptor and MiOrgFreeDescriptor (based on NT symbols)
  - Nonpaged pool PDEs, PFN database PDEs, and initial nonpaged pool PTEs are now allocated through MxGetNextPage.
- Fix an off by one error in the sizing of MxPfnAllocation.
- The PFN database is now fully "owned" by ARM3 in terms of its PDE mappings and VA location at 0xB0000000.
  - ie. MmArmPfnDatabase is now MmPfnDatabase.
  - The actual PFN database entries and setup are still done by the ReactOS Mm.
- Got rid of ARM nonpaged pool allocator test.
- Repositioned ReactOS nonpaged pool (deprecated) after the boot image (used to be after the PFN database).
  - Paged pool follows.

svn path=/trunk/; revision=42131

14 years ago- [Win32k] Rename class and window structures.
James Tabor [Wed, 22 Jul 2009 05:23:08 +0000 (05:23 +0000)]
- [Win32k] Rename class and window structures.

svn path=/trunk/; revision=42130

14 years ago- Fix crash in wine test.
James Tabor [Wed, 22 Jul 2009 04:26:35 +0000 (04:26 +0000)]
- Fix crash in wine test.

svn path=/trunk/; revision=42129

14 years ago- [Win32k] Update class and window structures.
James Tabor [Wed, 22 Jul 2009 04:11:06 +0000 (04:11 +0000)]
- [Win32k] Update class and window structures.
- Rewritten Set/GetWindowContextHelpId.
- Removed NtUserRegisterClassEx, replaced it with NtUserRegisterClassExWOW.
- Updated all related files and functions.

svn path=/trunk/; revision=42128

14 years ago - Don't fail the entire probe if something goes wrong when allocating a controller...
Cameron Gutman [Wed, 22 Jul 2009 02:20:24 +0000 (02:20 +0000)]
 - Don't fail the entire probe if something goes wrong when allocating a controller (this is what we do if _MULTI_UHCI is not defined also)

svn path=/trunk/; revision=42127

14 years ago - Return the DEVICE_OBJECT we got instead of NULL
Cameron Gutman [Wed, 22 Jul 2009 02:06:50 +0000 (02:06 +0000)]
 - Return the DEVICE_OBJECT we got instead of NULL

svn path=/trunk/; revision=42126