2021-10-21 00:19:39 +00:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "utf-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" / >
2023-02-08 02:31:04 +00:00
< meta name = "generator" content = "HelpNDoc Personal Edition 7.9.1.631" >
2021-10-21 00:19:39 +00:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< link rel = "icon" href = "favicon.ico" / >
< title > What's New? 2.5.0 (changelog)< / title >
< meta name = "description" content = "" / >
< meta name = "keywords" content = "" >
<!-- Twitter Card data -->
< meta name = "twitter:card" content = "summary" >
< meta name = "twitter:title" content = "What's New? 2.5.0 (changelog)" >
< meta name = "twitter:description" content = "" >
<!-- Open Graph data -->
< meta property = "og:title" content = "What's New? 2.5.0 (changelog)" / >
< meta property = "og:type" content = "article" / >
< meta property = "og:description" content = "" / >
< meta property = "og:site_name" content = "FCEUX Help" / >
<!-- Bootstrap core CSS -->
< link href = "vendors/bootstrap-3.4.1/css/bootstrap.min.css" rel = "stylesheet" / >
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
< link href = "vendors/bootstrap-3.4.1/css/ie10-viewport-bug-workaround.css" rel = "stylesheet" / >
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- [if lt IE 9]>
< script src = "vendors/html5shiv-3.7.3/html5shiv.min.js" > < / script >
< script src = "vendors/respond-1.4.2/respond.min.js" > < / script >
<![endif]-->
<!-- JsTree styles -->
< link href = "vendors/jstree-3.3.10/themes/default/style.min.css" rel = "stylesheet" / >
<!-- Hnd styles -->
< link href = "css/layout.min.css" rel = "stylesheet" / >
< link href = "css/effects.min.css" rel = "stylesheet" / >
< link href = "css/theme-light-blue.min.css" rel = "stylesheet" / >
< link href = "css/print.min.css" rel = "stylesheet" media = "print" / >
< style type = "text/css" > nav { width : 250 px } @ media screen and ( min-width : 769px ) { body . md-nav-expanded div # main { margin-left : 250 px } body . md-nav-expanded header { padding-left : 264 px } } < / style >
2023-02-08 02:31:04 +00:00
< style type = "text/css" > . navigation # inline-toc { width : auto !important } < / style >
2021-10-21 00:19:39 +00:00
<!-- Content style -->
< link href = "css/hnd.content.css" rel = "stylesheet" / >
< / head >
< body class = "md-nav-expanded" >
< div id = "skip-link" >
< a href = "#main-content" class = "element-invisible" > Skip to main content< / a >
< / div >
< header class = "headroom" >
< button class = "hnd-toggle btn btn-default" >
< span class = "sr-only" > Toggle navigation< / span >
< span class = "icon-bar" > < / span > < span class = "icon-bar" > < / span > < span class = "icon-bar" > < / span >
< / button >
< h1 > FCEUX Help< / h1 >
< / header >
< nav id = "panel-left" class = "md-nav-expanded" >
<!-- Nav tabs -->
< ul class = "tab-tabs nav nav-tabs" role = "tablist" >
< li id = "nav-close" >
< button class = "hnd-toggle btn btn-default" >
< span class = "glyphicon glyphicon-remove" aria-hidden = "true" > < / span >
< / button >
< / li >
< li role = "presentation" class = "tab active" >
< a href = "#contents" id = "tab-contents" aria-controls = "contents" role = "tab" data-toggle = "tab" >
< i class = "glyphicon glyphicon-list" > < / i >
Contents
< / a >
< / li >
< li role = "presentation" class = "tab" >
< a href = "#index" id = "tab-index" aria-controls = "index" role = "tab" data-toggle = "tab" >
< i class = "glyphicon glyphicon-asterisk" > < / i >
Index
< / a >
< / li >
< li role = "presentation" class = "tab" >
< a href = "#search" id = "tab-search" aria-controls = "search" role = "tab" data-toggle = "tab" >
< i class = "glyphicon glyphicon-search" > < / i >
Search
< / a >
< / li >
< / ul > <!-- /Nav tabs -->
<!-- Tab panes -->
< div class = "tab-content" >
< div role = "tabpanel" class = "tab-pane active" id = "contents" >
< div id = "toc" class = "tree-container unselectable"
data-url="_toc.json"
data-openlvl="1"
>
< / div >
< / div > <!-- /contents -->
< div role = "tabpanel" class = "tab-pane" id = "index" >
< div id = "keywords" class = "tree-container unselectable"
data-url="_keywords.json"
data-openlvl="1"
>
< / div >
< / div > <!-- /index -->
< div role = "tabpanel" class = "tab-pane" id = "search" >
< div class = "search-content" >
< div class = "search-input" >
< form id = "search-form" >
< div class = "form-group" >
< div class = "input-group" >
< input type = "text" class = "form-control" id = "input-search" name = "input-search" placeholder = "Search..." / >
< span class = "input-group-btn" >
< button class = "btn btn-default" type = "submit" >
< span class = "glyphicon glyphicon-search" aria-hidden = "true" > < / span >
< / button >
< / span >
< / div >
< / div >
< / form >
< / div > <!-- /search - input -->
< div class = "search-result" >
< div id = "search-info" > < / div >
< div class = "tree-container unselectable" id = "search-tree" > < / div >
< / div > <!-- /search - result -->
< / div > <!-- /search - content -->
< / div > <!-- /search -->
< / div > <!-- /Tab panes -->
< / nav >
< div id = "main" >
< article >
< div id = "topic-content" class = "container-fluid"
data-hnd-id="WhatsNew250"
data-hnd-context="87"
data-hnd-title="What's New? 2.5.0 (changelog)"
>
< div class = "navigation" >
< ol class = "breadcrumb" >
< li > < a href = "Intro.html" > Introduction< / a > < / li >
< / ol >
< div class = "nav-arrows" >
2022-01-12 04:05:06 +00:00
< div class = "btn-group btn-group" role = "group" > < a class = "btn btn-default" href = "Intro.html" title = "Introduction" role = "button" > < span class = "glyphicon glyphicon-menu-up" aria-hidden = "true" > < / span > < / a > < a class = "btn btn-default" href = "WhatsNew260.html" title = "What's New? 2.6.0 (changelog)" role = "button" > < span class = "glyphicon glyphicon-menu-left" aria-hidden = "true" > < / span > < / a > < a class = "btn btn-default" href = "WhatsNew240.html" title = "What's New? 2.4.0 (changelog)" role = "button" > < span class = "glyphicon glyphicon-menu-right" aria-hidden = "true" > < / span > < / a > < / div >
2021-10-21 00:19:39 +00:00
< / div >
< / div >
< a id = "main-content" > < / a >
< h2 > What's New? 2.5.0 (changelog)< / h2 >
< div class = "main-content" >
< p class = "rvps2" > < span class = "rvts22" > What's New? < / span > < span class = "rvts26" > 2.5.0< / span > < / p >
2022-01-12 04:05:06 +00:00
< p class = "rvps2" > < span class = "rvts6" > Released -- 31 October 2021< / span > < / p >
2021-10-21 00:19:39 +00:00
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts6" > The 2.5.0 release features significant enhancements and improvements to the Qt/SDL port. Specifically the debug tools and AVI recording capabilities.< / span > < / p >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts27" > Common< / span > < / p >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Emulation Core< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Fixed SYA and SXA opcodes in CPU. Blargg's NES CPU TEST #5 now passes.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts27" > Qt/SDL< / span > < / p >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > New Tools< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Added built-in AVI RIFF Tree Viewer.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Debugger< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Redesigned debugger layout to optimize space usage.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Window layout uses relocatable tabbed viewports to allow for layout customization.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added a tool bar for commonly used debugger buttons.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Moved many configuration options to debugger window menu to save space.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added syntax coloring options to assembly code viewer.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added opcode description popups to assembly code viewer.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added assembly code custom font selection option.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added symbol tool tips and address look ahead popups for assembly code viewer.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added navigate backwards/forwards line history to assembly code viewer.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added breakpoint on unlogged code/data feature.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added breakpoint on execution of a specified PRG-ROM address.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added step back one instruction feature (experimental)< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Hex Editor< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Fixed draw logic to ensure that highlighted text coloring takes precidence over activity coloring.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Fixed crash in hex editor when searching with Ctrl+A< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Input Control< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > User can now save up to 3 alternate sets of gamepad button bindings in addition to the primary set.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Advanced gamepad bindings (to hot key functions) are now stored for each individual gamepad by GUID.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Lua< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Build fix for static linking of lua. Ensure proper compiler flags are set for linux and mac OS to enable lua plugin functionality.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Movies< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Added optional linking of ffmpeg (libav) libraries for AVI recording. Provides full use of available encoders and options.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Implemented AVI 2.0 Indexing Specification. This new indexing scheme eliminates 2GB AVI file recording limitation.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Fixed video messages and HUD presentation AVI display options.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > GUI Improvements and Bug Fixes< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Went through all debug tool windows and made sure that all configuration options are saved (persist on application restart).< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > The position and size of all debug/tool windows is now saved at window close and restored at window open.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > For debug windows, if attempting to open a window that is already open, that window is raised to top and focused.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Bug fixes for scroll bar presentation on custom viewport widgets in debug tools windows (debugger, hex editor, trace logger).< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added main window context menu to Qt GUI.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Various color customization options for debugger and hex editor.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Changed hot key config window tree layout to sort keys into logical groups.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added offline help documentation viewer feature. (chm viewer for windows and Qt help engine for unix)< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Video Improvements and Bug Fixes< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Fixed video message positioning so that it is not clipped when 8 pixel side clipping is active.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added integer frame rate option to better sync video with monitor refresh.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Changed update rate of video frames per second display so that it is more readable.< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Sound Improvements and Bug Fixes< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > Added option to mute sound when main window is not in focus.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Improved sound sample underflow/overflow algorithm to allow for better scaling with running the emulation at faster/slower speeds.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Sound sample processing efficiency updates.< / span > < / li >
< li class = "rvps2" > < span class = "rvts6" > Added an audio buffer percent usage indication and< / span > < / li >
< / ul >
< p class = "rvps2" > < span class = "rvts6" > an audio sink starve counter to sound config window for debug purposes.< / span > < / p >
< p class = "rvps2" > < span class = "rvts6" > < br / > < / span > < / p >
< p class = "rvps2" > < span class = "rvts28" > Build Improvements< / span > < / p >
< ul style = "text-indent: 0px; padding: 0; margin: 0 0 0 24px; list-style-position: outside; list-style-type: disc;" >
< li class = "rvps2" > < span class = "rvts6" > OpenBSD OS build fixes.< / span > < span class = "rvts6" > < / span > < / li >
< / ul >
< p class = "rvps4" style = "clear: both;" > < span class = "rvts18" > Created with the Personal Edition of HelpNDoc: < / span > < a class = "rvts19" href = "https://www.helpndoc.com/feature-tour/create-help-files-for-the-qt-help-framework" > Create help files for the Qt Help Framework< / a > < / p >
< / div >
< div id = "topic_footer" > < div id = "topic_footer_content" > 2020< / div > < / div >
< / div > <!-- /#topic - content -->
< / article >
< footer > < / footer >
< / div > <!-- /#main -->
< div class = "mask" data-toggle = "sm-nav-expanded" > < / div >
<!-- Modal -->
< div class = "modal fade" id = "hndModal" tabindex = "-1" role = "dialog" aria-labelledby = "hndModalLabel" >
< div class = "modal-dialog" role = "document" >
< div class = "modal-content" >
< div class = "modal-header" >
< button type = "button" class = "close" data-dismiss = "modal" aria-label = "Close" > < span aria-hidden = "true" > × < / span > < / button >
< h4 class = "modal-title" id = "hndModalLabel" > < / h4 >
< / div >
< div class = "modal-body" >
< / div >
< div class = "modal-footer" >
< button type = "button" class = "btn btn-primary modal-btn-close" data-dismiss = "modal" > Close< / button >
< / div >
< / div >
< / div >
< / div >
<!-- Splitter -->
< div id = "hnd-splitter" style = "left: 250px" > < / div >
<!-- Scripts -->
< script src = "vendors/jquery-3.5.1/jquery.min.js" > < / script >
< script src = "vendors/bootstrap-3.4.1/js/bootstrap.min.js" > < / script >
< script src = "vendors/bootstrap-3.4.1/js/ie10-viewport-bug-workaround.js" > < / script >
< script src = "vendors/markjs-8.11.1/jquery.mark.min.js" > < / script >
< script src = "vendors/uri-1.19.2/uri.min.js" > < / script >
< script src = "vendors/imageMapResizer-1.0.10/imageMapResizer.min.js" > < / script >
< script src = "vendors/headroom-0.11.0/headroom.min.js" > < / script >
< script src = "vendors/jstree-3.3.10/jstree.min.js" > < / script >
< script src = "vendors/interactjs-1.9.22/interact.min.js" > < / script >
<!-- HelpNDoc scripts -->
< script src = "js/polyfill.object.min.js" > < / script >
< script src = "_translations.js" > < / script >
< script src = "js/hndsd.min.js" > < / script >
< script src = "js/hndse.min.js" > < / script >
< script src = "js/app.min.js" > < / script >
<!-- Init script -->
< script >
$(function() {
// Create the app
2023-02-08 02:31:04 +00:00
var app = new Hnd.App({
searchEngineMinChars: 3
});
2021-10-21 00:19:39 +00:00
// Update translations
hnd_ut(app);
// Instanciate imageMapResizer
imageMapResize();
// Custom JS
// Boot the app
app.Boot();
});
< / script >
< / body >
< / html >