pcsx_rearmed.git
2 years agopsxinterpreter: reduce the use of globals
notaz [Fri, 9 Sep 2022 19:11:30 +0000 (22:11 +0300)]
psxinterpreter: reduce the use of globals

they induce penalties with -fPIC

2 years agoeasier logging of unhandled stuff
notaz [Thu, 8 Sep 2022 17:09:04 +0000 (20:09 +0300)]
easier logging of unhandled stuff

2 years agocdrom: partially emulate the fifo
notaz [Thu, 8 Sep 2022 18:13:25 +0000 (21:13 +0300)]
cdrom: partially emulate the fifo

2 years agodma: try more accurate timings
notaz [Thu, 8 Sep 2022 15:17:06 +0000 (18:17 +0300)]
dma: try more accurate timings

seems to help Legend of Mana

2 years agocdrom: get rid of pTransfer
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)

2 years agocdrom: don't reschedule irqs
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

2 years agocdrom: clean up command handling
notaz [Mon, 5 Sep 2022 20:47:10 +0000 (23:47 +0300)]
cdrom: clean up command handling

2 years agocdrom: try to eliminate playback timing drifting
notaz [Mon, 5 Sep 2022 16:41:52 +0000 (19:41 +0300)]
cdrom: try to eliminate playback timing drifting

2 years agopsxcounters: try to eliminate another source of audio drift
notaz [Tue, 6 Sep 2022 23:09:08 +0000 (02:09 +0300)]
psxcounters: try to eliminate another source of audio drift

2 years agospu: cleanup some irq hacks
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.

2 years agospu: sync on xa playback start
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

2 years agospu: support master volume
notaz [Sun, 4 Sep 2022 23:03:24 +0000 (02:03 +0300)]
spu: support master volume

2 years agospu: rename dwChannelOn to something more suitable
notaz [Sun, 4 Sep 2022 21:40:58 +0000 (00:40 +0300)]
spu: rename dwChannelOn to something more suitable

2 years agospu: remove some strange rounding
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().

2 years agocdrom: remove confusing comment
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.

2 years agocdrom: remove another hack
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.

2 years agocdrom: take a minor change from libretro
notaz [Fri, 2 Sep 2022 22:54:28 +0000 (01:54 +0300)]
cdrom: take a minor change from libretro

2 years agocdrom: get rid of cdrPlayInterrupt
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

2 years agocdrom: try to clean up the seeking mess
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

2 years agocdrom: should use the last Setloc loc and SeekL
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

2 years agocdrom: some debugging aid
notaz [Wed, 31 Aug 2022 23:02:21 +0000 (02:02 +0300)]
cdrom: some debugging aid

2 years agoplugins: try to untangle the CALLBACK mess
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

2 years agospu: get rid of iXAPitch
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.

2 years agomisc: get rid of an unaligned read
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

2 years agogpu_neon: fix another abi violation
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

2 years agogpu_neon: fix wrong block counting
notaz [Sat, 13 Aug 2022 21:05:07 +0000 (00:05 +0300)]
gpu_neon: fix wrong block counting

2 years agodrc: fix a silly mistake of overwriting a reg
notaz [Thu, 11 Aug 2022 19:52:54 +0000 (22:52 +0300)]
drc: fix a silly mistake of overwriting a reg

2 years agodrc: rework smc checks again
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

2 years agodrc: fix wrong masking in set_jump_target
notaz [Wed, 10 Aug 2022 19:32:11 +0000 (22:32 +0300)]
drc: fix wrong masking in set_jump_target

2 years agocspace: add forgotten length decrement
notaz [Tue, 9 Aug 2022 17:42:39 +0000 (20:42 +0300)]
cspace: add forgotten length decrement

2 years agomark libretro makefile as unmaintained here
notaz [Mon, 8 Aug 2022 22:50:54 +0000 (01:50 +0300)]
mark libretro makefile as unmaintained here

2 years agocspace: generic implementation with vector extensions
notaz [Mon, 8 Aug 2022 21:07:27 +0000 (00:07 +0300)]
cspace: generic implementation with vector extensions

2 years agogpu_neon: integration for arm64
notaz [Mon, 8 Aug 2022 18:16:59 +0000 (21:16 +0300)]
gpu_neon: integration for arm64

2 years agogpu_neon: new intrinsics-only implementation
notaz [Sun, 17 Jul 2022 22:26:25 +0000 (01:26 +0300)]
gpu_neon: new intrinsics-only implementation

~80-95% performance of the asm version on cortex-a72,
but maybe less of a portability nightmare (+arm64 support)

