Commit Graph

241 Commits

Author SHA1 Message Date
mjbudd77 591b21f4af Added a log file to detail avi recording issues. Memory allocation cleanup fixes for libav. 2021-09-20 19:39:09 -04:00
mjbudd77 bf3a02fe9b Implemented sound use global focus in a different way so that it will mute physical audio without also muting avi/wav recording audio. 2021-08-31 17:18:46 -04:00
mjbudd77 934437dddc Added AVI debug as an optional compile time setting to Qt GUI. 2021-08-31 20:47:48 -04:00
mjbudd77 f879757d27 Commented out Qt AVI debug function in main menu until the window is finished. 2021-08-29 22:05:37 -04:00
mjbudd77 95db43d3f9 Added an AVI decode debug function to Qt GUI. 2021-08-25 22:04:39 -04:00
mjbudd77 8b0f4a0fc0 Added unix docs build to pipeline. Added navigation buttons to help window. 2021-08-17 21:23:39 -04:00
mjbudd77 2e53904467 Added code to allow for an external chm viewer to be used for unix OS. 2021-08-16 06:29:57 -04:00
mjbudd77 90d8dbd411 Added offline help pages for windows Qt GUI. 2021-08-15 20:42:51 -04:00
mjbudd77 a571677cdb Changed Qt GUI AVI recording video pickoff point so that HUD/messages can be optional in the recorded image. 2021-08-11 21:11:00 -04:00
mjbudd77 8e798cbbb9 Save main window position so that it can be restored at same location and size. 2021-08-10 20:50:49 -04:00
mjbudd77 1d15fc49c3 Added window resize presets to Qt main menu. 2021-08-10 20:12:19 -04:00
mjbudd77 728a7c3580 Added sound use global focus option to Qt GUI. 2021-08-06 00:14:37 -04:00
mjbudd77 f925e82d85 Added backend logic to mute sound when GUI focus is lost. Still TODO add window controls. 2021-08-05 23:43:44 -04:00
mjbudd77 455df4caae Added movie record input dialog to Qt GUI. 2021-08-05 22:35:29 -04:00
mjbudd77 f3af816eda Minor menu fixes for Qt GUI. 2021-08-05 19:37:28 -04:00
mjbudd77 8c19cb5257 Added detected screen refresh rate display to Qt video config window. Minor memory fixes. 2021-08-01 21:05:08 -04:00
mjbudd77 77b2f1be33 Updated Qt PPU debugger display. 2021-08-01 20:16:42 -04:00
mjbudd77 c978c1631a Added an integer frame rate option to Qt GUI better sync with video. 2021-07-31 20:07:18 -04:00
mjbudd77 6aa0c9fec1 Added main window context menu for Qt GUI. 2021-07-18 18:07:58 -04:00
mjbudd77 db0ab29be2 Added missing override virtual function syntax sugar to debugger header. Moved Movie menu item to 2nd in list after File. 2021-07-18 17:09:04 -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 27fc890977 Changed Qt debugger code so that only one debugger can be open at a time. 2021-07-08 22:00:32 -04:00
mjbudd77 572e89ee90 Cleaned up a few unused variables. Added blit and render counters to help debug if GUI rendering is on time with emulation thread. 2021-06-23 20:30:33 -04:00
mjbudd77 637559c7b7 Added logic to only hook up screen changed signal handler once the window has fully been constructed. 2021-06-21 20:06:13 -04:00
mjbudd77 bcdfa2a834 Added logic to watch for screen change events coming from main window and notify OpenGL widget to recalculate screen pixel ratio and texture sizes. 2021-06-20 22:12:53 -04:00
mjbudd77 b1b9b50f7b Fixed logic issue so that the main window size is not saved if the screen is in full or maximize modes. Only save previous screen size to config if in normal window mode. This prevents the next start of fceux setting the initial window size to close to maximum. 2021-06-04 20:53:11 -04:00
mjbudd77 a849cdcd2f Added decor icons to buttons on custom autofire pattern dialog window. 2021-06-01 20:57:29 -04:00
mjbudd77 1de4aea0a8 Added code to reload cursor image any time the Qt video driver is changed. 2021-05-31 21:27:41 -04:00
mjbudd77 2b9058ea13 Bug fix for Qt drag and drop ROM load. Prefer local file paths if possible. 2021-05-29 13:10:14 -04:00
mjbudd77 9cdbdb31b0 Added ROM file drag and drop into Qt main window feature. This will load the ROM into the emulator when dropped. 2021-05-29 09:16:30 -04:00
mjbudd77 635cd07020 Added autofire pattern presets to Qt emulation menu. Changed custom autofire pattern entry to use a single dialog window. Autofire pattern is now saved as a config parameter. 2021-05-28 20:25:52 -04:00
mjbudd77 20a691e608 Changed Qt GUI to use FCEU core autofire pattern logic instead of attempting to calculate its own. 2021-05-21 06:28:14 -04:00
mjbudd77 d3f25269c8 Re-send aspect ratio settings to viewer when changing video driver. 2021-05-19 22:16:04 -04:00
mjbudd77 4eb7543838 Bug fix for SDL video not initializing correctly. 2021-05-19 21:25:50 -04:00
mjbudd77 4ff17bcb8e Set auto-resume QAction using a cleaner method. 2021-05-18 21:29:22 -04:00
mjbudd77 009733be8a Bug fix for initialization of Auto-Resume checkbox state at Qt GUI startup. 2021-05-18 21:25:20 -04:00
mjbudd77 31608a5c6d Added logic to further ensure that changes to emulation video settings force an settings change on the Qt console viewer. 2021-05-15 07:03:53 -04:00
mjbudd77 8f245c9332 Changed Qt GUI screen shot function to use Qt image capture of the actual video viewport so that a higher resolution image that has the effects of the aspect ratio and scaler video selections in it. 2021-05-14 21:30:28 -04:00
mjbudd77 0b689d65c4 Added WAV file recording capability to Qt GUI. 2021-05-05 20:25:34 -04:00
mjbudd77 02e3c4e075 Added hot keys for AVI recording to Qt GUI. 2021-05-03 19:52:32 -04:00
mjbudd77 cfc91e2223 Commented out debug print statement. 2021-05-02 21:35:47 -04:00
mjbudd77 b97bf287b2 Bug fix for Qt GUI when closing ROM while the emulation thread is haning on a breakpoint. Now the thread is allowed to complete its frame so that it is idle with a minimal call stack before the ROM is closed. This prevents the emulation thread from coming out of its breakpoint wait loop at attempting to continue running its frame with no ROM data loaded. This fixes a segmentation fault crash that was mentioned in the project Qt issues thread. 2021-05-02 19:45:36 -04:00
mjbudd77 6283dc4687 Successful test of fully integrated avi recording in Qt GUI. 2021-05-02 18:36:34 -04:00
mjbudd77 4a498d20af Initial menu functionality added to GUI for avi recording. 2021-05-02 15:49:15 -04:00
mjbudd77 22523076de Added code to save avi files in base folder. 2021-04-30 16:26:54 -04:00
mjbudd77 b1638f7c07 Successful test of x264 encoder in linux. 2021-04-30 13:40:17 -04:00
mjbudd77 b9f6bf281f Restructured Qt AVI writer to run is its own thread. 2021-04-29 21:50:45 -04:00
mjbudd77 9b4b9b6549 Successful recording of small avi in RGB24 format. 2021-04-29 06:21:16 -04:00
mjbudd77 b78003dc00 Initial add of avi recording code for Qt GUI. 2021-04-28 21:40:46 -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 26e5e46da8 Sprite viewer in work. 2021-04-15 22:52:27 -04:00
mjbudd77 029cea534c Hooked up validity states for a few Qt main menu items. 2021-04-12 21:42:57 -04:00
mjbudd77 1a8369f1b3 Added event accept lines for console window key events. Helps improve mac os responsiveness. 2021-04-12 20:06:49 -04:00
mjbudd77 806486e13d Build fixes for Qt6 on Mac OSX. 2021-04-11 17:39:37 -04:00
mjbudd77 27bb85f282 Added logic to make Qt GUI main menu access pause emulation functionality a configurable parameter. 2021-04-11 15:25:24 -04:00
mjbudd77 c790f1481c Added logic to Qt GUI to produce an error message dialog in the event that an ambiguous activation of conflicting hot key sequences occurs. 2021-04-11 13:53:34 -04:00
mjbudd77 5f40358a06 Added code for Qt GUI to pause emulation when main menu is active. This feature is currently disabled. 2021-04-11 13:10:09 -04:00
mjbudd77 7f85544e63 Bug fix for Qt GUI family keyboard conflicting with new hot key shortcuts. 2021-04-08 20:50:51 -04:00
mjbudd77 19891e1155 Bug fix for Qt GUI emulation speed up/down hot keys. 2021-04-06 22:54:29 -04:00
mjbudd77 caa9e67544 Bug fixes for Qt GUI load/save state hot keys. 2021-04-06 22:44:49 -04:00
mjbudd77 4cc02ed25b More Qt GUI hot key fixes for new setup. 2021-04-06 21:23:41 -04:00
mjbudd77 0419e22179 Further hot key rework, fixed Qt Turbo hot key function. 2021-04-05 22:42:59 -04:00
mjbudd77 2f2abfdbb2 Bug fixes for a few Qt hot key shortcuts. 2021-04-05 22:09:59 -04:00
mjbudd77 e0f5c3c58e Added code to fix Qt key sequences to avoid impossible combinations. 2021-04-05 21:01:50 -04:00
mbudd02 7acaf7f2bd Added more error logging to Qt GUI. 2021-03-30 09:06:27 -04:00
mjbudd77 cbdd6e43d9 Further hot key config rework. 2021-03-29 20:52:58 -04:00
mjbudd77 da401d9833 Qt hot key rework intermediate commit. 2021-03-29 20:04:29 -04:00
mjbudd77 3505e81710 Reworking of Qt Hot Keys. Intermediate commit. 2021-03-27 22:44:55 -04:00
mjbudd77 18c7c95ef3 Added logic to allow switching the Qt GUI video driver while program is running with out needing a restart... although a restart is still probably the safest. 2021-03-25 20:20:01 -04:00
mjbudd77 04caf3a03f Added logic to process all QCoreApplication events in main window loop to ensure that GUI stays responsive when rendering slows app execution down. Mac OS OpenGL was causing odd event processing delays. So now we will ensure all events are processed before attempting any rendering. 2021-03-21 18:31:20 -04:00
mjbudd77 95aa96a14e Aspect ratio pixel scaling fixes for Qt GUI. For issue #341. 2021-03-21 13:47:12 -04:00
mjbudd77 b825454fee Added to fix Qt build issue with pre Qt 5.12 builds. 2021-03-21 08:34:08 -04:00
mjbudd77 451b0f8474 For Qt GUI, change square pixel video option to be a force aspect ratio option and added a small list of preselect aspect options via video config window. Aspect ratio is now a configuration parameter for the video viewport. This addresses most of issue #341. Still TODO add custom aspect entry capability. 2021-03-21 07:17:01 -04:00
mjbudd77 456251861a Added a targeting reticle icon that can be used as a mouse cursor on the main viewport of Qt GUI. Easier to aim with for zapper games emulated by mouse. 2021-03-18 22:30:40 -04:00
mjbudd77 ffd5de60aa Added logic to Qt GUI to allow for the shape of the viewport cursor to be selectable between an arrow, cross, or blank. Also added a viewport cursor visibility configuration parameter. Cursor visibility and shape can be set via the video config option window. 2021-03-14 14:02:10 -04:00
mjbudd77 0203344802 Added logic to look for a QResource (rcc) file along side a qss file when loading a new stylesheet. 2021-03-05 15:09:28 -05:00
mjbudd77 cb0bc74fd4 Added a styling wrapper class to allow for more control over palette colors. 2021-03-03 22:48:45 -05:00
mjbudd77 2a6a31fa48 Added Qt stylesheet GUI selection code. 2021-03-01 21:48:57 -05:00
mjbudd77 ac0f377873 Added a GUI style selection combo box. Lists all built in GUI styles available. This allows user to change the GUI style while it is running. Also, style setting is saved and used for future GUI startups. 2021-03-01 20:24:00 -05:00
mjbudd77 8347e2fd0b Bug fix for Qt GUI using default settings to force the minimum viewport until after the GUI has been drawn/resized at least once to ensure that the menu bar size has been finalized and the viewport meets demanded values. At the first resize event, the viewport minimum size is reset back to 1x values so that the window can still be shrunk by dragging the lower window corners and edges. 2021-02-27 19:29:50 -05:00
mjbudd77 8241973af1 Fixed order of execution bug to ensure that first startup of Qt GUI with default config sizes window exactly right. 2021-02-27 18:21:39 -05:00
mjbudd77 1cf00640c4 Added RAM init menu option to Qt GUI. 2021-02-25 20:19:41 -05:00
mjbudd77 ffc7e70b0d For Qt GUI fixed region auto detection logic to preserve dendy mode if an NTSC game is loaded. Also, added an option to enable/disable region auto detection functionality. This allows for the users selection via the GUI to be strictly enforced. Also, added a region select sub menu to the emulation main menu. Fixes issue #335. 2021-02-25 19:36:08 -05:00
mjbudd77 e3f2970dcd Added scanline start/end entry boxes for NTSC and PAL/Dendy to Qt Video config window. 2021-02-23 21:04:50 -05:00
mjbudd77 e6754c87ba Added a recent ROMs sub menu to the Qt main menu. 2021-02-19 20:46:27 -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 14b07ab5f2 Added a link to online documentation in the Qt GUI help menu. 2021-02-16 22:16:05 -05:00
mjbudd77 7e3086d92c Added more accelerators for Qt menu items. 2021-02-16 21:44:47 -05:00
mjbudd77 08df12db74 Bug fix for Qt GUI main menu permanently hi-jacking input focus when using menu accelerators. 2021-02-15 10:08:03 -05:00
mjbudd77 049f1017d4 For Qt GUI, fixed thread timing bug in rapid autofire pattern. Also, added hooks to make the autofire pattern number of on/off frames configurable. Minor indentation fixes in code. 2021-02-15 08:43:14 -05:00
mjbudd77 769ab81027 Setup QFileDialog side urls for various windows. 2021-02-14 10:53:21 -05:00
mjbudd77 c3473dbf4d Made one full pass over all Qt window menus and added accelerators where it makes sense. 2021-02-14 05:09:44 -05:00
mjbudd77 58c3081176 Added ALT+F accelerator for Qt main menu. 2021-02-13 20:16:51 -05:00
mjbudd77 35bb4be6f6 First successful build of Qt windows fceux. 2021-02-06 12:15:28 -05:00
mjbudd77 31819d246d Added initial framework for Qt palette editor window. 2021-02-02 22:37:01 -05:00
mjbudd77 7ce62ebee3 Added logic to Qt GUI to save off window size and video scaling parameters at application exit so that they can be used at startup to restore window to same size it was previously. 2021-01-24 14:21:18 -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 1454238f1e
Added #if defined(__unix__) in the appropriate places to allow for the code to compile for FreeBSD 12.2 using the clang 10.0.1 compiler. (#305) 2021-01-16 14:40:28 -05:00
mjbudd77 427daa3543
Added logic to Qt GUI to allow for the main menu bar to be hidden. (#296) 2021-01-05 21:50:37 -05:00
mjbudd77 e64aac93ee Added fceux name and version information to the main window title bar for the Qt/SDL port. 2020-12-20 23:39:25 -05:00