pcsx_rearmed.git
10 months agoFix invalid variable types
Paul Cercueil [Thu, 30 May 2024 09:52:21 +0000 (11:52 +0200)]
Fix invalid variable types

On SH4, uint32_t is "unsigned long" and int32_t is "long"; which means
that "int32_t" and "int" pointers cannot be used interchangeably without
an explicit cast.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
10 months agolightrec: Move lightrec_code_inv() out of glue code
Paul Cercueil [Thu, 30 May 2024 09:44:15 +0000 (11:44 +0200)]
lightrec: Move lightrec_code_inv() out of glue code

We're not going to add a lightrec_code_inv() in there for every port of
PCSX there is. Instead, add a on/off macro that will tell the glue code
to reference an external lightrec_code_inv(), which has to be provided
externally.

The WiiU implementation has moved to libpcsxcore/lightrec/mem_wiiu.c.
The Wii/GC implementation will move to the external WiiSX project
directly.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
10 months agocdrom: Rename "stat" to "cdr_stat"
Paul Cercueil [Wed, 29 May 2024 13:46:57 +0000 (15:46 +0200)]
cdrom: Rename "stat" to "cdr_stat"

"stat" is a C function from <sys/stat.h>. While libpcsxcore/cdrom.c does
not include this header, some of the headers it does include may
actually include it themselves (depending on the C library).

Work around possible name conflicts by just renaming the offending
variable.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
10 months agolibretro: attempt to fix build
notaz [Mon, 20 May 2024 23:30:29 +0000 (02:30 +0300)]
libretro: attempt to fix build

10 months agolibretro: update build for newer libchdr
notaz [Mon, 20 May 2024 22:58:19 +0000 (01:58 +0300)]
libretro: update build for newer libchdr

10 months agogit subrepo pull (merge) --force deps/libchdr
notaz [Mon, 20 May 2024 22:16:38 +0000 (01:16 +0300)]
git subrepo pull (merge) --force deps/libchdr

subrepo:
  subdir:   "deps/libchdr"
  merged:   "86b27207"
upstream:
  origin:   "https://github.com/rtissera/libchdr"
  branch:   "master"
  commit:   "86b27207"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "73a0129"

10 months agoobligatory forgotten android fixup
notaz [Fri, 17 May 2024 21:53:14 +0000 (00:53 +0300)]
obligatory forgotten android fixup

10 months agoMerge pull request #831 from pcercuei/update-lightrec-20240517
notaz [Fri, 17 May 2024 21:45:19 +0000 (00:45 +0300)]
Merge pull request #831 from pcercuei/update-lightrec-20240517

Update lightrec 20240517

10 months agoLightrec plugin: Drop lightrec_plugin_clear_block_caches()
Paul Cercueil [Fri, 17 May 2024 17:32:51 +0000 (19:32 +0200)]
Lightrec plugin: Drop lightrec_plugin_clear_block_caches()

It is now handled inside lightrec_set_cycles_per_opcode().

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
10 months agoLightrec plugin: Fix warnings about printf formats
Paul Cercueil [Fri, 17 May 2024 11:30:10 +0000 (13:30 +0200)]
Lightrec plugin: Fix warnings about printf formats

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
10 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Fri, 17 May 2024 17:33:45 +0000 (19:33 +0200)]
git subrepo pull --force deps/lightrec

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

10 months agolibretro: don't call _system_av_info cb from _load_game
notaz [Sat, 11 May 2024 20:51:25 +0000 (23:51 +0300)]
libretro: don't call _system_av_info cb from _load_game

not needed and frontends hate it
libretro/pcsx_rearmed#828

11 months agolightning.h: Bump to latest version
Paul Cercueil [Mon, 22 Apr 2024 12:21:26 +0000 (14:21 +0200)]
lightning.h: Bump to latest version

This had not been done the last time the Lightning subrepo was pulled.

