Commit Graph

7907 Commits

Author SHA1 Message Date
thrust26 76dfe8563d Added new and changed existing ARM developer options
TODO: doc
2024-08-10 15:50:15 +02:00
Christian Speckner dd046c4f7c Trap if add would switch instruction set. 2024-08-10 09:29:23 +02:00
Christian Speckner 434ff28458 Implement most of vcslib. 2024-08-08 22:45:46 +02:00
Christian Speckner d8bad1efc7 Silence warnings. 2024-08-08 21:57:14 +02:00
Christian Speckner c8ac92ee9f Work around clang idiosyncrasies. 2024-08-08 21:43:00 +02:00
Stephen Anthony e48c8fbedb Merge branch 'master' into elf 2024-08-07 18:00:26 -02:30
Stephen Anthony 3be7e6e4a7 Potential optimization for AudioChannel. Fix spelling mistake. 2024-08-07 17:58:12 -02:30
Stephen Anthony e4a665e7d2 Merge branch 'master' into elf 2024-08-07 12:14:59 -02:30
Stephen Anthony 7e8c868df7 Various fixes to latest sound code (style, clang-tidy, etc.) 2024-08-07 12:14:07 -02:30
Stephen Illingworth 5d68a1fd1c Improvement to volume sampling in TIA audio (#1038)
volume of audio channels sampled every on every tick. sum of samples is
averaged and a new sample output twice per scanline

this fixes issues with ROMs that change the volume of the audio multiple
times per scanline. for example, the experimental ROM in the following
thread now works correctly

https://forums.atariage.com/topic/370460-8-bit-digital-audio-from-2600/

(note that the ROM does not initialise the machine cleanly and so running
the emulator with developer options (random memory etc.) can cause
incorrect audio)
2024-08-07 10:18:42 +02:00
Stephen Anthony 4b86397f9c Fix narrowing issue. 2024-08-06 22:36:39 -02:30
Stephen Anthony 24309542e4 Replace C-style macros with C++ inlines using reinterpret_cast. 2024-08-06 22:07:50 -02:30
Stephen Anthony e574566116 Fix C-style rand(); use our Random class instead. 2024-08-06 21:42:29 -02:30
Stephen Anthony 190c9c01b0 Convert C-style union and malloc/free to C++ std::variant and unique_ptr. 2024-08-06 20:28:44 -02:30
Stephen Anthony ba1b163f92 Fix warning for potential incorrect rounding.
The proper approach is std::lround, but it won't be constexpr until C++23.
2024-08-06 16:52:08 -02:30
Stephen Anthony 934fa282ba Revert "Fix warning for rand(); NOLINT for now, as the proper fix isn't until C++23."
This reverts commit 5ce96542cb.
2024-08-06 16:50:33 -02:30
Stephen Anthony 5ce96542cb Fix warning for rand(); NOLINT for now, as the proper fix isn't until C++23. 2024-08-06 16:48:59 -02:30
Stephen Anthony 2d83fc0a26 Add `TIDY` clang-tidy script to tools. 2024-08-05 16:12:27 -02:30
Stephen Anthony bf9515f34d libretro: Run clang-tidy on all files. 2024-08-03 21:15:22 -02:30
Stephen Anthony 4e546f1891 Fixes from clang-tidy for the entire codebase, including header files. 2024-08-03 20:35:45 -02:30
Stephen Anthony 752219d4e2 Fix Visual Studio build for json header rename. 2024-08-02 16:11:39 -02:30
Stephen Anthony 428ef20a06 Rename json.hxx to json.hpp, just as it's distributed.
This has the nice side-effect of removing it from processing with clang-tidy.
2024-08-02 14:49:10 -02:30
Stephen Anthony 34a6b6979b Run clang-tidy on `src/debugger`. 2024-08-02 09:47:59 -02:30
Stephen Anthony 54538fa46c libretro: Add cart ELF support. 2024-08-01 17:29:14 -02:30
Stephen Anthony d4423d40f8 Fix Windows compile error from last commit. 2024-08-01 12:36:36 -02:30
Stephen Anthony a6d47814fd More fixes for warnings from clang-tidy, in `src/cheat` and `src/common`. 2024-08-01 12:20:40 -02:30
Stephen Anthony 4773c53f8f Fix potential overflow in cycle calculation. 2024-07-31 13:41:42 -02:30
Stephen Anthony 151becc4fb Fix compile error from last commit. 2024-07-31 13:37:38 -02:30
Stephen Anthony 86bb28d042 More fixes for warnings from clang-tidy. 2024-07-31 12:45:14 -02:30
Stephen Anthony 406f1e6956 Merge branch 'master' into elf 2024-07-30 18:03:53 -02:30
thrust26 c3b500ae61 removed interrupt handling code 2024-07-30 21:49:00 +02:00
Stephen Anthony 7c97728895 Use std::clamp. 2024-07-30 16:42:48 -02:30
thrust26 b367744e0e Fixed undefined order of startup vector peeks
Added ELF test ROMs
2024-07-30 20:52:04 +02:00
Stephen Anthony 986d631b7c Fix some clang-tidy warnings. 2024-07-30 14:52:21 -02:30
Stephen Anthony 75e54fd3ee Add ELF files to Xcode project. 2024-07-30 14:47:40 -02:30
Christian Speckner 52c51b525f Timing improvements. 2024-07-30 08:22:48 +02:00
Christian Speckner 9c54139460 Improve timing emulation, bump ARM MIPS to 190 for now. 2024-07-30 01:25:03 +02:00
Christian Speckner f0e7b122e8 Hack around buggy ARM code that accesses low memory. 2024-07-29 23:39:39 +02:00
Christian Speckner e47b2bb373 Implement init function, more vcslib -> mattress monkeys works. 2024-07-29 23:13:45 +02:00
Christian Speckner cfcec77e0b Implement more of vcslib. 2024-07-29 22:29:45 +02:00
Christian Speckner 3e1bd09b0b Fix memset. 2024-07-29 20:25:53 +02:00
Christian Speckner 7d5d19948e Minor optimizations. 2024-07-29 19:06:33 +02:00
Christian Speckner 306ec76786 Bus snooping. 2024-07-29 18:56:12 +02:00
Christian Speckner 443a14a604 Sync timing, limit the amount of queued transactions. 2024-07-29 18:21:37 +02:00
Christian Speckner 341f745684 Bus stuffing. 2024-07-28 14:13:49 +02:00
Christian Speckner e4e6878fdb Fix memset. 2024-07-28 00:12:53 +02:00
Christian Speckner d7a9ab4110 More fixes, implement more parts of vcslib. 2024-07-27 23:52:22 +02:00
Christian Speckner d2f5b74cdd Assorted fixes -> ARM executes. 2024-07-27 22:48:27 +02:00
Christian Speckner 32b8bbd32e Hook up ARM emulation. Crashes and dies right now. 2024-07-27 21:28:13 +02:00
Christian Speckner 39eb36083b Fixup thumb disassembly for debugging. 2024-07-27 21:00:32 +02:00