pcsx_rearmed.git
23 months agodrc: adjust ld_use_hazard
notaz [Sat, 23 Sep 2023 20:57:36 +0000 (23:57 +0300)]
drc: adjust ld_use_hazard

23 months agolog some info about bios and config
notaz [Thu, 21 Sep 2023 17:34:02 +0000 (20:34 +0300)]
log some info about bios and config

23 months agopsxbios: some more details
notaz [Wed, 20 Sep 2023 22:17:37 +0000 (01:17 +0300)]
psxbios: some more details

23 months agocdrom: some report mode details
notaz [Wed, 20 Sep 2023 19:49:40 +0000 (22:49 +0300)]
cdrom: some report mode details

trusting mednafen on this one
libretro/pcsx_rearmed#762

23 months agoinput changes part3
notaz [Tue, 19 Sep 2023 22:56:41 +0000 (01:56 +0300)]
input changes part3

notaz/pcsx_rearmed#309

23 months agopsxbios: allow custom api overrides
notaz [Mon, 18 Sep 2023 22:35:30 +0000 (01:35 +0300)]
psxbios: allow custom api overrides

BallBlazer Champions hooks custom heap funcs
notaz/pcsx_rearmed#307

23 months agopsxbios: maybe more accurate malloc
notaz [Mon, 18 Sep 2023 22:34:44 +0000 (01:34 +0300)]
psxbios: maybe more accurate malloc

23 months agoattempt to improve guncon defaults
notaz [Fri, 15 Sep 2023 23:41:06 +0000 (02:41 +0300)]
attempt to improve guncon defaults

The previous change wrongly introduced resolution into the calculation
which is unneeded because input is not pixel coordinates.

23 months agocleanup the input mess, part2
notaz [Thu, 14 Sep 2023 22:18:13 +0000 (01:18 +0300)]
cleanup the input mess, part2

23 months agoyet more timing hacks
notaz [Wed, 13 Sep 2023 22:19:28 +0000 (01:19 +0300)]
yet more timing hacks

libretro/pcsx_rearmed#758

23 months agopsxbios: fix warnings
notaz [Wed, 13 Sep 2023 21:10:41 +0000 (00:10 +0300)]
psxbios: fix warnings

23 months agopsxbios: unbreak input
notaz [Wed, 13 Sep 2023 20:58:27 +0000 (23:58 +0300)]
psxbios: unbreak input

23 months agoswitch over to libretro input code
notaz [Wed, 13 Sep 2023 19:23:58 +0000 (22:23 +0300)]
switch over to libretro input code

too much trouble with 2 separate codebases

23 months agoadjust irq10 and rcnt for pal
notaz [Sun, 10 Sep 2023 20:26:54 +0000 (23:26 +0300)]
adjust irq10 and rcnt for pal

libretro/pcsx_rearmed#723

23 months agolibretro: allow unlimited cheat length
notaz [Sun, 10 Sep 2023 19:06:56 +0000 (22:06 +0300)]
libretro: allow unlimited cheat length

notaz/pcsx_rearmed#306

23 months agopsxinterpreter: log reserved insn once
notaz [Sun, 10 Sep 2023 19:03:19 +0000 (22:03 +0300)]
psxinterpreter: log reserved insn once

23 months agocdrom: add a hack for bad rips
notaz [Sun, 10 Sep 2023 15:18:26 +0000 (18:18 +0300)]
cdrom: add a hack for bad rips

The game gets track times using CdlGetTN/CdlGetTD, but the rip only
keeps the data track. The game then wants to play a track using a
hardcoded track number, reading out of range of the list it got before,
sending garbage to CDC with infinite retries.

notaz/pcsx_rearmed#302

23 months agogpulib: handle vram copy in gpulib
notaz [Fri, 8 Sep 2023 21:39:34 +0000 (00:39 +0300)]
gpulib: handle vram copy in gpulib

use internal buffering according to mednafen
notaz/pcsx_rearmed#289

23 months agopsxbios: primitive chdir implementation
notaz [Tue, 5 Sep 2023 22:05:48 +0000 (01:05 +0300)]
psxbios: primitive chdir implementation

