pcsx_rearmed.git
2 months agoMerge branch 'master' into libretro
notaz [Tue, 14 Jan 2025 01:36:59 +0000 (03:36 +0200)]
Merge branch 'master' into libretro

2 months agodb: update
notaz [Tue, 14 Jan 2025 01:32:04 +0000 (03:32 +0200)]
db: update

no desire to dig out the real reason; works on arm?
libretro/pcsx_rearmed#867

2 months agolightrec: update
notaz [Tue, 14 Jan 2025 01:27:23 +0000 (03:27 +0200)]
lightrec: update

2 months agogpu: adjust timing again
notaz [Tue, 14 Jan 2025 00:51:58 +0000 (02:51 +0200)]
gpu: adjust timing again

maybe I should just give up...

2 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Sun, 12 Jan 2025 22:07:38 +0000 (23:07 +0100)]
git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "8293acf768e"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "8293acf768e"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

2 months agoMerge branch 'master' into libretro
notaz [Sat, 11 Jan 2025 23:52:03 +0000 (01:52 +0200)]
Merge branch 'master' into libretro

2 months agodrc: adjust timing hacks
notaz [Sat, 11 Jan 2025 22:28:09 +0000 (00:28 +0200)]
drc: adjust timing hacks

also drop the difference from other cpu cores
libretro/pcsx_rearmed#858
notaz/pcsx_rearmed#349

2 months agorestore Haiku build
Benjamin FRANCOIS [Fri, 10 Jan 2025 19:56:50 +0000 (11:56 -0800)]
restore Haiku build

2 months agorestore Haiku build
Benjamin FRANCOIS [Fri, 10 Jan 2025 19:56:50 +0000 (11:56 -0800)]
restore Haiku build

2 months agolightrec: update to match libretro branch
notaz [Thu, 9 Jan 2025 19:23:39 +0000 (21:23 +0200)]
lightrec: update to match libretro branch

2 months agoMerge pull request #863 from pcercuei/update-lightrec-20250108
notaz [Thu, 9 Jan 2025 19:02:29 +0000 (21:02 +0200)]
Merge pull request #863 from pcercuei/update-lightrec-20250108

Update Lightrec 2025-01-08

2 months agogit subrepo pull --force deps/lightning
Paul Cercueil [Thu, 9 Jan 2025 17:24:39 +0000 (18:24 +0100)]
git subrepo pull --force deps/lightning

subrepo:
  subdir:   "deps/lightning"
  merged:   "a6bb2b5a7cf"
upstream:
  origin:   "https://git.savannah.gnu.org/git/lightning.git"
  branch:   "master"
  commit:   "a6bb2b5a7cf"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

2 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Wed, 8 Jan 2025 14:29:46 +0000 (15:29 +0100)]
git subrepo pull --force deps/lightrec

subrepo:
  subdir:   "deps/lightrec"
  merged:   "05f7e09e919"
upstream:
  origin:   "https://github.com/pcercuei/lightrec.git"
  branch:   "master"
  commit:   "05f7e09e919"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

2 months agoMerge branch 'master' into libretro
notaz [Mon, 6 Jan 2025 22:47:40 +0000 (00:47 +0200)]
Merge branch 'master' into libretro

2 months agogpu_neon: try more to not violate the arm32 abi
notaz [Mon, 6 Jan 2025 00:51:47 +0000 (02:51 +0200)]
gpu_neon: try more to not violate the arm32 abi

keep 8b stack alignment, save/restore regs, try avoiding hazards of
arm+neon accessing same cachelines on cortex-a8

3 months agoMerge branch 'master' into libretro
notaz [Sat, 28 Dec 2024 21:44:38 +0000 (23:44 +0200)]
Merge branch 'master' into libretro

3 months ago3ds: fix build
notaz [Sat, 28 Dec 2024 21:43:01 +0000 (23:43 +0200)]
3ds: fix build

c++ and long s32 combines to a peril

3 months agoMerge branch 'master' into libretro
notaz [Sat, 28 Dec 2024 21:25:33 +0000 (23:25 +0200)]
Merge branch 'master' into libretro

3 months agogpu: further timing hacks
notaz [Fri, 27 Dec 2024 20:04:33 +0000 (22:04 +0200)]
gpu: further timing hacks

libretro/pcsx_rearmed#711
notaz/pcsx_rearmed#348

3 months agogpu_neon: typo fix + minor stuff
notaz [Fri, 27 Dec 2024 15:37:31 +0000 (17:37 +0200)]
gpu_neon: typo fix + minor stuff

