scribam
e505ab6019
safe usage of std::isalnum/std::print
2023-02-20 22:57:24 +01:00
Flyinghead
9b24984b07
crash when switching to full mmu
...
The MMU now has a state variable, which must be set before the dynarec
is reset.
Regression in afcb3b7ad8
Fixes MINIDUMP-AZ, MINIDUMP-B7, MINIDUMP-B0
2023-02-20 22:56:23 +01:00
Flyinghead
7ce08ea860
Fix Touch de Uno 1 & 2 inputs
...
Fix touchscreen touch detection
Default eeproms with calibrated touchscreen and disabled printer
2023-02-20 11:14:02 +01:00
Flyinghead
a156edbd73
Merge remote-tracking branch 'origin/master' into dev
2023-02-19 14:10:37 +01:00
Flyinghead
9dae5827cc
naomi: touchscreen emulation for manic panic ghosts and touch de zunou
2023-02-19 13:51:23 +01:00
Flyinghead
5da799244f
rend: fix regression on YUV texture conversion
...
std::clamp wrong parameters order in d8137a967c
2023-02-18 22:44:44 +01:00
Flyinghead
bf79183bd6
mmu: max alignment requirement is 32-bit
...
a 64-bit access only needs to be 32-bit aligned.
use enum for mmu errors
2023-02-18 13:33:38 +01:00
Flyinghead
afcb3b7ad8
mmu: get rid of FullMMU option. Detect wince with string id in ram
...
ForceWindowsCE now just sets ExtraDepthScale
2023-02-18 13:33:38 +01:00
Flyinghead
5bfbcb210c
dynarec: refactor imm mem r/w and store queue handlers. clean up mmu
...
Eliminate duplicate code for immediate memory read/write in all dynarecs
Simplify PREF to use do_sqw_nommu even for simple SQ remap
Check for address errors before mmu translation
Get rid of unneeded template params in mmu translation funcs
2023-02-18 13:33:38 +01:00
Flyinghead
4f65d45e55
rend: don't access first poly if list is empty. dx11 oit: resize error
...
fix crash with dx11 and gl4 when tr poly count is 0
quick exit if nothing to do
2023-02-18 13:33:38 +01:00
scribam
3f8ecfedbb
sdl: use _WIN32
2023-02-18 13:25:14 +01:00
scribam
d8137a967c
C++17 ( #926 )
...
* cmake: use c++17
* Use std::size
* Use std::make_unique
* Use std::clamp
* Use structured binding
* Use [[fallthrough]]
* Use enable_if_t/is_enum_v/is_integral_v/is_same_v
* Use if constexpr
* Use try_emplace
* Use auto for iterators
* Use inline variables
2023-02-18 13:24:34 +01:00
Flyinghead
a21b79cfbe
builtin cheat to help Extreme Hunting 2 boot
2023-02-15 18:59:44 +01:00
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
69d2cfd56d
read disk MCN and tracks ISRC from .cue files
2023-02-10 15:07:25 +01:00
Flyinghead
0f90293252
dynarec: handle illegal instructions
2023-02-10 14:53:54 +01:00
Flyinghead
0d166e1403
msvc build fix
2023-02-10 14:17:45 +01:00
Flyinghead
b5879e6e1d
unintended change and merge issue
...
log: revert change that wasn't supposed to be committed
emulator: fix incorrect merge
2023-02-10 12:56:57 +01:00
Flyinghead
5b169b7f9d
naomi: use master pid to make unique multiboard shared mem file on unix
2023-02-10 12:54:20 +01:00
Flyinghead
099a758c94
hw: new hardware register implementation
...
used for sh4 mm registers and holly
ignore incorrect size reads and writes
separate data and read/write handlers
2023-02-10 12:51:36 +01:00
Flyinghead
638e5d233a
gl: fix naomi2 lights regression
...
regression introduced by e18a4afcbb
2023-02-10 10:15:09 +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
cacfdbad90
Revert "deps: update glslang and vulkan"
...
This reverts commit 1c8e558e25
.
2023-02-07 11:31:58 +01:00
Flyinghead
811bf6f449
Revert "vk oit: tentative workaround for AMD crash"
...
This reverts commit 084066bde7
.
2023-02-07 11:28:14 +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
debe21de7b
Merge remote-tracking branch 'origin/master' into dev
2023-02-05 22:20:28 +01:00
Flyinghead
084066bde7
vk oit: tentative workaround for AMD crash
...
Issue #908
2023-02-05 21:56:08 +01:00
Flyinghead
37c17e4300
pvr: re-use TA contexts if not used for 60 frames
2023-02-05 18:32:35 +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
c461624a67
move khronos to deps. get rid of old controller mappings and pandora
2023-02-03 10:42:43 +01:00
Flyinghead
d1e6ee9cd7
pvr: add a dummy sorted triangle if list is empty
...
this signals that sorted triangles are being used otherwise wrong
indexes values lead to a crash
2023-02-02 20:19:52 +01:00