ChangeLog-0.2.6

From ReactOS
Jump to: navigation, search

The changelog for 0.2.6 in terms meaningful to technical end-users.

Contents

Generic

  • NVIDIA OpenGL hardware acceleration works (Gregor Anich)
  • Created NCITool for generating system call database files. (Alex Ionescu)
  • Created and enabled the OPTIMIZED Build, which is significantly faster than a non-OPTIMIZED ones. Fixed all the bugs which caused the optimized build not to work. Thanks to Thomas as well. (Alex Ionescu)

FREELDR

  • Rewrote Freeloader to use PE-Loading and relocation of NTOSKRNL instead of multiboot. This enables the Kernel to be loaded dynamically either at a 2GB or 3GB boundary, just like on NT. (Alex Ionescu)
  • Added dynamic ACPI Support. Fixed by Filip Navara as well. (Alex Ionescu)

HAL

NTOSKRNL

  • Rewritten Kernel Debugger (Gregor Anich)
  • Fix KeRaiseUserException (Alex Ionescu)
  • Fixed kernel source code for future W32API compatibility (Alex Ionescu)
  • Removed /nt directory in source code and put its contents in the respective proper place instead. (Alex Ionescu)
  • Added support for SYSENTER instruction instead of INT2E. Results in up to 80% synthetic speed improvement (ROS will feel about 1.5-2x faster on VMWare/Real Hardware) (Alex Ionescu)
  • Fixed some APC problems which blocked certain apps from working. (Alex Ionescu)
  • Rewrote Timer Implementation. More features and stability were added. The structures were modified to match the NT ones. (Alex Ionescu)
  • Rewrote Dispatcher and Queue functions to fix some bugs and optimize the code. (Alex Ionescu)
  • Sped up some Dispatcher functions. (Alex Ionescu)
  • Fixed Mutant/Mutex bugs and added some missing functionality. (Alex Ionescu)
  • Fixed Event bugs to use locks and proper signaling semantics. (Alex Ionescu)
  • Fixed Semaphore bugs during exception and release. (Alex Ionescu)
  • Removed Thread Event Pairs and added KeInitializeEventPair. (Alex Ionescu)
  • Rewrote Work Items, supporting the NT structures, allowing for Dynamic Work Items to be implemented.
  • Added priority boosting during wait operations and thread scheduling. This should make things a bit more responsive. (Alex Ionescu)
  • Rewrote Thread/Process Termination. Fixed Thread/Set get context, made some broken regression tests work, allowed Task Manager to kill processes, and removed APC hacks. Thanks to Thomas and Filip for having fixed some of the issues which this patch brought. (Alex Ionescu)
  • Sped up thread termination by using a more optimized Reaper/TerminationPort link and syncornizing with NT's. (Alex Ionescu)
  • Properly initialize Threaded DPCs (Alex Ionescu)
  • Fix leak in IO Completion IRPs not being freed. (Alex Ionescu)
  • Implemented KeRemoveServiceDescriptorTable, KeAlertResumeThread, NtAlertResumeThread, KeGetREcommendedSharedDataAlignment, NtRaiseHardError and KeRegister/DeregisterBugcheckWithReason. (Alex Ionescu)
  • Sped up bootup by caching the loaded modules and command line settings. (Alex Ionescu)
  • Rewrote Profile Object Implementation to work as on Windows. (Alex Ionescu)
  • Added dynamic ACPI Support. Fixed by Filip Navara as well. (Alex Ionescu)
  • Rewrote bug check code. Bugchecks are now much friendlier for the user, and actually work all the time without looping or becoming garbled/unavailable. Callbacks are called and IPI works on SMP when a bug check happens. (Alex Ionescu)


ATAPI

  • Works now with HDDs larger than 128 GB

ADVAPI32

KERNEL32

  • Rewrote ROS Critical Section implementation. Newer one is more complete, faster, and supports debug information. Thanks to Gunnar as well. (Alex Ionescu)

PSAPI

CRTDLL

  • Most old stuff deleted. Now share source with msvcrt via crt.lib

MSVCRT

  • Everything moved into crt.lib

VFAT

WIN32K

  • Implement NtGdiDdGetDriverInfo and NtGdiDdWaitForVerticalBlank for directx. Untested yet. (Magnus Olsen)

Networking

NDIS

PCNET

EXPLORER/WINEFILE

  • support for owner drawn context menus (Martin Fuchs)
  • changed icon symbols

IBROWSER

DirectX

  • fix some bugs in GetDeviceData so it's working now.
  • It's working now in Unreal Tournament
  • Bug fix from 0.2.6 RC1 was

1. The Y-axis are not longer choppy

2. The mouse does not have a delay at 50ms as Directx doc say. it makes it no longer choppy.

3. Set right time stamp on the mouse buffer packet

4. Set calaction right value for event counter for GetDevice 50ms equal with one event counter.

  • Now even more DirectX apps working.

(Magnus Olsen).

Libraries shared with Wine

More merging

  • Better OLE/DCOM Support
  • MSI/Windows Installer support
  • Richedit Support
  • Tons of Unicode conversion

SMSS

  • Session manager actually beginning manage environment subsystems.
  • Progress in booting kernel mode and user mode environment subsystem from the registry.

CSRSS

  • Initial code to register itself in the SM as the environment subsystem server for Win32 console programs.

USER32

32 Users at the same time

SHELL32

  • launching of display properties dialog by using the desktop context menu (Martin Fuchs)

FMIFS

VGA

RTL

USB

  • Drivers from Linux (Cromwell actually) are ported to ReactOS, and OHCI host controller driver is now working fine. However no class drivers has been developed yet, so no usb devices work right now. Next release (0.3.0) will have support for USB keyboards and mice, and also quite more popular UHCI controller. (Aleksey Bragin)

VIDEOPRT

  • NVIDIA Windows 2000 driver works

SERIAL

  • Start of the serial driver: Handle write support and some IOCTL codes. (Hervé Poussineau)
  • Implemented IOCTL_SERIAL_GET_STATS and IOCTL_SERIAL_CLEAR_STATS. (Saveliy Tretiakov)

TASKMGR

Removed all english phrases that had been hardcoded from the source code and added the phrases to the resource files. Klemens Friedl

SYSTEM CONTROL PANEL

Changelogs / Versions
0.0.x Series 0.0.8 | 0.0.9 | 0.0.10 | 0.0.11 | 0.0.12 | 0.0.13 | 0.0.14 | 0.0.15 | 0.0.16 | 0.0.17 | 0.0.18 | 0.0.19 | 0.0.20 | 0.0.21
0.1.x Series 0.1.0 | 0.1.1 | 0.1.2 | 0.1.3 | 0.1.4 | 0.1.5
0.2.x Series 0.2.0 | 0.2.1 | 0.2.2 | 0.2.3 | 0.2.4 | 0.2.5 | 0.2.6 | 0.2.7 | 0.2.8 | 0.2.9
0.3.x Series 0.3.0 | 0.3.1 | 0.3.2 | 0.3.3 | 0.3.4 | 0.3.5 | 0.3.6 | 0.3.7 | 0.3.8 | 0.3.9 | 0.3.10 | 0.3.11 | 0.3.12 | 0.3.13 | 0.3.14 | 0.3.15 | 0.3.16
Personal tools
Namespaces

Variants
Actions
Navigation
Tools