Autechre [Thu, 24 Feb 2022 13:48:57 +0000 (14:48 +0100)]
Merge pull request #616 from pcercuei/update-lightrec-
20220222
Add missing lightning.h include file
Paul Cercueil [Tue, 22 Feb 2022 20:46:56 +0000 (20:46 +0000)]
Add missing lightning.h include file
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Autechre [Tue, 22 Feb 2022 07:21:06 +0000 (08:21 +0100)]
Merge pull request #615 from pcercuei/update-lightrec-
20220220
Update Lightning/Lightrec to the latest upstream version
Paul Cercueil [Sat, 19 Feb 2022 21:30:21 +0000 (21:30 +0000)]
lightrec: Update to latest Lightrec API
Update the glue code to use the API of the latest Lightrec.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Paul Cercueil [Sat, 19 Feb 2022 22:02:50 +0000 (22:02 +0000)]
lightrec: Add custom lightrec-config.h
Add our own lightrec-config.h outside the deps/lightrec/ tree, so that
it won't be removed when the subrepo is updated.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Paul Cercueil [Sun, 20 Feb 2022 00:16:48 +0000 (00:16 +0000)]
git subrepo pull --force deps/lightrec
subrepo:
subdir: "deps/lightrec"
merged: "
d90de684"
upstream:
origin: "https://github.com/pcercuei/lightrec.git"
branch: "master"
commit: "
d90de684"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Paul Cercueil [Sat, 19 Feb 2022 23:20:12 +0000 (23:20 +0000)]
git subrepo pull --force deps/lightning
subrepo:
subdir: "deps/lightning"
merged: "
876c1043"
upstream:
origin: "https://git.savannah.gnu.org/git/lightning.git"
branch: "master"
commit: "
876c1043"
git-subrepo:
version: "0.4.3"
origin: "https://github.com/ingydotnet/git-subrepo.git"
commit: "
2f68596"
Paul Cercueil [Sun, 20 Feb 2022 00:15:43 +0000 (00:15 +0000)]
Fix GTE directly referencing psxRegs
It should reference the 'regs' function argument instead.
This makes it possible to use the latest Lightrec code with its new API,
which has internal CP2 registers, without having to copy the registers
back and forth between the internal ones and the psxRegs ones.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
notaz [Thu, 17 Feb 2022 00:16:47 +0000 (02:16 +0200)]
Revert "clear Index0 data FIFO flag (#241)"
This reverts commit
657d601ffa80d8f1f034c44d0aaf84010fa36e5f.
It broke Driver 2 (#612).
notaz [Tue, 15 Feb 2022 23:20:31 +0000 (01:20 +0200)]
drc: try not to end the block prematurely
Fixes:
4919de1e88095f00466f6674323d518fc520b0db
(was not really broken, only load delay detection can't work with
blocks that are too small)
notaz [Tue, 15 Feb 2022 21:17:42 +0000 (23:17 +0200)]
psxinterpreter: unbreak load delay handling
Fixes:
943a507a4156b8f5b00e4431152e41eeb4dc6f3d
notaz [Sat, 12 Feb 2022 20:58:23 +0000 (22:58 +0200)]
drc: add a clock override for Super Robot Taisen Alpha
libretro/pcsx_rearmed#610
notaz [Fri, 11 Feb 2022 20:55:07 +0000 (22:55 +0200)]
revive standalone build
Otherwise it's hard to figure out what's wrong when upstream works
but libretro fork doesn't for some game.
The submodule is not needed for libretro build and should do no harm
(maybe?).
notaz [Sun, 6 Feb 2022 23:41:12 +0000 (01:41 +0200)]
drc: try to make some passes not as slow, part 2
notaz [Sun, 6 Feb 2022 20:38:54 +0000 (22:38 +0200)]
drc: put passes in their own functions
mostly for profiling
notaz [Sat, 5 Feb 2022 22:10:18 +0000 (00:10 +0200)]
drc: try to make some passes not as slow
notaz [Thu, 3 Feb 2022 00:04:52 +0000 (02:04 +0200)]
drc: use optimized get_reg
arm32-only for now
notaz [Wed, 2 Feb 2022 21:40:48 +0000 (23:40 +0200)]
drc: rm unneeded &63 masking
64bit leftover
gameblabla [Mon, 7 Feb 2022 19:17:34 +0000 (19:17 +0000)]
clear Index0 data FIFO flag (#241)
Merge PCSX Redux fix.
This is what he had to say about it :
"So, this commit works around/fixes two issues with loading unirom.
There's a fix for logging invalid commands which should be pretty straight forward. The other change is around the FIFO flag.
Not really experienced with debugging/verifying this sort of thing so not feeling really confident the change is "right", though every game I've tried so far still seem to work as expected.
There's still something going on with not having an iso mounted that I haven't quite nailed down. Even having the iso mounted with "lid open" gives a bootable result. Feel like I'm going in circles a bit for something that might be an easy fix. Unirom is technically usable via ISO, but the unirom exe freezes if no iso is loaded"
Co-authored-by: johnbaumann <76951440+johnbaumann@users.noreply.github.com>
gameblabla [Fri, 4 Feb 2022 06:05:09 +0000 (06:05 +0000)]
Merge pull request #609 from gameblabla/fixtypocdrom
Fix typo for DOA pause resume fix.
gameblabla [Fri, 4 Feb 2022 06:02:35 +0000 (07:02 +0100)]
Fix typo for DOA pause resume fix.
Ooops, looks like i made a mistake :P
notaz [Mon, 31 Jan 2022 23:50:12 +0000 (01:50 +0200)]
gpu_neon: fix apparent missing msb setting in blend_blocks_textured_add_fourth
The source bit is taken, which also enables semi transparency,
so if we did blending the bit must be set.
notaz [Mon, 31 Jan 2022 00:07:25 +0000 (02:07 +0200)]
gpu_neon: reserved bpp is 16bpp, not 4bpp
notaz [Sun, 30 Jan 2022 16:40:03 +0000 (18:40 +0200)]
drc: don't abort on game crash
Was not the best user experience, with this the user can load
another game at least.
notaz [Sat, 29 Jan 2022 23:39:40 +0000 (01:39 +0200)]
drc: add apparently missing ROREG loading
sjump_assemble had different loading for taken/not taken cases for
whatever reason, and I added ROREG loading according to INVCP, which
was (maybe?) erroneously missing for 'not taken' case. Fixes CTR crash
shortly after starting driving.
notaz [Sat, 29 Jan 2022 23:37:45 +0000 (01:37 +0200)]
drc: some more debug logging
notaz [Sat, 29 Jan 2022 23:50:49 +0000 (01:50 +0200)]
Merge pull request #598 from pcercuei/lightrec_events
Unlock Lightrec to its full potential
Paul Cercueil [Sat, 29 Jan 2022 11:35:07 +0000 (11:35 +0000)]
lightrec: Run dynarec until next interrupt
Instead of running the dynarec once per block, which creates a huge
overhead as entering/exiting the dynarec isn't very fast, run only the
number of cycles until the next interrupt.
This boosts performance by a huge margin. On my PC, running the intro
video in MediEvil goes from using 34-36% CPU usage down to 16-17%.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Co-developed-by: notaz <notasas@gmail.com>
Signed-off-by: notaz <notasas@gmail.com>
notaz [Thu, 27 Jan 2022 23:09:44 +0000 (01:09 +0200)]
drc: add seemingly missing double-alloc check
seems like it was possible to alloc the same reg on 2 host regs
edit: found after all the debugging: mupen64plus/mupen64plus-core@
8f4cc2bdc93c41801077abda3197a3cb3b89cbb7
notaz [Thu, 27 Jan 2022 22:02:09 +0000 (00:02 +0200)]
drc: clear dirty flag when deallocating a reg
In later stages it may place special regs like AGEN there, and things
like AGEN being marked dirty seemed wrong, although probably harmless
as there is no code to writeback AGEN.
notaz [Thu, 27 Jan 2022 21:54:42 +0000 (23:54 +0200)]
drc: init some variables, adjust comments
no proof that is actually needed, but it felt like some path could
pick up something uninitialized
notaz [Wed, 26 Jan 2022 20:09:22 +0000 (22:09 +0200)]
drc: emulate break opcode
sort-of-but-not-really used by "F1 2000"
(SLUS01120, not "Formula One 2000").
notaz [Wed, 26 Jan 2022 20:02:18 +0000 (22:02 +0200)]
drc: don't cache psxRegs.interrupt
cdrom code can now cancel interrupts, so must always use the global
Paul Cercueil [Mon, 24 Jan 2022 23:43:10 +0000 (23:43 +0000)]
lightrec: Factorize memhandler state restore into a single function
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
notaz [Mon, 24 Jan 2022 18:49:04 +0000 (20:49 +0200)]
drc: another hack to try to get Vita to work
notaz [Sun, 23 Jan 2022 23:49:45 +0000 (01:49 +0200)]
drc: a bit more sophisticated f1 hack
yes it sucks, I know...
notaz [Sun, 23 Jan 2022 20:57:06 +0000 (22:57 +0200)]
always describe to get git hash in log messages
notaz [Sun, 23 Jan 2022 14:19:38 +0000 (16:19 +0200)]
vita: add a seemingly missing include
notaz [Sun, 23 Jan 2022 14:14:39 +0000 (16:14 +0200)]
drc: possibly the missing piece for Vita
Lost during merge of dynarec fixes.
_newlib_vm_size_user might be the critical bit that overrides
a weak symbol in bootstrap/vita/sbrk.c
notaz [Sat, 22 Jan 2022 23:24:36 +0000 (01:24 +0200)]
drc: align size passed to mprotect
Maybe this makes svcControlProcessMemory() not do it's work there?
It doesn't seem to be failing though.
notaz [Sat, 22 Jan 2022 20:25:05 +0000 (22:25 +0200)]
spu: try to eliminate some cdda clicks/pops
cdda feeds less data than consumes due to poor timings,
especially for PAL
notaz [Sat, 22 Jan 2022 20:20:42 +0000 (22:20 +0200)]
spu: save/restore decode_pos
SPUOSSFreeze_t conveniently had padding space for it
notaz [Sat, 22 Jan 2022 20:15:54 +0000 (22:15 +0200)]
cdrom: play cdda regardless of report mode
Vib-Ribbon doesn't use it while playing.
Autechre [Tue, 21 Dec 2021 20:10:18 +0000 (21:10 +0100)]
Merge pull request #587 from notaz/libretro_drc_fixes2
Libretro drc fixes2
notaz [Tue, 14 Dec 2021 22:25:08 +0000 (00:25 +0200)]
libretro: bump version for dynarec fixes
... and let 'l' show that it's libretro fork build and not upstream
notaz [Tue, 14 Dec 2021 22:04:11 +0000 (00:04 +0200)]
drc: always clear full decoded_insn
Some stuff was left after INTCALL conversion and broke branch in delay
slot handling, like in Rayman 2.
notaz [Tue, 14 Dec 2021 19:10:58 +0000 (21:10 +0200)]
minor cleanup
notaz [Tue, 14 Dec 2021 19:09:45 +0000 (21:09 +0200)]
fix some issues and warnings seen on ctr build
notaz [Tue, 14 Dec 2021 19:03:25 +0000 (21:03 +0200)]
drc: reapply some libretro changes
Autechre [Tue, 14 Dec 2021 12:41:28 +0000 (13:41 +0100)]
Merge pull request #586 from notaz/libretro_overwrite_drc
overwrite dynarec related code with upstream version
notaz [Mon, 13 Dec 2021 23:14:23 +0000 (01:14 +0200)]
overwrite dynarec related code with upstream version
This gives a fast arm64 dynarec and many other ari64 dynarec fixes
from upstream. Although I tried to take care not to overwrite libretro
specific changes like lightrec, some things may have got lost or
broken. Only tested on rpi4 in 64bit mode.
Warning: untested on Android and most other platforms. If there are
issues from this merge, post a comment and tag me and I'll try to take
a look at it while I'm still active, at least for the time being.
gameblabla [Wed, 10 Nov 2021 19:28:45 +0000 (19:28 +0000)]
Merge pull request #579 from gameblabla/pio_writes_sen_lib
psxmem: Writes to PIO Expansion area have no effect.
gameblabla [Wed, 10 Nov 2021 19:27:06 +0000 (20:27 +0100)]
psxmem: Writes to PIO Expansion area have no effect.
This is related to the Tetris with Card Captor fix a while back.
However, i forgot to merge this one as well related to writes,
even though it was not really necessary to fix that particular game.
Co-authored-by: senquack <dansilsby@gmail.com>
gameblabla [Wed, 10 Nov 2021 19:25:15 +0000 (19:25 +0000)]
Merge pull request #578 from gameblabla/counters_lib
One more on odd lines for PAL HSYNC
gameblabla [Wed, 10 Nov 2021 19:23:55 +0000 (20:23 +0100)]
One more on odd lines for PAL HSYNC
As done by Duckstation
https://github.com/stenzek/duckstation/blob/
bbcf1c67d1aefd5de9cdc9c158f92bc7aaecaa63/src/core/gpu.h#L56
gameblabla [Wed, 10 Nov 2021 19:20:17 +0000 (19:20 +0000)]
Merge pull request #576 from gameblabla/cdrom_regression_remove
Remove CdlGetLocP hack
gameblabla [Wed, 10 Nov 2021 19:20:10 +0000 (19:20 +0000)]
Merge pull request #577 from gameblabla/cdrom_setloc_lib
Move CdlSetLoc to CdrInterrupt and return invalid arg error
gameblabla [Wed, 10 Nov 2021 19:16:02 +0000 (20:16 +0100)]
Move CdlSetLoc to CdrInterrupt and return invalid arg error
So far, i could only find Simple 1500 Series Vol. 31 - The Sound Novel to be affected by this.
In Duckstation, this was causing extra delays without it.
However in our case, this doesn't seem to be the case and i couldn't find much find about it.
gameblabla [Wed, 10 Nov 2021 19:05:09 +0000 (20:05 +0100)]
Remove CdlGetLocP hack
This was added back in 2013 or so in PCSX Rearmed
and according to some tests against Tomb Raider 1 (which is affected by the GetLocP code),
it works properly without this hack.
So let's just remove it as we are now doing it properly.
Notaz also forgot the reason why he introduced the hack
in the first place, see :
https://github.com/notaz/pcsx_rearmed/pull/235#issuecomment-
955026232
Autechre [Tue, 2 Nov 2021 10:35:59 +0000 (11:35 +0100)]
Merge pull request #574 from rtissera/rpi3_64
Add Raspberry Pi 3 64-bit target
Romain TISSERAND [Tue, 2 Nov 2021 09:55:17 +0000 (10:55 +0100)]
Add Raspberry Pi 3 64-bit target
gameblabla [Sat, 23 Oct 2021 22:15:27 +0000 (22:15 +0000)]
Merge pull request #569 from gameblabla/gte_stalling_libretro
GTE stalls/timings
gameblabla [Sat, 23 Oct 2021 22:03:24 +0000 (22:03 +0000)]
Merge pull request #571 from gameblabla/cdrom_audio_fix_attempt
Fix stutter before speech samples in Castlevania Symphony of the Night
gameblabla [Sat, 23 Oct 2021 22:00:04 +0000 (00:00 +0200)]
Hack fix for CDROM timings regression (Castlevania, Megaman X4)
See https://github.com/libretro/pcsx_rearmed/issues/557.
The CDROM timings changes from Redux fixed a bunch of games
(Crash Team Racing's intro no longer cuts off too early,
Worms Pinball gets further instead of just crashing,
FF8 Lunar Cry FMV no longer crashes etc...)
but it broke the other games that relied on ADPCM samples,
which is most noticeable in games like Castlevania or Megaman X4.
According to nicolasnoble, we should not cause a delay if seek destination is close to the current location.
However, this would require a lot more work so in the meantime,
let's do just that and add a comment.
Autechre [Thu, 14 Oct 2021 11:15:18 +0000 (13:15 +0200)]
Merge pull request #572 from gameblabla/cd_volume_fix_lib
Fix CD Volume issue in Star Wars Dark Forces
Autechre [Wed, 13 Oct 2021 21:35:04 +0000 (23:35 +0200)]
Merge pull request #564 from jdorigao/rpi1
Added rpi1 to makefile
gameblabla [Wed, 13 Oct 2021 20:21:08 +0000 (22:21 +0200)]
Fix CD Volume issue in Star Wars Dark Forces
CD Volume is 16-bits signed, not unsigned.
Otherwise in Star Wars - Dark Forces :
if you lower the music volume slider all the way down,
the volume will wrap around and instead be set at the highest volume.
gameblabla [Sun, 10 Oct 2021 16:30:12 +0000 (18:30 +0200)]
GTE stalls/timings
This is to fix an issue with Battle Arena Toshinden 1 going too fast.
Zero Divide is also said to be affected by this as well.
Note that this doesn't fix it for gte_arm.S :
We would still need to increase the cycle count here.
Co-authored-by: firnis <firnis@ya.ru>
Autechre [Sun, 10 Oct 2021 12:26:31 +0000 (14:26 +0200)]
Merge pull request #570 from Sanaki/drop_ps3
Revert "libretro: Add support for ps1_rom.bin (PS3 BIOS)"
Sanaki [Sun, 10 Oct 2021 09:59:18 +0000 (02:59 -0700)]
Revert "libretro: Add support for ps1_rom.bin (PS3 BIOS)"
This reverts commit
c5c20552af08fd4158cc0e7894c1798d95f0d35b.
gameblabla [Wed, 6 Oct 2021 05:06:39 +0000 (05:06 +0000)]
Merge pull request #567 from gameblabla/fix_minor_close_iso
Fix minor issue when closing ISO.
gameblabla [Wed, 6 Oct 2021 05:04:13 +0000 (07:04 +0200)]
Fix minor issue when closing ISO.
gameblabla [Tue, 5 Oct 2021 21:25:22 +0000 (21:25 +0000)]
Merge pull request #566 from gameblabla/neon_fix_libretro
Always look up verify_dirty literals from offsets by neonloop
gameblabla [Tue, 5 Oct 2021 21:17:54 +0000 (23:17 +0200)]
Always look up verify_dirty literals from offsets by neonloop
Literals are deduplicated, so there's no guarantee they will be stored
next to each other, even if they're written sequentially. verify_dirty
and get_bounds must use the offsets on each instruction, instead of
assuming values are stored sequentially.
Thanks neonloop for the fix
Co-authored-by: neonloop <neonloop@pm.me>
Juliano Dorigão [Tue, 5 Oct 2021 01:23:07 +0000 (21:23 -0400)]
Added rpi1 to makefile
twinaphex [Mon, 4 Oct 2021 00:25:55 +0000 (02:25 +0200)]
drflac - assume DRFLAC_NO_STDIO by default
gameblabla [Sat, 2 Oct 2021 17:40:53 +0000 (17:40 +0000)]
Merge pull request #563 from gameblabla/remove_junk
Remove junk files and fix lack of clearing icache when loading new games
gameblabla [Sat, 2 Oct 2021 17:36:43 +0000 (19:36 +0200)]
Remove junk files and fix regression in icache mode with Armored Core.
gameblabla [Sat, 2 Oct 2021 16:40:35 +0000 (16:40 +0000)]
Merge pull request #562 from gameblabla/cdrom_fixes_libretro_precautions
Revert some changes as they were not tested or are not required
gameblabla [Sat, 2 Oct 2021 16:39:05 +0000 (18:39 +0200)]
Revert some changes as they were not tested or are not required
Per feedback from notaz, thanks to him.
gameblabla [Sat, 2 Oct 2021 16:25:33 +0000 (16:25 +0000)]
Merge pull request #545 from gameblabla/icache_emulation
ICache emulation (Interpreter) from PCSX redux
gameblabla [Sat, 2 Oct 2021 16:23:49 +0000 (18:23 +0200)]
Fix comment to be more precise about lightrec's status.
gameblabla [Sat, 2 Oct 2021 16:14:44 +0000 (18:14 +0200)]
Culling off cache bits from the hardware addresses.
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
gameblabla [Sat, 2 Oct 2021 16:13:04 +0000 (18:13 +0200)]
Interpreter fixes for BREAK and a few other instructions.
This should fix F1 2000. (but it's possible that game
needs some tweaks to the CDROM timings as it's quite sensitive to them)
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
gameblabla [Sat, 2 Oct 2021 16:12:35 +0000 (18:12 +0200)]
[Interpreter] Link even if branch is not taken in BGEZAL/BLTZAL
Source :
grumpycoders/pcsx-redux@
c1a0569
Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
gameblabla [Sat, 2 Oct 2021 16:11:29 +0000 (18:11 +0200)]
OpenBus changes from PCSX-Redux
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
gameblabla [Sat, 2 Oct 2021 16:10:23 +0000 (18:10 +0200)]
Merge Icache emulation from PCSX Redux + Senquack changes from PCSX4ALL
See (Redux) :
https://github.com/grumpycoders/pcsx-redux/commit/
1923ce5
See original icache implementation (mirror of PCSX Reloaded):
https://github.com/gameblabla/pcsxr/commit/
6916151
Without icache emulation, F1 2001 will greatly misbehave :
if you accelerate, the car will go around like crazy.
With icache emulation, it works as intended.
Note that our code is slightly different from theirs as i found out that
having the icache arrays in psxregs would cause crashes so instead
what i'm doing is to taking them out of there and only allocating them
on the heap (due to their great size).
Known issue(s) : Instruction cache emulation code fails to run
Spyro 2 PAL version. (or is it because of SBI?)
Co-authored-by: Nicolas Noble <nicolasnoble@users.noreply.github.com>
Co-authored-by: senquack <dansilsby@gmail.com>
gameblabla [Sat, 2 Oct 2021 13:10:22 +0000 (13:10 +0000)]
Merge pull request #552 from libretro/fp_fix_libretro
Implement fix from Mednafen for Fantastic Pinball Kyuutenkai.
gameblabla [Sat, 2 Oct 2021 02:39:36 +0000 (02:39 +0000)]
Merge pull request #561 from gameblabla/sony_armored_fix_libretro
Fix for Armored Core misdetecting a Link cable being detected
gameblabla [Sat, 2 Oct 2021 02:37:04 +0000 (04:37 +0200)]
Fix for Armored Core misdetecting a Link cable being detected
For some reason, the game detects that a link cable is plugged in
and disables the local multiplayer as a result.
Thanks @sony for fixing the issue in their PS Classic branch, a
simpler fix is done here instead.
Co-authored-by: Sony
gameblabla [Sat, 25 Sep 2021 22:36:26 +0000 (22:36 +0000)]
Update custom-issue-report.md
Point out that people should try on PCSX-Redux, PCSX Reloaded... as well in case we suffer from a regression or forgot to merge a fix.
gameblabla [Sat, 25 Sep 2021 13:37:10 +0000 (13:37 +0000)]
Merge pull request #559 from gameblabla/cdrom_various_fixes
Various CDROM fixes from Duckstation and Mednafen
gameblabla [Sat, 25 Sep 2021 13:33:10 +0000 (15:33 +0200)]
Use the "magic numbers" from Duckstation for CDLPause
We need to make sure not to break Gundam Battle Assault 2 in PAL mode
as otherwise it will lockup.
Amusingly, Mednafen currently cannot run this game in PAL mode.
gameblabla [Sat, 25 Sep 2021 13:32:27 +0000 (15:32 +0200)]
Fix CdlGetTD according to Mednafen's implementation.
gameblabla [Sat, 25 Sep 2021 13:23:40 +0000 (15:23 +0200)]
CdlGetmode is GetParam, fix it according to Mednafen's implementation
The result size for GetParam (previously Getmode) should be only 5 and done this way.
Here's Mednafen implementation :
https://github.com/libretro-mirrors/mednafen-git/blob/
1899500078169e787f86eb5302a3f35abdaa8764/src/psx/cdc.cpp#L2095
Nocash's documentation also shows that our previous implementation was wrong :
https://problemkaputt.de/psx-spx.htm
(See CDROM Controller Command Summary section or CDROM - Status Commands)
gameblabla [Sat, 25 Sep 2021 13:22:35 +0000 (15:22 +0200)]
Don't throw an error for CdlGetQ.
I doubt this is used by any game but who knows.
See Mednafen for reference :
https://github.com/libretro-mirrors/mednafen-git/blob/
1899500078169e787f86eb5302a3f35abdaa8764/src/psx/cdc.cpp#L2527
gameblabla [Sat, 25 Sep 2021 13:22:00 +0000 (15:22 +0200)]
Improve SetLoc CDROM command from Duckstation
See Duckstation's CDROM for reference :
https://github.com/stenzek/duckstation/blob/
18241978ea056a81ff9847f0ad89658f886153ea/src/core/cdrom.cpp#L1087
gameblabla [Sat, 25 Sep 2021 13:20:52 +0000 (15:20 +0200)]
CdlSync should be NULL and return an error.
This has been confirmed by both Mednafen and nocash's documentation.
gameblabla [Sat, 25 Sep 2021 12:20:49 +0000 (14:20 +0200)]
Implement fix from Mednafen for Fantastic Pinball Kyuutenkai.
This is taken from the way Mednafen implemented it.
https://github.com/libretro-mirrors/mednafen-git/blob/
563b72e377fa8284559df4df0271108d4935c9f1/src/psx/cdc.cpp#L941
This properly fixes the freeze issue in Fantastic Pinball Kyuutenkai.
Thanks notaz for assisting me with the code.
It seems not to work properly on ARM though ?
gameblabla [Sat, 25 Sep 2021 11:58:19 +0000 (11:58 +0000)]
Merge pull request #558 from gameblabla/cdrom_fixes_libretro_popo
Merge several fixes from PCSX Redux and adjust delay for SetLocPending.