mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-01 16:23:37 +00:00
503 lines
17 KiB
Plaintext
503 lines
17 KiB
Plaintext
The Wine team is proud to announce that the stable release Wine 1.2 is
|
|
now available.
|
|
|
|
This release represents two years of development effort and over
|
|
23,000 changes. The main highlights are the support for 64-bit
|
|
applications, and the new graphics based on the Tango standard.
|
|
|
|
It also contains a lot of improvements across the board, and over
|
|
3,000 bug fixes. See the release notes below for a summary of the
|
|
major changes.
|
|
|
|
The source is available from the following locations:
|
|
|
|
http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.2.tar.bz2
|
|
http://prdownloads.sourceforge.net/wine/wine-1.2.tar.bz2
|
|
|
|
Binary packages for various distributions will be available from:
|
|
|
|
http://www.winehq.org/download
|
|
|
|
You will find documentation on http://www.winehq.org/documentation
|
|
|
|
You can also get the current source directly from the git
|
|
repository. Check http://www.winehq.org/git for details.
|
|
|
|
Wine is available thanks to the work of many people. See the file
|
|
AUTHORS in the distribution for the complete list.
|
|
|
|
----------------------------------------------------------------
|
|
|
|
What's new in Wine 1.2
|
|
======================
|
|
|
|
*** Core functionality
|
|
|
|
- Loading and running 64-bit Windows applications is now supported on
|
|
x86-64 processors (only on Linux at this point).
|
|
|
|
- There are now two flavors of Wine prefixes, 32-bit and
|
|
64-bit. 32-bit prefixes only support 32-bit applications, while
|
|
64-bit prefixes support both 32-bit and 64-bit applications. The
|
|
prefix flavor is set at prefix creation time and cannot be changed
|
|
afterwards, since all the files and registry entries are in
|
|
different locations. Backwards compatibility is ensured by
|
|
considering all prefixes created with older Wine versions to be
|
|
32-bit.
|
|
|
|
- WoW64 file system redirection is supported now. When running a
|
|
32-bit application in a 64-bit prefix, accesses to the
|
|
window/system32 directory are automatically redirected to
|
|
windows/syswow64.
|
|
|
|
- WoW64 registry redirection is now supported in 64-bit prefixes. This
|
|
allows both 32-bit and 64-bit applications to set platform-specific
|
|
registry keys without stepping on each other.
|
|
|
|
- All the 16-bit support code has been moved to a set of independent
|
|
16-bit modules. No 16-bit code is loaded or initialized when running
|
|
a standard Win32 application, unless it starts making 16-bit calls.
|
|
|
|
- The mount manager now reports the actual UUID for disk devices that
|
|
support it instead of a hard-coded one.
|
|
|
|
- Symbolic links are now supported in the registry.
|
|
|
|
- The C runtime libraries msvcr80, msvcr90 and msvcr100 used by recent
|
|
Visual C++ versions are now partially implemented.
|
|
|
|
- Some functions now use a Microsoft-compatible function prologue when
|
|
building with a recent enough gcc. This allows Steam overlays to
|
|
work.
|
|
|
|
|
|
*** User interface
|
|
|
|
- There are new icons for all the built-in applications, as well as
|
|
for the standard toolbars and images. The icons are based on the
|
|
Tango set for a nicer integration with the native Unix desktop look.
|
|
|
|
- Animated cursors can now be loaded, though only the first frame of
|
|
the animation is used as a static cursor.
|
|
|
|
- The mouse cursor is now updated correctly in applications that
|
|
create windows from different threads, like Internet Explorer.
|
|
|
|
- The standard print and page setup dialogs are working much better
|
|
now.
|
|
|
|
- There is now an application wizard control panel to manage installed
|
|
applications.
|
|
|
|
- Rendering of bi-directional text is now supported reasonably
|
|
well. There is also some support for Arabic text shaping.
|
|
|
|
- Many features of the RichEdit control are improved, particularly
|
|
support for tables, URL detection, cursor positioning, scrollbar
|
|
management, and support for windowless controls.
|
|
|
|
- Many common controls work better now, particularly the listview,
|
|
calendar and tab controls.
|
|
|
|
- There is now a partial implementation of the Microsoft Text Services
|
|
framework, which provides better input method support in modern
|
|
applications.
|
|
|
|
- There is now a proper user interface for importing, exporting and
|
|
managing cryptographic keys and certificates.
|
|
|
|
- Wine is now fully translated to French, German, Dutch, Italian,
|
|
Portuguese, Romanian, Polish, Lithuanian, Norwegian, and Korean. It
|
|
has partial translations for another twenty languages.
|
|
|
|
|
|
*** Desktop integration
|
|
|
|
- The XDG standard for application startup notification is now
|
|
implemented.
|
|
|
|
- The NET_WORKAREA property is now supported to let applications take
|
|
into account the size of the Unix desktop task bars.
|
|
|
|
- File associations created by a Windows applications are now
|
|
registered with the Unix desktop.
|
|
|
|
- Application icons are now set with the NET_WM_ICON hint, which
|
|
enables alpha channel transparency under window managers that
|
|
support it.
|
|
|
|
- Maximizing a window from the Unix window manager is now detected and
|
|
the state is correctly reflected on the Windows application side.
|
|
|
|
- The XDG desktop screen saver is now launched when a Windows
|
|
application makes a request to start the screen saver.
|
|
|
|
- Start Menu entries are now properly removed when an application is
|
|
uninstalled.
|
|
|
|
- Copying and pasting images between Windows and Unix applications
|
|
works more reliably now, and more image formats are supported.
|
|
|
|
- Launching an external Unix Web browser from a Windows application
|
|
now works correctly.
|
|
|
|
- MSI files are now associated with Wine to enable launching them
|
|
directly from the desktop.
|
|
|
|
- The virtual desktop window now switches to full-screen mode when its
|
|
size matches that of the screen.
|
|
|
|
- The strange window management behavior used by Delphi-generated
|
|
applications is better supported now.
|
|
|
|
|
|
*** Graphics
|
|
|
|
- Subpixel font rendering is now supported, which greatly improves
|
|
text appearance on LCD screens. The subpixel configuration is
|
|
derived from the system fontconfig and Xft settings.
|
|
|
|
- Icons with alpha channels are now properly blended in, for a much
|
|
nicer appearance.
|
|
|
|
- Image lists now properly store the alpha channel of images and use
|
|
it when displaying them.
|
|
|
|
- The windowscodecs dll has been added, with codecs for the JPEG, GIF,
|
|
PNG, BMP, ICO, and TIFF image formats.
|
|
|
|
- Many functions are now implemented in GDIPlus. The gdiplus dll is
|
|
now considered good enough to load the built-in version by default.
|
|
|
|
- Overlays are now supported in DirectDraw.
|
|
|
|
- Many more capabilities are now supported in the SANE scanner
|
|
backend. This improves scanning support in Acrobat.
|
|
|
|
|
|
*** Audio
|
|
|
|
- The openal32 dll is now implemented, as a wrapper around the Unix
|
|
OpenAL library.
|
|
|
|
- There is now an initial implementation of the mmdevapi dll (part of
|
|
the new Vista sound architecture), using OpenAL for sound I/O.
|
|
|
|
- The msgsm32.acm GSM codec is now supported.
|
|
|
|
- The ALSA sound driver now works better with PulseAudio's ALSA
|
|
emulation.
|
|
|
|
- Digital playback of audio CDs is now supported.
|
|
|
|
|
|
*** Internet and networking
|
|
|
|
- The HTTP protocol implementation has seen many improvements, in
|
|
particular better handling of proxies and redirects, better cookie
|
|
management, support for gzip encoding, fixes for chunked transfer
|
|
mode, support for IPv6 addresses, and better certificate validation
|
|
on secure connections.
|
|
|
|
- The Gecko HTML engine has been updated to a more recent upstream
|
|
version. Many more HTML objects are now implemented.
|
|
|
|
- The RPC layer now properly supports server-side authentication and
|
|
impersonation. The COM marshalling/unmarshalling is also more
|
|
compatible. RPC is now supported over the HTTP protocol too.
|
|
|
|
- There is now an essentially complete implementation of the
|
|
JavaScript language.
|
|
|
|
- The IRDA network protocol is now supported by the socket layer.
|
|
|
|
- The inetmib1 dll is now implemented, with support for the standard
|
|
SNMP MIB tables.
|
|
|
|
- The inetcomm dll now implements the POP3 and SMTP protocols, as well
|
|
as better MIME support.
|
|
|
|
- Extended mail providers are now better supported, particularly the
|
|
native Outlook provider. Mail attachments are also supported now.
|
|
|
|
- Many undocumented functions in the shlwapi dll have been implemented
|
|
for improved Internet Explorer support.
|
|
|
|
|
|
*** Direct3D
|
|
|
|
- FBOs are now used by default for off-screen rendering in Direct3D.
|
|
|
|
- Backbuffers larger/smaller than their associated window are now
|
|
correctly stretched.
|
|
|
|
- A large portion of the d3dx9 dlls is now implemented, most notably
|
|
the shader assembler, .x file support, functions for fonts, general
|
|
3D math, mesh handling, and sprites. A start has been made with the
|
|
texture and effect functions.
|
|
|
|
- Fog handling has improved a lot.
|
|
|
|
- Various YUV texture formats are now supported.
|
|
|
|
- wined3d contexts are now managed per-thread, and play nice both with
|
|
other wined3d instances and opengl32 GL contexts. Contexts are
|
|
checked for validity before being used (e.g. if the associated
|
|
window is destroyed.)
|
|
|
|
- Point sprite handling has improved a lot.
|
|
|
|
- The shader source is now dumped on GLSL compile/link failures. This
|
|
is mostly to help driver developers, like Mesa, with investigating
|
|
GLSL bugs triggered by Wine.
|
|
|
|
- The graphics card detection code is improved, and many more graphics
|
|
cards are now recognized.
|
|
|
|
- User clip planes are now supported in shaders. This allows proper
|
|
water reflections in Half-Life 2.
|
|
|
|
- There is now an initial implementation of Direct3D 10, including the
|
|
dxgi, d3d10core and d3d10 dlls. Most of the work so far has gone
|
|
into parsing d3d10 effects and SM4 shaders.
|
|
|
|
- Shadow samplers are now properly supported. This fixes shadows in
|
|
StarCraft 2.
|
|
|
|
- There is now a shader based implementation of D3D fixed function
|
|
fragment processing. This avoids some limitations of the previous
|
|
OpenGL fixed function based approach.
|
|
|
|
- Partial updates of surfaces with compressed formats are now properly
|
|
supported.
|
|
|
|
- Many new OpenGL extensions are now supported. These include:
|
|
|
|
- EXT_provoking_vertex/ARB_provoking_vertex. This allows the
|
|
correct vertex color to be used when flat shading is enabled, and
|
|
helps Civilization IV in particular.
|
|
|
|
- EXT_vertex_array_bgra/ARB_vertex_array_bgra. This allows for more
|
|
efficient handling of BGRA (D3DCOLOR) data in the fixed function
|
|
pipeline.
|
|
|
|
- EXT_draw_buffers2. This enables independent color write masks
|
|
when multiple (simultaneous) render targets are in use.
|
|
|
|
- Various nVidia extensions to ARB vertex/fragment programs. These
|
|
allow SM3 support with the ARB vertex/fragment program shader
|
|
backend.
|
|
|
|
- EXT_texture_compression_rgtc. This adds support for the ATI2N
|
|
(also known as 3Dc) compressed texture format.
|
|
|
|
- ARB_texture_rg. This allows for more efficient support of the
|
|
R16F, G16R16F, R32F and G32R32F texture formats.
|
|
|
|
- ARB_framebuffer_object. This is mostly the same as the existing
|
|
support for EXT_framebuffer_object, but improves rendering with a
|
|
depth/stencil buffer larger than the color buffer(s). It helps
|
|
(among others) Splinter Cell,
|
|
|
|
- ARB_sync. This adds support for multi-threaded / cross GL context
|
|
event queries used by Dragon Age: Origins.
|
|
|
|
- ARB_half_float_vertex. This adds support for 16-bit floating
|
|
point vertex formats on cards that don't already support
|
|
NV_half_float. It helps Supreme Commander.
|
|
|
|
- There is now a general framework for supporting variations/quirks in
|
|
GL drivers.
|
|
|
|
|
|
*** Built-in applications
|
|
|
|
- The Wine debugger now displays a crash dialog to let the user know
|
|
that a crash happened before dumping the backtrace information.
|
|
|
|
- The Wine debugger now uses the Dwarf exception unwinding data for
|
|
more reliable backtraces.
|
|
|
|
- The file dialogs in built-in applications are now resizable.
|
|
|
|
- Regedit can now import from and export to files in Unicode format.
|
|
|
|
- Wineboot now displays a dialog while creating or updating the prefix
|
|
directory to let the user know that something is happening, since
|
|
the update can take some time, particularly with 64-bit prefixes.
|
|
|
|
- Text replacement is now implemented in Notepad.
|
|
|
|
- The print preview feature in Wordpad now works much better.
|
|
|
|
- Navigation in help files now works better in Winhelp. Many graphical
|
|
glitches have also been fixed.
|
|
|
|
- The Winecfg dialogs have been tweaked so that the application is
|
|
usable in a 640x480 desktop. The About panel has been redesigned
|
|
with better graphics.
|
|
|
|
- The command-line parser in cmd.exe is more compatible now, which
|
|
should enable more Windows batch files to execute correctly. There
|
|
is also a regression test suite for it.
|
|
|
|
- Rpcss now implements a proper RPC endpoint mapper.
|
|
|
|
|
|
*** Build environment
|
|
|
|
- The Wine IDL compiler can now generate correct code for all the
|
|
standard IDL files, including proper exception handling. A large
|
|
number of COM proxies and servers are now automatically generated
|
|
from their IDL definitions.
|
|
|
|
- The fake dll placeholders are now built at compile time, instead of
|
|
being generated every time a Wine prefix is created. This makes it
|
|
possible to install a placeholder for every supported dll, which
|
|
should avoid many failures in installers that check dll versions.
|
|
|
|
- configure now supports the --disable-tests option to prevent
|
|
building the test suite. This allows for faster compile times,
|
|
particularly when bisecting a regression.
|
|
|
|
- The cross-compiled tests are now built against the Wine import
|
|
libraries instead of the Mingw ones. The latter are not compatible
|
|
enough for our needs.
|
|
|
|
- winegcc now handles resource files just like normal object files and
|
|
links them into the final binary without requiring special build
|
|
rules.
|
|
|
|
- winebuild and winegcc now fully support Solaris.
|
|
|
|
- Wine now builds properly on Cygwin, though some of the resulting
|
|
binaries do not work correctly.
|
|
|
|
- Makefiles are now created as needed during the build process,
|
|
instead of being all created together at configure time. This makes
|
|
it unnecessary to run 'make depend' in most cases.
|
|
|
|
- winemaker now has better support for Visual C++ project files.
|
|
|
|
|
|
*** Miscellaneous
|
|
|
|
- The OLE storage implementation now supports transacted storage, with
|
|
proper commits and rollbacks. This enables support for Microsoft
|
|
Office documents containing macros.
|
|
|
|
- The MSI installer now supports patches, which enables the
|
|
installation of service packs for many applications. Many more MSI
|
|
standard actions are also supported now.
|
|
|
|
- The rsaenh dll now supports the SHA-256, SHA-384, and SHA-512
|
|
encryption algorithms, as well as CALG_SSL3_SHAMD5 hashing.
|
|
|
|
- OLE database objects are now implemented, which fixes the clipart
|
|
functionality in Microsoft Office 2007.
|
|
|
|
- Copying and pasting OLE objects across applications works better now.
|
|
|
|
- Support for cryptographic signatures and certificates is improved,
|
|
including support for certificate trust lists.
|
|
|
|
- The Task Scheduler service is now implemented.
|
|
|
|
|
|
*** Performance
|
|
|
|
- Bitmap stretching and alpha blending is now done through Xrender
|
|
when possible, which avoids a time-consuming round-trip of the
|
|
bitmap bits from the X server.
|
|
|
|
- Startup time for MSI installers that contain a large amount of
|
|
strings is much improved.
|
|
|
|
- Setting the processor affinity for threads or processes is now
|
|
supported, which improves multi-core performance for applications
|
|
that take advantage of it.
|
|
|
|
- Loading large symbol tables in the Wine debugger is much faster
|
|
now.
|
|
|
|
- FBO handling has improved significantly. Recently used FBO
|
|
configurations are now cached, which is a major performance
|
|
improvement.
|
|
|
|
- Loading shader constants is more efficient now. This improves
|
|
performance for (among others) Half-Life 2, Counter Strike: Source,
|
|
and Source Engine games in general.
|
|
|
|
- The performance of sRGB samples is improved, this particularly helps
|
|
Source Engine games.
|
|
|
|
|
|
*** Platform-specific changes
|
|
|
|
- Joysticks POV switch and axis remapping are now better supported on
|
|
Linux. Joysticks are now supported on Mac OS X too.
|
|
|
|
- The various DVD I/O controls are now implemented on Mac OS X.
|
|
|
|
- The network routing and statistics functions in iphlpapi are now
|
|
implemented on Solaris and FreeBSD.
|
|
|
|
- Mach-O debugging symbols (the format used by Mac OS X) are now
|
|
supported in the debugger.
|
|
|
|
- Event ports are now used on Solaris for improved wineserver
|
|
performance.
|
|
|
|
|
|
*** New library dependencies
|
|
|
|
- The libgnutls library is now used for encryption and certificate
|
|
validation in secur32.
|
|
|
|
- The libgsm library is now used for the GSM codec support.
|
|
|
|
- The libmpg123 library is now used for mp3 decoding (except on Mac OS
|
|
X where CoreAudio functions are used instead).
|
|
|
|
- The libopenal library is now used for the openal32 dll
|
|
implementation, as well as for the mmdevapi dll (Vista sound
|
|
support).
|
|
|
|
- The libtiff library is now used for TIFF image decoding in the
|
|
windowscodecs dll.
|
|
|
|
- The libv4l1 library is now used for video capture in DirectShow.
|
|
|
|
|
|
*** Backwards compatibility
|
|
|
|
- The wineshelllink helper script has been removed. All the menu and
|
|
desktop integration is now handled by winemenubuilder.
|
|
|
|
- The deprecated wineprefixcreate script has been removed. Wine prefix
|
|
directories are created automatically as needed.
|
|
|
|
- Old LinuxThreads setups are no longer supported. Wine now requires
|
|
the modern NPTL threading that has been standard on Linux for many
|
|
years now.
|
|
|
|
- The PBuffer option for off-screen rendering has been removed from
|
|
Direct3D. This code was unmaintained, and offered little advantage
|
|
over the "fbo" or "backbuffer" modes.
|
|
|
|
|
|
*** Known issues with recent 1.2 changes
|
|
|
|
- The subpixel font rendering doesn't yet look quite as nice as that
|
|
used by the rest of the Unix desktop.
|
|
|
|
- The OLE storage performance can degrade pretty badly on files with a
|
|
particular layout.
|
|
|
|
- There is no 64-bit version of the Gecko engine yet, so 64-bit
|
|
applications that use a browser control won't work correctly.
|
|
|
|
--
|
|
Alexandre Julliard
|
|
julliard@winehq.org
|