Commit Graph
23221 Commits
Author SHA1 Message Date
Aleksey Bragin 8782e641b6 Unmap accessible, but completely unneeded by kernel memory too
svn path=/branches/winldr/; revision=25538
2007-01-19 22:23:58 +00:00
Aleksey Bragin 73948584ab - Add MempDisablePages() which unmaps non-accessible memory areas from KSEG0 page table.
svn path=/branches/winldr/; revision=25537
2007-01-19 21:37:25 +00:00
Aleksey Bragin 41911adc3d Move LOADER_HIGH_ZONE definition to a header file (thus removing hardcoded value from meminit.c).
NT4 boots with both 16Mb and 32Mb loading sizes. Win2003 doesn't fit into 16Mb, so ~32Mb should be used.

svn path=/branches/winldr/; revision=25531
2007-01-19 15:08:05 +00:00
Aleksey Bragin 65e2f272fc Merge 25117.
Revision: 25117
Author: greatlrd
Date: 20:39:01, 10 december 2006.
Message:
Commit the patch from bug 1874 even if it does not use the RDMSR and WRMSR measure method, we need to use the RDMSR and WRMSR instructions for dual core and only if CPU supports them (see Intel documentations AP-485 to see how to do it). The patch is from HTO (Dmitry Gorbachev). Bugfix detections of RTSC support for single and dual core by me, adding check if the CPU supports RDMSR and WRMSR and send a true or false value to GetCpuSpeed, so we know which method we should use. HTO patch should be used when it is 'false', otherwise we should use the RDMSR and WRMSR measure method.

svn path=/branches/winldr/; revision=25510
2007-01-18 15:09:04 +00:00
Aleksey Bragin de9707fbd0 Merge r25264.
Author: hpoussin
Date: 17:50:16, 1 january 2007.
Message:
Better support for non X86 systems

svn path=/branches/winldr/; revision=25509
2007-01-18 15:03:46 +00:00
Aleksey Bragin 98384a1081 - Slightly change the MAD adding routine, by always saving memory type in the list. Still not 100% correct since it does not save information about very high and weird stuff in memory (reserved areas reported by BIOS). But necessity of this has not been confirmed...
svn path=/branches/winldr/; revision=25195
2006-12-20 12:26:43 +00:00
Aleksey Bragin e1cf9b2cdb - Unlock lower 1Mb for use by memory manager, and properly mark all "unusable" places (except one place which is marked as strange).
- Get rid of in-memory hardware registry, hwdetect functions which has not been converted yet to use configuration lists are #if0ed or not used for now. Reduces memory requirements a little.

svn path=/branches/winldr/; revision=25191
2006-12-19 16:44:14 +00:00
Aleksey Bragin 1ef87df69a - Make NTFS functions debug prints more verbose
svn path=/branches/winldr/; revision=25120
2006-12-10 22:07:05 +00:00
Aleksey Bragin 8bfe603005 - MM: Don't place memory allocation bitmap right into the first 16Mb of memory - revert back to the old algorithm, which places it as high as possible
- MM: Mark space under the mem alloc bitmap as free right before going to virtual mode, thus it doesn't get mapped
- Save NT version which user wants to boot in the extension

svn path=/branches/winldr/; revision=25103
2006-12-09 16:54:37 +00:00
Aleksey Bragin 2c85923902 - Remove unnecessary functions
- Get, parse and use system path and options from the ini file
- Comment-changes / cleanup

svn path=/branches/winldr/; revision=25098
2006-12-09 10:24:29 +00:00
Aleksey Bragin f2ec0c1fb7 More ConfigurationDataLength fixes
svn path=/branches/winldr/; revision=25095
2006-12-08 22:29:12 +00:00
Aleksey Bragin c865dc23b7 - Fix a bunch of lame bugs in keyboard/pointer controllers creation (missing configuration data length, wrong count of resources, etc).
Now NT boots up with working keyboard and mouse.

