Partition Logic v0.77 29-06-2015 Overview: This maintenance release provides performance and quality improvements, rather than new features. Improved boot time and reliability, GUI performance, support for composite USB devices, and fixes to several hardware drivers.
[more=Changelog] Added proper support for composite USB devices, treating each interface as a separate device at the kernel level.
The CPU driver no longer determines the CPU frequency using the RTC, but rather using the system timer and a short countdown. This shortens the boot time by 1-2 seconds.
It is now possible to drag scrollbars and sliders without keeping the mouse pointer strictly within the component or window.
Added language-specific kernel configuration files for Spanish and German
Improved the window system graphics performance. A sequence of drawing and updating operations can happen without the visible screen data needing to be updated every time.
Improved the performance of the PS2 mouse driver. It was very laggy on some systems.
Added basic functionality for virtual keyboards. A virtual keyboard device is now created by default, and key strokes can be sent to it.
In the Display Settings program, the desktop wallpaper sample is now scaled to the screen aspect ratio, and if no wallpaper is chosen, the sample is filled with the desktop color.
The command window no longer requires typing a space character before or after special symbols, such as an ampersand.
Fixed and standardized command-line option processing for most of the included programs.
Re-engineered the GUI ‘canvas component for better drawing performance.
The window systems icon code that formats labels has been re-written, and will now split the text label with newlines.
The window ‘canvas component will now auto-fill with a custom background color, if one is specified.
Made the thickness of slider bars and scroll bars configurable in the window.conf file.
The USB subsystem now adds kernelDevice entries for USB devices that arent supported (arent claimed by device drivers) so that the device listing is more complete.
USB work: updated the hub definitions to make USB version compatibility more obvious, split the keyboard and mouse drivers into separate files, and removed the combined HID one. Improved the collection of interface and endpoint data. Improved support for composite (multi-interface) devices by requiring drivers to ‘claim individual interfaces, instead of the whole device. Reduced the overhead of setting EHCI static endpoint characteristics+capabilities, and fixed the setting of USB 2.0 hub address and port for low- and full-speed devices.
Changed the USB drivers so that a physical device will only have its configuration set once, in the case where drivers are claiming and using multiple interfaces.
Added a longer ready timeout to the USB disk driver.
The XHCI (USB3) driver no longer disables I/O and memory decoding in PCI when detecting controllers.
The kernel loaders gzip file classification no longer requires the file to qualify as binary; its possible to have uncompressed text blocks/members inside the archive, which can cause the gzip file to be considered text by the loader.
Reduced reliance on the system timer, particularly in the disk drivers, in favour of the kernelCpu functions that measure time in milliseconds.
The IDE disk drivers ‘identify device code now uses the data structure used by the AHCI SATA driver.
When locating the boot device, the kernel no longer relies on the OS loader to pass the LBA of boot sector. Identification is now based strictly on the boot sector signature.
The floppy disk driver has been updated so that it wont attempt to support ‘type 16′ (removable ATAPI/USB) drives.
The window librarys functions for making thumbnail images have been updated to allow images to be stretched to the maximum size, and to fill any unfilled area with a background color.
Fixed: The kernels fileStream code was not correctly handling streams opened in ‘append (write-only) mode.
Fixed: The kernels file stream code was not keeping track of/setting the file size correctly.
Fixed: The EXT filesystem driver had a bug in its readFile() functionality. When the inode uses block lists, and the starting block number is greater than the number of ‘direct blocks, the driver was simply reading the first sequence of indirect blocks, without regard to the starting block number.
Fixed: The AHCI SATA driver could fail to detect disk(s) with the error message “AHCI port %d BSY or DRQ set – skipping device detection”.
Fixed: Incorrect status and error register writing functions in the USB1 UHCI driver.
Fixed: The IDE driver wasnt dealing well with individual controllers and channels operating in ‘compatibilily mode (alongside others that may be native). Now, we examine each controller and channel, whether it has PCI I/O ports and interrupts, and whether it should continue to stay in compatibility mode or be switched to native.
Fixed: Added PCI definition for class:subclass FF:00 to suppress spurious warnings about unknown subclasses.
Fixed: Removed the automatic USB Mass Storage reset during device enumeration of USB disks. Some devices, on some controllers, stop responding, and it seems unnecessary.
Fixed: The EHCI (USB2) unregisterInterrupt() function was incorrectly unlinking interrupt queue heads.
Fixed: The middle and right mouse buttons were swapped for all USB boot-protocol mice.
Fixed: XHCI (USB3) interrupt handling to allow concurrent interrupt and non-interrupt communication between multiple endpoints.
Fixed: In the window librarys file browser widget, some of the default icon names were wrong, not up to date.
Fixed: The window librarys windowCenterDialog() function, so that it wont place a window at negative coordinates (off the top or left edges of the visible screen).
Fixed: In the Disk Manager, when resizing a partition in graphics mode (and other sliders generally) merely mousing over the slider could cause the text field to be changed.
Fixed: When setting the video resolution in the Display Settings program, the video mode file was not having its size set correctly, and an error message “File has not been opened for writing” would appear on the command line.[/more]
http://partitionlogic.org.uk/download/index.php