Flyinghead
17b495e7e4
NoSound setting wasn't saved
...
Fix profiler handler ids
2019-03-04 00:32:15 +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
c6baa4827b
x11: support mouse wheel. ascii text keyboard input
2019-02-24 12:53:49 +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
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
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
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
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
1802c022fd
UI with ImGui
2019-02-06 19:57:13 +01:00
Flyinghead
a7a5618442
evdev: too much logging
2019-02-06 15:00:40 +01:00
Flyinghead
9ccf0efdea
switch between interpreter and dynarec at runtime
2018-11-11 23:49:41 +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
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
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
ff01e3521b
Better NAOMI JVS emulation
2018-10-11 10:09:28 +02:00
Flyinghead
b47be37b32
Dynamic switching between GL3 - GL4 renderers
2018-10-04 19:44:52 +02:00
Flyinghead
3f791d6f04
Merge OIT renderer into master
2018-10-04 10:29:23 +02:00
Flyinghead
601fafa1ad
Light gun support
2018-10-01 20:34:35 +02:00
Flyinghead
5fe41e5f1f
keyboard: reset released key
2018-09-26 22:58:15 +02:00
Flyinghead
752d254982
X11: keyboard auto-repeat detection
2018-09-26 10:08:49 +02:00
Flyinghead
4547973561
Better mouse handling on X11
2018-09-26 02:00:50 +02:00
Flyinghead
dc5ce8fa8b
Create maple devices on Linux. Default to 2 VMUs per controller
2018-09-24 18:56:24 +02:00
Flyinghead
62eeca5882
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-21 00:37:34 +02:00
Flyinghead
de147549c3
Save states implementation
2018-09-20 19:48:46 +02:00
Christoph "baka0815" Schwerdtfeger
5b8749fbaa
evdev: If there was an error initializing a controller, don't proceed
...
If the controller was not correctly initialized, the fd and/or the mapping might not be set, which could then result in access violations or other errors.
2018-09-20 17:43:24 +02:00
Flyinghead
7ce4fccb37
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-20 17:28:41 +02:00
Flyinghead
8a2684ff55
Dreamcast mouse emulation
2018-09-18 09:27:16 +02:00
Flyinghead
0e939b5f68
Keyboard: Better keycode mapping, added CTRL. Maple cleanup.
2018-09-08 14:35:46 +02:00
Flyinghead
54d0bdc5e2
Dreamcast keyboard emulation (X11 only for now)
2018-09-06 20:17:28 +02:00
Sven
daae7c8e68
add save states
2018-09-02 09:49:23 -04:00
Christoph "baka0815" Schwerdtfeger
555e140216
evdev: Remove unnecessary exports in header
...
``input_evdev_init(EvdevController* controller, const char* device, const char* mapping_fname)`` and ``input_evdev_button_duplicate_button(EvdevControllerMapping* mapping1, EvdevControllerMapping* mapping2)`` are no longer used outside evdev.cpp
Needed to move ``input_evdev_init()`` around a bit.
2018-08-31 16:59:37 +02:00
Christoph "baka0815" Schwerdtfeger
8cbc342b06
Maple specific header no longer necessary
2018-08-31 16:52:08 +02:00
Christoph "baka0815" Schwerdtfeger
a9a67fdaa5
Move the evdev specific code out of main.cpp
2018-08-31 16:47:55 +02:00
Christoph
14e1e4ded4
Merge pull request #1339 from reicast/baka/evdev_symlink
...
evdev: Search for libevdev.so.2 first
2018-08-27 10:25:40 +02:00
Christoph "baka0815" Schwerdtfeger
0f228690ad
evdev: Fix off by one error
...
The port for player1 is 0, not 1 (we're zero based here).
2018-08-27 10:01:08 +02:00
Christoph "baka0815" Schwerdtfeger
1d66d1e2da
evdev: Search for libevdev.so.2 first
...
Many Linux distributions provide livevdev.so.2 only so check that first.
2018-08-27 09:53:54 +02:00
Stefanos Kornilios Mitsis Poiitidis
ba8b9014a2
Merge pull request #1326 from reicast/EvdevControllerMapping_string2
...
evdev: Mapping name as string
2018-08-25 21:25:32 +03:00
Christoph "baka0815" Schwerdtfeger
8593c209d9
Fixed type of formatting argument
2018-08-25 10:55:52 +02:00
Christoph "baka0815" Schwerdtfeger
80af04421a
evdev: Mapping name as string
...
That way we don't need to reserve memory and the output (on the command line) is correct.
2018-08-25 10:17:10 +02:00
gameblabla
5f964de1fe
Fixes compiling if evdev is disabled
2018-08-24 23:13:41 +02:00
Abandoned Cart
97c5b9e490
Merge pull request #1282 from reicast/baka/evdev_warnnotconfigured
...
evdev: Print a warning if a key is not configured
2018-08-22 18:14:18 -04:00
Abandoned Cart
d7b5533210
Merge pull request #1304 from gameblabla/glesfix
...
Fixes compiling with GLES and X11
2018-08-21 14:02:06 -04:00
Christoph "baka0815" Schwerdtfeger
ad20b55d2c
Fix lgtm-warning
2018-08-21 00:33:18 -04:00
Christoph "baka0815" Schwerdtfeger
c8baaac632
evdev/MapleType: Controller in port 1 defaults to VMU for Maple device, all other to None
...
Also allow 0 for "None"
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
Christoph "baka0815" Schwerdtfeger
7ef105822a
evdev: Move creation of controllers
...
Don't expose mcfg_Create() directly, but use a proxy method mcfg_CreateController() to create the complete controller.
Using evdev the ``nb``-setting in the ``emu.cfg`` is no longer necessary (see #970 ) as the devices get created while initializing the controllers.
Moved the ``switch`` to it's own function.
2018-08-21 00:32:05 -04:00
Christoph "baka0815" Schwerdtfeger
f75ba32fa9
evdev/maple: Set devices via config
2018-08-21 00:32:05 -04:00
Christoph "baka0815" Schwerdtfeger
17d9159b82
evdev: Add maple devices 1 and 2 to mapping & cfg
2018-08-21 00:32:05 -04:00
Ender's Games
78977387ac
Reios: perform initial configuration, as needed
2018-08-20 12:28:58 -04:00
gameblabla
8a53efec62
Fixes compiling with GLES and X11
2018-08-20 13:17:01 +02:00
Flyinghead
04b84b90e3
Merge master into fh/mymaster
2018-08-13 18:01:24 +02:00
Christoph "baka0815" Schwerdtfeger
7029af98a3
evdev/dupcheck: Don't check unassigned buttons
...
Also removes the trailing whitespaces.
2018-08-13 13:10:59 +02:00
Christoph "baka0815" Schwerdtfeger
21ea713032
X11: Values >= 1 enable keyboard
2018-08-12 15:17:56 +02:00
Christoph "baka0815" Schwerdtfeger
369ecf2db2
evdev: Print a warning if a key is not configured
2018-08-12 09:50:14 +02:00
Christoph "baka0815" Schwerdtfeger
891666d9ce
evdev: Check for duplicate key assignment
2018-08-11 09:56:13 +02:00
Christoph "baka0815" Schwerdtfeger
e2d186f7be
evdev: Testing shows: You *can* assign the same device to multiple ports.
2018-08-10 10:16:29 +02:00
Flyinghead
9942bfc86e
Merge branch clean-exit-light
2018-08-01 18:02:50 +02:00
Flyinghead
960904c401
Exit cleanly in desktop platforms
...
Lighter and cleaner version of the previous PR
2018-07-23 19:52:50 +02:00
Stefanos Kornilios Mitsis Poiitidis
95ce251639
Merge pull request #1079 from myfreeweb/master
...
Build on FreeBSD
2018-07-22 00:37:34 +02:00
Flyinghead
71d7f90858
Merge upstream
2018-07-19 12:19:51 +02:00
Stefanos Kornilios Mitsis Poiitidis
a5cf5406cb
Merge pull request #1181 from baka0815/X11
...
X11: Refactored and fixed buttons
2018-07-18 20:59:02 +02:00
Christoph "baka0815" Schwerdtfeger
2a167e343b
X11: use x11_keymap[] for the shoulder trigger
...
Use DC_AXIS_LT and DC_AXIS_RT for the sliders. They are not real axes on a keyboard, but it fits.
Also hide the printf() behind a define.
2018-07-18 19:31:35 +02:00
Flyinghead
4fced53e25
Dangling pointer in evdev code (electric fence)
2018-07-18 11:19:53 +02:00
Flyinghead
673841d1df
Dump frame when F10 pressed
2018-07-16 17:31:52 +02:00
topu
90304f0c67
Fix controller support when building with GCC8
2018-07-15 13:59:37 +02:00
Greg V
5d69e19ed1
Build on FreeBSD (and potentially other BSD)
2018-07-08 15:43:10 +03:00
Flyinghead
3cac9134ce
Don't use the window title for debug info as it delays frames
2018-07-06 22:38:48 +02:00
Flyinghead
3c4913a35a
Merge remote-tracking branch 'upstream/master'
2018-07-03 15:46:25 +02:00
TwistedUmbrella
75189f0a78
Merge pull request #1180 from baka0815/unused_code
...
Removed unused code in core/linux-dist/main.cpp
2018-06-14 15:52:23 -04:00
Christoph "baka0815" Schwerdtfeger
3d43505504
Allow for custom <device>.cfg files in the /mappings/ directory.
...
Check if a configuration file named exactly like the device exists in the /mappings/ directory.
If it does, use this instead of the generic one.
Expose file_exists() from stdclass.
2018-06-13 19:33:51 +02:00
Christoph "baka0815" Schwerdtfeger
2e4cf087bd
Refactored and fixed X11 buttons.
...
Replaced magic number with X11 constants.
Added keys for left and right shoulder buttons.
Added key for (missing) Y button.
Moved the debug printf() where it belongs.
2018-06-13 19:24:48 +02:00
Christoph "baka0815" Schwerdtfeger
8309eb7d6a
Added most important X11-keys as constants.
2018-06-13 19:23:20 +02:00
Christoph "baka0815" Schwerdtfeger
e6854ef87d
Removed unused code in core/linux-dist/main.cpp
...
This is a leftover from #964
2018-06-13 19:17:20 +02:00
Flyinghead
64a8ac1dd5
Add clean exit patch for x11 and 64-bit architecture
2018-04-27 16:54:15 +02:00
Flyinghead
10bdf7f449
Clean exit when exit key is pressed
2018-04-27 10:37:56 +00:00
Stefan
8c967b0591
Merge pull request #1 from OrN/rpi2-stuff
...
omx audio backend, and dispmanx window
2018-04-11 21:33:45 +02:00
Promi
5615694ea0
Fix #1051
2017-12-09 15:51:57 +01:00
Jan Holthuis
b7fa676546
linux-dist/evdev: Use std::Map.find() instead of operator[]
...
Since EvdevControllerMapping does not have a default constructor,
we can't use the operator[];
data_type& operator[](const key_type& k) - Returns a reference to
the object that is associated with a particular key. If the map
does not already contain such an object, operator[] inserts the
default object data_type().
Instead, we use the std::map.find() function.
This should resolve #971 .
2016-09-23 12:54:27 +02:00
Preston Smith
6f1fa1ab08
omx audio backend, and dispmanx window
2016-09-21 17:21:13 -05:00
Stefanos Kornilios Mitsis Poiitidis
e5d8851316
Merge pull request #964 from Holzhaus/linux-rumble-support
...
Linux rumble support
2016-09-20 13:49:13 +02:00
Stefanos Kornilios Mitsis Poiitidis
42e6a62fac
Merge pull request #877 from KrossX/purupuru
...
X360 controller support for Windows + Rumble
2016-09-17 22:26:46 +02:00
Jan Holthuis
fdc3de7870
Port right motor adjustment to linux version
...
This adapts KrossX' commit c37c5c42e4
so
that we can use it in the linux version, too.
2016-09-13 14:54:29 +02:00
Phil Eichinger
dde4647e55
Fix the check for the enviroment variable
...
I tried running reicast and it immediately died with:
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_S_construct null not valid
Aborted
I was missing the environment variable XDG_CONFIG_DIRS
Turns out find_system_config_dirs() checked for the existence of
XDG_DATA_DIRS but then tried to use XDG_CONFIG_DIRS (non-existent in my
case).
fixes #847
2016-01-30 10:29:36 +01:00
Jan Holthuis
cc5719e845
Linux/evdev: Add Force Feedback/Rumble support
2015-12-14 01:09:03 +01:00
Stefanos Kornilios Mitsis Poiitidis
f3e4416bb4
linux/softrend: Cleanup accidental file changes
2015-12-13 14:08:16 +01:00
Stefanos Kornilios Mitsis Poiitidis
62018cf203
linux/softrend: Fix porting bugs, hackplement X11 drawing
...
- Fix RECT fields oder (initialized via {} on the code)
- Initialize shuffle_alpha (duh ...)
- X11 Image drawing (hacky, depends on internal X11 details)
- Untwidle code w/ optional flipping (X11 doesn't use inverted bitmaps)
- rgba shuffling (not needed yet, but left for documentation)
2015-12-13 14:00:25 +01:00
Stefanos Kornilios Mitsis Poiitidis
5e377399d3
linux/softrend: builds & runs, doesn't push to screen yet
2015-12-13 14:00:25 +01:00
KrossX
832eeeb419
Might help compilation in other platforms
...
I cannot verify it though.
2015-12-07 21:27:19 -03:00
Stefanos Kornilios Mitsis Poiitidis
543e355259
Merge pull request #826 from reicast/holzhaus/merge-sdl-into-linux-dist
...
SDL: Merge sdl/ code into linux-dist/ code
2015-09-23 11:42:46 +02:00
Jan Holthuis
76dfeae55c
SDL: Remove redundant sdl/ code
2015-09-12 16:31:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
56f8ffac0e
Merge pull request #807 from randomstuff/nixprof
...
Nixprof: some enchancements
2015-09-04 19:55:19 +02:00
Gabriel Corona
ad068dcff2
Bind profiling in X11 to F10
2015-09-03 21:08:13 +02:00
Jan Holthuis
4267d51f90
stdclass: Make path getter function names more verbose
2015-09-02 15:49:00 +02:00
Jan Holthuis
5f6480e983
linux-dist: Also add /etc/reicast as system config dir
2015-09-02 15:48:59 +02: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