Flyinghead
554ffcd08f
naomi: use platform-independent network error codes (win32)
2022-03-30 14:13:02 +02:00
Flyinghead
af0574c04e
build fixes for msvc, ios and android
2022-03-27 15:57:01 +02:00
Flyinghead
6c38295d62
new naomi network protocol. vblank event. initd rumble support
...
new vblank event, used by cheats, lua and naomi net
new udp net protocol for naomi. rx/tx on vblank on emu thread.
input: rumble power configurable (Issue #158 )
ui: rumble intensity slider, enable/disable upnp
aica: hook to consume midi out
decode midi out to simulate rumble for initd
upnp can now be disabled
2022-03-27 15:23:21 +02:00
Flyinghead
1e01dbb151
wrong line padding value when copying RTT to vram due to previous commit
2022-03-26 20:51:07 +01:00
Flyinghead
be270259ee
crash with RTT and copy to VRAM if width > linestride
...
RTT texture width must not exceed FB_W_LINESTRIDE
fixes Flag to flag crash
2022-03-25 15:41:16 +01:00
Flyinghead
55e613fae5
widescreen cheats for gun spike, initdv3e, alpilotj, monkey ball
...
Courtesy of Esppiral
2022-03-21 17:51:31 +01:00
Flyinghead
a5bad2b9b7
more naomi widescreen cheats. Fix vathlete 4-player mode
...
widescreen cheats for asndynmt, doa2m, slashout, spikers battle,
18wheeler, beach spikers. Courtesy of Esppiral
vathlete needs 2 I/O boards for 4-player mode
2022-03-20 17:49:50 +01:00
Flyinghead
ebb251d8cf
widescreen cheat for vf4tuned
...
Courtesy of Esppiral
2022-03-19 11:30:45 +01:00
Flyinghead
56768f2d3d
naomi2: use TA parser. Use N2light directly with vk, dx11
...
Use TA parser to handle list type and clipping for Naomi 2 polys.
Pass all pass-throuch TA data to TA parser but stop on naomi2 command.
Set default projection matrix instead of identity (fixes Area conquered
screen invisible in initd).
Change N2Light and N2LightModel so they are usable in GLSL (vulkan) and
HLSL (dx11).
TA parser throws exception for unhandled param.
ta_vtx.cpp refactoring.
Support for subtractive lights (diffuse+specular). Used in some clubk
circuits.
Fix vulkan crash when direct FB render.
2022-03-16 17:28:45 +01:00
Flyinghead
5b3d36e081
naomi2: network support for clubk and initd
...
clubk: don't reverse handle by default
hotd2 doesn't have a proper game id or standard eeprom
2022-03-15 19:44:24 +01:00
Flyinghead
ad08590197
vulkan: cache per-poly desc sets in map
...
avoid desc set pool exhaustion in per-triangle
2022-03-13 11:39:30 +01:00
Flyinghead
53b5588bda
Merge remote-tracking branch 'origin/master' into dev
2022-03-13 11:01:27 +01:00
Flyinghead
1015a8c098
naomi2: vulkan support
...
oit: use #define instead of functions in GLSL
2022-03-12 17:56:46 +01:00
Flyinghead
27ddc215cc
naomi2: boost lights by constant factor. simplify shaders
2022-03-08 17:38:29 +01:00
Flyinghead
c11a6cd432
naomi2: partial gles2 compatibility
...
Issue #553
2022-03-07 20:32:08 +01:00
Flyinghead
514eedbc63
maple: do not raise maple_dma interrupt for light gun
...
Issue #474 (Virtua Cop 2 momentarily freezes when shot fired)
2022-03-07 19:16:49 +01:00
Flyinghead
1f61f80c92
input: fix naomi rotary encoders
...
Games with multiple JVS input boards poll inputs more than once,
ignoring some relative mouse movements.
Issue #557
2022-03-06 17:57:16 +01:00
scribam
830ffd0559
deps/picotcp: pico_ipv6_source_dev_find requires PICO_SUPPORT_IPV6
...
Backport 529074aab4
2022-02-28 07:24:50 +01:00
scribam
ed066df469
deps: update miniupnpc
2022-02-28 07:24:36 +01:00
Flyinghead
e5863920c4
naomi2: fix beach spiker crash
...
VUR vertices can also have environment mapping
2022-02-22 08:48:51 +01:00
Flyinghead
7f61b44d42
imgui: better drag scrolling code
2022-02-21 19:48:52 +01:00
Flyinghead
a5660fa2b4
missing changes from previous commit
2022-02-18 17:40:00 +01:00
Flyinghead
ecc03e3ebc
naomi: use boot rom id to configure eeprom
...
Make eeprom from scratch if it doesn't exist based on boot id info.
Override eeprom settings to make game happy
Change region to supported one
Get rid of per-rom region info in rom list
New option to configure Naomi games in free play
2022-02-18 17:35:20 +01:00
Flyinghead
af4638e83f
naomi2: fix another initdv2 end of race crash
2022-02-18 16:40:26 +01:00
Flyinghead
cecf1a5497
naomi2: fix initdv2 end of race crash
2022-02-17 18:31:20 +01:00
Flyinghead
f2374982b8
pvr: don't merge polys with != palette. 2nd pass sometimes ignored
...
polys with different palette index shouldn't be merged.
If a pass isn't using any opaque, it can't be found. Fall back to using
the transparent or punch-through list in this case.
2022-02-17 18:30:29 +01:00
Flyinghead
d736dd027d
naomi2: initd card support. lua: fix multi-threading crash
...
initial d card reader support. insert card button.
lua: use mutex to enforce thread-safety
2022-02-16 19:02:04 +01:00
Flyinghead
214db9e0b1
gl4: depth pass need texture and UV for punch-through polys
2022-02-15 17:18:32 +01:00
Flyinghead
3bbc89afc9
dx11: fix crash with modvols
2022-02-15 17:16:45 +01:00
Flyinghead
e35ccbbb18
naomi2: force region for some roms. elan clean up
2022-02-15 17:15:44 +01:00
Flyinghead
20571c5aa1
chd: MIL-CD support
...
Issue #529
2022-02-15 11:34:11 +01:00
Flyinghead
3872a6b475
libretro: support VMU and lightgun crosshair with dx11 OIT renderer
...
OIT support was missing
Issue #525
2022-02-15 11:06:51 +01:00
Flyinghead
083a1c85a8
gl: shader compile error on shield tablet
...
Don't use GL_NV_shader_noperspective_interpolation since it's not really
needed (and wasn't enabled)
Issue #510
2022-02-14 18:54:27 +01:00
Flyinghead
943e0285ac
libretro: support VMU and lightgun crosshair with dx11 renderer
...
Issue #525
2022-02-14 18:47:23 +01:00
Flyinghead
d7abfc688c
dx11: oit depth pass needs the palette for PT polygons
...
Punch-through polys may use a palette, which is needed for alpha testing
Issue #467
2022-02-14 18:41:38 +01:00
Flyinghead
8f01ef90cf
gl,dx9,dx11: only render frame when Renderer::present() has been called
...
Issue #511
2022-02-14 18:38:58 +01:00
flyinghead
8d071bf4ea
naomi2: dx11 support. fix ambient color. no depth write in per-strip
...
dx11: naomi2 support
n2: ambient color was swapping red and blue
gl, dx11: don't write depth in per-strip to avoid missing geometry,
prefer wrong depth order/blending for now
optimize naomi2 per-triangle sorting
2022-02-13 21:01:45 +01:00
Flyinghead
a14086d484
naomi2: shader error in gles. Invert clubkart wheel axis
2022-02-11 19:06:58 +01:00
Flyinghead
20d25059bf
naomi2: remove geom shader. Merge transparent polys. bump mapping fix.
...
elan: Get rid of geometry shader and do geometry clipping manually.
pvr: Aggressively merge transparent polys in per-triangl and OIT mode, duplicating the last vertex to merge opposite cull mode strips.
gl4: reset OIT pointers in final shader. No need for clear pass.
gl4: alternate between 2 buffers for verts.index/tr poly params.
gl4: use gl_VertexID + poly number for poly index.
gl: new GlBuffer class.
2022-02-11 15:54:18 +01:00
Flyinghead
ccee7162bc
naomi2: soulsurfer inputs, 2-volume UV, wrong TA parser selected
...
TAParserDX was used for pass-through TA data. Fixes health bar color in
vf4 and dust color in kingrt66.
2-volume missing u1/v1. Fixes clubk shadows.
2022-02-08 10:32:56 +01:00
Flyinghead
4fe8e40569
libretro: fix texupscale and max upscaled texture size settings value
2022-02-06 20:42:41 +01:00
Flyinghead
debbae6ab1
naomi2: elan v10 emulation. texture dma xfers. 2-volume support
...
emulate elan v10 (fixes modvol in vf4, initd, beachspiker, wldrider)
wrong color order for model and vtx color
model param override xor support
improved light direction precision. Angle attenuation algo change
get rid of alpha light and modifier volume hacks
texture dma xfer from main and elan ram
gl4: use geometry only vtx and geom shaders for depth pass
2-volume support
2022-02-05 14:50:12 +01:00
Flyinghead
2c6f01ae38
naomi2: kingrt66 wiper button. initd gear up/down
...
kingrt66: map wiper button, remap shift H and R
initd: map gear up and down
wldrider: remap push and pull
2022-02-05 14:29:01 +01:00
Flyinghead
0362fd1079
naomi2: disable elan when net rollbacking, optimizations. ggpo: RTT fix
...
n2: do not process elan commands during ggpo rollbacks.
n2: Cache model colors to avoid unpacking for each vtx
pvr: merge equivalent polys with different culling by duping a vtx
pvr: fix crash during direct FB render
pvr: use correct color ordering for naomi2. Use identify matrix for null matrix pointers
ggpo: do not signal end of frame on a render to texture
2022-02-01 17:37:54 +01:00
Flyinghead
38765dc89a
pvr: fix multipass. naomi2: constant color shading.
...
pvr: link multipass TA contexts. Each pass has its own.
pvr: get rid of context pool
naomi2: constant color shading. Use model diffuse and specular
selection. Don't use vtx color for offset color.
naomi2: pseudo-parallel lights fix
naomi2: pass-through TA data needs forced list type. Terminate with
end-of-list
enable RTT copy to vram for Beach Spikers
2022-01-31 20:40:09 +01:00
Flyinghead
78306b3c12
ggpo: memory leak in free_buffer
2022-01-30 12:39:00 +01:00
Flyinghead
e51a291195
ggpo: wrong elan ram offset calculation
2022-01-30 12:39:00 +01:00
Flyinghead
fe6247dded
cheats: iOS build fix
2022-01-29 18:40:19 +01:00
Flyinghead
5fb8b458bb
pvr: use TA_OL_BASE instead of PARAM_BASE/TA_ISP_BASE to id TA context
...
Writes current TA_OL_BASE to all tiles OPB block. Read from region array
at render time to identify context.
Fixes vf4 water reflections RTT
get rid of dump_frame/read_frame
2022-01-29 18:39:38 +01:00
Flyinghead
4e21391f8c
ggpo: memory leak in free_buffer
2022-01-29 16:58:28 +01:00
Flyinghead
340c55c570
build fix
2022-01-28 22:30:07 +01:00
Flyinghead
de1322b928
naomi2: Fix T&L matrix. vmem elan ram support.
...
Fix T&L matrix (wild riders)
Open GL support for normal/light matrix
handle elan RAM in vmem
2022-01-28 21:24:30 +01:00
Flyinghead
010d257b69
naomi2: vf4tuned cheat/hack to skip DIMM fw version check
2022-01-28 20:02:07 +01:00
Flyinghead
58f05f74cf
jvs: set received jvs message trail to zero
...
fixes sh4 crash during naomi boot
2022-01-28 11:31:30 +01:00
Flyinghead
e5d517dad2
use platform.isConsole(), platform.isNaomi(), ...
2022-01-27 17:52:19 +01:00
Flyinghead
1ffcc75031
naomi2: implement SB_ISTNRM for clxb. serialize elan state
2022-01-27 16:40:12 +01:00
Flyinghead
e084cc9a3a
jvs: set received jvs message trail to zero
...
fixes sh4 crash during naomi boot
2022-01-27 15:50:44 +01:00
Flyinghead
6ed78d1202
another GL_CLIP_DISTANCE0 build fix
2022-01-26 22:37:38 +01:00
Flyinghead
270eaa1452
GL_CLIP_DISTANCE1 undefined
2022-01-26 22:19:53 +01:00
Flyinghead
e1038ea632
naomi2: fix regressions. 2-volume and bump mapping support WIP
...
optimize open gl uniforms
2022-01-26 22:15:10 +01:00
Flyinghead
8947100701
libretro: missing new param to gl4GetProgram
2022-01-25 15:43:30 +01:00
Flyinghead
cb99e7d920
naomi2: do T&L on the gpu. bypass TA format. env mapping.
...
fix model/instance/matrix parsing
handle culling reversed model flag
geometry shader for near plane clipping
2022-01-25 15:37:04 +01:00
DisasterMo
a4b0a69c45
Enable Indonesian, Swedish and Ukrainian localisations
2022-01-22 19:18:41 +01:00
Flyinghead
45ba648622
dx11: VersionHelpers.h -> versionhelpers.h
...
the mingw version is all lowercase
2022-01-19 14:37:49 +01:00
Flyinghead
b048921c11
naomi2: fix clipping, parallel light direction, reset state on loadstate
2022-01-18 18:25:40 +01:00
Edward Li
f2c39e4004
Update SDL to 2.0.20
2022-01-18 11:58:57 +01:00
Flyinghead
4335aa563f
naomi2 WIP
2022-01-16 22:41:42 +01:00
Flyinghead
62ec3546d6
dx11: uwp doesn't need texture conversions
2022-01-16 10:37:55 +01:00
Flyinghead
8bb0bd05f9
ui: limit scaling further on small low-resolution screens (retroid)
2022-01-16 09:58:33 +01:00
Flyinghead
e538242962
dx11: convert 16-bit textures to 32 bits on windows7
...
1555, 4444 and 565 aren't supported on win7
Issue: https://github.com/libretro/flycast/issues/1123
2022-01-16 09:54:39 +01:00
Julien Reichardt
4f638f6d77
Use service button instead of coin
...
The service button can also be used to add coins.
2022-01-11 14:09:54 +01:00
Julien Reichardt
80d78705b0
Add default coin mapping
2022-01-10 12:13:14 +01:00
scribam
746b3c5a54
sdl: fix joystick rumble
2022-01-06 08:59:39 +01:00
Flyinghead
a4788b5b24
zero-init sh4 context when no vmem is available
...
Issue #439
2022-01-03 18:44:47 +01:00
cmitu
8dcf0f58b5
postprocess: fix GLES2-only build
...
Added a missing `ifndef` guard for `glBindVertexArray`, useful for GLES2-only builds.
2022-01-02 10:51:03 +01:00
Flyinghead
d86305a7c3
android: on-screen gamepad not editable in Open GL
...
Swap wasn't called during editing
Issue #464
2021-12-26 16:03:19 +01:00
Flyinghead
2d41d993e3
macOS: patch SDL to compile in metal and vulkan
...
https://github.com/libsdl-org/SDL/issues/5010
2021-12-25 21:45:13 +01:00
Flyinghead
300c74e3fc
Merge remote-tracking branch 'origin/master' into net-rollback
...
# Conflicts:
# CMakeLists.txt
# shell/libretro/libretro.cpp
# shell/libretro/libretro_core_options.h
2021-12-22 21:31:17 +01:00
Flyinghead
3f82c7fb6f
iOS: use play and record audio session only when necessary
...
Change audio session to play and record when a microphone is connected.
Use a play only session otherwise. Issue #360
Hide VSync-related gui option.
2021-12-21 21:36:12 +01:00
Flyinghead
970e594009
Build with breakpad submodule. Use gcc 11 on windows.
2021-12-20 15:45:46 +01:00
Flyinghead
cd5a784277
add breakpad as submodule
2021-12-20 15:23:28 +01:00
Flyinghead
771f653174
delete breakpad
2021-12-20 15:20:26 +01:00
Flyinghead
bf87f7ba84
Compilation error on armv7 with gcc 9
2021-12-20 14:27:19 +01:00
scribam
73fa0e3efc
cmake/deps: update sdl to version 2.0.18
2021-12-19 11:18:24 +01:00
flyinghead
b1e0bc90ba
uwp: remove angle, upload to S3. windows: don't build SDL
2021-12-18 11:50:03 +01:00
scribam
8e305bfd0f
android/vmem: use constant ASHMEM_NAME_DEF
2021-12-18 11:46:04 +01:00
Flyinghead
325cd9a066
DSP crash on apple M1
...
Issue #415
2021-12-17 13:43:45 +01:00
Flyinghead
544c711fd7
savestate: compatibility between nvmem and !nvmem savestates
2021-12-17 13:41:46 +01:00
Flyinghead
e02afb34d1
dx11: wrong shadow scale factor. vk: object leak. Code duplication
...
dx11: shadow scale factor inverted in per-pixel
vulkan: clear deleted overlay images when terminating
Use color struct for FOG_COL_VERT, FOG_COL_RAM, FOG_CLAMP_MIN,
FOG_CLAMP_MAX and VO_BORDER_COL. Avoid code duplication in renderers.
2021-12-17 13:40:42 +01:00
Flyinghead
dc5acd24b2
Merge remote-tracking branch 'origin/master' into net-rollback
2021-12-17 12:40:37 +01:00
Flyinghead
7555263e38
wrungpo had wrong decryption key
...
Issue https://github.com/libretro/flycast/issues/1108
2021-12-17 11:55:17 +01:00
Flyinghead
71d016722e
vulkan: fix various validation errors
...
oit: skip to new frame even if previous frame was never presented
libretro: quad pipeline used for overlay must use subpass 2 in per-pixel
overlay: delay destruction of VMUs images
libretro: WaitIdle on queue instead of wait_sync_index
2021-12-16 21:26:55 +01:00
Flyinghead
04be40767b
android: fallback to /dev/ashmem if ASharedMemory fails. More logs
...
Issue #439
2021-12-15 23:09:59 +01:00
Flyinghead
5a6197cfc6
libretro: never request a GLES3 context
...
RA doesn't give us the opportunity to retry if GLES3 isn't supported.
Issue #405
2021-12-15 21:23:35 +01:00
flyinghead
5fca12af49
msvc compilation warnings
2021-12-15 17:58:58 +01:00
flyinghead
853830a446
log errno when failing to open a disk or folder. Better win32 errors
...
Log errno when failing to open a disk or folder (game scanner)
Better win32 error codes with GetLastError() for opendir, stat, access
2021-12-15 17:55:42 +01:00
flyinghead
2f47f72957
dx11: recreate texture if dimensions or format change. Clear rtt depth
...
Fixes a crash when switching Copy to VRam on as the RTT texture is no
longer upscaled when updated.
Clear RTT depth/stencil before render.
2021-12-15 11:32:04 +01:00
flyinghead
de35cf9840
dx11: fix fullscreen toggling
...
Prevent DXGI from monitoring Alt+Enter and let SDL handle it
2021-12-15 10:37:52 +01:00
flyinghead
18d8107992
dx11: no color interpolation for flat shading
...
Fixes Evolution WoSD
refactor setFirstProvokingVertex (dx9, dx11, vk)
Set .1 depth scale for V-Rallye to fix missing background image in menus
(dx11, dx9)
2021-12-15 09:37:58 +01:00
flyinghead
2478b72a3e
lr dx11: fix exit crash. Save shader cache where vk cache is
2021-12-14 16:48:23 +01:00