3 months agocdrom: fix wrong state
notaz [Thu, 26 Dec 2024 20:18:02 +0000 (22:18 +0200)]
cdrom: fix wrong state

libretro/pcsx_rearmed#860

3 months agolibretro: simplify axis_range_modifier
notaz [Thu, 26 Dec 2024 19:03:15 +0000 (21:03 +0200)]
libretro: simplify axis_range_modifier

also default to square as that better matches psx on modern controllers

3 months agogpu: different offset handling
notaz [Tue, 24 Dec 2024 18:39:34 +0000 (20:39 +0200)]
gpu: different offset handling

hopefully better, please report if something breaks
libretro/pcsx_rearmed#622

3 months agogpu_neon: unbreak tests
notaz [Tue, 24 Dec 2024 17:57:57 +0000 (19:57 +0200)]
gpu_neon: unbreak tests

3 months agoMerge branch 'master' into libretro
notaz [Mon, 23 Dec 2024 12:49:28 +0000 (14:49 +0200)]
Merge branch 'master' into libretro

3 months agocdrom: yet another timing hack
notaz [Mon, 23 Dec 2024 12:21:47 +0000 (14:21 +0200)]
cdrom: yet another timing hack

libretro/pcsx_rearmed#858

3 months agocdrom: some cleanup
notaz [Mon, 23 Dec 2024 12:21:16 +0000 (14:21 +0200)]
cdrom: some cleanup

3 months agoMerge branch 'master' into libretro
notaz [Thu, 19 Dec 2024 23:34:22 +0000 (01:34 +0200)]
Merge branch 'master' into libretro

3 months agogpu: some timing improvements
notaz [Thu, 19 Dec 2024 23:04:28 +0000 (01:04 +0200)]
gpu: some timing improvements

libretro/pcsx_rearmed#857
notaz/pcsx_rearmed#217

3 months agoMerge branch 'master' into libretro
notaz [Thu, 19 Dec 2024 00:24:02 +0000 (02:24 +0200)]
Merge branch 'master' into libretro

3 months agogpulib: unbreak debug logs
notaz [Thu, 19 Dec 2024 00:23:00 +0000 (02:23 +0200)]
gpulib: unbreak debug logs

3 months agovita: disable drc thread
notaz [Wed, 18 Dec 2024 23:18:26 +0000 (01:18 +0200)]
vita: disable drc thread

tc writes from a thread cause data abort, and sceKernelOpenVMDomain()
returns 80010058 which https://wiki.henkaku.xyz/vita/SceSblSsMgr mentions
as SCE_ERROR_ERRNO_ENOSYS, aka "Invalid system call number"?

3 months agoMerge branch 'master' into libretro
notaz [Wed, 18 Dec 2024 21:50:25 +0000 (23:50 +0200)]
Merge branch 'master' into libretro

3 months agovita: another try
notaz [Wed, 18 Dec 2024 21:47:00 +0000 (23:47 +0200)]
vita: another try

maybe the last
libretro/pcsx_rearmed#856

3 months agoMerge branch 'master' into libretro
notaz [Tue, 17 Dec 2024 23:37:07 +0000 (01:37 +0200)]
Merge branch 'master' into libretro

3 months agodrc: allow address 0 in thread mode
notaz [Tue, 17 Dec 2024 23:28:49 +0000 (01:28 +0200)]
drc: allow address 0 in thread mode

Otherwise the compile thread would spin endlessly.
Noticed it when another bug caused exec at address 0.

3 months agopsxinterpreter: avoid excessive icache clearing
notaz [Tue, 17 Dec 2024 23:28:11 +0000 (01:28 +0200)]
psxinterpreter: avoid excessive icache clearing

3 months agodrc: avoid mov pc
notaz [Tue, 17 Dec 2024 19:36:52 +0000 (21:36 +0200)]
drc: avoid mov pc

DDI0406 A4.1.1 "Changing between Thumb state and ARM state" recommends
against mov pc, and recent compilers completely avoid it too.

3 months agovita: yet another try to fix crashes
notaz [Tue, 17 Dec 2024 19:34:32 +0000 (21:34 +0200)]
vita: yet another try to fix crashes

libretro/pcsx_rearmed#856

3 months agoMerge branch 'master' into libretro
notaz [Tue, 17 Dec 2024 00:24:24 +0000 (02:24 +0200)]
Merge branch 'master' into libretro

