Flyinghead
5894992f70
android: don't use storage for default buttons.png
2020-03-24 23:31:34 +01:00
Flyinghead
c098790f3b
naomi: connect C1 VMU fvor P2
2020-03-24 23:22:57 +01:00
Flyinghead
09c439bbe8
naom: VMU support (vonot, sf3zu). Fix otrigger inputs.
2020-03-23 17:48:43 +01:00
Flyinghead
c5b56b874c
Merge remote-tracking branch 'origin/fh/win32-sdl'
2020-03-23 14:52:25 +01:00
Flyinghead
39d81923c9
keyboard support for totd and luptype
2020-03-23 14:09:50 +01:00
Flyinghead
f99d7fa262
naomi: add default eeproms
2020-03-22 16:46:16 +01:00
flyinghead
8db02cf503
sdl: Support hats. Save/restore window state and size. Fullscreen mode
2020-03-22 14:10:07 +01:00
flyinghead
6831258a57
win: include SDL2 in deps
2020-03-21 17:10:01 +01:00
flyinghead
8f92315207
Use sdl on windows
2020-03-21 15:25:02 +01:00
Flyinghead
5a1b7374e5
change icons. display error message when game fails to load.
2020-03-21 15:05:38 +01:00
Flyinghead
0c2e95185c
support for right analog stick. Fix gunsur2 inputs
2020-03-20 16:57:50 +01:00
Flyinghead
bccea0e991
win32: link pthread statically. Alien Front naomi needs safe mode
2020-03-20 12:42:13 +01:00
Flyinghead
6b2e815b49
naomi: fix monkey ball inputs
2020-03-19 23:38:01 +01:00
Flyinghead
e44ed4a8e8
gdrom: don't resume cdda if not playing. stop if cur > end
2020-03-19 17:04:47 +01:00
Flyinghead
34ac18479f
osx build fix
2020-03-18 19:09:25 +01:00
Flyinghead
54261b69c9
renderer: handle mipmap D-adjust param (convert to lod bias)
2020-03-18 18:51:34 +01:00
Flyinghead
268b0cdcfd
vulkan: mipmap levels must be 4-byte aligned
2020-03-17 19:24:00 +01:00
Flyinghead
ef223bb20d
vulkan: disable vulkan 1.1 on android for now
...
Issue #30
2020-03-17 16:34:14 +01:00
scribam
6dd35cc811
Add NOMINMAX for MSVC and use <algorithm>
2020-03-16 23:44:06 +01:00
scribam
1afc102910
Compilation fix for ao audio backend
2020-03-16 18:17:51 +01:00
Flyinghead
1abfdaf64e
audio: pulse async driver, null driver, latency setting
...
Pulse: use async API instead of simple API
Null driver: no audio driver with accurate timing
Add latency setting to alsa, pulse and android drivers
android: start and stop AudioTrack on audiobackend init/term
Simplify audiostream. Get rid of "none" option
2020-03-14 22:46:40 +01:00
Flyinghead
ad3dce1102
fix alignment issues reported by ubsan on x64
...
Fix chd lzma and zlib buffers alignment
Fix ChannelEx struct alignment
2020-03-14 22:23:13 +01:00
Flyinghead
e3313d27b2
custom texture: stop loader thread before loading state
2020-03-13 18:01:33 +01:00
Flyinghead
4e73af0f94
Mem leaks in input mapping/jvs/x11. Fix crash when latin-1 char is input
...
Fix warnings
2020-03-12 16:09:05 +01:00
Flyinghead
aff2b9e1af
fix simple texture bleeding case when upscaling. Clean up
2020-03-11 17:55:13 +01:00
Flyinghead
8567c42b30
gl4: Use GL_LINEAR_MIPMAP_LINEAR for mipmapped textures
...
improve custom texture packs rendering quality
2020-03-10 17:55:44 +01:00
Flyinghead
a5171a1d09
gl,gl4: don't use GL_NEAREST_MIPMAP_LINEAR if tex isn't mipmapped
...
fixes black grass in Virtua Striker 2
2020-03-10 15:32:17 +01:00
Flyinghead
0b6b6339ed
nvmem: generate console ID at startup. rec-x64: Call stack alignment
...
Generate console ID in dc_nvmem.bin if blank. Used by chuchu rocket
login.
Align stack to 16-byte
2020-03-10 14:47:45 +01:00
Flyinghead
5b644cf1ca
gl: switch to GL_NEAREST_MIPMAP_LINEAR for mipmapped textures
2020-03-09 23:29:02 +01:00
Flyinghead
03f096384b
generate mipmaps for custom textures when needed
2020-03-09 22:49:05 +01:00
Flyinghead
015dcf117d
naomi: enable lightgun if one is connected
2020-03-09 21:03:54 +01:00
Flyinghead
797dabe11f
Add more buttons for arcade games. Show arcade mapping in UI.
...
Issue #40
2020-03-09 19:44:16 +01:00
scribam
53bde38035
Replace DECL_ALIGN macros by alignas
2020-02-27 22:17:33 +01:00
Flyinghead
21f1517a5f
dsp x64: use returned code buffer ptr on windows cuz it's reallocated
...
fixes dsp crash on windows
2020-02-27 11:52:00 +01:00
Flyinghead
99f04ec753
nuke softrend
2020-02-26 23:41:05 +01:00
Flyinghead
1b8c2a63c2
stop being permissive
2020-02-26 23:00:29 +01:00
Flyinghead
f7e811e463
x64 dsp: OSX fix
2020-02-26 19:46:46 +01:00
Flyinghead
091c14c78a
X64 dsp jit compiler
...
fix clamping in arm64 dsp
2020-02-26 18:38:05 +01:00
Flyinghead
6bfde76514
vk: avoid calling List::head() in loops
2020-02-25 16:34:49 +01:00
Flyinghead
0ef54aa16b
vram32 small optim
2020-02-25 12:55:26 +01:00
Flyinghead
dd29a62811
remove buggy LimitFPSAuto option
2020-02-25 12:52:21 +01:00
Flyinghead
0ff22ed0a6
custom tex: disable mipmapping when dumping textures
2020-02-21 16:16:54 +01:00
Flyinghead
75bfd25224
custom tex: support v1 (content+pal) and v3 (...+format) hashes only
2020-02-19 18:48:56 +01:00
Flyinghead
e2b3ef147d
custom tex: recreate gl/vk texture when loading custom tex. vk crash
2020-02-19 14:31:35 +01:00
Flyinghead
1cf4c36ede
disable div matching for Donald Duck Goin' Quackers
2020-02-17 18:26:14 +01:00
Flyinghead
9f565f2d41
vulkan: corrupted textures with mipmap and xBRZ
2020-02-17 18:26:14 +01:00
Flyinghead
3ddce6dd45
fix crash when enabling xBRZ filtering
2020-02-17 18:26:14 +01:00
Flyinghead
8a9400ca29
GD: Implement ATA_IDENTIFY as per qemu
2020-02-11 21:25:01 +01:00
Flyinghead
84ba8afe0f
Ignore tex address and stride in texture hash
2020-02-09 23:08:11 +01:00
scribam
29f2391230
zip: use the public api to get a file from crc
2020-02-07 22:47:18 +01:00
Flyinghead
3f7ea1fda9
fix crash for 1x1 TW textures
2020-02-07 20:41:59 +01:00
Flyinghead
391cbdc044
restore previous twiddle table for non-square tex
2020-02-07 19:13:23 +01:00
Flyinghead
dd80114bf7
osx build fix
2020-02-07 17:01:42 +01:00
Flyinghead
9826afa063
upload all texture mipmap levels to gpu
...
implemented for gl/gl4/vulkan/oit
don't auto-generate mipmaps in vulkan
simpler/smaller detwiddle table
use std::lock_guard with cMutex
2020-02-07 16:55:32 +01:00
Flyinghead
49c6a55f24
vulkan oit: pass native blend function values to shader, not vulkan ones
...
Fixes missing texture in Plasma Sword start screen
2020-02-06 11:39:05 +01:00
Flyinghead
333b21fac4
Fix .elf support. Init aica irq mask/level during HLE boot
...
BSC PCTRA is 32-bit wide
2020-02-05 18:02:44 +01:00
Flyinghead
5f604d3bcb
switch to TV composite if RGB not supported
2020-02-04 11:49:17 +01:00
Flyinghead
dcf5444acc
stop cdda when reading sector
2020-02-02 21:15:53 +01:00
Flyinghead
f9d8733604
reios: fix regression due to non-zero GDROM sense codes at startup
2020-02-02 11:07:32 +01:00
Flyinghead
b79c074444
axe wchar
2020-01-31 23:51:12 +01:00
Flyinghead
d476b7901a
axe snat
2020-01-31 23:23:26 +01:00
Flyinghead
80a0f467d7
fix crash when screen scaling is custom. fix rpi3 build
...
DiscSwap and InitDrive are now the same
2020-01-31 18:33:16 +01:00
Flyinghead
2510964047
Force use of real BIOS when booting BIOS
2020-01-31 11:59:19 +01:00
Flyinghead
79fef77099
Open CDI/GDI/CHE/CUE with their corresponding driver only
...
don't crash or leak memory when opening an invalid or empty GDI or CUE
file.
Better error reporting
2020-01-31 10:35:10 +01:00
Flyinghead
e017fba9c1
vulkan: fix scissoring when SSAA > x1 in widescreen mode
2020-01-30 20:08:30 +01:00
flyinghead
d6fe3526a4
Merge pull request #35 from vkedwardli/enable-upscaling
...
Enable upscaling for up to 8x SSAA
2020-01-30 19:03:15 +01:00
Flyinghead
aaaf093af7
Allow ejecting and changing the disk while in-game
2020-01-30 19:01:47 +01:00
Edward Li
1d72f66de9
Enable upscaling for up to 8x SSAA
2020-01-30 03:31:42 +08:00
scribam
4161ca9b07
msvc build fixes
2020-01-28 19:08:22 +01:00
Flyinghead
aac665e617
better joystick handling for wldkicks. fix blockpong controls
...
limit magnitude of joystick for wldkicks
fix blockpong controls (reverse x axis)
2020-01-27 22:08:39 +01:00
Flyinghead
76d7e8b653
naomi: wldkicks inputs
2020-01-26 23:23:59 +01:00
Flyinghead
0d9214df40
replace Array with std::array
2020-01-25 11:00:34 +01:00
Flyinghead
12193f9510
fix serialize crash
2020-01-25 09:56:26 +01:00
Flyinghead
81c9312fb4
naomi: use crc to find roms
2020-01-24 23:55:54 +01:00
Flyinghead
7d33816d25
naomi: fix reboot. clean up
...
fix reboot (and exiting service menu) by disabling legacy dimm board
emulation
clean up. typo in var name
2020-01-24 23:30:16 +01:00
Flyinghead
48efdac9b4
naomi: open by crc for zip and 7z. add mvsc2u crc rom info
2020-01-24 21:55:12 +01:00
Flyinghead
573a298bba
naomi: emulate mazan inputs
2020-01-24 15:43:19 +01:00
Flyinghead
ff69efff48
ignore trilinear filtering if texture isn't mipmapped
...
fixes shenmue snowflakes color
2020-01-21 19:52:09 +01:00
Flyinghead
ef3512a2f3
gl4: fix blending issue when autosort=0
...
Fixes Sturmwind menu
2020-01-20 22:37:24 +01:00
Flyinghead
31651c2ac6
more build fixes
2020-01-20 13:49:29 +01:00
Flyinghead
81c7c37707
build fix
2020-01-20 13:27:04 +01:00
Flyinghead
3e6bef3cc0
option to pipe the dc serial port to a pty on linux
...
allow the use of dcload-serial
2020-01-20 13:22:36 +01:00
Flyinghead
3b83a4e4d5
minor changes
2020-01-16 22:19:07 +01:00
Flyinghead
cbf81e772f
disable div matching for more games
2020-01-16 21:49:53 +01:00
Flyinghead
2b389a2142
no div matching for Aqua GT. Set correct input board for mazan
...
non functional changes
2020-01-15 22:50:07 +01:00
Flyinghead
7f30c7078d
pvr: better saturation of colors when converting tex to higher precision
2020-01-15 10:55:25 +01:00
Flyinghead
8cadf0a775
arm32: fix xtrct dynarec implementation
...
Fixes Speed Devils issues
2020-01-09 13:25:31 +01:00
Flyinghead
ed1bea6a35
Get rid of the pregap for .CUE audio tracks
...
Fixes Bangai-O CDDA delay
2020-01-09 13:25:31 +01:00
Flyinghead
4fa18dbaea
arm64: fix xtrct dynarec implementation
...
Fixes Speed Devils issues
2020-01-09 13:25:31 +01:00
flyinghead
ad67f9bbb9
win32: fix savestate file path with mixed / and \
2020-01-08 19:00:56 +01:00
Flyinghead
678fc54934
cue: Set proper CTRL value
...
Fixes WinCE games hanging at startup
2020-01-08 11:30:46 +01:00
Flyinghead
d8cef3f6a9
Merge branch 'fh/vulkan' of https://github.com/flyinghead/flycast into fh/vulkan
2020-01-08 11:00:31 +01:00
flyinghead
36a7c00507
win32: fix crash when switching to vulkan
...
fix recursive call to VulkanContext::Init
still crashing when starting with vk and switching to GL
2020-01-08 10:58:24 +01:00
Flyinghead
17501e880e
vmem: unmap all reserved vmem at exit
2020-01-07 20:45:44 +01:00
Flyinghead
1b49bdd31e
reduce save states size by ~20mb
2020-01-07 20:13:33 +01:00
Flyinghead
2f3b4fae53
awave: use light guns for Ranger Mission and Extreme Hunting
2020-01-07 20:10:59 +01:00
Flyinghead
43d924ceae
vulkan: reset physical device at init
...
don't use PhysicalDeviceProperties2KHR with vulkan 1.0
tentative fix for issue #30
2020-01-06 21:33:31 +01:00
Flyinghead
73d34a9ab5
aica: generate samples when arm is disabled (dynarec)
...
Restores sound in Twinkle Star Sprites when dsp is enabled
Fix armwrestler MOV and LDR dynarec errors
Better cycle counting
2020-01-06 20:53:49 +01:00
Flyinghead
a6839f57e7
vulkan: only use per-pixel sorting when needed
2020-01-05 23:03:44 +01:00
Flyinghead
f7655091b0
gl4: only use per-pixel sorting when needed
...
if not using autosort, there's no need to use per-pixel sorting
fixes issues with Psyvariar2 and HeadHunter
2020-01-05 20:44:39 +01:00
Flyinghead
76b7970589
osx: xcode 11 / swift 5
2019-12-26 21:41:44 +01:00
Flyinghead
d49373b0f9
vulkan: VMU display
...
Reset pipeline when switching per-triangle/per-strip
Adreno workaround test typo
clean up
2019-12-25 13:09:54 +01:00
Flyinghead
be50fca2d6
gl: (oit) Far plane is 0 in final depth test. minor gl cache reset fix
...
other misc changes
2019-12-25 13:05:42 +01:00
Flyinghead
b975f5d4bd
chd: use after free
2019-12-23 18:29:14 +01:00
Flyinghead
13de6b9a1e
pvr: avoid TA data buffer overflow and raise Object List overflow int
...
fixes Ooga Booga crash/hang in offline and online multiplayer
2019-12-23 12:25:45 +01:00
flyinghead
3415ce5577
win32: detect platform. SDL support
2019-12-22 23:49:52 +01:00
flyinghead
424a02cdf3
vulkan: workaround for intel driver bug when depth write is disabled
...
backport adreno driver translucent modvol workaround
2019-12-22 17:48:24 +01:00
Flyinghead
a5a71bec0b
Arm7: Fix reads from PC
...
When using dynamic shift, PC is offset by 4 due to pipeline effects
merge from upstream
2019-12-18 19:22:42 +01:00
Flyinghead
3294b36961
limit dc analog axes magnitude
2019-12-17 23:41:32 +01:00
Flyinghead
12b9b7254a
reduce precision of FIPR and FTRV sh4 ops on x86 platforms
2019-12-17 20:23:58 +01:00
Flyinghead
7ab275d4b5
naomi: faster gdrom loading
2019-12-15 21:22:51 +01:00
Flyinghead
29fd406dd8
vulkan: crash on windows when switching from gl to vulkan
...
Destroy and recreate window when switching from gl to vulkan
VkGetPhysicalDeviceProperties2 crash with old nvidia driver (376)
2019-12-14 17:53:01 +01:00
Flyinghead
553343e698
suport latest lr core savestate format
2019-12-13 12:59:35 +01:00
Flyinghead
530cdaa23f
use doubles to emulate FIPR on x86. avoid crash with per-game config
...
Don't store the renderer type in per-game config as this crashes.
Fixes Sonic Adventure falling off track
Other non-functional changes
2019-12-13 12:27:43 +01:00
Flyinghead
c683e0ded8
vulkan: push constants when starting render pass to avoid crash (mali)
2019-12-11 22:31:35 +01:00
Flyinghead
78987074a6
renderer: add 32bpp conversion routines for bump map textures
2019-12-10 16:15:14 +01:00
Flyinghead
5ac104fb0e
Disable startx/starty crt shifts for now. vk: fix OIT buffer size issue
2019-12-10 15:19:41 +01:00
Flyinghead
066093553f
vulkan: copy provoking vertex. crash when rtt2vram. rtt vram stride
...
setImageLayout was missing TransferSrcOptimal as source layout
Vulkan needs the first vertex to be the provoking vertex so copy 3rd on
1st when flat shading.
VRAM stride was incorrect (RTT to VRAM)
2019-12-10 12:51:10 +01:00
Flyinghead
637ad3b214
vulkan: delay destroying in-flight images. Fix inside clipping.
...
Keep in-use imave and image views when the texture is updated.
Fix inside clipping (18 wheeler rear mirror)
Wait until the graphics queue is idle before changing shared buffers and
attachments.
Refactoring
2019-12-09 19:37:14 +01:00
Flyinghead
3b86c57d0e
texture corruptions with some wince games
...
vram wasn't protected in some cases
Worms World Party, Tomb Raider - Final Revelation, Hundred Swords
2019-12-09 13:17:58 +01:00
Flyinghead
a1981c48b6
vulkan: transition oit depth attachment after init. Avoid empty buffer
2019-12-08 22:39:30 +01:00
Flyinghead
6439e01087
pvr: force background plane not textured
2019-12-08 22:31:08 +01:00
Flyinghead
369624b28f
vulkan: check if api 1.1 is available. fix screenshot R&B swap
2019-12-08 22:22:40 +01:00
Flyinghead
a331c7bd84
vulkan: missing BeginFrame call
2019-12-07 22:13:22 +01:00
Flyinghead
9acbfae25d
vulkan: don't allocate more than allowed
2019-12-07 22:12:14 +01:00
Flyinghead
e14115683e
vulkan: don't use anisotropic filtering with nearest. Set max to 4
...
fixes issues with adreno
2019-12-06 17:16:59 +01:00
Flyinghead
4730da31d5
vulkan: fix modvols. fix depth-write disabled poly. optimizations
...
stencil must be reset to zero if poly isn't shadowed -> fixes jet set
radio "see-through" shadows
take culling into account for modvols
oit: reduce per-pixel and per-poly mem usage
oit: framebuffers weren't resized when needed
oit: poly with depth write disabled weren't drawn (Soul calibur missing
water surface)
Fix glsl error when two-volume mode needs fog attachment
2019-12-05 18:48:54 +01:00
Flyinghead
21b2eb3e5d
vulkan: fix clipping (alpilot black screen)
2019-12-04 19:06:14 +01:00
Flyinghead
cd49b32473
vulkan: allocate oit buffers in device-local mem. NVidia fixes
...
BufferData was always allocated in host visible mem, regardless of the
mem property argument.
NVidia gpus don't support blitting to 565 and 5551, which is needed for
mipmaps, so convert to 8888 instead.
Use optimal tiling for oit pointers image (linear not supported by
nvidia and probably slower anyway)
oit screen drawer uses multiple final attachments
Set non-oit depth attachment as transient and lazily allocate mem
2019-12-04 15:51:26 +01:00
Flyinghead
8f80b427df
vulkan: move oit renderer to own directory
2019-12-04 09:41:27 +01:00
Flyinghead
5f265d03fe
vulkan: use a chain of final color attachments
...
glcache: clear tex param cache
2019-12-03 21:29:37 +01:00
Flyinghead
6865d74a85
vulkan: use last rendered frame as background for ui
2019-11-30 12:14:36 +01:00
Flyinghead
cf7aa4f310
vulkan: disable debug
2019-11-29 19:54:43 +01:00
Flyinghead
0280fcc9d4
vulkan: render to temp fbo then to screen
...
renderers render to image which is blitted to the screen by the context
batch texture updates command buffers and submit once
fix screen scaling
2019-11-29 19:28:22 +01:00
Flyinghead
dae0908735
vulkan oit: fix imgui overlay
...
re-init imgui with the oit render pass when running game. use regular
render pass otherwise.
2019-11-26 18:28:48 +01:00
Flyinghead
ed538f7dce
vulkan: osx and arm32 build fix
2019-11-26 12:12:43 +01:00
Flyinghead
554d8005fa
gl: #version must be on first line or Mali compiler complains
2019-11-26 11:08:35 +01:00
Flyinghead
a944cd08c6
vulkan: use amd mem allocator
2019-11-26 10:42:44 +01:00
Flyinghead
2c26d379df
renderer: fix scissoring with hscale, pixel_double, vscale...
...
Fixes Wacky Races, ECW Hardcore and Cho - Hatsumei Boy Kanipan cropped
screen
2019-11-18 15:57:18 +01:00
Flyinghead
a4053715af
vulkan: skip TR & final pass on first frame before clearing buffers
2019-11-15 11:24:00 +01:00
Flyinghead
01af8e5f5e
vulkan: fix texture LoD, enable anisotropic filtering
...
fixes textures being grainy when seen from a distance
2019-11-15 11:17:01 +01:00
Flyinghead
78eb1829d8
gles2: calculate fog depth in vertex shader in case highp not supported
...
Mali-400/450 don't support highp floats in the fragment shader. This
causes overflows when computing fog density in some game scenes. To work
around that, calculate fog density in vertex shader and use
interpolation.
vulkan,gl: Get rid of extra_depth_scale in fragment shader by
integrating it in fog density
2019-11-14 22:10:40 +01:00
Flyinghead
09f5d25133
vulkan: automation screenshot. less code duplication
...
fix assert on exit due to not released vmem
fix crash when resizing window
2019-11-13 20:08:14 +01:00
Flyinghead
9928af2506
vulkan: terminate shader compiler only once if inited
...
fixes assert/crash when switching rendering api
2019-11-13 12:56:40 +01:00
Flyinghead
72c2ee1008
vulkan oit: RTT support
...
Fix Tr modifier volumes mem barrier
Simplify desc sets
2019-11-12 19:39:58 +01:00
Flyinghead
7b8840a330
Merge remote-tracking branch 'origin/master' into fh/vulkan
2019-11-10 21:01:29 +01:00
Flyinghead
25fb888d26
vulkan oit: get rid of depth2 attachment
2019-11-10 17:59:21 +01:00
Flyinghead
c10f075266
vulkan: OIT renderer WIP
2019-11-10 11:27:19 +01:00
Flyinghead
b8c1d6657d
vulkan: quad buffer, extract shader compiler
...
fetch color format, storage buffer alignment and stores/atomics support
at init
support for framebuffers used as input attachments
use Allocator instead of VulkanAllocator
return handles instead of unique handles
2019-11-10 10:16:18 +01:00
Flyinghead
c3b958c521
first attempt at a unit test
2019-11-04 21:37:16 +01:00
Flyinghead
56dfeb6722
mmu: missing template instances in the slow mmu
2019-11-03 21:27:06 +01:00
Flyinghead
f0538eac20
flash: don't abort on invalid access size
2019-11-03 21:25:18 +01:00
Flyinghead
84bdcd9a10
G2: Add Dev Device DMA
...
backport from upstream
2019-11-03 21:24:28 +01:00
Flyinghead
0e12da4395
DMAC: Add LMMODE1 for ch2-dma, add basic DMAC based dma support
...
backport from upstream
clean up
2019-11-03 21:22:46 +01:00
Flyinghead
27fd0d4262
aica: LFORE is not cleared automatically
2019-11-03 18:23:25 +01:00
Flyinghead
a7926a2357
serial: backport from upstream. Clean-up
2019-11-03 18:12:16 +01:00
Flyinghead
b7dd8f16d4
vmu: avoid flashram buffer overflow
2019-11-03 17:08:34 +01:00
Flyinghead
4cc199b2b7
minimize writes to config file
2019-10-29 14:34:29 +01:00
Flyinghead
5d6ac0acbb
gl: const everything
2019-10-25 22:47:20 +02:00
Flyinghead
ba51c873d0
vulkan: fix missing geometry in multipass
2019-10-25 22:30:34 +02:00
Vai Kong Edward Li
5772e2a679
Custom Textures / Dump Textures supports NAOMI also
2019-10-26 03:56:59 +08:00
Flyinghead
920e2bf039
vulkan: return Device instead of UniqueDevice from context
2019-10-25 19:20:15 +02:00
Flyinghead
5e4dacfa67
Fix renderer selection issue in gui. Use raw strings for shader source
2019-10-23 19:23:19 +02:00
Flyinghead
07958f08ae
refactor xform matrix out of gles. use xform matrix in vulkan
2019-10-23 18:13:28 +02:00
Flyinghead
2f363a7355
Merge remote-tracking branch 'origin/fh/gl-scale-mat' into fh/vulkan
...
# Conflicts:
# core/rend/TexCache.h
# core/rend/gl4/gles.cpp
# core/rend/gles/gles.cpp
# core/rend/gles/gles.h
# shell/apple/emulator-osx/reicast-osx.xcodeproj/project.pbxproj
2019-10-21 19:49:53 +02:00
Flyinghead
0dc4b07538
pvr: use a switch instead of 100 ifs
2019-10-21 19:13:29 +02:00
Flyinghead
d27142f565
maple: don't write past the vmu capacity
2019-10-21 19:09:01 +02:00
Flyinghead
86818389ac
move texture cache to a template class. vulkan: OSD on android
...
store texture in the cache map instead of the heap
make related functions member of the class (CollectCleanup, killtex ->
Clear)
refactor common OSD stuff into rend/osd
vulkan support for OSD
2019-10-21 16:39:16 +02:00
Flyinghead
2a89874812
decouple imgui from gles renderer
2019-10-19 18:34:24 +02:00
flyinghead
ca4753cf7c
win32 build fix
2019-10-18 21:03:00 +02:00
Flyinghead
664bfe6fa3
sdl: only compile when using sdl
2019-10-18 22:23:29 +02:00
Flyinghead
6611e9bf5e
gl: refactor wsi into their own class.Allow dynamic vk<->gl switch
2019-10-18 21:57:08 +02:00
Flyinghead
ac310114fe
Disable total frame count for CHD to allow patched/homebrew
2019-10-16 16:08:32 +02:00
flyinghead
dffaed7dd9
vulkan: prefer optimal depth format. use same format for rtt
...
Try to find an optimal depth format then fall back to linear
Use same depth format for rtt depth attachments
Allow RenderToTextureBuffer setting to be changed at runtime
Enable vulkan on windows
2019-10-16 10:40:06 +02:00
flyinghead
c3cbfbdfb0
vulkan: android build fix
2019-10-15 21:50:42 +02:00
flyinghead
a6c56ba748
vulkan: windows support
2019-10-15 21:25:24 +02:00
Flyinghead
43d87877be
vulkan: some ui
2019-10-15 16:52:02 +02:00
Flyinghead
d28a7f45c5
vulkan: android support
...
align uniform buffers according to physical device requirements
destroy old swap chain before creating new one
some drivers don't support some 16-bit texture formats for optimal
tiling
2019-10-15 16:49:20 +02:00
Flyinghead
e3a997b642
vulkan: direct framebuffer writes support
...
alternate between 2 texture drawers
Fix scissor scale when pixel_double is on
Ingore Present() when nothing has been rendered
2019-10-14 17:41:49 +02:00
Flyinghead
fb52b38ac3
texture upscaling was missing some paletted alpha channel formats
...
Fixes dark pixels on edges when using xbrz upscaling (Capcom vs SNK 2)
2019-10-14 15:15:20 +02:00
Flyinghead
f8d4b08618
vulkan: increase some descriptor pool sizes. Use 3 swap chain images
2019-10-13 22:40:11 +02:00
Flyinghead
4c29a9bad7
vulkan: better tile clipping
2019-10-13 22:01:20 +02:00
Flyinghead
af0b0eac42
vulkan: mipmap support
2019-10-13 18:42:28 +02:00
Flyinghead
06e1456d4f
vulkan: memory allocator
2019-10-12 13:48:41 +02:00
Flyinghead
6304b1e9c1
Fix verify() and die() macros
2019-10-12 13:48:41 +02:00
Flyinghead
459a2b973e
vulkan: make staging buffer visible to host for rtt2vram. Minor changes
2019-10-12 13:48:41 +02:00
Flyinghead
2bac2afe98
gles: fix depth issue when drawing quads on gles2
...
Fix Gunlord black screen on GLES 2
2019-10-12 13:48:41 +02:00
Flyinghead
e9ecda2b31
vulkan: fix regression on color blending state
2019-10-09 22:59:01 +02:00
Flyinghead
970d959772
gles: build fix
2019-10-09 22:49:29 +02:00
Flyinghead
becdd213fe
android: build vulkan renderer
2019-10-09 22:44:06 +02:00
Flyinghead
6406523720
vulkan: RTT support
2019-10-09 21:18:06 +02:00
Flyinghead
38f50c1b5a
gles: refactor rtt vram writeback out of gles
2019-10-09 21:14:31 +02:00
Flyinghead
e09e895f22
vulkan: better image update. Don't kill in-flight command buffers
...
Transition images back to transfer and update them instead of
deleting/recreating.
Keep track of in-flight texture command buffers and free them when idle.
2019-10-07 17:45:11 +02:00
Flyinghead
b790a336e9
vulkan: modifier volumes
2019-10-07 12:30:56 +02:00
Flyinghead
8d520fa5e4
vulkan: per-triangle sorting
2019-10-06 21:21:31 +02:00
Flyinghead
b82a97853f
vulkan: fog support
2019-10-06 17:02:17 +02:00
Flyinghead
8f8f270cfc
vulkan: use separate command buffer to upload tex. Limit desc set size.
2019-10-06 14:31:39 +02:00
Flyinghead
751f30003d
rend: fix stride regression introduced in 24b973f7
...
Fix YUV textures corruption
2019-10-06 14:16:12 +02:00
Flyinghead
ebec2966d7
vulkan: create SamplerManager. Use staging buffer for textures
...
Samplers shouldn't be tied to a texture
Using a staging buffer fixes most texture glitches
2019-10-06 12:24:07 +02:00
scribam
1e54de93fa
gui: Replace "std:string" by "std::string"
2019-10-06 10:58:44 +02:00
Flyinghead
5b35b52fda
vulkan: fix uniforms alignment. Use push constants for per-poly params
...
Fix clipping, trilinear alpha
Imgui FPS counter
2019-10-05 23:29:39 +02:00
Flyinghead
929976c147
android build fix
2019-10-05 18:45:42 +02:00
Flyinghead
fc752e6efb
proper OSX build fix
2019-10-05 19:44:25 +03:00
Flyinghead
bbab62810a
OSX build fix
2019-10-05 19:29:23 +03:00
Flyinghead
d23b7bff7b
vulkan: recreate swap chain on resize. flush samplers when updating tex
2019-10-05 16:09:28 +02:00
Flyinghead
27e9acaac6
rend: refactor ReadFramebuffer() out of gles
2019-10-05 16:06:07 +02:00
Flyinghead
b1defae3f7
vulkan renderer - WIP
2019-10-05 11:50:14 +02:00
Flyinghead
8202ac420b
pvr,rend: more refactoring out of gles. Change texture id to 64b
2019-10-04 13:33:08 +02:00
Flyinghead
24b973f763
rend: refactor texture cache and poly/triangle sorters out of gles
2019-10-04 12:22:18 +02:00
Flyinghead
8eac844825
OSX build fix
2019-09-30 20:14:46 +03:00
Flyinghead
dde8bf3b42
arm32: support 64b immediate mem writes
2019-09-30 16:53:08 +02:00
Flyinghead
bad10bae20
dyna: only protect ram when needed. Use const ref to avoid copies
...
avoid extra op in x64 rec
2019-09-30 15:47:05 +02:00
Flyinghead
87023c722d
Hide unsafe optimizations on all but arm32 platform
...
Non-functional changes
2019-09-30 15:36:39 +02:00
Flyinghead
834082519d
ini: use reference to avoid copies. simplify
2019-09-30 15:33:19 +02:00
Flyinghead
6ab8b185c8
Protect vram pages only when needed. Use lambda for xbrz paralleliz.
...
Each vram page is now protected only once.
Get rid of std:function and std::bind and use lambda expressions.
2019-09-30 15:31:06 +02:00
Flyinghead
0595bae85b
dyna: use xxhash instead of sha1 to hash code blocks
2019-09-29 23:14:38 +02:00
Flyinghead
9d3ee3b57f
dyna: get rid of SmcCheckLevel options. Fix rec-cpp
...
Block check is now full or off depending on block protection
rec-cpp: Add missing opcode call classes and allow for immediate args
2019-09-29 18:18:46 +02:00
Flyinghead
84e0f9f118
aica: get rid of old sync dma timing
2019-09-28 22:34:36 +02:00
Flyinghead
dc228d0710
Fix memory leak in chdr lib
2019-09-28 19:29:29 +02:00
Flyinghead
f0dfc61975
naomi: gd cart memory leak
2019-09-28 18:56:58 +02:00
Flyinghead
106dfc3f71
Add Discord link. non-functional changes
2019-09-27 22:00:52 +02:00
Flyinghead
88a5acd9e6
aica arm: mask pc using max aica ram, not actual, in entry points
...
Fix crash in Sturmwind, Volgarr and Gunloard
2019-09-27 15:57:39 +02:00
Flyinghead
920bb44c30
More widescreen cheats
2019-09-27 14:41:59 +02:00
Flyinghead
419785b929
arm64: support for 64b immediate memory reads
2019-09-27 14:40:47 +02:00
Flyinghead
ae4f378747
Add fast-forward mode
...
Fix buttons.png not being created if not first run
2019-09-27 14:15:29 +02:00
Flyinghead
219a001631
pvr: eliminate empty polygons and render passes
...
initialize sprite face base & offset colors to white
never join TR poly strips
re-enable depth after mod vols
2019-09-25 23:28:53 +02:00
Flyinghead
bb89cb5c22
pvr: calculate emu speed over the last 2 frames in sync render
...
Games that do multiple renders per frame may hit a condition where one
of the renders is systematically dropped in synchronous render mode.
2019-09-25 21:08:39 +02:00
Flyinghead
90dbaa5edd
gui: disable stencil test
2019-09-25 20:25:01 +02:00
Flyinghead
334211f3a0
gl: build fix
2019-09-25 15:44:21 +02:00
Flyinghead
3fd3e097ac
gl: fix modvol issue introduced by 8792c06
2019-09-25 13:54:38 +02:00
Flyinghead
9b063644c4
Per-game widescreen cheats
...
New option to make games render in 16/9 anamorphic format and stretch
screen to correct aspect ration.
2019-09-24 23:59:36 +02:00
Flyinghead
943a50b9bc
gl4: translucent modifier volumes need inverted depth too
2019-09-23 19:37:01 +02:00
Flyinghead
f599891e08
pvr: face color and offset color should not be reset if not set
...
it's expected that polygons can reuse previous values for these colors
even for not immediately following polygons.
2019-09-22 20:00:09 +02:00
Flyinghead
55880b0dd4
537c2a4
broke rtt rendering
2019-09-22 18:20:43 +02:00
Flyinghead
e85b724085
vmem: mprotect P2 vram space
...
Used by NHL 2K2 yuv textures
Fixes FMV not being updated
2019-09-22 10:29:53 +02:00
Flyinghead
537c2a4ed6
pvr: reset face and offset colors when not set in poly param
...
Fixes black ice in NHL 2K2 and black players in NHL 2K
Clean up
Don't build soft renderer
2019-09-21 22:53:09 +02:00
Flyinghead
69041912e3
x11: clear window at startup. Set icon and class
2019-09-20 19:02:54 +02:00
Flyinghead
c408867ead
pvr: reset tileclip value when resetting TA parser
...
fixes black players in NHL 2K with hle bios
2019-09-20 15:36:49 +02:00
Flyinghead
b693d1c054
aw: set rom key in game list (mameset 0.213)
...
backport lr changes
2019-09-19 16:15:18 +02:00
Flyinghead
e7a33e6de1
reios: allow hle savestates to be loaded in non-hle mode
...
Always initialize reios hooks during startup so hle savestates always work.
Fix bios loading logic for naomi/aw
2019-09-19 11:49:19 +02:00
Flyinghead
38c9eea50a
reios: implement PLAY_SECTOR
...
fixes Sega Rally 2 missing bgm music in hle mode
2019-09-19 11:36:59 +02:00
Flyinghead
8792c06adc
gl4: use same depth direction as gles. Round scale_y value.
2019-09-17 13:35:23 +02:00
Raph
732e685ea7
gl4: unbind the depth tex from the fbo before reading from it
...
fixes diagonal pixel line issue with AMD gpu
should help issue #16
2019-09-15 18:30:44 +02:00
scribam
4dd6ccea8d
msvc/sh4: Compilation fix for cvt_f2i_t
2019-09-15 13:37:11 +02:00
Flyinghead
8194254fa1
pvr: restore TA ctx after rendering framebuffer
...
fixes Sakura Taisen 4 hang when starting game
2019-09-13 12:31:10 +02:00
Flyinghead
ed90bcebee
partially revert 1a019b79b0
...
move the punch-through alpha test back to where it was (before shading)
fixes SF Rush missing chars on copyright screen
2019-09-12 18:54:14 +02:00
Flyinghead
2bcc3c574b
pvr: ignore data sent to TA if no prior list init
...
fixes Vigilante 8 freeze during FMV sequence
2019-09-12 15:07:57 +02:00
Flyinghead
1174bce64a
dynarec: set correct sign on result if float conv returns indefinite
...
canonical implementation, x86/x64 only
2019-09-12 15:06:21 +02:00
Flyinghead
25a2c52960
pvr: crash when CurrentPP is null
2019-09-11 23:21:14 +02:00
Flyinghead
2bdfdf96c1
gl4: fix invisible framebuffer direct writes with hle bios
...
Fixes hidden & dangerous black screens in hle bios mode
2019-09-11 21:10:02 +02:00
Flyinghead
8b949e1dca
Get rid of time_sync timer. Clean-up
2019-09-11 15:09:23 +02:00
Flyinghead
a19c73de7b
Fix some sh4 regs hard reset
2019-09-11 15:00:08 +02:00
Flyinghead
b2ee35f82e
aica: initialize regs with half-words
2019-09-11 14:54:24 +02:00
Flyinghead
e1368f9713
reios: First polygon wasn't displayed in some cases
2019-09-11 14:08:54 +02:00
Flyinghead
11c95c41d3
Hide legacy Naomi roms (.bin, .dat. lst) by default
2019-09-10 21:56:58 +02:00
Flyinghead
08d7cc68fd
aica: use log scale for attack phase
...
Change AEG starting envelope value from 3ff to 280
Use log scale instead of linear during attack phase
2019-09-10 16:21:51 +02:00
Flyinghead
0bd95cbba8
Delay Frame Swapping option to enable FB_R_SOF == FB_W_SOF detection
2019-09-09 14:58:53 +02:00
Flyinghead
fbdbd2491d
aica: implement pitch LFO and LPF envelope
...
simplify channel serialization
optimize aica channel reg write callbacks
2019-09-09 11:32:03 +02:00
scribam
49b7e0682b
Cleanup
2019-09-07 20:36:13 +02:00
flyinghead
c4ecfe3d9c
win32: _create_locale not available on win7
2019-09-07 20:22:23 +02:00
Flyinghead
704f90d78e
x64: set correct sign on result if float conv returns indefinite
2019-09-07 12:08:08 +02:00
scribam
e0fb50488d
deps: Update xxhash integration
2019-09-06 21:05:19 +02:00
scribam
c746a8be53
deps: Update xxhash to version 0.7.1
2019-09-06 20:45:17 +02:00
Flyinghead
d1c3d31259
aica: save quantization and last sample when entering loop for normal adpcm
2019-09-06 13:53:01 +02:00
Flyinghead
7287b3816b
aica: don't reset the adpcm decoder when looping
...
also don't decode past LEA, use LSA instead
2019-09-05 18:17:53 +02:00
Flyinghead
a50ed2cc7d
dsp: fix SHIFTER and ACC shift values. Simplify
2019-09-05 15:45:14 +02:00
Flyinghead
713705a6fe
dsp: fix errors in PACK and UNPACK functions
2019-09-05 15:45:14 +02:00
scribam
bdf2029e99
Simplify libpng/zlib integration
2019-09-04 19:59:51 +02:00
scribam
9bdae4e8b3
deps: Simplify flac integration
...
It works because the path to the flac include dirs are defined in the
makefile/vs/xcode project.
This way, it would be also easier to rely on system packages instead of
compiling the bundled version.
2019-09-03 22:58:57 +02:00
Flyinghead
5b9892425f
naomi: game detection fails on windows when mixing / and \
2019-09-03 19:18:11 +02:00
Flyinghead
b4d33a6c70
Merge remote-tracking branch 'origin/master' into fh/hle-bios
2019-09-03 19:14:39 +02:00
scribam
21fa8ecfba
deps/windows: Update dirent integration
...
Source: https://github.com/tronkko/dirent/blob/1.23.2/include/dirent.h
2019-09-02 22:57:53 +02:00
Flyinghead
ee1ee56824
proper hard reset of sh4 mm registers
...
more clean up
2019-09-01 23:10:04 +02:00
Flyinghead
aadc9c3bfc
Detect game region/vga support and set options accordingly
...
Better IP.BIN parsing (wince, vga)
Use wince flag and boot filename for wince detection
Switch to TV composite if vga unsupported
Switch to supported BIOS region if current is unsupported or default
2019-09-01 16:35:12 +02:00
scribam
314f25ea38
linux: Use header <sys/personality.h> only on linux platforms
2019-09-01 14:15:29 +02:00
Flyinghead
61f4cd4ecd
Merge remote-tracking branch 'origin/master' into fh/hle-bios
2019-08-31 22:10:09 +02:00
Flyinghead
dd8903484e
reios: less log
2019-08-31 21:56:47 +02:00
Flyinghead
5ca6cacf25
reios: fix wince exception due to unaligned pio xfer
2019-08-31 20:53:42 +02:00
Flyinghead
2e77e049a8
reios: check disk syscall
2019-08-31 18:55:54 +02:00
Flyinghead
936cd6781b
clean up
2019-08-31 17:36:34 +02:00
scribam
0fbee12dc0
msvc: Fix condition for "naked" defintion
2019-08-31 14:46:30 +02:00
scribam
d826d8123a
msvc: Fix DYNACALL/__fastcall usage
2019-08-31 14:46:30 +02:00
scribam
69e9d9767a
windows: Add fallback for _BitScanForward64 on 32-bits system
2019-08-31 14:46:30 +02:00
scribam
df37077bb6
msvc: Do not include "7zArchive.h" header
...
This header is not required as the code related to it, in the same file, is not included when "_MSC_VER" is defined.
2019-08-31 11:10:03 +02:00
scribam
bb24a5ee54
msvc: Replace "bm_GetCode2" by "bm_GetCodeByVAddr" in msvc.asm
...
This function was renamed in commit dece3fc13e
2019-08-31 11:09:47 +02:00
Flyinghead
e07879e43c
maple: std controller input mask was applied to all gamepad devices
2019-08-30 23:37:43 +02:00
Flyinghead
2015d9a696
rename and clean up
2019-08-30 23:35:10 +02:00
scribam
79f801d314
Remove Emscripten support entirely
...
Makefile for Emscripten build has been dropped in commit 1333d6f776
2019-08-30 20:01:14 +02:00
Flyinghead
79231d8961
missing change
2019-08-30 14:39:33 +02:00
Flyinghead
bae43c236e
dynarec: use paddr to check for bios blocks + more
2019-08-30 14:11:15 +02:00
Flyinghead
cc6190f261
flash: use rewritten blocks when allocating a new one
2019-08-30 13:59:15 +02:00
Flyinghead
e173b83574
New option to force WinCE mode
2019-08-28 20:47:47 +02:00
scribam
269297be18
Use _WIN32 to handle Windows specific code
2019-08-28 20:37:53 +02:00
scribam
1b002ae0da
Use __GNUC__ to handle GCC specific code
2019-08-28 20:37:53 +02:00
scribam
51d181a46c
Use _MSC_VER to handle specific Visual Studio code
2019-08-28 20:37:53 +02:00
scribam
61382316c9
Use __ANDROID__ to handle specific Android code
2019-08-28 20:37:53 +02:00
flyinghead
02b450ff19
Fix vram and code block protection in 32-bit mode
2019-08-28 14:08:13 +02:00
scribam
71f03cceae
linux/x11: Remove x11_gl_context_destroy function
...
This function is never called and the logic already exists in the x11_window_destroy function
2019-08-22 20:25:22 +02:00
scribam
148033625c
wince: Add missing preprocessor TRACE_WINCE_SYSCALLS
...
unresolved_ascii_string and unresolved_unicode_string only exist if
TRACE_WINCE_SYSCALLS is defined
2019-08-22 20:22:56 +02:00
scribam
7cd4b7b10b
pulseaudio: Remove WARN_LOG second argument
...
First argument is "LogTypes::LOG_TYPE" and second argument must be "const char*"
2019-08-22 20:19:12 +02:00