2 years agogpu_neon: place asm func prototypes into a separate header
notaz [Sat, 23 Jul 2022 15:22:33 +0000 (18:22 +0300)]
gpu_neon: place asm func prototypes into a separate header

for the upcoming intrinsics implementation

2 years agogpu_neon: don't include vector_ops.h in the main header
notaz [Sun, 17 Jul 2022 22:18:52 +0000 (01:18 +0300)]
gpu_neon: don't include vector_ops.h in the main header

that stuff is only used in the C-only prototype

2 years agogpu_neon: fix some more abi violations
notaz [Mon, 1 Aug 2022 21:08:49 +0000 (00:08 +0300)]
gpu_neon: fix some more abi violations

2 years agodrc: patch up some potential issues on the switch
notaz [Tue, 2 Aug 2022 21:51:35 +0000 (00:51 +0300)]
drc: patch up some potential issues on the switch

2 years agogpu_neon: try to make the compiler save some callee-save regs
notaz [Sat, 23 Jul 2022 22:31:08 +0000 (01:31 +0300)]
gpu_neon: try to make the compiler save some callee-save regs

... which the asm isn't doing properly

2 years agodfxvideo: patch up some unsafe macros
notaz [Fri, 29 Jul 2022 22:07:21 +0000 (01:07 +0300)]
dfxvideo: patch up some unsafe macros

(old?)-ARM version of GETLE32() was causing wrong shifting due to
implicit signed int promotion.

libretro/pcsx_rearmed#676

2 years agoCI: Pass SDL_CONFIG to the ./configure script
Paul Cercueil [Fri, 3 Jun 2022 17:26:28 +0000 (18:26 +0100)]
CI: Pass SDL_CONFIG to the ./configure script

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoconfigure: Detect the toolchain's sdl-config tool
Paul Cercueil [Fri, 29 Apr 2016 20:06:36 +0000 (22:06 +0200)]
configure: Detect the toolchain's sdl-config tool

Instead of calling the host's sdl-config, which doesn't work when
cross-compiling, call the sdl-config program that's installed in the
compiler's sysroot.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agocdrom: Fix PBP support on big-endian platforms
Paul Cercueil [Tue, 24 May 2022 21:22:48 +0000 (22:22 +0100)]
cdrom: Fix PBP support on big-endian platforms

The data contained in the PBP is in little-endian format. Therefore,
everything in the PBP's header must be read with the byte-swap macros,
for PBP support to work on big-endian systems.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agodfxvideo: Restore support for big-endian arch
Paul Cercueil [Sat, 21 May 2022 16:52:47 +0000 (17:52 +0100)]
dfxvideo: Restore support for big-endian arch

The hardware registers, emulated RAM or emulated VRAM are all in
little-endian format. Therefore, each access must be done with one of
the byte-swap macros, for the plugin to work on big-endian systems.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agofrontend: Fix colorspace conversion routines on big-endian
Paul Cercueil [Sat, 21 May 2022 17:58:14 +0000 (18:58 +0100)]
frontend: Fix colorspace conversion routines on big-endian

The bgr555_to_rgb565() and bgr888_to_rgb565() functions were only
working correctly on little-endian systems.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agomisc: Use GCC builtins for byte-swap operations
Paul Cercueil [Thu, 26 May 2022 13:07:41 +0000 (14:07 +0100)]
misc: Use GCC builtins for byte-swap operations

Instead of using custom code to byte-swap values, use the built-in
function provided by GCC.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agogpulib: Add proper support for big-endian
Paul Cercueil [Fri, 13 Sep 2019 21:13:43 +0000 (23:13 +0200)]
gpulib: Add proper support for big-endian

Update the gpulib code to work properly on big-endian architectures.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoGet rid of bit fields in union
Paul Cercueil [Fri, 13 Sep 2019 21:09:11 +0000 (23:09 +0200)]
Get rid of bit fields in union

Long story short, bit fields aren't endian-safe.
More info: http://mjfrazer.org/mjfrazer/bitfields/

Simplify that by just using a few macros to access the needed bits.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoMake sure hardware registers are manipulated as little-endian
Paul Cercueil [Fri, 13 Sep 2019 21:01:57 +0000 (23:01 +0200)]
Make sure hardware registers are manipulated as little-endian

The hardware registers should be represented in little-endian format.
Therefore, on big-endian systems the values need to be byte-swapped.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agoFix PCSX on big-endian systems
Paul Cercueil [Wed, 11 Sep 2019 15:33:14 +0000 (17:33 +0200)]
Fix PCSX on big-endian systems

The __BIGENDIAN__ macro was never defined anywhere, and the
__BIG_ENDIAN__ macro isn't set anymore by recent versions of GCC.