3 months agodrc: another try to fix thread cache stuff
notaz [Tue, 17 Dec 2024 00:20:39 +0000 (02:20 +0200)]
drc: another try to fix thread cache stuff

libretro/pcsx_rearmed#856

3 months agoMerge branch 'master' into libretro
notaz [Mon, 16 Dec 2024 01:19:03 +0000 (03:19 +0200)]
Merge branch 'master' into libretro

3 months agomake: no line splitting
notaz [Mon, 16 Dec 2024 01:18:07 +0000 (03:18 +0200)]
make: no line splitting

won't work on libretro-build-libnx-devkitpro , who tf knows why?

3 months agoattempt to fix github workflows
notaz [Mon, 16 Dec 2024 01:16:04 +0000 (03:16 +0200)]
attempt to fix github workflows

3 months agodb: another lightrec hack
notaz [Mon, 16 Dec 2024 01:10:00 +0000 (03:10 +0200)]
db: another lightrec hack

3 months agoMerge branch 'master' into libretro
notaz [Mon, 16 Dec 2024 00:28:34 +0000 (02:28 +0200)]
Merge branch 'master' into libretro

3 months agomdec: timing hacks
notaz [Sun, 15 Dec 2024 23:39:42 +0000 (01:39 +0200)]
mdec: timing hacks

libretro/pcsx_rearmed#846

3 months agovita: try to fix alloc
notaz [Sun, 15 Dec 2024 22:35:53 +0000 (00:35 +0200)]
vita: try to fix alloc

libretro/pcsx_rearmed#856

3 months agovita: cleanup
notaz [Sun, 15 Dec 2024 21:28:39 +0000 (23:28 +0200)]
vita: cleanup

3 months agolibretro: drop remnants of _async_cd
notaz [Sun, 15 Dec 2024 20:45:44 +0000 (22:45 +0200)]
libretro: drop remnants of _async_cd

there is pcsx_rearmed_cd_readahead now

3 months agoMerge branch 'master' into libretro
notaz [Mon, 9 Dec 2024 00:21:32 +0000 (02:21 +0200)]
Merge branch 'master' into libretro

3 months agogpu: allow to force-enable dithering
notaz [Mon, 9 Dec 2024 00:17:13 +0000 (02:17 +0200)]
gpu: allow to force-enable dithering

libretro/pcsx_rearmed#853

3 months agofix build
notaz [Sun, 8 Dec 2024 23:10:52 +0000 (01:10 +0200)]
fix build

libretro/pcsx_rearmed#855

3 months agoMerge branch 'master' into libretro
notaz [Sat, 7 Dec 2024 00:49:47 +0000 (02:49 +0200)]
Merge branch 'master' into libretro

3 months ago3ds: change psx vram location
notaz [Sat, 7 Dec 2024 00:48:28 +0000 (02:48 +0200)]
3ds: change psx vram location

should be better in theory but doesn't seem to matter in practice

3 months agoMerge branch 'master' into libretro
notaz [Thu, 5 Dec 2024 00:54:12 +0000 (02:54 +0200)]
Merge branch 'master' into libretro

3 months agoandroid build yet again...
notaz [Thu, 5 Dec 2024 00:52:33 +0000 (02:52 +0200)]
android build yet again...

3 months agoMerge branch 'master' into libretro
notaz [Wed, 4 Dec 2024 23:36:38 +0000 (01:36 +0200)]
Merge branch 'master' into libretro

3 months agodrc: disable thread for cache hack
notaz [Wed, 4 Dec 2024 22:25:40 +0000 (00:25 +0200)]
drc: disable thread for cache hack

can't mix drc with interpreter in this case
libretro/pcsx_rearmed#854

4 months agopartially revert f0d65622de
notaz [Wed, 4 Dec 2024 00:21:39 +0000 (02:21 +0200)]
partially revert f0d65622de

GPU_UNAI_USE_FLOAT_DIV_MULTINV_FOR_ONE was a bad idea, mixing multinv
with normal div still causes issues on newer compilers, probably due
to precision or float op ordering or something

4 months agogpu_unai: asm part 5
notaz [Mon, 2 Dec 2024 00:56:09 +0000 (02:56 +0200)]
gpu_unai: asm part 5

4 months agogpu_unai: asm part 4
notaz [Sun, 1 Dec 2024 16:14:18 +0000 (18:14 +0200)]
gpu_unai: asm part 4

4 months agogpu_unai: asm part 3
notaz [Wed, 27 Nov 2024 00:14:03 +0000 (02:14 +0200)]
gpu_unai: asm part 3

