Commit Graph

560 Commits

Author SHA1 Message Date
CasualPokePlayer ef72cbff43 Do changes to reduce diff against upstream GPGX 2024-04-26 11:58:02 -07:00
Morilli 6f98be104a Update waterbox readme 2024-04-22 17:28:02 +02:00
Sergio Martin 5cb1fe0042
Update Genesis Plus GX Core (#3889)
* Added deep freeze functionality
* Adding support for selecting sound chip
* Adding LUA interface to the deepfreeze list
* Implemented sprite always on top in the VDP
* Found and fixed the issue that manifested itself in a reset Gargoyles and an outright fail in Ristar. The issue was the use of a union type containing overlapping cd and cartdrige data. Using struct now to keep them separated
* Fix PC reg in tracelogs
---------
Co-authored-by: feos <feykomylce@gmail.com>
Co-authored-by: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com>
2024-04-21 18:34:54 +03:00
Morilli afd220c590 Add runtimes path to llvm dirs
something something core.sparseCheckoutCone and git versions
2024-04-15 06:17:06 +02:00
CasualPokePlayer 8490a6a8fa Bump libcxx to 18.1.3 2024-04-14 19:01:34 -07:00
CasualPokePlayer 880d8d9f07 rebuild bsnes, update link script / emulibc.h to work with clang-18 2024-04-14 12:57:18 -07:00
Roy Merkel 18a1fe4afd
Fixed bsnes build (#3891)
bsnes build broke when rewind.c was removed because it defined the GB_rewind_reset, which was being linked in despite being no longer present. -DGB_DISABLE_REWIND turns off this link.
2024-04-14 15:48:42 +02:00
Morilli e6fdd18858 Update bsnes makefile with sameboy changes 2024-04-13 03:01:21 +02:00
Morilli 972bc8a682 bsnes: Pull upstream fixes
Contains
- 3ca0504e67e89d37e24fce87183332f7ec577867: Extend the Super Famicom LOROM-RAM#A memory map.
- dab534b6584e4debef2c9572e6b6588a604d79a9: wdc65816: fix PLB wrapping in emulation mode
- ccbe394e7d4bc5f5596544813d887da161af3ca6: wdc65816: emulate (direct,X) wraparound bug in emulation mode
- 79770f6207a5d244652644c5e2d9f4328bd974ac: implementation of SA-1 BW-RAM protection
2024-03-01 15:56:28 +01:00
CasualPokePlayer 0cc61c3744 add method for setting the frontend time before game load... this will be needed for saturnus, as it may query time to set the initial rtc 2024-02-09 18:35:14 -08:00
CasualPokePlayer 2ce3bbffa5 set various saturn memory domains to be swapped (supercedes https://github.com/TASEmulators/BizHawk/pull/3666)
also add in saveram apis, mostly due to needing an extra step on saveram load to properly handle rtc
2024-02-08 23:18:59 -08:00
CasualPokePlayer 572d989a94 backport e9e56c56b0 and c478c6026a
fixes #3850
2024-01-28 06:13:09 -08:00
CasualPokePlayer 7d2ff866d8 add support for direct booting dsi titles (including dsiware) 2024-01-16 11:04:38 -08:00
CasualPokePlayer 55b3319ee0 minor melonds fixes 2024-01-10 08:13:20 -08:00
Morilli 83e784ecec Actually provide proper OAM memory domain in bsnes 2023-12-10 00:48:50 +01:00
CasualPokePlayer c2e8bda5e2 fix loading gba saves re-allocating buffer (thus invalidating its memory domain) 2023-12-07 22:52:48 -08:00
CasualPokePlayer 7b4bd8cdc3 make GBA roms work under freebios 2023-12-06 23:19:53 -08:00
CasualPokePlayer 1f58596d3c misc fixes/cleanups in ds firmware handling 2023-11-05 17:00:20 -08:00
CasualPokePlayer 6184182f34 better handle DSi country code and fix extended languages 2023-11-04 05:25:33 -07:00
CasualPokePlayer e98e31e5c7 deduplicate nds/dsi bios loading code 2023-11-03 07:34:07 -07:00
CasualPokePlayer 169137c204 throw an error if the loaded nand region isn't supported by the loaded dsiware title
this normally wouldn't be needed but people seem to think it's a good idea to shove the same nand file in every region slot in the firmware config
2023-11-03 05:43:10 -07:00
CasualPokePlayer 53c8deae29 add in touch screen input smoothing, fixes #3397 2023-11-02 13:53:27 -07:00
CasualPokePlayer a046ea901b fix username and message not being correctly set for dsi nand 2023-11-02 11:59:05 -07:00
CasualPokePlayer 415fb95861 fix dsi nand writes failing 2023-11-02 11:50:41 -07:00
CasualPokePlayer be9a92ca07 fix something with dsi bios loading
this doesn't really seem to be needed but this is what upstream does
2023-11-02 11:09:29 -07:00
CasualPokePlayer 3ab1a32f34 fix last commit for real this time 2023-11-02 10:48:09 -07:00
CasualPokePlayer 9e9307ace0 fix last commit -.- 2023-11-02 10:46:33 -07:00
CasualPokePlayer 720a45120b fix nds/dsi bios files not being loaded correctly 2023-11-02 10:41:17 -07:00
CasualPokePlayer 3cbdbf7cd4 fix importing/exporting dsi savs 2023-11-02 10:11:59 -07:00
CasualPokePlayer 659ff2e8de update melonDS
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)
2023-11-02 09:17:48 -07:00
Moritz Bender e1fb97dee6
Update snes9x to 1.62.3 (#3729)
* Update snes9x to 1.62.3

* Update snes9x submodule

* Implement msu1 for snes9x

* do less bullshit initialization

* Update snes9x submodule
2023-11-02 18:48:54 +03:00
CasualPokePlayer a1ec56d748 allow for TMDs which are larger than needed
quick hack fix to allow DSiWare games to work again, proper fix is to remove the extra 0x700 bytes of certificates in the tmd db which aren't needed
2023-09-28 16:03:15 -07:00
CasualPokePlayer a59e9a1ce8 fix PBO push/popping (glGetIntegerv wants GL_PIXEL_PACK_BUFFER_BINDING not GL_PIXEL_PACK_BUFFER, of course)
add method for transforming touch screen coords back into host screen coords
2023-09-25 22:17:56 -07:00
CasualPokePlayer 3d5c2120f2 Use upstream melonDS's code for doing screen control madness. This means too that both the OpenGL and software renderer will *present* frames with OpenGL (and if this is unavailable, screen control madness will be unavailable)
also fix up this code so upscaling works properly
c# changes pending
2023-09-25 05:21:53 -07:00
CasualPokePlayer 0dc4b94475 fix old pbo not being preserved on reading the framebuffer 2023-09-24 05:42:14 -07:00
CasualPokePlayer f71f2fafc6 OpenGL renderer support in melonDS! 2023-09-24 04:26:55 -07:00
CasualPokePlayer 9c389eadf7 fix seeking not working, put this back to shared_ptr (no make_shared<T[]> in c++17 :( ) 2023-09-17 12:23:53 -07:00
CasualPokePlayer fe3d34dbd3 fix most cursed UAF 2023-09-17 03:23:07 -07:00
CasualPokePlayer e222dbc554 fix space/tabbing here 2023-09-17 02:45:08 -07:00
CasualPokePlayer 871c2bba8f oops, that wasn't supposed to be deleted 2023-09-17 02:02:10 -07:00
CasualPokePlayer f7786e81b9 Merge melonDS master, do massive cleanup/splitup of code
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)
2023-09-17 00:58:05 -07:00
CasualPokePlayer eefbe7bf62 add in fenv guards for ares64
should prevent issues in case a game decides to change rounding mode (unlikely in practice)
2023-08-10 20:01:21 -07:00
CasualPokePlayer 2e75645cbd merge ares upstream, resolves #3710 2023-08-10 17:15:19 -07:00
James Groom 4217be1528
waterboxhost: Add missing import, tests now run 2023-07-28 04:42:45 +10:00
James Groom 26b39fb56c
Update wbox readme
fixes 3701aef5a
2023-07-19 20:00:13 +10:00
CasualPokePlayer 332143ea8d invalidate cram caches when poking, maybe 2023-05-18 21:14:57 -07:00
CasualPokePlayer 63ec0cecc7 fix picodrive's cram/vsram sizes 2023-05-18 19:29:42 -07:00
CasualPokePlayer 1adb2b45a2 (VirtualJaguar) swap user and interrupt stack pointers when going to supervisor mode for external interrupts, fixes Black ICE
also slight improvements to cd bios hle (don't really do much, but better safe than sorry)
2023-05-10 23:04:49 -07:00
CasualPokePlayer f677e92504 fix TOC field mixup with Jaguar CD 2023-05-07 22:09:52 -07:00
CasualPokePlayer a6deee765f fix stackoverflows in mame with games using k001006_device (e.g. windheat) 2023-04-27 00:55:12 -07:00
CasualPokePlayer f3c58d816d fix #3643 2023-04-22 04:39:12 -07:00
CasualPokePlayer 3701aef5a4 split ares binaries for interpreter vs recompiler 2023-04-19 23:22:00 -07:00
nattthebear 281e3be4a8
bare minimum implementation of getpid/getppid (#3641) 2023-04-19 21:29:45 -04:00
CasualPokePlayer a9dc924c11 Changes in MAME to partially address #3565
Needs #3641 pulled for it to be properly fixed
2023-04-19 18:03:45 -07:00
YoshiRulz 681629adb1
Add Waterbox core build dirs to .gitignore
fixes b5e2a0c42
2023-04-20 08:23:44 +10:00
CasualPokePlayer a46c47d271 git ignore build directory for waterboxhost 2023-04-18 21:35:58 -07:00
Morilli 988ae27292 Fix #3638
I don't even
2023-04-18 17:40:11 +02:00
CasualPokePlayer 52276f7d47 Remove TLS use in MAME
This might not affect things in practice, but its usage was likely dangerous so best not use it.
2023-04-14 20:15:14 -07:00
CasualPokePlayer 7bd848f9f9 fix #3631 2023-04-14 00:22:48 -07:00
CasualPokePlayer 3ffb6c3b52 hack fix #3606 2023-04-02 02:41:59 -07:00
CasualPokePlayer e4a6d9db67 set initial rtc for epson and sharp rtc in new BSNES
this is needed due to the complete lack of time.rtc handling (and even then, if SaveRAM doesn't exist this is needed)
2023-04-01 02:13:47 -07:00
CasualPokePlayer 22e35c45fc hook up RTC support for new BSNES, resolves #3577 2023-04-01 01:23:16 -07:00
CasualPokePlayer 8ce2aac868 implement flag to clear DSi NAND of any titles that already happen to be installed, implement functions for importing/exporting dsiware sav files
(c# changes using these pending)
2023-03-31 06:21:56 -07:00
CasualPokePlayer 6ea7fd04d8 "fix" issues with ares recompiler not playing nice with states
these issues really come under fault of bad invalidation handling, for now just deal with the state size hit and dont invis these blocks of memory
2023-03-30 19:44:09 -07:00
CasualPokePlayer f7b83be5ab fix lightguns in snes9x, support offscreen shots in snes9x (UI yet to be hooked up), fix lightguns in new bsnes, add option in bsnes to disable drawing light gun cursors (UI yet to be hooked up) 2023-03-30 16:34:04 -07:00
CasualPokePlayer 02caa5fcbb update ares, fix some lingering issues with recompiler 2023-03-29 04:00:10 -07:00
CasualPokePlayer 00152bbaa9 add in dedither filter bit for VI_CONTROL for ares64, fixes #3587 2023-03-28 20:22:20 -07:00
CasualPokePlayer a12d11b2ea tweak llvm setup script, now puts in a relative git dir and some possible failure states are fixed 2023-03-28 19:20:36 -07:00
CasualPokePlayer c8a2eca83f use FastMap for sys bus peeks for hypernyma, resolves #3598 2023-03-28 18:18:27 -07:00
CasualPokePlayer 4e83bccd3b make sure wbx c++ files also have NDEBUG defined, fixes 1643bf0 2023-03-28 18:02:46 -07:00
CasualPokePlayer 1643bf01bc add NDEBUG define for wbx cores (release only), fixes #3594 2023-03-28 17:23:06 -07:00
CasualPokePlayer 0a2d4405f0
Revamp Waterbox Setup (#3529)
* 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>
2023-03-28 16:53:33 -07:00
nattthebear 64512851fe
Fix up some more issues with Waterbox and 0 size elf data (#3590) 2023-03-23 08:28:10 -04:00
nattthebear eb5ebda53f
Waterbox: Fix various problems with 0 length sections and segments (#3586)
* waterbox: fix crash when init_array is size 0

* also handle 0 len segments
2023-03-18 19:50:32 -04:00
nattthebear 91e6d8023a
waterbox: invis section tweak (#3580)
don't fail when a 0 byte section starts at the same place as invis
2023-03-14 21:02:38 -04:00
Morilli 76cfee6396 rename bs memory domains (and fix rom domain)
- also some other renames for clarity
2023-03-11 07:29:23 +01:00
Morilli c906c830dd Implement bsx + bs memory loading
connect satellaview when loading bsmemory

this makes rtc somewhat work

also mark SubBSNESv115 as BSX core
2023-03-11 07:29:23 +01:00
Morilli 00060c3ffa BSNESv115: remove autoJoypad condition in lag detection code
this fixes lag frame detection in Super Bomber Man (Japan) and didn't cause any regression in my limited testing
2023-01-08 22:29:12 +01:00
Morilli f668e09048 fix dumb mistake in bsnes gamepad controller
fixes 96cc3f8745
apparently this was only an issue in sgb?
2022-12-20 04:20:30 +01:00
CasualPokePlayer 5f0e6a2242 updae melonds, rework the audio so it is internally resampled with blip_buf (also allows for avoiding some copying, also corrects some minor audio defects) 2022-12-16 23:03:28 -08:00
CasualPokePlayer 05962cfd93 more proper fix for compilation issue with some gcc versions with ares
fixes 2989a73430
2022-12-16 18:53:33 -08:00
CasualPokePlayer 2989a73430 workaround ares state size being blown up, fix compilation issue in some gcc versions 2022-12-16 18:18:06 -08:00
Morilli 837592ca11 BSNESv115+: apply patch to fix $4203 mul/div behavior
see https://github.com/bsnes-emu/bsnes/issues/256 or https://forums.nesdev.org/viewtopic.php?t=24087 for context
2022-12-11 17:18:01 +01:00
Morilli 74b37ab947 BSNESv115+: apply patch to fix CPUMSC reset test
see https://github.com/bsnes-emu/bsnes/issues/235
this patch fixes the test, but its correctness needs to be verified against real hardware
2022-12-11 17:01:02 +01:00
Morilli b0af99a68a BSNESv115+: pull upstream
43e42b2dcaf84c41d09c49745d82f8515e4f7771: simplify SA1 division
c0c60c83a84a49d4a2b822a0491cb258a3c5b98a: fix justifier controller
2022-12-11 16:41:55 +01:00
Morilli 96cc3f8745 BSNESv115: implement an extended gamepad controller with 4 extra buttons
this is a breaking change for existing movies, but only when a non-gamepad controller was used, which is rare
2022-12-06 19:21:08 +01:00
Morilli 10ba45d462 BSNESv115+: actually provide IBoardInfo properly 2022-12-04 22:48:29 +01:00
CasualPokePlayer eb1cef1ffc update mame to 0.250 2022-11-30 20:22:04 -08:00
CasualPokePlayer 137634cf89 add some missing updates to ares, cleanup build process a bit 2022-11-28 19:50:03 -08:00
CasualPokePlayer 8818f79bb0 actually make N64DD support work 2022-11-27 23:29:06 -08:00
CasualPokePlayer 9420c8b21c merge latest ares, hook up its new N64DD support, make ares use AxisContraint (see #3453), some other cleanups here 2022-11-27 05:44:00 -08:00
Morilli 589823d009 GPGX: add setting to disable per-line sprite limit
- resolves #3440
- includes manually cherry-picked e0ef0902e96bd9d71cb49c64505e755007e7452c
2022-11-22 14:44:39 +01:00
Morilli 0cb63e8d6a BSNESv115+: Implement overscan and aspect ratio correction settings 2022-11-18 13:08:27 +01:00
CasualPokePlayer 2804ad3041 fix crashes in mame due to bad single thread handling 2022-11-17 00:45:42 -08:00
CasualPokePlayer 44944e1d70 more simple string and double handling, allow SaveRAM usage with different bios files 2022-11-16 21:32:29 -08:00
CasualPokePlayer 64044845a6 resolve erroneous LibMAME errors due to mame_lua_get_string returning nullptr with an empty string
(now will only do so on an error)
add back in mame_lua_get_double, to be used to resolve other issues (c# code pending...)
2022-11-15 00:37:09 -08:00
Morilli c21fedc76a BSNESv115+: add option for disabling ppu sprite limit 2022-11-10 23:22:17 +01:00
CasualPokePlayer 066297d5e7
MAME Waterbox (#3437) 2022-11-10 00:05:25 -08:00
CasualPokePlayer cc71882059
BSNES Memory Domain Fixes (#3423)
* 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>
2022-10-28 19:22:49 -07:00
Morilli e073173a8c Update make-all-cores.sh 2022-10-22 03:18:59 +02:00