Merge 13755:14269 from trunk. Modified: branches/cache_manager_rewrite/reactos/Makefile Modified: branches/cache_manager_rewrite/reactos/apps/utils/Makefile Added: branches/cache_manager_rewrite/reactos/apps/utils/binpatch/ Deleted: branches/cache_manager_rewrite/reactos/apps/utils/consw/ Deleted: branches/cache_manager_rewrite/reactos/apps/utils/rundll32/ Added: branches/cache_manager_rewrite/reactos/apps/utils/winetest/ Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/bootsect/Makefile Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/fdebug/Makefile Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/Makefile Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw acpi.c Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mult iboot.h Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac tos.c Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/install/Makefile Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/tools/Makefile Modified: branches/cache_manager_rewrite/reactos/bootdata/hivecls.inf Modified: branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf Modified: branches/cache_manager_rewrite/reactos/bootdata/icon.ico Modified: branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff Modified: branches/cache_manager_rewrite/reactos/config Modified: branches/cache_manager_rewrite/reactos/doc/README.WINE Added: branches/cache_manager_rewrite/reactos/doc/irp cancel boilerplate.c Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/fdo.c Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/osl.c Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/tables/tbget.c Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/utils/cmglobal.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/circularbuffer. c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/cleanup.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/close.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/create.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/devctrl.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/info.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/legacy.c Modified: branches/cache_manager_rewrite/reactos/drivers/dd/serial/makefile Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/misc.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/pnp.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/power.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/rw.c Modified: branches/cache_manager_rewrite/reactos/drivers/dd/serial/serial.c Added: branches/cache_manager_rewrite/reactos/drivers/dd/serial/serial.h Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/create.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/finfo.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/fsctrl.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.h Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/rw.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/volume.c Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/finfo.c Modified: branches/cache_manager_rewrite/reactos/drivers/input/keyboard/keyboard.c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/ip/network/interface. c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/ip/network/ports.c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/acce pt.c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/tcp. c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/include/free bsd/src/sys/sys/select.h Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/include/free bsd/src/sys/sys/socketvar.h Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/include/free bsd/src/sys/sys/systm.h Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/in_ pcb.c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/int erface.c Modified: branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/rou te.c Modified: branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/listen.c Modified: branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/main.c Modified: branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/read.c Modified: branches/cache_manager_rewrite/reactos/drivers/net/afd/include/afd.h Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/datalink/lan.c Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/include/interfa ce.h Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/include/lan.h Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/include/precomp .h Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/include/tcpip.h Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/dispatch. c Modified: branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/iinfo.c Modified: branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.c Modified: branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.h Modified: branches/cache_manager_rewrite/reactos/drivers/storage/disk/disk.c Modified: branches/cache_manager_rewrite/reactos/drivers/storage/floppy/floppy.c Modified: branches/cache_manager_rewrite/reactos/drivers/video/displays/framebuf/s creen.c Modified: branches/cache_manager_rewrite/reactos/drivers/video/displays/vga/main/e nable.c Modified: branches/cache_manager_rewrite/reactos/hal/halx86/generic/timer.c Modified: branches/cache_manager_rewrite/reactos/hal/halx86/include/apic.h Modified: branches/cache_manager_rewrite/reactos/hal/halx86/include/hal.h Added: branches/cache_manager_rewrite/reactos/hal/halx86/include/ioapic.h Modified: branches/cache_manager_rewrite/reactos/hal/halx86/include/mps.h Modified: branches/cache_manager_rewrite/reactos/hal/halx86/mp/Makefile Modified: branches/cache_manager_rewrite/reactos/hal/halx86/mp/apic.c Modified: branches/cache_manager_rewrite/reactos/hal/halx86/mp/halinit_mp.c Added: branches/cache_manager_rewrite/reactos/hal/halx86/mp/ioapic.c Added: branches/cache_manager_rewrite/reactos/hal/halx86/mp/mpconfig.c Modified: branches/cache_manager_rewrite/reactos/hal/halx86/mp/mpsirql.c Modified: branches/cache_manager_rewrite/reactos/hal/halx86/mp/processor_mp.c Modified: branches/cache_manager_rewrite/reactos/include/d3d.h Added: branches/cache_manager_rewrite/reactos/include/d3d8.h Added: branches/cache_manager_rewrite/reactos/include/d3d8caps.h Added: branches/cache_manager_rewrite/reactos/include/d3d8types.h Added: branches/cache_manager_rewrite/reactos/include/d3d9.h Added: branches/cache_manager_rewrite/reactos/include/d3d9caps.h Added: branches/cache_manager_rewrite/reactos/include/d3d9types.h Added: branches/cache_manager_rewrite/reactos/include/d3drm.h Modified: branches/cache_manager_rewrite/reactos/include/d3dtypes.h Added: branches/cache_manager_rewrite/reactos/include/d3dvec.inl Added: branches/cache_manager_rewrite/reactos/include/d3dx8core.h Modified: branches/cache_manager_rewrite/reactos/include/ddk/cmtypes.h [truncated at 100 lines; 642 more skipped] _____
Modified: branches/cache_manager_rewrite/reactos/Makefile --- branches/cache_manager_rewrite/reactos/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -61,8 +61,8 @@
DLLS = acledit aclui advapi32 advpack cabinet cards comctl32 crtdll comdlg32 d3d8thk dbghelp expat fmifs freetype \ gdi32 gdiplus glu32 hid imagehlp imm32 iphlpapi kernel32 lzexpand mesa32 midimap mmdrv mpr msacm msafd \ msgina msi msimg32 msvcrt20 msvideo mswsock netapi32 ntdll ole32 oleaut32 oledlg olepro32 opengl32 \ - packet psapi riched20 richedit rpcrt4 samlib secur32 setupapi shell32 shlwapi smdll snmpapi syssetup \ - twain user32 userenv version wininet winmm winspool ws2help ws2_32 wsock32 wshirda dnsapi \ + packet psapi riched20 richedit rpcrt4 samlib secur32 setupapi shell32 shlwapi smlib smdll snmpapi \ + syssetup twain user32 userenv version wininet winmm winspool ws2help ws2_32 wsock32 wshirda dnsapi \ urlmon shdocvw dinput dinput8 dxdiagn devenum dsound lsasrv $(DLLS_KBD) $(DLLS_CPL) $(DLLS_SHELLEXT)
SUBSYS = smss win32k csrss ntvdm @@ -103,8 +103,8 @@
# System applications # autochk cmd format services setup usetup welcome winlogon msiexec -SYS_APPS = autochk calc cmd explorer expand format ibrowser msiexec regedt32 regsvr32 \ - reporterror services setup taskmgr userinit usetup welcome vmwinst \ +SYS_APPS = autochk calc cmd explorer expand format ibrowser msiexec regsvr32 \ + reporterror services setup taskmgr userinit usetup welcome vmwinst rundll32 \ winlogon regedit winefile notepad reactos lsass
# System services @@ -216,6 +216,8 @@ $(CP) media/nls/l_intl.nls $(BOOTCD_DIR)/reactos/l_intl.nls $(HALFVERBOSEECHO) [COPY] media/drivers/etc/services to $(BOOTCD_DIR)/reactos/services $(CP) media/drivers/etc/services $(BOOTCD_DIR)/reactos/services + $(HALFVERBOSEECHO) [COPY] media/drivers/etc/KDBinit to $(BOOTCD_DIR)/reactos/KDBinit + $(CP) media/drivers/etc/KDBinit $(BOOTCD_DIR)/reactos/KDBinit
bootcd_basic: bootcd_directory_layout bootcd_bootstrap_files bootcd_install_before
@@ -1043,6 +1045,8 @@ $(CP) media/nls/l_intl.nls $(INSTALL_DIR)/system32/casemap.nls $(HALFVERBOSEECHO) [INSTALL] media/drivers/etc/services to $(INSTALL_DIR)/system32/drivers/etc/services $(CP) media/drivers/etc/services $(INSTALL_DIR)/system32/drivers/etc/services + $(HALFVERBOSEECHO) [INSTALL] media/drivers/etc/KDBinit to $(INSTALL_DIR)/system32/drivers/etc/KDBinit + $(CP) media/drivers/etc/KDBinit $(INSTALL_DIR)/system32/drivers/etc/KDBinit
.PHONY: install_clean install_dirs install_before
_____
Modified: branches/cache_manager_rewrite/reactos/apps/utils/Makefile --- branches/cache_manager_rewrite/reactos/apps/utils/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/apps/utils/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -9,7 +9,7 @@
# Console system utilities # cabman cat net objdir partinfo pice ps sc stats -UTIL_APPS = cat objdir partinfo pnpdump sc shutdown stats tickcount consw rundll32 ps +UTIL_APPS = cat objdir partinfo pnpdump sc shutdown stats tickcount ps
UTIL_NET_APPS = arp finger ftp ipconfig netstat ping route telnet whois
_____
Copied: branches/cache_manager_rewrite/reactos/apps/utils/binpatch (from rev 14140, trunk/reactos/apps/utils/binpatch) _____
Copied: branches/cache_manager_rewrite/reactos/apps/utils/winetest (from rev 13990, trunk/reactos/apps/utils/winetest) _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/bootsect/Makefile --- branches/cache_manager_rewrite/reactos/boot/freeldr/bootsect/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/bootsect/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -32,26 +32,26 @@
@$(MAKE) --no-print-directory -C $(FREELDR_TOOLS_PATH)
dosmbr.bin : dosmbr.asm - @echo ===================================================== Assembling dosmbr + @echo freeldr: Assembling dosmbr @$(NASM_CMD) $(NFLAGS) -o dosmbr.bin -f bin dosmbr.asm
fat.bin : fat.asm $(BIN2C) - @echo ===================================================== Assembling fat + @echo freeldr: Assembling fat @$(NASM_CMD) $(NFLAGS) -o fat.bin -f bin fat.asm @$(BIN2C) fat.bin fat.h fat_data
fat32.bin : fat32.asm $(BIN2C) - @echo ===================================================== Assembling fat32 + @echo freeldr: Assembling fat32 @$(NASM_CMD) $(NFLAGS) -o fat32.bin -f bin fat32.asm @$(BIN2C) fat32.bin fat32.h fat32_data
isoboot.bin : isoboot.asm - @echo ===================================================== Assembling isoboot + @echo freeldr: Assembling isoboot @$(NASM_CMD) $(NFLAGS) -o isoboot.bin -f bin isoboot.asm
ext2.bin : ext2.asm - @echo ===================================================== Assembling ext2 + @echo freeldr: Assembling ext2 @$(NASM_CMD) $(NFLAGS) -o ext2.bin -f bin ext2.asm @$(BIN2C) ext2.bin ext2.h ext2_data
@@ -77,4 +77,4 @@ clean: @-$(RM) *.bin @-$(RM) *.h - @echo Clean ALL done. + @echo freeldr: Clean ALL done. _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/fdebug/Makefile --- branches/cache_manager_rewrite/reactos/boot/freeldr/fdebug/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/fdebug/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -30,23 +30,23 @@
all: fdebug.exe
fdebug.exe: $(OBJS) - @echo ===================================================== LINKING fdebug + @echo freeldr: LINKING fdebug $(CC) $(FLAGS) -o fdebug.exe $(OBJS) -lgdi32 -lcomdlg32 -Wl,--subsystem,windows
fdebug.res: fdebug.rc resource.h - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* $(RC) -o fdebug.res fdebug.rc -O coff
fdebug.o: fdebug.c rs232.h - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* $(CC) $(FLAGS) -o fdebug.o -c fdebug.c
rs232.o: rs232.c rs232.h - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* $(CC) $(FLAGS) -o rs232.o -c rs232.c
clean: @-$(RM) *.o @-$(RM) *.res @-$(RM) *.exe - @echo Clean ALL done. + @echo freeldr: Clean ALL done. _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/Makefile --- branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -57,7 +57,7 @@
@-$(RM) setupldr.sys @-$(RM) setupldr.map @$(MAKE) --no-print-directory -C $(FREELDR_TOOLS_PATH) - @echo Clean ALL done. + @echo freeldr: Clean ALL done.
#############################################
@@ -259,11 +259,11 @@
all : freeldr.sys setupldr.sys - @echo Make ALL done. + @echo freeldr: Make ALL done.
freeldr.sys : $(ALL_OBJS) $(PATH_TO_TOP)/dk/w32/lib/librossym.a - @echo ===================================================== LINKING $@ + @echo freeldr: LINKING $@ @$(LD) $(LFLAGS) -o freeldr.exe $(F_OBJS) $(PATH_TO_TOP)/dk/w32/lib/librossym.a ifeq ($(FULL_MAP),yes) @$(OBJDUMP) -d -S freeldr.exe > freeldr.map @@ -274,7 +274,7 @@
setupldr.sys : $(ALL_OBJS) - @echo ===================================================== LINKING $@ + @echo freeldr: LINKING $@ @$(LD) $(LFLAGS) -Map setupldr.map -o setupldr.exe $(S_OBJS) ifeq ($(FULL_MAP),yes) @$(OBJDUMP) -d -S setupldr.exe > setupldr.map @@ -285,15 +285,15 @@
%.o :: %.c - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* @$(CC) $(CFLAGS) -o $@ -c $< @$(DEPTOOL) $*.d
%.o :: %.S - @echo ===================================================== Assembling $* + @echo freeldr: Assembling $* @$(CC) $(CFLAGS) -o $@ -c $< @$(DEPTOOL) $*.d
%.o :: %.asm - @echo ===================================================== Assembling $* + @echo freeldr: Assembling $* @$(NASM_CMD) $(NASMFLAGS) -o $@ $< _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw acpi.c --- branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw acpi.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw acpi.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -28,6 +28,7 @@
#include "../../reactos/registry.h" #include "hardware.h"
+BOOLEAN AcpiPresent = FALSE;
static BOOL FindAcpiBios(VOID) @@ -63,6 +64,7 @@
if (FindAcpiBios()) { + AcpiPresent = TRUE; /* Create new bus key */ sprintf(Buffer, "MultifunctionAdapter\%u", *BusNumber); _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mult iboot.h --- branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mult iboot.h 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mult iboot.h 2005-03-22 20:15:04 UTC (rev 14272) @@ -52,6 +52,7 @@
#define MB_INFO_FLAG_BOOT_LOADER_NAME 0x00000200 #define MB_INFO_FLAG_APM_TABLE 0x00000400 #define MB_INFO_FLAG_GRAPHICS_TABLE 0x00000800 +#define MB_INFO_FLAG_ACPI_TABLE 0x00001000
#ifndef ASM /* Do not include here in boot.S. */ _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c --- branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -164,9 +164,7 @@
/* Re-initalize EFLAGS */ Ke386EraseFlags();
- /* Get Kernel Base and Set MmSystemRangeStart */ - FrLdrGetKernelBase(); - + /* Get the PAE Mode */ FrLdrGetPaeMode();
/* Initialize the page directory */ @@ -531,6 +529,14 @@ ULONG_PTR TargetSection; ULONG SectionSize; LONG i; + PIMAGE_DATA_DIRECTORY RelocationDDir; + PIMAGE_BASE_RELOCATION RelocationDir, RelocationEnd; + ULONG Count; + ULONG_PTR Address, MaxAddress; + PUSHORT TypeOffset; + ULONG_PTR Delta; + PUSHORT ShortPtr; + PULONG LongPtr;
/* Allocate 1024 bytes for PE Header */ ImageHeader = (PIMAGE_DOS_HEADER)MmAllocateMemory(1024); @@ -552,8 +558,9 @@ /* Now read the MZ header to get the offset to the PE Header */ NtHeader = (PIMAGE_NT_HEADERS)((PCHAR)ImageHeader + ImageHeader->e_lfanew);
- /* Save the Image Base */ - KernelBase = NtHeader->OptionalHeader.ImageBase; + /* Get Kernel Base */ + KernelBase = NtHeader->OptionalHeader.ImageBase; + FrLdrGetKernelBase();
/* Save Entrypoint */ KernelEntry = RaToPa(NtHeader->OptionalHeader.AddressOfEntryPoint); @@ -603,10 +610,65 @@ Section->Misc.VirtualSize - Section->SizeOfRawData); } } + + /* Get the Relocation Data Directory */ + RelocationDDir = &NtHeader->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_BASERELOC] ;
- /* Now relocate the file */ - /* FIXME: ADD RELOC CODE */ + /* Get the Relocation Section Start and End*/ + RelocationDir = (PIMAGE_BASE_RELOCATION)(KERNEL_BASE_PHYS + RelocationDDir->VirtualAddress); + RelocationEnd = (PIMAGE_BASE_RELOCATION)((ULONG_PTR)RelocationDir + RelocationDDir->Size); + + /* Calculate Difference between Real Base and Compiled Base*/ + Delta = KernelBase - NtHeader->OptionalHeader.ImageBase;;
+ /* Determine how far we shoudl relocate */ + MaxAddress = KERNEL_BASE_PHYS + ImageSize; + + /* Relocate until we've processed all the blocks */ + while (RelocationDir < RelocationEnd && RelocationDir->SizeOfBlock
- {
+ + /* See how many Relocation Blocks we have */ + Count = (RelocationDir->SizeOfBlock - sizeof(IMAGE_BASE_RELOCATION)) / sizeof(USHORT); + + /* Calculate the Address of this Directory */ + Address = KERNEL_BASE_PHYS + RelocationDir->VirtualAddress; + + /* Calculate the Offset of the Type */ + TypeOffset = (PUSHORT)(RelocationDir + 1); + + for (i = 0; i < Count; i++) { + + ShortPtr = (PUSHORT)(Address + (*TypeOffset & 0xFFF)); + + /* Don't relocate after the end of the loaded driver */ + if ((ULONG_PTR)ShortPtr >= MaxAddress) break; + + switch (*TypeOffset >> 12) { + + case IMAGE_REL_BASED_ABSOLUTE: + break; + + case IMAGE_REL_BASED_HIGH: + *ShortPtr += HIWORD(Delta); + break; + + case IMAGE_REL_BASED_LOW: + *ShortPtr += LOWORD(Delta); + break; + + case IMAGE_REL_BASED_HIGHLOW: + LongPtr = (PULONG)ShortPtr; + *LongPtr += Delta; + break; + } + + TypeOffset++; + } + + /* Move to the next Relocation Table */ + RelocationDir = (PIMAGE_BASE_RELOCATION)((ULONG_PTR)RelocationDir + RelocationDir->SizeOfBlock); + } + /* Increase the next Load Base */ NextModuleBase = ROUND_UP(KERNEL_BASE_PHYS + ImageSize, PAGE_SIZE);
_____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac tos.c --- branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac tos.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac tos.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -578,8 +578,9 @@
PARTITION_TABLE_ENTRY PartitionTableEntry; ULONG rosPartition;
- extern ULONG PageDirectoryStart; - extern ULONG PageDirectoryEnd; + extern ULONG PageDirectoryStart; + extern ULONG PageDirectoryEnd; + extern BOOLEAN AcpiPresent;
// // Open the operating system section @@ -596,8 +597,8 @@ * Setup multiboot information structure */ LoaderBlock.Flags = MB_INFO_FLAG_MEM_SIZE | MB_INFO_FLAG_BOOT_DEVICE | MB_INFO_FLAG_COMMAND_LINE | MB_INFO_FLAG_MODULES; - LoaderBlock.PageDirectoryStart = (ULONG)&PageDirectoryStart; - LoaderBlock.PageDirectoryEnd = (ULONG)&PageDirectoryEnd; + LoaderBlock.PageDirectoryStart = (ULONG)&PageDirectoryStart; + LoaderBlock.PageDirectoryEnd = (ULONG)&PageDirectoryEnd; LoaderBlock.BootDevice = 0xffffffff; LoaderBlock.CommandLine = (unsigned long)multiboot_kernel_cmdline; LoaderBlock.ModsCount = 0; @@ -734,6 +735,7 @@ */ MachHwDetect();
+ if (AcpiPresent) LoaderBlock.Flags |= MB_INFO_FLAG_ACPI_TABLE;
UiDrawStatusText("Loading..."); UiDrawProgressBarCenter(0, 100, "Loading ReactOS..."); _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/install/Makefile --- branches/cache_manager_rewrite/reactos/boot/freeldr/install/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/install/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -35,18 +35,18 @@
@$(MAKE) --no-print-directory -C ../bootsect
install.exe: $(OBJS) - @echo ===================================================== LINKING install + @echo freeldr: LINKING install $(CC) $(FLAGS) -o install.exe $(OBJS)
install.o: install.c install.h volume.h - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* $(CC) $(FLAGS) -o install.o -c install.c
volume.o: volume.c volume.h install.h - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* $(CC) $(FLAGS) -o volume.o -c volume.c
clean: @-$(RM) *.o @-$(RM) *.exe - @echo Clean ALL done. + @echo freeldr: Clean ALL done. _____
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/tools/Makefile --- branches/cache_manager_rewrite/reactos/boot/freeldr/tools/Makefile 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/boot/freeldr/tools/Makefile 2005-03-22 20:15:04 UTC (rev 14272) @@ -25,16 +25,16 @@
bin2c$(EXE_POSTFIX)
all : $(TOOLS) - @echo Tools are up to date. + @echo freeldr: Tools are up to date.
% :: all
%$(EXE_POSTFIX): %.c - @echo ===================================================== Compiling $* + @echo freeldr: Compiling $* @$(HOST_CC) -Wall -O3 -o $@ $<
.PHONY : clean clean: @-$(RM) $(TOOLS) - @echo Clean ALL done. + @echo freeldr: Clean ALL done. _____
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivecls.inf --- branches/cache_manager_rewrite/reactos/bootdata/hivecls.inf 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/bootdata/hivecls.inf 2005-03-22 20:15:04 UTC (rev 14272) @@ -344,4 +344,133 @@
HKCR,"WinNT\Clsid","",0x00000002,"{8b20cd60-0f29-11cf-abc4-02608c9e7553} "
+ +; For language support: + +HKCR,"MIME",,0x00000012 +HKCR,"MIME\Database",,0x00000012 +HKCR,"MIME\Database\Rfc1766",,0x00000012 +HKCR,"MIME\Database\Rfc1766","0436",0x00000000,"af;Afrikaans" +HKCR,"MIME\Database\Rfc1766","041C",0x00000000,"sq;Albanian" +HKCR,"MIME\Database\Rfc1766","0001",0x00000000,"ar;Arabic" +HKCR,"MIME\Database\Rfc1766","0401",0x00000000,"ar-sa;Arabic (Saudi Arabia)" +HKCR,"MIME\Database\Rfc1766","0801",0x00000000,"ar-iq;Arabic (Iraq)" +HKCR,"MIME\Database\Rfc1766","0C01",0x00000000,"ar-eg;Arabic (Egypt)" +HKCR,"MIME\Database\Rfc1766","1001",0x00000000,"ar-ly;Arabic (Libya)" +HKCR,"MIME\Database\Rfc1766","1401",0x00000000,"ar-dz;Arabic (Algeria)" +HKCR,"MIME\Database\Rfc1766","1801",0x00000000,"ar-ma;Arabic (Morocco)" +HKCR,"MIME\Database\Rfc1766","1C01",0x00000000,"ar-tn;Arabic (Tunisia)" +HKCR,"MIME\Database\Rfc1766","2001",0x00000000,"ar-om;Arabic (Oman)" +HKCR,"MIME\Database\Rfc1766","2401",0x00000000,"ar-ye;Arabic (Yemen)" +HKCR,"MIME\Database\Rfc1766","2801",0x00000000,"ar-sy;Arabic (Syria)" +HKCR,"MIME\Database\Rfc1766","2C01",0x00000000,"ar-jo;Arabic (Jordan)" +HKCR,"MIME\Database\Rfc1766","3001",0x00000000,"ar-lb;Arabic (Lebanon)" +HKCR,"MIME\Database\Rfc1766","3401",0x00000000,"ar-kw;Arabic (Kuwait)" +HKCR,"MIME\Database\Rfc1766","3801",0x00000000,"ar-ae;Arabic (U.A.E.)" +HKCR,"MIME\Database\Rfc1766","3C01",0x00000000,"ar-bh;Arabic (Bahrain)" +HKCR,"MIME\Database\Rfc1766","4001",0x00000000,"ar-qa;Arabic (Qatar)" +HKCR,"MIME\Database\Rfc1766","042D",0x00000000,"eu;Basque" +HKCR,"MIME\Database\Rfc1766","0402",0x00000000,"bg;Bulgarian" +HKCR,"MIME\Database\Rfc1766","0423",0x00000000,"be;Belarusian" +HKCR,"MIME\Database\Rfc1766","0403",0x00000000,"ca;Catalan" +HKCR,"MIME\Database\Rfc1766","0004",0x00000000,"zh;Chinese" +HKCR,"MIME\Database\Rfc1766","0404",0x00000000,"zh-tw;Chinese (Taiwan)" +HKCR,"MIME\Database\Rfc1766","0804",0x00000000,"zh-cn;Chinese (China)" +HKCR,"MIME\Database\Rfc1766","0C04",0x00000000,"zh-hk;Chinese (Hong Kong SAR)" +HKCR,"MIME\Database\Rfc1766","1004",0x00000000,"zh-sg;Chinese (Singapore)" +HKCR,"MIME\Database\Rfc1766","041A",0x00000000,"hr;Croatian" +HKCR,"MIME\Database\Rfc1766","0405",0x00000000,"cs;Czech" +HKCR,"MIME\Database\Rfc1766","0406",0x00000000,"da;Danish" +HKCR,"MIME\Database\Rfc1766","0413",0x00000000,"nl;Dutch (Netherlands)" +HKCR,"MIME\Database\Rfc1766","0813",0x00000000,"nl-be;Dutch (Belgium)" +HKCR,"MIME\Database\Rfc1766","0009",0x00000000,"en;English" +HKCR,"MIME\Database\Rfc1766","0409",0x00000000,"en-us;English (United States)" +HKCR,"MIME\Database\Rfc1766","0809",0x00000000,"en-gb;English (United Kingdom)" +HKCR,"MIME\Database\Rfc1766","0C09",0x00000000,"en-au;English (Australia)" +HKCR,"MIME\Database\Rfc1766","1009",0x00000000,"en-ca;English (Canada)" +HKCR,"MIME\Database\Rfc1766","1409",0x00000000,"en-nz;English (New Zealand)" +HKCR,"MIME\Database\Rfc1766","1809",0x00000000,"en-ie;English (Ireland)" +HKCR,"MIME\Database\Rfc1766","1C09",0x00000000,"en-za;English (South Africa)" +HKCR,"MIME\Database\Rfc1766","2009",0x00000000,"en-jm;English (Jamaica)" +HKCR,"MIME\Database\Rfc1766","2809",0x00000000,"en-bz;English (Belize)" +HKCR,"MIME\Database\Rfc1766","2C09",0x00000000,"en-tt;English (Trinidad)" +HKCR,"MIME\Database\Rfc1766","0425",0x00000000,"et;Estonian" +HKCR,"MIME\Database\Rfc1766","0438",0x00000000,"fo;Faeroese" +HKCR,"MIME\Database\Rfc1766","0429",0x00000000,"fa;Farsi" +HKCR,"MIME\Database\Rfc1766","040B",0x00000000,"fi;Finnish" +HKCR,"MIME\Database\Rfc1766","040C",0x00000000,"fr;French (France)" +HKCR,"MIME\Database\Rfc1766","080C",0x00000000,"fr-be;French (Belgium)" +HKCR,"MIME\Database\Rfc1766","0C0C",0x00000000,"fr-ca;French (Canada)" +HKCR,"MIME\Database\Rfc1766","100C",0x00000000,"fr-ch;French (Switzerland)" +HKCR,"MIME\Database\Rfc1766","140C",0x00000000,"fr-lu;French (Luxembourg)" +HKCR,"MIME\Database\Rfc1766","043C",0x00000000,"gd;Gaelic" +HKCR,"MIME\Database\Rfc1766","0407",0x00000000,"de;German (Germany)" +HKCR,"MIME\Database\Rfc1766","0807",0x00000000,"de-ch;German (Switzerland)" +HKCR,"MIME\Database\Rfc1766","0C07",0x00000000,"de-at;German (Austria)" +HKCR,"MIME\Database\Rfc1766","1007",0x00000000,"de-lu;German (Luxembourg)" +HKCR,"MIME\Database\Rfc1766","1407",0x00000000,"de-li;German (Liechtenstein)" +HKCR,"MIME\Database\Rfc1766","0408",0x00000000,"el;Greek" +HKCR,"MIME\Database\Rfc1766","040D",0x00000000,"he;Hebrew" +HKCR,"MIME\Database\Rfc1766","0439",0x00000000,"hi;Hindi" +HKCR,"MIME\Database\Rfc1766","040E",0x00000000,"hu;Hungarian" +HKCR,"MIME\Database\Rfc1766","040F",0x00000000,"is;Icelandic" +HKCR,"MIME\Database\Rfc1766","0421",0x00000000,"in;Indonesian" +HKCR,"MIME\Database\Rfc1766","0410",0x00000000,"it;Italian (Italy)" +HKCR,"MIME\Database\Rfc1766","0810",0x00000000,"it-ch;Italian (Switzerland)" +HKCR,"MIME\Database\Rfc1766","0411",0x00000000,"ja;Japanese" +HKCR,"MIME\Database\Rfc1766","0412",0x00000000,"ko;Korean" +HKCR,"MIME\Database\Rfc1766","0426",0x00000000,"lv;Latvian" +HKCR,"MIME\Database\Rfc1766","0427",0x00000000,"lt;Lithuanian" +HKCR,"MIME\Database\Rfc1766","042F",0x00000000,"mk;FYRO Macedonian" +HKCR,"MIME\Database\Rfc1766","043E",0x00000000,"ms;Malay (Malaysia)" +HKCR,"MIME\Database\Rfc1766","043A",0x00000000,"mt;Maltese" +HKCR,"MIME\Database\Rfc1766","0414",0x00000000,"no;Norwegian (Bokmal)" +HKCR,"MIME\Database\Rfc1766","0814",0x00000000,"no;Norwegian (Nynorsk)" +HKCR,"MIME\Database\Rfc1766","0415",0x00000000,"pl;Polish" +HKCR,"MIME\Database\Rfc1766","0416",0x00000000,"pt-br;Portuguese (Brazil)" +HKCR,"MIME\Database\Rfc1766","0816",0x00000000,"pt;Portuguese (Portugal)" +HKCR,"MIME\Database\Rfc1766","0417",0x00000000,"rm;Rhaeto-Romanic" +HKCR,"MIME\Database\Rfc1766","0418",0x00000000,"ro;Romanian" +HKCR,"MIME\Database\Rfc1766","0818",0x00000000,"ro-mo;Romanian (Moldova)" +HKCR,"MIME\Database\Rfc1766","0419",0x00000000,"ru;Russian" +HKCR,"MIME\Database\Rfc1766","0819",0x00000000,"ru-mo;Russian (Moldova)" +HKCR,"MIME\Database\Rfc1766","0C1A",0x00000000,"sr;Serbian (Cyrillic)" +HKCR,"MIME\Database\Rfc1766","081A",0x00000000,"sr;Serbian (Latin)" +HKCR,"MIME\Database\Rfc1766","041B",0x00000000,"sk;Slovak" +HKCR,"MIME\Database\Rfc1766","0424",0x00000000,"sl;Slovenian" +HKCR,"MIME\Database\Rfc1766","042E",0x00000000,"sb;Sorbian" +HKCR,"MIME\Database\Rfc1766","040A",0x00000000,"es;Spanish (Traditional Sort)" +HKCR,"MIME\Database\Rfc1766","080A",0x00000000,"es-mx;Spanish (Mexico)" +HKCR,"MIME\Database\Rfc1766","0C0A",0x00000000,"es;Spanish (International Sort)" +HKCR,"MIME\Database\Rfc1766","100A",0x00000000,"es-gt;Spanish (Guatemala)" +HKCR,"MIME\Database\Rfc1766","140A",0x00000000,"es-cr;Spanish (Costa Rica)" +HKCR,"MIME\Database\Rfc1766","180A",0x00000000,"es-pa;Spanish (Panama)" +HKCR,"MIME\Database\Rfc1766","1C0A",0x00000000,"es-do;Spanish (Dominican Republic)" +HKCR,"MIME\Database\Rfc1766","200A",0x00000000,"es-ve;Spanish (Venezuela)" +HKCR,"MIME\Database\Rfc1766","240A",0x00000000,"es-co;Spanish (Colombia)" +HKCR,"MIME\Database\Rfc1766","280A",0x00000000,"es-pe;Spanish (Peru)" +HKCR,"MIME\Database\Rfc1766","2C0A",0x00000000,"es-ar;Spanish (Argentina)" +HKCR,"MIME\Database\Rfc1766","300A",0x00000000,"es-ec;Spanish (Ecuador)" +HKCR,"MIME\Database\Rfc1766","340A",0x00000000,"es-cl;Spanish (Chile)" +HKCR,"MIME\Database\Rfc1766","380A",0x00000000,"es-uy;Spanish (Uruguay)" +HKCR,"MIME\Database\Rfc1766","3C0A",0x00000000,"es-py;Spanish (Paraguay)" +HKCR,"MIME\Database\Rfc1766","400A",0x00000000,"es-bo;Spanish (Bolivia)" +HKCR,"MIME\Database\Rfc1766","440A",0x00000000,"es-sv;Spanish (El Salvador)" +HKCR,"MIME\Database\Rfc1766","480A",0x00000000,"es-hn;Spanish (Honduras)" +HKCR,"MIME\Database\Rfc1766","4C0A",0x00000000,"es-ni;Spanish (Nicaragua)" +HKCR,"MIME\Database\Rfc1766","500A",0x00000000,"es-pr;Spanish (Puerto Rico)" +HKCR,"MIME\Database\Rfc1766","0430",0x00000000,"sx;Sutu" +HKCR,"MIME\Database\Rfc1766","041D",0x00000000,"sv;Swedish" +HKCR,"MIME\Database\Rfc1766","081D",0x00000000,"sv-fi;Swedish (Finland)" +HKCR,"MIME\Database\Rfc1766","041E",0x00000000,"th;Thai" +HKCR,"MIME\Database\Rfc1766","0431",0x00000000,"ts;Tsonga" +HKCR,"MIME\Database\Rfc1766","0432",0x00000000,"tn;Tswana" +HKCR,"MIME\Database\Rfc1766","041F",0x00000000,"tr;Turkish" +HKCR,"MIME\Database\Rfc1766","0422",0x00000000,"uk;Ukrainian" +HKCR,"MIME\Database\Rfc1766","0420",0x00000000,"ur;Urdu" +HKCR,"MIME\Database\Rfc1766","042A",0x00000000,"vi;Vietnamese" +HKCR,"MIME\Database\Rfc1766","0434",0x00000000,"xh;Xhosa" +HKCR,"MIME\Database\Rfc1766","043D",0x00000000,"ji;Yiddish" +HKCR,"MIME\Database\Rfc1766","0435",0x00000000,"zu;Zulu" + ; EOF _____
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf --- branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf 2005-03-22 20:15:04 UTC (rev 14272) @@ -257,10 +257,10 @@
; Subsystems HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Debug",0x00020000,"" HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Kmode",0x00020000,"%SystemRoot%\system32\win32k.sys " -HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Optional",0x00070000,"Posix Os2" +HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Optional",0x00010000,"Posix","Os2" HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Os2",0x00020000,"%SystemRoot%\system32\os2ss.exe" HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Posix",0x00020000,"%SystemRoot%\system32\psxss.exe" -HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Required",0x00070000,"Debug Windows" +HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Required",0x00010000,"Debug","Windows" HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Subsystems","Windows",0x00020000,"%SystemRoot%\system32\csrss.ex e"
; 3Com 3c905 Driver @@ -674,8 +674,13 @@
HKLM,"SYSTEM\CurrentControlSet\Services\Serial","ErrorControl",0x0001000 1,0x00000000
HKLM,"SYSTEM\CurrentControlSet\Services\Serial","Group",0x00000000,"Base "
HKLM,"SYSTEM\CurrentControlSet\Services\Serial","ImagePath",0x00020000," system32\drivers\serial.sys" -HKLM,"SYSTEM\CurrentControlSet\Services\Serial","Start",0x00010001,0x00 000001 +HKLM,"SYSTEM\CurrentControlSet\Services\Serial","Start",0x00010001,0x00 000004
HKLM,"SYSTEM\CurrentControlSet\Services\Serial","Type",0x00010001,0x0000 0001 +;hard coded values +HKLM,"SYSTEM\CurrentControlSet\Services\Serial\Enum","0",0x00000000,"AC PI\PNP0501" +HKLM,"SYSTEM\CurrentControlSet\Services\Serial\Enum","Count",0x00010001 ,0x00000001 +HKLM,"SYSTEM\CurrentControlSet\Services\Serial\Enum","NextInstance",0x0 0010001,0x00000001 +HKLM,"SYSTEM\CurrentControlSet\Enum\ACPI\PNP0501\0000","Service",0x0000 0000,"serial"
; Packet driver
HKLM,"SYSTEM\CurrentControlSet\Services\Packet","ErrorControl",0x0001000 1,0x00000001 _____
Modified: branches/cache_manager_rewrite/reactos/bootdata/icon.ico (Binary files differ) _____
Modified: branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff --- branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff 2005-03-22 20:15:04 UTC (rev 14272) @@ -99,6 +99,7 @@
lib\msacm\msacm32.dll 1 lib\msafd\msafd.dll 1 lib\msgina\msgina.dll 1 +lib\msi\msi.dll 1 lib\msimg32\msimg32.dll 1 lib\msvcrt\msvcrt.dll 1 lib\msvcrt20\msvcrt20.dll 1 @@ -108,6 +109,7 @@ lib\oleaut32\oleaut32.dll 1 lib\olepro32\olepro32.dll 1 lib\psapi\psapi.dll 1 +lib\riched20\riched20.dll 1 lib\richedit\riched32.dll 1 lib\rpcrt4\rpcrt4.dll 1 lib\samlib\samlib.dll 1 @@ -147,11 +149,13 @@ subsys\system\explorer\explorer-cfg-template.xml 4 subsys\system\explorer\notifyhook\notifyhook.dll 1 subsys\system\format\format.exe 1 +subsys\system\ibrowser\ibrowser.exe 1 +subsys\system\msiexec\msiexec.exe 1 subsys\system\notepad\notepad.exe 1 subsys\system\regedit\regedit.exe 4 -subsys\system\regedt32\regedt32.exe 1 subsys\system\regsvr32\regsvr32.exe 1 subsys\system\reporterror\reporterror.exe 1 +subsys\system\rundll32\rundll32.exe 1 subsys\system\services\services.exe 1 subsys\system\setup\setup.exe 1 subsys\system\taskmgr\taskmgr.exe 1 _____
Modified: branches/cache_manager_rewrite/reactos/config --- branches/cache_manager_rewrite/reactos/config 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/config 2005-03-22 20:15:04 UTC (rev 14272) @@ -5,14 +5,13 @@
# Possible values in the future: alpha,i386,m68k,mips,powerpc ARCH := i386
- # -# Which cpu should reactos optimze for +# Which cpu should reactos optimize for # example : i486, i586, pentium, pentium2, pentium3, pentium4 # athlon-xp, athlon-mp, k6-2, # -# see gcc manual for more cpu name and which cpu it can -# be optimze for. +# see gcc manual for more cpu names and which cpus it can +# be optimized for. #
OARCH := i486 @@ -28,26 +27,11 @@ DBG := 0
# -# Whether to compile with optimizations -# -OPTIMIZED := 0 - -# # Whether to compile a multiprocessor or single processor version # CONFIG_SMP := 0
# -# Whether to compile for ACPI compliant systems -# -ACPI := 0 - -# -# whether to use a 3GB User, 1GB Kernel memory map -# -3GB := 0 - -# # Which version of NDIS do we support up to? # #NDISVERSION=NDIS50 _____
Modified: branches/cache_manager_rewrite/reactos/doc/README.WINE --- branches/cache_manager_rewrite/reactos/doc/README.WINE 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/doc/README.WINE 2005-03-22 20:15:04 UTC (rev 14272) @@ -26,52 +26,55 @@
work to import a new dll.
The following build tools are derived from Wine. +reactos/tools/unicode # Synced to Wine-20050310 +reactos/tools/wpp # Synced to Wine-20050310 reactos/tools/bin2res # Resource to binary converter -reactos/tools/winebuild # Synced to Wine-20050211 +reactos/tools/winebuild # Synced to Wine-20050310 reactos/tools/wmc # Wine Message Compiler -reactos/tools/wrc # Synced to Wine-20050211 +reactos/tools/wrc # Synced to Wine-20050310 +reactos/tools/widl # Synced to Wine-20050310
The following shared libraries are a 100% port from Winehq sources.
-reactos/lib/cabinet # Synced to Wine-20050211 -reactos/lib/comctl32 # Synced to Wine-20050211 -reactos/lib/comdlg32 # Synced to Wine-20050211 -reactos/lib/dinput # Synced to Wine-20050211 -reactos/lib/dinput8 # Synced to Wine-20050211 -reactos/lib/icmp # Synced to Wine-20050211 +reactos/lib/cabinet # Synced to Wine-20050310 +reactos/lib/comctl32 # Synced to Wine-20050310 +reactos/lib/comdlg32 # Synced to Wine-20050310 +reactos/lib/dinput # Synced to Wine-20050310 +reactos/lib/dinput8 # Synced to Wine-20050310 +reactos/lib/icmp # Synced to Wine-20050310 reactos/lib/iphlpapi # Out of sync reactos/lib/imagehlp # Patches for BindImage need review and submission to winehq. reactos/lib/msvcrt20 # Out of sync -reactos/lib/mpr # Synced to Wine-20050211 +reactos/lib/mpr # Synced to Wine-20050310 reactos/lib/msacm # Out of sync -reactos/lib/msimg32 # Synced to Wine-20050211 -reactos/lib/msi # Synced to Wine-20050211 +reactos/lib/msimg32 # Synced to Wine-20050310 +reactos/lib/msi # Synced to Wine-20050310 reactos/lib/msvideo # Out of sync reactos/lib/netapi32 # Out of sync reactos/lib/odbc32 # In sync. Depends on port of Linux ODBC. -reactos/lib/ole32 # Synced to Wine-20050211 -reactos/lib/oleaut32 # Synced to Wine-20050211 -reactos/lib/oledlg # Synced to Wine-20050211 -reactos/lib/olepro32 # Synced to Wine-20050211 -reactos/lib/richedit # Synced to Wine-20050211 -reactos/lib/rpcrt4 # Synced to Wine-20050211 -reactos/lib/setupapi # Synced to Wine-20050125 # CVS -reactos/lib/shell32 # Synced to Wine-20050211 -reactos/lib/shdocvw # Synced to Wine-20050211 -reactos/lib/shlwapi # Synced to Wine-20050211 +reactos/lib/ole32 # Synced to Wine-20050310 +reactos/lib/oleaut32 # Synced to Wine-20050310 +reactos/lib/oledlg # Synced to Wine-20050310 +reactos/lib/olepro32 # Synced to Wine-20050310 +reactos/lib/riched20 # Synced to Wine-20050310 +reactos/lib/richedit # Synced to Wine-20050310 +reactos/lib/rpcrt4 # Synced to Wine-20050310 +reactos/lib/setupapi # Synced to Wine-20050310 +reactos/lib/shell32 # Synced to Wine-20050310 +reactos/lib/shdocvw # Synced to Wine-20050310 +reactos/lib/shlwapi # Synced to Wine-20050310 reactos/lib/twain # Out of sync -reactos/lib/unicode # Dependancy on this lib needs to be removed. Synced to Wine-20050211 -reactos/lib/urlmon # Synced to Wine-20050211 +reactos/lib/urlmon # Synced to Wine-20050310 reactos/lib/version # Out of sync reactos/lib/wininet # Out of sync -reactos/lib/winmm # Synced to Wine-20050211 -reactos/lib/winmm/midimap # Synced to Wine-20050211 -reactos/lib/winmm/wavemap # Synced to Wine-20050211 +reactos/lib/winmm # Synced to Wine-20050310 +reactos/lib/winmm/midimap # Synced to Wine-20050310 +reactos/lib/winmm/wavemap # Synced to Wine-20050310
ReactOS shares the following programs with Winehq. reactos/subsys/system/regedit # Out of sync reactos/subsys/system/expand # Out of sync -reactos/subsys/system/msiexec # Synced to Wine-20050211 +reactos/subsys/system/msiexec # Synced to Wine-20050311
In addition the following libs, dlls and source files are mostly based on code ported from Winehq CVS. If you are looking to update something in these files _____
Copied: branches/cache_manager_rewrite/reactos/doc/irp cancel boilerplate.c (from rev 13860, trunk/reactos/doc/irp cancel boilerplate.c) --- trunk/reactos/doc/irp cancel boilerplate.c 2005-03-06 21:01:04 UTC (rev 13860) +++ branches/cache_manager_rewrite/reactos/doc/irp cancel boilerplate.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -0,0 +1,103 @@
+ + +/* +Boiler plate for irp cancelation, for irp queues you manage yourself +-Gunnar +*/ + + + +CancelRoutine( + DEV_OBJ Dev, + Irp + ) +{ + //don't need this since we have our own sync. protecting irp cancellation + IoReleaseCancelSpinLock(Irp->CancelIrql); + + theLock = Irp->Tail.Overlay.DriverContext[3]; + + Lock(theLock); + RemoveEntryList(&Irp->Tail.Overlay.ListEntry); + Unlock(theLock); + + Irp->IoStatus.Status = STATUS_CANCELLED; + Irp->IoStatus.Information = 0; + + IoCompleteRequest(Irp, IO_NO_INCREMENT); + +} + + +QUEUE_BOLIERPLATE +{ + Lock(theLock); + + Irp->Tail.Overlay.DriverContext[3] = &theLock; + + IoSetCancelRoutine(Irp, CancelRoutine); + if (Irp->Cancel && IoSetCancelRoutine(Irp, NULL)) + { + /* + Irp has already been cancelled (before we got to queue it), + and we got to remove the cancel routine before the canceler could, + so we cancel/complete the irp ourself. + */ + + Unlock(theLock); + + Irp->IoStatus.Status = STATUS_CANCELLED; + Irp->IoStatus.Information = 0; + IoCompleteRequest(Irp, IO_NO_INCREMENT); + + return FALSE; + } + + //else were ok + + + Irp->IoStatus.Status = STATUS_PENDING; + IoMarkIrpPending(Irp); + + InsertTailList(Queue); + + Unlock(theLock); + +} + + +DEQUEUE_BOILERPLATE +{ + Lock(theLock); + + Irp = RemoveHeadList(Queue); + + if (!IoSetCancelRoutine(Irp, NULL)) + { + /* + Cancel routine WILL be called after we release the spinlock. It will try to remove + the irp from the list and cancel/complete this irp. Since we allready removed it, + make its ListEntry point to itself. + */ + + InitializeListHead(&Irp->Tail.Overlay.ListEntry); + + Unlock(theLock); + + return; + } + + + /* + Cancel routine will NOT be called, canceled or not. + The Irp might have been canceled (Irp->Cancel flag set) but we don't care, + since we are to complete this Irp now anyways. + */ + + Unlock(theLock); + + Irp->IoStatus.Status = STATUS_SUCCESS; + Irp->IoStatus.Information = 0; + IoCompleteRequest(Irp, IO_NO_INCREMENT); + +} _____
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/fdo.c --- branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/fdo.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/fdo.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -60,12 +60,7 @@
L"ACPI\%S", Node->device.id.hid);
- if (!AcpiCreateUnicodeString(DeviceID, Buffer, PagedPool)) - { - return FALSE; - } - - return TRUE; + return AcpiCreateUnicodeString(DeviceID, Buffer, PagedPool); }
@@ -108,8 +103,15 @@ AcpiCreateInstanceIDString(PUNICODE_STRING InstanceID, BM_NODE *Node) { - /* FIXME: Create unique instnce id. */ - return AcpiCreateUnicodeString(InstanceID, L"0000", PagedPool); + WCHAR Buffer[10]; + + if (Node->device.id.uid[0]) + swprintf(Buffer, L"%S", Node->device.id.uid); + else + /* FIXME: Generate unique id! */ + swprintf(Buffer, L"0000"); + + return AcpiCreateUnicodeString(InstanceID, Buffer, PagedPool); }
@@ -126,7 +128,7 @@ ANSI_STRING AnsiString; ACPI_STATUS AcpiStatus; PACPI_DEVICE Device; - NTSTATUS Status; + NTSTATUS Status = STATUS_SUCCESS; BM_NODE *Node; ULONG Size; ULONG i; _____
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/osl.c --- branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/osl.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/drivers/bus/acpi/ospm/osl.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -601,5 +601,5 @@
u32 acpi_os_get_thread_id (void) { - return (ULONG)PsGetCurrentThreadId(); + return (ULONG)PsGetCurrentThreadId() + 1; } _____
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/tables/tbget.c --- branches/cache_manager_rewrite/reactos/drivers/bus/acpi/tables/tbget.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/drivers/bus/acpi/tables/tbget.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -503,7 +503,7 @@
REPORT_ERROR (("Invalid signature where RSDP indicates %s should be located\n", table_signature));
- return (status); + return (AE_NO_ACPI_TABLES); }
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/utils/cmglobal.c --- branches/cache_manager_rewrite/reactos/drivers/bus/acpi/utils/cmglobal.c 2005-03-22 20:16:41 UTC (rev 14271) +++ branches/cache_manager_rewrite/reactos/drivers/bus/acpi/utils/cmglobal.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -389,6 +389,7 @@
acpi_gbl_acpi_mutex_info[i].mutex = NULL; acpi_gbl_acpi_mutex_info[i].locked = FALSE; acpi_gbl_acpi_mutex_info[i].use_count = 0; + acpi_gbl_acpi_mutex_info[i].owner_id = 0; }
/* Global notify handlers */ _____
Copied: branches/cache_manager_rewrite/reactos/drivers/dd/serial/circularbuffer. c (from rev 14180, trunk/reactos/drivers/dd/serial/circularbuffer.c) _____
Copied: branches/cache_manager_rewrite/reactos/drivers/dd/serial/cleanup.c (from rev 14080, trunk/reactos/drivers/dd/serial/cleanup.c) --- trunk/reactos/drivers/dd/serial/cleanup.c 2005-03-14 22:38:12 UTC (rev 14080) +++ branches/cache_manager_rewrite/reactos/drivers/dd/serial/cleanup.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -0,0 +1,24 @@
+/* $Id: + * + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS kernel + * FILE: drivers/dd/serial/cleanup.c + * PURPOSE: Serial IRP_MJ_CLEANUP operations + * + * PROGRAMMERS: HervÚ Poussineau (poussine@freesurf.fr) + */ + +#define NDEBUG +#include "serial.h" + +NTSTATUS STDCALL +SerialCleanup( + IN PDEVICE_OBJECT DeviceObject, + IN PIRP Irp) +{ + DPRINT("Serial: IRP_MJ_CLEANUP\n"); + Irp->IoStatus.Information = 0; + Irp->IoStatus.Status = STATUS_SUCCESS; + IoCompleteRequest(Irp, IO_NO_INCREMENT); + return STATUS_SUCCESS; +} Property changes on: branches/cache_manager_rewrite/reactos/drivers/dd/serial/cleanup.c ___________________________________________________________________ Name: svn:eol-style + native _____
Copied: branches/cache_manager_rewrite/reactos/drivers/dd/serial/close.c (from rev 14080, trunk/reactos/drivers/dd/serial/close.c) --- trunk/reactos/drivers/dd/serial/close.c 2005-03-14 22:38:12 UTC (rev 14080) +++ branches/cache_manager_rewrite/reactos/drivers/dd/serial/close.c 2005-03-22 20:15:04 UTC (rev 14272) @@ -0,0 +1,29 @@
+/* $Id: + * + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS kernel + * FILE: drivers/dd/serial/close.c + * PURPOSE: Serial IRP_MJ_CLOSE operations + * + * PROGRAMMERS: HervÚ Poussineau (poussine@freesurf.fr) + */ + +#define NDEBUG [truncated at 1000 lines; 142972 more skipped]