Flyinghead
74844c8940
disable per-pixel renderer on OSX
2019-05-21 11:26:18 +02:00
Flyinghead
433590b610
rend: Add per-strip TR sort option
2019-05-21 11:24:03 +02:00
Flyinghead
4cfcf2ea83
alsa: don't spam console if underrun
2019-05-20 19:13:08 +02:00
Flyinghead
07b3f83343
audio: new option for automatic limitFPS
...
LimitFPS now can be enabled, disabled or automatic. The latter option
doesn't wait for audio if the emulator is running slow (over the last 2
secs)
Renamed `Audio Backend` to `Audio Driver` in the UI.
2019-05-20 19:12:28 +02:00
Flyinghead
ac43a8c54e
don't swap gl buffer until FB_R_SOF is set to the rendered framebuffer
...
Fixes flashing screens in South Park: Chef's Luv Shack, NFL Quarterback
Club 2000
Glitchy videos: The Next Tetris, Nightmare Creatures II, Rune Jade
Flashing rear-view mirror in Metropolis Street Racer
2019-05-17 17:13:48 +02:00
Flyinghead
8d078a923b
wince: force aica.NoBatch (missing change)
2019-05-17 17:01:20 +02:00
flyinghead
a6b773a23e
Merge pull request #1603 from reicast/fh/gles-dynload
...
Fix build errors on GL ES 2.0 platforms (RPi...)
2019-05-17 12:15:07 +02:00
flyinghead
37d95e9fea
Merge pull request #1606 from reicast/dd/cmake-msvc-fixes
...
Fixes for cmake + msvc
2019-05-16 18:40:08 +02:00
hissingshark
b0b63d4894
Fix typo induced build error
2019-05-16 16:05:47 +01:00
flyinghead
3ef363733d
wince: fix setjmp/longjmp on windows
2019-05-16 16:57:35 +02:00
drhilarius
c92a997f11
Fixes for cmake + msvc
...
Also now builds .asm file for dynarec jit with msvc
2019-05-16 03:05:16 -07:00
flyinghead
66cbc0acf6
wince: dynarec boost 1.2 -> 1.5
2019-05-15 15:26:08 +02:00
Flyinghead
f0ebd2b818
wince: force aica.NoBatch
2019-05-15 14:00:36 +02:00
Flyinghead
6053a465f7
fix win32 build
2019-05-15 13:07:52 +02:00
Flyinghead
d9f2f9ae1d
rend: define GLES2 and GLES3
...
GLES2 will only use GL ES 2.0 API functions, compile-time linked
GLES3 loads functions dynamically and supports both GL ES 2.0 and 3.0
2019-05-15 12:54:03 +02:00
Flyinghead
0dd555c5c8
Merge branch 'master' into fh/gles-dynload
2019-05-15 11:49:57 +02:00
Flyinghead
2434d0183e
wince: better sh4 instr cycle counting. Don't hash blocks if mmu on
...
Use actual instr latency cycles, including fp instr
Decrease the WinCE boost ratio to 1.2
Don't hash blocks when mmu on
2019-05-14 12:38:56 +02:00
David Guillen Fandos
3463872fdf
Fix small clang build issue.
2019-05-13 01:35:40 +02:00
David Guillen Fandos
65e2218792
Fix ARM64 rewrites with NO_RWX_PAGES
...
Tested on nvidia jetson and Android, so far works great.
2019-05-13 00:23:18 +02:00
David Guillen Fandos
aa4fc8dd60
Move cache invalidation to vmem_platform and implement NO_RWX on arm64
...
Still not functional yet, this commit breaks arm64 on android for instance.
Rewrites are not yet figured out, will push them in the next commit.
2019-05-12 23:25:43 +02:00
David Guillen Fandos
3b760f9869
Add FEAT_NO_RWX_PAGES and implement it for x64 CPU (Win and Linux)
...
Tested: Both with and without the feature, works only for x64 CPUs for
now, but supported in both windows and linux (see vmem implementation
for it, using mem-mapped files).
2019-05-12 22:02:57 +02:00
David Guillen Fandos
1a2b1c8672
Remove traces of memory manager from Jit driver.
...
Still stuff to be removed in the Naomi file handler and the ARM
AREC, which need to get ported to the new vmem interface.
2019-05-12 19:47:11 +02:00
David Guillen Fandos
cbc2af29ad
Fix small issues for mingw builds on Linux
...
Doenst like the paths, big surprise. I tipically build it like:
make platform=win32 CXX=x86_64-w64-mingw32-g++ \
WINDRES=x86_64-w64-mingw32-windres \
CC=x86_64-w64-mingw32-gcc
2019-05-12 17:44:19 +02:00
Flyinghead
15ce3ab5fa
OSX build fixes
2019-05-12 16:53:30 +02:00
David Guillen Fandos
55e7c17030
Fix minor build issue with madvise flags.
2019-05-12 13:40:18 +02:00
David Guillen Fandos
6cba98b70a
Allocate missing SH4CB and make lock more forgiving.
2019-05-12 00:02:24 +02:00
David Guillen Fandos
1a4323c1ce
Fix runtime issue in Windows target, was not mapping pages correctly.
2019-05-11 23:13:58 +02:00
David Guillen Fandos
4458dac49a
Fixing some missing imports and a bug in pointer tracking.
2019-05-11 22:35:17 +02:00
David Guillen Fandos
555b39b7e5
Merge remote-tracking branch 'origin/master' into vmemstuff2
2019-05-11 22:11:24 +02:00
David Guillen Fandos
b74db6ef53
Moving vmem to separate files with a proper interface.
...
Works so far for Linux and Android, need to do some testing on Windows.
2019-05-11 22:09:52 +02:00
flyinghead
ec9706876c
Merge pull request #1596 from davidgfnet/x86fix
...
Hack-fix the x86 JIT so that it builds.
2019-05-11 14:27:41 +02:00
David Guillen Fandos
08285cf49c
Hack-fix the x86 JIT so that it builds. I guess that's why Win32 fails too
2019-05-11 13:37:13 +02:00
flyinghead
95a13d79b7
Merge pull request #1593 from reicast/fh/gl3-fallback
...
x11: fix fallback to gl 3.0. fix crash when switching renderer.
2019-05-11 00:38:44 +02:00
flyinghead
7f2fcfde6f
wince: don't use setjmp/longjmp on windows
2019-05-10 22:31:59 +02:00
flyinghead
e6794743ad
wince: rec-x64 fix for win32
...
fix GDI on windows
2019-05-10 21:21:30 +02:00
David Guillen Fandos
2389903a30
Add dummy serialization for non-modem builds (right now only Win)
2019-05-10 19:38:45 +02:00
David Guillen Fandos
be1ecbaa8b
Fix TARGET_NO_NVMEM and deprecate TARGET_NO_EXCEPTIONS
...
Linked them both toghether since you can't really define one and
not the other (plus Linux honors one windows the other in some
cases).
More refactoring on this area to follow.
2019-05-10 18:57:28 +02:00
Flyinghead
c5a74ccfb7
Fix Sort-DMA
2019-05-10 16:10:07 +02:00
Flyinghead
eb725f9e66
x11: fix fallback to gl 3.0. fix crash when switching renderer.
...
Fallback to GL 3.1 when GL 4.3 isn't available was broken.
Fallback to GL 3.0 instead of 3.1.
Fix crash when switching renderer (per-pixel, per-triangle)
2019-05-10 11:15:44 +02:00
David G. F
afcd7a08a3
Merge pull request #1571 from davidgfnet/modemfix
...
Add ENABLE_MODEM and rework makefiles to support it.
2019-05-10 01:09:35 +02:00
Flyinghead
77c1389921
wince: disable vmem32 for games that abuse it
2019-05-09 21:47:01 +02:00
David G. F
1b89fcd5ba
Merge pull request #1587 from davidgfnet/master
...
Minor improvements for ARMv8
2019-05-09 18:45:30 +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
David GF
5ba56627a9
Optimize rec-ARM64 by emitting less instructions on loads.
...
Fast load uses 3 or 4 insts, whereas slow load takes 2+.
On A57 measured ~3% perf, which is expected for an OOO CPU, hopefully
perf will be much better on A53 and other in-order CPUs.
2019-05-09 00:10:01 +02:00
Flyinghead
dc7f608461
wince: fix vmu issues
2019-05-08 22:31:59 +02:00
David G. F
15c7e982ca
Merge pull request #1585 from davidgfnet/sdl2audio
...
Add SDL2 audio backend.
2019-05-08 22:20:49 +02:00
Flyinghead
3cd9736fca
Ignore vscalefactor if < 1
...
fix black screen on some intel platforms
2019-05-08 21:33:49 +02:00
David Guillen Fandos
ed8bcd7329
Add SDL2 audio backend.
...
The backend supports 44.1KHz and 48KHz (with resamping). The resampler
is not great, has some noise but no idea where it comes from.
This enables the switch port, since using SDL2 is the quickest way
to get audio working.
TODO: Add support in the cmake, once cmake is fixed at master/HEAD.
2019-05-08 21:04:11 +02:00
Flyinghead
c330cdd88e
fix scissor test and vertical scaling when using the Y scaler
...
Fixes missing bottom half-screen in Mr Driller (PAL, 60 Hz), Kaen Seibo,
Mahjong Taikai II Special, Pon'n'Music 1 and 2 when in TV Composite and
RGB.
Fixes stretched screen in Cho - Hatsumei Boy Kanipan.
2019-05-06 15:23:54 +02:00
Flyinghead
f2696a4b47
osx: add new files to project
2019-05-03 11:53:14 +02:00
skmp
3f8328da25
Merge pull request #1568 from reicast/baka/audio_options
...
AUDIO: Allow backend specific settings
2019-05-03 03:57:17 +03:00
skmp
397302b379
Merge pull request #1579 from reicast/ghz/speedlimit
...
audio wait only if fullspeed (improvements over #1577 )
2019-05-03 03:53:43 +03:00
Christoph "baka0815" Schwerdtfeger
99033e297c
AUDIO: Implement integer and checkbox options
...
I remove "text" as a possibility for the moment as we're currently not having **any** text option.
2019-05-02 20:24:49 +02:00
Christoph "baka0815" Schwerdtfeger
139ef22408
AUDIO: compile fixes for coreaudio, dsound and libao
2019-05-02 19:02:34 +02:00
Christoph "baka0815" Schwerdtfeger
dc709c604f
ALSA: prefix output with "ALSA:"
2019-05-02 18:49:44 +02:00
Christoph "baka0815" Schwerdtfeger
5678556cb6
ALSA: Rework initialization of pcm device
...
As we can now configure the alsa device in the GUI, it's no longer necessary to write the first working device back to the configuration.
Also there is now the "auto" device to automatically try to initialize the alsa device.
2019-05-02 18:48:09 +02:00
Christoph "baka0815" Schwerdtfeger
684ba26ec0
AUDIO: Reorganize settings
...
Move DSP and FPS above the slug selection so that all slug specific settings are after the slug selection.
2019-05-02 18:41:45 +02:00
David Quintana
f307f9d5ad
Simplify. Smoothing adds no value there.
2019-05-02 03:36:10 +02:00
David Quintana
ac9e6d147d
Change speed-dependant limiting to rely on time dilation instead of frame rate.
2019-05-02 03:21:22 +02:00
david miller
c681dc77dc
Win32 fullscreen via alt-enter
2019-05-01 19:11:35 -04:00
David Miller
d6f682a329
audiostream only wait if at speed
2019-05-01 12:01:45 -04:00
flyinghead
0d19da2b4b
wince: disable vmem32 on windows
2019-04-30 17:43:21 +02:00
Flyinghead
f0fab09d7c
yet more win32 fix
2019-04-29 18:49:31 +02:00
Flyinghead
920a93b19c
more win32 fix
2019-04-29 18:38:28 +02:00
Flyinghead
4f4d99872b
win32 build fix
2019-04-29 18:33:14 +02:00
Flyinghead
810b8a59da
wince: 32-bit virtual mem space
...
use fast mem read/write for x64 and arm64 dynarecs
2019-04-29 18:23:00 +02:00
Flyinghead
693a6c97f3
vmem: revert aica ram mapping change. Fix ptr diff overflow in 64-bit
...
Aica ram mapping conflicts with P4 store queues in arm dynarecs
2019-04-28 20:46:18 +02:00
Flyinghead
6b78e1f879
fix dynarec regression
2019-04-28 20:41:39 +02:00
David Guillen Fandos
3692ea7ae6
Improve stdclass.h/cpp support for non-Linux non-Windows platforms
...
Simplifies having implementation on platform separated files, which is a
pain for platforms which are not Windows but not Linux either (and yet
support pthreads).
Some minor cleanup here and there while we are at it.
2019-04-27 14:34:10 +02:00
David Guillen Fandos
7b50d5df8c
Add ENABLE_MODEM and rework makefiles to support it.
2019-04-27 12:05:13 +02:00
Christoph "baka0815" Schwerdtfeger
0a3c361da2
AUDIO: Allow backend specific settings
2019-04-24 21:41:38 +02:00
Flyinghead
011849ea74
wince: arm64 dynarec fixes
2019-04-19 17:20:55 +02:00
Flyinghead
553f6054ce
NO_MMU build fixes
2019-04-19 11:56:11 +02:00
Flyinghead
9920880987
dynarec: reserve code cache space for frequently changing blocks
...
detect frequent SMC check failures and use a specific code cache area
for these blocks.
flush the temp area when full but keep the main code cache area
2019-04-19 11:45:05 +02:00
Flyinghead
76348b13ce
wince: use cpu ratio of 2 in dynarec
2019-04-19 09:58:25 +02:00
Flyinghead
d82e5e2017
don't use mmu for dma
2019-04-18 22:48:37 +02:00
Flyinghead
0f34d776f6
wince: delete sr.FD hack, restore FD block check in x64 rec
...
use longjmp for interpreter fallback exceptions
2019-04-18 14:15:01 +02:00
Flyinghead
d68da6bdd4
wince: let fp disable exception run before compiling a block
2019-04-18 13:55:10 +02:00
Flyinghead
a25918839b
save fpu regs when sr.FD is set, and restore them when unset
2019-04-15 19:02:10 +02:00
Flyinghead
5d6e96463c
x64 and win32 build fixes
2019-04-15 18:31:15 +02:00
Flyinghead
dece3fc13e
wince: use setjmp/longjmp instead of try/catch for dynarecs
...
WinCE fast mmu implementation
WIP arm64 dynarec
2019-04-15 18:02:34 +02:00
david miller
3157520dee
mingw64 fixes
2019-04-12 19:15:31 -04:00
david miller
6539b8c247
_mkdir guard
2019-04-12 18:24:11 -04:00
david miller
803cad95f9
gcc flags & misc
2019-04-12 18:13:09 -04:00
david miller
68ee192ad4
compiler def. fixes
2019-04-12 18:08:36 -04:00
david miller
b6c234b71b
revert to using strcasecmp for other platforms
2019-04-12 17:19:40 -04:00
david miller
cc9d5ec55b
CMake/Master working, tested on windows with Clang && MSC (x86,x64)
2019-04-12 16:59:39 -04:00
David Miller
3d1b82854e
Merge branch 'master' into fh/win32-winresize
2019-04-12 13:03:30 -04:00
flyinghead
8cdbb9c2fd
Merge pull request #1548 from reicast/fh/float-vmu
...
Float VMU option. Android renderer native thread. 90° screen rotation option. AW fixes.
2019-04-10 21:53:41 +02:00
Flyinghead
13341ecd59
maple: process_kcode -> transform_kcode
2019-04-10 11:31:08 +02:00
Flyinghead
0445542ec2
gl: 90deg screen rotation option. Fix scissor/clip wrt scale/stretch
...
90deg CC screen rotation option for some arcade games
Fix scissoring and clipping when screen scaling/stretching/rotating
Clear shader cache when screen rotation changes
Properly delete all gl programs and shaders when needed
2019-04-09 15:18:48 +02:00
Flyinghead
37a533740b
win32: close thread handle when finished
2019-04-09 10:37:49 +02:00
Flyinghead
1b04ef4cb1
Get rid of RTC in settings
2019-04-08 22:09:22 +02:00
Flyinghead
0a6f503efc
Don't use screen stretching parameter for RTT
2019-04-08 21:51:59 +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
baka0815
56374377dd
Merge pull request #1543 from reicast/baka/select_audio
...
AUDIO: Make backend configurable
2019-04-08 18:33:53 +02:00
Flyinghead
cf7434a9e6
atomiswave: fix coin input. Subclass sega controller instead of #def
2019-04-08 17:09:10 +02:00
Flyinghead
f5a60ee5f1
New option to display VMUs in game
2019-04-08 15:54:37 +02:00
Flyinghead
47bb509f02
Add horizontal screen stretching option
...
fix scissor test when scaling/stretching
fix infiniloop when starting a game fails
2019-04-08 00:21:06 +02:00
Flyinghead
408d16b299
imgui: clear color buffer before drawing background tex
...
fixes blinking edges on nvidia shield and other glitches
2019-04-07 23:33:24 +02:00