svn path=/branches/winldr/; revision=25094
2006-12-08 21:40:45 +00:00
Aleksey Bragin b30b44a833 - Remove unnecessary _NTSYSTEM_ definition
- Work on hardware detection - now keyboard and pointer controllers + peripherals are detected and stored in configuration lists, however this change breaks booting (NT hangs during i8042prt initialization in QEMU).

svn path=/branches/winldr/; revision=25093
2006-12-08 20:20:24 +00:00
Aleksey Bragin aacdf4bcfe Get rid of a hack commited in 25070 (and reverted in 25071).
Alex really watches commits, beware!

svn path=/branches/winldr/; revision=25072
2006-12-05 21:06:40 +00:00
Aleksey Bragin 9177998d8e Commit my initial work on getting Windows NT booting.
Right now, if stars on the sky get in proper places and you are lucky, it will load Windows NT 4.0 to GUI (it will be unusable due to absence of mouse/keyboard though).

Here are log messages from my local tree which I used to develop this initial version (just for reference):
Revision: 8
Author: alekseyb
Date: 22:56:15, 24 íîÿáðÿ 2006 ã.
Message:
- Initialize "ValidBootPartition" field of ArcDiskInfo (without it Windows thinks the partition is not good)
- Zero ArcDiskInfo before usage
- Load filesystem driver (fastfat.sys for now)

Windows NT4 now boots, but of course there are no mouse/keyboard.
----
Modified : /freeldr/arch/i386/hardware.c
Modified : /freeldr/windows/winldr.c
Modified : /freeldr/windows/wlregistry.c


Revision: 7
Author: alekseyb
Date: 15:37:37, 24 íîÿáðÿ 2006 ã.
Message:
- Fix Disk Peripheral entries to really be of DiskPeripheral type and PeripheralClass
- Add to PcHwDetect() proper Child/Sibling-isation (depending on what has been found)
- Fixed PCI information recognizing (changed structure + properly filling HardwareMechanism field)
- Creating of actual configuration descriptor for PCI bus added
- Fix conversion of hardware configuration list to virtual addressing, also adding better debug prints
- Remove annoying DbgPrints from PE loader
- Remove memory map dumping
----
Modified : /freeldr/arch/i386/hardware.c
Modified : /freeldr/arch/i386/hwpci.c
Modified : /freeldr/include/arch/i386/hardware.h
Modified : /freeldr/windows/conversion.c
Modified : /freeldr/windows/peloader.c
Modified : /freeldr/windows/winldr.c


Revision: 6
Author: alekseyb
Date: 1:42:20, 23 íîÿáðÿ 2006 ã.
Message:
- Add ISA bus configuration entry, Disk Controller and Peripherals
- Comment about number of GDT entries
- Changed order of boot drivers - now they should correspond to what NT awaits

The compatibility with ReactOS booting is broken at this point, because hardware detection results are being placed into configuration list and not in-memory registry.
----
Modified : /freeldr/arch/i386/hardware.c
Modified : /freeldr/include/winldr.h
Modified : /freeldr/windows/wlregistry.c


Revision: 5
Author: alekseyb
Date: 23:37:40, 18 íîÿáðÿ 2006 ã.
Message:
- Modify number of GDT descriptors, since NT Kernel assumes space for 128 GDT descriptors, and if it is less - it overwrites IDT entries following them, which lead to a major fsckup, and how kernel booted to some stage is a mystery.
- Slightly modified comments, removed unnecessary TODO

WinDBG connects now and seems to work (don't forget to disable debug output of freeldr, otherwise WinDBG can't connect).
----
Modified : /freeldr/include/winldr.h
Modified : /freeldr/windows/winldr.c


Revision: 4
Author: alekseyb
Date: 18:25:49, 16 íîÿáðÿ 2006 ã.
Message:
- Fix RegistryPath in boot drivers (appended service name)
- Convert RegistryPath.Buffer and pointer to DTE to VirtualAddresses (fixes KMODE_EXCEPTION)
----
Modified : /freeldr/windows/winldr.c
Modified : /freeldr/windows/wlregistry.c


