Commit graph

24840 commits

Author SHA1 Message Date
Maarten Bosma a54fcea595 - outsourced DirectDraw_SetCooperativeLevel
- adjusted .c file headers

svn path=/trunk/; revision=26734
2007-05-12 17:30:37 +00:00
Magnus Olsen 9fb321d933 start implement Main_DirectDraw_CreateSurface
we need now finish  internal_CreateSurface and  CopyDDSurfDescToDDSurfDesc2

svn path=/trunk/; revision=26733
2007-05-12 17:23:48 +00:00
Maarten Bosma 1846501455 Reformating
svn path=/trunk/; revision=26732
2007-05-12 16:37:17 +00:00
Maarten Bosma 80e4e04c0c Sorry, just noticed that I forgot to commit this one.
svn path=/trunk/; revision=26731
2007-05-12 16:29:58 +00:00
Maarten Bosma 8658735640 Formating
svn path=/trunk/; revision=26730
2007-05-12 16:28:54 +00:00
Maarten Bosma 4a65ec1dcc splitted rosdraw.h; outsourced big comment into text file.
svn path=/trunk/; revision=26729
2007-05-12 16:21:50 +00:00
Magnus Olsen 216cb06c21 forget this change, did think it still was in svn.
svn path=/trunk/; revision=26728
2007-05-12 15:52:09 +00:00
Magnus Olsen a05a002084 start reimplement createsurface
svn path=/trunk/; revision=26727
2007-05-12 15:50:26 +00:00
Maarten Bosma 499e453d66 Fix warning.
svn path=/trunk/; revision=26726
2007-05-12 15:45:54 +00:00
Maarten Bosma b4e08acebe Forgot to include surface_main.c in ddraw.rbuild.
svn path=/trunk/; revision=26725
2007-05-12 15:24:54 +00:00
Maarten Bosma c0c39ccc77 DirectDraw rearrangement. (part 2/2)
svn path=/trunk/; revision=26724
2007-05-12 14:58:26 +00:00
Maarten Bosma b2247432db DirectDraw rearrangement. (part 1/2)
svn path=/trunk/; revision=26723
2007-05-12 14:20:12 +00:00
Magnus Olsen afe388c584 sorry did use some private headers that are not commited yet, here is win32kdxtest comping fix.
svn path=/trunk/; revision=26722
2007-05-12 13:58:27 +00:00
Maarten Bosma 52e0d50e08 Deactivate a check.
svn path=/trunk/; revision=26721
2007-05-12 13:17:01 +00:00
Eric Kohl 7e499053cd - Attach clock specific data to the window instead of storing them in global variables.
- Stop the clock and show the system time when the user changes the system time.

See issue #2241 for more details.

svn path=/trunk/; revision=26720
2007-05-12 12:37:23 +00:00
Ged Murphy d5d68cf53f - Add winhelp based on Wine.
- Not fully complete and has some bugs.
- go to help -> help on help for a preview

svn path=/trunk/; revision=26719
2007-05-12 10:14:45 +00:00
Magnus Olsen 62ae8a3919 update dxhaltest with some new test, Thuse test are not 100% correct in all case. some error should be supress when it been run in vmware with windows or reactos
svn path=/trunk/; revision=26718
2007-05-12 10:14:22 +00:00
Aleksey Bragin a3d6e8f3e9 Undo last change, since it's an index in an array of TCHARs, so "1" is correct.
svn path=/trunk/; revision=26717
2007-05-12 08:44:49 +00:00
Alex Ionescu 8202615b33 - Rename CmiInitNonVolatileRegistryHive to CmiInitHiveFromFile.
- Remove CmiCreateNewRegFile and the way new hives were created, saved, then re-reloded. Instead initialize a new hive only once.
- Add support for calling either HINIT_FILE or HINIT_CREATE with a hive, and support log file hives now.
- Make hacks/oldcm differences smoother, and copy routine to cmsysini.c, since it's now compatible with the rewrite. This is probably the last function that was easily convertible/modifiable.

