Version history for PartitionLogic (Floppy version)
<<Back to software description
Changes for v0.71 - v0.72
- Added initial USB2 (EHCI) support.
- Added a stub USB3 (XHCI) driver.
- Improved the output of the Devices program so that it's a little bit more readable.
- Improved the collection and recording of the CPU vendor string.
- Did a bit more development of the simple ACPI driver.
- Fixed: USB hub detection could happen twice - once during the controller's initial device connection detection, and again when device driver detection happened for hubs.
- Fixed: The first (number 1) USB port didn't work on many systems.
- Fixed: Certain USB hard disks not working, and/or causing boot failure.
- Fixed: The AHCI driver no longer fails to initialize if PCI bus mastering can't be enabled.
- Fixed: ACPI (soft) power off could cause some systems not to boot the operating system on the next attempt.
- Fixed: Removed possible infinite loop condition in the 'real time clock' driver.
- Fixed: When installed somewhere via the native installer (for example on a USB stick) with a FAT32 filesystem type, the volume label was not being set properly.
- Fixed: The graphical native installer would often skip the password setting box (flashing up and then disappearing).
- Fixed: The TAB key was not working when using a USB keyboard.
Changes for v0.68 - v0.69
- Lots of improvements to the USB subsystem, the UHCI controller driver, and the USB SCSI disk driver.
- Added support for USB mice and keyboards
- Implemented a driver for USB hubs.
- Extensive tuning of the FAT filesystem driver, and the scanning of the FAT at mount time is much faster. Also fixed a small fragmentation bug, and turned a bunch of extraneous error messages into debug messages.
- The FAT filesystem driver no longer stores the entire FAT in memory.
- Added basic hardware detection for OpenHCI (OHCI) USB controllers so that they're at least indicated correctly at boot time.
- Improved checks for removable (CD, floppy, flash, etc.) media changes, invalidating the disk cache when the media changes.
- The file browsing program now shows the name of the current directory, and remembers any selection from the parent directory so that it's still selected if the user goes back up.
- Re-wrote much of the PS/2 mouse driver, primarily to deal with out-of-sync situations that could cause the mouse pointer to jump around.
- Added a '-n' option to the 'format' program, for specifying the volume name (label).
- Fixed: Partitions were shown with the starting and ending cylinders determined from information in the partition table. This could be inconsistent (particularly in the case where geometries are guessed) with the geometry of the disk as seen by the operating system.
- Fixed: Using a hotplugged USB disk caused a divide-by-zero exception because the geometry values were zeros. The SCSI disk driver now determines/guesses a geometry, and Partition Logic now ensures that the values are non-zero.
- Fixed: The file browsing program could crash when you using the 'del' key to delete files.
- Fixed: An occasional problem with ejecting ATAPI (CD-ROM, etc) devices.
- Fixed: Spurious interrupts could cause a hang in the interrupt controller driver.
- Fixed: Command line option processing for the 'format' and 'rm' commands.
- Fixed: USB "can't enable port" messages.
- Fixed: The USB UHCI driver was not returning the number of bytes transferred for transactions with a data phase.
- Fixed: The _xpndfmt() function was causing exceptions when printing pointers in hex using the %p format specifier, and a divide-by-zero fault when printing GUIDs in Partition Logic.
Changes for v0.67 - v0.68
- Re-implemented software disk caching. Previously, performance was generally bad but could be horrendous under heavy I/O, as well as evidence that it was buggy and could occasionally cause data corruption.
- Added read caching (lookahead) and write caching ability to the IDE disk driver.
- Turn off software disk caching when doing disk copy, partition paste, and resize operations; vastly improves I/O throughput for faster finishes.
- Implemented new A20 address line code in the 'vloader' OS loader, for successful booting on more systems.
- Implemented secure deletion of disk data with an 'erase' operation to enable this for partitions and whole disks.
- Implemented secure deletion for files, which does passes of overwriting the file data. Added a command line option to the 'rm' command to invoke it.
- Reorganized heap memory management for more efficient memory usage.
- Updated some partition type descriptions.
- Added a '-R' option to the 'cp' command for recursive directory copying.
- Added regular write-protect checking to the floppy driver, so that by the time a filesystem is mounted we should already know if we can't write to it.
- The 'Devices' tool now contains an attribute with the system memory size.
- The 'Program Manager' tool now shows disk performance stats.
- Added a kernel call that allows, among other things, disabling the software cache for a disk.
- Fixed: The floppy disk version was too full, crashed during boot when it subsequently couldn't write log files, etc., and otherwise spewed too many error messages.
- Fixed: When an IDE disk had a small multi-sector value like 16, reading large files could fail with an error message about too many PRD entries.
- Fixed: When NTFS resizing failed (for example with the unclean journal message) control didn't return - it just hung.
- Fixed: With large IDE disks, on some systems, the kernel seemed to be getting 28-bit-limited geometry and size values from the BIOS. The IDE driver replaces BIOS values with ones from the device/controller wherever they make more sense.
- Fixed: The mouse was leaving tracers at the rightmost and bottommost edges of the screen (1 pixel width).
- Fixed: Most of the file system data allocated in the FAT filesystem driver was not deallocated, simply discarded.
- Fixed: Recursive file copying caused a page fault when it encountered an empty directory.
- Fixed: The 'move partition', 'copy disk', and 'paste partition' progress indicators would show the correct remaining time, but the percentage could overflow (going back to a smaller number and then climbing again).
Changes for v0.66 - v0.67
- Added PCI, DMA, and 48-bit addressing support to the IDE disk driver.
- Did some touchups and corrections to the Visopsys I/O code in the libntfs (NTFS resizing) library.
- Implemented the ability to move logical partitions.
- Implemented the ability to create 'preceding' logical partitions.
- Modularized the Partition Logic application for better organization, and so that it will be better suited for working with different types of disk labels in future releases.
- Cleaned up new compilation warnings generated by GCC 4.1.1.
- Progress dialogs that show time remaining no longer zero-pad the values, and specify the time in "X hours X minutes" format.
- Fixed: The FAT filesystem driver's "get unused clusters" function was not properly returning an error if no free clusters were found.
- Fixed: Using the cursor keys in Partition Logic's disk list or partition list did not change the selection.
- Fixed: The kernel's GUID generation routine could hang because it was using an uninitialized lock structure. Sometimes resulted in a 'hang' during EXT filesystem formatting.
- Fixed: When creating a new logical partition in between two others, Partition Logic didn't set the disk order correctly.
- Fixed: IDE disk driver now properly checks for sector number overflow. Previously it could fail to detect attempts at >28-bit addressing, causing overflow at the ~130GB mark.
- Fixed: Lines of only whitespace in configuration files halted processing.
- Fixed: The progress dialog didn't layout properly when resized, and also fixed the layout of a few dialogs and windows vis. resizing.
Changes for v0.65 - v0.66
- Ported ntfsprogs 1.13.1 (including ntfsresize 1.13.1.1) so that the Partition Logic can successfully resize Windows Vista NTFS partitions.
- Improved the confirmation/warning message before resizing a partition.
- When the progress dialog's 'Cancel' button is disabled, the mouse cursor shows 'busy'.
- The progress indicator more accurately represents the actual times of the different stages of an NTFS resize.
- The "Resetting $Logfile" stage of an NTFS resize shows progress indication.
- Modified the vloader OS loader so that it only uses int 15 to move data into high memory. Improves reliability of loading on more systems.
- The exception handler is now a separate task, for proper debugging and better reliability (in case of stack corruption, etc)
- Implemented proper color text output in both text and graphics modes.
- The boot sector code was further groomed and streamlined, though the work highlighted a bug in the GRUB bootloader that will always prevent chain-loading Visopsys from the second hard disk.
- The MBR bootmenu code no longer has the number of sectors to load hardcoded into it. It now reads a tracks' worth. Also changed some of the memory locations used, since there might have been conflicts there.
- The GUI "menu bar" component is no longer a container. It now *has* a container, so that it can also have state information about which menu is visible. Previously, raising a right-click menu in the Disk Manager could cause the corresponding menu bar title to draw itself raised when it shouldn't.
- It is now possible to 'focus' the root window (without it going over top of the other windows, obviously).
- Fixed: FAT32 bug in which the vloader OS loader was looking for the wrong terminating cluster number.
- Fixed: When a window was bigger than the screen dimensions, moving the left side of it off the screen, then moving the mouse around the right side of the window caused mouse tracers (and perhaps a GUI crash).
- Fixed: Dragging the initial splash window off the left side of the screen caused a system crash.
- Fixed: When a list component was disabled, the list items did appear greyed-out.
- Fixed: If the 'iconwin' program can't find the icon, it will try to use the standard 'executable' one instead of the generic visopsys one.
- Fixed: The 'iconwin' program could still show an icon for a program that wasn't available. Also changed the config file format so that a list of icon names is not required to be specified before the individual specs
- Fixed: In text mode, the 'more' command could leave its reverse characters on the last line if you're scrolling with any other key than [space].
- Fixed: Printing a legitimately-escaped format sequence such as %%d in user space using printf() and friends didn't work, as the kernel's print routines would try to format their input again.
- Fixed: The C library memcmp function was comparing one too many bytes.
- Fixed: When the text was a different color (such as an error) and the screen scrolled, the cursor could remain the color of the previous line.
- Fixed: When booting from a CD there was an error message:
- Error:kernel process:kernelFile.c:fileCreate(614):
- Filesystem is read-only.
- Fixed: Broken CD-ROM emulation was not recognized on some systems.