Commit Graph

825 Commits

Author SHA1 Message Date
Stefanos Kornilios Mitsis Poiitidis ad05c35a7e Implement CheckBlock for x64 2018-06-29 15:19:49 +02:00
Stefanos Kornilios Mitsis Poiitidis c52165adbd Update XBYAK to 71b75f653f3858403eb33d48f6346eef34b837fe 2018-06-29 15:18:57 +02:00
Flyinghead f18aa63a67 Add stride and scan order to texture cache key as they are used to update the texture
Fixes glitchy FMV title screen in Bomberman Online
2018-06-29 11:59:48 +02:00
Flyinghead a94f01ee78 Force autosort TR triangles using depth func Always to be drawn on top of others
When autosorting triangles, ignore the depth of triangles using the depth func Always and force
them to be on top. Seems to help Psyvariar 2.
2018-06-28 13:21:40 +02:00
Flyinghead 6871061ca0 Modifier Volumes: summing up with triangles is faster than using a quad. 2018-06-26 15:38:55 +02:00
Flyinghead 7c93727b5e Improve modifier volume parsing and drawing logic.
Parse modifier volumes similarily to other polys (first, count, params).
Draw all triangles in one shot and use quad to sum up instead of
redrawing entire strip. Use OR operation for open volumes/quads
(Soulcalibur).
2018-06-26 14:45:58 +02:00
TwistedUmbrella bf62cb8bd1 Prevent overriding Android setting w/ config.ini 2018-06-25 12:04:26 -04:00
TwistedUmbrella 571b68d468 Fix building Windows alongside Android Studio
Windows: resolve missing reference to _SC_OPEN_MAX

https://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00023.html
https://libwebsockets.org/lws-api-doc-master/html/libwebsockets_8h_source.html

Windows: comment duplicate x86_ptr_imm definition

Replaced by more explicit type definitions. Fixes x64 compile

Restore secondary x86_ptr_imm for non-Windows