Revision: 3
Author: alekseyb
Date: 17:10:21, 15 íîÿáðÿ 2006 ã.
Message:
- Implemented storing configuration data of disks.
- Moved hardware detection to a later stage so that it doesn't write to an unitialized pointer and actually stores the data in LoaderBlock->ConfigurationRoot.

InitializeHWConfig() function should go away soon.
----
Modified : /freeldr/arch/i386/hardware.c
Modified : /freeldr/windows/conversion.c
Modified : /freeldr/windows/winldr.c


Revision: 2
Author: alekseyb
Date: 16:54:12, 13 íîÿáðÿ 2006 ã.
Message:
Import of what has been already done so far by me (WinNT 4.0 says INACCESSIBLE_BOOT_DEVICE). Just started working on Configuration List.
----
Modified : /freeldr/arch/i386/hardware.c
Modified : /freeldr/arch/i386/i386idt.S
Modified : /freeldr/arch/i386/i386trap.S
Modified : /freeldr/arch/i386/xboxhw.c
Modified : /freeldr/debug.c
Modified : /freeldr/freeldr_arch.rbuild
Modified : /freeldr/freeldr_base.rbuild
Modified : /freeldr/freeldr_base64k.rbuild
Modified : /freeldr/freeldr_main.rbuild
Modified : /freeldr/include/arch/i386/machpc.h
Modified : /freeldr/include/arch/i386/machxbox.h
Modified : /freeldr/include/machine.h
Modified : /freeldr/include/mm.h
Modified : /freeldr/include/winldr.h
Modified : /freeldr/linuxboot.c
Modified : /freeldr/machine.c
Modified : /freeldr/mm/meminit.c
Modified : /freeldr/mm/mm.c
Modified : /freeldr/reactos/binhive.c
Modified : /freeldr/reactos/reactos.c
Modified : /freeldr/reactos/setupldr.c
Modified : /freeldr/windows/peloader.c
Modified : /freeldr/windows/winldr.c
Modified : /freeldr/windows/wlmemory.c
Modified : /freeldr/windows/wlregistry.c


