Commit Graph

6175 Commits

Author SHA1 Message Date
Jay Oster 65f4a482d5 Do not treat jump destinations as data accesses
The two JMP instructions have address modes that imply a data access
occurs. All branch instructions and JSR have `optype` 0, so they don't
have this problem.
2024-09-13 12:46:48 -07:00
Jay Oster 9da80206f8 Fix PRG writes in CD Logger
This code was added for FDS RAM, but it breaks PRG writes with normal
cartridge-based memory controllers.

The bug inappropriately resets (clears) the access mode bits previously
recorded when an MMIO register is written in PRG address space. For
instance, if an instruction is executed at $8000 and then some code
later writes to $8000, the instruction execution would have been
forgotten.
2024-09-12 15:25:00 -07:00
thor2016 f980ec2bc7
Merge pull request #732 from awjackson/fix_731
Make X24C02 only enter read/write state if I2C address matches; fixes #731
2024-06-09 14:22:20 -04:00
harry e6efd7f694 Fix for gcc misleading indentation in lua-engine.cpp. 2024-06-09 14:10:15 -04:00
harry eecb2e77b6 Replace strncpy usage in favor of Strlcpy to get rid of compiler warnings. 2024-06-09 14:07:41 -04:00
harry ecbfca1084 Minor gcc/clang compiler warning fix. 2024-06-09 09:34:08 -04:00
thor2016 c919de08b2
Merge pull request #735 from awjackson/fixbuild
Fix Linux build
2024-05-29 07:35:46 -04:00
Alex W. Jackson d94157e125 Fix Linux build 2024-05-28 19:56:07 -04:00
Alexey Cluster 14df08d804 Take NES 2.0 header WRAM size into account for MMC3 2024-05-28 14:03:27 +04:00
harry ffb28e1131 Changed Qt Avi recording to use atomic buffer indices to ensure both threads are aware of changes when they happen. 2024-05-11 07:09:42 -04:00
harry 283aea91db For Qt netplay, reset client frame rate adjustment to normal on disconnect. 2024-05-11 06:16:12 -04:00
Alex W. Jackson 38bb5b1f51 Make X24C02 only enter read/write state if I2C address matches; fixes SD Gundam Gaiden 2 2024-05-07 17:32:15 -04:00
harry c4dd4f5153 Updated client netplay rom requests to only send extracted archive files as well. 2024-05-05 06:29:47 -04:00
harry 0ea2670ae0 For Qt GUI, store archive file index so that a hard reload knows how to refind the ROM inside the archive. For netplay, don't send entire zip archives. Instead just send the single extracted ROM of interest. 2024-05-05 05:57:11 -04:00
harry 4b36de6ec9 Build fix. 2024-05-04 23:08:34 -04:00
harry 4e57ca40ae For Qt GUI, create a temp directory per every boot of application that can be used to store temporary files for things such as netplay roms. This folder is deleted at application exit. 2024-05-04 22:04:29 -04:00
thor2016 151c951d63
Merge pull request #730 from TheRealQuantam/indy-fix
"(z),Y" addressing incorrectly shown as "(z,Y)" in debugger
2024-04-18 21:29:12 -04:00
TheRealQuantam 1028732d84 Remember that Qt and Win versions have different disassembly code 2024-04-16 18:40:09 -07:00
TheRealQuantam fa6e4411dd "(z),Y" addressing incorrectly shown as "(z,Y)" in debugger 2024-04-16 18:15:22 -07:00
harry 84b823ffa7 Added more netplay status data to host status dialog. 2024-04-13 15:57:09 -04:00
harry 94975d7dbe Fix code so that FCEUGI fully constructs properly and is not clobbered after the construction by a memset. Also, some minor code cleanup in related areas. 2024-04-12 08:14:20 -04:00
harry c97e2c9ad3 For Qt Netplay, added code to sync cheats between server and clients. 2024-04-11 06:58:43 -04:00
harry 6e698433aa Added netplay debug mode for interface debug logging. 2024-04-08 07:07:08 -04:00
harry 9036dd07bd Added logic to allow netplay host to control pause state of clients. 2024-04-07 21:21:18 -04:00
harry e7d234136c Netplay sync state fixes. 2024-04-07 20:22:32 -04:00
harry 9f8310bbe1 Minor cleanup of netplay main menu. 2024-04-07 15:11:27 -04:00
harry e032d65811 For Qt netplay, changed client message dialogs to be non-blocking. This prevents re-entrant event loops. 2024-04-07 14:53:06 -04:00
thor2016 e751431099
Merge pull request #726 from negativeExponent/patch-1
unrom512.cpp: Expand support for PRG ROM size upto 4M
2024-04-06 10:07:36 -04:00
thor2016 3e1a8ec486
Merge pull request #728 from liyansong2018/master
Fix Path Traversal #727 in Netplay server
2024-04-06 10:05:08 -04:00
liyansong2018 48b48e7c13 Fix Path Traversal in Netplay server 2024-04-06 10:40:29 +08:00
harry f71b912afb Qt netplay fixes for processing input packet data. Don't attempt spawn dialog windows when in read loop, it will cause event loop re-entrancy issues. 2024-04-04 06:43:10 -04:00
harry 10418f551a Added framework for Qt netplay client status dialog. 2024-04-03 04:55:07 -04:00
harry 2fe563181e Added ROM unload handling logic for netplay. 2024-03-26 20:58:21 -04:00
harry 25cab8195f Bug fix for Qt win64 netplay, make sure rom files are opened in binary mode. 2024-03-26 20:20:01 -04:00
harry f50b70b87e Reduce netplay max tcp transmission size to 8k for ROM transfers. 2024-03-24 22:08:15 -04:00
harry 84654b1c06 Set low delay tcp option for netplay. 2024-03-24 21:34:07 -04:00
harry 6e22998336 Increased netplay tcp OS level send/receive buffer sizes. 2024-03-24 21:29:41 -04:00
harry a63f5e6051 Netplay modified data read code to allow smaller buffered data to arrive in pieces rather than waiting for full data set. 2024-03-24 20:49:17 -04:00
harry 450870ef77 Build fix for constexpr vars that conflicted with some win macros. 2024-03-24 16:29:13 -04:00
harry bed9b10380 Added netplay ROM comparison logic. 2024-03-24 15:42:10 -04:00
negativeExponent 79c533ffdc
unrom512.cpp: Expand support for PRG ROM size upto 4M
at least 1 cart in Mapper30 has 2MB. current implementation only allows carts of upto 512K
2024-03-24 10:27:52 +08:00
harry cc61b7b5ab Added app version check between netplay host and clients to ensure interface compatibility. 2024-03-23 19:01:33 -04:00
harry cc234ae04b Added on state loaded callback function to core so that driver code can be notified of a new state being loaded. In Qt driver, emit a signal on state loads that objects can connect to. For a resync of all netplay clients when server detects a new state load. 2024-03-23 07:32:25 -04:00
harry 2ff6084935 Qt netplay host game UI dialog improvements. 2024-03-21 22:29:15 -04:00
harry 5a0898ccbe For Qt GUI, added netplay client state load request functionality. 2024-03-21 22:06:40 -04:00
harry 55654f7191 For Qt GUI, changed instruction tracing to be enabled/disabled by registering callback functions. This increases efficiency when tracing is disabled. 2024-03-18 06:02:30 -04:00
thor2016 5eeeb2219f
Merge pull request #721 from vampirecat35/master
Update StringBuilder.h
2024-03-05 08:36:48 -05:00
Andy Vandijck 1926729680
Update StringBuilder.h
Fix nullptr_t to std::nullptr_t
2024-03-05 11:12:34 +01:00
harry 72d1a8edf2 Added netplay client frame throttling functionality to keep it in step with server. 2024-03-04 06:47:09 -05:00
harry 798c5a1d9c For NetPlay, added ability for client to request a ROM to load. 2024-03-03 20:30:35 -05:00