Fixes #825.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
11 months agonew experimental TurboCD option
notaz [Thu, 18 Apr 2024 18:12:41 +0000 (21:12 +0300)]
new experimental TurboCD option

11 months agocdrom: change pause timing again
notaz [Mon, 15 Apr 2024 21:38:14 +0000 (00:38 +0300)]
cdrom: change pause timing again

for DDR series

11 months agointroduce fractional framerates
notaz [Sun, 14 Apr 2024 22:56:42 +0000 (01:56 +0300)]
introduce fractional framerates

notaz/pcsx_rearmed#91

11 months agocdrom: accept more channel bits
notaz [Sun, 14 Apr 2024 22:52:31 +0000 (01:52 +0300)]
cdrom: accept more channel bits

Although it contradicts nocash docs, Spyro 2 (PAL) uses 0x21.
Should only 0xff be rejected?

11 months agodb: Override cycle multiplier for Colin McRae PAL
Paul Cercueil [Sat, 6 Apr 2024 15:22:58 +0000 (17:22 +0200)]
db: Override cycle multiplier for Colin McRae PAL

Decrease it from 175 to 174, which is enough for the language selection
menu to start working.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
12 months agoattempt to fix build
notaz [Fri, 29 Mar 2024 00:28:32 +0000 (02:28 +0200)]
attempt to fix build

libretro-build-ctr

12 months agoattempt to fix build
notaz [Fri, 29 Mar 2024 00:18:20 +0000 (02:18 +0200)]
attempt to fix build

android-armeabi-v7a
libretro-build-miyoo-arm32
libretro-build-ctr
libretro-build-wiiu

12 months agolibretro: update build for newer libchdr
notaz [Thu, 28 Mar 2024 23:28:11 +0000 (01:28 +0200)]
libretro: update build for newer libchdr

notaz/pcsx_rearmed#339

12 months agogit subrepo pull (merge) --force deps/libchdr
notaz [Thu, 28 Mar 2024 21:36:05 +0000 (23:36 +0200)]
git subrepo pull (merge) --force deps/libchdr

subrepo:
  subdir:   "deps/libchdr"
  merged:   "5c598c2d"
upstream:
  origin:   "https://github.com/rtissera/libchdr"
  branch:   "master"
  commit:   "5c598c2d"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "73a0129"

12 months agospu: don't leave garbage in capture buffers
notaz [Mon, 25 Mar 2024 21:26:10 +0000 (23:26 +0200)]
spu: don't leave garbage in capture buffers

12 months agospu: more status bits
notaz [Sun, 24 Mar 2024 23:50:25 +0000 (01:50 +0200)]
spu: more status bits

notaz/pcsx_rearmed#338

12 months agospu: don't assert on noise in thread mode
notaz [Sun, 24 Mar 2024 00:47:33 +0000 (02:47 +0200)]
spu: don't assert on noise in thread mode

12 months agopsxdma: implement a few more details
notaz [Sun, 24 Mar 2024 00:46:33 +0000 (02:46 +0200)]
psxdma: implement a few more details

notaz/pcsx_rearmed#336

12 months agogpulib: fix frameskip on weird lists
notaz [Fri, 22 Mar 2024 22:57:41 +0000 (00:57 +0200)]
gpulib: fix frameskip on weird lists

notaz/pcsx_rearmed#337

12 months agomisc: allow slow-booting to cdda or whatever
notaz [Thu, 21 Mar 2024 22:52:37 +0000 (00:52 +0200)]
misc: allow slow-booting to cdda or whatever

notaz/pcsx_rearmed#335

12 months agolibretro: try to handle physical cdrom ejection
notaz [Thu, 21 Mar 2024 22:21:20 +0000 (00:21 +0200)]
libretro: try to handle physical cdrom ejection

notaz/pcsx_rearmed#335

12 months agofix a crash due to forgotten function
notaz [Thu, 21 Mar 2024 10:05:40 +0000 (12:05 +0200)]
fix a crash due to forgotten function

