Commit Graph

67 Commits

Author SHA1 Message Date
TheRealQuantam 0605967820 Non-SDL/Qt Windows optimizations 2024-02-24 00:11:56 -08:00
harry 37574f9bef More cleanup of sprintf usage in favor of snprintf. This is to resolve deprecation warnings on Mac OSX 2024-02-23 22:38:40 -05:00
harry 80f17c664b Resolved a couple gcc compiler warnings in trace logger. 2024-02-23 09:09:08 -05:00
TheRealQuantam 56980510b7 Trace logging optimizations and bug fixes 2024-02-21 21:00:05 -08:00
Andy Vandijck 2d632dfeeb Change toUtf8() to toLocal8Bit()
Change strings
2024-02-18 14:52:19 +01:00
Andy Vandijck cde83851ba Fix build for newer targets
Fix build
2024-02-17 19:21:47 +01:00
harry 7573f1b7dc Added profiler per thread logging. 2023-05-13 20:26:56 -04:00
Fritz Mahnke 39bb749f5d Don't always scroll to PC when updating debug window assembly view.
Change ConsoleDebugger::updateWindowData and updateAllDebuggerWindows to support
two different types of updates: UPDATE_ALL and UPDATE_NO_SCROLL. The new
"no scroll" type lets callers request the assembly view be updated without
scrolling the view to the PC line.

Change the hex editor and trace logger calls to updateAllDebuggerWindows to use
the no scroll update. The user may use these functions with the current
disassembly position in mind and not want to lose it.
2023-04-17 17:41:24 -07:00
Fritz Mahnke 46ad7bbd38 Remove redundant setFocus call, which actually removes focus.
Under i3wm 4.21.1/Qt 6.4.1, the existing code actually removes keyboard focus
from the newly-activated window. Removing the call to setFocus in these cases
fixes the problem. The call to activateWindow is enough to put keyboard focus on
it.