svn path=/trunk/; revision=26716
2007-05-12 08:27:28 +00:00
Magnus Olsen 66d03d55cd did see a small mistake use sizeof(TCHAR) for adding NULL termeting of string for u do not known if we switch compile regedit as unicode-16 or ANSI.
svn path=/trunk/; revision=26715
2007-05-12 08:27:00 +00:00
Alex Ionescu ff7c618dd0 - Change CmiInitNonVolatileRegistry hive to use CmpOpenHiveFiles and CmpInitializeHive. Required a lot of hacking to get to work right, but at least it does, and uses our new code paths.
- Update CmpInitializeHive with the HINIT_FILE hack required for current cmlib functionality.

svn path=/trunk/; revision=26714
2007-05-12 06:47:39 +00:00
James Tabor 7ae94663c6 Moving FLOATOBJ code in preparations of implementation of basic float storage emulation and float code processing.
svn path=/trunk/; revision=26713
2007-05-12 04:48:40 +00:00
Alex Ionescu ef1f549526 - Get rid of CmiCopyKey since it was dead code. Make CmiScanKeyForValue and CmiScanForSubKey simple wrappers around the newer CmpFindSubKeyByName and CmpFindValueByName routines.
- Allow cmlib to support HINIT_FILE flag for HvInitializeHive. This means the kernel doesn't need to create a section for the hive, then call HvInitializeHive with HINIT_MEMORY anymore, and can simply send the file handle. I wrote a sneaky little hack in cmlib which actually ends up doing the same idea, albeit not by using a section, making it portable.
- Fix a serious bug in CmpFindSubKeyInLeaf affected by our lack of alphabetically-sorted cells; the linear search I hacked was slightly broken.
- Remove the need to hold a LogFileName in the hive structure, since we generate it dynamically now.