4 months agogpu_unai: asm part 2
notaz [Tue, 26 Nov 2024 00:26:59 +0000 (02:26 +0200)]
gpu_unai: asm part 2

4 months agoMerge pull request #850 from pcercuei/update-lightning-20241102
notaz [Fri, 29 Nov 2024 19:10:00 +0000 (21:10 +0200)]
Merge pull request #850 from pcercuei/update-lightning-20241102

Update GNU Lightning 2024-11-02

4 months agoIgnore GNU Lightning's submodules
Paul Cercueil [Thu, 7 Nov 2024 17:17:31 +0000 (18:17 +0100)]
Ignore GNU Lightning's submodules

We do not want nor need the "gnulib" submodule that comes with GNU
Lightning.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
4 months agogpu_unai: more asm
notaz [Sat, 23 Nov 2024 23:32:12 +0000 (01:32 +0200)]
gpu_unai: more asm

4 months agogpu_unai: avoid unneeded gouraud calculations
notaz [Wed, 20 Nov 2024 00:41:04 +0000 (02:41 +0200)]
gpu_unai: avoid unneeded gouraud calculations

4 months agorect quad optimizations
notaz [Mon, 18 Nov 2024 01:15:32 +0000 (03:15 +0200)]
rect quad optimizations

4 months agocspace_arm: slight improvements
notaz [Sun, 17 Nov 2024 22:04:49 +0000 (00:04 +0200)]
cspace_arm: slight improvements

...maybe

4 months agoMerge branch 'master' into libretro
notaz [Sun, 17 Nov 2024 02:53:44 +0000 (04:53 +0200)]
Merge branch 'master' into libretro

4 months agotry another macro for arm vfp
notaz [Sun, 17 Nov 2024 02:48:14 +0000 (04:48 +0200)]
try another macro for arm vfp

4 months agoMerge branch 'master' into libretro
notaz [Sun, 17 Nov 2024 02:33:50 +0000 (04:33 +0200)]
Merge branch 'master' into libretro

4 months agodrc: restore scratch_buf_ptr
notaz [Sun, 17 Nov 2024 02:32:02 +0000 (04:32 +0200)]
drc: restore scratch_buf_ptr

me from 2013 outsmarted myself from 2024 with this one

4 months agoMerge branch 'master' into libretro
notaz [Sun, 17 Nov 2024 01:43:24 +0000 (03:43 +0200)]
Merge branch 'master' into libretro

4 months agodrc: eliminate a global from get_addr_ht
notaz [Sun, 17 Nov 2024 01:33:53 +0000 (03:33 +0200)]
drc: eliminate a global from get_addr_ht

4 months agogpu_unai: switch back to older DIV_MULTINV behavior
notaz [Sun, 17 Nov 2024 00:19:18 +0000 (02:19 +0200)]
gpu_unai: switch back to older DIV_MULTINV behavior

caused polygon "cracks" if compiled on gcc 10.2 (devkitARM release 55),
but seems ok on gcc 11.4 or gcc 14.2 (devkitARM release 65)

libretro/pcsx_rearmed#852

4 months agoarm: make sure RunFast is on
notaz [Sun, 17 Nov 2024 00:17:52 +0000 (02:17 +0200)]
arm: make sure RunFast is on

seems already to be the case on 3ds at least

4 months agogpulib: try to reduce global reload
notaz [Wed, 13 Nov 2024 23:20:47 +0000 (01:20 +0200)]
gpulib: try to reduce global reload

espacially bad on arm32 with -pie (which is on by default):
   text    data     bss     dec     hex filename
   9904       0    4444   14348    380c plugins/gpulib/gpu.o # before
   9128       0    4444   13572    3504 plugins/gpulib/gpu.o # after

4 months agogit subrepo pull (merge) deps/libchdr
notaz [Thu, 14 Nov 2024 23:40:02 +0000 (01:40 +0200)]
git subrepo pull (merge) deps/libchdr

subrepo:
  subdir:   "deps/libchdr"
  merged:   "b3974651"
upstream:
  origin:   "https://github.com/rtissera/libchdr"
  branch:   "master"
  commit:   "b3974651"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "57de7d6"

4 months agoMerge branch 'master' into libretro
notaz [Thu, 14 Nov 2024 23:39:08 +0000 (01:39 +0200)]
Merge branch 'master' into libretro

4 months agoupdate libchdr
notaz [Thu, 14 Nov 2024 23:37:37 +0000 (01:37 +0200)]
update libchdr

