gameblabla [Sat, 21 Aug 2021 15:23:33 +0000 (17:23 +0200)]
Fixes Diablo 1 SPU bug properly and remove Diablo hack.
(Mostly) inspired by the fixes done in PCSX Redux :
https://github.com/grumpycoders/pcsx-redux/blob/
93653ba5281487d3bed57371d7b64c32dfc669f0/src/spu/registers.cc#L504
It seems that there was an attempt to initially implement it
in PCSX Reloaded (hence the bIgnoreLoop in freeze.c) but it was never
implemented properly.
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
Autechre [Thu, 19 Aug 2021 08:49:25 +0000 (10:49 +0200)]
Merge pull request #539 from gameblabla/spustate_register_fix_libretro
[SPU] Emulate SPUSTAT[5:0] as a mirror of SPUCNT[5:0]
Autechre [Thu, 19 Aug 2021 08:49:03 +0000 (10:49 +0200)]
Merge pull request #540 from gameblabla/gte_senquack_fix_libretro
gte: Fix gteH division and sign extension (from PCSX4ALL)
gameblabla [Thu, 19 Aug 2021 04:36:22 +0000 (06:36 +0200)]
gte: Fix gteH division and sign extension (from PCSX4ALL)
gteH register is u16, not s16. DIVIDE macro/func assumed it was
s16 for some reason. Behavior now matches Mednafen.
Co-authored-by: senquack <dansilsby@gmail.com>
gameblabla [Thu, 19 Aug 2021 04:26:28 +0000 (06:26 +0200)]
[SPU] Emulate SPUSTAT[5:0] as a mirror of SPUCNT[5:0]
Fix is from PCSX-Redux :
grumpycoders/pcsx-redux@
4e905d7
I have tested the fix against Loonies 8192 (a PSn00bSDK made homebrew game) and it no longer
locks up during loading.
Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
Autechre [Wed, 18 Aug 2021 15:13:45 +0000 (17:13 +0200)]
Merge pull request #538 from gameblabla/fix_cdom_savestate
Fix save state compatibility that was broken by my CDrom timing changes.
gameblabla [Tue, 17 Aug 2021 04:27:02 +0000 (06:27 +0200)]
Fix save state compatibility that was broken by my CDrom timing changes.
Autechre [Tue, 17 Aug 2021 03:36:24 +0000 (05:36 +0200)]
Merge pull request #537 from embercold/warningless-build
Sort out compiler warnings, all of them
Ember Cold [Tue, 17 Aug 2021 02:19:02 +0000 (05:19 +0300)]
Sort out compiler warnings, all of them
Autechre [Mon, 16 Aug 2021 05:14:52 +0000 (07:14 +0200)]
Merge pull request #536 from gameblabla/cdrom_fixes
CDRom timings changes
gameblabla [Fri, 13 Aug 2021 16:00:47 +0000 (18:00 +0200)]
CDRom timings changes
Upstreamed changes from PCSX Redux as seen here :
https://github.com/grumpycoders/pcsx-redux/commit/
5730e04f0183f37038bc1d133cf9f9092425b90a
This apparently fixes Deus Fight in Xenogears.
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
Autechre [Sat, 31 Jul 2021 17:57:15 +0000 (19:57 +0200)]
Merge pull request #532 from davidgfnet/master
Fix initialization on Frontends without variable support.
David Guillen Fandos [Fri, 30 Jul 2021 18:54:08 +0000 (20:54 +0200)]
Fix initialization on Frontends without variable support.
Frontends that do not support RETRO_ENVIRONMENT_GET_VARIABLE (like
miniretro & nanoarch) cause a segfault in the CPU emulation path unless
the BIOS file is present. This is due to the emulator not supporting
running without a BIOS in dynarec mode and the code not being able to
swap CPU types (unless the callback returns true).
Autechre [Wed, 21 Jul 2021 13:01:10 +0000 (15:01 +0200)]
Merge pull request #530 from embercold/fix-div-insn
Handle DIV overflow in lightrec and the interpreter
Ember Cold [Wed, 21 Jul 2021 12:04:23 +0000 (15:04 +0300)]
Handle DIV overflow in lightrec and the interpreter
twinaphex [Thu, 8 Jul 2021 13:32:51 +0000 (15:32 +0200)]
Attempt to fix Android build
Autechre [Thu, 8 Jul 2021 11:57:33 +0000 (13:57 +0200)]
Merge pull request #529 from negativeExponent/nodebugger
Do not compile debugger codes by default
negativeExponent [Wed, 7 Jul 2021 00:49:59 +0000 (08:49 +0800)]
Do not compile debugger codes by default
- Reduces binary to about half the size
- Compile with DEBUG=1 to build core with debug code
Autechre [Sun, 30 May 2021 09:31:11 +0000 (11:31 +0200)]
Merge pull request #522 from negativeExponent/patch-2
Set inputs to use "standard" by default
negativeExponent [Sun, 30 May 2021 04:28:16 +0000 (12:28 +0800)]
Set inputs to use "standard" by default
Autechre [Sun, 16 May 2021 21:25:53 +0000 (23:25 +0200)]
Merge pull request #520 from negativeExponent/multitap_option_description
Update multitap option description
negativeExponent [Sun, 16 May 2021 05:36:17 +0000 (13:36 +0800)]
These are now unnecessary
negativeExponent [Sun, 16 May 2021 04:30:42 +0000 (12:30 +0800)]
Update multitap option description
Autechre [Tue, 11 May 2021 15:15:07 +0000 (17:15 +0200)]
Merge pull request #517 from negativeExponent/input
Fix reporting for connected or unconnected inputs
Autechre [Tue, 11 May 2021 15:14:47 +0000 (17:14 +0200)]
Merge pull request #516 from negativeExponent/vfs
start adding libretro vfs
negativeExponent [Thu, 6 May 2021 05:38:18 +0000 (13:38 +0800)]
Fix reporting for connected or unconnected inputs
Current implementation assumes all inputs are plugged, regardless of
input type settings, so input reporting in games also says its
connected.
This PR fix this minor issue, by sending appropriate input register
values when no controllers are attached.
Related issue (what i used as well for testing):
https://github.com/libretro/duckstation/issues/35
negativeExponent [Sat, 1 May 2021 20:48:10 +0000 (04:48 +0800)]
Fix fgets param
negativeExponent [Wed, 21 Apr 2021 03:05:01 +0000 (11:05 +0800)]
Add libretro VFS and use VFS for windows target
- Reverts the use of fopen_utf8 from previous commit and use
"file_stream_transforms.h" instead:
\7fhttps://github.com/libretro/pcsx_rearmed/commit/
270c6dd14f876b8a67929aa22abefc47f4588324#diff-2065d1414bac1198fb423574b4874d5bf92a2114a2f3e235c469d8fd6288dd10
- Enable the use of VFS for windows by default.
- compile with USE_LIBRETRO_VFS=1 to enable vfs when compiling for other
platforms (including android if needed)
Autechre [Wed, 28 Apr 2021 20:28:57 +0000 (22:28 +0200)]
Merge pull request #514 from negativeExponent/fopen_utf8
libchdr: Use also fopen_utf8 here
Autechre [Wed, 28 Apr 2021 20:28:46 +0000 (22:28 +0200)]
Merge pull request #513 from negativeExponent/simplity_multitap_core_option
Simplify multitap core options
twinaphex [Wed, 28 Apr 2021 11:25:11 +0000 (13:25 +0200)]
Buildfix for Apple
Autechre [Wed, 28 Apr 2021 10:09:39 +0000 (12:09 +0200)]
Merge pull request #512 from negativeExponent/update_libchdr
Update libchdr
negativeExponent [Wed, 21 Apr 2021 21:59:52 +0000 (05:59 +0800)]
implify multitap core options
- Combines multitap1 and multitap2 core options
- Removes "automatic" mode
negativeExponent [Fri, 23 Apr 2021 00:54:23 +0000 (08:54 +0800)]
libchdr: Use also fopen_utf8 here
RE: https://github.com/libretro/libretro-fceumm/issues/448
negativeExponent [Wed, 21 Apr 2021 04:37:26 +0000 (12:37 +0800)]
Android: Update jni
negativeExponent [Wed, 21 Apr 2021 03:08:15 +0000 (11:08 +0800)]
3ds: Buildfix
negativeExponent [Wed, 21 Apr 2021 00:04:21 +0000 (08:04 +0800)]
Restore deps/mman
Accidentally purged in last commit, needed for lightrec/lightning
negativeExponent [Tue, 20 Apr 2021 23:47:37 +0000 (07:47 +0800)]
Update Makefile
negativeExponent [Tue, 20 Apr 2021 23:17:03 +0000 (07:17 +0800)]
git subrepo clone (merge) https://github.com/rtissera/libchdr deps/libchdr
subrepo:
subdir: "deps/libchdr"
merged: "
a17c0da"
upstream:
origin: "https://github.com/rtissera/libchdr"
branch: "master"
commit: "
a17c0da"
git-subrepo:
version: "0.4.3"
origin: "???"
commit: "???"
negativeExponent [Tue, 20 Apr 2021 23:16:35 +0000 (07:16 +0800)]
Cleanup deps
Autechre [Tue, 20 Apr 2021 20:59:16 +0000 (22:59 +0200)]
Merge pull request #511 from negativeExponent/updates
Selectively replace fopen() with fopen_utf8()
negativeExponent [Tue, 20 Apr 2021 12:52:38 +0000 (20:52 +0800)]
Add missing files
negativeExponent [Tue, 20 Apr 2021 12:00:18 +0000 (20:00 +0800)]
Selectively replace fopen() with fopen_utf8()
This selectively replace fopen calls with fopen_utf8, to handle paths
that uses special characters in Windows.
The replacement covers these:
- opening of bios file
- opening, writting and creating memcard2
- opening and handling of disk images
Related: https://github.com/libretro/libretro-fceumm/issues/448
twinaphex [Wed, 24 Mar 2021 23:33:51 +0000 (00:33 +0100)]
Get rid of interpreter name
twinaphex [Tue, 23 Mar 2021 17:34:41 +0000 (18:34 +0100)]
Add ios-arm64/tvos-arm64, ios9, and osx-arm64. osx-arm64 is interpreter
for now (lightrec crashes at startup)
Autechre [Tue, 16 Mar 2021 13:45:41 +0000 (14:45 +0100)]
Merge pull request #506 from jdgleaver/libchdr-update
Update libchdr (replace libflac with dr_flac)
jdgleaver [Mon, 15 Mar 2021 15:36:34 +0000 (15:36 +0000)]
Update libchdr (replace libflac with dr_flac)
Autechre [Sun, 21 Feb 2021 05:00:27 +0000 (06:00 +0100)]
Merge pull request #502 from justinweiss/restrict-threaded-rendering-drivers
Restrict threaded rendering to unai / peops
Justin Weiss [Thu, 11 Feb 2021 02:17:31 +0000 (18:17 -0800)]
Restrict threaded rendering to unai / peops
Autechre [Mon, 15 Feb 2021 21:31:54 +0000 (22:31 +0100)]
Merge pull request #500 from bslenul/master
Change HLE BIOS message. Please review first!
bslenul [Mon, 15 Feb 2021 09:44:33 +0000 (10:44 +0100)]
Change HLE BIOS message.
Autechre [Thu, 11 Feb 2021 11:38:25 +0000 (12:38 +0100)]
Merge pull request #499 from negativeExponent/fix_input
multitap option fix
negativeExponent [Thu, 11 Feb 2021 08:49:57 +0000 (16:49 +0800)]
Do not hide multitap core options
negativeExponent [Thu, 11 Feb 2021 08:48:08 +0000 (16:48 +0800)]
Set multitap options disabled by default, prevent previous defaults from being accidentally loaded instead.
Autechre [Mon, 8 Feb 2021 22:17:04 +0000 (23:17 +0100)]
Merge pull request #498 from glebm/patch-1
libretro: Add support for ps1_rom.bin (PS3 BIOS)
Gleb Mazovetskiy [Mon, 8 Feb 2021 20:42:12 +0000 (20:42 +0000)]
libretro: Add support for ps1_rom.bin (PS3 BIOS)
m4xw [Fri, 5 Feb 2021 10:34:41 +0000 (11:34 +0100)]
Disable lightrec for libnx
Requires the impl. of the rw/rx patches first
Autechre [Wed, 13 Jan 2021 18:08:29 +0000 (19:08 +0100)]
Merge pull request #487 from liberodark/patch-1
add H5 + N2 support
liberodark [Wed, 13 Jan 2021 17:57:51 +0000 (18:57 +0100)]
add H5 + N2 support
Autechre [Sun, 10 Jan 2021 15:01:43 +0000 (16:01 +0100)]
Update .gitlab-ci.yml
Autechre [Sat, 2 Jan 2021 23:32:47 +0000 (00:32 +0100)]
Update .gitlab-ci.yml
Autechre [Sun, 27 Dec 2020 14:50:26 +0000 (15:50 +0100)]
Update .gitlab-ci.yml
Autechre [Sat, 26 Dec 2020 18:36:03 +0000 (19:36 +0100)]
Merge pull request #483 from webgeek1234/master
Android Updates
Aaron Kling [Sat, 26 Dec 2020 18:15:56 +0000 (12:15 -0600)]
libretro: android: remove flag allowing text relocations
This is not allowed on api 23+
Aaron Kling [Sat, 26 Dec 2020 18:08:05 +0000 (12:08 -0600)]
libretro: android: Fix non-armv7 builds
Autechre [Thu, 24 Dec 2020 02:38:20 +0000 (03:38 +0100)]
Create .gitlab-ci.yml
twinaphex [Sat, 19 Dec 2020 21:57:49 +0000 (22:57 +0100)]
Update
Autechre [Fri, 27 Nov 2020 21:35:18 +0000 (22:35 +0100)]
Merge pull request #479 from dev-0x7C6/master
Removed conditional include on non-existent file.
Bartłomiej Burdukiewicz [Tue, 24 Nov 2020 17:56:56 +0000 (18:56 +0100)]
Removed conditional include on non-existent file.
Signed-off-by: Bartłomiej Burdukiewicz <bartlomiej.burdukiewicz@gmail.com>
Autechre [Sun, 8 Nov 2020 22:08:59 +0000 (23:08 +0100)]
Merge pull request #476 from vanfanel/master
Add Rpi4 platform in 64bit mode.
Vanfanel [Sat, 7 Nov 2020 15:05:28 +0000 (16:05 +0100)]
Add Rpi4 platform in 64bit mode.
Autechre [Fri, 6 Nov 2020 04:33:38 +0000 (05:33 +0100)]
Merge pull request #474 from negativeExponent/ios_interpreter
iOS: Another try at interpreter override
Autechre [Fri, 6 Nov 2020 04:33:30 +0000 (05:33 +0100)]
Merge pull request #475 from negativeExponent/multitap
Set multitap options to "disabled" by default
negativeExponent [Thu, 5 Nov 2020 09:48:28 +0000 (17:48 +0800)]
Set multitap options to "disabled" by default
Due to moving input selector to frontend instead from the core options,
ports 3-8 can be always set to standard causing multitap to be auto-activated.
With multitaps enabled, some games would misbehave or inputs not working
at all for those that are not multiplayer capable.
Setting core option multitap1 and multitap2 to disable for now.
negativeExponent [Wed, 4 Nov 2020 22:34:11 +0000 (06:34 +0800)]
iOS: Another try at interpreter override
Autechre [Wed, 4 Nov 2020 21:51:38 +0000 (22:51 +0100)]
Merge pull request #473 from negativeExponent/chd_image_cache
CHD: Support for precache mode CD access method
negativeExponent [Wed, 4 Nov 2020 13:16:24 +0000 (21:16 +0800)]
CHD: Support for precache mode CD access method
https://github.com/libretro/pcsx_rearmed/issues/261
Autechre [Tue, 3 Nov 2020 19:22:34 +0000 (20:22 +0100)]
Merge pull request #472 from negativeExponent/input_descriptors
Input descriptors
negativeExponent [Tue, 3 Nov 2020 14:24:00 +0000 (22:24 +0800)]
Indicate that multitap requires restart and cleanup
Multi-tap related feature like enabling/changing controllers type on
port 4-8 and changing multitap option requires a restart.
Port 1 and 2 (player 1-2) are mostly safe to change options anytime
negativeExponent [Mon, 2 Nov 2020 12:49:24 +0000 (20:49 +0800)]
Move input type selection to RETRO_ENVIRONMENT_SET_CONTROLLER_INFO
Autechre [Sun, 1 Nov 2020 19:27:30 +0000 (20:27 +0100)]
Merge pull request #471 from aliaspider/master
fix chd track info parsing.
aliaspider [Sun, 1 Nov 2020 18:31:38 +0000 (19:31 +0100)]
fix chd track info parsing.
Autechre [Sat, 31 Oct 2020 22:59:27 +0000 (23:59 +0100)]
Merge pull request #470 from negativeExponent/pads
remove dfinput, fix negcon input
negativeExponent [Sat, 31 Oct 2020 11:38:47 +0000 (19:38 +0800)]
Fix negcon not working correctly in some games
negativeExponent [Fri, 30 Oct 2020 23:15:03 +0000 (07:15 +0800)]
Remove dfinput plugin from Makefile
The dfinput plugin is not used in this codebase, so remove them when
compiling.
Will repurpose dfinput_activate() to do out init later.
Autechre [Fri, 30 Oct 2020 17:12:44 +0000 (18:12 +0100)]
Merge pull request #468 from negativeExponent/pads
input fixes
negativeExponent [Fri, 30 Oct 2020 11:43:11 +0000 (19:43 +0800)]
Change indents to tabs and alignment
negativeExponent [Fri, 30 Oct 2020 11:40:55 +0000 (19:40 +0800)]
libpscore/plugins.c: Trim trailing whitespace
negativeExponent [Fri, 30 Oct 2020 11:33:23 +0000 (19:33 +0800)]
Fix input not responding
Pad mode set was missing that cause a few games which queries for an
analog-type controller to fail or causes no inputs at all.
This also change the "standard" input type to behave like one, which
means it does not have rumble or analog inputs. A required input type is
necessary to set the desired input effects.
Probably needs some cleanup but it works for now.
Fixes https://github.com/libretro/pcsx_rearmed/issues/161 and probably
other input related issues.
Autechre [Thu, 29 Oct 2020 05:14:54 +0000 (06:14 +0100)]
Merge pull request #467 from justinweiss/threaded-rendering-delay-fix
Fix unnecessary threaded rendering frame drops
Justin Weiss [Thu, 29 Oct 2020 04:30:22 +0000 (21:30 -0700)]
Fix unnecessary threaded rendering frame drops
When DMA requests force a background queue flush, the update lace
handler can no longer know there was a pending frame. If this happens
often enough, it can delay the next frame indefinitely.
Whenever the background queue is emptied, the next update_lace needs
to force a render.
Autechre [Wed, 28 Oct 2020 21:49:30 +0000 (22:49 +0100)]
Merge pull request #466 from negativeExponent/gcc10
Fix build with -fno-common (default in gcc10)
negativeExponent [Wed, 28 Oct 2020 15:05:54 +0000 (23:05 +0800)]
Fix build with -fno-common (default in gcc10)
Autechre [Fri, 23 Oct 2020 14:18:41 +0000 (16:18 +0200)]
Merge pull request #464 from justinweiss/peops-threaded-rendering
Allow threaded rendering for peops and enable on unix
Autechre [Fri, 23 Oct 2020 09:48:39 +0000 (11:48 +0200)]
Merge pull request #463 from negativeExponent/ios_interpreter
iOS: Fix interpreter overrides
Justin Weiss [Fri, 23 Oct 2020 05:27:53 +0000 (22:27 -0700)]
Allow threaded rendering for peops and enable on unix
negativeExponent [Fri, 23 Oct 2020 04:55:58 +0000 (12:55 +0800)]
iOS: Fix interpreter overrides
By default, iOS are built with either DYNAREC=ari64 or DYNAREC=lightrec, with lightrec used as an override flag to build the interpreter instead, which is DYNAREC=0.
This PR removes DYNAREC?=ari64 which seems to block the overrides from working.
Hopefully...:
Autechre [Fri, 23 Oct 2020 03:06:26 +0000 (05:06 +0200)]
Merge pull request #462 from justinweiss/threaded-rendering
Add a threaded renderer
Justin Weiss [Mon, 14 Sep 2020 03:06:57 +0000 (20:06 -0700)]
Add a threaded renderer
This change adds a gpulib implementation that accepts GPU commands and
runs them through a real gpulib implementation on a thread. Depending
on a setting, it can either force a sync every frame, or continue to
work until the next frame arrives.
Autechre [Fri, 23 Oct 2020 00:32:47 +0000 (02:32 +0200)]
Merge pull request #461 from negativeExponent/libchdr
Update libchdr from latest upstream changes