This appears to be a necessary duplicate for other platforms.
2018-06-25 12:04:14 -04:00
Stefanos Kornilios Mitsis Poiitidis 563052a2e8 Really force -fPIC everywhere 2018-06-25 12:04:14 -04:00
Stefanos Kornilios Mitsis Poiitidis 86593d82e7 Add fpic option, remove ndk build stuff 2018-06-25 12:04:13 -04:00
Stefanos Kornilios Mitsis Poiitidis 1933aff8a2 First steps for android studio builds 2018-06-25 12:04:07 -04:00
Flyinghead 846d02d9d2 Optimize RTT to VRAM. Add US version of THPS2 to per-game settings. 2018-06-25 16:55:22 +02:00
TwistedUmbrella e6afd22f98
Merge pull request #1191 from baka0815/gdi_skipws
GDI: Reset skipws-flag
2018-06-25 10:33:34 -04:00
Flyinghead 3256e02813 Workaround for Virtua Tennis ball color problem.
There's a texture corruption of the tennis ball and other textures,
notably the players' bags in the first intro sequence. The corruption is
due to render to texture squashing existing textures. Not sure what's
going on but this avoids the texture corruption. The original problem
remains.
2018-06-25 15:53:28 +02:00
git@baka0815.de 852d644a5f GDI: Explicitly set skipws-flag
It's not neccesarry to set it every iteration, so just set it before and reset it afterwards.
2018-06-25 09:14:51 +02:00
Christoph "baka0815" Schwerdtfeger 41ee5707a8 GDI: Reset skipws-flag 2018-06-24 14:30:46 +02:00
barbudreadmon 2e8a87cbdf
Allow loading of lst files (Naomi support #1188) 2018-06-21 19:24:05 +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 08b8d30589 Implement clipping. Enabled by default. 2018-06-09 18:11:47 +02:00
Stefanos Kornilios Mitsis Poiitidis d0cd5a5f64
Merge pull request #1152 from flyinghead/fh/modvols
Enable modifier volumes. Fix for exclusion volumes.
2018-06-09 17:52:51 +02:00
Flyinghead 7640a35720 Draw modifier volumes only if enabled in settings (defaults to true) 2018-06-09 17:22:01 +02:00
Flyinghead 1f95eb243c Fix video choppiness 2018-06-07 19:06:16 +02:00
Flyinghead 2fdcf0d821 Use float constants in GLSL 2018-06-07 18:26:02 +02:00
Flyinghead e1a86b4e0a Fix SW1-JPB random texture corruption problem and video choppiness. 2018-06-07 17:19:49 +02:00
Flyinghead b9fe9332cf GLES 2 fix for fog table: use float only for vars and consts 2018-06-05 13:36:49 +02:00
Flyinghead 49e172b169 Push more silence on audio underrun to catch up 2018-06-05 12:18:42 +02:00
Flyinghead 828990b926 Texture based fog table 2018-06-05 12:18:09 +02:00
Flyinghead a345fcc4c7 Draw modifier volumes after punch-through so they can be shadowed as
well.
2018-05-23 14:31:11 +02:00
Flyinghead 2f9dcfabd8 Use FPU_SHAD_SCALE.scale_factor for shadow intensity instead of
hardcoded value.
2018-05-23 12:26:24 +02:00
Flyinghead 488b9ab831 Add TA_GLOB_TILE_CLIP struct. Fix typo. 2018-05-23 12:05:58 +02:00
Flyinghead bccfb5b70c Faster implementation for translucent polys depth pass. Disabled by
default. Auto-enabled for Cosmic Smash.
2018-05-22 15:47:02 +02:00
Flyinghead 23a2af0a28 Add setting for THPS2. Move RenderToTextureBuffer option to rend
section.
2018-05-22 15:34:33 +02:00
Flyinghead 0f6249fdcf Backport libretro per-game-settings logic 2018-05-22 15:20:37 +02:00
Flyinghead c8034807bb dump_frame/read_frame: save/load pvr registers 2018-05-22 13:23:07 +02:00
Flyinghead 4c7ffeb520 Per-pixel fog shading. Shaders cleanup. 2018-05-22 13:04:21 +02:00
Flyinghead 8d01bbe145 Increase Z scaling factor to 100k (fixes background menu in VR2). Set
depth mask before clearing buffers.
2018-05-21 16:44:18 +02:00
Flyinghead 9098fd5a22 Autosort poly: Write to the depth buffer in a second pass, and only if
multipass rendering.
2018-05-20 21:41:31 +02:00
Flyinghead 2d904372a9 Multipass issues: depth mask must be enabled for autosorted tr poly.
Depth buffer must NOT be cleared b/w passes, same for stencil I guess.
2018-05-20 14:16:43 +02:00
Flyinghead 9e994fecaa Avoid array overflow if more than 10 render passes 2018-05-19 18:57:16 +02:00
Flyinghead c35aa4262c Fix OpenGL errors with modvols and multipass 2018-05-19 18:51:30 +02:00
Flyinghead c427997269 Enable modifier volumes. Fix for exclusion volumes. Prevent overflow of modifier triangles (JGR). 2018-05-19 10:13:00 +02:00
Flyinghead 6e64fe90fc Reverting c3a90a63a1 as well as the
autosort hack, which was certainly a consequence. Fixes texture
corruptions.
2018-05-18 21:35:51 +02:00
Flyinghead d596f988c8 Revert 99bc20220e 2018-05-17 11:17:51 +02:00
Flyinghead 99bc20220e Simplify clipping 2018-05-17 10:32:52 +02:00
Flyinghead 80c193b3de Cache texture parameters. Fixed exclusion volume modifiers. 2018-05-16 19:34:45 +02:00
Flyinghead e73d11d0ab glHint nicest->fastest, and just once 2018-05-15 22:37:40 +02:00
Flyinghead b469f05b9d Fix wrong fog calculation issue 2018-05-15 21:19:58 +02:00
Flyinghead d8165376be GL cache fix 2018-05-15 16:09:50 +02:00
Flyinghead de046c4620 Use OpenGL state cache. Allocate texture ids in bulk. Avoid modifier
volumes entirely when not needed.
2018-05-15 15:22:26 +02:00
Flyinghead 2d834c7396 Revert glChecks 2018-05-15 11:54:14 +02:00
Flyinghead 833a616122 Merge OSX fixes 2018-05-15 11:41:44 +02:00
Flyinghead 46b40ad043 OSX: enable exceptions for vmem 2018-05-15 11:14:48 +02:00
Flyinghead 0a8348b6df Use CSYM() in assembler code 2018-05-15 11:13:42 +02:00
Flyinghead 34eae365f7 bad character? 2018-05-14 23:16:11 +02:00
Flyinghead c36e2731d7 read_frame fix 2018-05-14 22:38:22 +02:00
Flyinghead 4aee2eb5fe Increase gdrom dma buffer size to 8192 sectors 2018-05-14 19:37:33 +02:00
Flyinghead 2564c57cd2 Merge branch 'master' of https://github.com/flyinghead/reicast-emulator 2018-05-14 16:14:35 +02:00
Flyinghead b30f715796 Fix paletted textures mismatch in texture cache 2018-05-14 16:14:15 +02:00
Flyinghead 699c2986a5 WIP 2018-05-14 12:48:22 +02:00
Flyinghead ae49c19cea osx: cpu x86. glViewport now doing in RenderFrame 2018-05-14 09:31:03 +02:00
Flyinghead 46f28cfb27 Fog fix 2018-05-13 23:07:35 +02:00
Flyinghead 95120690ef Use log2 depth scaling when opengl 3 is available 2018-05-13 20:19:36 +02:00
Flyinghead 688ba5c37d Fix autosort translucent poly bug (rayman). probably still not right... 2018-05-13 16:48:09 +02:00
Flyinghead b68f0a16a8 Increase FPS font size 2018-05-13 16:45:20 +02:00
Flyinghead c30548eb6a Added on-screen FPS counter. Fix clear screen issue when widescreen
enabled but not currently on.
2018-05-13 16:01:08 +02:00
Flyinghead 50a2e7e842 Revert dd9f77b4ab0b4c66fe7a2a717ed4b8cc1835e343: no gl_FragDepth in GLES 2 :( 2018-05-12 14:39:06 +02:00
Flyinghead dd9f77b4ab Changed z normalization to log scale 2018-05-12 13:26:50 +02:00
Flyinghead 717ee0b3ce Make rendering to texture buffer optional 2018-05-11 19:33:17 +02:00
Flyinghead b02eccd5c7 Fix performance problem with RTT waiting 2018-05-11 19:08:54 +02:00
Flyinghead 43c125c208 Better texture cache: avoid duplicate. Attempt to put the RTT texture in
the cache to avoid copy to/from vram.
2018-05-11 15:29:24 +02:00
Flyinghead 683cbbba3e Multipass rendering 2018-05-10 21:28:20 +02:00
Flyinghead 0f92189585 Fix translucent triangles not being autosorted(?) 2018-05-10 13:02:57 +02:00
Flyinghead b77843b927 Handle RTT texture stride (VT) 2018-05-09 15:08:13 +02:00
Flyinghead 136c3d6825 When rendering to texture, wait until after the frame is rendered to
unlock.
2018-05-09 14:46:06 +02:00
Flyinghead c13a42611b Implemented other RTT format conversions. 2018-05-09 13:04:48 +02:00
Flyinghead 5710aa08ed Remove all vram locks before reading back RTT buffer. Use RGBA/ubyte
format when RGB/565 is not available.
2018-05-09 12:28:38 +02:00
Flyinghead 2e4ec3a1ed Added RTT support 2018-05-08 18:47:00 +02:00
Flyinghead 9f13ded502 Enable Modifier Volumes. Fix modtrig buffer overflow and stencil reset. 2018-05-04 18:18:04 +02:00
Flyinghead cc88561d4a Implemented clipping (Daytona USA menus) 2018-05-02 15:41:42 +02:00
Flyinghead db0534d5dd Fix PunchThrough texturing on JGR with nvidia 2018-05-02 12:29:47 +02:00
Flyinghead fe71519d1b Write some silence on audio underruns 2018-05-01 17:25:42 +00:00
Flyinghead 5320c3adee Fixed previous screw up 2018-05-01 11:20:25 +02:00
Flyinghead a953a0baa7 Use ring buffer for samples and detect buffer underruns 2018-04-29 17:56:01 +02:00
Flyinghead 39e0f378cb OSX: add x64 target. Use JIT compiler. Clean exit. Use semaphore in core audio driver. Use layout-independent key codes to support int'l keyboards. Fixed GL window scaling. 2018-04-29 16:07:54 +02:00
Flyinghead 64a8ac1dd5 Add clean exit patch for x11 and 64-bit architecture 2018-04-27 16:54:15 +02:00
Flyinghead 35d3bd98d4 Disable fog table logging. Small optimization 2018-04-27 10:58:10 +00:00
Flyinghead b8f3d37df2 Disabled some logging (Mr.Driller) 2018-04-27 10:50:21 +00:00
Flyinghead 94aa7c9e83 Fix alsa backend clicking noise on underrun. Set the buffer size to match the [omx] audio_latency setting 2018-04-27 10:49:23 +00:00
Flyinghead 10bdf7f449 Clean exit when exit key is pressed 2018-04-27 10:37:56 +00:00
rrrh bcdf38da0a
Merge pull request #1130 from reicast/rrrh/osx-high-sierra
Rrrh/osx high sierra
2018-04-21 19:26:27 +02:00
Hugo Hackenstein d653d4e009 Remove unneeded stdlib include 2018-04-21 19:01:24 +02:00
Hugo Hackenstein 4fcb95a0d1 Mac compile on OSX - Remove deprecated malloc.h include and switch to stdlib.h instead 2018-04-21 19:00:36 +02:00
Stefanos Kornilios Mitsis Poiitidis 34b495baa7
Merge pull request #1098 from reicast/pr/1092
fix gdi track parsing in unix #1092
2018-04-19 20:51:13 +02:00
Stefanos Kornilios Mitsis Poiitidis 90e901f4a3 gdi: Normalize paths, add test gdi files 2018-04-18 22:28:05 +02:00
gizmo98 4a7d0b9e7e rpi: add option to use mesa or new vendor gl libs 2018-04-11 21:42:57 +02:00
gizmo98 b09356f3f7 Fix GCC6 "Bool" issue 2018-04-11 21:37:31 +02: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
Stefanos Kornilios Mitsis Poiitidis 4300951b51 gdi: Cleanup path code, use C++ strings 2018-04-11 11:40:15 +02:00
Stefanos Kornilios Mitsis Poiitidis fe30e58504 tactx: Actually use aligned alloc functions 2018-04-11 11:06:46 +02:00
Stefanos Kornilios Mitsis Poiitidis 894e9f1414 Cleanup changes for merge with master 2018-04-09 21:11:06 +02:00
hissingshark d1bac19a0a
Fixed blunder and changed OS test. 2018-04-05 16:58:23 +01:00
hissingshark dec5c7bdd2 Added helper functions for aligned memory (de)allocation 2018-04-05 12:13:49 +01:00
hissingshark 3ab9c22516
Fix issue from PR #1023 2018-04-03 17:38:30 +01:00
TwistedUmbrella fb418d568c Don't skip whitespace when reading filename
https://stackoverflow.com/a/6774866
2018-04-02 03:51:38 -04:00
TwistedUmbrella 052c5c1cb3 Fix for Windows missing definition of ssize_t 2018-04-02 02:54:30 -04:00
Stefanos Kornilios Mitsis Poiitidis c832df6d62
Merge pull request #1078 from nadenislamarre/nae_get_entry
cfg/get_entry: Validate that virtual section has virtual key before using it
2018-03-27 23:01:26 +02:00
i30817 3fdd7f50ea
fix gdi track parsing in unixx
Same problem as https://github.com/libretro/reicast-emulator/pull/24

in unix that iteration would not work if the path of the original .gdi file (where we are finding the 'parent directory') was:

1. not existent, ie a gdi on the same directory as the current. It was iterating until the index 3 and stop there. Disaster strikes later ofc, if the first characters weren't C:\ or other thing like that.
2. in a relative subdirectory that is 'small enough' ie: a/crazy-taxi.gdi. In this case the last '/' wouldn't be found, the derived string would be 'crazy-taxi.gdi' and the file not found ofc.

Anyway, this can be solved simply by searching the whole string and using a signed integer. It will go up to -1, stop iteration and increase to 0 on the len++.

Dunno if using relative subdirectories for the tracks on *other* platforms works because of the path separator being different from what's inside the gdi but with this code fixed it works on linux with / at least.
2018-03-25 18:53:18 +01:00
TwistedUmbrella 045ab285ca
Merge pull request #1068 from promi/fix-evdev_mapping
Fix #1051
2018-03-09 12:35:06 -05:00
Nicolas HOUDELOT 5c343a219c fix typo 2018-03-05 01:57:00 +01:00
Nicolas Adenis-Lamarre 8ba58a3d9d configuration parsing: get_entry must not look into virtual sections only
in emu.cfg, when i set rend.WideScreen = 1, its not read.
has_entry and get_entry doesn't use the same check,
thus while has_entry can return true, get_entry can not return the entry.

Signed-off-by: Nicolas Adenis-Lamarre <nicolas.adenis.lamarre@gmail.com>
2018-02-13 23:20:23 +01:00
Promi 5615694ea0 Fix #1051 2017-12-09 15:51:57 +01:00
TwistedUmbrella c80dbb1629 Create Xcode external build system for zlib 2017-06-17 09:18:27 -04:00
TwistedUmbrella 158eef7883 Remove fp.h leftovers after limping update 2017-06-04 13:38:56 -04:00
Stefanos Kornilios Mitsis Poiitidis 6ae93b31d1 ta: use 256-bit struct 2017-05-16 13:33:37 +02:00
Stefanos Kornilios Mitsis Poiitidis 8e3b9b434c Cleanup/optimize ta_thd_data32_i
- Use 128-byte copies
- read pcw from memory
2017-05-16 12:38:00 +02:00
verybadsoldier 7d49b2212d alsa-backend: initialize variable "sub unit dir". This variable is passed into alsa as a pointer. Alsa will write to it but also read (!) from it. So the read will give undesired behavior when variable is not initialized. Depending on current alsa-config/hardware it leads to an error "Invalid argument" when submitting the parameters by invoking "snd_pcm_hw_params" a few lines later.
Initializing the variable to -1 fixes it and means "set to exact value or less" (http://alsa.opensrc.org/HowTo_Asynchronous_Playback)
2016-10-18 22:31:31 +02: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
Stefanos Kornilios Mitsis Poiitidis 88c6bb6293 Merge pull request #905 from reicast/holzhaus/buffer-overflows
Fix some buffer overflows
2016-09-12 22:23:24 +02:00
Stefanos Kornilios Mitsis Poiitidis 3ed70a26fb Merge pull request #914 from ghost/issue-883
Update softrend.cpp
2016-09-12 22:19:39 +02:00
Twinaphex a5b7011c57 Merge pull request #929 from Hyell/master
Multiplayers with configuration file
2016-05-15 14:48:40 +02:00
Twinaphex 3cb39268a9 Merge pull request #926 from reicast/ftrc-fix
ftrc fix - revert back to nulldc defaults
2016-05-14 04:44:24 +02:00
Stefanos Kornilios Mitsis Poiitidis 7c5e49a6d2 dyna: Fix f2i canonical + x86 to saturate 2016-05-14 04:15:16 +03:00
twinaphex b606593774 ftrc fix - revert back to nulldc defaults 2016-05-13 14:44:53 +02:00
twinaphex ccfb6b635a Delete spurious code - fixes sprite palette issue with games like
Street Fighter III 3rd Strike/Capcom Vs SNk 2, possibly others
2016-05-13 14:37:47 +02:00
Hyell 469dda0e57 Update maple_cfg.cpp
Add players.nb option in emu.cfg. You can add 1-4 SegaController.
2016-04-26 17:06:45 +02:00
Hyell 6c49f0a852 Update maple_cfg.cpp 2016-04-25 12:10:12 +02:00
pvezien e093f679a8 Update softrend.cpp 2016-04-13 09:20:33 +12:00
Jan Holthuis 52afec6f7d Merge pull request #832 from reicast/holzhaus/sdl-opengl
Move to SDL2 for OpenGL 3.1 and GLES support
2016-03-04 15:13:25 +01:00
Jan Holthuis ef1994549b webui/server.cpp: Fix buffer overflow in callback_http() 2016-02-22 18:55:34 +01:00
Jan Holthuis 1868f1e91f imgread/gdi.cpp: Fix buffer overflow in load_gdi() 2016-02-22 18:55:34 +01:00
Jan Holthuis b106efde5f imgread/common.cpp: Add buffer size checks in case buffer size are changed later 2016-02-22 18:55:33 +01:00
Jan Holthuis 1a809fc60e hw/naomi/naomi_cart.cpp: Fix 3 buffer overflows in naomi_cart_LoadRom() 2016-02-22 18:55:33 +01:00
Jan Holthuis 9e937957f7 hw/flashrom/flashrom.h: Fix buffer overflow in MemChip::Load() 2016-02-22 18:55:33 +01:00
Jan Holthuis 5638b872ac cfg/ini.cpp: Fix buffer overflow in ConfigFile::parse() 2016-02-22 18:55:33 +01:00
Jan Holthuis 2866c879ac cfg/cfg.cpp: Mark possible buffer overflow 2016-02-22 18:31:36 +01: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
KrossX d4d782c71c Remove unused lines. 2016-01-22 15:08:29 -03:00
Jan Holthuis 6b1a02e971 Merge remote-tracking branch 'krossx/purupuru' into linux-rumble-support 2016-01-22 14:39:18 +01:00
KrossX c37c5c42e4 Right motor adjustment 2015-12-17 22:10:55 -03:00
Stefanos Kornilios Mitsis Poiitidis ad7e23d849 Merge pull request #846 from reicast/feat/ta-hash-logs
rend/if: Logging/verification of MD5(ta command list data)
2015-12-14 04:15:37 +01:00
Stefanos Kornilios Mitsis Poiitidis f868fc0655 Merge pull request #841 from reicast/wip/osx-ios-sound
apple: Add primitive core audio support
2015-12-14 04:06:01 +01:00
Stefanos Kornilios Mitsis Poiitidis 6c3c726019 softrend: Fix windows build 2015-12-14 03:11:40 +01:00
Stefanos Kornilios Mitsis Poiitidis af01baae75 linux/softrend: Optional via makefile, sse4.1 detection 2015-12-14 02:40:23 +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 c42986e63f Unplug PuruPuru Pack
Ooops.
2015-12-07 21:30:07 -03:00
KrossX 832eeeb419 Might help compilation in other platforms
I cannot verify it though.
2015-12-07 21:27:19 -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 20d43fb04e SDL: Remove some unused variables 2015-10-11 18:41:23 +02:00
Jan Holthuis 098e208a57 SDL: Drop SDL1.2 support and use SDL2 for GLES, too 2015-10-11 18:41:23 +02:00
Jan Holthuis b38813ca34 SDL: Add OpenGL3/SDL2 support 2015-10-11 18:41:23 +02:00
Stefanos Kornilios Mitsis Poiitidis 7d951b7697 rend/if: Logging/verification of MD5(ta command list data)
This allows for some very primitive auto-automated testing, by comparing known good frames.
As this happens on the TA level, it doesn't actually require rendering (and thus it's server friendly)

Two new config entries under the new [testing] namespace control behavior
- ta.HashLogFile, file where data should be logged, empty if not logging
- ta.HashCheckFile, past log to check against, empty if not checking

The emu will crash via verify if the logs don't match, and exit(1) if they do
2015-10-05 23:49:12 +02:00
Stefanos Kornilios Mitsis Poiitidis d85e4d8dff sh4/mmu: Don't use exceptions when disabled 2015-09-29 03:17:26 +02:00
Stefanos Kornilios Mitsis Poiitidis d99c803a0c sh4/mmu: Typo fixes, less log spam 2015-09-29 03:11:28 +02:00
Stefanos Kornilios Mitsis Poiitidis 4a060b5635 sh4/mmu: C++ exception based sh4 exception support. Won't run wince yet.
- Rewrite mem ops to only modify regs after exception path
- Throw & catch logic for interpreter that raises the exception
- Re-enabled some commented mmu code
2015-09-29 03:11:28 +02:00
Stefanos Kornilios Mitsis Poiitidis 4282395528 apple: Add primitive core audio support
Also made the project xcode 7 friendly
2015-09-29 03:10:19 +02: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
Stefanos Kornilios Mitsis Poiitidis 1dbc0d73df nixprof: Fix printf, PRI & friends don't exist on android 2015-09-17 01:06:47 +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 2a469b1def nixprof: fix notation for Hz 2015-09-03 21:08:39 +02:00
Gabriel Corona 8fc2d5d069 nixprof: only save STT_FUNC 2015-09-03 21:08:35 +02:00
Gabriel Corona ceca8c72bf nixprof: make it work with ELF64 2015-09-03 21:08:29 +02:00
Gabriel Corona c87307162d nixprof: Use sh_type insteaf of sh_name for section identification and use SHT_SYMTAB 2015-09-03 21:08:24 +02:00
Gabriel Corona a34a4d6f38 libelf: get section link for ELF64 2015-09-03 21:08:20 +02:00
Gabriel Corona ad068dcff2 Bind profiling in X11 to F10 2015-09-03 21:08:13 +02:00
Jan Holthuis e9beb86069 Merge pull request #798 from reicast/holzhaus/linux-use-xdg-config-home
Introduce separate config/data dirs (user & system wide)
2015-09-02 16:14:50 +02:00
Jan Holthuis 4267d51f90 stdclass: Make path getter function names more verbose 2015-09-02 15:49:00 +02:00
Jan Holthuis 4bd5154c9f stdclass: Use access to check if file is readable 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
Stefanos Kornilios Mitsis Poiitidis 3e76175c7a Merge pull request #818 from reicast/feat/import-nulldc-mmu
sh4/mmu: Import the old mmu implementation from nullDC.
2015-09-02 04:46:31 +02:00
Jan Holthuis c24a5faf5b Linux: Use $XDG_CONFIG_HOME if possible
This coommit makes reicast use $XDG_CONFIG_HOME from XDG Base Directory
Specification[1] if possible.

For backwards-compatability with older installations, it checks if the
old-style config directory at $HOME/.reicast exists. If so, it'll use
that instead.

All new installation should use $XDG_CONFIG_HOME/reicast (or if
that environment variable is not set: $HOME/.config/reicast).

[1] http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
2015-08-29 01:05:39 +02:00
Gabriel Corona 4ad6db345b nixprof: make private stuff static 2015-08-28 18:26:41 +02:00
Stefanos Kornilios Mitsis Poiitidis dcd77326cc sh4/mmu: Import the old mmu implementation from nullDC.
Reicast doesn't support exceptions yet, so this isn't of much use now,
and is intended mostly as documentation. nullDC used some call stack
hooking magic to handle exceptions, which was never generic and clean
enough to be worth the effort to port to Reicast.
2015-08-27 17:05:06 +02:00
Stefanos Kornilios Mitsis Poiitidis 78f4890535 Merge pull request #791 from sergiobenrocha2/libpng16
Update libpng to 1.6.18.
2015-08-28 13:50:58 +02:00
Jan Holthuis def93ca4be linux/x11: Map X11 ESC key to exit emulator 2015-08-28 04:06:36 +02:00
Jan Holthuis 62029a40b1 linux-dist/joystick: Disable legacy joystick API by default 2015-08-26 01:34:49 +02:00
Jan Holthuis 25b8bb5f29 linux-dist/evdev: Move *_inverted in mappings to compat section 2015-08-26 01:11:16 +02:00
Jan Holthuis 7eab958472 linux-dist/evdev: Print error msg if unable to open mapping file 2015-08-25 21:45:39 +02:00
Jan Holthuis c97727984d linux-dist/evdev: Add absolute mapping file path support 2015-08-25 21:45:39 +02:00
Jan Holthuis e3b796e812 linux-dist/evdev: Always show Keycode names if possible 2015-08-25 21:45:38 +02:00
Jan Holthuis b12f1fa199 linux-dist/evdev: Remove unecessary newlines 2015-08-25 21:45:38 +02:00
Jan Holthuis 785b819cb9 linux-dist/evdev: Introduce a more consistens button naming scheme 2015-08-25 21:45:38 +02:00
Jan Holthuis ceb2a11441 linux-dist/evdev: Clean up namespace a bit 2015-08-25 21:45:38 +02:00
Jan Holthuis 7018ca42c4 linux-dist/evdev: Make controller axes invertable 2015-08-25 21:45:37 +02:00
Jan Holthuis 72778bdf39 linux-dist/evdev: Replace evdev_keycodes.cpp/.h with dynamic libevdev call 2015-08-25 21:45:37 +02:00
Jan Holthuis e4e7e092c2 linux-dist/evdev: Add controller axis value autoconversion 2015-08-25 21:45:37 +02:00
Jan Holthuis 528cd5a793 linux-dist: Drop hardcoded mappings in favor of mapping files 2015-08-25 21:45:32 +02:00