svn path=/trunk/; revision=26712
2007-05-12 03:28:04 +00:00
Alex Ionescu 6ef9f575cb - Move CmInitSystem1 to cmsysini.c and merge in existing code from Cm rewrite branch.
- Merge code into cmkcbncb.c related to KCB/Cache initialization (This is "Dead" code for now, since it's not used, just initailized.)
- Rename CmiRegistryLock to CmpRegistryLock.
- The new /config registry code is now totally isolated from the old /cm code, although some of the old structures are still used until the actual rewrite is fully merged/finished.

svn path=/trunk/; revision=26710
2007-05-11 23:35:19 +00:00
Dmitry Gorbachev 10f84bdddc Do not write beyond the buffer.
svn path=/trunk/; revision=26709
2007-05-11 23:17:44 +00:00
Dmitry Gorbachev acd6160248 Do not write beyond the buffer.
svn path=/trunk/; revision=26708
2007-05-11 23:15:53 +00:00
Dmitry Gorbachev 14f97db8a4 Do not fail with less then two arguments.
svn path=/trunk/; revision=26707
2007-05-11 23:12:49 +00:00
Timo Kreuzer c04165689d make caption font bold again
svn path=/trunk/; revision=26706
2007-05-11 22:57:21 +00:00
Alex Ionescu 47687d1136 - Copy CmOpenHiveFiles to cminit.c and rename to CmpOpenHiveFiles. Extend the functionality of the routine:
- Allow caller to have full power over handles and filenames being used instead of hard-coding a pointer to the registry hive.
  - Setup proper I/O flags to disable compression and open for random access, backup-intent and allow disabling buffering.
  - Allow proper access mask/share mode when booting off read-only media.
  - Call the FS driver with FSCTL_MARK_AS_SYSTEM_HIVE if instructed.
  - Call with FSCTL_SET_COMPRESSION to make sure compression is off.
  - Allow creating the hive if it doesn't exist already.
  - Consider 0-byte opened hives as new hives.
  - Allow caller to request volume sector size and validate with hive cluster size.
  - Make .log hives hidden.
- Implemement CmpCreateEvent to allowed for overlapped I/O registry operations.
- Move more globals to cmdata.c.

svn path=/trunk/; revision=26705
2007-05-11 22:51:11 +00:00
Alex Ionescu 57ddb7b014 - Move Cmlib wrapper functions to cmwraprs.c and add the file -- no code change.
- Move CmCheckRegistry stub to cmcheck.c and add the file.
- Move CmpInitializeHive to cminit.c and add the file. Modify it to add Cm-rewrite compatible code (but #ifed out).
- Change the HiveList lock to a pushlock instead of an ERESOURCE. Rename CmiHiveListHead to CmpHiveListHead.
- Get rid of Cm security functions and stub the CmpSecurityMethod in cmse.c to always return success. Key security was never really working anyway, this just removes more code.

svn path=/trunk/; revision=26704
2007-05-11 21:35:56 +00:00
Alex Ionescu e433606342 - Move CmpCreateRootNode and CmpCreateRegistryRoot to cmsysini.c as well, and add some fixes to CmpCreateRegistryRoot to make it compatible with the Cm Rewrite when it's done.
- Initialize some stuff that wasn't being initialized in CmpCreateRootNode.
- Use CmpHiveRootSecurityDescriptor in CmpCreateRegistryRoot to protect the key.
- Save the root handle globally so we can close it during shutdown.
- Add cmkcbncb.c with an empty stub for CmpCreateKeyControlBlock. Will copy from Cm rewrite branch later.
- Properly name fields of CM_KEY_NODE in the headers of the /config tree.

svn path=/trunk/; revision=26703
2007-05-11 19:34:11 +00:00
Alex Ionescu 703c503a4f - Move CmpInitializeSystemHive and CmpCreateObjectTypes to cmsysini.c since they're almost identical to the Cm rewrite and compatible, so they're considered "new" code (although they still use EREGISTRY_HIVE).
- Add code missing in CmpInitializeSystemHive from Cm Rewrite (mainly detecting boot type and self-healing settings).
- Free a memory leak.
- Enable security for key objects.
- Rename CmiKeyType to CmpKeyObjectType.

svn path=/trunk/; revision=26702
2007-05-11 18:58:34 +00:00
Alex Ionescu 010910bc34 - Add missing ACE structures to ntifs.h.
- Add missing SeLengthSid to ntifs.h.
- Implement CmpHiveRootSecurityDescriptor and use it in CmpInitializeSystemHive and CmInitSystem1 to properly secure system-created hives.
- Implement CmpInitializeHardwareConfiguration and call it. Its job is to populate the hardware hive, but FreeLDR already does this, so it doesn't do much at the moment.

svn path=/trunk/; revision=26701
2007-05-11 18:15:13 +00:00
Dmitry Gorbachev 852a223ab9 - Terminate the string. NtUserMenuItemInfo() sometimes returns no string.
- Check if NtUserBuildMenuItemList() returns negative result.

svn path=/trunk/; revision=26700
2007-05-11 14:12:57 +00:00
Dmitry Gorbachev 5b30343d53 Check result of DRIVER_FindFromHDrvr().
svn path=/trunk/; revision=26699
2007-05-11 14:12:40 +00:00
Dmitry Gorbachev 915201e112 Fix (partially) bug #2243.
svn path=/trunk/; revision=26698
2007-05-11 14:12:21 +00:00
Aleksey Bragin 5e9f050616 Fix for linux build (#include "..\ -> #include "../).
svn path=/trunk/; revision=26696
2007-05-11 13:07:54 +00:00
Alex Ionescu 384af65d69 - More simplification: Get rid of CmImportBinaryHive, CmpImportSystemHive, CmpImportHardwareHive and all of import.c!
- Fix CmpInitializeHive to set any flags that are passed, not assume HIVE_NO_FILE by default.
- "Import" the system and hardware hives using CmpInitializeHive instead of the cmimport.c routines which are gone.
- Get rid of old/unused cmdata.c in /cm.

svn path=/trunk/; revision=26693
2007-05-11 06:24:00 +00:00
Alex Ionescu 59a8c8c5dc - Remove unusued, complex hive checking code from regfile.c.
- Implement CmpInitializeHive based on Cm Rewrite but keep code compatible with the current EREGISTRY_HIVE structure in the current Cm.
- Remove CmiCreateVolatileHive and CmiCreateTemp since they're unused.
- Implement CmpCreateRootNode based on CmRewrite and CmCreateRootNode in cmlib, CmpCopyName and CmpNameSize from Cm Rewrite and use them.
- Use CmpInitializeHive + CmpCreateRootNode for the master volatile hive.

svn path=/trunk/; revision=26692
2007-05-11 04:59:38 +00:00
Alex Ionescu 107f14ad9f - CmpInitializeMachineDependentConfiguration: Finish up by using the same code as for System BIOS Version detection for the Video BIOS Detection. This routine should be pretty much finished now since all required hardware keys are created.
svn path=/trunk/; revision=26686
2007-05-10 21:40:39 +00:00
Alex Ionescu 65a66f73b8 - Add code to detect and save the BIOS Version string to the registry. We use the same detection patterns as Windows for now (Ver, Rev, Rel, v0-9).
- All BIOS Version strings are scanned and saved in a REG_MULTI_SZ key, as on Windows. QEMU BIOS Version String is correctly detected as the CVS/SVN $ID tag, which is good enough.

svn path=/trunk/; revision=26685
2007-05-10 21:36:24 +00:00
Alex Ionescu 0efeac48a8 - Remove CPU Detection code from FreeLDR (hwcpu.c) since our kernel properly does the same job now (and better).
- Remove ReactOS hacks from recent code due to FreeLDR, since it doesn't conflict with us anymore.

svn path=/trunk/; revision=26684
2007-05-10 20:51:50 +00:00
Alex Ionescu 3fcfcbce89 - CmpInitializeMachineDependentConfiguration: Use the same strategy as for the BIOS to get the Video ROM BIOS Date as well and save it into VideoBiosDate.
svn path=/trunk/; revision=26683
2007-05-10 20:43:40 +00:00
Alex Ionescu 3511920f89 - Create \Device\PhysicalMemory in Phase 1 instead of Phase 2, since CmInit needs it.
- CmpInitializeMachineDependentConfiguration: Map the IVT to detect the Video ROM Area and save it (corretly detected on QEMU at 0xC000). Then map the BIOS at 0xF0000 and scan it for the newest BIOS Date.
- Save detected BIOS date in the System Node's SystemBiosVersion, and save BIOS-default date (11 bytes before the ROM end) in Control\BIOSINFO.

svn path=/trunk/; revision=26682
2007-05-10 20:36:15 +00:00
Alex Ionescu b5dc8db0ee - CmpInitializeMachineDependentConfiguration: Add Processor Name and Vendor ID as well (the former doesnt' work on QEMU because QEMU desn't support CPUID-EX, but on VMWare, I get: Dual Core AMD Opteron(tm) Processor 185.
svn path=/trunk/; revision=26681
2007-05-10 19:06:52 +00:00
Alex Ionescu 82bcb975e4 - CmpInitializeMachineDependentConfiguration: Write FeatureSet, MHZ and Update Signature to registry CentralProcessor node.
svn path=/trunk/; revision=26680
2007-05-10 18:11:11 +00:00
Alex Ionescu bd87454d22 - Make CmpInitializeMachineDependentConfiguration create the FloatingPointProcessor hardware key/ARC node.
svn path=/trunk/; revision=26678
2007-05-10 18:04:41 +00:00
Alex Ionescu 0d78fd8f3d - Add more code to CmpInitializeMachineDependentConfiguration to create the BIOSINFO key and to start working on the CentralProcessor key (which, in ReactOS, FreeLDR creates when it shouldn't). Creates the basic CentralProcessor nodes for now.
- Add cmconfig.c and implement a helper routine that converts from ARC CONFIGURATION_COMPONENT_DATA to a Hardware Description entry and resource descriptor.
- Fix outdated _CONFIGURATION_TYPE definition in our DDK.

svn path=/trunk/; revision=26677
2007-05-10 17:52:09 +00:00
Alex Ionescu 78b58e34df - Add i386/cmhardwr.c and start implementing CmpInitializeMachineDependentConfiguration. Currently it only detects and writes the key for PAE.
- Call the API from CmInitSystem1.

svn path=/trunk/; revision=26675
2007-05-10 16:42:24 +00:00
Dmitry Gorbachev 5b30480967 Fix a bug in ScServiceMainStub(), add more checks.
svn path=/trunk/; revision=26672
2007-05-10 10:13:01 +00:00