0. CONTENTS 1. WELCOME 2. UPGRADING FROM A PREVIOUS RELEASE 3. INSTALLING FOR THE FIRST TIME 4. KNOWN BUGS 5. CHANGES 1. WELCOME Welcome to Syllable 0.6.6! If you are upgrading from a previous release, or installing for the first time, please read the following document for some important information. Syllable 0.6.6 contains many new features, enhancements and bug fixes from previous releases. Highlights of this release include: o A new web browser based on a newer version of the Webkit rendering engine. o Support for running virtual machines inside of Qemu o The usual clutch of bug fixes and enhancements. If you are installing Syllable for the first time you should read the Install.txt document, which is available on the Syllable installation CD or from http://web.syllable.org/Desktop/Install.txt 2. UPGRADING FROM A PREVIOUS RELEASE An upgrade is available for users who are already running Syllable 0.6.5. Upgrading from any other release of Syllable is not supported. 3. INSTALLING FOR THE FIRST TIME If you are installing Syllable for the first time you should be aware of the following: o If you have trouble booting the Syllable 0.6.6 installation CD, please try adding the kernel parameter "enable_ata_dma=false" and report your system configuration to the Syllable developers. 4. KNOWN BUGS Syllable 0.6.6 has been heavily tested, but the following bugs are known to be an issue on certain hardware configurations, or under certain circumstances: o If when you boot Syllable a blue screen briefly appears and your system immediately reboots, try adding the kernel parameter "disable_smp=true" o If you have trouble booting Syllable 0.6.6, please try adding the kernel parameter "enable_ata_dma=false" and report your system configuration to the Syllable developers. o If after trying the above steps, Syllable still hangs during boot, try adding the kernel parameter "disable_acpi=true" and report your system configuration to the Syllable developers. 5. CHANGES Changes for Syllable 0.6.6 Drivers o Added an AGP bus manager o Added Via, nVidia, SiS & ALi AGP GART HCD drivers. All of this is from Dee Sharpe o Detect the Intel i945GME chip in the i855 driver. o Updated the GeForceFX driver with PCI IDs for newer cards. Largely untested. Patch from Alexandru Mizeranschi o Synced the ACPI bus manager with Linux 2.6.26.2. Patch from Zoltan Kovacs o Minor bugfixes to iso9660 driver and kernel/cpuid, thanks to c0x. o Added a workaround to the rtl8169 driver for a GCC optimisation bug which creates a reference to memcpy() after the pre-processor has run, hence is undefined. o Small fix to the rtl8169 driver so it doesn't crash when it's loaded. Kernel o A bunch of PThreads improvements: o Implemented thread cancellation. pthread_cancel() & pthread_testcancel() now work. o Fixed a couple of stupid errors in libpthread where || (Boolean OR) had been transposed for && (Boolean AND) causing some simple sanity checks to fail. o Added kernel boot parameters to get_system_info(), raising SYS_INFO_VERSION to 4 o Removed old get_system_info() code for versions 1 & 2 0 Added kernel parameter printk_max=n to limit boot messages o Fixed alignment check in descriptors.c as pointed out by c0x. o Export get_bool_arg() properly from the kernel and remove the duplicate get_bool_arg() code from drivers o posix/limits.h: Moved certain macro definitions to be outside the guard for __STRICT_ANSI__. This ensures macros like PATH_MAX are defined when -ansi is used. o Implemented POSIX timers with setitimer() & getitimer(). ITIMER_REAL timers appear to work. ITIMER_VIRTUAL & ITIMER_PROF timers have not been tested. o Re-wrote sys_alarm() to use the POSIX ITIMER_REAL timer instead of it's own list. The send_signal_alarms() function has been completely removed. o Never return -EINTR from tcp_connect() o Make fcntl() F_SETLK more standards compliant. A process can now call F_SETLK for a region which it already holds another lock on, and the existing lock will be replaced or adjusted to acomodate the new lock. Appserver o Added 'Swap left & right mousebuttons' pref to appserver; thanks to Adam. o Fixed Winter, Blue and Warpspeed decorators. o Added unload_decorator() method to appserver decorator API. o Added an improved shutdown tool to do a clean shutdown via the appserver. Libsyllable o Modified os::Resources to internally use std::vector< ResourceDesc* > instead of std::vector< ResourceDesc >; this bypasses the strange rescopy crash. o Removed the default parameter from MessageQueue::FindMessage() to remove the ambiguity. o Added os::Directory::SetPath(). Patch from Dee Sharpe o Documentation updates and bugfixes for BitmapImage relating to Bitmap::SHARE_FRAMEBUFFER flag o Make the mousewheel work properly in DropdownMenus o Make ctrl+home, ctrl+end, shift+ctrl+home, shift+ctrl+end work properly in AEdit and TextViews o Changed StringView to use os::drawtext_flags flags for alignment, rather than os::alignment o Added a way of adding global shortcuts by registering shortcuts and corresponding events to the appserver. o Added Spinner::Increment(), Spinner::Decrement() methods o Make Spinner correctly send value in status changed message o Send a "selection changed" message from TabView when a tab is deleted. o TextView o Added a new event flag EI_WAS_EDITED which is created when EI_CONTENT_CHANGED is created and persists until EI_ENTER_PRESSED or EI_FOCUS_LOST is generated. o When the TextView is in single-line mode the text will now follow the cursor when the text is wider than the width of the View. o DropdownMenu o Use the "events" flags from the child TextView to decide how to generate the "final" flag. "final" will now only be set when EI_WAS_EDITED is set by the TextView, so simple de-focusing the TextView will not generate a spurious edit message to the client. o Don't generate a notification from the child TextView in SetCurrentString() o Added a keymap class. Media o Fixed a handful of bugs in the ffmpeg plugin, although a lot of files are still corrupted. Applications o Patch for p7zip to workaround double-initialization of signatures. o Upgraded SDL to 1.2.13 from patches by Rui Caridade. o Upgraded SDL-Image to 1.2.7, SDL-Net to 1.2.7 and SDL-Sound to 1.0.3. o Added OpenSSH & NetCat to the base installation o Modified appserver/libsyllable to work correctly with new keymap code o Replaced ABrowse with Webster Desktop o Bugfixes for dock plugin unloading. o Updated apps to use Webster rather than ABrowse: Address dockplugin, SimpleBurn, Launch. o Corrected the DateTime preference applet for the new locations of GLibC and /etc/localtime. o Added a keymap selector to dlogin o Added Mouse preferences. Patches from Jonas Jarvoll Misc o Added experimental support for installing from and to USB memory devices to the installer and GrUB menus. o Standardised main documentation location, from /atheos/Documentation/ and /boot/Documentation/ on Desktop and /Documentation/ on Server, to /documentation/. This also gets rid of the last use of the /atheos/ symlink. o Added a Documentation/ symlink in the desktop templates to /documentation/. o Added ReadLine to the build at a tip from Anthony and made BASh use this external version. The added value is that INetUtils FTP now also uses it. o Introduced a symlink /resources/ to /usr/. This will serve the migration in the coming time of resource packages to /resources/, which is a much clearer name and separates our packages from the legacy content of /usr/ (Unix System Resources). o Added a number of extra GrUB entries to the install CD for hardware testing, known emulator configurations and serial debugging. o Make lsattribs and dumpattribs work with read-only filesystems. Localisation and Internationalisation o Added Russian translation of the welcome document, from Alexander "azlk".