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
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
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
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
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
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
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
37c17e4300
pvr: re-use TA contexts if not used for 60 frames
2023-02-05 18:32:35 +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
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
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
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
e70a0dcf3d
sh4_fpu clean up. tests
2023-02-01 13:53:32 +01:00
Flyinghead
d1ab3461a6
savestates: dropping support for old formats
...
savestates older than 3 years aren't supported anymore
2023-01-31 17:57:54 +01:00
Flyinghead
04c418d02a
serialize: move code out of serialize.cpp and into modules
2023-01-31 10:13:03 +01:00
Flyinghead
528235ce9d
jvs: fix kingrt66 instant win with accelerator
2023-01-30 13:28:14 +01:00
Flyinghead
27ea6ca092
aica: rename mem and reg accessors
2023-01-30 13:21:43 +01:00
Flyinghead
53dab29ddb
iOS and Switch build fixes
2023-01-30 11:10:14 +01:00
Flyinghead
b1479e6e34
aica: use namespaces, simplify api, handle serialization
...
Rename VArray2 to RamRegion. Add alloc(), free(), setRegion() and
de/serialize()
2023-01-30 10:40:07 +01:00
Flyinghead
143073b61d
rename _vmem to addrspace and move platform vmem stuff to virtmem ns
...
use namespaces
simplify names
no functional changes
2023-01-29 18:48:33 +01:00
Flyinghead
0c01075ba8
__fastcall goes after return type
2023-01-29 14:07:37 +01:00
Flyinghead
1149d499a8
x86: windows ce support in dynarec
...
clean up some unused methods and return values
2023-01-28 19:22:36 +01:00
Flyinghead
0a27b63584
aica: remove useless verify on reg access sizes
...
Fixes MINIDUMP-6C
2023-01-28 18:22:39 +01:00
Flyinghead
99d5266aa0
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/hw/holly/sb_mem.cpp
# core/hw/naomi/naomi.cpp
# core/hw/naomi/naomi_flashrom.cpp
# core/hw/pvr/ta_ctx.h
# core/rend/gui.cpp
2023-01-27 15:41:45 +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
Flyinghead
e18a4afcbb
vk and pvr fixes. Renderer::Process returns void. N2 light 0 is no-light
...
pvr: Heap use after free due to PolyParam vector reallocation
vk: fix wrong buffer size calculation
Renderer::Process now returns void since it can't fail anymore
naomi2: light model at index 0 is "no light"
dx9, gles: throw if naomi 2 not supported
2023-01-27 11:16:25 +01:00
Flyinghead
499f86b065
pvr: use std::vector instead of List<> in render context
...
Remove overrun-related code.
Replace N2 matrix and light model pointers with indices.
2023-01-26 14:13:28 +01:00
scribam
80cf4406a7
cleanup include headers
2023-01-26 10:06:51 +01:00
Flyinghead
1c4871acb3
naomi: fix derbyocw rom list
...
was using drbyocwa roms
2023-01-25 17:16:52 +01:00
Flyinghead
1a681746b5
mmu: fix rte delay slot fetch address error with slow mmu
...
slow mmu clean up
P4 isn't executable
mmu test
mmu_TranslateSQW: throw exception but don't return status
2023-01-24 21:17:48 +01:00
Flyinghead
5096d50d37
move rom/flash stuff to hw/flashrom. nvmem api
2023-01-24 19:17:48 +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
Flyinghead
31debefbe1
release dynarec mem allocs when terminating, including arm and dsp
...
Issue #453
2023-01-24 09:21:46 +01:00
Flyinghead
c7d214e55a
aica: update pending ints when enable mask is changed
...
Updating interrupts masks SCIEB and MCIEB can enable new interrupts so
check for that.
Only avoid race condition when needed.
2023-01-23 20:04:18 +01:00
scribam
e3e2c3a0d2
wip headers
2023-01-23 18:29:04 +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
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
9473c235f2
sh4: Fix CCN_MMUCR register definition
...
Some reserved bits were missing, which was breaking the (slow) MMU since
the write mask is correct.
2023-01-21 12:11:42 +01:00
Flyinghead
b443467770
naomi: relax some eeprom checks based on BOOTID specs
2023-01-21 12:01:22 +01:00
Flyinghead
a6bf9dd39c
Option to disable VMU sounds. VMU sounds use better waveform.
2023-01-21 11:54:34 +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
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
2420c05930
android: implement unwind info for arm32
2023-01-17 22:06:22 +01:00
Flyinghead
36e67203a4
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/deps/oboe
# core/emulator.cpp
# core/hw/maple/maple_jvs.cpp
# core/rend/gui.cpp
2023-01-17 21:20:14 +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
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
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
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
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
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
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
59606d8935
naomi: more robust error handling when loading invalid roms
...
Fix for MINIDUMP-2S
2023-01-13 10:49:52 +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
ac24d9be5b
preserve savestate compat with sh4 exception changes
2023-01-11 23:01:37 +01:00
Flyinghead
7e4572a86a
naomi: f355 multiboard support WIP
2023-01-11 22:31:36 +01:00
Flyinghead
06c5ba7f0e
sh4: simplify exceptions
2023-01-11 20:42:33 +01:00
Flyinghead
9b2f33f7bd
jvs: fix wrungp CAUTION message regression
...
due to 53ed006a54
Issue #861
2023-01-11 09:05:47 +01:00
Flyinghead
84f6bd3fef
libretro build fixes
2023-01-09 17:44:40 +01:00
Flyinghead
b37e6dc28d
Merge remote-tracking branch 'origin/master' into dev
2023-01-08 11:19:48 +01:00
Flyinghead
ba0a357d48
missing change for 12bba31270
2023-01-03 11:32:00 +01:00
Flyinghead
cf514b0d6b
pvr: skip remaining vertices if incomplete after inf vertex
...
in makePrimRestartIndex
Issue #846
2022-12-31 16:51:35 +01:00
Flyinghead
802f70fedd
pvr: recover from renderer init failure
...
issue MINIDUMP-V
fix some warnings
2022-12-29 19:18:19 +01:00
Flyinghead
85188bf137
naomi: fix button labels for hmgeo
...
Issue #841
2022-12-25 22:09:34 +01:00
Flyinghead
96aaa8b14a
elan: don't map RAM with vmem if not naomi2 game
...
Issue #839
2022-12-24 13:33:16 +01:00
Flyinghead
53ed006a54
naomi: 18wheeler, soulsurfer and wldrider input improvements
...
18wheeler: limit wheel range. Issue #693
18wheeler: Implement gear tristate lever with 2 buttons. Fake motor drive board to avoid error messages in deluxe version.
soulsurfer: floormat button/contact is always on
wldriders: unmap rear brake so it doesn't have to be released
2022-12-24 10:48:17 +01:00
Flyinghead
62085539a7
dynarec: reg alloc 64-bit regs. avoid some interpreter fallbacks
...
Option to reg alloc 64-bit regs in two host regs. Used when FPSCR.SZ ==
1 (64-bit reg and memory transfers.) Enabled for arm, arm64 and x64
(windows only) dynarecs.
Don't fallback to interpreter when FPSCR.PR==1 (double precision) for
FMOV, FLDS and FLTS.
2022-12-23 16:06:54 +01:00
Flyinghead
9578841480
pvr: fix texture bleeding before making indexes
...
fix crash with sorted triangles.
Issue #836
2022-12-22 13:15:32 +01:00
Matt Phillips
6d913f42c8
Host-side profiler - initial commit ( #834 )
...
* Host-side (Flycast) profiler - initial commit
* Profiler - configurable frame warning time
* Compile fix for !DC_PROFILER
2022-12-21 11:24:11 +01:00
Flyinghead
ce674a872a
dyna: implement missing ops: ldc/stc sr/fpscr, tas, div1
...
add dynarec implementations for missing ldc and stc ops with sr and
fpscr
add dynarec implementation for tas.b
canonical implementation for div1
delete unused reg_old_sr_status and reg_sr
2022-12-17 11:09:51 +01:00
Flyinghead
51758b965e
ggpo: disable full framebuffer emulation. memwatch perf fix
...
Disable full framebuffer emulation with ggpo if threaded rendering is
enabled. Would require thread synchronization on VRAM page map.
memwatch: do single lookup on page map in hit()
2022-12-17 10:54:01 +01:00
Flyinghead
7fec511463
maple: don't recreate devs on rollback. Raise error if dest is invalid
...
maple: raise error is maple dest dma address isn't on RAM
maple: don't recreate maple devices when loading a rollback savestate
2022-12-17 10:51:12 +01:00
Flyinghead
f133e3cccb
verify() must not call a function with side-effect
2022-12-16 20:40:23 +01:00
Matt Phillips
7176460de3
External windows serial console ( #828 )
...
* Open external console for serial output on Windows
(cherry picked from commit e41a1410b9
)
* Compile fix for _UNICODE
(cherry picked from commit 4e6927bd27
)
2022-12-15 22:49:20 +01:00
Matt Phillips
733a1fa73d
Added USE_DX9 and USE_DX11 as configurable options in CMake
2022-12-15 22:48:38 +01:00
Flyinghead
f9feaa313b
pvr: sort triangles during parse. Use primitive restart
...
Sort triangles during ta_parse. Use the same index as other polys. Store
results in rend_context.
Use primitive restart if available to avoid too many degenerate
triangles.
Update renderers.
2022-12-13 22:57:57 +01:00
Flyinghead
a0a9b5bbc5
holly: crash when reading a write-only register
2022-12-12 22:15:12 +01:00
Flyinghead
cdca559d99
ggpo: optimize memwatch, save/load state. endOfFrame on vblank in
...
ggpo: Optimize memwatch and load/save state. Unprotect memory before restoring a state. Smaller timesync wait. Missing error handling.
pvr: call ggpo::endOfFrame() on vblank in only
ssa: fix warning
2022-12-10 17:19:34 +01:00
Flyinghead
32e3e7d9c5
vmem: no more 4GB vmem mode. only map elan RAM in naomi2 mode
...
Do not attempt to reserve 4GM of virtual space on 64-bit hosts. Use
512MB everywhere.
Don't map elan RAM if not needed and dont protect/unprotect it in
memwatch.
2022-12-09 17:37:49 +01:00
Flyinghead
9069a49145
pvr: take jitter into account in spg sheduler. fix scheduler edge case
...
Take jitter into account when calculating current scanline
Scheduler would miss the next int if it's on the next scanline
Support for Hblank interrupt mode 2 (every scanline)
2022-12-06 22:04:37 +01:00
Flyinghead
d417237e64
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/emulator.cpp
2022-12-06 21:47:50 +01:00
Flyinghead
446619ce85
atomiswave only has 2 MB of aica ram
...
new savestate version
build.h clean up
2022-12-06 20:51:45 +01:00
Flyinghead
f5fa1f6210
holly, sh4: reg access handlers don't need size. SB_FFST constant 0
2022-12-06 20:42:00 +01:00
Flyinghead
976fb99aa3
pvr: naomi mvsc2 needs more rendering cycles
...
Regression introduced by 0b0e64304e
2022-12-06 19:50:34 +01:00
Flyinghead
8001af9743
sh4: proper write masks for memory-mapped registers
2022-12-06 17:58:30 +01:00
Flyinghead
59ff44132b
aica: get rid of audio samples batching
...
Some audio issues are reported because of this option and the now
correctly clocked aica cpu.
2022-12-05 18:34:52 +01:00
Flyinghead
4c7df6c7f4
pvr: don't merge polys in per-triangle. merge polys in per-strip
...
Merging polygons in per-triangle can produces a large number of
degenerate triangles (up to x3), which must then be sorted, resulting in
a performance hit. This is useless since the sorted triangles are merged
after being sorted. (Regression introduced by
20d25059bf
)
Issue #818
In per-strip mode, polygons are now sorted before creating the index and
merging. So it doesn't have to be done in the renderer anymore.
2022-12-04 16:31:39 +01:00
scribam
f6532ca27a
fix some warnings
2022-11-19 12:52:26 +01:00
Flyinghead
19204882c4
pvr: reschedule spg when SPG_HBLANK_INT is updated
...
Fixes Triggerheart Exelica input lag
Issue #691
2022-11-04 18:34:43 +01:00
Flyinghead
2332884d8b
maple: lower xfer rate to 1 Mbps. More accurate payload size calculation
...
Maple bus max xfer rate is 2 Mbps but actual speed is 1 Mbps.
Fixes Slave Zero (PAL) freeze with HLE.
Some improvements on payload size calc. Clean up.
2022-11-04 11:22:50 +01:00
Flyinghead
94f3d80a75
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# CMakeLists.txt
# core/hw/pvr/Renderer_if.cpp
# core/oslib/audiobackend_alsa.cpp
# core/rend/vulkan/desc_set.h
# core/rend/vulkan/oit/oit_drawer.cpp
2022-11-02 20:12:34 +01:00
Flyinghead
0b0e64304e
pvr: adaptive end-of-render interrupt delay
...
EoR interrupt delay now depends on the TA context size.
Issue #634
Fixes issues with FMV in some WinCE games (Resident Evil 2, Next Tetris,
Nightmare Creatures 2)
2022-11-01 18:29:44 +01:00
Flyinghead
5a1a766bd4
pvr: emu unresponsive if no render. Present when FB_R_SOF = FB_W_SOF
...
Fix no input polling while waiting for present.
Present frame immediately if FB_R_SOF = FB_W_SOF.
2022-11-01 18:23:54 +01:00
Flyinghead
40dbf53792
pvr: use render pass # to read the right tile when marking blocks
...
Fixes Unreal Tournament flashing/black screen.
gl: mark vram area in rtt to avoid overwriting data (Worms World Party)
Force Worms World Party to use CopyToVRam (regression due to
6a5db32d5d
)
Don't calculate precise aspect ratio and use 4/3 instead (or more if
widescreen or stretch).
Fix clipping issue when using SCALER_CTL.vscalefactor. Avoir crash when
clip values are >= width or height.
vulkan: RenderFramebuffer wasn't working at all if !EmulateFramebuffer
2022-10-30 12:10:24 +01:00
Flyinghead
c1f0dd81d2
pvr: copy pvr regs at start_render time to avoid concurrent update
...
copy TA_GLOB_TILE_CLIP and SCALER_CTL to rend context when starting
render. Use rend context copy to calculate framebuffer size.
Fixes framebuffer size glitches in vf4 water stages.
lr: pass aspect ratio when resizing.
dx11: Wrong sizing of rotated games.
gl: test automation fixes.
2022-10-25 15:00:04 +02:00
Flyinghead
5722dc90f0
Full framebuffer emulation. Renderer interface changes
...
Helps for:
Densha de Go! 2, Issue #171
Vigilante 8, Issue #275
Xtreme Sports
Sonic Shuffle
The Ring of the Nibelungen
2022-10-23 16:32:42 +02:00
Flyinghead
e3c260f4ca
pvr: don't use op list to mark block if tile pointer is null
...
Naomi Doom sets the opaque list block to null in the tile, but op size
in TA_ALLOC_CTRL is non-zero. So use the TR list in this case.
Issue #682
2022-10-23 15:49:23 +02:00
Flyinghead
decf70c87c
get rid of INLINE, NOINLINE, __forceinline
2022-10-22 22:14:19 +02:00
Flyinghead
1fd95c2886
Roadsters (US) doesn't support RGB cable
...
Issue #791
Compile warnings
2022-10-21 10:54:26 +02:00
Edward Li
93e1d7fcee
`rend_resize_renderer_if_needed` check for window size changes also
2022-10-20 09:51:04 +02:00
Edward Li
6add19fb04
unprotect elan memory during `dc_reset` hard
2022-10-15 21:32:49 +02:00
Flyinghead
1858cf3b33
Merge remote-tracking branch 'origin/master' into dev
2022-09-24 19:28:38 +02:00
Flyinghead
aa97a6d64f
pvr: last naomi2 poly was ignored in some cases
...
Fix the disappearing moustache in wild riders
Fix other potential edge cases in pvr parsing
2022-08-25 19:34:23 +02:00
Flyinghead
e0d87eb093
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/rend/gui.cpp
2022-08-22 13:09:56 +02:00
Flyinghead
85b8c599c4
pvr: object list is sometimes shared between op and tr modvols
...
Region tile object list pointers can be identical for op and tr modvols,
in which case tr modvols should be drawn using op modvols geometry.
Used by crazy taxi 1/2, alien front online, daytona usa and probably
many others.
Issue #717
2022-08-22 12:38:04 +02:00
Flyinghead
807b8dea91
lr: Framebuffer size and aspect ratio. Fix vmu size and position (GL)
...
gl4: fix lightgun xhair size and position
2022-07-19 20:26:37 +02:00
Flyinghead
8e8935b9c4
pvr: xform matrix 240p support. screen stretching changes
...
Use FB_R_CTRL.vclk_div to detect progressive mode.
transform_matrix: Support non-4:3 aspect ratio such as 640x240. Don't
expect 480 height. Issue #690
Add black bars at top and bottom if screen aspect ratio is too low.
Issue #584 .
Framebuffer size doesn't depend on screen stretching. Stretching is done
when blitting to screen.
lr: correct subsequent stretching when drawing vmus and xhair
2022-07-18 18:21:09 +02:00
Flyinghead
9d17fc15a3
gdrom, hle: don't restart cdda if paused or playing
...
Fix regression due to ab791d1b9c
(unpausing restarts the current track)
Issue #690
2022-07-14 16:49:56 +02:00
Flyinghead
ab791d1b9c
gdrom: ignore CD_PLAY when already playing, not when paused
...
Issue #690
2022-07-13 12:52:29 +02:00
Flyinghead
4f206d2773
pvr: set correct framebuffer size in 240p/pixel_double
...
Some games use 240p and pixel_double resulting in a 320x240 framebuffer.
Renderer should be resized accordingly.
Fixes linear filtering artifact in KoF dream match 1999 (Issue #690 )
2022-07-12 15:55:49 +02:00
Flyinghead
7f9d9b81aa
gdrom: don't reset current cdda sector on cd_play if already playing
...
Issue #690
2022-07-12 15:33:11 +02:00
Edward Li
c77c3ab015
DRY
2022-07-09 11:46:27 +02:00
Flyinghead
f4986008fe
jvs: fix 86-request decoding
...
Fixes kingrt66 inputs when networked
Issue #673
2022-07-05 14:34:57 +02:00
Flyinghead
19112aecb2
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/hw/naomi/naomi_cart.cpp
2022-07-01 12:42:37 +02:00
Flyinghead
5f5a748031
boxart: batch uid searches. Bios image. More arcade rom name changes
2022-06-23 22:06:50 +02:00
Flyinghead
74852520dc
maxspeed: allow use of per-game network settings
...
Issue #671
2022-06-20 20:56:53 +02:00
Flyinghead
7bcd8c819a
arcade rom names update. non square boxart
...
Correct handling of non square images
Improve search for arcade game names
Retrieve other images if no boxart (titlescreen, screenshot)
Changed some arcade rom names to more friendly ones
2022-06-20 18:07:06 +02:00
Flyinghead
11ecb473b6
new option to broadcast digital outputs over the network
...
Similar to MAME's "-output network" option. Should be compatible with
MAME Hooker and the like.
Limit boxart images loaded per frame to 10.
2022-06-16 16:50:26 +02:00
flyinghead
afd07c25ba
pvr: store tex address in render context. texture cache refactoring
...
Store FT_W_SOF1 and FT_W_CTRL in render context since they can be
modified before render end. New tentative fix for vf4 water reflection
flashing black during netplay.
Refactor texture cache to use constructors. RTT code moved from
renderers.
Partial revert of ddcd3861d3
2022-06-11 13:24:22 +02:00
Flyinghead
b5f1552ed8
elan: don't crash on invalid texture xfer size
...
Issue #647 : fixes initdv3jb area conquered crash
2022-06-06 15:54:25 +02:00
Flyinghead
71ac212dc7
elan: disable texture for vertices without UV coordinates
...
Fixes initial D white transparent quad at start of race
2022-05-30 16:15:15 +02:00
Flyinghead
e84cdce398
reios: flashrom read returns 0 on success. system id/timezone flash fix
...
flashrom read returns 0 on success, not size read.
Fixes Slave Zero (PAL) crash
2022-05-21 15:46:22 +02:00
Flyinghead
af2fe242f9
flash: console id is checksummed
2022-05-18 14:58:21 +02:00
Flyinghead
58d1f7cee1
pvr: reset nextContext in Reset(). Use tactx_Alloc for direct fb render
...
Fix crash with multipass renders
Issue #634
2022-05-16 13:04:38 +02:00
Flyinghead
430256266f
pvr: lightModels TA overrun on beach spikers
...
Better sizing of TA_context lists
2022-05-15 13:41:03 +02:00
Flyinghead
f9e38b11d9
pvr: restore TA_context pool
...
fixes performance regression on android
2022-05-15 13:37:58 +02:00
Flyinghead
39bb94dd55
jvs: don't scale ninja assault lightgun coordinates
...
Fixes reload issues (Issue #610 )
2022-04-30 11:50:56 +02:00
Flyinghead
afb0a80de1
pvr: autosort needs empty passes to be accounted for
...
Issue #612
2022-04-29 11:37:17 +02:00
Flyinghead
49932e02a6
gdrom: generate raw subcode
2022-04-27 14:32:53 +02:00
Flyinghead
fc9e1e401b
naomi: emulate midi ffb drive board response
...
needed for driving simulator
2022-04-27 14:28:58 +02:00
Flyinghead
3b81bbcae5
naomi2: gmp diffuse/specular flags select vertex or model colors only
...
These flags shouldn't be used to disable diffuse/specular shading
Fixes road surface glitches in initdv3e (Usui map)
2022-04-21 13:55:09 +02:00
Flyinghead
902fc2cbe8
naomi: override Region settings if current region BIOS isn't found
2022-04-20 14:16:15 +02:00
scribam
aa6c9e2106
msvc: fix linking issues in debug build
2022-04-17 13:24:37 +02:00
Flyinghead
039c666247
more types.h clean up. better aica handler templates
2022-04-15 17:03:49 +02:00