Revision: 1
Author: alekseyb
Date: 16:45:55, 13 íîÿáðÿ 2006 ã.
Message:
FreeLdr import from ReactOS trunk r24725
----
Added : /freeldr
Added : /freeldr/CHANGELOG
Added : /freeldr/arch
Added : /freeldr/arch/i386
Added : /freeldr/arch/i386/_alloca.S
Added : /freeldr/arch/i386/arch.S
Added : /freeldr/arch/i386/archmach.c
Added : /freeldr/arch/i386/boot.S
Added : /freeldr/arch/i386/drvmap.S
Added : /freeldr/arch/i386/fathelp.asm
Added : /freeldr/arch/i386/hardware.c
Added : /freeldr/arch/i386/hwacpi.c
Added : /freeldr/arch/i386/hwapm.c
Added : /freeldr/arch/i386/hwcpu.c
Added : /freeldr/arch/i386/hwpci.c
Added : /freeldr/arch/i386/i386cpu.S
Added : /freeldr/arch/i386/i386disk.c
Added : /freeldr/arch/i386/i386idt.S
Added : /freeldr/arch/i386/i386pnp.S
Added : /freeldr/arch/i386/i386rtl.c
Added : /freeldr/arch/i386/i386trap.S
Added : /freeldr/arch/i386/i386vid.c
Added : /freeldr/arch/i386/int386.S
Added : /freeldr/arch/i386/linux.S
Added : /freeldr/arch/i386/loader.c
Added : /freeldr/arch/i386/machpc.c
Added : /freeldr/arch/i386/machxbox.c
Added : /freeldr/arch/i386/mb.S
Added : /freeldr/arch/i386/pccons.c
Added : /freeldr/arch/i386/pcdisk.c
Added : /freeldr/arch/i386/pcmem.c
Added : /freeldr/arch/i386/pcrtc.c
Added : /freeldr/arch/i386/pcvideo.c
Added : /freeldr/arch/i386/portio.c
Added : /freeldr/arch/i386/xboxcons.c
Added : /freeldr/arch/i386/xboxdisk.c
Added : /freeldr/arch/i386/xboxfont.c
Added : /freeldr/arch/i386/xboxhw.c
Added : /freeldr/arch/i386/xboxi2c.c
Added : /freeldr/arch/i386/xboxmem.c
Added : /freeldr/arch/i386/xboxrtc.c
Added : /freeldr/arch/i386/xboxvideo.c
Added : /freeldr/arch/powerpc
Added : /freeldr/arch/powerpc/boot.s
Added : /freeldr/arch/powerpc/mach.c
Added : /freeldr/arch/powerpc/mboot.c
Added : /freeldr/bootmgr.c
Added : /freeldr/cache
Added : /freeldr/cache/blocklist.c
Added : /freeldr/cache/cache.c
Added : /freeldr/cmdline.c
Added : /freeldr/comm
Added : /freeldr/comm/rs232.c
Added : /freeldr/custom.c
Added : /freeldr/debug.c
Added : /freeldr/disk
Added : /freeldr/disk/disk.c
Added : /freeldr/disk/partition.c
Added : /freeldr/drivemap.c
Added : /freeldr/freeldr.c
Added : /freeldr/freeldr.rbuild
Added : /freeldr/freeldr_arch.rbuild
Added : /freeldr/freeldr_base.rbuild
Added : /freeldr/freeldr_base64k.rbuild
Added : /freeldr/freeldr_main.rbuild
Added : /freeldr/freeldr_startup.rbuild
Added : /freeldr/fs
Added : /freeldr/fs/ext2.c
Added : /freeldr/fs/fat.c
Added : /freeldr/fs/fs.c
Added : /freeldr/fs/fsrec.c
Added : /freeldr/fs/iso.c
Added : /freeldr/fs/ntfs.c
Added : /freeldr/include
Added : /freeldr/include/arch
Added : /freeldr/include/arch/i386
Added : /freeldr/include/arch/i386/hardware.h
Added : /freeldr/include/arch/i386/i386.h
Added : /freeldr/include/arch/i386/machpc.h
Added : /freeldr/include/arch/i386/machxbox.h
Added : /freeldr/include/arch.h
Added : /freeldr/include/bootmgr.h
Added : /freeldr/include/cache.h
Added : /freeldr/include/cmdline.h
Added : /freeldr/include/comm.h
Added : /freeldr/include/debug.h
Added : /freeldr/include/disk.h
Added : /freeldr/include/drivemap.h
Added : /freeldr/include/freeldr.h
Added : /freeldr/include/fs
Added : /freeldr/include/fs/ext2.h
Added : /freeldr/include/fs/fat.h
Added : /freeldr/include/fs/iso.h
Added : /freeldr/include/fs/ntfs.h
Added : /freeldr/include/fs.h
Added : /freeldr/include/fsrec.h
Added : /freeldr/include/inffile.h
Added : /freeldr/include/inifile.h
Added : /freeldr/include/keycodes.h
Added : /freeldr/include/linux.h
Added : /freeldr/include/machine.h
Added : /freeldr/include/miscboot.h
Added : /freeldr/include/mm.h
Added : /freeldr/include/multiboot.h
Added : /freeldr/include/of.h
Added : /freeldr/include/options.h
Added : /freeldr/include/oslist.h
Added : /freeldr/include/portio.h
Added : /freeldr/include/reactos.h
Added : /freeldr/include/registry.h
Added : /freeldr/include/rtl.h
Added : /freeldr/include/ui
Added : /freeldr/include/ui/gui.h
Added : /freeldr/include/ui/tui.h
Added : /freeldr/include/ui.h
Added : /freeldr/include/ver.h
Added : /freeldr/include/video.h
Added : /freeldr/include/winldr.h
Added : /freeldr/inffile
Added : /freeldr/inffile/inffile.c
Added : /freeldr/inifile
Added : /freeldr/inifile/ini_init.c
Added : /freeldr/inifile/inifile.c
Added : /freeldr/inifile/parse.c
Added : /freeldr/linuxboot.c
Added : /freeldr/machine.c
Added : /freeldr/math
Added : /freeldr/math/i386.h
Added : /freeldr/math/libgcc2.c
Added : /freeldr/math/libgcc2.h
Added : /freeldr/math/longlong.h
Added : /freeldr/math/powerpc.h
Added : /freeldr/miscboot.c
Added : /freeldr/mm
Added : /freeldr/mm/meminit.c
Added : /freeldr/mm/mm.c
Added : /freeldr/options.c
Added : /freeldr/oslist.c
Added : /freeldr/reactos
Added : /freeldr/reactos/arcname.c
Added : /freeldr/reactos/binhive.c
Added : /freeldr/reactos/reactos.c
Added : /freeldr/reactos/registry.c
Added : /freeldr/reactos/setupldr.c
Added : /freeldr/rtl
Added : /freeldr/rtl/libsupp.c
Added : /freeldr/rtl/list.c
Added : /freeldr/setupldr.rbuild
Added : /freeldr/setupldr_main.rbuild
Added : /freeldr/ui
Added : /freeldr/ui/gui.c
Added : /freeldr/ui/tui.c
Added : /freeldr/ui/tuimenu.c
Added : /freeldr/ui/ui.c
Added : /freeldr/version.c
Added : /freeldr/video
Added : /freeldr/video/bank.c
Added : /freeldr/video/fade.c
Added : /freeldr/video/palette.c
Added : /freeldr/video/pixel.c
Added : /freeldr/video/video.c
Added : /freeldr/windows
Added : /freeldr/windows/conversion.c
Added : /freeldr/windows/peloader.c
Added : /freeldr/windows/winldr.c
Added : /freeldr/windows/wlmemory.c
Added : /freeldr/windows/wlregistry.c