23 months agopsxbios: don't overwrite ra
notaz [Tue, 5 Sep 2023 19:03:32 +0000 (22:03 +0300)]
psxbios: don't overwrite ra

23 months agofix irq10 for the dynarec
notaz [Tue, 5 Sep 2023 18:07:01 +0000 (21:07 +0300)]
fix irq10 for the dynarec

libretro/pcsx_rearmed#723

23 months agogpulib: add some missed sync and flush
notaz [Mon, 4 Sep 2023 23:05:01 +0000 (02:05 +0300)]
gpulib: add some missed sync and flush

notaz/pcsx_rearmed#303

23 months agogpulib: new debug compile option for raw fb display
notaz [Mon, 4 Sep 2023 23:03:23 +0000 (02:03 +0300)]
gpulib: new debug compile option for raw fb display

23 months agopreliminary irq10 support
notaz [Mon, 4 Sep 2023 20:09:05 +0000 (23:09 +0300)]
preliminary irq10 support

libretro/pcsx_rearmed#723

23 months agoinitial hle support for lightrec
notaz [Sat, 2 Sep 2023 19:54:16 +0000 (22:54 +0300)]
initial hle support for lightrec

23 months agogpu_neon: more complicated overflow check
notaz [Thu, 31 Aug 2023 22:29:28 +0000 (01:29 +0300)]
gpu_neon: more complicated overflow check

23 months agopsxbios: rework firstfile/nextfile
notaz [Thu, 31 Aug 2023 20:50:09 +0000 (23:50 +0300)]
psxbios: rework firstfile/nextfile

23 months agogpu: handle wrapping somewhat
notaz [Thu, 31 Aug 2023 20:51:19 +0000 (23:51 +0300)]
gpu: handle wrapping somewhat

instead of crashing outright

23 months agofrontend: don't frameskip on fast forward
notaz [Thu, 31 Aug 2023 20:32:18 +0000 (23:32 +0300)]
frontend: don't frameskip on fast forward

It just glitches everything.
Standalone only, libretro does it's own thing.

2 years agomake GPUopen consistent everywhere
notaz [Wed, 30 Aug 2023 20:30:39 +0000 (23:30 +0300)]
make GPUopen consistent everywhere

libretro/pcsx_rearmed#752

2 years agopsxbios: implement get/setconf
notaz [Tue, 29 Aug 2023 21:43:15 +0000 (00:43 +0300)]
psxbios: implement get/setconf

2 years agotry to unbreak bigendian
notaz [Tue, 29 Aug 2023 00:28:40 +0000 (03:28 +0300)]
try to unbreak bigendian

always struggling with it
libretro/pcsx_rearmed#753

2 years agoFix emscripten build
Julien Loir [Mon, 28 Aug 2023 20:46:34 +0000 (22:46 +0200)]
Fix emscripten build

2 years agosome missing error handling
notaz [Mon, 28 Aug 2023 20:55:01 +0000 (23:55 +0300)]
some missing error handling

pointed out by gcc analyzer

2 years agopsxbios: assorted changes
notaz [Mon, 28 Aug 2023 20:27:57 +0000 (23:27 +0300)]
psxbios: assorted changes

fixes of more bugs, I'm not sure

2 years agopsxbios: fix wrong regs in syscall handler
notaz [Sun, 27 Aug 2023 20:22:53 +0000 (23:22 +0300)]
psxbios: fix wrong regs in syscall handler

2 years agogpulib: don't corrupt memory on garbage commands
notaz [Sun, 27 Aug 2023 20:21:36 +0000 (23:21 +0300)]
gpulib: don't corrupt memory on garbage commands

2 years agopsxbios: Load() flushes cache
notaz [Sun, 27 Aug 2023 15:23:57 +0000 (18:23 +0300)]
psxbios: Load() flushes cache

2 years agopsxbios: unbreak bcopy
notaz [Sun, 27 Aug 2023 14:39:54 +0000 (17:39 +0300)]
psxbios: unbreak bcopy

wasn't paying attention

2 years agodrc: allow to execute bios even in hle mode
notaz [Sat, 26 Aug 2023 23:04:46 +0000 (02:04 +0300)]
drc: allow to execute bios even in hle mode

