flyinghead
700994340b
cmake: add sdl to vstudio build. Fix WinCE crash
2020-07-23 18:50:55 +02:00
scribam
0b1d739673
MSVC Cleanup
2020-04-23 14:10:49 +02:00
Flyinghead
65f156817c
win32: reserve vmem with MEM_TOP_DOWN. Use 1MB increment for prepare_jit
2020-04-22 10:06:25 +02:00
Flyinghead
17a2c3644f
ui: add loading screen with cancel button. don't freeze ui on load
2020-04-20 18:52:02 +02:00
scribam
62afe5714a
Rework cThread to use std::thread
2020-04-15 20:20:30 +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
Flyinghead
c5a42a57bc
limit maple schedule time, allow vram 8-bit reads, minor changes
2020-03-28 12:19:36 +01:00
tokuio
255d19d40f
let windows terminals use Nix ConsoleListener, fix windows timestamp
2020-03-27 19:05:24 +00:00
flyinghead
8db02cf503
sdl: Support hats. Save/restore window state and size. Fullscreen mode
2020-03-22 14:10:07 +01:00
flyinghead
8f92315207
Use sdl on windows
2020-03-21 15:25:02 +01:00
Flyinghead
0c2e95185c
support for right analog stick. Fix gunsur2 inputs
2020-03-20 16:57:50 +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
b79c074444
axe wchar
2020-01-31 23:51:12 +01:00
flyinghead
36a7c00507
win32: fix crash when switching to vulkan
...
fix recursive call to VulkanContext::Init
still crashing when starting with vk and switching to GL
2020-01-08 10:58:24 +01:00
flyinghead
3415ce5577
win32: detect platform. SDL support
2019-12-22 23:49:52 +01:00
Flyinghead
29fd406dd8
vulkan: crash on windows when switching from gl to vulkan
...
Destroy and recreate window when switching from gl to vulkan
VkGetPhysicalDeviceProperties2 crash with old nvidia driver (376)
2019-12-14 17:53:01 +01:00
Flyinghead
2a89874812
decouple imgui from gles renderer
2019-10-19 18:34:24 +02:00
Flyinghead
6611e9bf5e
gl: refactor wsi into their own class.Allow dynamic vk<->gl switch
2019-10-18 21:57:08 +02:00
flyinghead
a6c56ba748
vulkan: windows support
2019-10-15 21:25:24 +02:00
Flyinghead
ae4f378747
Add fast-forward mode
...
Fix buttons.png not being created if not first run
2019-09-27 14:15:29 +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
flyinghead
5600120b54
win32: fix crash at boot. remove log command lines options
...
restore .lst compatibility
2019-08-15 10:48:39 +02:00
Flyinghead
5285911133
Mirror writable aica ram to 8mb in 512mb vmem mode
...
Fixes switching from dc to naomi on windows
Should help games reading past end of aica ram (HeadHunter and others)
2019-07-10 20:17:59 +02:00
Flyinghead
ad98e583c8
win32: fix vmem reset
2019-07-10 18:58:55 +02:00
Flyinghead
f3a91de1af
Unify dreamcast, naomi and atomiswave builds WIP
2019-07-09 23:52:19 +02:00
Flyinghead
ad4218d617
audio: use new logging
...
other logging changes
2019-07-01 17:17:08 +02:00
Flyinghead
8404c6322c
New logging framework stolen from dolphin
2019-06-30 21:06:46 +02:00
Flyinghead
b226544d03
Merge remote-tracking branch 'origin/master' into fh/wince-dynarec
2019-06-21 14:37:32 +02:00
Flyinghead
f29569cf5d
more name change
2019-06-20 23:46:20 +02:00
Flyinghead
6ed098a929
wince: enable code block protection
2019-06-19 22:55:47 +02:00
Flyinghead
13a2f8bc61
win32: build fix
2019-06-19 11:14:12 +02:00
Flyinghead
318852e261
dynarec: use mprotect to protect code areas
...
All ram pages containing code are write protected. In that case, no need
for block checks. Memory reads in the same block(s) can also be executed
at compile time and the results propagated as constants.
When a write is detected in a protected area, the corresponding blocks
are discarded and recompiled using traditional (slow) block checks.
Backported the blkmap code finding change from upstream.
Use smart pointers for block management to avoid reference issues.
Added WriteAfterWrite ssa pass
Fixed crash in ssa ConstProp pass when op list is modified
2019-06-19 11:01:33 +02:00
Flyinghead
5b2cef3fdd
dynarec: add negc and xtrct op codes
...
native implementation of negc and xtrct for x64 and arm64
rec-arm64: pass exception pc in w27 instead of sh4 context
inline mmu_intruction_translation() and clean up
2019-05-26 13:30:05 +02:00
Flyinghead
94e03b2cfd
win32: fix build. disable appveyor msvc build
2019-05-22 14:28:11 +02:00
Flyinghead
c2c0215e1b
Merge remote-tracking branch 'origin/master' into fh/wince-dynarec
2019-05-22 14:13:00 +02:00
Flyinghead
fb76efb08d
Standard functions for virtual mem alloc/protect/map/...
2019-05-22 11:41:12 +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
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
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
david miller
c681dc77dc
Win32 fullscreen via alt-enter
2019-05-01 19:11:35 -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
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
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 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
37a533740b
win32: close thread handle when finished
2019-04-09 10:37:49 +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
d7fcc80be4
win32: don't save window size if minimized
2019-04-01 11:32:49 +02:00
flyinghead
d945b2b8de
win32: allow window to be resized/maximized. Save size and max state.
2019-04-01 11:32:25 +02:00
flyinghead
7f0489ff28
visual studio compatibility
...
no modem support
no zip or 7z support so no naomi for now
hacked a .asm file as vs doesn't support inline assembly -> code dup
2019-03-30 19:26:05 +01:00
flyinghead
4b0e77a2b3
win32: don't save window size if minimized
2019-03-30 11:27:14 +01:00
flyinghead
0e198fac58
win32: allow window to be resized/maximized. Save size and max state.
2019-03-30 11:22:51 +01:00
Flyinghead
80626b1f4e
win: compile fix
2019-03-29 17:34:16 +01:00
Flyinghead
daf4980fc8
input: save assigned maple port of each gamepad
2019-03-29 17:19:18 +01:00
Flyinghead
c809c6c56f
Merge branch 'fh/mymaster' into fh/master-merge
2019-03-25 16:47:47 +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
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
c6baa4827b
x11: support mouse wheel. ascii text keyboard input
2019-02-24 12:53:49 +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
3561b3479d
win32: invert Y axes of sticks
...
implement inverted axis in base gamepad device
2019-02-22 11:35:41 +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
8b5c2a3fac
New input handling/mapping system, SDL only for now. Gui wip
2019-02-12 11:30:24 +01:00
Flyinghead
5ef0f74620
win32: keyboard support
2019-02-09 16:22:09 +01:00
flyinghead
4685bc1fad
win32: hook up mouse
2019-02-07 20:04:17 +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
9ccf0efdea
switch between interpreter and dynarec at runtime
2018-11-11 23:49:41 +01:00
Flyinghead
4c334f09ea
AW: various fixes, more roms
2018-11-09 13:22:27 +01:00
Flyinghead
dc9780eb46
Android: fix black screen at boot on some devices
2018-10-29 20:03:47 +01:00
David Miller
a8c09197a3
os_MakeExecutable() using sizeof(sz)
2018-10-28 11:45:35 -04:00
flyinghead
27b79edf6f
win32: Naomi test/service/coin keyboard bindings
2018-10-21 02:51:20 +02:00
flyinghead
c135ab0e90
Win32: fix msvc build. removed tick thread
2018-09-25 14:09:07 +02:00
David Miller
2e23ee4628
use enum for cli arg exit and android build ndef
2018-09-20 17:48:27 -04:00
David Miller
b58e866b6b
Desktop command args support fixes and auto git versioning for VS and make
2018-09-20 17:48:27 -04:00
Flyinghead
7ce4fccb37
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-20 17:28:41 +02:00
Flyinghead
bc6a8f451a
Fix picotcp on Windows
...
Automatically configure tap IP address, route and proxy arp using iphlpapi.
Partial port to MINGW.
2018-09-17 12:59:52 +02:00
Abandoned Cart
4ed65fca3d
Revert "Fix to windows OpenFile dialog #1238"
2018-08-28 13:38:11 -04:00
Pavel Dmytriiev (Github)
a4e6dbadb5
Fix to windows OpenFile dialog
...
Now it actually says something about what exactly it tries to open, also on "cancel" it exits gracefully.
Proposal: instead of checking one thousand return codes, which are easily ignored, I suggest using an exceptions (this part of emulator doesn't require execution speed, so exceptions here would be just fine).
2018-08-27 23:20:39 -04:00
Christoph "baka0815" Schwerdtfeger
11b01633d0
Fix Windows
2018-08-21 00:33:18 -04:00
Christoph "baka0815" Schwerdtfeger
638a97d1ae
Maple: Reworked the way controllers are created
...
A new function was introduced to abstract the setup of input devices for each os: os_SetupInput().
I hope I implemented this everywhere correctly and the behaviour is identical to before.
The new function mcfg_CreateNAOMIJamma() creates the NAOMI Jamma interface and is hidden behind a compile flag (same as before).
The previous function mcfg_CreateDevices() was renamed to mcfg_CreateDevicesFromConfig() because it creates the devices based on the configuration (``nb`` setting).
2018-08-21 00:33:18 -04:00
Flyinghead
960904c401
Exit cleanly in desktop platforms
...
Lighter and cleaner version of the previous PR
2018-07-23 19:52:50 +02:00
KrossX
d4d782c71c
Remove unused lines.
2016-01-22 15:08:29 -03:00
KrossX
c37c5c42e4
Right motor adjustment
2015-12-17 22:10:55 -03:00
KrossX
b59ca13cfe
Implemented PuruPuru device
...
Includes a simple XInput implementation for Windows.
2015-12-07 21:21:03 -03:00
KrossX
b566092d28
Basic XInput support for Windows
...
Adds simple X360 controller support for Windows.
2015-12-07 20:09:15 -03:00
Jan Holthuis
b6d0cddcaa
stdclass: Add support for separate config/data dirs and system wide dirs
...
This adds support for separate config and data dirs.
On Linux, these will be compliant XDG Basedir Specification, i.e.
XDG_CONFIG_HOME and XDG_CONFIG_DIRS (or XDG_DATA_HOME and XDG_DATA_DIRS
respectively). On all other platforms, there currently just set to the
homedir path (so no previous behaviour has been changed).
If reicast wants to read and write a data file, it just calls
get_data_path("/samplefile.txt"). If it does not need to write to
that file, it just uses get_data_path("/samplefile.txt", false). That
way, we can also use system-wide dirs (like /usr/share/reicast on
linux), that the user usually doesn't have write access to.
The same applies for config file, where you use get_config_path(args)
respectively.
2015-09-02 15:48:53 +02:00
Stefanos Kornilios Mitsis Poiitidis
365accfde2
windows: fix TARGET_NO_NVMEM
2015-08-11 19:12:20 +02:00
Stefanos Kornilios Mitsis Poiitidis
e3845465f0
win64/jit: Generate unwind table for the jit code cache
...
This required moving the SH4_TCB outside the exe, as new tables that belong on the executable are ignored.
This isn't perfect, but there's a large area to scan for available address space so it shouldn't be a problem
2015-08-11 00:26:02 -04:00
Stefanos Kornilios Mitsis Poiitidis
8de800497e
windows: Don't call InitAudio from os_CreateWindow
...
Huh, why was this call even there?
2015-08-09 01:48:41 +02:00