Saturate alpha when strictly greater than threshold, not >=
Don't put rendered texture in cache if rendering to texture buffer
(VRAM)
Fixes Skies of Arcadia start menu
AICA arm7 dynarec implementation for arm64
Use tail calling and block linking in sh4 dynarec
Revert to not using "explode spans" as it's slower
Fix float precision issue on x64 when using AVX instructions
Minor optimizations for x64 and arm64
win32: implement proper seh prologue
fix a cpu feature lookup
disable LTO
win32: add more xmm register to allocate and don't save them when
calling out
generates direct vmem read & write accesses
trap sigsegv and rewrite using slow path
add w29 to allocatable registers
save x30 in ngen_mainloop prologue (fix libretro crash)
get rid of literals and use pc-rel branching
use explode_spans to allocate regs for V2 and F64 params
minor optimizations and cleanup
Use 32-bit index to allow for more than 64K vertices per frame (alpilot)
Fix unaligned size memory access.
Fix ggx15 coin chute issue by allowing 5 consecutive reads.
Use naomi BIOS for alpilot as airlbios crashes in the test menu.
Add gouraud bit to mask that affects drawing.
The new synchronous rendering option can cause the emu thread to wait
for the current frame to finish render.
It needs to be awakened when loading a state.
Use xxhash for palette hashing (faster)
Change extra depth scale in rom lut tables and enable it for NHL 2K2
Change 'TV (VBS/Y+S/C)' to 'TV (Composite)'
Add a time slice to the cycle counter instead of resetting it.
Same as other dynarecs. Better precision scheduling.
Fixes Gundam Side Story freeze at boot
This commit includes math that calls std::min but can pass two different parameter types (in my case, double and int).
https://github.com/6alileo/reicast-emulator/commit/500393a02d3ecad934065cf0a8219ed9e7016bca
The std::min function does not support comparing variables of different types. Since the author of this commit already cast one of the parameters, this PR just adds the matching cast on the other parameter. There's a few different ways to resolve but this seemed like the best option.
For reference, this fixes the following compile error:
In file included from /usr/include/c++/6/vector:60:0,
from ./core/types.h:342,
from core/libretro/libretro.cpp:4:
/usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
min(const _Tp& __a, const _Tp& __b, _Compare __comp)
^~~
/usr/include/c++/6/bits/stl_algobase.h:243:5: note: template argument deduction/substitution failed:
core/libretro/libretro.cpp:2415:123: note: deduced conflicting types for parameter 'const _Tp' ('double' and 'int')
vib_stop_time[port] = get_time_ms() + min(1000 * (INC ? abs(INC) * max(POW_POS, POW_NEG) : 1) / FREQ, (int)max_duration);
^
Makefile:751: recipe for target 'core/libretro/libretro.o' failed
Load default eeprom from mame rom if present
Fix controls for hotd2 and alpilot
Fix vathlete graphical gltches due to huge negative z values
GD-rom games now have proper game id
Fix csmash crash entering game test mode