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
Flyinghead
ed5c24c281
arm64 build fix
2022-04-15 11:17:22 +02:00
Flyinghead
f2f4010203
clean up types.h, refactoring
2022-04-14 11:34:45 +02:00
Flyinghead
a9e261d280
simplify TA parsing
2022-04-13 20:36:52 +02:00
Flyinghead
bf61f5cfe8
Merge remote-tracking branch 'origin/master' into dev
2022-04-04 12:11:10 +02:00
Flyinghead
8dcc25e1a9
ta: default base/offset color is white, not black
...
fixes black players in NHL 2K
2022-04-04 11:47:11 +02:00
Flyinghead
a428167dc6
naomi network: alienfnt startup crash if not connected
2022-04-04 11:43:54 +02:00
Flyinghead
48e3a3eb68
aica: double arm clock speed
...
actual aica arm clock seems to be 22.5792 MHz, which means 512 cycles
per sample at 44.1 KHz (from 256)
fixes vf4 audio hiccup in character selection screen
2022-04-03 20:53:44 +02:00
Flyinghead
94c20ba29f
elan: reset TA parser before loading state
2022-04-02 16:43:15 +02:00
Flyinghead
8baebcfb5b
maxspeed networking. Store aw force feedback value
2022-04-02 16:41:52 +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
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
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
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
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
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
Flyinghead
e5863920c4
naomi2: fix beach spiker crash
...
VUR vertices can also have environment mapping
2022-02-22 08:48:51 +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
e35ccbbb18
naomi2: force region for some roms. elan clean up
2022-02-15 17:15:44 +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
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
e51a291195
ggpo: wrong elan ram offset calculation
2022-01-30 12:39:00 +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
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
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
e1038ea632
naomi2: fix regressions. 2-volume and bump mapping support WIP
...
optimize open gl uniforms
2022-01-26 22:15:10 +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
Flyinghead
b048921c11
naomi2: fix clipping, parallel light direction, reset state on loadstate
2022-01-18 18:25:40 +01:00
Flyinghead
4335aa563f
naomi2 WIP
2022-01-16 22:41:42 +01:00
Flyinghead
a4788b5b24
zero-init sh4 context when no vmem is available
...
Issue #439
2022-01-03 18:44:47 +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
bf87f7ba84
Compilation error on armv7 with gcc 9
2021-12-20 14:27:19 +01:00
flyinghead
b1e0bc90ba
uwp: remove angle, upload to S3. windows: don't build SDL
2021-12-18 11:50:03 +01:00
Flyinghead
325cd9a066
DSP crash on apple M1
...
Issue #415
2021-12-17 13:43:45 +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
04be40767b
android: fallback to /dev/ashmem if ASharedMemory fails. More logs
...
Issue #439
2021-12-15 23:09:59 +01:00
flyinghead
6a3a8d5578
libretro: dx11 support. dx11 shader cache. dx9 clipping planes
...
dx11: use 32-bit float depth texture to avoid loss of precision (SA2 into logo)
dx11: cache shader blobs to disk if not provided by OS
dx11: swap interval depends on screen refresh rate (1 for 60 Hz, 2 for 120 Hz, ...)
dx9: use clipping planes to avoid interpolation errors in rasterizer (daytona, mermaid lake)
directsound: use comptr
gui: fix navigation issue with OptionArrowButtons due to missing id
2021-12-13 21:02:44 +01:00
flyinghead
0478ec9696
dx11: per-pixel renderer
2021-12-11 18:53:35 +01:00
flyinghead
46044c068b
cheats: don't rely on cheat count on load. Fix compile warnings
2021-12-11 18:33:28 +01:00
flyinghead
99195c3f4c
dx11: set clip planes on X and Y. rend: Force palette update at init
...
dx11: Set clip planes at X -1/1 and Y -1/1 to avoid rasterizer errors.
Fixes Daytona Mermaid lake depth issues
dx11: fix texture wrap around at UV 1 with nearest filtering
dx9: inside clipping
all renderers: force full palette update at init
2021-12-01 14:54:03 +01:00
flyinghead
f91847dad0
DX11 renderer WIP
2021-11-26 18:08:41 +01:00
flyinghead
63598019e1
naomi: rename deathcox to deathcoxj, new deathcox parent rom
...
MAMESET 0.227 changes
Issue #409
2021-11-20 14:06:19 +01:00
flyinghead
8262c9ece7
UWP support - WIP
2021-11-19 23:18:45 +01:00
Flyinghead
8f80bcb159
New serialize framework. Delay maple dma xfer
...
New serialize framework. Refactor serialization into modules.
Maple dma xfer must not be executed immediately. Delay until interrupt
is raised.
Fixes Geist Force freeze at start.
2021-11-13 15:56:42 +01:00
Flyinghead
80cf422a5e
dynarec: fix CLRS and SETS ops
...
Destination reg was missing
Fix crash in OpenTyrian/SDL_DREAMHAL
Issue #403
2021-11-11 10:44:22 +01:00
LaercioMBR
004250ed23
InputDescriptors for radirgyn and mamonoro
2021-10-24 14:07:40 +02:00
Flyinghead
808a161d39
ggpo: make chat thread-safe. Deadlock on early rollback
...
Make ggpo_send_message() thread-safe
Deadlock UI/emu threads if rollback happens before first render
Disable rollback wait in single-thread mode
2021-10-20 14:41:18 +02:00
LaercioMBR
6d8e1794a0
Fix Metal Slug 6 inputs ( #393 )
2021-10-20 14:36:02 +02:00
LaercioMBR
846ed76808
InputDescriptors for Dolphin Blue, Demolish Fist and ggx15
2021-10-19 17:02:01 +02:00
Flyinghead
ab45b5ec8a
ggpo: keyboard/mouse games support. Fix chat when keyboard disabled
...
ggpo: support for arcade games using keyboard (totd, luptype) and
mouse/rotary encoders (waiwai drive)
Chat and UI now usable when the keyboard is not set to a maple port.
2021-10-19 16:56:46 +02:00
LaercioMBR
7fb85e5b25
Standardizing InputDescriptors names, added kov7sprt_inputs ( #389 )
2021-10-18 11:24:38 +02:00
Flyinghead
3eeb7e7cae
build fix
2021-10-16 18:15:11 +02:00
Flyinghead
cf653640b3
ggpo: verify md5 of bios, game and savestate
...
Verify md5 of flash, eeprom, vmus if no savestate used
Use chd header SHA1 as digest
Load .state.net state file at start
Force real BIOS for some games
2021-10-16 17:56:21 +02:00
Flyinghead
85c21df5e7
Use allocAligned/freeAligned for all aligned allocs
2021-10-14 10:46:44 +02:00
Flyinghead
bcc3337c58
cheats: support for bit-level RA codes
...
log start of address space, RAM, VRAM, audio RAM at boot
fix add cheat dialog layout
don't crash on wrong gdrom unlock code
2021-10-12 17:28:01 +02:00
Flyinghead
8b986dfab3
vmu beep support
2021-10-10 16:33:37 +02:00
Flyinghead
19bd6d0bca
test automation clean up
...
less #ifdef
force mute audio
don't force vsync
2021-10-10 16:26:36 +02:00
Flyinghead
1d9ac4918c
pvr: fix SPG_VBLANK_INT reset value
2021-10-07 16:24:00 +02:00
Flyinghead
bc3be1029c
fix sh4 scheduler. use common cycle counter in sh4 context
...
scheduler reset and unregister
schedule requests during reset(), not init()
preserve cntx.sh4_sched_next on sh4 reset
Use cntx.cycle_counter in dynarecs and interpreter
Fixes Confidential Mission hang at boot with HLE
2021-10-07 16:18:32 +02:00
Flyinghead
5bcfa35737
Better background game loader
...
Pass LoadProgress object to report load progress and cancel
Better UI
Cancel with exception
Fix issues when stopping/exiting in !threaded
dx9: call gui_term on shutdown
2021-10-02 11:30:40 +02:00
Flyinghead
c1bcf91dd6
pvr: render timeout when using ggpo or !threaded
...
will cause ggpo desyncs with previous versions
2021-10-01 16:48:01 +02:00
Flyinghead
621e4d196e
crash when enabling bba per-game
2021-10-01 16:14:27 +02:00
Flyinghead
699dcdaf5b
Merge remote-tracking branch 'origin/master' into net-rollback
...
# Conflicts:
# core/hw/maple/maple_if.cpp
# core/rend/mainui.cpp
# shell/libretro/libretro.cpp
2021-09-30 15:03:29 +02:00
Flyinghead
2803ee8274
imgread.ImagePath clean up. ggpo: poll input late if !thread
2021-09-30 14:24:17 +02:00
Flyinghead
99bf7f77c4
single-threaded mode. refactoring.
...
single-threaded mode similar to libretro core
stateful Emulator object
disable memory watcher when !gppo
ggpo: poll input as late as possible in !threaded
2021-09-29 10:22:58 +02:00
Flyinghead
7fe2ab720f
refactor screen_width/height
2021-09-27 20:29:23 +02:00
Flyinghead
1dc01314a1
input: don't poll input on emu thread
...
fixes device reset errors with dx9 on Alt+Enter and other renderer
crashes
2021-09-27 11:51:39 +02:00
Flyinghead
41ac140076
ggpo: lightgun support for arcade games
...
ui: display button names in arcade mode only
2021-09-26 21:28:31 +02:00
Flyinghead
39fabf39ae
naomi: free play eeprom for many games
...
inputs for ggx, doa2, toyfight, ausfache
don't label common buttons (coin, test, service, start)
2021-09-22 14:26:13 +02:00
Flyinghead
1725dbfa98
input: fix arcade mode for on-screen gamepads.
...
Use same layout as gamepad arcade for on-screen gamepads (ABXYRL)
map RT and LT to buttons 5 and 6 in arcade
android: Fix non-working fast-forward button
Use maple port in lastAxisValue state
naomi: use default alienfnt buttons: 1-4
2021-09-21 15:56:01 +02:00
Flyinghead
65956dbc8d
input: merge buttons and axes
...
Default mappings for arcade and console
Default mappings for arcade stick/hitbox
Proper handling of inverted axes
ggpo: automatic analog setting for arcade games
2021-09-19 18:27:21 +02:00
Cameron Bates
e1fa2b9831
[iOS] GCMouse support ( #353 )
2021-09-14 11:51:44 +02:00
Flyinghead
99a0dce8cd
arm build fix
2021-09-11 19:17:36 +02:00
Flyinghead
badcace987
ggpo: analog axes support. Fix right trigger. use miniupnp.
...
Analog stick X/Y support
Right trigger was ignored
Forward UDP port 19713 with miniupnp before starting ggpo session
Use recursive_mutex for ggpo
2021-09-11 18:50:11 +02:00
Flyinghead
e8b73e22b7
Merge remote-tracking branch 'origin/libretro' into net-rollback
2021-09-11 18:11:36 +02:00
Flyinghead
88fa5d5c41
arm64 dsp: don't JitWriteProtect twice. ios: Hide VSync. pvr: fix mutex
2021-09-10 15:26:18 +02:00
Flyinghead
e45ec4324f
Merge remote-tracking branch 'origin/master' into libretro
2021-09-10 12:19:29 +02:00
Flyinghead
3ced57a263
network: use interface for startup. avoid deadlock on exit
...
Use common interface for naomi and ggpo
Simpler ggpo interface
Fix deadlocks on exit with ggpo
2021-09-09 18:17:05 +02:00
Flyinghead
a4e715fa71
serialize modem, aw coin, pvr direct fb state, TA cur context
2021-09-07 16:43:50 +02:00
Flyinghead
8594d11693
maple: refactor usage of rt/lt. zero out joystick values if ggpo active
...
Fix mouse cursor being invisible when emu throws an exception
2021-09-07 16:30:56 +02:00
Flyinghead
a4c14ebef7
Merge remote-tracking branch 'origin/libretro' into net-rollback
2021-09-07 15:02:39 +02:00
Flyinghead
5121b0df93
maple: mutually exclusive btns per controller. better D2A axes
...
Handle mutually exclusive buttons (U/D, L/R) in each controller.
Track digital X/Y axes state to allow for proper handling of U+D and
L+R. Issue #334
SDL: Ignore key repeat events
2021-09-07 10:54:00 +02:00
Flyinghead
414fb9dba2
ramwatch: protect all ram, not just the bottom half
2021-09-06 16:14:38 +02:00
Enrique Santos
dba805e8c4
ggpo: static rtc when ggpo is enabled
2021-09-04 18:47:34 +02:00
Flyinghead
b362a55c04
ggpo: rollback glitches. win32 init. switch build. stats
...
Block net rollbacks until the current frame has been processed to avoid
glitched textures.
Call WSAStartup at init on windows
Display net stats when in game
Switch build fix
2021-09-03 11:11:46 +02:00
Flyinghead
69d0801121
net rollback with ggpo
2021-09-02 17:51:23 +02:00
flyinghead
f85bca06d7
dsp: rec crash on windows
2021-09-02 12:34:38 +02:00
Flyinghead
93eff7fac6
sh4: fix TMU regression
...
introduced by 05d51cc35c
fixes SA2 running too fast
2021-08-29 11:55:42 +02:00
Flyinghead
c3d954263b
gdrom: fix soft reset. ignore slave requests. Unknown ATA cmds handling
...
Retain currently inserted disk during soft reset
Correct DriveSelect value. Ignore slave drive commands and return 0
status.
Properly handle unknown ATA commands.
Fixes DreamShell boot and CDI boot from BIOS
2021-08-27 18:29:41 +02:00
Flyinghead
e058ba5d3b
sh4: always perform hard-reset of sh4 and its registers
...
Fixes infinite loop after reboot
2021-08-27 18:20:40 +02:00
Flyinghead
05d51cc35c
sh4: timer underflow lost if TCOR is 0 or very small
...
Fixes DreamShell boot
2021-08-27 17:55:50 +02:00
Flyinghead
088287227e
x64 msvc build fix
2021-08-26 11:01:44 +02:00
Flyinghead
ad1f9527c1
x86 msvc build fix
2021-08-26 10:34:01 +02:00
Flyinghead
ca17717af7
dsp: map TEMP/MEMS/MIXS regs to sh4 and aica address space. Clean up
2021-08-26 10:16:07 +02:00
Flyinghead
e5ca63db20
aica: arm32 dsp dynarec. Correct dsp level when dsp disabled
2021-08-24 20:49:53 +02:00
Flyinghead
ce58ba3472
pvr: detect swap on FB_R_SOF2 too. Force render res. to even width
...
Fixes Soul Calibur FPS /2 drop with Delay Frame Swapping on
2021-08-24 11:40:53 +02:00
Flyinghead
7fb83f4f77
libretro: fix content closing when loading or saving state
2021-08-22 20:41:02 +02:00
Flyinghead
c99de2370f
build fix
2021-08-20 08:39:37 +02:00
Flyinghead
8c9ff4a66f
iOS: DSP fix
2021-08-20 08:32:29 +02:00
Edward Li
6f233462c1
Add missing JITWriteProtect to DSP
2021-08-09 09:02:59 +02:00
Flyinghead
77e7c25e9c
iOS support. Work in progress
2021-08-06 10:30:30 +02:00
Flyinghead
6bb4575c95
Merge remote-tracking branch 'origin/master' into libretro
2021-08-05 18:17:30 +02:00
Flyinghead
37eace9db4
osx: lockup when emulator aborts. Race condition when starting emu
2021-08-05 17:43:26 +02:00
Flyinghead
9d6c548730
naomi: close cart on reset. sh4: replace some verify by throw
...
Close naomi/aw cart on reset. Reset input mapping/button names
Get rid of ngen_GetFeatures()
throw exception instead of failing verify if not internal error
catch sh4 exceptions in dynarecs and throw fatal error
2021-08-03 09:47:13 +02:00
Flyinghead
b59585437c
arm32 dynarec: windows ce support
2021-08-01 17:25:48 +02:00
Flyinghead
6f4e1365b1
x86: stack unwind fixes
2021-08-01 17:07:17 +02:00
Flyinghead
7561ce753a
unwind info for arm64. use static c++ lib for android
...
include oboe static libs
get rid of old regalloc
2021-07-29 17:46:46 +02:00
Flyinghead
710f379bd3
unwind info for x64 dynarecs
...
delegate to previous signal handler, proper abort for win32
arm32: use builtin gcc __clear_cache
dyna/driver.cpp: no need for a code buffer in win32, cleanup
2021-07-24 22:24:37 +02:00
vkedwardli
3c483c61e7
Support Apple Silicon (macOS ARM Universal Binary) ( #253 )
...
* Add audio arm64 cpp into Xcode project
* Build universal binary for SDL2 also
* Add vixl aarch64 dependency + build arm64 in cmake
* hardcode pagesize for M1 CPU
* Use `MAP_JIT` and toggle between RX and RW
* add pthread.h for cmake
* Disable audio dynarec temporary
* Enable aica arm dynarec
* Supports `br` with condition
* Dynamic linker flag for libSDL2.a since Homebrew path is different on arm (for xcodeproj)
* Fallback path for Intel
* de-dup for arm64, allow cross compilation on both Intel and Apple Silicon Mac
* Rename WriteProtect() to JITWriteProtect(), Move JITWriteProtect from arm7_rec to arm7_rec_arm64
* Remove CodeCache memset
* Remove keyboard_device.cpp from xcodeproj
* Use hard tab
* Update libchdr to support compiling on M1 (thanks @scribam)
2021-07-23 22:34:12 +02:00
Flyinghead
c453d14352
libretro: better error handling. fix reset issue with rotated games
...
compilation warnings, clean up
2021-07-21 16:19:57 +02:00
Flyinghead
de060d66ab
don't save flash if no game started. libretro: fix notifications
...
compilation warnings, non-functional changes
2021-07-20 19:21:11 +02:00
Flyinghead
4a77f847b4
libretro: fix arcade flash files path. ui: stop spamming dc_stop
2021-07-20 10:06:44 +02:00
Flyinghead
10e97b63be
jvs: no default mapping if button is remapped to P1 or P2
...
fixes jambo down-lever pausing the game
2021-07-19 10:15:24 +02:00
Flyinghead
ed0caa119a
Merge remote-tracking branch 'origin/master' into libretro
...
# Conflicts:
# CMakeLists.txt
2021-07-15 18:43:29 +02:00
Flyinghead
1e37e8f333
switch: dsp dynarec fix
2021-07-15 12:24:42 +02:00
Flyinghead
855836d9aa
switch: arm rec EntryPoints need rx. fix arm & dsp cache flush
2021-07-14 14:57:43 +02:00
Flyinghead
4d38e69f63
lr switch: enable aica arm and dsp dynarecs. handle rw/rx offset
2021-07-13 20:51:17 +02:00
Flyinghead
eb81583d9f
sh4 dyna: support for !vmem
2021-07-13 17:09:26 +02:00
Flyinghead
63a3f02368
libretro: better switch support
2021-07-12 20:14:21 +02:00
Flyinghead
1fdda98d8d
libretro: return max savestate size. unprotect ram and vram on reset
...
fixes random crash when saving state
2021-07-11 17:42:30 +02:00
Flyinghead
a73ca94124
savestate: push vmu lcd image when loading
2021-07-11 12:37:21 +02:00
Flyinghead
57874a9bcb
libretro: savestate compatibility. B1/D1 vmus now visible
2021-07-10 17:39:16 +02:00
Flyinghead
81546fe727
libretro: handle ThreadedRendering transition. Fix hang in !threaded
2021-07-09 16:28:28 +02:00
Flyinghead
eceb5ba982
naomi: keyboard needs player number
2021-07-09 14:34:11 +02:00
Flyinghead
673c2988d6
libretro: backport libnx support. Fix log source paths
2021-07-07 19:01:37 +02:00
Flyinghead
b300bb9f7a
libretro: non-threaded rendering
2021-07-07 13:12:16 +02:00
Flyinghead
8e6bbed74f
libretro: aw coin fix. screen rotation. disable loading notifications
2021-07-07 09:48:10 +02:00
flyinghead
c205a888a9
options: anisotropic filtering, oit pixel buffer size, fast gdrom load
2021-07-06 16:19:12 +02:00
flyinghead
a3b66aec1f
libretro: win32 support. build fix.
2021-07-06 13:22:54 +02:00
Flyinghead
7dbd79750c
WIP libretro core update
2021-07-05 19:44:08 +02:00
flyinghead
c5ce475359
Merge remote-tracking branch 'origin/master' into fh/directx
...
# Conflicts:
# core/input/gamepad_device.cpp
2021-07-04 17:53:49 +02:00
Flyinghead
14360beaf7
gdrom: reset registers and state on reset
...
Issue #281
2021-06-27 12:53:54 +02:00
Flyinghead
7f49accc22
Merge remote-tracking branch 'origin/master' into fh/directx
2021-06-07 20:53:31 +02:00
scribam
d6545b253b
Misc cleanup
2021-06-06 11:15:06 +02:00
Flyinghead
d6e15544bc
maple: better vmu I/O error handling
2021-05-28 10:35:44 +02:00
flyinghead
7ed68952ba
Merge remote-tracking branch 'origin/master' into fh/directx
...
# Conflicts:
# core/deps/patches/SDL.patch
# core/hw/maple/maple_devs.cpp
# core/rend/gl4/gles.cpp
# core/rend/gles/gles.cpp
# core/rend/gui.cpp
# core/rend/gui.h
# shell/apple/emulator-osx/reicast-osx.xcodeproj/project.pbxproj
2021-05-26 22:38:48 +02:00
Flyinghead
8644f7777b
gdrom: remove PatchRegion support. minor log changes
2021-05-20 10:21:47 +02:00
flyinghead
5f5d31730c
sdl: hide mouse in fullscreen. fix & refactor mouse devices
...
support rawinput mouse wheel
simplify mapping load
2021-05-19 18:13:52 +02:00
Flyinghead
9d4711a95d
mouse fix
...
fixes Silent Scope, Dreamkey, etc.
2021-05-19 11:32:38 +02:00
Flyinghead
3a1ae0db00
mmu: fix macos crash. only flush user mem in address lut
...
force rtt2vram for JSR (custom graffiti)
clean up vmem32 remains
missing host_context.h change
gh action: build sdl from source on macos
2021-05-18 12:53:14 +02:00
Flyinghead
373dffc65a
wince: ditch vmem32. use address LUT in dynarec. finer grained flush
2021-05-17 11:59:34 +02:00
Flyinghead
00a74d81c2
aica arm dynarec: conditional LDR with write back issue
2021-05-16 20:21:09 +02:00
Flyinghead
da40297810
fix msvc build
2021-05-16 20:18:49 +02:00
Flyinghead
025b447a9c
arm32: replace old arm emitter with vixl
2021-05-15 11:41:00 +02:00
Flyinghead
92abf760de
unneeded address/value masking. clean up
2021-05-14 21:47:47 +02:00
Flyinghead
1464c02903
mmu: add address cache to mem slow path. better fastmmu hashtable.
...
mmu: add address cache to Read/WriteMemNoEx
fastmmu: ignore 1k pages. optimize hashtable
get rid of NO_MMU
2021-05-14 19:03:57 +02:00
Flyinghead
f2b74de9dd
Revert 1ddb82f334
...
Issue #209
2021-05-02 15:14:26 +02:00
Flyinghead
1ddb82f334
pvr: deadlock in QueueRender/dc_stop
2021-05-02 11:23:51 +02:00
flyinghead
b90cdf9588
RawInput driver. Multiple keyboards support
...
Merge Keyboard and KbGamepad
Always use system mouse for UI
Issue #138
Fix DX9 when not using SDL
2021-04-29 18:58:04 +02:00
flyinghead
5359e9a09d
allow gpu-handled palette textures to be replaced by custom version
...
Issue #219
Fix incorrect texture size calculation for VQ textures.
Reorder BaseTextureCacheData fields to have hottest on top
2021-04-17 18:40:58 +02:00
flyinghead
f107d380b9
WIP directx9 renderer
2021-04-12 22:49:04 +02:00
Flyinghead
499d06ea83
bba: crash when loading a savestate with bba disabled
2021-04-08 10:33:47 +02:00
Flyinghead
72968290bf
cheats: support for .CHT cheat files
...
Issue #167
gui: no need to save background in opengl, use RenderLastFrame instead
disable cheats when online
2021-04-06 11:41:41 +02:00
Flyinghead
b3de6a166d
area 7 access to sh4 mm registers only through mmu translation
...
on-chip ram area isn't translated in both user and supervisor modes
vmem: return 0 for non-mapped region reads
Fixes dolphin blue crash/freeze. Issue #62
Fixes Resident Evil - Code Veronica X (Chris) floor 1F crash
2021-04-01 13:30:37 +02:00
Flyinghead
4d815570d0
sh4: define SCI module registers
2021-03-31 19:01:31 +02:00
Flyinghead
6af509159e
optimize area0 mem handlers
...
use flash_size for both sram (aw, naomi) and flash (dc)
bios and flash not mirrored to 02000000
2021-03-31 18:45:46 +02:00
flyinghead
a8929170f3
up sh4 context pad to 64k to keep windows happy
2021-03-29 21:12:43 +02:00
Flyinghead
904bed862e
arm32: store queue dynarec optim. ditch Unstable Optimizations
...
shrink Sh4Context.pad size except on arm32
reset sh4 before mem to unlock ram
2021-03-29 14:26:55 +02:00
Flyinghead
dc0c5baece
move vram to pvr
2021-03-28 20:08:02 +02:00
Flyinghead
569c23ca95
pvr: use pvr_read32p/pvr_write32p to access 32b vram
2021-03-28 20:08:02 +02:00
scribam
9c8082fb16
delete unnecessary null pointer check
2021-03-28 11:10:46 +02:00
scribam
754c0e234b
maple: fix potential mem leaks if vector reallocation fails
2021-03-27 20:59:54 +01:00
Flyinghead
2b41d9684f
pvr: static init UB
...
Issue # #148
2021-03-26 18:39:19 +01:00
Flyinghead
6b11674949
use aligned struct for sqbuffers and sh4 context
...
serialize YUV_index
remove bogus arm32 TAWriteSQ implementation
2021-03-23 16:07:53 +01:00
Flyinghead
0f6dda9cb1
gdb server agent
...
allow stepping and soft breakpoints
clean up interpreter opcodes
2021-03-23 14:49:19 +01:00
Flyinghead
06be0d927b
screen stretching always in final horiz direction. lightgun coords fix
...
gl: strech direct fb texture based on stretching and rotation
Fix lighgun coords when stretching and/or rotating
Dimension render size based on stretching and rotation
vk: lightgun crosshair disappears near 0-edge -> scissoring x and y must
be >= 0
always stretch horizontally even when rotating
2021-03-21 18:03:22 +01:00
Flyinghead
7af667cdf8
missing change from previous commit
2021-03-21 18:03:22 +01:00
Flyinghead
1abfa19636
set rendering resolution in discrete steps instead of scaling
2021-03-21 18:03:22 +01:00
Flyinghead
0b6420d90a
arm32: sh4 dynarec infiniloop on reset. aica rec: fix icache flush
...
Fixes hang when exiting awave service menu
Issue #208
2021-03-20 15:06:16 +01:00
flyinghead
bceed97817
Merge pull request #205 from scribam/clang-tidy
...
clang-tidy: fix more checks
2021-03-15 20:17:56 +01:00
scribam
cd47633810
clang-tidy: run readability-avoid-const-params-in-decls
2021-03-15 19:52:54 +01:00
scribam
67435c71e8
clang-tidy: run readability-non-const-parameter
2021-03-15 19:52:54 +01:00
scribam
092ee6d8a5
clang-tidy: run readability-container-size-empty
2021-03-15 19:52:54 +01:00
scribam
f1c8679df7
clang-tidy: run readability-delete-null-pointer
2021-03-15 19:52:54 +01:00
scribam
913fbef952
clang-tidy: run readability-inconsistent-declaration-parameter-name and improve parameter names
2021-03-15 19:52:54 +01:00
flyinghead
901e58573e
limit mouse coordinates in relative mode
...
Issue #138
2021-03-15 17:55:44 +01:00
scribam
de363f176f
clang-tidy: run readability-redundant-string-cstr
2021-03-14 21:52:42 +01:00
scribam
26ebcdf9f5
clang-tidy: run modernize-use-equals-default
2021-03-14 21:52:42 +01:00
Flyinghead
5e619a70d4
arm64: fix crash with HLE bios. Set nav bar to tranparent (android 10)
...
arm64 dynarec main loop and handlers were generated twice
Fix nav bar background leftover on android 10
2021-03-14 17:54:57 +01:00
scribam
fe17d79e8d
clang-tidy: run performance-unnecessary-value-param
2021-03-13 17:28:33 +01:00
scribam
af0c267d96
clang-tidy: run modernize-use-emplace
2021-03-13 17:28:32 +01:00
scribam
ae47ff9875
clang-tidy: run modernize-deprecated-headers
2021-03-13 17:28:32 +01:00
scribam
28d7227ba5
clang-tidy: run modernize-use-bool-literals
2021-03-13 17:28:32 +01:00
scribam
d715836c40
clang-tidy: run modernize-use-override
2021-03-13 17:28:32 +01:00
scribam
1cc3490f51
Remove HOST_OS references
2021-03-13 11:38:34 +01:00
Flyinghead
5227259048
No more fast-math on x86/x64. Yet another FTRC fix
...
Don't compile with -ffast-math
Fix FTRC to return 0x80000000 for NaN
-> fixes Arcade Racing Legend sound problems and disappearing cars
Remove unsupported GCW0 platform
Remove unused android makefiles
2021-03-11 12:27:00 +01:00
Flyinghead
77bb6eade5
armrec: ignore invalid op ('SEGA')
...
fixes megadrive cdi crash
2021-03-11 12:15:57 +01:00
Flyinghead
cb52d0b6ec
x64: andn() needs BMI1 cpu feature
...
Issue #198
2021-03-09 14:38:27 +01:00
flyinghead
3314e9f3d7
naomi: toukon4 needs JP region
2021-03-08 21:03:36 +01:00
Flyinghead
31e0b3ab51
x64/x86 dynarecs: fast-math fcmp/eq implementation
...
Fixes Shin Nihon Pro Wrestling - Toukon Retsuden 4
Fixes Project Justice (Issue #38 )
2021-03-07 16:59:17 +01:00
flyinghead
45fcd811ec
pvr: nullify TA context at shudown
2021-03-05 18:20:09 +01:00
Flyinghead
641da3a771
build fix
2021-03-02 20:36:19 +01:00
Flyinghead
424736961b
arm64: get rid of inline assembler
2021-03-02 20:35:59 +01:00
Flyinghead
c99b34e60c
msvc build fix
2021-03-02 20:10:25 +01:00
Flyinghead
0c8815549c
Merge branch 'fh/x64-arm-jit'
...
# Conflicts:
# core/hw/aica/aica.cpp
# core/nullDC.cpp
2021-03-02 19:42:15 +01:00
flyinghead
77961d2c33
windows: international keyboard support
...
sdl: pass through USB scancodes
windows: detect host keyboard layout and emulate corresponding DC
keyboard
update modifier keys state even if no key pressed (Typing of the Dead:
Shift key tutorial)
2021-03-02 18:45:18 +01:00
Flyinghead
c3a95594f9
New option system
...
Fix per-game settings (Issue #115 )
Automatic load/save state (Issue #173 )
Reload Naomi/AW BIOS after per-game settings are loaded to allow
per-game BIOS region. (Issue #96 )
Restrict Soul Reaver widescreen cheat to the EU version (Issue #188 )
Disable UI elements for overridden settings
Clean up/simplify legacy Naomi ROM loading
2021-03-01 10:13:40 +01:00
Flyinghead
521d69f5e0
aicaarm: get rid of inline and source assembler
2021-02-15 18:47:09 +01:00
Flyinghead
c4cb055e3f
fix tests and macOS build
2021-02-14 19:34:26 +01:00
Flyinghead
a920ae5901
aica: fix race conditions between sh4/arm
...
Fix sound issue in Test Drive Le Mans and Looney Tunes
2021-02-14 19:19:57 +01:00
Flyinghead
2d8bc6d6ee
dynarec: skip single branch targets
2021-02-14 18:49:40 +01:00
scribam
89274248ed
Fix compilation on FreeBSD
2021-02-14 17:06:03 +01:00
Flyinghead
485ce40d33
pvr: crash when rendering with no TA data
2021-02-11 16:31:52 +01:00
Flyinghead
89fe36b881
arm7 rec: lr wasn't updated in conditional bl
...
missing changes for previous arm64rec commit
more aica arm tests
wince vmem handler now uses direct ram access
2021-01-31 12:02:20 +01:00
Flyinghead
80782475da
x64 rec: get rid of setjmp. standardize ngen_Rewrite/HandleException
...
move rewrite code from exception handlers to x86/x64 dynarecs
use same host context info on linux/win
x64: stack alignment issue in mem handlers
2021-01-30 16:14:44 +01:00
Flyinghead
75f7b92342
aicaarm namespace
2021-01-29 11:39:00 +01:00
Flyinghead
1b47ef0ab1
Merge remote-tracking branch 'origin/master' into fh/x64-arm-jit
2021-01-29 11:36:18 +01:00
flyinghead
958775ffbe
x86 rec: add fast mem access and rewrite
...
x86: fix dynamic block end and directly use FPCB
fix code pointer for dsp dynarecs
reios entry point overwritten because of same address proc
2021-01-28 16:29:21 +01:00
Flyinghead
4c262deff6
aica arm: msvc asm file for x64 rec. build fixes
2021-01-27 11:08:47 +01:00
Flyinghead
882e14f13f
aica: x64 jit for arm
...
aica arm x86: use pc-relative addressing to access arm registers
OSX project fix
arm7: add simple ldm/stm handling. optimize arm32 and x64 recs
update CMakeLists.txt and Makefile. finish rebase
2021-01-26 21:32:43 +01:00
flyinghead
93ceb92c12
x86 dsp dynarec
2021-01-26 18:48:17 +01:00
flyinghead
c344903a23
new x86 dynarec. Enable for android
...
refactor common code between x64 and x86 dynarecs.
x86 rewrite based on the x64 one
some discarded dyna blocks weren't fully unlinked
2021-01-26 13:16:48 +01:00
flyinghead
4a81430da7
aw: analog and lightgun inputs not responsive after load state
...
save maple player num in state
save aw maple devs register
serialize more spg state. don't call CalculateSync on load
move savestate logic to spg and naomi
make tests work on windows
2021-01-22 15:11:04 +01:00
flyinghead
ed7bd06f96
win32: multiple mice support. Patch and build SDL
2021-01-21 21:00:46 +01:00
flyinghead
00413a6ad2
sdl: allow capture mouse and relative mode
...
toggle with L-ALT + L-CTRL
Issue #157
simple event system
2021-01-19 21:31:48 +01:00
flyinghead
a23c895668
sh4: restore rounding/denormal mode after pausing the game
...
fixes Sword of the Berserk glitch when pausing/restarting
2021-01-19 18:28:21 +01:00
flyinghead
16dec49e08
windows: use utf8 internally. Support latin2, cyrillic, etc. pathnames
...
upgrade libzip to 1.7
imgui: use all glyphs from font including latin2, cyrillic, greek, etc.
2021-01-19 11:11:01 +01:00
flyinghead
287836803d
interp: don't touch the sh4 cache in normal mode
2021-01-15 10:21:05 +01:00
flyinghead
3dc3f7b7c2
naomi: wrong path when looking for gdrom in parent rom folder
2021-01-15 10:18:15 +01:00
Flyinghead
36451614d2
rec-x64: don't use vfmadd to avoid intel/amd variations
2021-01-08 21:40:13 +01:00
flyinghead
e5b3c5268b
wince: attempt immediate read/write when address isn't translated
2021-01-07 19:18:53 +01:00
Flyinghead
ed6e544e11
naomi: fix crash when loading wwfroyal game test menu
2021-01-05 18:58:06 +01:00
Flyinghead
baa36925e2
naomi: more rom list to cpp. remap pjustice buttons. add more inputs
2021-01-05 18:39:00 +01:00
Flyinghead
65563942cd
naomi: add dybb99, dybbnao, ringout and sstrkfgt inputs
...
Issue #154
2021-01-05 10:30:01 +01:00
Flyinghead
f906d08376
more 32b windows fix
2021-01-04 22:00:15 +01:00
Flyinghead
99bd8b4972
get rid of USE_MODEM/ENABLE_MODEM
2021-01-04 20:58:29 +01:00
Flyinghead
eeca82b4e2
32b win build fix
2021-01-04 20:44:15 +01:00
Flyinghead
2c8b5aa7f8
vs2019 build tentative fix
2021-01-04 18:56:15 +01:00
Flyinghead
d7fcd3d47c
jvs: allow more than 1 player with analog axes
...
add wsbb and smlg99 input mappings. Issue #152
2021-01-04 10:43:45 +01:00
Flyinghead
de260b89af
net: launch miniupnp async. filter loopbacked broabcast pkts. dhcp reset
...
ftspeed network support
delete all dhcp negos when destroying dhcp server
filter broadcasted udp packets coming from self
launch miniupnp async since it takes time to complete (2-4s)
fix unit test
2021-01-03 21:25:27 +01:00
Flyinghead
889fc8256d
broadband adapter support
2021-01-02 21:19:50 +01:00
Flyinghead
62a1e29670
modem: do not reject VJ option for Web TV
2020-12-29 18:02:06 +01:00
Flyinghead
cc7a292591
macOS: link sdl statically, hide vulkan. naomi: use miniupnp for server port
...
macOS doesn't need volk or glslang
link sdl statically
add GameController.framework (Xcode)
2020-12-29 11:53:00 +01:00
Flyinghead
9c43a55c42
miniupnpc: fix include dir
2020-12-28 13:15:06 +01:00
Flyinghead
e7ae03ded9
modem: use miniupnp to open router ports
2020-12-28 11:31:26 +01:00
Flyinghead
6f27b9b6b7
force wercker on ubuntu 18.04. Minor change
2020-12-27 09:05:55 +01:00
Flyinghead
a00aad5fa7
pvr: auto frame skip to replace current and previous synchronous rendering
...
Restore previous synchronous rendering behaviour (normal auto frame skip)
No frame skipping when disabled
better cpu speed measure over 4 vblanks
2020-12-25 12:08:44 +01:00
Flyinghead
5905b8c148
dsp: don't clear EFREG
...
pass AICA0203 diag test
2020-12-20 23:19:24 +01:00
Flyinghead
632731bede
vmem: map area 4 access to vram
...
pass DDT0101 diag test
fix vmem handler bug with >= 8 handlers
ch2-DMA: use SB_LMMODE1 for upper mirror
dmac: update SAR and DAR according to CHCR.SM and CHCR.DM
use function templates for vram 32b handlers
clean up
2020-12-20 17:25:28 +01:00
Flyinghead
d0d9712545
gdrom: allow 0-len transfer
...
fixes Pro Pinball Trilogy hang during intro
2020-12-18 19:27:19 +01:00
Flyinghead
0d81c9fb0b
sh4: clean dmac module, correct address/len mask, add missing mirror
...
fix infinite loop
2020-12-18 13:58:36 +01:00
Flyinghead
4ca0b56106
flash: zero initialize
2020-12-18 13:44:40 +01:00
Flyinghead
e94e757743
naomi: align SB_GDSTAR on 32-byte boundary
...
Fixes vtennis (Issue #92 )
2020-12-18 13:43:42 +01:00
Flyinghead
34d86500fa
compile warnings. debug log. minor changes
2020-12-16 15:12:32 +01:00
Flyinghead
650c3ff8ae
pvr: serialize maple_int_pending. don't rend_reset in rend_term
2020-12-16 14:44:45 +01:00
Flyinghead
3f1326a3ac
rend: read framebuffer as non-interlaced when possible
2020-12-16 14:40:11 +01:00
Flyinghead
04cd7db2cd
pvr: serialize TA render passes
...
use enum for renderer type
2020-12-15 16:27:34 +01:00
Flyinghead
c03cf8eb45
rend: multi-render, delay swap, refactor main ui loop
...
move ui loop out of hw/pvr
vk: implement multi-rendering, delay swap. Load fb before render pass
fps counter now counts frames, not renders
vk: force ignoreTexAlpha for 565 texture in case the supporting texture
has an alpha channel (RTT). Fixes Alone in the Dark cinematic scenes.
pvr: better detection of frame swapping (FB_R_SOF/FB_W_SOF)
pvr: synchronous rendering now always waits for render in progress
(speed measurement not reliable, render skipped when multi-rendering)
vk: limit swap chain size to 2
2020-12-15 15:09:42 +01:00
Flyinghead
93523df804
pvr: implement tile array region clipping. always draw background
...
fixes Quake 3 split-screen multiplayer
2020-12-15 14:17:58 +01:00
Flyinghead
9191795b4c
pvr: increase PT max poly count
...
fixes Revolt overrun
2020-12-15 14:15:02 +01:00
Flyinghead
d960f8e9f5
lightgun: handle screen stretching, rotation and tall aspect ratio
...
Issue #139
move jvs stuff into maple_jvs.cpp
2020-12-09 13:48:58 +01:00
Flyinghead
a39199d379
clean up
2020-12-07 22:16:51 +01:00
Flyinghead
d7c49c6522
naomi: memory leak with decrypted carts
2020-12-07 22:12:16 +01:00
Flyinghead
14393ea6b1
improved microphone emulation. support for linux and windows
2020-12-05 18:47:09 +01:00
Flyinghead
579db85b3b
modem: fix various picotcp tcp issues (re-xmit timers, segment split)
...
modem: delay receiving initial ppp handshake until after sending data
(WinCE)
reduce char receive delay to 143 us
make sure picosocket buffer is empty before shutting down socket
use 536-byte segment for tcp sockets
increase linger delay to 10 sec (avoid sending RST when waiting for FIN)
picotcp: disable window scaling option
dupe ack reception in full window mode should enter dupack mode
pick the correct segment to re-xmit in recover mode
both partial frames should be enqueued when splitting segment
fix wrong size when splitting segment and crash if splitting first one
make sure re-xmit timer is correct in tcp output
2020-12-04 11:23:15 +01:00
Flyinghead
6154cc08db
serial: fix maxspeed hang at boot reading from console
2020-12-02 14:44:16 +01:00
Flyinghead
adeacd89f4
input: implement reload. remap some naomi games input
...
implement lightgun reload (dc, naomi)
kcode[] set to 32 bits
revamped mapping for naomi keys
remapped btns for some naomi games
display game button/axes names in UI
2020-12-02 14:40:50 +01:00
Flyinghead
8905410aa4
clean up
2020-11-30 21:59:13 +01:00
Flyinghead
ef16842074
awave: fix lightgun trigger and position
...
fix aw lightgun trigger virtual key with new lightgun map
delay maple dma int when maple bus occupy is set for a lightgun.
raise maple int at vblank in if off screen
nudge reported position to avoid registering as off screen
2020-11-30 21:31:50 +01:00
Flyinghead
c6f5a406a7
picoppp: use char instead of u8
2020-11-30 13:05:13 +01:00
Flyinghead
1d17dbd121
modem: avoid spurious retransmit. limit ppp buffer size.
...
set actual modem receive speed to 48K
picotcp: avoid spurious retransmit after window full. set min RTO to 1
sec.
buffer incoming data until pico socket can accept it.
limit tcp payload to 512 bytes.
Issue #114
2020-11-30 12:52:46 +01:00
Flyinghead
8f77a5482a
config/data folders improvements
...
linux: look for legacy ~/.reicast and ~/.reicast/data
else look for ~/.config/flycast and ~/.local/share/flycast
and ~/.config/reicast and ~/.local/share/reicast
(defaults to flycast)
look for bios files in home folder and data folders (android, windows
,macos), then in game folder.
on linux, search in /usr/share/flycast and /usr/local/share/flycast and
legacy locations
2020-11-26 16:45:57 +01:00
Flyinghead
d485da19b7
picotcp: close connecting sockets when notified
2020-11-26 14:08:37 +01:00
Flyinghead
276b59b24e
fix compile warnings. non-functional changes
2020-11-25 10:17:08 +01:00
Flyinghead
cffb272abd
sh4: non-functional changes
2020-11-24 21:29:04 +01:00
Flyinghead
305ab38ac8
naomi: search parent rom path for gdrom
2020-11-24 20:50:50 +01:00
Flyinghead
4dd05ca23f
aica: saturate EG when aeg reaches 3bf. non-functional changes
2020-11-24 20:07:10 +01:00
Flyinghead
eb2c762214
rec: avoid div32 crash when dividing by 0
...
Fixes Sakura Taisen 2 floating point exception crash
2020-11-21 20:46:40 +01:00
Flyinghead
99b01536bc
reios: fix crash when loading a HLE savestate in a non-HLE session
...
flashrom pointer wasn't initialized in this case
2020-11-21 20:09:06 +01:00
Flyinghead
525c2dc88c
sh4: promote opcode 0 as regular NOP
2020-11-21 20:06:59 +01:00
Flyinghead
47f262a2c6
vk: use normal pipeline for raw fb display
...
raw fb also needs to be rotated/scaled
oit: draw opaque polys on first frame
2020-11-19 22:29:06 +01:00
Flyinghead
99bfbeb3bc
naomi: JVS IO response CRC byte, JVS Self Test command/response
...
Adds JVS IO response CRC byte, Add JVS Self Test command/response
backport https://github.com/libretro/flycast/pull/972
2020-10-24 15:10:55 +02:00
Flyinghead
d7b1ad61f3
aica: make sure lpf cutoff value is > 0
...
Issue #108
2020-08-31 21:53:33 +02:00
Flyinghead
3bc508deea
gdrom: fix D2 disk switching
...
Issue #107
2020-08-17 09:23:22 +02:00
flyinghead
700994340b
cmake: add sdl to vstudio build. Fix WinCE crash
2020-07-23 18:50:55 +02:00
Flyinghead
860425b3cc
naomi: zombie revenge analog axes. add puyofevp. fix pokasuka
2020-07-20 12:03:20 +02:00
Flyinghead
4ecf43a08d
vulkan: revert to using 3 swap images. fix crash when switching gl/vk
...
Fix Hello Kitty crash with empty first TR polygon
Fix Test Drive Le Mans crash on invalid textures
Fix wldkickspw crash with invalid TA data
2020-07-11 17:38:41 +02:00
Flyinghead
adf5a7e8e4
fix tests. sdl init iisue on rpi3
2020-07-06 17:29:53 +02:00