12 months agomake: unbreak ios
notaz [Thu, 21 Mar 2024 00:02:48 +0000 (02:02 +0200)]
make: unbreak ios

missed 'HAVE_PHYSICAL_CDROM = 0'

12 months agophysical cdrom readahead
notaz [Wed, 20 Mar 2024 23:14:56 +0000 (01:14 +0200)]
physical cdrom readahead

much more messy than I hoped
notaz/pcsx_rearmed#335

12 months agolibretro: preliminary physical cdrom support
notaz [Mon, 18 Mar 2024 00:37:51 +0000 (02:37 +0200)]
libretro: preliminary physical cdrom support

12 months agopsxhw: adjust sio stat
notaz [Sun, 10 Mar 2024 23:28:41 +0000 (01:28 +0200)]
psxhw: adjust sio stat

libretro/pcsx_rearmed#822

13 months agopsxbios: implement yet more memcard details
notaz [Wed, 14 Feb 2024 23:18:57 +0000 (01:18 +0200)]
psxbios: implement yet more memcard details

libretro/pcsx_rearmed#821

13 months agolibretro: adjust psxclock description
notaz [Wed, 7 Feb 2024 22:26:40 +0000 (00:26 +0200)]
libretro: adjust psxclock description

libretro/pcsx_rearmed#820

13 months agoFix emscripten build target
Ethan O'Brien [Fri, 2 Feb 2024 16:41:12 +0000 (10:41 -0600)]
Fix emscripten build target

14 months agorelease r24 r24l
notaz [Sat, 20 Jan 2024 23:06:36 +0000 (01:06 +0200)]
release r24

14 months agopsxbios: some missed malloc merge behavior
notaz [Sun, 21 Jan 2024 22:27:01 +0000 (00:27 +0200)]
psxbios: some missed malloc merge behavior

14 months agospu: add missing sample copying for thread mode
notaz [Sun, 21 Jan 2024 21:14:27 +0000 (23:14 +0200)]
spu: add missing sample copying for thread mode

was probably a bad idea keeping them separate

14 months agotry again with android
notaz [Sat, 20 Jan 2024 19:38:05 +0000 (21:38 +0200)]
try again with android

14 months agoobligatory android fail fixup
notaz [Sat, 20 Jan 2024 19:32:52 +0000 (21:32 +0200)]
obligatory android fail fixup

14 months agolightrec: implement clock cache clear on cycle_multiplier change
notaz [Sat, 20 Jan 2024 19:15:28 +0000 (21:15 +0200)]
lightrec: implement clock cache clear on cycle_multiplier change

libretro/pcsx_rearmed#818

14 months agostandalone: make unaccelerated fullscreen work
notaz [Sun, 7 Jan 2024 19:25:10 +0000 (21:25 +0200)]
standalone: make unaccelerated fullscreen work

just centering; the performance is terrible though
notaz/pcsx_rearmed#331

14 months agostandalone: fix w/h confusion
notaz [Sat, 6 Jan 2024 23:31:17 +0000 (01:31 +0200)]
standalone: fix w/h confusion

15 months agolibretro: adjust some option text
notaz [Wed, 3 Jan 2024 23:15:18 +0000 (01:15 +0200)]
libretro: adjust some option text

15 months agogpu_neon: make enh. res. texturing hack optional
notaz [Wed, 3 Jan 2024 00:36:58 +0000 (02:36 +0200)]
gpu_neon: make enh. res. texturing hack optional

until something better is figured out, if ever
libretro/pcsx_rearmed#815

15 months agocdrom: attempt to improve reset
notaz [Tue, 2 Jan 2024 23:11:04 +0000 (01:11 +0200)]
cdrom: attempt to improve reset

libretro/pcsx_rearmed#814

