lots of changes needed here as core has done quite a bit of changes (which in any case has reduced needed changes in upstream for our fork, so easier merging in the future)
gl crap is better done with fancy template classes to wrap around the msabi/sysvabi runtime check (so comparing with nullptr or using it as a bool works as expected)
c# changes pending (API has changed)
also, get rid of the GBA SRAM hack where it was inserted in ROMs (gross), instead figure out the size and give melonDS a blank save of the correct size
GBA SRAM is also now in SaveRAM
also add in more memory domains (SRAM/ROM/DSi BIOS)
* Waterbox setup has been revamped to use the latest llvm parts (llvm 16 for compiler_rt/libunwind/libcxx/libcxxabi).
* Clang is now possible to use, and is the preferred compiler (due to superior performance).
* Supported compilers are now clang 14/15/16, and gcc 12.
* Other core updates are mixed in.
---------
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
* Use SameBoy submodule symlink for BSNES
* SGB memory domains
* Fix SGB saveram issues (extra data like rtc will be saved correctly now here)
* Various cleanups, avoid unneeded unsafe use, a little better EnterExit use
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
* Register TCM areas for melonDS core
* reorder mem domains a bit, add TCM to ARM9 System Bus, build
Co-authored-by: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
* Partial port of graphics debugger to new BSNES
* minimal "working" copy-paste
* small fix for the previous commit
* Implement more stuff
* no idea whose responsibility "EnterExit" is but this should work
* add support for backdropcolor
i have 0% trust in this code
* implement mode7, apply backcolor on load
* 🙈
un-"implement" the nonfunctional scanlinehookmanager as well as the non-functional palette setting logic
- this may actually break config lol
* don't break libsnes config
* Provide IBSNESForGfxDebugger in the subbsnes core
* Remove redundant semicolon
* Clean up diff of `comboPalette_SelectedIndexChanged`
* Fix crash
Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
* BSNESv115+: Replace the 'snes_audio_sample' callback with a dynamic audio sample vector to reduce callbacks
* fix integration for subbsnes core
* reduce buffer allocations
- also make frame setter private now that it's possible
* BSNESv115: allow subframe inputs
* BSNESv115: Implement ICycleTiming
may be correct, not sure
* BSNESv115: add dedicated subframe core
I have probably overlooked something...
* Don't implement ICycleTiming in the non-subframe core
requires re-implementing the "FrameAdvance" function in the subframe core
* Register previously missing services in the subframe core as well
* Wire up SubBsnes everywhere in the frontend
* Change reset cycle to reset instruction
* Deduplicate some code
* Slightly rework frame advance logic. The main intent here is to prevent a case where two frames are ran within a single "frame." The current code probably wouldn't crash due to that, but best not to do that.
Also make SGB work here. A bit of a joke since you really can only abuse it for subframe resets, but might as well especially with the settings implying it's possible (and someone is bound to complain).
Co-authored-by: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Deflate compression in rewinder is now zstd compression
Binary blobs in zip files are zstd compressed (text is uncompresed for user ease).
All wbx cores and resources are re-compressed with zstd, wbx build scripts are changed to account for this. Shaves off a bit with download size and it's faster to decompress to.
This never really worked. Besides being unusuably slow and not very accurate, there was a miscompliation problem that caused release builds to not function.
Squashed commit of the following:
commit 1f6cdb99a8486b3f89395b2bd3f13f730e21f743
Merge: bcef146d7 ecd428898
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 03:05:12 2022 -0700
Merge branch 'transfer_pak_ares' of https://github.com/CasualPokePlayer/BizHawk into transfer_pak_ares
commit bcef146d7d62e5ce435ae3fc4d585d71d98bec52
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 03:05:05 2022 -0700
a
commit ecd4288980f7311eba3bdd0a9d1a3fca02e42e43
Merge: 86a7e3e85 ccb24cc79
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 02:57:00 2022 -0700
Merge branch 'transfer_pak_ares' of https://github.com/CasualPokePlayer/BizHawk into transfer_pak_ares
commit 86a7e3e85bc1b3cb979671edcbfca66e69d5212b
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 02:56:50 2022 -0700
a
commit ccb24cc79fd922b1e3e3b80d660c7b7696f0cf84
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 02:51:36 2022 -0700
a
commit 285fd66f9240dfa502a269adb19cc1f3d11236c5
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 02:02:31 2022 -0700
misc
commit 9fb76345e4507cbd53ab5e4c2c61a5cb992b7241
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 01:50:46 2022 -0700
frontend hookup
commit dabee3a4d63c5801e3147dd758e3c187be0ab8bd
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Mon Mar 21 01:26:48 2022 -0700
actually hook other shit up also delete some shit
commit df632d6ddf6eaeb61ad3ad640851709c2614bfbd
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 21:37:18 2022 -0700
a
commit 143c4039453290ef1e8a4cf53ddea534efa0cea3
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 21:28:07 2022 -0700
a
commit fd75dcc5150860171e3d96fd0bcb4749eeb99378
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 21:03:51 2022 -0700
a
commit ea039643e9a093f63f8dc8c7446e9e70f7f965f0
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 19:56:46 2022 -0700
a
commit 8b373d2ba547cd1ab61360e8129f31452014c728
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 19:33:47 2022 -0700
a
commit dc18a90bebcae013aca4494c1e0a83603dbdbea6
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 19:18:34 2022 -0700
a
commit 3d0eba5f57d95f7cfd74b662f70a40cac5638539
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 19:16:56 2022 -0700
a
commit d97ea34753c007663ea0e629df8830e6aae98e91
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 18:28:01 2022 -0700
a
commit 7a1fe0442c7dd6425048207a19b1b18f9dc3e344
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 17:22:10 2022 -0700
a
commit 421de8ebb8c02736e65f28a88a17cabf297c6e10
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 16:57:47 2022 -0700
is this right?
commit 9fcaa1905b6e3b6bc73c8e8c15c55cab06ddb7f4
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 15:57:32 2022 -0700
rework audio
commit 602577ded89f2fd7d4514792e4f9f485235ce2f1
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:54:29 2022 -0700
doh
commit 5521dab709551d9f02bd0cf0d979d8a3860541c6
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:42:50 2022 -0700
a
commit bc10461eb9d47bea5acc7cc22963b8e7025b9a31
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:41:17 2022 -0700
a
commit d088719299bc0946962bba9404469fe9628633c6
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:25:07 2022 -0700
a
commit d425c49bc2ea7925f485379dad33326fa8566754
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:18:33 2022 -0700
a
commit ea7c69a512ce84977ad92be0c3f97f396dcf13a7
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:13:41 2022 -0700
a
commit b350580b5c8ce455d6ffa41237c2564e8fa76a58
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 14:05:46 2022 -0700
a
commit 5983b23e760e5ca8a3c8141075f383275da570b4
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 13:57:25 2022 -0700
a
commit 12de82e8841284cb70ec02765d86e3729661dcb4
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 13:46:58 2022 -0700
a
commit 992bdf114c24a8a3d37c110629f9a66bfaf21cf8
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 13:05:28 2022 -0700
a
commit 3637649dde95ff4fb24474ee0d1dde795cbc5fe3
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 12:49:52 2022 -0700
o
commit 7d7264b92822ce34ba5412f4cf869c6a4e6fb9b9
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 12:41:55 2022 -0700
testing time
commit bb3a2f89861cdf429091d8253a656e782b68e33b
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 12:14:30 2022 -0700
bleh
commit df46cc34d6edc312b519c98b6c7be3ac6ab89bd2
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 06:18:28 2022 -0700
bleh
commit 21c28a81726ab9a9f206a58424e5434cd0bac1a8
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:43:39 2022 -0700
hack test time
commit 3d9e462addc20d6b6d8ffc41595c4751d6fc2975
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:36:51 2022 -0700
oh right need to build it
commit a970194f64ac0652f97236debd39e142b01d4dcf
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:32:07 2022 -0700
guessing not endianess, maybe need more reset state work?
commit 5d4c11dbf2f767e63d505da22d6bbdef76a4e28b
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:23:52 2022 -0700
is this a endianess issue?
commit c5fcd687f5e2c62b1f0f065a3b9c9ffa30867eeb
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:11:43 2022 -0700
debug time
commit 437071710ea040a466dd25d7fe691fcdbdb95030
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 05:03:58 2022 -0700
better emulate reset thingie
commit e02503c3f74aa89784b5cc43d1fe5daa6fedf5d3
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date: Sun Mar 20 04:31:42 2022 -0700
initial mouse and transfer pak support
* Fix#3173 by only calling bus.map() on initial power, not subsequent calls
* yeah screw that, we'll just lock the bus to prevent map calls from going through
* initialize peekable in reset with false, just for safety i guess
* prep for handling multi-threaded renderer in melon, along with some other cleanups
* initial core side support for mt rendering, probably crashes?
* oops
* ok use ref not in
* testing
* poor man's semaphore
* clean this up, hopefully fix a deadlock?
* update submodule
* reduce submodule diff
* cleanup
* hook up thread wait cb
* maybe make shutdown not hardlock?
* oops
* oops
* testing
* testing
* a
* lol
* fuck
* a
* oops
* a
* a
* a
* a
* a
* a
* a
* a
* a
* if false this
* a
* a
* a
* bleh
* a
* update to upstream
* oh right lua
* region override for bsnes
* hook up SnesInitData right. still needs region override sync setting
* settings stuff, also need to make sure sameboy is using the right region for sgb
* and build
* clearer struct definition; move struct to header file
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
* prep for performance ares64 core, needs work unmanaged side
* get this going
* rebuild this
* apparently build didnt get cp'd? need to investigate
* fix build, other shit
* suppress these warnings
* tweaks and builds
* apparently bizinvoker doesnt like having LibAres64 class shared between non-waterbox and waterboxed, so split it.
also states for performance core
* builds
* fix this option, describe supersampling properly
* penguin64