Flyinghead
300cf0d437
better RetroAchievements UI and threading
...
Pop ups for authentication, game load, game completed, achievements
unlock and progress.
Handle disk changes.
Issue #761
2024-05-01 18:32:39 +02:00
Flyinghead
c96e828c63
move http_client to oslib
2024-04-29 16:17:50 +02:00
Flyinghead
8fdd1dde3d
RetroAchievements support
...
MVP
Issue #761
2024-04-29 14:59:47 +02:00
Flyinghead
336706e728
move most os_* funcs to oslib
...
add os_DestroyWindow and os_UpdateInputState
2024-04-12 17:37:45 +02:00
Flyinghead
06a6e26588
get rid of os_GetSeconds()
...
replace it with std::chrono-based getTimeMs()
2024-04-11 15:25:25 +02:00
Flyinghead
42e98e86d0
set thread names
...
Name all threads to help debugging and improve crash reports (windows
only)
Add ^C handler for clean exit on linux
2024-04-10 17:08:24 +02:00
Flyinghead
a6c4530e22
vulkan: allow custom GPU driver loading with libadrenotools
...
Issue #1471
2024-04-07 12:27:54 +02:00
scribam
d2dc60ec00
android: update android gradle plugin to version 8.3.0
2024-03-02 18:36:54 +01:00
Flyinghead
c9d3096e41
android: hid barcode scanner support
2024-02-27 17:39:51 +01:00
scribam
51d25bb49b
android: update android gradle plugin to version 8.2.2
2024-02-03 16:28:57 +01:00
scribam
f6b01aba0c
android: update android gradle plugin to version 8.2.1
2024-01-20 19:24:07 +01:00
Flyinghead
c001240797
move audio drivers to their own folder
2024-01-10 11:45:54 +01:00
Flyinghead
9c964ac955
refactor embedded resource loading. Use for imgui font and android OSD
...
Generic embedded resource loading function
Zip bios and printer fonts
Add buttons.png and Roboto-Medium.ttf as embedded resources
2024-01-02 14:37:29 +01:00
scribam
bf4346c849
android: update agp and gradle to version 8.2
2023-12-13 17:31:56 +01:00
scribam
f14c29fd04
android: update android gradle plugin to version 8.1.4
2023-11-18 18:21:45 +01:00
Flyinghead
7b71bd319c
Android and iOS support. Change dead zone to integer % value in UI
...
UI: dead zone changes from 0 to 100%. Add % for Rumble too.
Support Android and iOS gamepads.
Assume legacy gamepads have an analog stick (evdev, xinput)
2023-10-30 18:28:29 +01:00
Flyinghead
8ba5e05421
android scoped storage: default to hack the uri manually in getParentUri
...
If DocumentsContract.Path.getPath() fails, try to hack the uri manually
instead of returning null/empty (android 10)
2023-10-21 21:40:13 +02:00
scribam
7fc70ee1f4
android: update android gradle plugin to version 8.1.2
2023-10-03 22:50:35 +02:00
Flyinghead
a915f185f8
Merge remote-tracking branch 'origin/master' into dev
2023-09-25 22:17:29 +02:00
vkedwardli
b564b0bf91
Increase L2+ / R2+ trigger sensitivity for digital buttons ( #1190 )
2023-09-14 09:08:58 +02:00
scribam
13f3c3e228
android: update cmake and ndk
2023-07-30 18:02:43 +02:00
scribam
817cc87c8c
android: update android gradle plugin to version 8.1.0
2023-07-30 18:02:43 +02:00
scribam
bee534922b
android: update android gradle plugin to version 8.0.2
2023-06-12 16:06:20 +02:00
Flyinghead
a7b89ba06a
android: don't get null array region in jni_util
...
Fixes MINIDUMP-YY
2023-05-16 14:45:31 +02:00
Flyinghead
c3c355a8c5
android: use jni helper. better support for arrays and global refs.
2023-04-12 10:22:38 +02:00
Flyinghead
87fdd203b5
android scoped storage (ASS) support
...
introduce Storage abstraction interfaces
use Storage i/f to load zip and 7z archives, cdi/cue/gdi/chd media,
cheats and to find custom textures.
Use android file picker to add storage. Request persisted access perms.
jni helper classes.
Issue #813
2023-04-08 18:37:50 +02:00
Flyinghead
c033a81eca
get rid of KeyboardDeviceTemplate
2023-03-29 16:48:46 +02:00
scribam
7cce77cccd
android: update android gradle plugin to version 7.4.2
2023-03-27 16:59:35 +02:00
Flyinghead
cab02c86bc
android: only restart if game is running
...
Fixes MINIDUMP-G1, MINIDUMP-FV, MINIDUMP-FY, MINIDUMP-FD, MINIDUMP-F2,
MINIDUMP-EN
2023-03-06 17:02:01 +01:00
Flyinghead
30501aebb1
Race condition when stopping while emu is failing
...
Emulator::stop now throws if an error occurred on the emu thread.
Fixes MINIDUMP-5B
2023-02-26 22:01:32 +01:00
scribam
d8137a967c
C++17 ( #926 )
...
* cmake: use c++17
* Use std::size
* Use std::make_unique
* Use std::clamp
* Use structured binding
* Use [[fallthrough]]
* Use enable_if_t/is_enum_v/is_integral_v/is_same_v
* Use if constexpr
* Use try_emplace
* Use auto for iterators
* Use inline variables
2023-02-18 13:24:34 +01:00
Flyinghead
debe21de7b
Merge remote-tracking branch 'origin/master' into dev
2023-02-05 22:20:28 +01:00
scribam
962b0bb65c
android: update android gradle plugin to version 7.4.1
2023-02-03 11:47:11 +01:00
Flyinghead
6b2063b06f
GGPO fixes
...
Memwatchers weren't properly reset after a ggpo session.
Race condition when stopping if GGPO restarts the cpu for a new frame.
The emu thread might still run some rollback frames before stopping, so
the emu state must be updated only after ggpo is stopped.
Fixes MINIDUMP-6P
Don't autosavestate when GGPO is on
Really disable renderer during GGPO advance frame
Don't stop the sh4 after render (single threaded) when GGPO is on
android: Don't restart when unpaused if online
2023-02-01 18:04:26 +01:00
Flyinghead
5703ef26cf
os_DebugBreak is [[noreturn]]
2023-01-24 19:24:26 +01:00
scribam
458b233e16
android: add vibrate compatibility with newer versions
2023-01-18 20:37:10 +01:00
scribam
cbffc5cade
android: misc changes ( #876 )
...
* android: add appCategory attribute
* android: remove unnecessary @TargetApi
* android: replace 'for' loop with enhanced 'for'
* android: use java-style array declaration
2023-01-15 20:44:47 +01:00
Flyinghead
329e5ed467
android: allow starting games with intent while a game is running
...
stops and unload the current game then starts the new one
2023-01-15 20:02:03 +01:00
scribam
fc118f295d
android: remove oboe
2023-01-14 13:02:34 +01:00
scribam
18cfe2f92f
android: update project for Android Studio Eel
2023-01-14 13:02:34 +01:00
scribam
0d4a7dbac9
android: use getDefaultDisplay with android api level < 17
2023-01-14 13:02:04 +01:00
Flyinghead
673fb26d6e
android: threading fix. stop vibrator thread. allow screen saver
...
If the android activity is destroyed and the game unloaded, the gui's
game state wasn't updated, leading to a crash if resuming. Same for the
android game state if pausing, destroying then resuming.
tentative fix for MINIDUMP-27, MINIDUMP-25, MINIDUMP-23
Wait until emu is stopped in single-threaded.
Stop vibrator thread when view is detached
Allow the screen saver when a game isn't running.
2023-01-11 11:44:28 +01:00
Flyinghead
b6491a3842
android: REICAST_HOME -> FLYCAST_HOME
2023-01-05 20:21:15 +01:00
Flyinghead
17474bf005
android: log abort message to normal log so it's stored in the minidump
2023-01-05 13:01:49 +01:00
Flyinghead
7372df3aff
android: check if activity is null before using it to show/hide keyboard
...
tentative fix for MINIDUMP-Z
2022-12-31 16:53:08 +01:00
Flyinghead
95a00a165a
sentry: upload crashes after reading emu.cfg to comply with user choice
...
android: get rid of Send Logs button
2022-12-23 10:06:24 +01:00
Flyinghead
5387a6b534
android: minify makes httpclient fail
...
fixes sentry.io upload
2022-12-22 13:13:23 +01:00
Flyinghead
bf09e96e04
android: more logging
2022-12-21 18:02:30 +01:00
Flyinghead
b5d8cecd91
android: delay sentry upload to avoid broken pipe. Log more stuff
...
tentative fix for the broken pipe error when uploading to sentry on
android.
init log and sleep for 5 secs before upload
log git version, gpu name and version, renderer type and game id
2022-12-21 16:49:08 +01:00
Flyinghead
1e0a875fa3
sentry: various fixes. Upload last log lines with the minidump
2022-12-21 11:23:15 +01:00
Flyinghead
f3a6fb7d8b
sentry.io integration
2022-12-20 21:52:46 +01:00
Flyinghead
f25aeee756
audio: don't crash if audio init fails. Fall back to auto
...
Don't crash if an audio backend fails to initialize.
Fall back to auto or run without sound.
Better audio backend framework
2022-10-22 12:08:05 +02:00
Flyinghead
e0d87eb093
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/rend/gui.cpp
2022-08-22 13:09:56 +02:00
scribam
7457db8bba
android: update android gradle plugin to version 7.2.2
2022-08-06 17:30:10 +02:00
Flyinghead
19112aecb2
Merge remote-tracking branch 'origin/master' into dev
...
# Conflicts:
# core/hw/naomi/naomi_cart.cpp
2022-07-01 12:42:37 +02:00
scribam
0a5b8891a8
android: update gradle
2022-06-30 14:09:20 +02:00
Flyinghead
b5b0875203
android keyboard support
2022-06-26 22:04:36 +02:00
Flyinghead
5eb302898f
box art fetch and display
...
Issue #22
2022-06-15 21:22:12 +02:00
Flyinghead
971d47eb42
sdl: SDL_QuitSubSystem() on exit
...
Tentative fix for issue #654
2022-05-31 17:42:42 +02:00
Flyinghead
cd22ba1a2b
android: use WifiManager.MulticastLock to receive broadcast packets
...
In many cases, broadcast UDP packets can't be received on android unless
a MulticastLock is held.
2022-05-12 17:39:49 +02:00
flyinghead
d732140bf9
Merge pull request #595 from flyinghead/dev
...
Naomi 2 support
2022-04-16 14:24:49 +02:00
Flyinghead
db525bd5db
android: fix touchscreen on Retroid Pocket 2+
...
Unexpected event source for touchscreen events
2022-04-15 18:06:15 +02:00
Flyinghead
a710674cd4
gui: init once. reset ui driver when needed. android 120+ Hz support
...
ImGui is now initialized once at startup and shutdown before
terminating. graphics initialization is independent.
Move more imgui stuff into imgui drivers.
switch: set scaling on external screen to 1.4, same as xbox
UI scaling refactoring.
2022-04-13 18:06:19 +02:00
Flyinghead
ddfc00ed9f
Merge remote-tracking branch 'origin/master' into dev
2022-04-13 16:29:41 +02:00
scribam
069b501ca3
android: update android gradle plugin to version 7.1.3
2022-04-09 12:05:22 +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
53b5588bda
Merge remote-tracking branch 'origin/master' into dev
2022-03-13 11:01:27 +01:00
scribam
e6676c7d09
android: update gradle
2022-02-27 08:33:44 +01:00
scribam
33115a39a3
android: use latest cmake from android studio
2022-02-27 08:33:44 +01:00
Flyinghead
e5d517dad2
use platform.isConsole(), platform.isNaomi(), ...
2022-01-27 17:52:19 +01:00
Flyinghead
7f41847c5c
android: bigger on-screen gamepad analog handle. Update project README
2021-12-24 19:46:09 +01:00
scribam
32716e1480
android: update com.android.tools.build:gradle to version 7.0.4
2021-12-18 11:46:04 +01:00
scribam
8a6ce19e1e
input: cleanup virtual function specifier
2021-11-29 18:19:22 +01:00
Flyinghead
ac5abd96bb
ui: imgui driver, GraphicsContext interface, dx9 swap interval
...
Refactor imgui backend code into imgui drivers for gl, vk, dx9
Generic GraphicsContext interface for gl/vk/dx9 contexts
Simplify graphics api switching code
dx9, gl(sdl): set swap interval based on monitor refresh rate.
2021-11-10 20:35:30 +01:00
scribam
f777c62a66
android: update com.android.tools.build:gradle to version 7.0.3
2021-11-08 11:58: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
c061912574
android: fix hang when mount returns too much data
...
Issue #387
2021-10-16 18:16:17 +02:00
Flyinghead
5cfd897298
android: more activity init logs
2021-10-15 13:14:42 +02:00
Flyinghead
1c6e722961
android: add app external & internal files dir. Race condition at start
...
Fix crash at startup due to race condition with game scanner
Don't allow selection of non-writable folder during onboarding
Add private internal and external Files folders to list of storage
locations to choose from
Assign first external android gamepad to port A instead of B
ui: Fix layout of controller mapping dialog when port=All
2021-10-14 11:39:27 +02:00
Flyinghead
bc238de5ce
switch: open 4 controllers. android: java7 compatibility
2021-10-06 18:55:04 +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
scribam
36007ceb68
android: update com.android.tools.build:gradle to version 7.0.2
2021-09-25 16:04:15 +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
Flyinghead
3b7a940e9b
android: use list of axes for default mapping and axis handling
...
Issue #338
2021-09-15 14:44:56 +02:00
Flyinghead
e45ec4324f
Merge remote-tracking branch 'origin/master' into libretro
2021-09-10 12:19:29 +02:00
scribam
3589e94121
android: update com.android.tools.build:gradle to version 7.0.1
2021-08-31 17:52:51 +02:00
Flyinghead
c27180fb32
android: fix navbar background. Add shortcuts for Coin/Service/Test
...
Fix black navigation bar background.
Shortcuts for virtual gamepad:
RT + A -> D (Coint)
RT + B -> C (Service)
RT + X -> Z (Test)
Issue #137
Don't deliver mouse clicks if analog triggers or stick are used
2021-08-11 12:58:57 +02:00
Flyinghead
6bb4575c95
Merge remote-tracking branch 'origin/master' into libretro
2021-08-05 18:17:30 +02:00
scribam
fcef404f50
android: update gradle and dependencies
2021-07-30 19:35:07 +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
5ac0e58886
android: mouse move events missing when btn down. Mouse wheel support
...
Issue #304
2021-07-27 10:32:22 +02:00
Flyinghead
e12be7cf29
add breakpad support for android, linux and windown
2021-07-25 21:55:29 +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
scribam
147bd8341d
android: update compileSdkVersion/targetSdkVersion to version 29
2021-07-17 19:35:14 +02:00
scribam
5c0dd67094
android: cleanup jni files
2021-07-17 19:35:14 +02:00