|
From: Kristian V. D. V. <va...@li...> - 2004-01-03 18:44:17
|
Syllable 0.5.2 is now available! This release of Syllable may at first glance appear to offer few differences since Syllable 0.5.1, but there have been a surprising number of changes; some of which you'll notice and some of which you wont. There have been the usual and ever useful driver updates and bug fixes. The video driver API has been given an overhaul by Arno and there is a new driver for nVidia GeForceFX cards. Libsyllable & the appserver with all sorts of fixes and improvements and the GUI is now more usable and less buggy as a result. The media framework has seen some updates and Syllable now works with multiple soundcards. We've also been busy behind the scenes and this is the first release of Syllable which will work with Binutils 2.14 and GCC 3.3. This has been an important goal for the Syllable Team which we rightly proud of! The full Changelog can be found below. You can download Syllable 0.5.2 from http://syllable.sourceforge.net/modules.php?name=Downloads -- Changes for Syllable 0.5.2 Drivers o Savage IX/MX driver updated by Hilary Cheng <tin...@ya...> using the latest code from the official S3/Via code o New GeForceFX video driver o Ported the GeForce FX specific code of the current XFree86 driver into a Syllable GeForce FX driver. o The driver supports all accelerated functions (BltBitmap, FillRect, DrawLine, hardware cursor, video overlays ). o All drawing operations and framebuffer accesses are first done in an offscreen buffer. A seperate driver thread copies this data into the visible area on v-blank. This makes scrolling a lot smoother. o Improved IMPS2/PS2 mouse detection in the PS/2 mouse driver from Damien Danneels <dda...@fr...> o Sound drivers now export their device nodes to different locations to allow multiple devices to work at the same time. o Fixed a buffer overrun in the ATA driver. o Fixed the remove_driver() function in the USB busmanager. Kernel o The ELF loader can now load binaries that have been created by Binutils 2.14 and GCC 3.3.2, specifically support for undefined weak symbols. o Changed the psuedo-random number generator to a "Mersenne Twister" which should give a lot more randomness. o Added a get_area_physical_address() function that returns the physical start address of one area. o Public/private state for message ports is now represented by one bit only (MSG_PORT_PUBLIC) Libsyllable o Fixed a bug that caused os::Splitter to follow the mouse pointer even if it had not been clicked on first. o Added Scale() method to os::Rect which is used by the (crude) vector graphics in the Amiga decorator. o Window class: o Added AddShortcut() and RemoveShortcut() & code to handle shortcuts. o Added a SetIcon() and GetIcon() method. o Implemented ScreenModeChanged() and DesktopActivated(). o Added a WindowsChanged() method that is called if the windows on the desktop change. (e.g. new ones appear, their icons or titles change) o Desktop class: o Moved the private class members into a private class. o Added a GetWindows() and ActivateWindow() method. o New class util/shortcutkey.cpp o message.h + message.cpp changed REPLY_SENDT -> REPLY_SENT o looper.h + looper.cpp o Added IsPublic(), SetPublic() o Message Filtering implemented (common filters) (BeOS style, slightly simplified) o messenger.h + messenger.cpp, new constructor that takes the name of a public port o messagefiler.h + messagefiler.cpp implemented o Stack size can now be set when a thread is created. o Menu::GetPreferredSize() now returns correct maximum value. o Splitter o Changed the meaning of VERTICAL and HORIZONTAL orientation. Orientation now refers to how the children are displayed, not how the splitter separator is rendered. o The Splitter now resizes its children when it is resized. o The Splitter separator is now drawn correctly. o Fixed misspelled variable nFalgs -> nFlags. o Splitter will now respect Views' minimum sizes as returned by GetPreferredSize(false). o Relative sizes of Views are now retained when resizing. Appserver o Made some changes to the decorator API: o SetButtonState() replaces the SetXXXButtonState() methods. o Added HIT_MINIMIZE and HIT_STICKY. o Added a note in the windowdecorator.h file, saying that the sequence of the enum hit_items should not be changed, so that decorators can store button state information in arrays. o Updated the amiga decorator with code from the default decorator. (minimize button + better handling of buttons). o Updated the other decorators to work with the new API, did NOT add a minimize button to any of them at this time. o Added a MINIMIZE button to the default decorator. o Added code for handling of the new MINIMIZE button, and cleaned up the button handling a bit. o The default decorator now uses arrays to store information about the border buttons (makes the code easier to follow). o The default decorator does no longer draw partial buttons in buttonless windows. o The window buttons have changed: Clicking on the zoom button will maximize the window and clicking on the toggle button will minimize the window. o Caching of the converted font palette. o The appserver can close all opened windows on the screen if it receives a DR_CLOSE_WINDOWS message. o Video driver API: o The drivers have been split into a kernel and an appserver driver. o The appserver iterates through the /dev/graphics directory. o The RenderGlyph() methods have been moved into the DisplayDriver class to avoid accesses to the framebuffer from outside this class. Media o Added multiple soundcard support to the media server o Scan /dev/sound/ for all available DSP & mixer devices o Allow the user to select their prefered DSP device via. the Media Preferences. Currently only one DSP can be used at any one time o The Media Controls window displays one tab per. mixer device o The OSS output driver will query the Media Server to find the default soundcard. o Added a configuration view for the serveraudio output plugin to select the soundcard o A fix to the SoundPlayer class to avoid segfaults when no soundcard is installed o Fixed the volume controls of the oss output plugin o The Media preferences GUI has been re-written. o Coldfish saves the size of the file list when you hide the list. o The MediaPlayer grays out the fullscreen menu entry if no video is loaded o Window icons for MediaPlayer, Coldfish and the media controls window have been added Misc o ls_ports recognises -h, -a & -p flags. By default ls_ports will only display Public message ports. -- Vanders http://syllable.sourceforge.net/ http://www.liqwyd.com |