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
8f86be37f0
fix travis ci deploy to S3
2019-11-10 20:48:09 +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