15 months agogpu_neon: unbreak sprites in enhanced res
notaz [Wed, 27 Dec 2023 23:33:02 +0000 (01:33 +0200)]
gpu_neon: unbreak sprites in enhanced res

broken in c296224f47ceebab4d6fbd071959bff294e80293
libretro/pcsx_rearmed#813

15 months agogpulib: maybe better loop detection
notaz [Wed, 27 Dec 2023 22:43:10 +0000 (00:43 +0200)]
gpulib: maybe better loop detection

Note that this thing isn't needed at all with gpu_slow_llists enabled.

libretro/pcsx_rearmed#812

15 months agodrc: try to unbreak 3ds
notaz [Tue, 19 Dec 2023 19:06:18 +0000 (21:06 +0200)]
drc: try to unbreak 3ds

it doesn't implement _SC_PAGESIZE

15 months agosync with standalone
notaz [Thu, 14 Dec 2023 23:48:24 +0000 (01:48 +0200)]
sync with standalone

15 months agoremove one of the hacks
notaz [Thu, 14 Dec 2023 19:05:21 +0000 (21:05 +0200)]
remove one of the hacks

seems to no longer be needed
added in 979b861b31ef1f5033db5bd4433b842944300a3e

15 months agodrc: handle upto 64k page size
notaz [Thu, 14 Dec 2023 19:00:04 +0000 (21:00 +0200)]
drc: handle upto 64k page size

libretro/pcsx_rearmed#810

15 months agostandalone: update gun support
notaz [Thu, 14 Dec 2023 22:24:38 +0000 (00:24 +0200)]
standalone: update gun support

15 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Thu, 14 Dec 2023 18:10:11 +0000 (19:10 +0100)]
git subrepo pull --force deps/lightrec

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

15 months agoupdate gpulib_thread_if
notaz [Wed, 13 Dec 2023 23:40:31 +0000 (01:40 +0200)]
update gpulib_thread_if

15 months agomore timing hacks
notaz [Wed, 13 Dec 2023 22:12:53 +0000 (00:12 +0200)]
more timing hacks

notaz/pcsx_rearmed#329

15 months agocheats: handle 1F and D4
notaz [Tue, 12 Dec 2023 22:24:23 +0000 (00:24 +0200)]
cheats: handle 1F and D4

libretro/pcsx_rearmed#808

15 months agogpu: rework dma vs busy timing
notaz [Wed, 13 Dec 2023 20:14:54 +0000 (22:14 +0200)]
gpu: rework dma vs busy timing

maybe should implement actual fifo instead someday
libretro/pcsx_rearmed#809

15 months agostandalone: revive spu_c64x build
notaz [Mon, 11 Dec 2023 21:31:40 +0000 (23:31 +0200)]
standalone: revive spu_c64x build

and some other minor pandora stuff

15 months agomisc: avoid assertion failure when state save fails
notaz [Sun, 10 Dec 2023 21:54:53 +0000 (23:54 +0200)]
misc: avoid assertion failure when state save fails

15 months agostandalone: allow scaler to cut off the letterbox
notaz [Sun, 10 Dec 2023 21:53:51 +0000 (23:53 +0200)]
standalone: allow scaler to cut off the letterbox

notaz/pcsx_rearmed#286

15 months agostandalone: allow other that 1 line scanlines
notaz [Sun, 10 Dec 2023 21:30:48 +0000 (23:30 +0200)]
standalone: allow other that 1 line scanlines

doesn't seem useful, but since the code is done I'll keep it
notaz/pcsx_rearmed/#287

15 months agoindicate values are hex in config
notaz [Sun, 10 Dec 2023 21:26:27 +0000 (23:26 +0200)]
indicate values are hex in config

notaz/pcsx_rearmed#285

15 months agogpu: adjust timing
notaz [Fri, 8 Dec 2023 22:50:39 +0000 (00:50 +0200)]
gpu: adjust timing

