+2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * Makefile (DLLS): Add epsapi, psapi and wsock32.
+ * lib/ntdll/ldr/utils.c (LdrPerformRelocations): Handle the case where a
+ relocation crosses a page boundary.
+ (LdrFixupImports): Use image load address in calculatation of import
+ address list.
+
+2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * lib/fslib/vfatlib/vfatlib.h: New file.
+ * subsys/system/usetup/format.c: Ditto.
+ * subsys/system/usetup/format.h: Ditto.
+ * lib/fslib/vfatlib/vfatlib.c (GetShiftCount): Define.
+ (VfatWriteBootSector, VfatWriteFsInfo, VfatWriteFAT,
+ VfatWriteRootDirectory): New function.
+ (VfatFormat): Implement.
+ * subsys/system/usetup/bootsup.c: (InstallFat32BootCodeToFile): Use
+ 0x0000 as marker to disable backup boot sector.
+ (InstallFat32BootCodeToDisk): Add lower 8-bit to BackupBootSector.
+ Also treat 0x0000 as no backup boot sector is available.
+ * subsys/system/usetup/makefile (TARGET_SDKLIBS): Define.
+ (TARGET_OBJECTS): Add format.o.
+ * subsys/system/usetup/partlist.c (AddPartitionList): Initialize
+ PartNumber field.
+ (GetSelectedPartition): Set PartEntryNumber correctly.
+ (CreateSelectedPartition): Write partition information to disk.
+ (DeleteSelectedPartition): New function.
+ * subsys/system/usetup/partlist.h (PARTDATA): Add field CreatePartition.
+ (DeleteSelectedPartition): Prototype.
+ * subsys/system/usetup/usetup.c (ConfirmDeletePartition): New function.
+ (SelectPartitionPage): Support deletion of partition.
+ (FormatPartitionPage): Support formatting of partition.
+
+2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * tools/helper.mk (TARGET_ASFLAGS): Add -march and define MK_ARCH_ID.
+ * lib/ntdll/makefile (TARGET_ASFLAGS): Define as
+ "-I $(PATH_TO_TOP)/include".
+ (TARGET_OBJECTS): Add ldr/entry.o.
+ * lib/ntdll/ldr/startup.c: Move inline assembly code...
+ * lib/ntdll/ldr/entry.S: ...here. New file.
+
+2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/kernel32/kernel32.h (assert): Define.
+ * tools/mkhive/.cvsignore: New file.
+
+2003-04-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * subsys/system/usetup/partlist.c (AddPartitionList): Create
+ unpartitioned areas.
+ (CreatePartitionListNoGUI): Save disk geometry.
+ (PrintDiskData): Do not print hidden partition list entries.
+ (ScrollDownPartitionList, ScrollUpPartitionList): Skip hidden partition
+ list entries.
+ (GetActiveBootPartition): Use CurrentDisk as index.
+ (CreateSelectedPartition): New function.
+ * subsys/system/usetup/partlist.h (PARTDATA): Add field NewPartSize.
+ (PARTENTRY): Add fields StartingOffset and HidePartEntry.
+ (DISKENTRY): Add fields Cylinders, TracksPerCylinder, SectorsPerTrack,
+ and BytesPerSector;
+ (CreateSelectedPartition): Add Prototype.
+ * subsys/system/usetup/usetup.c (PAGE_NUMBER): Add CREATE_PARTITION_PAGE
+ and FORMAT_PARTITION_PAGE
+ (CurrentPartitionList, CurrentFileSystemList): New globals.
+ (SelectPartitionPage): Set CurrentPartitionList.
+ (PARTITION_SIZE_INPUT_FIELD_LENGTH): Define as 6.
+ (DrawInputField, ShowPartitionSizeInputBox, CreatePartitionPage,
+ CreateFileSystemList, DestroyFileSystemList, DrawFileSystemList,
+ ScrollDownFileSystemList, ScrollUpFileSystemList, FormatPartitionPage):
+ New functions.
+ (SelectFileSystemPage): Draw partition screen.
+ (CheckFileSystemPage): Handle CREATE_PARTITION_PAGE and
+ FORMAT_PARTITION_PAGE.
+ * subsys/system/usetup/usetup.h (FILE_SYSTEM, FILE_SYSTEM_LIST): Add enums.
+
+2003-04-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * tools/mkhive/infcache.c (InfpCacheFindSection, InfpCacheFindKeyLine,
+ InfFindFirstLine, InfFindFirstMatchLine, InfFindNextMatchLine,
+ InfGetLineCount): Change call to stricmp() to strcasecmp().
+ * tools/mkhive/reginf.c (GetRootKey): Ditto.
+ * tools/mkhive/registry.c (RegSetValue, RegQueryValue): Ditto.
+
+2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/kd/gdbstub.c (KdEnterDebuggerException): Fix signed/unsigned
+ comparison warning.
+ * ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Ditto.
+ * ntoskrnl/ke/i386/usertrap.c (KiUserTrapHandler): Ditto.
+ * tools/helper.mk: Do not install static libraries.
+
+2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * tools/Makefile: Fix rule for mkflpimg.
+
+2003-04-12 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * tools/cdmake/Makefile: Use HOST_CC.
+ * tools/cdmake/cdmake.c (MAX_PATH, DIR_SEPARATOR_CHAR,
+ DIR_SEPARATOR_STRING): Define.
+ (directory_record): Add fields name_on_cd and extension_on_cd.
+ (error_exit): Make a macro. Avoid using vfprintf and fprintf.
+ (write_directory_record, new_directory_record, compare_directory_order,
+ pass): Use name_on_cd and extension_on_cd.
+ (make_directory_records, get_file_specifications): Use DIR_SEPARATOR_CHAR.
+ (new_directory_record, make_directory_records): Linux implementations.
+ (main): Use DIR_SEPARATOR_CHAR.
+
+2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * lib/freetype/.cvsignore: Ignore nul.
+
+2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * drivers/storage/atapi/atapi.c (AtapiReadWrite): Expect an interrupt a
+ bit sooner.
+ * hal/halx86/isa.c (HalpGetIsaInterruptVector): Compute vector for MP.
+ * hal/halx86/pci.c (HalpGetPciInterruptVector): Ditto.
+ * hal/halx86/sysbus.c (HalpGetSystemInterruptVector): Ditto.
+ * hal/halx86/mp.c (AssignIrqVector): Rewrite.
+ (MpsTimerHandler): Disable for now.
+ (MpsSpuriousHandler): Do not acknowledge interrupt.
+ (HalAllProcessorsStarted): Only boot 1 CPU for now.
+ (RescheduleDpcRoutine): New function.
+ (RescheduleDpc): New variable.
+ (HalpInitMPS): Initialize RescheduleDpc. Fix bug in call to memset.
+ * hal/halx86/mpsirql.c: Rewrite.
+ * hal/halx86/include/mps.h (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL,
+ IRQL2VECTOR): New macros.
+ * ntoskrnl/ntoskrnl.def: Add KeRescheduleThread@0.
+ * ntoskrnl/ntoskrnl.edf: Ditto.
+ * ntoskrnl/include/internal/ke.h (KeRescheduleThread): Prototype.
+ * ntoskrnl/ke/kthread.c (KeRescheduleThread): New function.
+ * ntoskrnl/ke/i386/exp.c (KeInitExceptions): Remove unneeded call to
+ set_trap_gate().
+ * ntoskrnl/ke/i386/irq.c (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL): Correct.
+ (IRQ_BASE): Define as FIRST_DEVICE_VECTOR.
+ (NR_IRQS): Define using IRQ_BASE.
+ (KeInitInterrupts): Use IRQ_BASE.
+ (KiInterruptDispatch2): Rewrite.
+ (KiInterruptDispatch): Ditto.
+ (KeConnectInterrupt): Pass Vector to HalEnableSystemInterrupt() for MP.
+ (KeDisconnectInterrupt): Pass Vector to HalDisableSystemInterrupt() for MP.
+ * ntoskrnl/ke/i386/trap.s (_KiTrapProlog): Change 0x124 to KPCR_CURRENT_THREAD.
+
+2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * Makefile: Add format.
+ * include/fslib/vfatlib.h (VfatFormat): Prototype.
+ * lib/fmifs/format.c (VfatFormat): Add stub.
+ * lib/fmifs/makefile (TARGET_LIBS): Add vfatlib.a.
+ * lib/fslib/vfatlib/vfatlib.c (VfatFormat): Add stub.
+ * tools/helper.mk: Do not install .sym files for static libraries.
+ * subsys/system/format: New directory.
+ * subsys/system/format/makefile: New file.
+ * subsys/system/format/format.c: Ditto.
+
+2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/fslib: New directory.
+ * lib/fslib: Ditto.
+ * lib/fslib/vfatlib: Ditto.
+ * include/fslib/vfatlib.h: New file.
+ * lib/fslib/vfatlib/.cvsignore: Ditto.
+ * lib/fslib/vfatlib/Makefile: Ditto.
+ * lib/fslib/vfatlib/vfatlib.c: Ditto.
+ * Makefile: Support file system libraries
+ * lib/zlib/Makefile: Remove nostrip target.
+ * tools/helper.mk: Add nostrip target.
+
+2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * tools/.cvsignore: Ignore rline.
+
+2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * bootcd.bat: Install dosmbr.bin.
+ * drivers/storage/disk/disk.c (DiskClassDeviceControl): Pass physical
+ device object to IoWritePartitionTable().
+ * ntoskrnl/io/xhaldrv.c (xHalReadMBR): New function.
+ (xHalWriteMBR): Ditto.
+ (xHalExamineMBR): Use xHalReadMBR() to read MBR.
+ (xHalIoWritePartitionTable): Partial implement.
+ * subsys/system/usetup/bootsup.c (InstallMBRBootCodeToDisk): New function.
+ * subsys/system/usetup/bootsup.h (InstallMBRBootCodeToDisk): Prototype.
+ * subsys/system/usetup/partlist.c (CreatePartitionListNoGUI): New function.
+ (CreatePartitionList): Use CreatePartitionListNoGUI() to create partition
+ list.
+ (GetPartitionInformation): New function.
+ (MarkPartitionActive): Ditto.
+ * subsys/system/usetup/partlist.h (MarkPartitionActive): Prototype.
+ * subsys/system/usetup/usetup.c (SelectPartitionPage): Make SystemRootPath
+ point to the selected partition if no partitions are active.
+ (BootLoaderPage): If no partitions are active, then install a DOS MBR and
+ mark the selected partition active.
+
+2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * Makefile: Add bootcd target.
+ (BOOTCD_INSTALL): Set for bootcd install.
+ * rules.mak (TOPDIR): Define on windows.
+ (BOOTCD_DIR): Define.
+ (RLINE): Define.
+ * apps/tests/lpc/makefile: Handle BOOTCD_INSTALL.
+ * apps/tests/mstest/Makefile: Ditto.
+ * apps/tests/nptest/Makefile: Ditto.
+ * apps/tests/shm/makefile: Ditto.
+ * ntoskrnl/Makefile: Handle BOOTCD_INSTALL. Add bootcd target.
+ * drivers/dd/vga/makefile: Add bootcd target.
+ * drivers/dd/blue/makefile (TARGET_BOOTSTRAP): Define as yes.
+ * drivers/dd/floppy/Makefile: Ditto.
+ * drivers/fs/cdfs/makefile: Ditto.
+ * drivers/fs/ntfs/makefile: Ditto.
+ * drivers/fs/vfat/makefile: Ditto.
+ * drivers/input/keyboard/makefile: Ditto.
+ * drivers/storage/atapi/makefile: Ditto.
+ * drivers/storage/cdrom/makefile: Ditto.
+ * drivers/storage/class2/makefile: Ditto.
+ * drivers/storage/disk/makefile: Ditto.
+ * drivers/storage/scsiport/makefile: Ditto.
+ * hal/halx86/Makefile: Ditto.
+ * lib/ntdll/makefile: Ditto.
+ * subsys/system/usetup/makefile (TARGET_BOOTSTRAP): Define as yes.
+ (TARGET_BOOTSTRAP_NAME): Define as smss.exe.
+ * tools/Makefile: Add rline executable.
+ * tools/helper.mk: Support bootcd targets.
+ * tools/rline.c: New file.
+
+2003-04-04 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * lib/freetype/builds/compiler/gcc.mk (CC): Comment out; use CC from
+ rules.mak instead.
+ * lib/freetype/README.ROS: Note this in porting guide.
+
+2003-03-29 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/ex/sysinfo.c (SystemProcessInformation): Fix warning.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/ntos/rtltypes.h (PRTL_BASE_PROCESS_START_ROUTINE): Define.
+ * lib/kernel32/process/create.c (RtlBaseProcessStartRoutine): Import.
+ (KlCreateFirstThread): Support images with native subsystem ID.
+ * lib/ntdll/def/ntdll.def (RtlBaseProcessStartRoutine): Export.
+ * lib/ntdll/def/ntdll.edf (RtlBaseProcessStartRoutine): Ditto.
+ * lib/ntdll/rtl/exception.c (RtlBaseProcessStart): Forward declare.
+ (RtlBaseProcessStartRoutine, RtlBaseProcessStart): Add.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/defines.h (VS_FFI_SIGNATURE, VS_FFI_STRUCVERSION): Define.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Use exception code
+ STATUS_ACCESS_VIOLATION for exception 14.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/fs/util.c (FsRtlGetFileSize): Implement.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * lib/ntdll/rtl/nls.c (RtlCustomCPToUnicodeN, RtlMultiByteToUnicodeN,
+ RtlOemToUnicodeN, RtlUnicodeToCustomCPN, RtlUnicodeToMultiByteN,
+ RtlUnicodeToMultiByteSize, RtlUnicodeToOemN,
+ RtlUpcaseUnicodeToCustomCPN, RtlUpcaseUnicodeToMultiByteN,
+ RtlUpcaseUnicodeToOemN): Assert when unimplemented code is reached.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/ntos/zwtypes.h (FILE_BASIC_INFORMATION): Use LARGE_INTEGER,
+ not TIME type for time fields.
+ * lib/kernel32/file/copy.c (SetLastWriteTime): Adjust for new type.
+ (CopyFileExW): Ditto.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/ntos/types.h (FALSE): Protect with #ifndef FALSE.
+ (TRUE): Protect with #ifndef TRUE.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/napi/i386/segment.h (put_user, get_user,
+ bad_user_access_length, __segment_dummy, __sd, __const_sd, __put_user,
+ __get_user, __generic_memcpy_tofs, __constant_memcpy_tofs, COMMON,
+ __generic_memcpy_fromfs, __constant_memcpy_fromfs, memcpy_fromfs,
+ memcpy_tofs, get_fs_byte, get_fs_word, get_fs_long, put_fs_byte,
+ put_fs_word, put_fs_long, get_user_word, get_user_byte, get_user_long,
+ put_user_byte, put_user_word, put_user_long, get_fs, get_ds, set_fs,
+ set_ds): Remove.
+
+2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * include/ddk/pstypes.h (TLS_OUT_OF_INDEXES): Define.
+
+2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): Treat a write attempt with
+ a return value of STATUS_END_OF_FILE as a successful write.
+ * ntoskrnl/cc/copy.c (WriteCacheSegment): Ditto.
+
+2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * ntoskrnl/cm/regfile.c (CmiRemoveSubKey): Kill warnings.
+ (CmiMergeFree): Ditto.
+
2003-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/structs.h (OSVERSIONINFOEXA): Expand definition of