svn path=/branches/winldr/; revision=25067
2006-12-04 22:08:02 +00:00
Aleksey Bragin 2db25525a7 Create a place for work on creating a bootloader capable of booting Windows NT (from 4.0 up to 5.2).
Base is FreeLdr from trunk r25063.

svn path=/branches/winldr/; revision=25066
2006-12-04 21:36:54 +00:00
Christoph von Wittich 94d2fce55a -revert janderwalds change until because it breaks the gcc 4.x build
svn path=/trunk/; revision=25065
2006-12-04 16:46:52 +00:00
Christoph von Wittich 6fb82c4caf fix ks.rbuild
svn path=/trunk/; revision=25064
2006-12-04 16:34:26 +00:00
Michael Steil ef4a67dd52 ReactOS Intel Mac compatibility commits, part 2/2
== LBA Functionality BIOS Bug ==
When the BIOS is asked whether it supports INT 13 extensions, it will answer yes if the device is a hard disk, but it will pretend that even the function to ask about this functionality is unsupported if asked about a CD drive. This is similar to what is documented in the code already: Some BIOSes return "doesn't support INT 13 extensions" for CDs.
Code has been added to use INT 13 extensions (and therefore LBA read as opposed to CHS) even if the BIOS claims this is unsupported, if the device is a CD-ROM. The check for the drive type is done by comparing with 0x90: If the device number is 0x90 or above, it's a CD drive. (On Insyde's BIOS, it's 0x90, on most others, it's 0x9F).

