Flyinghead
53b5588bda
Merge remote-tracking branch 'origin/master' into dev
2022-03-13 11:01:27 +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
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
e084cc9a3a
jvs: set received jvs message trail to zero
...
fixes sh4 crash during naomi boot
2022-01-27 15:50:44 +01:00
Flyinghead
4335aa563f
naomi2 WIP
2022-01-16 22:41:42 +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
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
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
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
8b986dfab3
vmu beep support
2021-10-10 16:33:37 +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
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
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
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
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
69d0801121
net rollback with ggpo
2021-09-02 17:51:23 +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
a73ca94124
savestate: push vmu lcd image when loading
2021-07-11 12:37:21 +02:00
Flyinghead
eceb5ba982
naomi: keyboard needs player number
2021-07-09 14:34:11 +02:00
Flyinghead
8e6bbed74f
libretro: aw coin fix. screen rotation. disable loading notifications
2021-07-07 09:48:10 +02:00
Flyinghead
7dbd79750c
WIP libretro core update
2021-07-05 19:44:08 +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
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
92abf760de
unneeded address/value masking. clean up
2021-05-14 21:47:47 +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
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
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
bceed97817
Merge pull request #205 from scribam/clang-tidy
...
clang-tidy: fix more checks
2021-03-15 20:17:56 +01:00
scribam
f1c8679df7
clang-tidy: run readability-delete-null-pointer
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
d715836c40
clang-tidy: run modernize-use-override
2021-03-13 17:28:32 +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
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
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
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
34d86500fa
compile warnings. debug log. minor changes
2020-12-16 15:12:32 +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
14393ea6b1
improved microphone emulation. support for linux and windows
2020-12-05 18:47:09 +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
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
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
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
860425b3cc
naomi: zombie revenge analog axes. add puyofevp. fix pokasuka
2020-07-20 12:03:20 +02:00
Flyinghead
a446199312
g2 dma: use templates. SB_G2APRO support. maple: fix SB_MDAPRO support
2020-06-25 14:49:53 +02:00
Flyinghead
6402c8e7ed
maple: check SB_MDAPRO magic number
2020-06-23 19:20:55 +02:00
Flyinghead
8b44ebbdab
maple: don't overrun device strings
2020-06-23 18:10:22 +02:00
Flyinghead
8192eea387
maple: msb selection, implement/fake reset, kill and allreq commands
...
overrun and illegal address ints in strict mode
2020-06-15 17:04:04 +02:00
Flyinghead
1301103245
maple: fix vmu reset in BIOS. naomi: support P2 buttons mapped to P1
2020-05-29 14:45:12 +02:00
Flyinghead
aac8b30bce
naomi: fake wrungp drive board. marine fishing inputs
...
set jvs board for dog walking and touch de uno
force region to japan for the same
2020-04-26 11:32:15 +02:00
Flyinghead
06313dd540
naomi: auto configure eeprom and bbsram for network
2020-04-19 21:45:15 +02:00
Flyinghead
98b2a32eae
naomi: auto-rotate screen, no widescreen when rot, lightgun as analog
...
rotate screen for naomi games that need it
disable widescreen when rotating screen
detect lightgun games and enable proper settings
disable model 3 comm board for atomiswave
2020-04-17 22:11:11 +02:00
Flyinghead
be1f2138e7
naomi: add inputs for wrungp. network error handling/reporting
2020-04-15 19:07:04 +02:00
scribam
e99aac3575
Remove "using namespace std;"
2020-03-30 23:00:43 +02:00
scribam
c1b37b56bc
Remove "sh4_if.h" and "stdclass.h" from "types.h"
2020-03-30 23:00:43 +02:00
scribam
4bf6802855
Cleanup include headers
2020-03-29 14:26:21 +02:00
Flyinghead
c5a42a57bc
limit maple schedule time, allow vram 8-bit reads, minor changes
2020-03-28 12:19:36 +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
39d81923c9
keyboard support for totd and luptype
2020-03-23 14:09:50 +01:00
Flyinghead
0c2e95185c
support for right analog stick. Fix gunsur2 inputs
2020-03-20 16:57:50 +01:00
Flyinghead
6b2e815b49
naomi: fix monkey ball inputs
2020-03-19 23:38:01 +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
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
Flyinghead
b79c074444
axe wchar
2020-01-31 23:51:12 +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
573a298bba
naomi: emulate mazan inputs
2020-01-24 15:43:19 +01:00
Flyinghead
3294b36961
limit dc analog axes magnitude
2019-12-17 23:41:32 +01:00
Flyinghead
d27142f565
maple: don't write past the vmu capacity
2019-10-21 19:09:01 +02:00
Flyinghead
6304b1e9c1
Fix verify() and die() macros
2019-10-12 13:48:41 +02:00
Flyinghead
8b949e1dca
Get rid of time_sync timer. Clean-up
2019-09-11 15:09:23 +02:00
scribam
49b7e0682b
Cleanup
2019-09-07 20:36:13 +02:00
scribam
e0fb50488d
deps: Update xxhash integration
2019-09-06 21:05:19 +02:00
scribam
bdf2029e99
Simplify libpng/zlib integration
2019-09-04 19:59:51 +02:00
Flyinghead
ee1ee56824
proper hard reset of sh4 mm registers
...
more clean up
2019-09-01 23:10:04 +02:00
Flyinghead
936cd6781b
clean up
2019-08-31 17:36:34 +02:00
Flyinghead
e07879e43c
maple: std controller input mask was applied to all gamepad devices
2019-08-30 23:37:43 +02:00
Flyinghead
7c8ce6267a
use lroundf(x) instead of x + 0.5f
2019-08-17 18:19:33 +03:00
Flyinghead
1375536534
fix android intent-filter. fix spurious maple warning
2019-07-13 15:30:10 +02:00
Flyinghead
68acf48d64
Support for Twin Stick and Ascii FT Stick
2019-07-12 19:18:39 +02:00
Flyinghead
14ddd01e39
compilation warnings
2019-07-12 17:53:17 +02:00
Flyinghead
4f8e18215b
Fixed savestates: restore compatibility with lr and master
...
Add new maple devices from lr
Clean up shil.cpp
2019-07-12 17:20:43 +02:00
Flyinghead
58cb50f587
fix reset hang on naomi
2019-07-10 17:25:11 +02:00
Flyinghead
f3a91de1af
Unify dreamcast, naomi and atomiswave builds WIP
2019-07-09 23:52:19 +02:00
Flyinghead
d5e24d8aed
Cleaner init. Get rid of LastImage
2019-07-08 18:10:43 +02:00
Flyinghead
c60e2d29e8
modem: add termination function to stop pico thread
...
use new logging
log: set max verbosity to warning for release builds
2019-07-01 10:28:31 +02:00
Flyinghead
a31f573c69
maple: use new logging
2019-06-30 23:38:58 +02:00
Flyinghead
927298f353
naomi: fix coin chute (compiler bug?). Disable verify in TA parsing
...
Fix F1 World Grand Prix for Dreamcast
2019-06-25 19:10:20 +02:00
Flyinghead
c2c0215e1b
Merge remote-tracking branch 'origin/master' into fh/wince-dynarec
2019-05-22 14:13:00 +02:00
Flyinghead
05577b64f7
wince: return actual vmu system area in GetMediaInfo
...
revert previous default vmu change
2019-05-09 11:25:17 +02:00
Flyinghead
dc7f608461
wince: fix vmu issues
2019-05-08 22:31:59 +02:00
Flyinghead
13341ecd59
maple: process_kcode -> transform_kcode
2019-04-10 11:31:08 +02:00
Flyinghead
b87a1cc31a
atomiswave: setup maple controls depending on game
...
more lightgun fixes but still not working
2019-04-08 19:14:55 +02:00
Flyinghead
cf7434a9e6
atomiswave: fix coin input. Subclass sega controller instead of #def
2019-04-08 17:09:10 +02:00
Flyinghead
e8205e568b
naomi/aw: fix atomiswave and naomi inputs
...
atomiswave analog axes support
map atomiswave and naomi driving games inputs
2019-04-06 19:36:57 +02:00
Flyinghead
7f44bb9956
vmu: pass bus id and port to callback
2019-03-29 19:54:59 +01:00
Flyinghead
09ea5eba78
missing changes for previous commit
2019-03-29 17:47:17 +01:00
Flyinghead
815616369e
naomi build fix
2019-03-25 21:58:54 +01:00
Flyinghead
22b08bea74
maple: disconnect/reconnect maple devices when config changes
...
Wait 100ms between disconnect and reconnect to let game detect it
2019-03-25 18:46:57 +01:00
Flyinghead
3edf24386d
maple: set SB_MDST to 1 to start dma in maple_vblank
2019-03-13 17:27:50 +01:00
flyinghead
56be9f462b
xinput: fix rumble
2019-02-22 19:53:26 +01:00
Flyinghead
a39503dd56
rumble support for xinput and evdev
2019-02-22 19:23:03 +01:00
Flyinghead
8b5c2a3fac
New input handling/mapping system, SDL only for now. Gui wip
2019-02-12 11:30:24 +01:00
Flyinghead
05177b2231
Naomi: got rid of in-lst input mapping
2018-12-13 16:08:59 +01:00
Flyinghead
a3cba92665
Android: load/save jvs eeprom
2018-12-12 23:30:54 +01:00
Flyinghead
5763da184c
Fix bug in WriteMemBlock_nommu_ptr when size is not word-aligned
...
Bump max opaque polygon to 8192 (alpilot)
Minor lr backport and clean up
Fix corruption in doa2[m] and alpilot
Fix missing sound in Jambo Safari
2018-12-12 12:40:04 +01:00
Flyinghead
9c556007fb
Naomi: lr backport
2018-12-11 23:20:30 +01:00
Flyinghead
0d720ae0d6
Naomi: fix hotd2 and alpilot controls
2018-11-20 12:43:10 +01:00
Flyinghead
894991a44d
Naomi: use default eeprom from mame rom
...
More I/O boards
2018-11-19 16:43:41 +01:00
Flyinghead
a1aea570c5
Ignore bogus maple dma xfer
...
Workaround for csmash game test menu crash
2018-11-19 16:15:05 +01:00
Flyinghead
1055c8366f
Naomi: JVS boards refactoring, support for Ninja Assault
2018-11-15 18:30:54 +01:00
Flyinghead
b5e6d7e54a
Naomi/AW: input descriptors. Load bios from naomi.zip for .bin/.dat
2018-11-14 14:13:42 +01:00
Flyinghead
6f3b492175
Naomi/AW: Allow bios region selection
...
Per-game flash and bbram save files
naomi_boot.bin now optional
2018-11-12 17:54:38 +01:00
Flyinghead
4c334f09ea
AW: various fixes, more roms
2018-11-09 13:22:27 +01:00
Flyinghead
3e8033cc70
Don't die on Maple DMA abort
2018-11-08 10:41:40 +01:00
Flyinghead
0702682693
AtomisWave support
...
Better AtomisWave platform support
Refreshed flashrom implementaion
AtomisWave carts
Merged rom+bios romsets
2018-11-07 23:27:32 +01:00
Flyinghead
22558d190a
Naomi: add dual I/O boards config for Ring Out 4x4
2018-11-06 14:01:54 +01:00
Flyinghead
7bb00a339f
Free maple devices on exit. Avoid mem leaks on startup.
2018-10-29 16:31:44 +01:00
Flyinghead
af1b2da0bf
maple: minor fix
2018-10-22 17:33:38 +02:00
Flyinghead
c07cbbe9bf
JVS: fix substract coin
2018-10-21 03:25:49 +02:00
flyinghead
e8a6835972
Naomi: force eeprom save. Ignore JVS node id if outside range
2018-10-21 02:50:08 +02:00
flyinghead
0d1a892515
JVS: fix buffer overflow (win32 crash)
...
Fix MSVC build.
2018-10-20 20:08:51 +02:00
Flyinghead
d27d4f9b00
Naomi: fix for ARM
2018-10-18 09:55:17 +00:00
Flyinghead
613e42a014
Naomi: better id of games, per-game jvs setup and settings
...
Better lst parsing with error handling
2018-10-17 13:18:24 +02:00
Flyinghead
18c6031bc8
JVS: Fix controls of Crazy Taxi, Power Stone and Zombie Revenge
2018-10-16 17:51:04 +02:00
Flyinghead
2214af734f
JVS: Fix multiple i/o board problems
...
Rotary encoders support for Virtua Golf and Shootout Pool
2018-10-16 15:34:45 +02:00
Flyinghead
7156a165e3
JVS: multiple I/O boards support and bug fixes
2018-10-15 00:59:52 +02:00
Flyinghead
2e367ed3c2
JVS: Fix length of various 86 commands
2018-10-12 17:19:59 +02:00
Flyinghead
2c4e68ff9f
JVS: refactoring to be closer to actual hardware
...
Returns multiple JVS messages at once
Multiple I/O boards correctly handled
Jambo Safari playable
Virtua Golf boots
2018-10-11 21:17:55 +02:00
Flyinghead
ff01e3521b
Better NAOMI JVS emulation
2018-10-11 10:09:28 +02:00