4 months agoavoid -Wno-format in general case
notaz [Thu, 14 Nov 2024 23:29:23 +0000 (01:29 +0200)]
avoid -Wno-format in general case

need this only for libchdr wanting to print int32_t on platforms
where int32_t is long int
libretro/pcsx_rearmed#851

4 months agogpu_unai: clean up ilace_mask
notaz [Sun, 10 Nov 2024 16:38:18 +0000 (18:38 +0200)]
gpu_unai: clean up ilace_mask

do_cmd_list() was no place for it.
It should also alternate odd/even lines but I leave that for later.

4 months agogpu_unai: drop pixel_skip
notaz [Sun, 10 Nov 2024 16:25:15 +0000 (18:25 +0200)]
gpu_unai: drop pixel_skip

it's not possible to enable it so no need to check it on each primitive

4 months agostandalone: unbreak .exe mode
notaz [Sun, 10 Nov 2024 15:54:28 +0000 (17:54 +0200)]
standalone: unbreak .exe mode

4 months agoMerge branch 'master' into libretro
notaz [Fri, 8 Nov 2024 23:13:04 +0000 (01:13 +0200)]
Merge branch 'master' into libretro

4 months agolibretro: don't make cycle_multiplier depend on device
notaz [Fri, 8 Nov 2024 00:41:35 +0000 (02:41 +0200)]
libretro: don't make cycle_multiplier depend on device

It causes different compatibility on different devices.
If the user wants to win some fps this way, they should just
change their config.

4 months agotiming hack +1
notaz [Fri, 8 Nov 2024 00:38:17 +0000 (02:38 +0200)]
timing hack +1

libretro/pcsx_rearmed#848

4 months ago3ds: allow compiling with just DEVKITPRO set
notaz [Thu, 7 Nov 2024 21:40:32 +0000 (23:40 +0200)]
3ds: allow compiling with just DEVKITPRO set

4 months agocdrom: fix wrong logic with cdr.Prev
notaz [Thu, 7 Nov 2024 00:23:41 +0000 (02:23 +0200)]
cdrom: fix wrong logic with cdr.Prev

4 months agofix too early notify
notaz [Wed, 6 Nov 2024 23:58:34 +0000 (01:58 +0200)]
fix too early notify

drc mem setup needs hw regs loaded

4 months ago3ds: no dynarec thread when 'auto'
notaz [Tue, 5 Nov 2024 00:46:05 +0000 (02:46 +0200)]
3ds: no dynarec thread when 'auto'

4 months agogpu_unai: some new asm
notaz [Tue, 5 Nov 2024 00:42:18 +0000 (02:42 +0200)]
gpu_unai: some new asm

5 months agoinclude: Update lightning.h to upstream version
Paul Cercueil [Fri, 1 Nov 2024 23:37:10 +0000 (00:37 +0100)]
include: Update lightning.h to upstream version

Update the local lightning.h to a version generated from the latest
upstream.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
5 months agogit subrepo pull --force --remote=https://git.savannah.gnu.org/git/lightning.git...
Paul Cercueil [Fri, 1 Nov 2024 23:32:24 +0000 (00:32 +0100)]
git subrepo pull --force --remote=https://git.savannah.gnu.org/git/lightning.git --branch=master --update deps/lightning

subrepo:
  subdir:   "deps/lightning"
  merged:   "808fdde9e8"
upstream:
  origin:   "https://git.savannah.gnu.org/git/lightning.git"
  branch:   "master"
  commit:   "808fdde9e8"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

5 months agogpu_unai: move the line loop into the driver func
notaz [Fri, 1 Nov 2024 00:33:01 +0000 (02:33 +0200)]
gpu_unai: move the line loop into the driver func

no need to repeat some of the setup on each line,
this also prepares for a full asm implementation of some drivers

5 months agogpulib: use mmap callbacks for platforms that have it
notaz [Fri, 1 Nov 2024 00:04:33 +0000 (02:04 +0200)]
gpulib: use mmap callbacks for platforms that have it

I think this was lost in some refactoring.
Also use minimum alignment of at least (x86) cache line size.

5 months agogpu_neon: mask before compare
notaz [Fri, 1 Nov 2024 00:02:55 +0000 (02:02 +0200)]
gpu_neon: mask before compare

5 months agocdriso: missing null check
notaz [Fri, 1 Nov 2024 00:00:34 +0000 (02:00 +0200)]
cdriso: missing null check