Dear forum visitors! I'm glad to inform you that I've just finished RC16.1 development and closed beta testing has been started today. As usual, closed beta testing will take approximately one week, so public 16.1 launch is scheduled on Monday, 23rd of October. Changes list: Version 2.0 Release Candidate 16.1: Minor bugfixes: - Fixed driver-level overclocking profiles loading for NVIDIA display adapters with no 2D/3D clock frequency separation (NV2x and older GPU families). - Fixed memory type detection for NV2x GPU family. - Fixed CLEAR token handler in ATI ATOM BIOS script parser and decompiler. - Minor UI fixes. What's new: - Added ForceWare 91.xx and 92.xx driver families support. - Updated databases for Detonator and ForceWare drivers. Added databases for ForceWare 91.31, 91.33, 91.45, 91.47, 91.48 and 92.91 drivers. - Unlocked transparency antialiasing settings for whole NV4x family on ForceWare 91.45 and newer drivers. - Added Catalyst 6.6 - 6.10 drivers detection. - Added support for AGP display adapters equipped with G73 GPUs (GeForce 7600 AGP AGP series). - Added R580+ GPU support. Thanks to Andrew Worobiew for testing RivaTuner with ATI RADEON X1950XTX display adapters. - Added RV560 and RV570 GPUs support. Thanks to Andrew Worobiew for testing RivaTuner with ATI RADEON X1650 and ATI RADEON X1950 display adapters. - Added direct access to ATI RADEON X1000 flashrom chips. Thanks to Tamas Miklos for original flashrom access concepts. Now you can use RivaTuner's /BI command line switch for dumping VGA BIOS image on ATI RADEON X1000 family display adapters. Direct access to flashrom also allows to use RivaTuner's overclocking via VGA BIOS parser on non-primary RADEON X1000 display adapters. - Improved driver-level overclocking module for NVIDIA display adapters: - Now RivaTuner no longer highlights hardcoded Detonator family specific [90%;125%] safe clock frequency ranges on clock frequency adjustment sliders on the ForceWare drivers family and requests the ranges directly from the driver. This allows users to see NVIDIA control panel's allowed clock frequency adjustment ranges highlighted directly on the sliders. - Now RivaTuner automatically disables control panel's overclocking tab when enabling alternate startup daemon mode. This feature is useful when overclocking display adapter beyond the control panel's allowed overclocking range (e.g. when overclocking memory beyond 800MHz range on GeForce 7900GT) and it eliminates the need of manual disabling the control panel's startup daemon for preventing possible settings interference. - Added experimental limited Vista x32 support. Now all RivaTuner's low-level features including low-level overclocking, hardware monitoring, fan control, color correction and hardware diagnostics for both ATI and NVIDIA GPU based display adapters are also available under Vista. Take a note that currently RivaTuner doesn't support any Vista display drivers, so none of driver level functions (e.g. driver-level Direct3D/OpenGL settings tuning for NVIDIA display adapters and Overdrive based overclocking for ATI display adapters with separate 2D/3D clocking) are currently available under Vista. Drivers-level features will be completely supported and available only after official Vista launch only. Please refer to known issues section to get more info on Vista support. - Improved launcher: - Improved regular launch items editor. Now you can use predefined applications list to automatically fill path and command line parameters for some most frequency used command line based actions (e.g. loading and unloading statistics server, starting and finishing benchmark via the server etc.). Please take a note that the list of predefined applications is user extendable, so you can easily add your own most frequently used applications to it by customizing [PredefinedApplications] section of RivaTuner.cfg. - Added power user oriented adjustable delay between terminating RAT mode application and restoring the previously saved settings. The delay can be used to improve stability of some systems when using overclocking profiles associated with an application on ATI RADEON X1000 display adapters. The delay is equal to 1000ms by default and can be adjusted via RATPreRestoreDelay registry entry. - Improved hardware monitoring module: - Added reference fan duty cycle monitoring for G71 and G73 GPUs. - VID to GPIO pins mapping is no longer hardcoded in "Core VID" monitoring data source implementation. Now the database contains per-display adapter model mappings, defined via [VIDGPIO] section of RivaTuner.cfg file. This allows monitoring core VID on display adapters with nonstandard VID to GPIO pin mapping. - Added multi-GPU temperature monitoring for SLI systems. Now besides selected display device's temperature graphs RivaTuner will also display Core temperature 0 ... Core temperature N and Ambient temperature 0 ... Ambient temperature N graphs if multi-GPU rendering mode is enabled and selected display device belongs to SLI configuration. - Added experimental OSD values grouping mode. Now OSD readability can be improved when multiple parameters with the same dimension are displayed in the OSD simultaneously (e.g. both GPU and CPU temperatures and both GPU and CPU clocks). When grouping mode is active, values related to the same group are displayed in the same line marked with group name (e.g. "GPU"). Please take a note that currently OSD values grouping mode is power user oriented and disabled by default. You can enable it with EnableOSDGroups registry entry. - /M command line switch no longer adds custom tracking marker to hardware monitoring graphs. Now this switch can be used to add custom global instantaneous marker with custom specified text description to RivaTuner's event history panel. This allows adding custom global markers to event history for subsequent hardware monitoring log analysis simplification (e.g. "I see artifacts now" marker stored into event history via hotkey during playing the game). Please take a note that you can use newly introduced predefined applications list in regular launch item editor window for quick-creating launch items for adding custom global instantaneous markers. - Extremely flexible user extendable multilanguage engine. Now you can easily localize RivaTuner to your native language and share your localization with other users on the net. Multilanguage engine provides the following features: - Localization to each language is represented by so called localization pack, containing any combination of the following components: - User interface localization (i.e. all dialogs, menus, tooltips and messages displayed by RivaTuner itself). - External help files localization (i.e. plugin and patch scripts descriptions files etc.). - Context sensitive help system localization. - ReadMe and FAQ localization. - Your contact info (full name, email and ICQ). If you specify your contact info in the localization pack, it is automatically displayed in RivaTuner's Links tab when user selects your localization pack. This allows users to contact you quickly and send you feedback about localization quality or report info on any typos. - If any component of localization pack is missing, RivaTuner's multilanguage engine will not fail and simply use the native (English) language for it. Are you smart and patient enough to translate 1200+ user interface elements, 200+ external help files, 100+ pages of ReadMe and FAQ and 400+ context help topics? Are you able to translate only user interface? It is completely up to you to choose the contents of your localization pack. - RivaTuner's multilanguage engine gives third party localization creators maximum freedom and allows to choose desired localization way: - Traditional resource library based localization, which suits best for nontraditional unicode languages. If custom Resource.dll library is included in the localization pack, RivaTuner can load all the resources from it instead of the executable file. Please take a note that you may automatically generate Resource.dll with current version's copy of resources using /MR or /MAKERESOURCE command line switches. - Besides of traditional resource library based localization, many multilanguage products also use so called language lookups approach, allowing multilanguage software to retrieve localized string from language lookup file by specified string or numeric identifier. This approach requires software developer to support each localizable string in the code, which greatly increases the risk of missing some string during localization, makes language lookup depending on identifiers used by software developer. This makes language lookups hard for editing and understanding without assistance of original software developer. Opposing to this approach, RivaTuner introduces unique and completely original runtime translation concepts, which lacks all these drawbacks. RivaTuner offers new concepts, based on idea of automated contents based translation of any string displayed in any of RivaTuner's windows. Translation is performed via so called translation databases, which can be included in localization pack and which are telling RivaTuner how to translate each required phrase to a target language. Translation databases provide localization pack creators the following features: - File system based database structure allows storing it in multiple independent files. This allows storing database for different GUI components in different files for more comfortable editing (e.g. separate databases for dialogs and menus) as well as provides an ability of extending the database (e.g. allows installing plugin with localized user interface). Host control type and host control ID based translation possibility. Mostly translated string doesn't have to be linked to host control type and ID, however you may wish to translate the same string differently depending on its location (e.g. use short translation for buttons but long translation for tooltip etc). In this case the database may contain both universal translation for all host types and host specific translations if needed. - Ability of resizing host controls associated with translated string. Database entries may contain new sizes of controls (e.g. buttons) in dialog units if translated text doesn't fit in it. You may change width and (or) height of host control using left, top, right or bottom coordinate freezing if needed. - Built-in localization debugging features. Localization pack developers may enable localization logging system via EnableLocalizationLog registry entry during developing localization packs and track all RivaTuner's localization requests and all responses from localization database. - Full Russian localization pack is included in distributive to demonstrate localization features to third party localization pack creators. - Added new RivaTuner update (*.RTU) file format support. *.RTU file format allows third party developers (e.g. third party plugin or localization pack authors) to create solid distributive files, which can be distributed on the net and easily and automatically installed by RivaTuner. Update files provide the following features: - Multilanguage update descriptions. Update providers may specify text descriptions (*.RTH tagged text format) in multiple languages, which is displayed by RivaTuner during opening *.RTU file and informs a user about update contents. Optional host version dependence. Update providers may create update files dedicated only for specific RivaTuner version (e.g. localization pack for one version of RivaTuner must not be installed on another one), as well as version independent update files (e.g. RivaTuner version independent CPU temperature monitoring plugin). When host version dependence is specified, RivaTuner will warn you about mismatching version when installing this update on wrong version of RivaTuner. - Optional host restart requirements. If the update (e.g. localization pack) requires RivaTuner to be restarted to apply the changes, update installer will automatically offer you to restart RivaTuner after installing the update. - Provider contact info (full name, email and ICQ). If the provider specifies his contact info in the update, it is automatically displayed during update installation. This allows users to contact update providers quickly and easily. - Built-in command line based update file builder. RivaTuner's SDK contains examples of building host version dependent localization pack distributive and host version independent plugin distributive. - Updated RivaTunerStatisticsServer v2.1.0 bundled utility: - Added optional ability of hooking OS kernel's LoadLibrary function. This feature can be useful as a workaround for problems with missing framerate monitoring and OSD in some applications on certain systems. Normally this feature is not required for proper framerate monitoring and OSD rendering, however some vendors started bad practice of blocking third party hooks in some 3D applications, so try to enable it if the server's framerate monitoring and OSD rendering features don't work properly. - Improved Direct3D runtime info prechaching technique. Now the server precaches offsets to hooked Direct3D runtime functions during the first startup and no longer performs Direct3D runtime reinitialization until DirectX reinstallation. New technique made the server's /F command line switch obsolete, now the server automatically uses fast load scenario after the first start and Direct3D runtime info precaching. - Added watchdog system for tracking 3D applications crashing events. Watchdog system allows the server to kick abnormally closed applications from the context of active 3D applications. - Added command line based OSD visibility enabling / disabling / toggling functions. Now the OSD can be enabled and disabled not only by hotkeys associated with explicit server loading and unloading, but without actually unloading the server. This function was added due to the server's 3D application runtime events tracking system, introduced in the previous version. Now you can disable OSD with hotkeys without unloading the server and loosing its' 3D application runtime events tracking system. - Please take a note that you can use newly introduced predefined applications list in regular launch item editor window for quick-creating launch items for OSD visibility toggling. - Added command line based screenshot capturing ability. Besides traditional hotkey based screenshot capturing, combining with RivaTuner's flexible monitoring thresholds programming technique, this function allows you to create a screenshot of desktop or 3D application when some system parameter gets critical (e.g. when CPU or GPU temperature reaches shutdown threshold). Please take a note that you can use newly introduced predefined applications list in regular launch item editor window for quick-creating launch item for screenshot capturing. - Vista compatible DirectX9 framerate monitoring and OSD rendering. - Improved low-level graphics subsystem diagnostic report module: - Extended voltage tables dumping for ATI RADEON X1000 family with ATOM VGA BIOS images. Now besides previously displayed sets of supported VIDs for GPU Vddc, RAM Vddc, RAM Vddq and GPU Vddqi voltages RivaTuner also displays voltage table specific VID to target voltage mappings. - Updated plugin API: - Added functions for MSR reading / writing. - Added localization functions. If your plugin displays own dialog windows, you may add just a single function call to it to allow RivaTuner's localization engine to translate dialog window contents automatically using runtime translation database. Also, you may use RivaTuner's localization functions if you dynamically change contents of your dialog windows. If your plugin doesn't use any dialog windows and only returns text info to RivaTuner, you don't need to perform any additional actions - RivaTuner will automatically localize all the strings returned by a plugin before displaying them. Please refer to CPU.dll plugin source, demonstrating newly introduced localization functions usage. - Added OSD groups support. Now the plugin may specify the source's OSD group for newly introduced OSD grouping feature. Added GPU registers aperture checking for GPU general purpose registers reading / writing functions. RivaTuner no longer allows the plugins to read / write registers located outside mapped MMIO aperture. - Updated monitoring plugins: - All the previously existing plugins have been updated to support OSD grouping feature. - Updated CPU.dll plugin. Now the plugin also demonstrates newly introduced localization functions usage. - Updated LM63.dll plugin. With X1950 series ATI no longer uses PWM output inversion on all display adapters, so previously implemented PWM output polarity detection code is no longer valid. Now the plugin uses model specific database of PWM output polarity. - Updated NVThermalDiode.dll plugin. Removed obsolete 8-bit diode specific thermal compensation for G71 and G73 thermal diodes. - Added power users oriented GPUProbe.dll plugin. The plugin gives you the possibility of monitoring state of any GPU registers in realtime. All the sources provided by this plugin are fully programmable and defined with assembler styled language. To demonstrate data sources programmability, the plugin shows you how to implement realtime monitoring of NVIDIA GPU GPIO pins. Please refer to GPUProbe.cfg to examine, redefine or add new data sources. - Updated SDK: - Added GPUProbe.dll plugin source code. - Added examples of building *.RTU files containing localization pack and plugin distributives. - Added new Easter eggs, updated the previously existing ones. - FAQ updated. - Minor UI changes and improvements. Stay tuned!