Replace them by checking __BYTE_ORDER__ against __ORDER_BIG_ENDIAN__.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2 years agodrc: some more libnx support
notaz [Mon, 18 Jul 2022 21:21:44 +0000 (00:21 +0300)]
drc: some more libnx support

2 years agodrc: simplify cache flush for some platforms
notaz [Thu, 14 Jul 2022 21:41:58 +0000 (00:41 +0300)]
drc: simplify cache flush for some platforms

untested, may break 3DS, if it happens please report

2 years agodrc: some libnx support
notaz [Thu, 14 Jul 2022 21:24:34 +0000 (00:24 +0300)]
drc: some libnx support

2 years agocdriso: hack .chd track handling to match .cue
notaz [Mon, 6 Jun 2022 22:59:51 +0000 (01:59 +0300)]
cdriso: hack .chd track handling to match .cue

libretro/pcsx_rearmed#648

2 years agocdrom: don't read and play simultaneously
notaz [Mon, 6 Jun 2022 21:45:57 +0000 (00:45 +0300)]
cdrom: don't read and play simultaneously

notaz/pcsx_rearmed#250

2 years agopsxcounters: try to support a dynarec with a very long timeslice
notaz [Thu, 2 Jun 2022 20:22:19 +0000 (23:22 +0300)]
psxcounters: try to support a dynarec with a very long timeslice

The dynarec instead should probably not run for thousands of cycles
doing no interrupt checks, but maybe this hack will be enough.
libretro/pcsx_rearmed#658

2 years agodrc: update some logging and patches
notaz [Wed, 1 Jun 2022 21:25:32 +0000 (00:25 +0300)]
drc: update some logging and patches

2 years agorelease r23 r23
notaz [Mon, 14 Mar 2022 22:04:27 +0000 (00:04 +0200)]
release r23

2 years agofrontend: omap: fix glitches on mode changes
notaz [Sun, 13 Mar 2022 23:24:50 +0000 (01:24 +0200)]
frontend: omap: fix glitches on mode changes

Where was I 10 years ago? Why am I so old?

2 years agocdriso: handle chd subchannels, when available
notaz [Sun, 13 Mar 2022 21:40:48 +0000 (23:40 +0200)]
cdriso: handle chd subchannels, when available

libretro/pcsx_rearmed#535
only raw mode tested

2 years agocdriso: merge some libretro changes
notaz [Sun, 13 Mar 2022 21:10:52 +0000 (23:10 +0200)]
cdriso: merge some libretro changes

no async read for now

2 years agoalways enable chd support
notaz [Sun, 13 Mar 2022 20:46:31 +0000 (22:46 +0200)]
always enable chd support

2 years agodrc: fix some wrong inv address calculations
notaz [Tue, 1 Mar 2022 22:49:11 +0000 (00:49 +0200)]
drc: fix some wrong inv address calculations

Fixes: 882a08fc49541450bc403b2e920e4bccc257dfdf
notaz/pcsx_rearmed#243

2 years agounbreak nodynarec build
notaz [Sat, 26 Feb 2022 23:54:39 +0000 (01:54 +0200)]
unbreak nodynarec build

oops

2 years agodrc: try to avoid some block trapping
notaz [Sat, 26 Feb 2022 22:10:57 +0000 (00:10 +0200)]
drc: try to avoid some block trapping

2 years agodrc: rework jump_out lists
notaz [Thu, 24 Feb 2022 21:28:11 +0000 (23:28 +0200)]
drc: rework jump_out lists

should waste less memory for malloc overheads

2 years agodrc: rework expire code
notaz [Wed, 23 Feb 2022 23:08:35 +0000 (01:08 +0200)]
drc: rework expire code

Should be quite a bit simpler now, and no longer wastes ~4MB of
translation cache for aggressive block expiring. However more stuff
in cache means longer lists which may slow things down if
recompilation is happening nonstop, so further tuning might be needed.

2 years agodrc: more precise invalidation checking for the invstub case
notaz [Tue, 22 Feb 2022 22:26:51 +0000 (00:26 +0200)]
drc: more precise invalidation checking for the invstub case

2 years agodrc: rework block tracking
notaz [Mon, 21 Feb 2022 23:23:09 +0000 (01:23 +0200)]
drc: rework block tracking

Mostly to remove that horrible generated code parsing.
Also seems to generate less code now.

2 years agodrc: get rid of SPAN
notaz [Sat, 19 Feb 2022 22:46:51 +0000 (00:46 +0200)]
drc: get rid of SPAN

Should have done it 10 years ago, it's a huge maintenance burden for
something than almost never happens.