seemed to be causing races, likely because we run the CPU too fast
notaz/pcsx_rearmed#330

15 months agogpu_neon: try to patch more pal vs enhancement trouble
notaz [Wed, 6 Dec 2023 23:31:48 +0000 (01:31 +0200)]
gpu_neon: try to patch more pal vs enhancement trouble

15 months agospu: fix a wrong assumption about cd volume
notaz [Wed, 6 Dec 2023 23:45:51 +0000 (01:45 +0200)]
spu: fix a wrong assumption about cd volume

reported by xjsxjs197 again

15 months agocdrom: fix a copy-paste mistake
notaz [Wed, 6 Dec 2023 22:03:37 +0000 (00:03 +0200)]
cdrom: fix a copy-paste mistake

thanks to xjsxjs197 for the report

15 months agopsxbios: implement some more memcard details
notaz [Wed, 6 Dec 2023 21:59:11 +0000 (23:59 +0200)]
psxbios: implement some more memcard details

15 months agopsxbios: implement some cdrom related stuff
notaz [Mon, 4 Dec 2023 20:17:10 +0000 (22:17 +0200)]
psxbios: implement some cdrom related stuff

15 months agopatch another gpulib alignment issue
notaz [Sat, 2 Dec 2023 23:21:50 +0000 (01:21 +0200)]
patch another gpulib alignment issue

for neon bgr888_to_rgb888

16 months agoadjust dma alignment and some cleanup
notaz [Fri, 1 Dec 2023 21:45:40 +0000 (23:45 +0200)]
adjust dma alignment and some cleanup

libretro/pcsx_rearmed#699

16 months agoan alt hack for Judge Dredd
notaz [Fri, 1 Dec 2023 23:05:10 +0000 (01:05 +0200)]
an alt hack for Judge Dredd

16 months agogpu: improve timings of clipped sprites
notaz [Wed, 29 Nov 2023 23:58:19 +0000 (01:58 +0200)]
gpu: improve timings of clipped sprites

Judge Dredd has tons of them.
Too lazy to do this for peops so keep it neglected for now.

16 months agounbreak the build of gpu thread thing
notaz [Tue, 28 Nov 2023 00:09:45 +0000 (02:09 +0200)]
unbreak the build of gpu thread thing

and hope it still works

16 months agoadd a forgotten file
notaz [Mon, 27 Nov 2023 23:49:32 +0000 (01:49 +0200)]
add a forgotten file

16 months agomore timing hacks
notaz [Mon, 27 Nov 2023 22:51:32 +0000 (00:51 +0200)]
more timing hacks

16 months agogpu_unai: fix clear masking
notaz [Mon, 27 Nov 2023 22:47:16 +0000 (00:47 +0200)]
gpu_unai: fix clear masking

16 months agogpu: start doing some basic gpu timing
notaz [Mon, 27 Nov 2023 22:23:03 +0000 (00:23 +0200)]
gpu: start doing some basic gpu timing

minimum only for now, mostly based on Mednafen
libretro/pcsx_rearmed#573
libretro/pcsx_rearmed#783

16 months agolibretro: drop the Frame Duping option
notaz [Sun, 26 Nov 2023 19:39:08 +0000 (21:39 +0200)]
libretro: drop the Frame Duping option

Unclear what it was for, added in commit
0e5a7b7d5a4894754a73d0ea496b3b7b3f6b32d8
libretro/pcsx_rearmed#805

16 months agolightrec: Improve hack around icache emulation
Paul Cercueil [Sun, 26 Nov 2023 14:04:07 +0000 (15:04 +0100)]
lightrec: Improve hack around icache emulation

Invalidate the whole code buffer on each call to the .clear callback.
This fixes a crash after finishing a race in F1 Arcade, and does not
seem to cause issues with the other F1 games.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
16 months agoupdate db
notaz [Sat, 25 Nov 2023 23:02:27 +0000 (01:02 +0200)]
update db