some instructions are now placed there

2 years agopsxbios: add missing clearing for copy related functions
notaz [Sat, 26 Aug 2023 22:08:45 +0000 (01:08 +0300)]
psxbios: add missing clearing for copy related functions

notaz/pcsx_rearmed#300

2 years agodrc: adjust debugging code to work with hle bios
notaz [Sat, 26 Aug 2023 22:07:19 +0000 (01:07 +0300)]
drc: adjust debugging code to work with hle bios

2 years agoreduce some code duplication
notaz [Sat, 26 Aug 2023 22:01:46 +0000 (01:01 +0300)]
reduce some code duplication

2 years agospu: adjust irqs again
notaz [Fri, 25 Aug 2023 20:32:14 +0000 (23:32 +0300)]
spu: adjust irqs again

this begs for hw testing, but I don't have the setup right now...

libretro/pcsx_rearmed#746

2 years agospu: rm bunch of unused functions
notaz [Fri, 25 Aug 2023 19:39:19 +0000 (22:39 +0300)]
spu: rm bunch of unused functions

2 years agogpu_neon: some hack to enhanced mode
notaz [Thu, 24 Aug 2023 21:06:31 +0000 (00:06 +0300)]
gpu_neon: some hack to enhanced mode

2 years agogpu_neon: don't crash on large primitives in enhancement mode
notaz [Thu, 24 Aug 2023 20:07:56 +0000 (23:07 +0300)]
gpu_neon: don't crash on large primitives in enhancement mode

2 years agogpu_neon: rework buffer selection
notaz [Sun, 20 Aug 2023 19:38:03 +0000 (22:38 +0300)]
gpu_neon: rework buffer selection

to fix MGS codec and maybe more

2 years agofrontend: accept more bios
notaz [Thu, 17 Aug 2023 21:59:35 +0000 (00:59 +0300)]
frontend: accept more bios

2 years agotry to emulate borders properly
notaz [Wed, 16 Aug 2023 22:55:11 +0000 (01:55 +0300)]
try to emulate borders properly

2 years agomore timing hacks
notaz [Sat, 19 Aug 2023 21:04:59 +0000 (00:04 +0300)]
more timing hacks

2 years agopsxbios: remove some globals
notaz [Thu, 17 Aug 2023 19:49:26 +0000 (22:49 +0300)]
psxbios: remove some globals

2 years agogpu_neon: change enhancement_buf selection
notaz [Wed, 16 Aug 2023 23:38:32 +0000 (02:38 +0300)]
gpu_neon: change enhancement_buf selection

Not sure what was the idea there but it caused rightmost column of
things simetimes to not get rendered, like in Alundra 2 loading
screens and FMVs.

2 years agocdrom: more timing hacks
notaz [Wed, 16 Aug 2023 20:24:28 +0000 (23:24 +0300)]
cdrom: more timing hacks

2 years agospu: add forgotten prevflags checking
notaz [Wed, 16 Aug 2023 19:59:42 +0000 (22:59 +0300)]
spu: add forgotten prevflags checking

forgot in 3113a160828f9353715e4b8cc1041d9c86162df2

2 years agopsxbios: more pad stuff
notaz [Tue, 15 Aug 2023 20:06:33 +0000 (23:06 +0300)]
psxbios: more pad stuff

maybe done?

2 years agospu: clear on init
notaz [Mon, 14 Aug 2023 21:16:22 +0000 (00:16 +0300)]
spu: clear on init

Otherwise some residual stuff seems to carry over between games,
especially in hle mode.

2 years agospu: implement volume regs somewhat
notaz [Tue, 15 Aug 2023 22:01:37 +0000 (01:01 +0300)]
spu: implement volume regs somewhat

crash2 seems to read them, unclear what for

2 years agopsxbios: some assorted changes
notaz [Mon, 14 Aug 2023 20:49:23 +0000 (23:49 +0300)]
psxbios: some assorted changes

2 years agodma: should clear both start bits
notaz [Mon, 14 Aug 2023 20:47:07 +0000 (23:47 +0300)]
dma: should clear both start bits

at least that's how I understand nocash

