Paul Cercueil [Sat, 11 Feb 2023 18:34:16 +0000 (18:34 +0000)]
Fix Android build (#716)
Android builds don't use the Makefile, and the build recipe wasn't
modified to add the new constprop.c source file from Lightrec.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Paul Cercueil [Sat, 11 Feb 2023 09:38:17 +0000 (09:38 +0000)]
Update Lightrec 2023-02-08 (#715)
* git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
3ff589bcb7"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
3ff589bcb7"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
* lightrec: Add new C files to the Makefile
Lightrec v0.7 added a "constprop.c" source file which we need to compile
as well.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---------
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
notaz [Sun, 11 Dec 2022 20:28:42 +0000 (22:28 +0200)]
cdrom: adjust a timing hack
notaz/pcsx_rearmed#276
notaz [Mon, 14 Nov 2022 22:57:47 +0000 (00:57 +0200)]
gpulib: allow commands to span list entries
libretro/pcsx_rearmed#271
notaz [Sun, 13 Nov 2022 23:17:58 +0000 (01:17 +0200)]
cdrom: forget old sector on cd change
libretro/pcsx_rearmed#689
notaz [Sun, 13 Nov 2022 21:33:49 +0000 (23:33 +0200)]
dma: add optional slow linked list walking
libretro/pcsx_rearmed#478
libretro/pcsx_rearmed#264
libretro/pcsx_rearmed#132
notaz/pcsx_rearmed#95
notaz [Sat, 12 Nov 2022 21:05:52 +0000 (23:05 +0200)]
cdrom: make the timing hack conditional
libretro/pcsx_rearmed#707
notaz [Sat, 12 Nov 2022 15:57:31 +0000 (17:57 +0200)]
cdriso: unbreak cdda for chd
notaz/pcsx_rearmed#272
notaz [Sat, 5 Nov 2022 20:51:37 +0000 (22:51 +0200)]
cdrom: don't report read too early
libretro/pcsx_rearmed#706
notaz [Thu, 3 Nov 2022 21:30:52 +0000 (23:30 +0200)]
try to fix the android build
notaz [Thu, 3 Nov 2022 21:09:03 +0000 (23:09 +0200)]
Merge pull request #705 from pcercuei/lightrec-disable-threaded-compiler
lightrec: Disable threaded compiler by default
notaz [Thu, 3 Nov 2022 20:49:08 +0000 (22:49 +0200)]
spu: fix a wrong assumption
from
5aa94fa080e1b0a661b23aa912022dd464d41110
libretro/pcsx_rearmed#704
Paul Cercueil [Thu, 3 Nov 2022 18:26:45 +0000 (18:26 +0000)]
lightrec: Disable threaded compiler by default
It is still buggy so it's better to disable it by default until it
becomes usable.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
notaz [Thu, 3 Nov 2022 00:13:39 +0000 (02:13 +0200)]
cdriso: fix up chd for separated subq reads
notaz [Wed, 2 Nov 2022 22:49:53 +0000 (00:49 +0200)]
cdriso: disable the async code
It will race with the new ISOgetBufferSub() and I have no desire to fix
this as this async stuff was never submitted upstread, and according to
the following report it's unstable:
https://github.com/notaz/pcsx_rearmed/issues/257
notaz [Wed, 2 Nov 2022 20:24:20 +0000 (22:24 +0200)]
cdrom: change GetlocP handling
maybe better?
notaz/pcsx_rearmed#268
notaz [Tue, 1 Nov 2022 23:20:50 +0000 (01:20 +0200)]
cdrom: handle fifo overreads
based on nocash doc
notaz/pcsx_rearmed#269
notaz [Tue, 1 Nov 2022 20:52:49 +0000 (22:52 +0200)]
Merge pull request #702 from pcercuei/update-lightrec-
20221029
git subrepo pull --force deps/lightrec
Paul Cercueil [Sat, 29 Oct 2022 14:50:50 +0000 (15:50 +0100)]
git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
4e55a15656"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
4e55a15656"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
notaz [Tue, 25 Oct 2022 19:08:12 +0000 (22:08 +0300)]
cdrom: add a timing hack
notaz/pcsx_rearmed#267
notaz [Sat, 22 Oct 2022 16:20:26 +0000 (19:20 +0300)]
cdrom: report read errors correctly
notaz [Sat, 22 Oct 2022 16:16:46 +0000 (19:16 +0300)]
psxbios: use noninvasive print for -psxout
notaz [Sat, 22 Oct 2022 15:52:54 +0000 (18:52 +0300)]
Merge pull request #700 from pcercuei/update-lightrec-
20221019
Update lightrec
20221019
Paul Cercueil [Wed, 19 Oct 2022 17:24:34 +0000 (18:24 +0100)]
git subrepo pull (merge) --force deps/lightning
subrepo:
subdir: "deps/lightning"
merged: "
b910a469a9"
upstream:
origin: "https://github.com/pcercuei/gnu_lightning.git"
branch: "pcsx_rearmed"
commit: "
b910a469a9"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Paul Cercueil [Wed, 19 Oct 2022 17:24:29 +0000 (18:24 +0100)]
git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
782c220e5d"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
782c220e5d"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
notaz [Sat, 15 Oct 2022 20:08:09 +0000 (23:08 +0300)]
adjust multitap code to interact with standalone better
notaz [Fri, 14 Oct 2022 21:37:43 +0000 (00:37 +0300)]
gpulib: update gpuinfo
according to nocash
notaz [Fri, 14 Oct 2022 20:24:21 +0000 (23:24 +0300)]
reduce differences from upstream
because libretro-only breakage is too annoying to track down
notaz [Thu, 13 Oct 2022 21:34:30 +0000 (00:34 +0300)]
Merge pull request #698 from pcercuei/update-lightrec-
20221012
Update lightrec
20221012
Paul Cercueil [Wed, 12 Oct 2022 10:50:18 +0000 (11:50 +0100)]
git subrepo pull --force deps/lightning
subrepo:
subdir: "deps/lightning"
merged: "
4941e101f8"
upstream:
origin: "https://github.com/pcercuei/gnu_lightning.git"
branch: "pcsx_rearmed"
commit: "
4941e101f8"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Paul Cercueil [Wed, 12 Oct 2022 09:50:32 +0000 (10:50 +0100)]
git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
75374fa374"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
75374fa374"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
notaz [Sat, 8 Oct 2022 18:26:23 +0000 (21:26 +0300)]
allow debug build (make DEBUG=1)
no need for PCSX's internal debugger (unmaintained here)
notaz [Sun, 2 Oct 2022 21:22:10 +0000 (00:22 +0300)]
remove a seemingly broken submodule
Committed unintentionally?
If not, please update .gitmodules next time.
notaz [Sun, 2 Oct 2022 17:37:29 +0000 (20:37 +0300)]
lightrec: fix pcsx interpreter -> lightrec switch too
notaz [Sun, 2 Oct 2022 16:09:49 +0000 (19:09 +0300)]
lightrec: allow to switch to pcsx's interpreter anytime
notaz [Sat, 1 Oct 2022 21:17:00 +0000 (00:17 +0300)]
libretro: adjust options after recent changes
notaz [Sat, 1 Oct 2022 20:43:39 +0000 (23:43 +0300)]
psxinterpreter: use cycle_multiplier also
not just ari64
notaz [Sat, 1 Oct 2022 19:32:01 +0000 (22:32 +0300)]
remove all the hack options
They just confuse users, like:
libretro/pcsx_rearmed#693
For Parasite Eve 2 and others, adjust "PSX CPU clock" instead if needed.
notaz [Thu, 29 Sep 2022 19:45:23 +0000 (22:45 +0300)]
cdrom: update status immediately after seek
Philosoma wants it
notaz [Thu, 29 Sep 2022 18:36:54 +0000 (21:36 +0300)]
cdrom: ignore repeated read cmds
libretro/pcsx_rearmed#691
notaz [Wed, 21 Sep 2022 21:35:28 +0000 (00:35 +0300)]
cdrom: change GetlocL behavior
notaz/pcsx_rearmed#263
notaz [Sat, 17 Sep 2022 20:28:46 +0000 (23:28 +0300)]
cdrom: treat seek the same as other commands
much simpler this way
notaz [Sat, 17 Sep 2022 20:18:47 +0000 (23:18 +0300)]
cdrom: allow to interrupt initial scan sequence
probably wrong but ohwell...
notaz [Sat, 17 Sep 2022 19:46:03 +0000 (22:46 +0300)]
cdrom: actually reject commands when not ready
before it would still execute them and just do an error response
notaz [Fri, 16 Sep 2022 20:45:15 +0000 (23:45 +0300)]
maybe fix x86 32bit detection for libretro's infra
notaz [Fri, 16 Sep 2022 20:40:23 +0000 (23:40 +0300)]
make: print what's going on
notaz [Fri, 16 Sep 2022 20:30:05 +0000 (23:30 +0300)]
try to fix build
notaz [Fri, 16 Sep 2022 20:19:39 +0000 (23:19 +0300)]
try to enable gpu_neon on 32bit x86
notaz [Fri, 16 Sep 2022 19:59:25 +0000 (22:59 +0300)]
main: log missing CPU features
will probably be too late but ohwell
notaz [Thu, 15 Sep 2022 23:34:58 +0000 (02:34 +0300)]
gpu_neon: rm wrong cost qualifier
notaz [Thu, 15 Sep 2022 23:31:37 +0000 (02:31 +0300)]
cdrom: adjust timing
notaz [Thu, 15 Sep 2022 21:03:40 +0000 (00:03 +0300)]
don't cast between long and pointers for win64
long is 32 bit there
notaz [Thu, 15 Sep 2022 20:38:40 +0000 (23:38 +0300)]
enable gpu_neon on win64 too
hope it works there
notaz [Thu, 15 Sep 2022 18:48:14 +0000 (21:48 +0300)]
try to enable gpu_neon on x86
notaz [Thu, 15 Sep 2022 18:12:10 +0000 (21:12 +0300)]
misc: patch some issues indicated by clang
notaz [Thu, 15 Sep 2022 16:11:11 +0000 (19:11 +0300)]
frontend: handle double res rendering, enable on x86_64
notaz [Sun, 11 Sep 2022 22:40:24 +0000 (01:40 +0300)]
gpu_neon: brand new x86 SSE2+ implementation
notaz [Tue, 16 Aug 2022 21:11:39 +0000 (00:11 +0300)]
gpu_neon: adjust some comments and things
notaz [Thu, 15 Sep 2022 16:25:01 +0000 (19:25 +0300)]
cdrom: delay the missed irq more
Paul Cercueil [Mon, 12 Sep 2022 20:26:25 +0000 (22:26 +0200)]
Update lightrec
20220912 (#688)
* lightrec: Remove leftover debug stuff
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix lightrec_can_hw_direct() table
It was slightly wrong, which caused crashes in the intro FMV of
Sled Storm (and maybe other games).
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
962ba05793"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
962ba05793"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Paul Cercueil [Sun, 11 Sep 2022 16:33:38 +0000 (18:33 +0200)]
Update lightrec
20220911 (#687)
* Fix <sys/mman.h> symlink
Using a symlink made it impossible to compile on Windows with MinGW.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix crash on Windows and WiiU
Fix crash on platforms that don't use Lightrec's custom map.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* lightrec: Fix has_interrupt() using PCSX' registers
It should use Lightrec's internal CP0 registers instead.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
071973e3ac"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
071973e3ac"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Paul Cercueil [Sun, 11 Sep 2022 09:12:45 +0000 (11:12 +0200)]
Update lightrec
20220910 (#686)
* git subrepo pull --force deps/lightning
subrepo:
subdir: "deps/lightning"
merged: "
b1dfc564e2"
upstream:
origin: "https://github.com/pcercuei/gnu_lightning.git"
branch: "pcsx_rearmed"
commit: "
b1dfc564e2"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
* include: update lightning.h
Update lightning.h with a copy generated from the latest master.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
* git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
e122276183"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
e122276183"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
* lightrec: Update to latest Lightrec API
Remove the debug features since they aren't really useful in the
libretro core.
Update the glue code to use the updated API functions; and implement
lightrec_can_hw_direct() for a slight performance increase.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
notaz [Sat, 10 Sep 2022 14:53:54 +0000 (17:53 +0300)]
some big endian fixes
"kinda sucks but it works" kind of thing
notaz [Sat, 10 Sep 2022 13:46:05 +0000 (16:46 +0300)]
spu: fix wrong volume shift
libretro/pcsx_rearmed#685
notaz [Fri, 9 Sep 2022 23:37:50 +0000 (02:37 +0300)]
fix build
forgot to add 'extern'
notaz [Fri, 9 Sep 2022 23:26:04 +0000 (02:26 +0300)]
standalone: allow lighrec for testing
./configure
make DYNAREC=lightrec
notaz [Fri, 9 Sep 2022 19:11:30 +0000 (22:11 +0300)]
psxinterpreter: reduce the use of globals
they induce penalties with -fPIC
notaz [Fri, 9 Sep 2022 22:58:53 +0000 (01:58 +0300)]
psxinterpreter: sync with upstream
for easier merging
notaz [Thu, 8 Sep 2022 17:09:04 +0000 (20:09 +0300)]
easier logging of unhandled stuff
notaz [Thu, 8 Sep 2022 18:13:25 +0000 (21:13 +0300)]
cdrom: partially emulate the fifo
notaz [Thu, 8 Sep 2022 15:17:06 +0000 (18:17 +0300)]
dma: try more accurate timings
seems to help Legend of Mana
notaz [Thu, 8 Sep 2022 15:01:34 +0000 (18:01 +0300)]
cdrom: get rid of pTransfer
it could easily crash the emu (misbehaving game or even malicious ISO)
notaz [Tue, 6 Sep 2022 21:47:55 +0000 (00:47 +0300)]
cdrom: don't reschedule irqs
trigger shortly after ack instead, like nocash describes
notaz [Mon, 5 Sep 2022 20:47:10 +0000 (23:47 +0300)]
cdrom: clean up command handling
notaz [Mon, 5 Sep 2022 16:41:52 +0000 (19:41 +0300)]
cdrom: try to eliminate playback timing drifting
notaz [Tue, 6 Sep 2022 23:09:08 +0000 (02:09 +0300)]
psxcounters: try to eliminate another source of audio drift
notaz [Wed, 7 Sep 2022 23:50:36 +0000 (02:50 +0300)]
spu: cleanup some irq hacks
Note that bIgnoreLoop is still needed or
"Misadventures Of Tron Bonne" may hang after cutscenes.
Before this commit the game will sometimes cut off dialogues.
notaz [Tue, 6 Sep 2022 15:25:42 +0000 (18:25 +0300)]
spu: sync on xa playback start
this avoids nasty underflows at the start of the stream
notaz [Sun, 4 Sep 2022 23:03:24 +0000 (02:03 +0300)]
spu: support master volume
notaz [Sun, 4 Sep 2022 21:40:58 +0000 (00:40 +0300)]
spu: rename dwChannelOn to something more suitable
notaz [Sun, 4 Sep 2022 21:02:28 +0000 (00:02 +0300)]
spu: remove some strange rounding
Seems wrong.
Also deal with now possible div by 0 in scan_for_irq().
notaz [Sat, 3 Sep 2022 15:37:53 +0000 (18:37 +0300)]
cdrom: remove confusing comment
No need for a wall-of-text comment for something as basic as seeking.
It also said "disabling it with `&& false` for now" when there is no
such code here.
notaz [Sat, 3 Sep 2022 15:33:09 +0000 (18:33 +0300)]
cdrom: remove another hack
The hack just makes Worms Pinball unstable, and Crusaders of Might
and Magic no longer seems to need it.
notaz [Fri, 2 Sep 2022 20:13:44 +0000 (23:13 +0300)]
cdrom: get rid of cdrPlayInterrupt
unify with cdrReadInterrupt and name it cdrPlaySeekReadInterrupt
... althoug these are not actually interrupts, more like events,
but keep this weird PCSX's naming convention
notaz [Thu, 1 Sep 2022 21:47:56 +0000 (00:47 +0300)]
cdrom: try to clean up the seeking mess
regressions are likely (this is cdrom code - pcsx's weak spot),
so feel free to revert if I'm not responsive
notaz [Wed, 31 Aug 2022 23:09:49 +0000 (02:09 +0300)]
cdrom: should use the last Setloc loc and SeekL
notaz/pcsx_rearmed#253
notaz [Wed, 31 Aug 2022 23:02:21 +0000 (02:02 +0300)]
cdrom: some debugging aid
notaz [Fri, 2 Sep 2022 23:09:14 +0000 (02:09 +0300)]
cdrom: sync with upstream
Without this can't cherry-pick stuff from there.
notaz [Tue, 30 Aug 2022 21:02:47 +0000 (00:02 +0300)]
Revert "Revert "misc: get rid of an unaligned read""
This reverts commit
af0df01112a234b848be5fe87a2066bb938d356c.
notaz [Mon, 29 Aug 2022 23:58:32 +0000 (02:58 +0300)]
plugins: try to untangle the CALLBACK mess
on ARM it doesn't matter so calling conventions were never maintained,
so just get rid of __stdcall
notaz [Tue, 30 Aug 2022 00:00:51 +0000 (03:00 +0300)]
spu: get rid of iXAPitch
it makes no sense after SPU was fully synced to the core, and now it
just pulls unwanted windows.h dependency on win32.
LibretroAdmin [Mon, 29 Aug 2022 23:26:03 +0000 (01:26 +0200)]
Revert "misc: get rid of an unaligned read"
This reverts commit
5bb56b1a0ec9c4875a4b9f532d79ee477a5a6e8e.
notaz [Sun, 28 Aug 2022 20:51:40 +0000 (23:51 +0300)]
misc: get rid of an unaligned read
96c6ec7055ecef55b3dd221c86b796512bf52107 introduced an unaligned read
which is undefined behavior in C, even if most hardware allows it
(but some very old ARMs don't). Perf. doesn't matter here so read
byte-by-byte.
notaz/pcsx_rearmed#261
notaz [Sat, 13 Aug 2022 21:07:11 +0000 (00:07 +0300)]
gpu_neon: fix another abi violation
before the flush_render_block_buffer call the stack is misaligned,
so push an odd num of regs to realign
notaz [Sat, 13 Aug 2022 21:05:07 +0000 (00:05 +0300)]
gpu_neon: fix wrong block counting
notaz [Thu, 11 Aug 2022 19:52:54 +0000 (22:52 +0300)]
drc: fix a silly mistake of overwriting a reg
notaz [Wed, 10 Aug 2022 19:39:41 +0000 (22:39 +0300)]
drc: rework smc checks again
the way it was done before wasn't good enough for
Mega Man Legends 2 at least
notaz [Wed, 10 Aug 2022 19:32:11 +0000 (22:32 +0300)]
drc: fix wrong masking in set_jump_target
notaz [Tue, 9 Aug 2022 17:42:39 +0000 (20:42 +0300)]
cspace: add forgotten length decrement
notaz [Mon, 8 Aug 2022 23:56:05 +0000 (02:56 +0300)]
make: switch apple platforms to neon gpu too
let's see it it builds