David Guillen Fandos
cb278e367b
Minor fixes/tweaks to make it easier for switch port
...
Unused x86-specific header unnecessarily included :/
Move config ini stuff into its own namespace, believe it
or not but conflicts with some random switch header.
Tested: built for Android, Linux x64 w/ & w/o rec-cpp.
2019-03-23 21:04:17 +01:00
Flyinghead
f454c79f08
TA: ISP_BACKGND_D has only 28 bits of precision
...
Calculate background depth accordingly
add extradepthscaling of 0.1 to wince games so the last four bits of
depth are significant
2019-03-20 16:31:12 +01:00
Flyinghead
c3b93cfd8d
gdi: set correct CTRL value in TOC
2019-03-20 14:33:55 +01:00
Flyinghead
8564f497d4
sh4 interp: add IsFloatingPoint() to op desc. Add delay slot 0 hack
...
Add UsesFPU flag to floating point ops. Use flag instead of specific
test cases in op handlers.
Adjust thrown exception in delay slot (slot illegal exception and slot
fpu disable)
Re-add delay slot 0 hack (Looney Tunes Space Race)
2019-03-20 13:45:35 +01:00
Flyinghead
d0f65b19d3
mmu: templatize mmu_full_lookup
2019-03-20 10:58:59 +01:00
Flyinghead
a21eedc88a
implement fpu disable exception and other interp and mmu fixes
...
implement sh4 fpu disable exception
implement assistance/PTEA MMU registers
fix some sh4 ops with side effect in interpreter
account for delay slot op cycles
avoid any side effect when using wince tracer
extract SH4_TIMESLICE to single header file (still not used by arm and
x86 recs)
2019-03-19 21:35:55 +01:00
Flyinghead
fe30fe1e8e
OIT: reset scaling before drawing final quad
...
Fixes Wacky Races and Nomad Soul
2019-03-18 22:21:21 +01:00
Flyinghead
9e2938dff4
mmu: state change wasn't detected. WinCE syscalls tracing
2019-03-17 23:46:39 +01:00
Flyinghead
73d50486d5
mmu: dynamic switching with read/write mem function pointers
2019-03-17 22:59:18 +01:00
Flyinghead
34f46fb482
gdi: set correct CTRL value in TOC
2019-03-16 12:06:29 +01:00
Flyinghead
bdc729e780
android: vjoystick haptic feedback setting wasn't being saved
2019-03-15 19:55:01 +01:00
Flyinghead
eb73c2fcf1
missing #include
2019-03-14 21:37:36 +01:00
Flyinghead
e5b18cd8a0
wince: implement pref SQ to YUV converter and 32bit vram
...
implement incremental YUV conversion with pref SQ
implement access to 32bit VRAM with pref SQ
init YUV converter when TA_YUV_TEX_CTRL is set
set FIFO available space to 256 through SB_TFREM reg
fake FIFO status through SB_FFST reg
2019-03-14 21:35:33 +01:00
Flyinghead
69484e4ae8
start game passed as command line argument
2019-03-13 21:54:04 +01:00
Flyinghead
89c2fd54a9
fix function name typo
2019-03-13 20:04:14 +01:00
Flyinghead
7369e81af5
naomi: close cart and free resources properly
2019-03-13 19:59:59 +01:00
Flyinghead
f4568ace3c
backport disassembler missing piece from nulldc
2019-03-13 17:48:21 +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
f05af652cf
crash when reading a write-only register
2019-03-13 17:24:27 +01:00
Flyinghead
e6d67baf02
sh4 sched: avoid error when jitter is high and delta becomes negative
2019-03-13 17:21:52 +01:00
Flyinghead
6305df9dab
ignore fldi0/fldi1 in double precision instead of dying
2019-03-13 17:19:41 +01:00
Flyinghead
6d6492ddc1
mmu: flush tables when MMUCR.TI is written
2019-03-13 17:17:08 +01:00
Flyinghead
54e9dc8338
Do not scale clipping values with rtt-upscale if rendering to vram
...
Enable RTT-to-vram for Flag to Flag (rear view mirrors)
2019-03-08 20:06:17 +01:00
Flyinghead
c2916e6f21
Wait between two frames when gui is open
2019-03-08 20:02:53 +01:00
Flyinghead
f1cea640e2
naomi: crash on exit when M4 cart fails to load
...
avoid loading AW cart on Naomi and the other way around
2019-03-08 20:01:54 +01:00
Flyinghead
9178206c95
add 10% dead zone to analog sticks
2019-03-08 19:56:17 +01:00
Flyinghead
0d0fd212ff
Implement Ch2 DMA to 32-bit VRAM
...
Fixes Giana's Return
2019-03-08 13:23:51 +01:00
Flyinghead
45ed8cbc02
android: install buttons.png and reload it. Record audio permission.
...
install buttons.png when saving settings (home dir may have changed)
reload buttons.png if previous load failed when rendering
hide surface view when microphone is enabled to ask for permission
2019-03-05 23:50:52 +01:00
Flyinghead
91c7417c22
android: replace /mnt/media_rw by /storage for portable storage
2019-03-05 16:56:19 +01:00
Flyinghead
11416990de
Show home directory in settings and allow to change it (android only)
2019-03-05 12:45:11 +01:00
Flyinghead
ee0161e9c4
build fix
2019-03-05 03:15:11 +01:00
Flyinghead
ca58c323cd
Moved most android settings into the new gui
...
virtual gamepad editing and settings
home directory setup during onboarding
start content browser at app startup after getting permission
Use imgui osd to display error messages (msgboxf)
Added About tab in settings with version, git hash and Send logcat
button (android)
2019-03-05 00:54:01 +01:00
Flyinghead
71ea60cc36
android: use pseudo-root folder to list storage locations
...
still missing changes in java and android.cpp
2019-03-04 21:49:36 +01:00
Flyinghead
17b495e7e4
NoSound setting wasn't saved
...
Fix profiler handler ids
2019-03-04 00:32:15 +01:00
Flyinghead
f37f4f174e
Generate version.cpp at build time with version, git hash and build date
2019-03-04 00:26:11 +01:00
Flyinghead
e0de4210ac
VJoy: decouple from emulator rendering. Use same code for gl and gl4
2019-03-02 14:20:05 +01:00
Flyinghead
41e4c805de
OSX: support new input system. Use existing emulator thread.
...
Added new OSD notification feature, combined with FPS counter, moved to
GUI
OSX: don't create and manage a new emulator thread but use existing one
OSX: keyboard and mouse use new input system
2019-02-27 23:02:25 +01:00
Flyinghead
a0e7231340
naomi: reload PG settings and reset jvs controller when switching game
2019-02-25 23:31:05 +01:00
flyinghead
b1bb89909e
win32 fixes
...
use imgui id to allow multiple contents with same name
2019-02-25 19:15:59 +01:00
Flyinghead
492e771272
Content browser (WIP)
...
Get rid of the renderer thread. It is now the main/UI thread on all
platforms. The emulator runs in a separate thread.
Content browser displayed at startup.
2019-02-25 17:52:53 +01:00
Flyinghead
56c0358eaf
win32 fix
2019-02-24 13:51:26 +01:00
Flyinghead
96dddca245
win32: mouse wheel, relative mouse position and text input support
2019-02-24 13:41:24 +01:00
Flyinghead
ac6cc612c5
sdl: mouse wheel, relative mouse position and text input support
2019-02-24 13:19:50 +01:00
Flyinghead
c6baa4827b
x11: support mouse wheel. ascii text keyboard input
2019-02-24 12:53:49 +01:00
Flyinghead
0f5a3ab884
sdl: rumble support
2019-02-23 01:06:10 +01:00
Flyinghead
98271bb3b1
Merge branch 'fh/mymaster' of https://github.com/reicast/reicast-emulator into fh/mymaster
2019-02-23 00:18:15 +01:00
Flyinghead
c37dbae4e4
android: simple rumble support
2019-02-23 00:17:59 +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
91e7c45a5c
x11: keyboard and mouse use new input system
2019-02-22 12:56:21 +01:00
Flyinghead
1eaf443c22
appveyor: copy dep dlls to artifacts. Fix SDL build
2019-02-22 11:55:15 +01:00
Flyinghead
3561b3479d
win32: invert Y axes of sticks
...
implement inverted axis in base gamepad device
2019-02-22 11:35:41 +01:00
flyinghead
a1e400b43c
win32: stop audio when emu is paused to avoid looping sound
2019-02-21 22:55:50 +01:00
flyinghead
d392923d86
win32: added mouse and keyboard virtual gamepads
2019-02-21 22:39:26 +01:00
flyinghead
94f346a1e0
win32: use new input system
2019-02-21 17:57:51 +01:00
Flyinghead
4ae11053ce
use smart pointers to avoid crash when a gamepad is disconnected
2019-02-21 14:49:27 +01:00
Flyinghead
4425587389
missing file from previous commit
2019-02-21 12:46:56 +01:00
Flyinghead
8e4e2c67f2
evdev: use new input system. detect hot-plugged devices with udev
2019-02-21 12:46:00 +01:00
Flyinghead
26e43ed9bd
Fix scissor test when screen scaling is on
...
Use full screen for gui settings
2019-02-20 23:22:58 +01:00
Flyinghead
0f1630a1b7
Use proper VAOs for the per-pixel renderer
2019-02-20 19:22:24 +01:00
Flyinghead
c98b685872
android: old GLSurfaceView view/activity working again
...
EmuThread now a top-level class shared by both views
2019-02-20 16:59:50 +01:00
Flyinghead
f4da389665
android: use gl3w loader and EGL
2019-02-20 00:09:34 +01:00
Flyinghead
3a847bf4da
use GL_UNSIGNED_BYTE instead of GL_UNSIGNED_INT_8_8_8_8
2019-02-19 23:15:34 +01:00
flyinghead
9ac43772fd
win32 build fixes
2019-02-19 22:35:29 +01:00
Flyinghead
054b4662fd
getting rid of `#ifdef GLES` to use the same code for all envs
...
Added latest GL 4.6 header files
2019-02-19 21:40:21 +01:00
Flyinghead
1276a58d87
move imgui renderer into rend/gles. Fix gl4 term function
2019-02-19 17:43:25 +01:00
Flyinghead
a808a8f36f
dynamically bind GLES functions
...
Compile with GLES 3.2 headers but no library
split gl_term into generic and platform-/loader-specific stuff
allow full desktop GL context creation with EGL
2019-02-19 17:21:50 +01:00
Flyinghead
9526fada5e
Added RenderLastFrame() to Renderer interface
...
implement screen scaling for per-pixel renderer
fix output FBO not being freed/recreated when GL context is reset
refactor DrawQuad on per-pixel renderer
2019-02-19 11:36:59 +01:00
Flyinghead
810182c4fe
Scale down native resolution setting
2019-02-19 00:49:24 +01:00
Flyinghead
e2c839dde3
GLES: detect gl extensions and use packed depth/stencil buffer for RTT
2019-02-18 17:42:07 +01:00
Flyinghead
e426bc8058
android: call eglMakeCurrent() before rendering or deleting context
...
Flush texture cache and terminate gui before releasing the EGL context
2019-02-18 13:14:12 +01:00
Flyinghead
666205d2a1
Define gl_term for all platforms. Delete all textures on context close.
2019-02-18 09:35:27 +01:00
Flyinghead
5701227e55
build fix
2019-02-18 00:38:11 +01:00
Flyinghead
4c1acfeab1
android: native egl surface
...
fps counter using imgui
restart emulator with new game in same process
2019-02-18 00:25:06 +01:00
Flyinghead
b15b8de12b
android: disconnect the mouse gamepad by default. Don't swallow all
...
keydowns events
2019-02-17 18:34:22 +01:00
Flyinghead
460a6828cf
android: missing change
2019-02-16 16:59:27 +01:00
Flyinghead
dcbdf3a59d
set glClearStencil to 0 before clearing, just in case
...
fix printf format string
2019-02-16 14:30:08 +01:00
Flyinghead
5e65d2a19d
Per-game configuration: create/delete from gui
...
Removed unused settings
Per-game setting can override any setting
Built-in per-game settings can be overriden
2019-02-16 14:25:54 +01:00
Flyinghead
35bb81b195
fix some printf format strings
2019-02-16 14:16:50 +01:00
Flyinghead
914e362873
Android: bind joysticks to different maple ports
2019-02-16 13:52:38 +01:00
Flyinghead
2602d855ee
android: refactor initialization
...
Report dc_init errors properly with a popup
Disable reios use
Use builtin per-game settings
2019-02-15 20:48:30 +01:00
Flyinghead
edba937b6f
Save last rendered frame if gl driver doesn't preserve the swap buffers
...
Fixes flashing screen with nvidia shield when no frame is rendered
2019-02-14 12:40:17 +01:00
Flyinghead
3320669bd4
android: use new input system
...
support for gamepads and mice on android
2019-02-13 20:29:49 +01:00
Flyinghead
49c432f041
arm64: fix DSP dynarec crash on some platforms
2019-02-13 14:23:47 +01:00
Flyinghead
e82b9c9b18
android: remove deprecated GL2GLINative activity
2019-02-12 17:57:11 +01:00
Flyinghead
85b428c2e1
SDL: gamepad hot-plugging
2019-02-12 15:56:44 +01:00
Flyinghead
8b5c2a3fac
New input handling/mapping system, SDL only for now. Gui wip
2019-02-12 11:30:24 +01:00
Marcel Szewczyk
d370fd6709
PR requested changes; Adreno 506 generalized to Adreno
2019-02-11 19:02:52 +01:00
Marcel
3b951c0232
Vertical scale factor support added - typo fix
2019-02-11 11:15:01 +01:00
Marcel Szewczyk
8d4188159e
Vertical scale factor support added - fixes Crazy Taxi pause menu background positioning
2019-02-10 11:51:14 +01:00
Marcel Szewczyk
7869a84f88
Additional fixes/cleanup
2019-02-10 01:10:51 +01:00
Flyinghead
66dc13b376
gui: help tooltips
2019-02-09 22:15:08 +01:00
Flyinghead
ee1caeb6c2
gui: improve layout and touch device ux
2019-02-09 21:20:03 +01:00
Flyinghead
5ef0f74620
win32: keyboard support
2019-02-09 16:22:09 +01:00
Flyinghead
1fcfb6b10a
Better fix for ImGui not showing on OSX
...
Enable vixl debug to track dsp crash
2019-02-09 15:12:35 +01:00
Marcel Szewczyk
8893f97435
Handle odd screen resolution (POCOPHONE fix)
2019-02-08 22:20:02 +01:00
Marcel Szewczyk
a65436cc6c
Handle dynamic resolution change during emulation (LRR mode)
2019-02-08 22:15:45 +01:00
Flyinghead
7e4a271ce7
Fix ImGui on OSX
2019-02-08 10:22:53 +01:00
Flyinghead
d95ec975c7
SDL: mouse, keyboard and gui support
2019-02-07 23:44:30 +01:00
flyinghead
4685bc1fad
win32: hook up mouse
2019-02-07 20:04:17 +01:00
flyinghead
3cdd39170d
win32: call os_DoEvents on the emu/main thread and other fixes
2019-02-07 19:20:10 +01:00
Flyinghead
82f156f143
Gamepad support to GUI. Wire evdev, SDL and windows
...
Allow dc_stop() to work even when the emu is paused
2019-02-07 16:59:24 +01:00
Flyinghead
87aacd50d2
Pad dsp_t to keep savestates compatibility
...
Remove some unused DSP regs to avoid changing the size of dsp_t, which
breaks serialization compatibility.
2019-02-07 10:37:33 +01:00
Flyinghead
eb3bbb7dc0
Android: more UI settings (video)
2019-02-07 09:42:51 +01:00
Flyinghead
7d4fa31e6e
build fix
2019-02-06 22:37:08 +01:00
Flyinghead
598ea65c16
Android: use boolean prefs when possible. OSX build fix
...
Use jboolean instead of jint
Fix crash when navigating UI with popup keyboard's next button
Remove unused UI (PVR rendering)
OSX fixes
2019-02-06 22:28:04 +01:00
Flyinghead
1802c022fd
UI with ImGui
2019-02-06 19:57:13 +01:00
Flyinghead
78fd92f95a
No custom textures if no threads
2019-02-06 18:50:56 +01:00
Flyinghead
a9b62164c5
No network if no threads
2019-02-06 18:42:45 +01:00
Marcel Szewczyk
b26b12054b
Merge branch 'master' of https://github.com/reicast/reicast-emulator into mar753/render-to-texture-with-options
2019-02-06 17:39:12 +01:00
Flyinghead
a7a5618442
evdev: too much logging
2019-02-06 15:00:40 +01:00
baka0815
3c8e1110c8
Merge pull request #1480 from mar753/lowering_rendering_resolution_option
...
Lowering rendering resolution option
2019-02-04 19:36:11 +01:00
Flyinghead
13daefca41
Fix Naomi/Atomiswave builds
2019-02-04 11:23:26 +01:00
Flyinghead
91fb92264d
x64 dynarec: do not use RSQRTSS as it lacks precision
...
RSQRTSS error is:
|Relative Error| <= 1.5 ∗ 2^-12
whereas SH4's FSRRA abs error is <= 2^-21
Fixes loop issues is Sonic Adventure 1 and 2
Issue #1489
2019-02-04 10:48:22 +01:00
Flyinghead
51c77b248b
Enable RTT to vram for Skies of Arcadia
2019-02-03 18:11:04 +01:00
Flyinghead
4b78e24753
allocate mem based on state file size instead of current state size
2019-02-03 17:56:43 +01:00
Flyinghead
1a2eeef849
Load libretro savestates (dreamcast only)
2019-02-03 17:54:11 +01:00
Flyinghead
2ff6d1b819
Fix render to texture buffer alpha channel for 1555
...
Saturate alpha when strictly greater than threshold, not >=
Don't put rendered texture in cache if rendering to texture buffer
(VRAM)
Fixes Skies of Arcadia start menu
Restore VRAM lock if null
2019-02-03 17:53:02 +01:00
Flyinghead
19bddc942a
android: add cue files to string res
2019-02-03 14:04:54 +01:00
Flyinghead
d567ae67f7
redump.org cuesheet support
2019-02-03 13:48:55 +01:00
Flyinghead
63c4a16459
preliminary support for CUE files
2019-01-30 18:28:49 +01:00
Marcel Szewczyk
377fb6ace0
rend.ResolutionPercentage acceptable values are now from 1 to 100; naming fix
2019-01-25 16:43:46 +01:00
Flyinghead
90ad16317f
arm64 dsp: fix stack order
2019-01-25 15:38:55 +01:00
Flyinghead
fca6f3cecb
dsp arm64: fix crash when VIXL_DEBUG is off
2019-01-24 21:47:55 +01:00
Flyinghead
08473d765a
android build fix
2019-01-24 09:58:13 +01:00
Flyinghead
91cfd4b2f7
Reserve and allocate maximum RAM/VRAM/ARAM in all cases
...
Reserve enough virtual memory space for DC and Naomi
Allocate dynarec entry point tables for max possible ram
Free mem and release vmem on exit
2019-01-24 09:48:58 +01:00
Flyinghead
0cce6cc5a5
Clean up and comments. No functional change
2019-01-24 09:40:14 +01:00
Flyinghead
1501e2273d
Don't enable the dsp interpreter if using the dynarec
2019-01-23 22:59:00 +01:00
Flyinghead
8c7f9105a1
dsp dynarec: missing commit
2019-01-23 22:46:05 +01:00
Flyinghead
3a064cd068
DSP dynarec for arm64
2019-01-23 21:14:51 +01:00
Flyinghead
91b76f0c16
arm64 dynarec: missing edits
2019-01-22 18:40:36 +01:00
Flyinghead
75a04d6d28
arm64 dynarec: implement tail calling and block linking
2019-01-22 18:37:04 +01:00
Flyinghead
eb37dacadb
x64: disable the use of AVX instructions because of rounding issues
2019-01-22 16:17:25 +01:00
Flyinghead
9f3f13eef1
aica arm dynarec for arm64
2019-01-21 13:08:53 +01:00
Flyinghead
a3682e7b22
arm64 dynarec: revert to non-explode spans and minor optimizations
...
Added some profiling
2019-01-21 12:54:29 +01:00
Marcel Szewczyk
aa3475738a
Revert "LRR: Support for OpenGL 2 added"
...
This reverts commit c33c0cade8
.
2019-01-20 11:05:53 +01:00
Marcel Szewczyk
88b9debc89
Revert "RTT: Support for OpenGL 2 added"
...
This reverts commit 86339c337d
.
2019-01-20 11:03:30 +01:00
Flyinghead
da07d88b03
No need to save the RTC value anymore
2019-01-19 16:49:00 +01:00
Marcel Szewczyk
86339c337d
RTT: Support for OpenGL 2 added
2019-01-18 19:46:46 +01:00
baka0815
55a2261002
Merge pull request #1485 from reicast/baka/alsa_cfg
...
ALSA: configurable output device
2019-01-18 18:46:08 +01:00
Marcel Szewczyk
c33c0cade8
LRR: Support for OpenGL 2 added
2019-01-18 18:42:46 +01:00
Marcel Szewczyk
f0c4fe6fdc
Additional improvements/fixes
2019-01-18 18:39:48 +01:00
Flyinghead
cd4e4cbdc9
x64 dynarec: check if extension is supported by cpu. seh on win32
...
Check if FMA/AVX/SSE3 is supported before using it
fully naked main loop in win32 with proper seh directives
win32: more xmm regs to allocate and no need to save them when calling
out
2019-01-18 17:02:50 +01:00
Flyinghead
573f285f3b
arm64 dynarec: save x29 and x30 in ngen_mainloop prologue
2019-01-18 00:06:33 +01:00
Christoph "baka0815" Schwerdtfeger
108e840324
SDL: rumble support
...
This adds support for rumble to the SDL backend.
It does not however attach a purupuru/rumble pack
2019-01-16 20:48:32 +01:00
Christoph "baka0815" Schwerdtfeger
1b8f45c751
ALSA: remove unused variables
...
loops and size are unused, so just remove them while we're here.
2019-01-16 19:14:37 +01:00
Christoph "baka0815" Schwerdtfeger
347fcf5c6c
ALSA: make device configurable
...
Trying to load the device from the emu.cfg and if not set (should be the default for everyone currently) use the existing procedure to try to determine the device (default > plughw:0,0,0 > plughw:0,0).
2019-01-16 19:04:32 +01:00
flyinghead
ed3f866835
win32 build fix
2019-01-16 17:42:36 +01:00
Flyinghead
f852480b88
OSX: build fix
2019-01-16 14:44:40 +01:00
Flyinghead
05d7cf2c72
x64 dynarec: implement immediate address ram read. OSX fix
2019-01-16 13:39:52 +01:00