Commit Graph

512 Commits

Author SHA1 Message Date
CasualPokePlayer 929b034321 fix bad fix to risc jr, & 0x10 seems to be correct according to battle morph and blue lightning... 2022-09-30 04:36:40 -07:00
CasualPokePlayer 95c06e0b6e better fix for d7810f6ea9, remove incorrect comment 2022-09-30 04:18:02 -07:00
CasualPokePlayer f1a3e02e89 revert some of baa3bdf948, as it caused regressions elsewhere, make GPU interrupts not stupid (makes Myst stop crashing with NTSC) 2022-09-30 02:28:27 -07:00
CasualPokePlayer baa3bdf948 [virtualjaguar] rework dsp and gpu opcodes to come from the same source, fix some wrong opcodes (partially fixes Club Drive and Baldies music) 2022-09-29 21:53:14 -07:00
YoshiRulz 04fcf59afe
Update C++ FlatBuffers lib, check in new codegen, and rebuild cores 2022-09-30 05:33:18 +10:00
CasualPokePlayer d7810f6ea9 fix buggy TOM writes, fixes Baldies 2022-09-28 19:45:41 -07:00
CasualPokePlayer f0529fde28 [virtualjaguar] stop a CD transfer when address is greater than the end, rather than greater than or equal to, fixes battle morph 2022-09-28 04:31:06 -07:00
CasualPokePlayer 6388e4a0a8 more vjaguar cleanup 2022-09-28 03:25:53 -07:00
CasualPokePlayer 80cf3a0c48 [virtualjaguar] memtrack support, fix bug with event system, various cleanups 2022-09-28 03:25:53 -07:00
CasualPokePlayer 94bb881d00 better completely wrong cd timings, fix some bad risc opcodes, fixes FMVs in jag cd games 2022-09-26 21:49:33 -07:00
CasualPokePlayer b84ef509ec fix circular buffer, fix 24bpp mode 2022-09-25 19:54:56 -07:00
CasualPokePlayer bc83c9c917 adjust jagcd timing
this is still very wrong (needs something smarter for timing) but seems to make games intros not puke garbage sound now
2022-09-25 06:53:24 -07:00
CasualPokePlayer c2ae5bfa0e jagcd cd_initm support, fix some bugs 2022-09-25 06:05:28 -07:00
CasualPokePlayer 1f9337d225 fix loading in byteswapped jag cds 2022-09-25 01:03:45 -07:00
CasualPokePlayer ceff5f3e90 jagcd progress, fix jaguar lag when dsp is polling inputs 2022-09-25 00:38:01 -07:00
CasualPokePlayer 740cd1f8d4 more reg get/setting and tracing support for gpu/dsp 2022-09-24 04:14:28 -07:00
CasualPokePlayer ef18a76064 improve jaguar system bus, add more jaguar memory domains 2022-09-23 19:43:49 -07:00
CasualPokePlayer d8825deb8d fix non-word alignment hack 2022-09-23 06:40:13 -07:00
CasualPokePlayer 8194e5ff4b add hacks to support byteswapped and/or non-word aligned jagcds 2022-09-23 06:36:11 -07:00
CasualPokePlayer 801a783c69 fix gpu/dsp ram domains 2022-09-23 02:43:49 -07:00
CasualPokePlayer 6113f3c17b partial jagcd support (doesn't seem to completely work here)
fix some issues with vjaguar cleanup
add mem/trace callbacks and get/set reg support
2022-09-23 01:05:41 -07:00
CasualPokePlayer d50454b37a cleanup vjaguar code 2022-09-19 04:41:10 -07:00
CasualPokePlayer 38d3d36199 fix opcode address in exec callbacks + tracing (thanks prefetch)
sp/lr/pc for r13/r14/r15 for tracing
fix a bad for threaded renderer's thread start callback
2022-09-18 02:39:31 -07:00
CasualPokePlayer e242d35a22 pull latest sameboy, rework build system into a makefile 2022-09-17 18:40:30 -07:00
CasualPokePlayer 5e34dc6166 Always savestate expansion pak regardless of settings.
All the disable expansion pak setting actually does is tell the game the expansion pak is not available.
However, not all games actually abide by this, some will use the expansion pak area anyways.
Video plugins also end up just using a "segfault test" to determine if the expansion pak is present or not
So video plugins may use the expansion pak area too
This ends up causing savestates sometimes just crashing the game if the expansion pak ends up used

Resolves #3092, other state issues might be solved with this (I suspect #3328 is caused by this)
2022-09-17 13:11:31 -07:00
CasualPokePlayer 483258a04d virtualjaguar port, resolves #1907 2022-09-11 21:38:46 -07:00
CasualPokePlayer 34c504d7b9 update ds disassembler 2022-09-10 20:53:05 -07:00
Moritz Bender 6f0953aaa3
Implement snes graphics debugger for the new bsnes core (#3367)
* 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>
2022-09-03 19:13:56 +02:00
CasualPokePlayer 13069d08f4 fix gpgx pattern cache invalidation, resolves #3363 2022-08-27 18:49:00 -07:00
CasualPokePlayer f1ef8d0887 fix oopsie in angrylion, resolves #3372 2022-08-26 14:27:26 -07:00
CasualPokePlayer 9174d17bd8 tic80 settings for enabling/disabling controllers, proper mnemonics 2022-08-19 23:43:55 -07:00
CasualPokePlayer f1fc05fe60 quick fix some graphical bugs
this isn't right but should suffice in practice most of the time
2022-08-16 17:49:54 -07:00
Moritz Bender 039d822144
BSNESv115+: Replace the 'snes_audio_sample' callback with a dynamic audio sample vector to reduce callbacks (#3010)
* 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
2022-08-15 20:50:26 +02:00
CasualPokePlayer 0ff4aca182 [Gambatte] Remote control controls and remote control emulation expanded to HuC1 IR and CGB IR (previously only done in HuC3) 2022-08-15 02:49:34 -07:00
Moritz Bender 929432086f
BSNESv115: add dedicated subframe core (#3281)
* 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>
2022-08-10 23:08:44 +02:00
CasualPokePlayer 1a27aae45b update sameboy 2022-08-10 12:34:46 -07:00
CasualPokePlayer b8444f8bd2 update ares 2022-08-10 04:42:38 -07:00
CasualPokePlayer 5be8b0aab9
Zstd Compression (#3345)
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.
2022-08-09 23:33:28 -07:00
CasualPokePlayer 32e8afcedc
Implement hardware accelerated CRC32 and SHA1, using them if possible (#3348)
* Implement hardware accelerated CRC32 and SHA1, use them if possible.
CRC32's generic function is also replaced with zlib's as it is much more performant than our implementation
Full hash of a ~731MB disc took only ~369 ms with this, and the generic CRC32 isn't so far behind at ~659 ms
SHA1 should perform 4x faster if the user's CPU supports the SHA instructions.

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
2022-08-09 23:30:17 -07:00
CasualPokePlayer 5cd37c76b2 dobie removal cleanup
fixes 89972a3579
2022-08-05 03:32:09 -07:00
CasualPokePlayer d84da4ec4b wire up sameboy's rumble 2022-07-25 00:10:46 -07:00
CasualPokePlayer cb468ba806 pull in latest sameboy master, add stub camera pixel callback to prevent nondeterminism, wire disabling joypad bounce as a sync setting, various cleanup 2022-07-24 04:35:03 -07:00
CasualPokePlayer 480ce3b925 fix minor miscompilation of gambatte-linux, update LibGambatte to reflect API changes wrt CameraCallback 2022-07-20 23:35:29 -07:00
CasualPokePlayer a8f709a8a4 [Gambatte] ensure cameraBuf_ is signed, misc cleanup 2022-07-20 23:29:53 -07:00
CasualPokePlayer d209ba289f various gambatte updates / bugfixes 2022-07-20 22:51:28 -07:00
CasualPokePlayer c02975c757 merge aresv129, enable SIMD RSP 2022-07-17 18:52:59 -07:00
CasualPokePlayer 0d3c7b7e0c [Libretro] Implement SET_SYSTEM_AV_INFO and SET_GEOMETRY 2022-07-06 14:52:28 -07:00
CasualPokePlayer e41d1a996e fix gpgx_swap_disc, re-enable disk buttons (seems to work?) 2022-07-03 23:17:08 -07:00
CasualPokePlayer c5902bff54 update sameboy to latest upstream 2022-07-02 09:52:35 -07:00
CasualPokePlayer 5875df4b76 prevent svp dereferences when not using an svp cart (fixes #3297) 2022-06-29 13:03:55 -07:00
CasualPokePlayer 347fa24820 split arm7 polling/touch screen polling to a new "alt lag" variable and add a setting for whether to consider these sources (fixes #3278)
add in new disasm system (taken from https://github.com/MAP233224/dthumb), works much better than darm
2022-06-24 01:34:01 -07:00
CasualPokePlayer 170ea47464 wire up reset button for tic80 and make biz_time_rm tick post frame 2022-06-16 15:56:34 -07:00
CasualPokePlayer 84af66f523 fix TIC80 inputs, wire up time/clock callbacks 2022-06-16 13:01:50 -07:00
CasualPokePlayer 2c3b6b3cd4 ti80 core 2022-06-16 00:14:48 -07:00
CasualPokePlayer 90220b6506 add m161 support to gambatte 2022-06-11 03:22:38 -07:00
CasualPokePlayer 253f139731 merge in another commit from ares 2022-05-30 15:39:43 -07:00
CasualPokePlayer d201fdd62d s/DiscIndex/DiskIndex 2022-05-29 21:37:14 -07:00
CasualPokePlayer 1c27c73c86 fix nyma cd switching
also changing the make all cores script so it uses the install target
2022-05-29 21:16:23 -07:00
CasualPokePlayer 3b09f822b7 more vb nyma modifications, also push repo 2022-05-29 19:44:08 -07:00
CasualPokePlayer 0c95088e02 vb move to nyma 2022-05-29 17:21:01 -07:00
CasualPokePlayer e6d74c3167 merge mednafen 1.29.0 for nyma cores 2022-05-29 00:31:24 -07:00
Morilli 9bb3595a77 fix logging crashes for LibretroBridge on linux
using va_start just once but iterating twice is undefined behavior and worked fine on windows while hard-crashing on linux
2022-05-29 05:52:54 +02:00
CasualPokePlayer cd9327a10d merge latest mgba upstream 2022-05-28 10:57:33 -07:00
CasualPokePlayer 59d011334f fix ares64 tracer, pull in some more commits from upstream 2022-05-27 21:14:04 -07:00
CasualPokePlayer b773a3f163 merge latest melonDS master 2022-05-27 17:52:09 -07:00
CasualPokePlayer 9a73be0e24 merge latest sameboy master 2022-05-27 17:42:42 -07:00
CasualPokePlayer 78ed3ca1d3 don't set a log interface for linux libretro, seems like va args don't work here and can crash? 2022-05-27 14:17:08 -07:00
CasualPokePlayer 009bff30d7 merge aresv128 2022-05-26 22:26:56 -07:00
CasualPokePlayer 8ca1e4a080 pull in sameboy upstream and implement custom palettes for sameboy dmg (resolves #3239 for dmg, cgb should be fielded as an upstream request) 2022-05-11 00:00:43 -07:00
CasualPokePlayer b72590066f [Libretro] fix some input issues due to more recent api changes 2022-05-05 02:46:13 -07:00
CasualPokePlayer 25fb816988
Libretro rewrite (#3212)
* redo all the libretro stuff in pure C#

also yes i imported snprintf lol

* also remove these

* remove clib hack, it doesn't work when there's more than 1 param (apparently ... is really just a variable num of args passed on the stack and not some pointer to some struct, and c# doesn't have any way of representing this. fallback log isn't bad to deal with anyways)

* also probably want this to return false

* /s/UnmanagedString/PinnedString/

* misc tweaks

* oops

* Libretro "Bridge", with entirely different design. The bridge here simply handles all the callbacks retro cores use, so there is never a c++ -> .NET callback, and probably avoids any libco issues
also a lot of cleanup in various areas, and some bug fixes too (Blit555 now outputs the correct colors)

* use blipbuffer instead of speex

speex seems to perform much worse often (and outright buggy for some libretro cores like sameboy which reports a sample rate of 384000), and blip works well enough even for "newer" systems

* cleanup and linux build

* cleanup and bugfixes (thanks uninitalized variables)

* oops

* misc and cleanup

* fix load no game, also handle load game failures correctly
2022-05-05 01:49:29 -07:00
CasualPokePlayer ebb0282860 various gambatte updates, all wilbertpol tests now pass, cgb-dmg now correctly uses dmg sprite priority when it should (fixes dmg-acid2 in CGB-DMG) 2022-04-30 16:25:28 -07:00
CasualPokePlayer 20ecfb81ea Add tracer + disassembler + get registers + system bus to Ares64, mark Ares64 as released
Squashed commit of the following:

commit 2e29aee13276412b2832e8f0efa10d9c57ed9d78
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 22:44:33 2022 -0700

    .

commit be73cf5e2204405a84b42948fd104d18c75be45a
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 22:37:34 2022 -0700

    hook up debug stuff + disassembler + tracer, mark Ares64 as released

commit fdd440703ecef48c94bb2bb1ad9c2d3dc5c96e42
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 20:36:08 2022 -0700

    maybe fix disassembly

commit d0808551c60fe3c03506b1ad89766a0d397e06dd
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 20:06:36 2022 -0700

    system bus

commit 60d1df8f33043fb656f90c1cf4ace8788489c3e1
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 16:40:11 2022 -0700

    regs

commit c64be2df293ea44694868355747061a952bd54aa
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Apr 14 15:31:08 2022 -0700

    tracing and disasembly for ares, needs to be hooked up to frontend
2022-04-14 22:45:10 -07:00
CasualPokePlayer 8d03133c71 make sameboy output 262144 hz samples instead of 2MiHz samples (latter can be buggy, 262144 was recommended by LIJI).
also update sameboy bootroms, closes #3185
2022-04-14 02:36:51 -07:00
CasualPokePlayer 2c232a2b81 [Gambatte] various upstream accuracy improvements (notably, cgb-acid-hell now passes!). also fix memory callbacks for ROM0 area 2022-04-05 20:36:11 -07:00
CasualPokePlayer d4bb5e047e [Gambatte] API updates, setting time now uses a single function which takes in dividers 2022-04-03 02:34:23 -07:00
CasualPokePlayer c33d2cfbe5 [Gambatte] upstream cleanup, use upstream for board name and other rom details, remove now unused MULTICART_COMPAT flag 2022-04-02 23:16:39 -07:00
CasualPokePlayer 37a7c69107 [Gambatte] fix MMM01 inaccuracy 2022-04-02 12:55:28 -07:00
CasualPokePlayer 178264ce67 update sameboy, fix bug with SRAM loading 2022-04-02 10:22:18 -07:00
CasualPokePlayer cc0a30e5b2 [Gambatte] upstream cleanup + MMM01 support 2022-04-02 09:52:50 -07:00
CasualPokePlayer e80e34ce65 [Gambatte] upstream optimization and regression fix, seeing ~50 FPS increase 2022-03-30 02:30:12 -07:00
CasualPokePlayer 15270adebe [Gambatte] upstream cleanup + optimization 2022-03-29 00:47:16 -07:00
Morilli 3d039934af BSNESv115+: expose fast dsp and fast coprocessor options 2022-03-29 02:16:42 +02:00
Moritz Bender 339d34413f
Implement msu1 handling for bsnes115+ (#3190)
* Implement msu1 handling for bsnes115+

* RomPath->RomDirectory for clarity

* Remove unnecessary include
2022-03-28 23:52:13 +02:00
CasualPokePlayer 7f99c11cce [Gambatte] fix minor HuC3 audio issue 2022-03-27 15:34:04 -07:00
CasualPokePlayer e206c3287b [Gambatte] HuC3 improvements 2022-03-27 15:22:34 -07:00
CasualPokePlayer 848ff87be1 [Gambatte] fix minor IR regression 2022-03-26 00:58:12 -07:00
CasualPokePlayer 16219ab38f [Gambatte] upstream update 2022-03-25 20:17:15 -07:00
Morilli da2a20e55b BSNESv115+: Some general cleanup, remove nonfunctional msu1 code 2022-03-25 08:36:11 +01:00
CasualPokePlayer b0a2c76d72 [Gambatte] fix MBC1M inaccuracy 2022-03-24 03:06:00 -07:00
CasualPokePlayer 2f3577ad38 [Gambatte] fix HuC1 IR 2022-03-24 02:24:52 -07:00
CasualPokePlayer a68c835a4b update gambatte (MBC1 & HuC1 improvements; HuC1 IR support) 2022-03-24 02:14:49 -07:00
CasualPokePlayer 64ac7253f6 Add transfer pak support to ares, add n64 mouse support to ares, various cleanups all around
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
2022-03-21 03:08:23 -07:00
CasualPokePlayer 31b30210b3 [Ares64] fix A/V sync getting screwed up in interlaced mode 2022-03-18 01:11:25 -07:00
CasualPokePlayer 7150a97e07 get render threading working in melon
Squashed commit of the following:

commit 6c54b59f5f8f8bbf8698eebbc2a7e39079b0e726
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Wed Mar 16 19:19:12 2022 -0700

    update submodule

commit 2c65d4375b64d8e729ebc0d35fd34865627bc494
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Wed Mar 16 19:14:36 2022 -0700

    frontend stuff

commit 4566edcc623061beb6e3a7b2ead5571b42abdf3e
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Wed Mar 16 18:10:45 2022 -0700

    probably hacky bullshit

commit 1fb9427c56a8d1af60378163cc2cafe6b36149c9
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Wed Mar 16 00:59:58 2022 -0700

    more mt testing
2022-03-16 19:19:36 -07:00
CasualPokePlayer 57c453ea68 Add angrylion for another video plugin, bring back the cxd4 rsp plugin (angrylion needs LLE), wire up its single setting, remove preformance ares libraries (frontend stuff was already removed) 2022-03-14 04:05:55 -07:00
CasualPokePlayer ccac4d1000 Squashed commit of the following:
commit 15611308c2c6ed5e4f46bd840ade8700e3768527
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 19:29:57 2022 -0800

    derp

commit 3c0546cdd8f08004c1ad82bdb72910498dddac91
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 19:28:06 2022 -0800

    bob

commit 8e24ef7adc9ccee5405f8618bb8ddb165ff9cf8f
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 19:10:45 2022 -0800

    removing perf core here now

commit 66225df3b175544d28d91c6ede53861c74e71239
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 18:51:14 2022 -0800

    delete perf core, cleanups, get submodule pushed

commit 06b627bd949f15aac4749a33762ec5cb47e5aea9
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 17:46:36 2022 -0800

    oh fucking please don't tell me this was it

commit 0bd0625d172a74a82e30b89e2f10702394e74491
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 17:21:22 2022 -0800

    bleh

commit 20c1497fd1fb25eb6ac6c44fe2490b71009fc9e0
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 16:36:02 2022 -0800

    bleh

commit 4ccd7982d97f8c4c85c5b18801bb9784df9772e8
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 15:55:43 2022 -0800

    testing

commit ab9e14bc7bb3e533f903a003b80f8e6a006cd819
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 15:44:24 2022 -0800

    bleh

commit 6d2de266825ac23df25466fdd6154e60ec6132de
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Fri Mar 11 00:08:45 2022 -0800

    bleh

commit f55c3e3277b979a8535667312fdb988a1f70bc01
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Mar 10 23:54:49 2022 -0800

    oh derp

commit 16e3c87d7ab06947da208feb88b3f3fd96874621
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Mar 10 23:43:27 2022 -0800

    bleh

commit 1630845d46af7dc048b8c5dcfc7b0359d7f3133a
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Mar 10 23:36:14 2022 -0800

    gross hack

commit ff1ef0ac6da559e0ce0e7cad10583b70a63c3551
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Thu Mar 10 23:10:54 2022 -0800

    angrylion integration into ares.
2022-03-11 19:36:56 -08:00
Moritz Bender 3726cc6291
Fix #3173 by only calling bus.map() on initial power, not subsequent calls (#3176)
* 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
2022-03-09 04:31:30 +01:00
feos cee90bae52 build libmgba.dll.so 2022-03-08 14:00:04 +03:00
feos a1e9790a39 update mgba 2022-03-08 11:58:27 +03:00
CasualPokePlayer 8b6f1c96d6 [melonDS] don't state sound buffers too 2022-03-06 01:46:26 -08:00
CasualPokePlayer 4bfb3ba48e [melonDS] don't state these big caches 2022-03-06 01:20:15 -08:00
CasualPokePlayer 46c2d6faf1
Melon Cleanups & Updates & Prep For Multithread Rendering Support & Prep For DSi NAND bs (#3174)
* 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
2022-03-06 00:43:30 -08:00
CasualPokePlayer 114124c82e
BSNES Region Override (#3169)
* 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>
2022-03-04 14:21:53 +01:00
CasualPokePlayer 8e233a0e3b alloc_invisible internal framebuffers in melon 2022-03-04 01:26:58 -08:00
CasualPokePlayer 4bac1bbf1b fix #3165 and fix the tabbing/space mixup here 2022-03-04 01:20:40 -08:00
CasualPokePlayer 112072161c windows build 2022-02-17 02:59:17 -08:00
CasualPokePlayer 406b76a023 fix mem domains 2022-02-17 02:48:40 -08:00
CasualPokePlayer 0a9200fa59
Sameboy blip buf (#3154)
* blip buf experiment

* do this without needing to modify core

* Delete blip_buf.os

* dont bother keeping a sbuf in biz_t

* darn space/tabbing
2022-02-17 00:30:38 -08:00
CasualPokePlayer e8e58f799e update sameboy to upstream fixes #3108
fix gpu viewer palettes, fixes #3150
2022-02-16 02:39:55 -08:00
CasualPokePlayer 655ed7949e
Ares64 Performance Core (#3149)
* 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
2022-02-16 02:15:27 -08:00
ShinobiWannabe 05f11be191
Genesis GPGX SRAM support for games larger than 8MB (#3139)
* Large SRAM

Cherry pick changes in order to run games with SRAM support for games larger than 8MB based on the existing commit by ekeeke in Genesis-Plus-GX.

e6ab7563e7

* Revert "Large SRAM"

Removes changes to the cd cart files and contains the newly built  gpgx.wbx.gz.
2022-02-15 23:25:38 +03:00
CasualPokePlayer df04bf1f69 fix crashes with gambatte on linux due to bad pointer cast 2022-02-13 22:12:40 -08:00
CasualPokePlayer 7db8472092
Handy tweaks (squashed PR #3140)
resolves #2425. commits:
- build handy-linux with fvisibility=internal, make export have default visiblity
- use bizinvoker for handy
- move this to the right spot
- correct name here
2022-02-14 14:38:31 +10:00
CasualPokePlayer 1330fdeaa1 Probably a hack to make lag detection work? 2022-02-13 14:38:44 -08:00
CasualPokePlayer 28cfb1aa74 make ares64 comply with mupen's analog input scheme, allow for disabling the physical limitation / circle thingie 2022-02-13 02:45:48 -08:00
CasualPokePlayer f48f9dba9f change PI DMA to use 16 bit fetches (275ba735de) 2022-02-12 02:33:41 -08:00
CasualPokePlayer 682111f377
Ares64 (#3125)
* ares64

* build, currently cherry picking c9af34027b to build this

* some work

* commit the frontend work. crashes on some NR_SCHED_GETAFFINITY syscall

* delete this

* fix oopsie, add debugging shit

* getting closer...

* what the fuck is this mame shit doing???

* fuck

* it's one of these isn't it

* fucking hell

* at least it's not crashing on init now

* bleh

* let's see if this works?

* audio i think?

* oh right, need to disable threading here since that's not wbx supported

* testing

* testing

* testing...

* testing

* wtf?

* lol

* it's doing something now i guess?

* let's try this

* maybe this will catch this bullshit?

* lol

* the fuck?

* what

* meh

* bleh

* let's have some fun

* bleh

* bleh

* bleh

* maybe this works better

* let's try this?

* meh

* this probably will break

* lol

* meh

* a

* a

* a

* a

* a

* meh

* a

* a

* b

* alloc invisible these video buffers

* a

* actually build

* bleh

* well uhhhhhhhh let's see if this blows up for fun i guess?

* bleh

* yeah that when as well as expected

* push this

* bleh

* bleh

* bleh

* a

* dirty hackery

* fuck space/tabs

* hook up input

* hook up input frontend side

* reset/power

* going to have to commit to dumb workaround here i guess?

* fuck this bullshit crash

* cic stuff

* oops

* testing

* hook up save detection

* memory domains and saveram shit

* oops

* someday i'll get macros right

* let's get this kinda reproducable

* build

* bleh

* frontend shit

* bleh

* testing

* a

* fucking

* a

* a

* a

* workaround C# bullshit marshalling maybe?

* revert that, let's hack it on c# side instead

* disgusting hack

* fuck c#

* fix oopsies for eeprom/flash and fuck c#

* apparently explicit layout just dont work, thanks c#!

* correct orientation

* actually fix orientation

* testing

* bleh

* b

* a

* fix crash here

* rumble getter

* hook up rumble with frontend, cache readonly controller settings on core init

* remove old experiment

* make clean make install
2022-02-11 18:22:16 -08:00
CasualPokePlayer f060fdaa60
hack a peek into bsnesv115 (#3118) 2022-02-07 08:00:48 -08:00
CasualPokePlayer c8c8b1c05c oops, pretend this didn't happen 2022-02-03 19:05:27 -08:00
CasualPokePlayer dd3cf6091f add memory callbacks to melon, cleanup some code 2022-02-03 18:59:51 -08:00
CasualPokePlayer 3f7c80a950 prep for ICycleTiming for Nyma 2022-02-02 21:12:50 -08:00
CasualPokePlayer 33a4dda6b7
Melon DSi (#3114)
* update melon

* frontend work

* make this work (i think?)

* fucking merge conflicts

* bleh

* hack up DSi support, very hardcoded atm, but at least states are reasonable

* add IS_DSI load flag

* frontend work bleh

* oops forgot to push

* ok fine apparently that doesnt display right

* oops

* prevent zealous release screen calls, DSi firmware seems to not like it?

* support for loading DSiWare title

* dsiware

* oh right this bullshit

* oops

* will this work

* why the fuck was this signed

* 0 out these hashes, these are also unique per console, no hope verifying these
2022-02-01 23:40:32 -08:00
CasualPokePlayer 096f24e7c6
Reduce bsnes115 state size (#3105)
* testing...

* more testing...

* this is probably a bad idea

* well this probably fixes state size issues

* time to debug this

* oh derp it's just not enough memory in invis heap

* let's see if this works?

* apparently this breaks slow ppu?

* testing...

* testing...

* testing...

* sanity checking

* let's try again

* i do not know what the fuck is up with this emulator nor do i care enough, state size is still under a mb anyways with slow ppu

* oops forgot to commit this

* resolve some issues

* tweak memory allocation sizes

* dont save more cache stuff

* wtf was i even thinking here

* move comment back to original pos, comment on double loading
2022-01-31 19:00:04 -08:00
CasualPokePlayer 7ac2e97cb7
update melon (#3113)
* update melon

* frontend work

* make this work (i think?)

* fucking merge conflicts

* bleh
2022-01-31 17:18:42 -08:00
CasualPokePlayer d6b33fbec6
Nymashock (#3093)
* nymashock wbx

* shit

* lagflag stuff

* saveram stuff

* debugging how this works

* lets see if this works better

* fuck strings

* ok let's do this right i think

* probably have this all working

* get repo in

* add nymashock to build scripts

* also update this readme

* get rid of this default, seems to break internally anyways?

* ""fix"" dualshock (wtf to do with rumble???), make override defaults actually default, add hack to allow for overriding default controllers

* hide useless rtc settings

* hack fix override defaults for controllers, get something going for nyma psx schema

* oops dont forget this

* make fucking default controllers hack work (what the fuck is this code???) also complete schema and mnemonics

* FUCKING FIX THIS BULLSHIT DEFAULT

* let's make this a little nicer

* add mnemonics for □/△/○, fixes weirdness with input display

* fix weird overscan issues when multiwidth + no-interlacing happens at the same time

* do this "properly"

* analog mnemonics

* default controls for dualshock/gamepad filled

* set nymashock as preferred core

* apparently this didnt get committed?

* update README too

* control name fix

* Revert "control name fix"

This reverts commit a3cae89b18.

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2022-01-30 08:52:49 -08:00
CasualPokePlayer dcccb4e2b6
MSXHawk Linux (#3110)
* hack up a makefile for this

* hack up a build for linux, also fuck msvc fuck msvc fuck msvc

* make this work with the so

* thanks line endings

* lol
2022-01-30 08:42:20 -08:00
CasualPokePlayer 24f946681f
Emu83 (#3086)
* emu83

* builds and get rid of wtf this thing is

* multidisk bundler for ti83

* release

* link src

* also put in the commit hash why not

* Nitpicks

* update ""rom"" extensions for ti83

* don't forget to set a preferred core

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2022-01-29 18:23:09 -08:00
feos ad82f4f216 test #3104 2022-01-29 11:59:53 +03:00
CasualPokePlayer 2348e2885d
Add SameBoy as a GB/C core (#3009)
* basics for sameboy

* lol

* bleh

* lol

* push this in

* push this in

* settings, and also update sameboy bootroms

* bleh

* build linux

* remove some debugging shiz

* fix the order of this

* debug stuff also do gpu palettes right

* use new key mask API

* push shit in

* bleh

* add in replacement impl for joypad, use until opposing directions are allowed upstream

* update

* finally get this working without needing GB_INTERNAL

* hook up acc controls

* oops

* oops x2

* oh right this doesn't use this

* finish this up

* also mark this as released

* cleanups

* Nitpicks

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2022-01-27 13:17:52 -08:00
Moritz Bender 0d7de83d4b
BSNESv115+: Implement snes_controller_latch function, cleanup input polling behavior (#3084)
* BSNESv115+: get rid of input_state + input_poll; just poll

* call `snes_controller_latch` on latches done in the core,

- this now also actually calls the InputCallbackSystem
- needed some edits in the core to support executing the callback even when no controller is connected in port 1

* Fix and somewhat normalize the SnesCallbacks order
2022-01-22 00:29:47 +03:00
CasualPokePlayer 06d472fdc8 resolve #3058 2022-01-06 13:43:40 -08:00
CasualPokePlayer aa6f74108e resolve #3028
also fix other misc bugs
2021-12-15 17:18:00 -08:00
Morilli d24629f3ad BSNESv115+: ram and rom memory domain fixes
- saveram was not working at all on certain roms, as the "CARTRIDGE_RAM" memory domain was returning a null pointer (similar thing for "CARTRIDGE_ROM"; changed it to correctly return the current rom)
- add sa1_bwram domain for clarity and an SGB_ROM domain
2021-12-15 09:10:37 +01:00
alyosha-tas 76faa7c835 MSX: implement ascii 8kb mapper and make it the default for large games 2021-11-30 19:06:08 -05:00
Moritz Bender cc38f4bcba
Implement memory callbacks for the new bsnes core (#2797)
* Actually working callbacks
now actually work after natt's changes
* Set whether memory hooks exist every frame to prevent unnecessary function calls if not
2021-11-29 19:59:47 +03:00
CasualPokePlayer f7936a34f8 [GambatteLink] changes in link API, misc cleanup 2021-11-27 22:40:39 -08:00
alyosha-tas fd02c872a9 MSX: finish up SCC, set to released. 2021-11-25 16:34:36 -05:00
alyosha-tas 82655a759e MSX: work on SCC implementation 2021-11-25 12:22:13 -05:00
alyosha-tas f32961001e MSXHawk: Refactor and start work on SCC 2021-11-24 20:26:31 -05:00
CasualPokePlayer d5c1ebb88e update gambatte to upstream, passes more wilbertpol tests 2021-11-23 15:39:21 -08:00
nattthebear 2ea62ffea6
Handle reentrant calls in waterbox (#3007)
Fixes #2585
2021-11-23 14:20:12 -05:00
CasualPokePlayer 7c25241c4b and so 2021-11-20 23:51:23 -08:00
CasualPokePlayer 72ad5c7b0b GBC IR Emulation for GambatteLink 2021-11-20 23:51:23 -08:00
alyosha-tas de1a312262 MSX: do some work on mappers 2021-11-17 15:27:54 -05:00
CasualPokePlayer 178e57a91b update libstdc++, gambatte needs this; other cores which use this seem to still function fine 2021-11-03 19:20:09 -07:00
CasualPokePlayer 2b15fc958f build here, update libgambatte bindings with new api and use it 2021-11-03 18:53:51 -07:00
CasualPokePlayer 463f9bf920 update gambatte 2021-11-03 18:42:04 -07:00
CasualPokePlayer 600ee6c913 Squashed commit of the following:
commit af7cadfce4b750f8b1b23476c281bd2dfe027225
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Tue Nov 2 22:43:21 2021 -0700

    right, rename these too

commit e27197d18ad33af53729b1a57ee4a048189c41c4
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Tue Nov 2 22:40:42 2021 -0700

    build

commit 1af068f11f553ade70999fb2c640ee98e054aa36
Author: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
Date:   Tue Nov 2 22:37:28 2021 -0700

    new way to do mic input for melonds
2021-11-02 22:54:36 -07:00
CasualPokePlayer f5940e12e2
update octoshock to Mednafen 1.27.1 (#2989)
* update octoshock to Mednafen 1.27.1

* oh right, gotta add in video changes too
2021-11-02 20:15:54 -07:00
CasualPokePlayer 463ef90fd2 build and comment this crap out (nice build error lol) 2021-10-29 23:07:34 -07:00
CasualPokePlayer 9138859bf5 am/pm flag fix? 2021-10-26 18:04:41 -07:00
CasualPokePlayer 41128abc37
[melonDS] Redo porting, waterbox style now (#2945)
Co-authored-by: nattthebear <goyuken@gmail.com>
2021-10-24 21:40:23 +03:00
CasualPokePlayer 9a87a0f586
nuke sameboy (#2934) 2021-10-18 21:38:23 -04:00
CasualPokePlayer d0caff6cf3
Dumb (#2968)
* dumb

* dumb
2021-10-14 08:22:21 -04:00
CasualPokePlayer 4303d1c333
[mGBA] Game Override Sync Settings (#2937)
* override sync settings

* override penguin

* don't override save type when autodetecting

* insert penguin
2021-09-26 11:55:13 +03:00
CasualPokePlayer d513c5b2a0
fix #2805 for real this time (#2936)
* fix https://github.com/TASVideos/BizHawk/issues/2805

* fix https://github.com/TASVideos/BizHawk/issues/2805 for real this time

* misc

* advance penguin
2021-09-21 08:46:57 -04:00
CasualPokePlayer b5639f8834 update gambatte; update readme to account for gambatte sgb support 2021-09-21 14:01:42 +10:00
CasualPokePlayer fbab7f6291
Implement HLE SGB Emulation in Gambatte (squashed PR #2917)
* sgb meme

* various sgb fixes, add hard reset support for spc, make frontend provide spc file

* sgb border support, mostly copied from sameboy

* add support for disabling sgb border, also fix dumb when disabling border

* state work, states seem to be broken tho

* fix dumb state issue

* multiplayer

* fix dumb in spc stating

* misc

* pass SGB tests

* oh right I have to fix this too

* and this dumb too

* attempt to fix weird crashes

* or maybe this will fix it?

* wtf is spc doing?

* rebase

* misc state + debugging stuff

* finally fix weird assertion failure

* factor out loading in spc file, also factor out the ipl

* oops

* init special sgb colors for certain games

* slight sgb audio refactor

* this should work better?

* oops

* switch back to master

* super penguin
2021-09-17 23:35:00 +10:00
YoshiRulz 2d81c820b4
Add LibretroBridge binary for Linux and wire it up
build scripts to come, see PR #2895
2021-09-09 04:12:54 +10:00
mooware 55a8936a30
add options for virtualboy to only show left or right screen (#2842) 2021-09-01 20:41:02 -05:00
CasualPokePlayer b29516e864
Update Gambatte (#2909)
* update gambatte

* penguin
2021-08-15 22:28:42 -04:00
CasualPokePlayer 47a8305699
fix #2902 for real this time (#2906)
* fix Gambatte memory/trace callbacks in double speed mode

* win build

* linux build
2021-08-12 00:52:58 -04:00
CasualPokePlayer 4681805439
fix #2902 (#2904)
* fix #2902; factor out altrunfor and just use upstream's runFor, keeping a frame buffer on the c# side

* linux build
2021-08-11 02:20:53 -04:00
CasualPokePlayer d37a818f96
Update Gambatte (GB Camera Support, Misc Cleanup) (#2897)
* update gambatte (camera support, misc cleanup)

* linux build

* misc

* [Gambatte] fix resets (oops)

* this didn't complain on my side but w/e ig
2021-08-07 17:50:16 -04:00
YoshiRulz 8adb911623
Pull Gambatte submodule, rename Linux binary to .so 2021-08-02 20:54:06 +10:00
CasualPokePlayer ee1dc3dba7 [Gambatte] add linux build 2021-08-02 16:23:38 +10:00
CasualPokePlayer 87f0fd78fc [Gambatte] sync to upstream 2021-08-02 16:23:38 +10:00
CasualPokePlayer 036e349337
[BSNESv115+] Fix Lag Frames For SGB (#2886)
* better lag detection for sgb. todo: might want to toggle this?

* correct logic and don't fail build this time
2021-08-01 09:54:59 -04:00
CasualPokePlayer 7518ce962b
[Gambatte] Many Updates (#2823)
* [Gambatte] Port setregs from upstream, implement SetCpuRegister, misc cleanup/fixes elsewhere

* [Gambatte] Add more proper uninitalized AGB WRAM, based of a GBP dump

* cleanup Gambatte's CpuSetRegister (credits to stringflow)

* additional Gambatte code cleanup

* [Gambatte] cleanup tracelogger code readability

* fix

* Initalize VideoBuffer with a white screen instead of a black screen, misc video fixes

* misc cleanup

* [Gambatte] hdma work

* [Gambatte] add warning for recording a movie without a bios enabled. doing this as I am annoyed enough from disabled bios being the default and you cannot say anything about the profile system since recent submissions have shown that ineffective

* misc cleanup

* [Gambatte] init state tweaks

* [Gambatte] add setting for patching similar bioses

* fix this

Co-authored-by: TiKevin83 <travismcgeehan@gmail.com>
Co-authored-by: alyosha-tas <alexei.f.k@gmail.com>
2021-08-01 09:54:19 -04:00
feos 11b1e328a6 rebuild gliden64 2021-07-21 16:20:28 +03:00
Meerkov 664ab7fab6
Wire up haptics in Mupen core (squashed PR #2683)
* Wire up host haptics, but only for OpenTK which doesn't support it

and I'm hijacking the Fast Forward hotkey too

* Fix Mupen 64 Vibration DLL

* Enable Mupen 64 Vibration for DirectInput

* Remove unused SDL dep from Mupen input-bkm plugin

this allows it to be built without checking out the deps submodule, I guess

* Fix <OutDir/> in Mupen lib projects

* Remove "Debug" haptic channel and debug hotkey, prepare Mupen

* Fix remaining merge conflicts

* ...with the correct channel name

and hopefully no dangling whitespace changes

* Fix typo from resolving merge conflict, and off-by-one error

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2021-07-21 10:06:16 +10:00
Moritz Bender 2ff7e4d39b
Add sa1_iram memory domain for new bsnes (#2803) 2021-07-16 18:41:53 -05:00
Zach 58293dde9f
Support null (any) address for N64 breakpoints. (#2833)
* Support null (any) address for N64 breakpoints.

Fixes #2808

* Move null check for better readability.

* Replace debugger mutex with semaphore that counts debug steps.

This is taken directly from upstream m64p. If breakpoints are being hit fast enough and in large enough quantity, m64p always ends up getting into a deadlock. The semaphore seems to resist this problem.

* Remove tabs
2021-07-14 20:49:31 +03:00
CasualPokePlayer 488fd2c6af
Add support for more SGB firmware + Use homebrew bootroms instead of bsnes' illegally provided official ones (#2837)
* add support for more SGB firmware

* replace illegally provided bootroms with legal homebrew bootroms

* let's swap these with homebrew bootroms too

* add builds

* this should probably be preferred

* Fix incorrect assignment

* Fix whitespace changes to Designer files

Co-authored-by: Morilli <35152647+Morilli@users.noreply.github.com>
Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2021-07-14 12:48:02 -05:00
nattthebear 9488e19d38
Update mednafen cores to 1.27.1 (#2831) 2021-07-03 10:01:04 -04:00
nattthebear 90a12a8e73 Update virtual boy core with a mednafen 1.27.1 fix. 2021-06-19 08:32:50 -04:00
CasualPokePlayer 8ab4dd245b
[Gambatte] Account for lastCartBusUpdate_ during resetCounters (#2800)
* [Gambatte] Account for lastCartBusUpdate_ during resetCounters

* need DLL too
2021-06-18 10:07:49 -04:00
CasualPokePlayer ea369408fb
[Gambatte] Open Bus Emulation (#2798)
* [Gambatte] Open Bus Emulation

* Fix regressions

* a
2021-06-14 18:50:43 -04:00
CasualPokePlayer dd12d27149
[Gambatte] Misc Tracelogger Fixes (#2765)
* add HLE CGB-DMG colors for No Bios option

* misc gambatte tracelogger fixes
2021-05-31 10:48:14 -04:00
CasualPokePlayer 6432d99feb
[Gambatte] Many Updates (#2742)
* don't put isCGBMode for movies where CgbDmg mode is being used

* various Gambatte accuracy improvements + proper no BIOS support + tracelogger fixes
2021-05-27 08:56:13 -04:00
nattthebear 2c0c6aa0bb rename a bunch of shit because someone has a fetish for RFCs
rust maintains its reputation as a less annoying language to write systems code in than C, but only just barely.

yeets #2750
2021-05-26 16:07:07 -04:00
Morilli 38bc953e22 Add a designated payload controller based on the multitapcontroller in the new bsnes core
- also patched out the left/right and up/down handling in the core, where it didn't belong
- also fixed the existing payloadcontroller because it wasn't working at all lol
2021-05-26 02:27:54 +02:00
Morilli 24c74c0e36 Implement IDebuggable for the new bsnes core 2021-05-23 05:02:05 +02:00
Morilli e2b38732dd Fix bsnes memory domains and add bsnes.wbx.gz 2021-05-15 19:36:08 +02:00
YoshiRulz 07f637fef0
Remove garbage from misbehaving Gambatte build 2021-05-13 13:35:57 +10:00
TiKevin83 3dcc487df2
Fix Gambatte RTC on Hard Reset (#2739) 2021-05-12 23:25:28 -04:00
YoshiRulz f7e38d499d
Update mGBA binary for Linux
https://gitlab.com/TASVideos/BizHawk-ports-CI/-/jobs/1254060848
2021-05-12 03:12:44 +10:00
feos 8cc5488de3 update mgba to release 0.9.1 2021-05-11 19:17:46 +03:00
CasualPokePlayer 3372556ef0
[Gambatte] MBC3 RTC Refactor (And add a way to set initial RTC state) (#2724)
* slightly fix gambatte peeking
* fix gambatte layer masking, move layer masking to sync settings (these settings affect sync, they shouldn't be normal settings)
* block toggle layer hotkeys when movie recording
* refactor Gambatte's RTC
* add a way to set an inital RTC state during a movie recording
* prevent Gambatte from saving RTC data when recording a movie, needed to create save-anchored movies
2021-05-05 21:40:36 -04:00
YoshiRulz 7c1b40df1f Revert "The next time I look at this I want to see waterbox builds actually fucking working again. This means copying to dll as they are now, and not silently being overridden by stale files stored in another folder. This is not my problem to fix because I did not fucking break it."
This reverts commit d8d42b9f81.
2021-04-28 15:35:11 +10:00
nattthebear d8d42b9f81 The next time I look at this I want to see waterbox builds actually fucking working again. This means copying to dll as they are now, and not silently being overridden by stale files stored in another folder. This is not my problem to fix because I did not fucking break it. 2021-04-27 19:37:53 -04:00
zeromus f7fb2ad76f psx - fix oopsies in shock_destroy 2021-04-27 14:56:41 -04:00
CasualPokePlayer b9123453aa
[Gambatte] Slightly fix peeking & fix layer masking (#2712)
* slightly fix gambatte peeking

* fix gambatte layer masking, move layer masking to sync settings (these settings affect sync, they shouldn't be normal settings)

* block toggle layer hotkeys when movie recording
2021-04-18 10:03:44 -05:00
TiKevin83 90a67b9e22 update libgambatte to fix RTC subsecond tests 2021-04-05 02:53:04 -04:00
TiKevin83 585ed99cdd update gambatte-speedrun GBA modeswitch timing and testROM accuracy 2021-03-18 19:31:06 -04:00
TiKevin83 b2893d24c6 Update Gambatte to fix RTC issues and output location of the DLL in the assets folder 2021-03-04 02:04:45 -05:00
TiKevin83 9ca1b86316 Update gambatte to support the wisdom tree mapper and fix upstream reference and links 2021-03-04 02:04:45 -05:00
YoshiRulz 05676234ed
Move remaining assets from /output to /Assets 2021-02-12 14:08:17 +10:00
YoshiRulz dbe2cd4cde
Cleanup <Reference/>s of NLua (and System.Data.SQLite) 2021-02-12 13:59:40 +10:00
YoshiRulz 28ff2231f2
Update mGBA Linux binary
Windows binary rebuilt in 78931e025
taken from https://gitlab.com/TASVideos/BizHawk-ports-CI/-/jobs/968003727
2021-01-17 23:31:12 +10:00
nattthebear 72ea5ce866
Waterbox: Allow SEH unwinding through guest calls. (#2519)
The goal of the separate stacks was to allow this, but I never quite finished the job.  Now, when a SEH exception (generally a Rust panic in a guest syscall handler, or a C# Exception in a callback) tries to unwind through guest code, it works.  Note that we don't actually unwind the guest stack, as there's nothing useful to be gained from that;  When an emulator core throws an exception like this, it should be considered completely hosed.  Throw it out and get a new one.

There were two bugs stopping this from working.

First of all, we had custom thunks that lacked sufficient unwind information for RtlUnwind to get through.  For the sysv <-> msabi adapter, this was fixed by making it regular Rust code instead of hand assembled junkus.  So the compiler generates valid unwind information for all of that.  Then we just JIT a small stub on top in the MsHostSysVGuest code, which needs no unwind information because it won't throw an exception itself and transparently passes execution to something with valid unwind information without invalidating that information.  (NB:  Clr JIT stubs use the same strategy.)  For the host <-> guest stack transition code, a small hand generated unwind stub was added to interop.s that is registered with `RtlAddFunctionTable`.  I've seen the unwind work successfully without this second set of unwind information, but better safe than sorry.

Secondly, our misuse of SubSystemTib caught up with us.  It's an old field, allegedly from OS/2, that we repurposed to hold TLS information needed for the waterbox stack transitions.  Most people think nothing uses it any more, but in fact if it's set to a non-NULL value, but doesn't contain valid information, `KERNELBASE!GetModuleFileNameW` will crash when it tries to get a module name from there.  The fix here was to simply tighten up our usage of SubSystemTib:  We were already nulling it out when returning from guest code, but not when calling back to host code in guest code.

Fixes #2487.  Unwinding of this sort has never worked well in waterbox; the reason why that issue is more recent is that the particular reproducing case of firmware didn't cause an exception in a callback in older code; the exception happened in pure managed code.
2020-12-13 19:12:16 -05:00
nattthebear 98ad14ff47 Fix two semi-related savestate bugs in waterbox.
We had two instances where the act of sealing could lose snapshots that were never recovered.  It's oof.
2020-10-13 09:10:46 -04:00
YoshiRulz c0b755a33b
Recompile Cygne, Handy, mGBA, and QuickNes for Linux 2020-09-26 22:19:02 +10:00
YoshiRulz 5ae13a2309
Change build path of executables to output/dll
* post-build step moves .exes up a level, to output
* also fixed OpenTK.dll.config location
* also removed redundant step from packaging scripts
* future executables need to be capable of resolving assemblies in dll
2020-09-22 09:39:53 +10:00
YoshiRulz fb5a5ed78c
Add libdarm.so, migrate Darm class to BizInvoker
`Tools` > `Debugger` no longer crashes immediately on Linux with mGBA core
2020-09-21 01:38:09 +10:00
James Groom a5d166cf71
Partial fix for #2353 (files in dev builds) (#2410)
* Move .so libraries to dll dir, update some build scripts

* Move OpenTK.dll.config with OpenTK.dll

* Keep EmuHawkMono.sh in Windows-built artifacts

* Add Package.sh to match QuickTestBuildAndPackage.bat

used as `Dist/BuildRelease.sh && Dist/Package.sh`

* Update GitLab CI to use Package.sh
2020-09-18 20:08:34 -05:00
zeromus d4cb18aff8 actual remove CGC.exe, that was the whole point wasnt it 2020-06-20 00:48:42 -04:00
YoshiRulz 8c7862aa8a
Fix .so versioning 2019-10-25 21:33:05 +10:00
zeromus 6ced541abe ok, it's over. exe packing is for the birds 2016-03-24 19:10:08 -05:00
zeromus d7cd62c4d6 compress cgc.exe differently (cexe, doesn't really trip virus scanners) since upx can't handle it; add Firmware directory to dist script 2016-03-24 16:42:33 -05:00
nattthebear 76ccefb3c6 Properly move cgc to the Assets/dll folder 2016-03-01 22:12:36 -05:00