Flyinghead
3f4c24d350
gl4: don't reference two-volumes attributes if not used
...
The naomi2 vertex shader doesn't set 2-volume attributes (vtx_base1,
vtx_offs1 and vtx_uv1) if they aren't used. But the pixel shader always
references them even though they aren't actually used. This breaks some
gl drivers: "The shader uses varying vtx_uv1, but previous shader does
not write to it."
Fixes MINIDUMP-93
2023-02-15 18:56:12 +01:00
Flyinghead
645f413523
sentry: get the build version from the log file if available
...
avoid discrepancy between uploading and minidump versions
2023-02-13 20:02:14 +01:00
Flyinghead
d2e8c9465b
dx11 oit: render target and depth texs must have the same dimensions
...
Fixes missing depth/stencil when changing resolution or
enabling/disabling full framebuffer emulation.
2023-02-12 15:05:02 +01:00
Flyinghead
04df0da7cb
pvr: increase index size for wild riders
...
Index overrun with wild riders
Fixes MINIDUMP-7A
2023-02-12 15:05:02 +01:00
Flyinghead
5eeddecb40
maple: set bus speed back to 2Mbps. Worms Pinball needs FFBE
...
Power Drift crashes with 1Mbps
partial revert of 2332884d8b
Force Slave Zero to use real bios (still has issues)
Worms Pinball prototype needs full framebuffer emulation
2023-02-12 15:05:02 +01:00
scribam
71aea45811
vulkan: lower shader version requirement
2023-02-11 14:41:41 +01:00
scribam
cf690fbb61
cmake: improve compile options for VulkanMemoryAllocator
2023-02-11 14:41:07 +01:00
Flyinghead
85b286ec47
oboe: don't attempt to recover the audio stream suring init
...
Apparently oboe can call the error callback function during the initial
openStream. Let it fail in this case.
Fixes MINIDUMP-8K
2023-02-11 14:25:41 +01:00
Flyinghead
07d0cf6839
cdi: don't crash if file re-open fails
...
Not sure how this can happen but it does. Could be a device removed or
corrupted CDI with many tracks.
Fixes MINIDUMP-8F, MINIDUMP-8Q
2023-02-11 14:09:22 +01:00
Flyinghead
040db856f8
limit millenium racer widescreen cheat to the correct game
...
Tentative fix for MINIDUMP-87
2023-02-08 12:08:11 +01:00
Flyinghead
8d0654c323
vk: revert to glslang 11.11.0 (sdk 1.3.224.1)
...
partial revert of 1c8e558e25
Issue #908
2023-02-08 11:59:37 +01:00
Flyinghead
a045c52146
sdl: handle joystick and gamepad api errors to avoid crashes
...
Fixes MINIDUMP-7K
2023-02-06 15:20:21 +01:00
Flyinghead
98531e07ea
hle bios: fix SF rush, jeremy mc grath and the grinch
...
protection checksum and game bugs
2023-02-06 15:15:44 +01:00
Flyinghead
5020a267af
pvr: fix unsorted pass triangle count. tr count should accumulate
...
partial revert of 927db7f189
Fix missing walls in Bust a Move 4 (vs)
2023-02-06 15:09:18 +01:00
Flyinghead
3a21f545d8
cfg: allow non per-game option to be overriden. Remove per-game for some
...
Allow non per-game options to be overridden with command line args.
Fixes MINIDUMP-7G
Save state slot, box art settings, UploadCrashLogs, UseRawInput and lua
filename shouldn't be settable per-game.
2023-02-05 11:38:21 +01:00
Flyinghead
f35167a0de
egl: better constants
2023-02-05 11:31:22 +01:00
Flyinghead
0b6c09da02
sdl: don't rely on event to get window size when processing resize event
...
window size may be different from drawable size if high-dpi is enabled.
Fixes wayland resize with scale factor > 100%.
2023-02-05 11:30:23 +01:00
Flyinghead
d9c08bd081
gl: save current framebuffer in RenderLastFrame. get rid of verify (OSD)
...
Current framebuffer must be saved in gl.ofbo.origFbo when entering
RenderLastFrame and restored on exit.
Tentative fix for MINIDUMP-74
glIsProgram(OSD_SHADER) is strangely failing on Adreno 308 so let's get
rid of it (and pray).
Fix for MINIDUMP-7D, MINIDUMP-7C, MINIDUMP-7B, MINIDUMP-79, MINIDUMP-6J
2023-02-05 11:26:50 +01:00
Flyinghead
927db7f189
pvr: sorted triangle count incorrect with multiple render passes
...
causes crash in setProvokingVertex
Fix for MINIDUMP-7A, MINIDUMP-7H, MINIDUMP-7J
2023-02-05 11:18:18 +01:00
Flyinghead
6e940e4d08
ggpo: move endOfFrame() call back to start render
...
Naomi2 TA context geometry for the current frame is lost when
rollbacking during vblank in because it hasn't been queued for render
yet.
Fixes black screen after GGPO rollback for Naomi 2 games
2023-02-03 11:34:58 +01:00
Flyinghead
90e9f70a1a
vk: fix resizing on wayland. validation errors with framebuffer render
...
wayland doesn't return the current surface dimensions in
getSurfaceCapabilities so we defaulted to 640x480. Instead use the
current display dimension as set by SDL.
Issue #648
Issue #898 (partial fix)
Vulkan validation errors when doing direct framebuffer rendering if fb
slots are skipped, since the corresponding fence isn't waited on.
Instead use an independent index to use them in sequential order.
2023-02-03 11:19:41 +01:00
Flyinghead
bfdab4db20
pvr: add dummy sorted triangle to signal that per triangle is in use
...
Avoids crash when sorted triangle list is empty and renderer uses wrong
index values
2023-02-03 11:07:21 +01:00
Flyinghead
f0e4574132
aica arm: stop the cpu if setting an illegal mode instead of crashing
...
Fixes MINIDUMP-70
2023-02-03 11:03:08 +01:00
Flyinghead
6cfbdf6586
ui: imguiDriver may be null if renderer/context fails to reinit
...
Force a reinit in this case
Fixes MINIDUMP-6R
2023-02-01 18:05:37 +01:00
Flyinghead
6b2063b06f
GGPO fixes
...
Memwatchers weren't properly reset after a ggpo session.
Race condition when stopping if GGPO restarts the cpu for a new frame.
The emu thread might still run some rollback frames before stopping, so
the emu state must be updated only after ggpo is stopped.
Fixes MINIDUMP-6P
Don't autosavestate when GGPO is on
Really disable renderer during GGPO advance frame
Don't stop the sh4 after render (single threaded) when GGPO is on
android: Don't restart when unpaused if online
2023-02-01 18:04:26 +01:00
Flyinghead
5875eda4d0
game id of console games wasn't trimmed
...
regression introduced by ee84567c17
2023-01-31 12:58:43 +01:00
scribam
02a002d55b
sdl: use target SDL2main
2023-01-30 13:54:31 +01:00
Flyinghead
0305904873
force NTSC for some games
2023-01-30 13:40:35 +01:00
Flyinghead
ee84567c17
naomi: use gameId instead of naomi_game_id to get current game name
...
naomi_game_id isn't reset if a console game is loaded.
settings.content.gameId should be used instead.
Issue #901
Fixes MINIDUMP-6G
2023-01-30 13:34:06 +01:00
Flyinghead
528235ce9d
jvs: fix kingrt66 instant win with accelerator
2023-01-30 13:28:14 +01:00
scribam
85a941d6c6
openbsd fixes
2023-01-28 18:25:10 +01:00
Flyinghead
0a27b63584
aica: remove useless verify on reg access sizes
...
Fixes MINIDUMP-6C
2023-01-28 18:22:39 +01:00
Flyinghead
6f5f91245b
windows: use directx 11 by default
2023-01-28 18:21:18 +01:00
Flyinghead
a5967a283f
bump breakpad to fix win32 build error
2023-01-27 14:09:35 +01:00
Flyinghead
21a4935ec4
sentry: set release when uploading
2023-01-27 13:12:31 +01:00
Flyinghead
610e3cf968
naomi: avoid crash with M4 carts if M4 key is missing
...
Fix shorsepr crash at boot
Fixes MINIDUMP-5Z
2023-01-27 13:03:52 +01:00
scribam
80cf4406a7
cleanup include headers
2023-01-26 10:06:51 +01:00
Flyinghead
f7e227a4aa
dx9: don't crash if creating a boxart texture fails. log and skip tex
...
Fix for MINIDUMP-5Q
2023-01-24 14:52:55 +01:00
Flyinghead
bbff377ceb
maple: less log on dma error
...
Fixes GameShark CDX log spam
See MINIDUMP-5R
2023-01-24 14:30:09 +01:00
Flyinghead
f8372c51a7
Revert "wip headers"
...
This reverts commit e3e2c3a0d2
.
2023-01-24 14:26:14 +01:00
scribam
e3e2c3a0d2
wip headers
2023-01-23 18:29:04 +01:00
Flyinghead
f96ce85365
dx11: attempt to recover if context reinit fails. More checks and logs
2023-01-23 12:20:10 +01:00
Flyinghead
aa79196d38
vk: only destroy surface if instance and surface aren't null
...
Don't request Arm debug layer VK_LAYER_ARM_AGA
Fix for MINIDUMP-5G
2023-01-23 12:11:43 +01:00
Flyinghead
2b14c3e605
Try dx11 if dx9 and opengl both fail
...
Fix for MINIDUMP-5F
2023-01-23 12:06:26 +01:00
Flyinghead
cc408f9688
aica arm7: fallback to interpreter for invalid LDR/STR
...
Fixes MINIDUMP-4X
2023-01-22 18:11:03 +01:00
Flyinghead
520e96a039
egl: call eglTerminate when closing context
2023-01-22 17:22:47 +01:00
Flyinghead
db9fbbaebf
custom texture loader must be stopped before the tex cache is cleared
...
Fix for MINIDUMP-53
2023-01-22 17:22:04 +01:00
Flyinghead
88384ad7d1
dynarec: crash in rdv_BlockCheckFail when current block can't be found
...
Only when MMU is on and used to compute blockcheck_failures so can be
ignored.
Tentative fix for MINIDUMP-59
2023-01-22 17:13:34 +01:00
Flyinghead
464b459073
modem: don't die when reg11 is written
...
Fix for MINIDUMP-5A
2023-01-22 17:10:12 +01:00
Flyinghead
aea228c3df
force real BIOS for Fushigi no Dungeon
2023-01-22 17:07:16 +01:00
Flyinghead
8fdcea2e20
maple: delay raising overrun interrupt when dest isn't in RAM
...
Only raise error when copying data back to RAM.
Fixes Cheats 'N Codes Volume 1
2023-01-21 11:38:58 +01:00
Flyinghead
31bd943d67
gl,vk: don't use linear mipmap filter with nearest
...
Fixes glitches in Railroad Tycoon II
Partially revert 15b21fff2b
and
a9cabdc342
2023-01-21 11:32:28 +01:00
Flyinghead
3cf7cf0a7f
network: Emulate BBA should not be changed once a game is started
...
Change UI to disable BBA toggle when game is started.
Refactor UI to use DisabledScope helper.
Make sure the network stack deletes the same device it initialized.
Tentative fix for MINIDUMP-4N
2023-01-20 14:52:27 +01:00
Flyinghead
a593cddf52
pvr: mvsc2 needs yet more rendering cycles
...
Fixes texture corruption in the character line up during intro.
Follow up to 976fb99aa3
2023-01-20 14:41:36 +01:00
Flyinghead
cecf16e65e
dump textures: don't crash if malloc fails
...
Tentative fix for MINIDUMP-4P
2023-01-20 14:38:23 +01:00
Flyinghead
f63cf7406a
logging changes
2023-01-18 14:03:02 +01:00
Flyinghead
e21d666328
reios: allow loading CDIs with ip_meta.wince = 1
...
For some reason Neo XYX has this flag set. I haven't found any wince CDI
that has this flag set but it shouldn't hurt.
Fix for MINIDUMP-47
2023-01-18 10:12:24 +01:00
Flyinghead
ab3f5dbc4c
sdl: fix crash in getNativeHwnd() when recreating window
...
fixes rawinput crash
Fix for MINIDUMP-4B, MINIDUMP-4G, MINIDUMP-4F, MINIDUMP-4E
2023-01-18 09:45:01 +01:00
Flyinghead
9d3125c546
fix tony hawk's 1 & 2 PAL disk ids
2023-01-17 11:41:50 +01:00
Flyinghead
86a6d7a4f5
widescreen cheat for Biohazard: Code Veronica: Kanzenban (JP)
...
same cheat as Resident Evil: Code Veronica X Kanzenban (Eng.
translation)
Issue #880
2023-01-17 11:40:35 +01:00
Flyinghead
0f214b1441
reios: fix crash if disc is null at boot
...
Don't overflow Disc::sessions
Fix for MINIDUMP-41
2023-01-17 11:39:00 +01:00
Flyinghead
a0b50cd41d
pvr: don't crash on invalid poly list types. log and ignore
...
Fix for MINIDUMP-3Z
2023-01-17 11:36:00 +01:00
Flyinghead
1d1754dc98
pvr: don't crash on YUV converter error. log and continue
...
Fix for MINIDUMP-44
2023-01-17 11:25:08 +01:00
Flyinghead
b8464ef6c5
widescreen cheat for Resident Evil - Code Veronica X Kanzeban
...
Courtesy of keefged4
Issue #880
2023-01-16 18:16:05 +01:00
Flyinghead
692ca52182
pvr: fix background poly texture coordinates
...
V tex coordinates were inverted for Donald Duck Goin Quackers
2023-01-16 17:56:37 +01:00
Flyinghead
b4ecaecd45
dynarec: raise sh4 address error if trying to compile unaligned address
...
Error was only raised when mmu is enabled.
tentative fix for MINIDUMP-3Q
2023-01-16 17:53:01 +01:00
Flyinghead
9954768636
dx11: simplify RenderFramebuffer for libretro and fix black frames
...
RA uses some shaders that need to be disabled (as in Render()).
Also the framebuffer texture can be returned directly.
might help Issue #865
2023-01-16 17:50:23 +01:00
Flyinghead
4bbf5c562e
ssa: infinite loop in skipSingleBranchTarget
...
Fixes Mat Hoffman's Pro BMX freeze when exiting a session.
Issue #878
2023-01-15 20:04:05 +01:00
Flyinghead
329e5ed467
android: allow starting games with intent while a game is running
...
stops and unload the current game then starts the new one
2023-01-15 20:02:03 +01:00
Flyinghead
19a160695c
android: since ndk23 exceptions traversing dynarec blocks cause a crash
...
NDK 23 switched to clang's unwinder instead of gcc so __register_frame()
takes a single FDE as argument (as in macOS).
Fix for MINIDUMP-3M and MINIDUMP-3N
2023-01-15 19:31:44 +01:00
Flyinghead
1e195b7237
sdl audio: fix crash when decrasing audio buffer size. fix deadlock
...
sample_count wasn't reset to 0 on init, so it could point past the end
of the audio buffer if buffer size is decreased, leading to a crash.
Fix for MINIDUMP-29
Deadlock if audio buffer size is too small (< 1024 samples)
2023-01-15 12:07:26 +01:00
Flyinghead
2b37a5dc08
sdl audio: use SDL to convert from 44.1 to 48 kHz
...
Fix crash introduced by 7205068809
Use SDL_ConvertAudio to convert audio when needed.
Fix for MINIDUMP-3K
2023-01-15 11:21:42 +01:00
Flyinghead
8aadf5b097
cheats: don't update the cheat list when adding one fails
...
The operation should fail or succeed completely.
Issue #871
2023-01-15 11:16:40 +01:00
Flyinghead
13428ba696
allow screen stretching to be overridden when using widescreen cheat
...
Issue #870
2023-01-15 11:14:21 +01:00
Flyinghead
52f2ca7ff6
windows: convert command line arguments to UTF8
...
Issue #875
2023-01-15 11:13:07 +01:00
scribam
174ce8786b
android: add oboe as a submodule
2023-01-14 13:02:34 +01:00
scribam
fc118f295d
android: remove oboe
2023-01-14 13:02:34 +01:00
Flyinghead
a370851494
dynarec: check stale blocks in rdv_DoInterrupt if block not found
...
tentative fix for MINIDUMP-36
2023-01-14 12:54:05 +01:00
Flyinghead
7b49cc73ee
gl,gl4: use correct framebuffer size for matrix when rtt'ing
2023-01-14 12:52:10 +01:00
Flyinghead
a8c5af8425
dx: don't resize main framebuffer when rendering to texture
...
dx9 and dx11 renderers were wrongly resizing main framebuffer to 0,0
when rendering to a texture.
Fix for MINIDUMP-1W
2023-01-14 12:48:56 +01:00
Flyinghead
3441a9ccf0
pvr: calculate framebuffer size when TA context is dequeued
...
Config can change after the TA context has been queued (upscaling, full
framebuffer emu, etc.) which can make the calculated framebuffer size
wrong during render, leading to crashes in renderers.
Fix for MINIDUMP-35
2023-01-14 12:39:38 +01:00
Flyinghead
659d21680b
android: race condition on Emulator::threadResult
...
The emu thread can be stopped/started by the app main java thread while
the render thread is running. This can lead to a race condition on the
threadResult future between checkStatus() and start(). So protect
relevant sections with a mutex.
Fix for MINIDUMP-1G, MINIDUMP-1H, MINIDUMP-2G and MINIDUMP-33
2023-01-14 10:52:27 +01:00
Flyinghead
2da833883b
pvr: skip triangles with NaN/Inf coordinates when sorting them
...
Issue #867
2023-01-14 10:46:21 +01:00
Flyinghead
c301bf0827
pvr: ignore invalid TA types instead of crashing
...
Fix for MINIDUMP-32
2023-01-14 10:42:26 +01:00
Flyinghead
1c4303b76d
arm dynarec: verify is no longer true
...
Fix for MINIDUMP-37
2023-01-14 10:29:44 +01:00
Flyinghead
92fa4c041d
gdrom: log invalid size register access but don't crash
...
Fix for MINIDUMP-1T
2023-01-13 11:34:40 +01:00
Flyinghead
f34a9f6eac
jvs: serialize drive board output value and more
...
Issue #864
2023-01-13 11:25:04 +01:00
Flyinghead
9fb69af355
dx9: more error handling. more logging
...
Handle case where dx context init fails when switching to/from fast
forward.
Log errors.
2023-01-13 11:15:32 +01:00
Flyinghead
59606d8935
naomi: more robust error handling when loading invalid roms
...
Fix for MINIDUMP-2S
2023-01-13 10:49:52 +01:00
Flyinghead
bd7f5ec4c1
disable non-working ikaruga ws cheat
...
Issue #866
2023-01-13 10:46:51 +01:00
Flyinghead
d082993a7a
ui: race condition when network times out while pressing start
...
Fix for MINIDUMP-2Y
2023-01-13 10:06:36 +01:00
Flyinghead
640d4162b6
holly: log invalid pvr register access size but don't crash
...
Fix for MINIDUMP-2V
2023-01-13 09:52:17 +01:00
Flyinghead
66eb08f2d1
sh4: check that dma-ch2 source address is in ram
...
Force real BIOS for Force Five dc conversion
Fix for MINIDUMP-2W
2023-01-13 09:28:45 +01:00
Flyinghead
93fbd67a85
dx9: recover after screen lock. reset render state cache on entry
...
Device is lost for a long time when the screen is locked. Need to
continue calling present() to recover.
Reset render state cache on in RenderFramebuffer and RenderLastFrame
entry points.
More logging in renderer resizing.
2023-01-12 16:09:01 +01:00
Flyinghead
cf031717dd
chd: skip invalid media with 0 track
2023-01-12 16:05:07 +01:00
Flyinghead
075ec1cf98
log: increase in-memory log to 20 lines
2023-01-12 16:02:15 +01:00
Flyinghead
673fb26d6e
android: threading fix. stop vibrator thread. allow screen saver
...
If the android activity is destroyed and the game unloaded, the gui's
game state wasn't updated, leading to a crash if resuming. Same for the
android game state if pausing, destroying then resuming.
tentative fix for MINIDUMP-27, MINIDUMP-25, MINIDUMP-23
Wait until emu is stopped in single-threaded.
Stop vibrator thread when view is detached
Allow the screen saver when a game isn't running.
2023-01-11 11:44:28 +01:00
Flyinghead
5fa98da17e
dx9: stricter device reset failure check. More logging
...
tentative fix for MINIDUMP-1P
2023-01-11 09:44:00 +01:00
Flyinghead
9b2f33f7bd
jvs: fix wrungp CAUTION message regression
...
due to 53ed006a54
Issue #861
2023-01-11 09:05:47 +01:00
Flyinghead
2b70c73f80
gl: compilation and runtime fixes for GLES 2.0
...
Fix libretro compile errors with GLES2
Fix black screen at runtime with gles 2.0
Issue #859
2023-01-11 09:02:24 +01:00