Commit Graph

845 Commits

Author SHA1 Message Date
Vicki Pfau edaa27796b GBA: Improve reset behavior of various hardware components 2024-12-11 17:24:22 -08:00
Vicki Pfau 109fbe60f5 GBA Hardware: Fix loading states unconditionally overwriting GPIO memory 2024-12-11 16:24:51 -08:00
Vicki Pfau a5e3e746b2 GBA Unlicensed Carts: Prevent multicarts from remapping after being locked 2024-11-23 19:46:44 -08:00
Vicki Pfau bdb0057fb3 GBA Serialize: Add support for Vast Fame state 2024-11-23 03:23:05 -08:00
Vicki Pfau dc263295dd GBA Memory: Add unlicensed cart write handling stub 2024-11-17 03:34:33 -08:00
Vicki Pfau 91cf829261 GBA Memory: Add initial support for N-in-1 style multicarts 2024-11-17 02:58:25 -08:00
Vicki Pfau 4d6fb5b3c5 Scripting: Combine frame argument and return value stacks
These were never used a the same time, and it reduces malloc/free churn
2024-11-08 02:27:45 -08:00
Vicki Pfau 4a5a25e90c GBA DMA: Cache cycle estimation on first DMA 2024-10-18 03:50:09 -07:00
Vicki Pfau 2ccfde0f33 Core: Add MD5 hashing for ROMs 2024-10-08 04:09:26 -07:00
Vicki Pfau 58510ca250 Util: Add MD5 implementation and consistency tests 2024-10-08 04:06:39 -07:00
Vicki Pfau 7950279a09 Core: Split out semantics of rumble integrator init/reset (fixes #3309) 2024-10-04 22:20:21 -07:00
Vicki Pfau bfc52cd2f0 All: Fix whitespace errors 2024-09-30 17:24:04 -07:00
Vicki Pfau 7089a5572b GBA SIO: Add periodic hard sync so the runner doesn't get too ahead 2024-09-29 19:58:56 -07:00
Vicki Pfau 1d584edb77 GBA: Expose setting the link port device as a peripheral 2024-09-28 00:24:31 -07:00
Vicki Pfau 0823797671 GBA SIO: Remove driver sets and driver load/unload concepts 2024-09-28 00:24:31 -07:00
Vicki Pfau 630e3a591a GBA SIO: Add support for side data in save states 2024-09-26 22:40:26 -07:00
Vicki Pfau 26e20ca846 GBA SIO: Remove old lockstep driver 2024-09-26 22:40:26 -07:00
Vicki Pfau 0955b94466 GBA SIO: Bring up new lockstep driver 2024-09-26 22:40:26 -07:00
Vicki Pfau 36c1a8cfbc Core: Implement mLockstepUser for mCoreThread 2024-09-26 22:40:26 -07:00
Vicki Pfau 3180d432e5 Core: Add new mLockstepUser API for upcoming lockstep rewrite 2024-09-26 22:40:26 -07:00
Vicki Pfau 0b9cf1270c GBA SIO: Modify GBASIOTransferCycles to not require SIO struct 2024-09-26 22:40:26 -07:00
Vicki Pfau 621eb4d425 GBA SIO: Move starting/end timing logic out of drivers 2024-09-26 22:40:26 -07:00
Vicki Pfau 0425dadee9 GBA SIO: Add RCNT bitfield 2024-09-26 22:40:26 -07:00
Vicki Pfau ab655db3f8 GBA SIO: Fix NORMAL timing out 2024-09-26 22:40:26 -07:00
Vicki Pfau aad552ff47 GBA SIO: Add writeRCNT callback, mostly for GPIO mode 2024-09-26 22:40:26 -07:00
Vicki Pfau 5da4b1fc4d GBA SIO: Replace writeRegister with writeSIOCNT 2024-09-26 22:40:26 -07:00
Vicki Pfau 54c9e9d411 GBA SIO: Move NORMAL finishing logic out of drivers 2024-09-26 22:40:26 -07:00
Vicki Pfau 1b0b540de6 GBA SIO: Move cycle estimation values into core 2024-09-26 22:40:26 -07:00
Vicki Pfau cd4132fba3 GBA SIO: Move MULTI finishing logic out of drivers 2024-09-26 22:40:26 -07:00
Vicki Pfau 09a69a32c0 GBA SIO: Start moving common SIO logic out of drivers 2024-09-26 22:40:26 -07:00
Vicki Pfau 451da0f8a4 GBA SIO: Start adding new SIO callbacks for revamped API 2024-09-26 22:40:26 -07:00
Vicki Pfau a6914b2ddb Util: Rename color_t to avoid namespace conflicts 2024-09-06 23:24:40 -07:00
Vicki Pfau b072cb40cb Core: Fix video proxy renderer creation and improve API 2024-09-06 23:24:40 -07:00
Vicki Pfau a5ea157c9a GBA Video: Add stubs for saving/loading extra data out of the video renderers 2024-09-01 01:56:52 -07:00
Vicki Pfau 59b561b8c0 Core: mStateExtdataGet const correctness 2024-09-01 01:28:05 -07:00
Vicki Pfau 3a6657bd88 Core: Add stubs for loading/saving subsystem extra state 2024-09-01 00:55:29 -07:00
Vicki Pfau 84dd69ff86 Util: Add UIntList predefined vector 2024-08-25 02:32:39 -07:00
Vicki Pfau eaee4228ba GBA Video: Improve emulation of window start/end conditions (fixes #1945) 2024-08-16 02:32:44 -07:00
Vicki Pfau 8ab2681bca Core: Expose more ROM information from the API 2024-08-11 23:25:18 -07:00
Vicki Pfau 0484cd5d31 GBA: Remove unused field 2024-07-07 12:24:24 -07:00
Vicki Pfau 79193b914b GBA Audio: Fix crash in audio subsampling if timing lockstep breaks 2024-06-25 04:08:47 -07:00
Vicki Pfau 1a3873da67 GBA Serialize: Fix some minor save state edge cases
There are two edge cases fixed in this commit. The first one involves audio
FIFO DMA state not being properly updated if the game reconfigured it between
save and load. This doesn't happen often, but it could conceivably affect
custom sound engines. The second case is the extremely rare case of a save
state being taken directly after a DMA ending but before an open bus read. The
chances of this happening are negligible, but it's still a bug regargless.
2024-06-25 03:13:33 -07:00
Vicki Pfau 9318e9b2cb All: Clean up how assertions are done 2024-06-20 02:23:02 -07:00
Vicki Pfau 2ea11feda6 GBA Memory: Improve VRAM access stall cycle estimation 2024-06-17 02:27:31 -07:00
Vicki Pfau 458300b02e Core: Improve rumble emulation by averaging state over entire frame (fixes #3232) 2024-06-17 00:15:44 -07:00
Rib 58651f2054 GBA Memory: Clean up Vast Fame code somewhat 2024-06-12 15:58:55 -07:00
Rib 20fc7b6ef3 GBA Memory: Support the Chinese version of Digimon Sapphire by Vast Fame 2024-06-12 15:58:55 -07:00
Vicki Pfau 2c97515742 Script: Add missing include 2024-06-09 01:15:25 -07:00
Vicki Pfau 6f261f6f1b Scripting: Split console implementation out from Core scripting 2024-06-09 01:12:14 -07:00
Vicki Pfau e4e455dd5e ARM: Add framework for coprocessor support 2024-06-02 17:30:17 -07:00