libretro/pcsx_rearmed#128

16 months agodrop some unused funcs
notaz [Sat, 25 Nov 2023 22:11:30 +0000 (00:11 +0200)]
drop some unused funcs

removed in a plugin but not the core

16 months agolibretro: report errors and warnings as such
notaz [Sat, 25 Nov 2023 21:59:36 +0000 (23:59 +0200)]
libretro: report errors and warnings as such

16 months agolibretro: direct fb access requires duping support
notaz [Sat, 25 Nov 2023 21:56:41 +0000 (23:56 +0200)]
libretro: direct fb access requires duping support

because video doesn't necessary update at vsync rate
libretro/pcsx_rearmed#805

16 months agocdrom: fail pausing on seek
notaz [Sat, 25 Nov 2023 20:37:28 +0000 (22:37 +0200)]
cdrom: fail pausing on seek

libretro/pcsx_rearmed#790

16 months agotry different dualshock analog heuristics
notaz [Sat, 25 Nov 2023 00:52:47 +0000 (02:52 +0200)]
try different dualshock analog heuristics

libretro/pcsx_rearmed#765

16 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Fri, 24 Nov 2023 22:47:26 +0000 (23:47 +0100)]
git subrepo pull --force deps/lightrec

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

16 months agospu: add a guard for "runaway" channels
notaz [Tue, 21 Nov 2023 23:06:05 +0000 (01:06 +0200)]
spu: add a guard for "runaway" channels

should really mask but it's inconvenient with the raw pointers used
there

16 months agodon't use a stack var out of scope
notaz [Tue, 21 Nov 2023 22:37:49 +0000 (00:37 +0200)]
don't use a stack var out of scope

newer compilers are stricter about this, as well as asan

16 months agocdrom: always error out on shell open
notaz [Tue, 21 Nov 2023 22:27:27 +0000 (00:27 +0200)]
cdrom: always error out on shell open

Duckstation claims it has been verified on console.
libretro/pcsx_rearmed#804

16 months agospu: forgot to save some stuff again
notaz [Tue, 21 Nov 2023 22:06:05 +0000 (00:06 +0200)]
spu: forgot to save some stuff again

16 months agoapply cdrom volume in spu
notaz [Tue, 21 Nov 2023 22:02:50 +0000 (00:02 +0200)]
apply cdrom volume in spu

The previous sector delay thing breaks rhythm games.
Also much easier to deal with timing in SPU code.

16 months agolibretro: add a few options for the analog combo
notaz [Mon, 20 Nov 2023 21:06:31 +0000 (23:06 +0200)]
libretro: add a few options for the analog combo

like in the other core

16 months agomake: don't enable neon for all ARMs
notaz [Mon, 20 Nov 2023 21:03:59 +0000 (23:03 +0200)]
make: don't enable neon for all ARMs

joolswills commented on 4b2392bb:
This breaks building on armv6 where ARCH_DETECTED is set to "arm"
(which is a substring of arm64) so it matches, and BUILTIN_GPU is
set to neon.

16 months agogit subrepo pull --force deps/lightrec
Paul Cercueil [Mon, 20 Nov 2023 16:40:16 +0000 (17:40 +0100)]
git subrepo pull --force deps/lightrec

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

16 months agoupdate analog default list
notaz [Mon, 20 Nov 2023 00:39:56 +0000 (02:39 +0200)]
update analog default list

16 months agodefaut dualshock to digital again, unless overriden
notaz [Mon, 20 Nov 2023 00:17:24 +0000 (02:17 +0200)]
defaut dualshock to digital again, unless overriden

... or a key combo is used
libretro/pcsx_rearmed#765

16 months agoMerge pull request #802 from pcercuei/address-sanitizer
notaz [Sun, 19 Nov 2023 22:42:16 +0000 (00:42 +0200)]
Merge pull request #802 from pcercuei/address-sanitizer

Address sanitizer