The documentation for activateWindow implies the same.
2023-04-17 08:13:09 -07:00
harry da05b56cba Added checkbox to Qt debugger menu to control trace logger auto start function on debugger open. Also added code to stop the trace logger on debugger close if it was the debugger who started it in the first place. 2023-02-20 18:36:07 -05:00
harry 7910da7805 More int comparison sign mismatch compiler warning fixes. 2023-01-28 16:03:05 -05:00
harry 6ae834a1df Changed interface to Qt GUI function getDirFromFile to pass reference to std::string so that returned string will not have string length limitations. Buffer size will grow as needed for the path and will not be allocated on the stack. 2023-01-07 01:47:45 -05:00
harry b3717c008b Refactor Qt GUI function getDirFromFile to use QFileInfo to get absolute directory path. Also, added a input buffer size argument to prevent string copy buffer overflows. Fixes issue #598. 2023-01-07 00:43:35 -05:00
harry d834ac4e53 Qt trace logger optimization. Added code to flush data to disk when emulation is paused. This allows the file to updated with latest data when hitting breakpoints during debugging. 2022-08-09 21:28:58 -04:00
zeromus b912004f69 oops, we've got to stub FCEUD_FlushTrace on these other platforms 2022-04-26 14:08:37 -04:00
mjbudd77 49590c40bb Commented out more debug print statements in Qt GUI. 2022-03-11 06:29:32 -05:00
mjbudd77 97465f0266 Commented out debug print statements for Qt window closure. 2022-03-10 20:59:47 -05:00
mjbudd77 bb4b88d00e Fixed inverted vertical scroll on Qt Trace logger. Added page up/down key shortcuts for Trace logger viewport. 2022-01-15 20:06:10 -05:00
mjbudd77 c72eac9970 Fixed mouse wheel scroll direction on Qt trace logger and TAS piano roll. 2021-12-12 15:42:37 -05:00
mjbudd77 9d2acd6931 Added memory write undo functionality for debugger step back. 2021-08-19 21:32:14 -04:00
mjbudd77 07f73c2fb9 First cut at implementing instruction step back function using trace logger data. 2021-08-19 18:46:02 -04:00
mjbudd77 09117e5286 Added debugger step back button. Functionality still TODO. 2021-08-19 18:15:27 -04:00
mjbudd77 d8a1425715 Change trace logger Log Last text to be a label instead of a checkbox. Logging will always go to screen even if also going to a file. The same buffer is used for both. 2021-08-14 12:59:00 -04:00
mjbudd77 88da722533 Added a few missing config parameters to Qt trace logger. Namely, save to file (flag and path) and automatic window update. 2021-08-10 21:49:44 -04:00
mjbudd77 61661ff233 Minor tweak to trace log clear to make screen refresh instantly. 2021-08-05 09:10:47 -04:00
mjbudd77 7767e8d162 Added trace logger clear log functionality to Qt GUI. 2021-08-05 08:09:58 -04:00
mjbudd77 236fb67b7d Added show trace data option to Qt disassembly display. 2021-08-05 06:16:01 -04:00
mjbudd77 67e19b6d13 Trace logger menu bars page size fixes. 2021-07-17 21:26:54 -04:00
mjbudd77 2030d18e40 Added logic to code data and trace logger windows so that if already open, the windows are raised and given input focus. 2021-07-08 22:18:20 -04:00
mjbudd77 7b1e171ba7 Added code to save/restore Qt window geometry for commonly used tools and debug windows. 2021-06-30 06:50:31 -04:00
mjbudd77 d7ca6ccc18 Added code to save trace logger recording preferences to the config file (Qt GUI). 2021-05-04 21:06:28 -04:00
mjbudd77 0006cb265d Fix for re-arm buffer overrun warning on logging restart. 2021-04-27 06:45:54 -04:00
mjbudd77 4afb2ac2ac Changed linux Qt trace logger to use low level disk write functions to increase efficiency. 2021-04-26 21:41:22 -04:00
mjbudd77 f386dfb428 Changed Qt trace logger to use native windows file access functions to make disk access more efficient. 2021-04-26 21:10:55 -04:00
mjbudd77 84b900b73b Added logic to wait for trace logger disk thread to be ready for more data when logging to disk. This will slow down the realtime execution of the emulation but will ensure that all instructions are properly logged to the disk. 2021-04-25 23:28:51 -04:00
mjbudd77 f146a7f7f1 Added a separate thread to Qt trace logger whose job is to just write the logged instructions to disk (when disk logging is enabled only). This allows for bottle necks with disk I/O to not slow down the emulation. Also, buffer 4k blocks before writing to disk to make more efficient. 2021-04-25 22:07:59 -04:00
mjbudd77 aa5ce14c06 Added a debug message output for warn of buffer overruns when logging to a file with the Qt trace logger. 2021-04-24 19:13:46 -04:00
mjbudd77 e2716ae2c5 Fixed segmentation fault in Qt trace logger when changing from a large buffer size to a smaller buffer size. Ensure that buffer head and tail pointers are reset as well. Fixed memory leak with old trace log buffer not being freed when allocating the new buffer size. 2021-04-24 13:57:20 -04:00
mjbudd77 806486e13d Build fixes for Qt6 on Mac OSX. 2021-04-11 17:39:37 -04:00
mjbudd77 e07cd5ec52 Added a menu bar to the Qt trace logger with a File/Close option. 2021-02-21 18:39:18 -05:00
mjbudd77 79dcb51073 Auto Format of Qt code data and trace logger. Fix spaces/tabs code readability. 2021-02-21 18:32:30 -05:00
mjbudd77 5eb79dcf9d Removed all redundant QFileDialog calls to show() when exec() is already being called. The show() function is a non-blocking call to create a dialog window. exec() is a blocking call and is required to use the native windows file browser. Since all the file dialog callback functions are designed to be blocking anyway, the show() calls really shouldn't be there anyway. This fixes part of #332. 2021-02-18 23:14:31 -05:00
mjbudd77 8d9e99fd18 Build fixes for linux from changes made for Qt windows compatibility. 2021-02-06 19:15:06 -05:00
mjbudd77 35bb4be6f6 First successful build of Qt windows fceux. 2021-02-06 12:15:28 -05:00
mjbudd77 c6752c4193 Added standard FCEU GPL2 license header to Qt cpp files that were
missing it.
2021-01-20 19:19:22 -05:00
mjbudd77 9f6463c0b8 Updates Qt trace logger with new debug symbol window. 2020-12-20 22:14:47 -05:00
Matthew Budd 90f122ef82 Added context menu to trace logger viewport. Through this menu, debug symbols and breakpoints can be set for the selected hex address in the viewport. 2020-12-08 21:46:21 -05:00
Matthew Budd accc476623 Cleaned up a couple cppcheck warnings in Qt GUI. 2020-12-07 22:34:05 -05:00
Matthew Budd fbf8fe6eb5 Added logic to allow for copy/paste of trace logger viewport to/from clipboard. 2020-12-07 22:04:36 -05:00
Matthew Budd 2ce2e5a8a3 Fixed wheel event scroll direction for custom QWidgets 2020-11-14 13:42:43 -05:00