2 years agopsxbios: try to improve initial boot state
notaz [Mon, 14 Aug 2023 20:44:25 +0000 (23:44 +0300)]
psxbios: try to improve initial boot state

2 years agoconfigure: rm some leftover
notaz [Mon, 14 Aug 2023 20:19:37 +0000 (23:19 +0300)]
configure: rm some leftover

2 years agopsxbios: implement some pad reading details
notaz [Sun, 13 Aug 2023 22:36:03 +0000 (01:36 +0300)]
psxbios: implement some pad reading details

2 years agodma: clean up
notaz [Sun, 13 Aug 2023 16:15:31 +0000 (19:15 +0300)]
dma: clean up

libretro/pcsx_rearmed#740

2 years agopsxbios: rewrite event handling
notaz [Sat, 12 Aug 2023 22:59:20 +0000 (01:59 +0300)]
psxbios: rewrite event handling

no more mapping to some internal array

2 years agolog unhandled io more clearly
notaz [Sat, 12 Aug 2023 16:05:35 +0000 (19:05 +0300)]
log unhandled io more clearly

2 years agoemulate pending irq bit somewhat
notaz [Sat, 12 Aug 2023 16:01:22 +0000 (19:01 +0300)]
emulate pending irq bit somewhat

2 years agotry to fix reset in HLE mode
notaz [Thu, 10 Aug 2023 23:10:55 +0000 (02:10 +0300)]
try to fix reset in HLE mode

2 years agopsxbios: handle dynamic CB alloc
notaz [Thu, 10 Aug 2023 23:08:29 +0000 (02:08 +0300)]
psxbios: handle dynamic CB alloc

SYSTEM.CNF TCB/EVENT settings are used now

2 years agomisc: accept a path without slash
notaz [Thu, 10 Aug 2023 23:01:11 +0000 (02:01 +0300)]
misc: accept a path without slash

2 years agodrc: fix reg alloc for div
notaz [Thu, 10 Aug 2023 17:53:40 +0000 (20:53 +0300)]
drc: fix reg alloc for div

libretro/pcsx_rearmed#745

2 years agospu: some cdda/xa reverb support
notaz [Wed, 9 Aug 2023 23:29:53 +0000 (02:29 +0300)]
spu: some cdda/xa reverb support

not for threaded spu as it'd race with writes and I don't want to use a
mutex or do extra copying there

libretro/pcsx_rearmed#733

2 years agopsxbios: completely rework exception handling
notaz [Tue, 8 Aug 2023 22:51:46 +0000 (01:51 +0300)]
psxbios: completely rework exception handling

should be much closer to the real thing

2 years agolibretro: add (psx) exe and iso to valid_extensions
notaz [Sun, 6 Aug 2023 18:01:09 +0000 (21:01 +0300)]
libretro: add (psx) exe and iso to valid_extensions

doesn't seem to work though?

2 years agolibretro: understand psx exes
notaz [Sun, 6 Aug 2023 17:46:16 +0000 (20:46 +0300)]
libretro: understand psx exes

2 years agoupdate libchdr
notaz [Sun, 6 Aug 2023 16:38:38 +0000 (19:38 +0300)]
update libchdr

2 years agocdriso: clean up mode1 detection
notaz [Sun, 6 Aug 2023 16:22:42 +0000 (19:22 +0300)]
cdriso: clean up mode1 detection

libretro/pcsx_rearmed#743

2 years agolibretro: accept ps1_rom.bin (and similar) bios too
notaz [Thu, 3 Aug 2023 21:25:21 +0000 (00:25 +0300)]
libretro: accept ps1_rom.bin (and similar) bios too

2 years agodrc: disable some weird code
notaz [Thu, 3 Aug 2023 21:22:45 +0000 (00:22 +0300)]
drc: disable some weird code

2 years agodrc: adjust load/store checks
notaz [Wed, 2 Aug 2023 22:30:56 +0000 (01:30 +0300)]
drc: adjust load/store checks

2 years agodrc: adjust alignment checking
notaz [Wed, 2 Aug 2023 22:28:27 +0000 (01:28 +0300)]
drc: adjust alignment checking

2 years agodrc: adjust MAXBLOCK
notaz [Wed, 2 Aug 2023 22:24:14 +0000 (01:24 +0300)]
drc: adjust MAXBLOCK