(Ironically, Insyde's BIOS cannot even do CHS on CDs, so if the bootloader correctly asks for LBA support, it will get a "no" and will fail when trying to do CHS: When querying the max. CHS values, the BIOS returns 0 sectors per track, which will make conversions from LBA to CHS impossible.)

== LBA Read BIOS Bug ==
When trying to read from CD using the LBA function INT 13/42, the BIOS function will return as it is supposed to, with CF and AH cleared, but with an unchanged buffer. This is because freeldr passes a "disk address packets" that structure contains an extra 64 bit value at the end and is therefore 24 bytes long instead of 16. This is perfectly fine, and a BIOS should ignore any extra data in the structure, but Insyde's BIOS, which doesn't support the extra field (and thus the EDD-3.0 standard) just ignores the complete task and returns in this case.
The extra field has been removed from the structure in freeldr, as it is not used anyway. The structure is now 16 bytes long.

svn path=/trunk/; revision=25063
2006-12-04 15:33:06 +00:00
Michael Steil eb565e3840 ReactOS Intel Mac compatibility commits, part 1/2, by Michael Steil.
== A20 Gate and the Keyboard Controller ==
In order to turn on the A20 gate, the keyboard controller has to be emptied. This is done in freeldr by reading bytes until the keyboard controller signals it's empty. Intel Macs don't have PS/2 keyboard controller and the status register always reads back 0xFF, so the "there is data" bit will never be cleared. (The same problem has been in GRUB as well as in Darwin's BIOS loader.)
Added code that doesn't bother to clear the keyboard buffer if the status port reads back 0xFF.

== Serial Port BIOS Bug ==
Insyde's BIOS reports that there is a COM1 serial port at 0x3F8 (as stored in 0040:0000 in memory), but there is none in Intel Macs, so freeldr spins infinitely while trying to empty the serial port's buffer.
Added code that makes sure the loop only gets executed up to 200 times

svn path=/trunk/; revision=25062
2006-12-04 15:00:11 +00:00
Peter Ward f790496bd4 - Small compilation fix for roshttpd.
svn path=/trunk/; revision=25060
2006-12-04 01:50:47 +00:00
Johannes Anderwald 369fa23f46 - give roshttpd a rbuild file
- include it in build
- fix building with msvc

svn path=/trunk/; revision=25059
2006-12-03 23:35:02 +00:00
Johannes Anderwald 231c494a6f -fix compiling with msvc
svn path=/trunk/; revision=25058
2006-12-03 22:43:22 +00:00
Johannes Anderwald 9595935d9f - fix compiling with msvc
- replace getopt with simple parse routine

svn path=/trunk/; revision=25057
2006-12-03 22:29:07 +00:00
Johannes Anderwald 4c44ec895f - fix some warnings when compiling with msvc
svn path=/trunk/; revision=25056
2006-12-03 21:51:50 +00:00
Johannes Anderwald f737754b34 - remove unused make files
svn path=/trunk/; revision=25055
2006-12-03 21:37:38 +00:00
Johannes Anderwald 06d8efb11c - fix msvc compile problems
svn path=/trunk/; revision=25054
2006-12-03 21:33:17 +00:00
Johannes Anderwald 8dde1987db - move undocumented constants to more appropiate location
- thnx to Alex_Ionescu

svn path=/trunk/; revision=25053
2006-12-03 21:19:23 +00:00
Andrew Greenwood e07f82102e New stubbing of KS (Kernel Streaming) and associated header files.
Updated README.


svn path=/trunk/; revision=25052
2006-12-03 21:11:56 +00:00
Magnus Olsen c33ae33877 started hacked SetCooperativeLevel and ReCreateDirectDraw code. we need it if hwnd are not null we need recreate the HAL and HEL interface for we already inistate it early.
svn path=/trunk/; revision=25051
2006-12-03 21:11:40 +00:00
Johannes Anderwald 54876ff367 - default to __cdecl convention for gui / console apps
svn path=/trunk/; revision=25050
2006-12-03 21:09:04 +00:00
Aleksey Bragin 5edc5e319f [AUDIT]
Change name everywhere back to Ariadne because real person could not be contacted. Non-working email address removed.

If this person doesn't contact me before finish of the audit, the copyright will be transferred to ReactOS Foundation.

svn path=/trunk/; revision=25049
2006-12-03 21:06:03 +00:00
Andrew Greenwood d79fc4b62c Kernel Streaming cleanup - replacing with new stubs shortly!
svn path=/trunk/; revision=25048
2006-12-03 20:59:52 +00:00
Johannes Anderwald 77255e9849 -fix compiling with msvc
svn path=/trunk/; revision=25047
2006-12-03 20:48:25 +00:00
Johannes Anderwald af06dadd48 - include gettype in build process
- add missing dependency

svn path=/trunk/; revision=25046
2006-12-03 20:43:21 +00:00
Johannes Anderwald 316ca7fc58 - give getfirefox a WinMain it deserves
- theres no reason to include NDK for it
- fix a bug in dlOnProgress while debugging it

svn path=/trunk/; revision=25045
2006-12-03 20:36:53 +00:00
Johannes Anderwald 86f3d0e7ea - fix some warnings when compiling with msvc
svn path=/trunk/; revision=25044
2006-12-03 20:17:55 +00:00
Johannes Anderwald 9a841754c2 - fix correct app type
svn path=/trunk/; revision=25043
2006-12-03 20:04:09 +00:00
Johannes Anderwald 69b8ba7ca7 - fix warning
- fix svn properties

svn path=/trunk/; revision=25042
2006-12-03 19:52:19 +00:00
Johannes Anderwald 5a8d8453fc - update readme
See issue #1890 for more details.

svn path=/trunk/; revision=25041
2006-12-03 19:17:19 +00:00
Johannes Anderwald 8a50599cf5 - update readme
See issue #1890 for more details.

svn path=/trunk/; revision=25040
2006-12-03 19:16:30 +00:00
Magnus Olsen 1de675a898 Fixed HALDD been setup right.
svn path=/trunk/; revision=25039
2006-12-03 18:53:05 +00:00
Johannes Anderwald 076a9dd89e - New changes for the Greek Keyboard layout
- by Apostolos Alexiadis
- fix some formating issues
See issue #1831 for more details.

svn path=/trunk/; revision=25038
2006-12-03 18:48:29 +00:00
Alex Ionescu 144e232b5f - Fix IopSecurityFile to send the IRP to the right device.
- Fix IoSetInformation to send the IRP to the right device.
- After the major fix in 24996, the functions that had been written to work with the I/O bug stopped working (by sending the IRP to the wrong device object, which, due to the bug was the ""right"" object), this is now fixed and the bootcd works again.

svn path=/trunk/; revision=25037
2006-12-03 18:04:32 +00:00
Magnus Olsen a75646d6df fixed so we return almost same flags in DD->GBL->dwFlags left todo is the DDRAWI_DRIVERINFO2
svn path=/trunk/; revision=25036
2006-12-03 17:54:25 +00:00
Magnus Olsen bdd9cf7f66 fixed a refer counter that was zero out, but it should be have set to 1
svn path=/trunk/; revision=25035
2006-12-03 15:42:12 +00:00
Magnus Olsen 3d923733e6 Fixed the initate process so it do not call to StartDirectDrawHel when GUID DDCREATE_HARDWAREONLY
Fixed the initate process so it do not call to StartDirectDrawHal when GUID DDCREATE_EMLATIONONLY

svn path=/trunk/; revision=25034
2006-12-03 15:23:44 +00:00
Aleksey Bragin 087400a522 NCI interface auditing, sysfuncs.lst.
- Fixed NtCompressKey() and NtQuerySystemEnvironmentValueEx() prototypes (they were incorrectly declared/defined, but had a correct number of params in sysfuncs.lst)
- Fixed incorrect number of parameters specified in sysfuncs.lst for NtLoadKeyEx(), NtQueryOpenSubKeysEx(), NtTranslateFilePath()

sysfuncs.lst now perfectly matches all functions definitions.

svn path=/trunk/; revision=25029
2006-12-03 11:13:05 +00:00
Magnus Olsen 3c9294fcf4 Fixed so we can optain the HAL again.
Do not trust on ddraw value yo get blindy. it will rest the value you need to optian the HAL and you can not spy on it so easy then.

svn path=/trunk/; revision=25027
2006-12-03 09:12:35 +00:00
Alex Ionescu 58fad00c6d - Clear capacity data buffer before reading it to avoid 0xCCCCCCCC values and manually set failure code if nobody filled it in (a hack, but I don't understand our pre-Nixon-era storage stack to "properly" fix it, so this is good enough and kills off the 0xCCCCCCCC byte non-paged pool allocations.
svn path=/trunk/; revision=25026
2006-12-03 08:08:08 +00:00