2 years agodrc: restore all block entry points at once
notaz [Sat, 19 Feb 2022 22:11:52 +0000 (00:11 +0200)]
drc: restore all block entry points at once

and add some stats

2 years agodrc: don't delay block restoration
notaz [Sat, 19 Feb 2022 19:37:23 +0000 (21:37 +0200)]
drc: don't delay block restoration

Not sure why it was done the way it was (maybe something N64 related?),
but it occasionally caused dyna_linker to repeatedly walk the jump_in
list. What's worse, if the dirty block was deemed to expire soon,
it would never be restored and dyna_linker repeated jump_in walking
would never end, causing severe slowdown.

2 years agoRevert "clear Index0 data FIFO flag (#241)"
notaz [Thu, 17 Feb 2022 00:14:03 +0000 (02:14 +0200)]
Revert "clear Index0 data FIFO flag (#241)"

This reverts commit 50ae51487697da0d2f9c93295f89d2f10694b6d8.
It broke Driver 2.

2 years agodrc: try not to end the block prematurely
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)

2 years agopsxinterpreter: unbreak load delay handling
notaz [Tue, 15 Feb 2022 21:17:42 +0000 (23:17 +0200)]
psxinterpreter: unbreak load delay handling

Fixes: 943a507a4156b8f5b00e4431152e41eeb4dc6f3d

2 years agodrc: add a clock override for Super Robot Taisen Alpha
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

2 years agodrc: try to make some passes not as slow, part 2
notaz [Sun, 6 Feb 2022 23:41:12 +0000 (01:41 +0200)]
drc: try to make some passes not as slow, part 2

2 years agodrc: put passes in their own functions
notaz [Sun, 6 Feb 2022 20:38:54 +0000 (22:38 +0200)]
drc: put passes in their own functions

mostly for profiling

2 years agodrc: try to make some passes not as slow
notaz [Sat, 5 Feb 2022 22:10:18 +0000 (00:10 +0200)]
drc: try to make some passes not as slow

2 years agodrc: use optimized get_reg
notaz [Thu, 3 Feb 2022 00:04:52 +0000 (02:04 +0200)]
drc: use optimized get_reg

arm32-only for now

2 years agodrc: rm unneeded &63 masking
notaz [Wed, 2 Feb 2022 21:40:48 +0000 (23:40 +0200)]
drc: rm unneeded &63 masking

64bit leftover

2 years agoclear Index0 data FIFO flag (#241)
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>
2 years agoFix silly typo mistake for CDROM pause/resume fix for DOA. (#242)
gameblabla [Sat, 5 Feb 2022 21:43:34 +0000 (21:43 +0000)]
Fix silly typo mistake for CDROM pause/resume fix for DOA. (#242)

My bad guys.

2 years agogpu_neon: fix apparent missing msb setting in blend_blocks_textured_add_fourth
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.

2 years agogpu_neon: reserved bpp is 16bpp, not 4bpp
notaz [Mon, 31 Jan 2022 00:07:25 +0000 (02:07 +0200)]
gpu_neon: reserved bpp is 16bpp, not 4bpp

2 years agodrc: don't abort on game crash
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.

2 years agorm the old debugger stuff, like in libretro fork
notaz [Sun, 30 Jan 2022 15:34:42 +0000 (17:34 +0200)]
rm the old debugger stuff, like in libretro fork

2 years agodrc: add apparently missing ROREG loading
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.

2 years agodrc: some more debug logging
notaz [Sat, 29 Jan 2022 23:37:45 +0000 (01:37 +0200)]
drc: some more debug logging

2 years agodrc: add seemingly missing double-alloc check
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

2 years agodrc: clear dirty flag when deallocating a reg
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.

2 years agodrc: init some variables, adjust comments
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

2 years agodrc: emulate break opcode
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").

2 years agodrc: don't cache psxRegs.interrupt
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

2 years agodrc: another hack to try to get Vita to work
notaz [Mon, 24 Jan 2022 18:49:04 +0000 (20:49 +0200)]
drc: another hack to try to get Vita to work

2 years agodrc: a bit more sophisticated f1 hack
notaz [Sun, 23 Jan 2022 23:49:45 +0000 (01:49 +0200)]
drc: a bit more sophisticated f1 hack

yes it sucks, I know...

2 years agoalways describe to get git hash in log messages
notaz [Sun, 23 Jan 2022 20:57:06 +0000 (22:57 +0200)]
always describe to get git hash in log messages

2 years agodrc: possibly the missing piece for Vita
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

2 years agodrc: align size passed to mprotect
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.

2 years agospu: try to eliminate some cdda clicks/pops
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