it was stopping at MAXBLOCK/2 in most cases anyway, so adjust
the arrays for the size that's actually used

2 years agoarm64: use ldp/stp more
notaz [Wed, 2 Aug 2023 22:22:58 +0000 (01:22 +0300)]
arm64: use ldp/stp more

2 years agodrc: some cleanup
notaz [Wed, 2 Aug 2023 22:20:45 +0000 (01:20 +0300)]
drc: some cleanup

2 years agodma: don't copy out of range
notaz [Sat, 29 Jul 2023 23:31:02 +0000 (02:31 +0300)]
dma: don't copy out of range

it should wrap, but that's not practical so just limit for now
libretro/pcsx_rearmed#740

2 years agodrc: try to prevent wrong eviction
notaz [Sat, 29 Jul 2023 21:08:55 +0000 (00:08 +0300)]
drc: try to prevent wrong eviction

2 years agodrc: update according to the interpreter (3)
notaz [Thu, 27 Jul 2023 00:09:34 +0000 (03:09 +0300)]
drc: update according to the interpreter (3)

2 years agodrc: update according to interpreter (2)
notaz [Tue, 25 Jul 2023 22:23:06 +0000 (01:23 +0300)]
drc: update according to interpreter (2)

2 years agodrc: optional address error exception support
notaz [Sun, 23 Jul 2023 22:28:07 +0000 (01:28 +0300)]
drc: optional address error exception support

2 years agodrc: update according to interpreter
notaz [Fri, 21 Jul 2023 20:33:10 +0000 (23:33 +0300)]
drc: update according to interpreter

much larger commit than I'd like but it's too much work to split it

2 years agotry to fix win32 build
notaz [Mon, 24 Jul 2023 20:20:12 +0000 (23:20 +0300)]
try to fix win32 build

HAVE_MMAP etc clashing with libretro-common

2 years agoSupport compiling without posix_memalign() function
Paul Cercueil [Sat, 11 Feb 2023 14:47:30 +0000 (14:47 +0000)]
Support compiling without posix_memalign() function

Add NO_POSIX_MEMALIGN option in Makefile.libretro to support platform
that don't provide the posix_memalign() function.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoSupport compiling without pthreads
Paul Cercueil [Sat, 11 Feb 2023 14:22:21 +0000 (14:22 +0000)]
Support compiling without pthreads

Add NO_PTHREAD option in the Makefile, which can be used on platforms
that don't support pthreads.

Since dfsound/spu.c disables threading support on Win32 and platform
defining NO_OS (Switch, 3DS, PSP Vita), mark them as not having
pthreads.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoSupport compiling without mmap functions
Paul Cercueil [Sat, 11 Feb 2023 14:17:13 +0000 (14:17 +0000)]
Support compiling without mmap functions

Add NO_MMAP option in Makefile.libretro that can be turned ON on
platforms that don't support mmap(), and for which memory mapping hooks
must be provided.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agopsxinterpreter: adjust COP decoding
notaz [Thu, 20 Jul 2023 21:04:03 +0000 (00:04 +0300)]
psxinterpreter: adjust COP decoding

2 years agopsxinterpreter: yet more exceptions, new config option
notaz [Wed, 19 Jul 2023 22:51:46 +0000 (01:51 +0300)]
psxinterpreter: yet more exceptions, new config option

2 years agopsxinterpreter: rework load delays
notaz [Mon, 17 Jul 2023 22:49:46 +0000 (01:49 +0300)]
psxinterpreter: rework load delays

2 years agopsxinterpreter: rework branching in ds
notaz [Mon, 17 Jul 2023 17:54:19 +0000 (20:54 +0300)]
psxinterpreter: rework branching in ds

2 years agopsxinterpreter: tons of new exceptions
notaz [Sun, 16 Jul 2023 22:18:05 +0000 (01:18 +0300)]
psxinterpreter: tons of new exceptions

does anything need any of this though?

2 years agopsxinterpreter: assorted fixes
notaz [Sat, 15 Jul 2023 21:11:04 +0000 (00:11 +0300)]
psxinterpreter: assorted fixes