Commit Graph

2537 Commits

Author SHA1 Message Date
Stiletto
9db7b63e9a Updates "2016" strings to "2017 where relevant.
Updates "2016" strings to "2017 where relevant.
2017-01-24 17:29:49 -05:00
Vas Crabb
edf64df1db srcclean (nw) 2017-01-22 15:37:37 +11:00
intealls
ff0f5b2241 rename variables to maintain consistent with coreaudio/sdl etc 2017-01-19 00:37:38 +01:00
intealls
86cbd2acf6 fix up initialization 2017-01-19 00:21:10 +01:00
intealls
9422c23001 Simplify the audio buffer and fix a wrap-around issue 2017-01-18 04:35:06 +01:00
intealls
08bdab3b65 fix allowed latency range 2017-01-17 23:50:06 +01:00
Curt Coder
ebac862e2b OS X Cocoa debugger: Improved view scroll behavior. [Curt Coder] 2017-01-17 22:29:38 +02:00
Curt Coder
f096bee09b OS X Cocoa debugger: Autoscroll log window. [Curt Coder] 2017-01-17 22:29:38 +02:00
intealls
9d1c8c45ae fix indentation, leading spaces to tabs 2017-01-15 00:05:18 +01:00
intealls
d406d4dd2f some osd_printf_verbose calls should be to osd_printf_error 2017-01-14 22:15:12 +01:00
intealls
f0887bfd0a fix memory leak and log error checking 2017-01-14 22:00:59 +01:00
intealls
9b3214af37 tabs to spaces 2017-01-14 21:58:36 +01:00
R. Belmont
32c13ad929 Merge pull request #1959 from intealls/pa_oct16
PortAudio library update and backend
2017-01-12 20:30:12 -05:00
Brad Hughes
8f8facffe9 UWP: Fix alt key input (nw) 2017-01-11 18:32:02 -05:00
inte alls
cd03a64284 Initial PortAudio backend with build script changes to support library version 20161030 2017-01-11 20:24:00 +01:00
Brad Hughes
03219d9fef Fix UWP compile (nw) 2017-01-11 12:20:00 -05:00
R. Belmont
311a56b958 Revert "New phosphor persistence shaders for HLSL" 2017-01-05 12:30:07 -05:00
ImJezze
ff28f114b4 Merge pull request #1843 from anikom15/hlsl
New phosphor persistence shaders for HLSL
2017-01-05 18:03:25 +01:00
Westley M. Martinez
2b95c8e50b Change cached texture format to floating point.
hlsl/phosphor.fx: Remove hacks

	ini/presets/raster.ini, ini/presets/vector-mono.ini,
ini/presets/vector.ini: Tweak presets

	src/osd/modules/render/d3d/d3dcomm.h,
src/osd/modules/render/d3d/d3dhlsl.cpp,
src/osd/modules/render/drawd3d.cpp: Change cache texture format to
floating point for precise for phosphor and ghosting shaders.
2017-01-04 17:44:46 -08:00
Westley M. Martinez
fad07814a0 Correct LCD ghosting INI and slider defaults. 2017-01-03 17:03:14 -08:00
Westley M. Martinez
91172125de Add LCD ghosting shader for Direct3D
hlsl/ghosting.fx: Add LCD ghosting shader

	hlsl/phosphor.fx: Remove LCD logic

	ini/presets/gameboy.ini, ini/presets/gba.ini,
ini/presets/lcd-matrix.ini, ini/presets/lcd.ini, ini/presets/raster.ini,
ini/presets/vector.ini: Update presets

	src/osd/modules/render/d3d/d3dhlsl.cpp,
src/osd/modules/render/d3d/d3dhlsl.h: Add LCD shader and sliders.  Allow
sliders to be adjusted for R, G, and B components.

	src/osd/windows/winmain.cpp, src/osd/windows/winmain.h: Add LCD
ghosting options.# Please enter the commit message for your changes. Lines starting
2017-01-02 15:42:33 -08:00
Miodrag Milanovic
a64328499c Fix compile with latest BGFX (nw) 2017-01-02 14:46:55 +01:00
Vas Crabb
4b016e6b1d Fix OSX build - no idea why it wasn't breaking before (nw) 2016-12-31 13:52:17 +11:00
Westley M. Martinez
7cda4860ec Scale and phosphor persistence sliders.
hlsl/phosphor.fx: Scale parameter into tau or gamma.

	src/osd/modules/render/d3d/d3dhlsl.cpp:
	src/osd/modules/render/d3d/d3dhlsl.h:
	src/osd/windows/winmain.cpp:
	src/osd/windows/winmain.h: Combine tau and beta sliders into one
slider labeled 'Time Constant'.
2016-12-30 15:40:30 -08:00
Westley M. Martinez
43d7ab3663 Implement LCD persistence shader.
hlsl/phosphor.fx: Do LCD persistence effect using boolean LCD.
LCD persistence is monochrome and thus does not have separate components
like phosphor persistence.

	src/osd/modules/render/d3d/d3dhlsl.cpp: Add slider for LCD
games.

	src/osd/modules/render/d3d/d3dhlsl.h: (BP) Add options for LCD
games.

	src/osd/windows/winmain.cpp: (BP) Add options for LCD games.

	src/osd/windows/winmain.h: (BP) Add options for LCD games.
2016-12-29 14:57:31 -08:00
Westley M. Martinez
0b6f935443 Implement new phosphor shader.
hlsl/phosphor.fx: Make changes to the pixel shader.  New
uniforms: Mode, Tau, Beta, Gamma.  Remove Phosphor.  Mode selects the
mode for phosphor simulation: off (no decay), exponential, inverse
power.  Tau is the time constant for exp. decay.  Beta and Gamma are
constants for inv-pow.

	src/osd/modules/render/d3d/d3dhlsl.cpp: Provide uniforms and add
sliders for new options.

	src/osd/modules/render/d3d/d3dhlsl.h: (BP) Provide new options.

	src/osd/windows/winmain.cpp: (BP) Provide new options.

	src/osd/windows/winmain.h: (BP) Provide new options.
2016-12-29 14:57:28 -08:00
Brad Hughes
b47ec24df6 Move special windows.h include directives to build defines (nw) 2016-12-28 15:07:28 -05:00
Vas Crabb
127fd9b427 first srcclean pass (nw) 2016-12-25 13:57:31 +11:00
Vas Crabb
44eb44996a Fix #1802 (uninitialised memory read as debugger command history) and clean up a little 2016-12-17 08:12:07 +11:00
arbee
fcf35c1b30 fix compile with Xcode 8.2 (nw) 2016-12-15 22:05:15 -05:00
mahlemiut
733df166a3 debugimgui: sort directory entries in mount dialog, as zippath_readdir() does not guarantee entries are in any particular order. 2016-12-16 14:34:14 +13:00
Westley M. Martinez
e874afa308 Merge remote-tracking branch 'refs/remotes/mamedev/master' into hlsl 2016-12-13 12:06:41 -08:00
Westley M. Martinez
70a9637eb5 Simplify implementation of delta_time.
src/osd/modules/render/d3d/d3dhlsl.cpp: Move time members
calculation to shaders::begin_draw.

	src/osd/modules/render/d3d/d3dhlsl.h: Remove update_t.
2016-12-13 10:27:55 -08:00
Westley M. Martinez
fb747b6ca4 Correct comments regarding delta_time. 2016-12-12 22:59:44 -08:00
Westley M. Martinez
40e71b93ae Add signal so that any future shaders relying on delta_time do not
interfere with each other.

	src/osd/modules/render/d3d/d3dhlsl.cpp: update_t flag is reset
for each emulated screen 0.

	src/ods/modules/render/d3d/d3dhlsl.h: Add update_t.
2016-12-12 22:34:14 -08:00
Westley M. Martinez
77fd0232e6 Fix phosphor shader to work properly for multi-screen games and
multi-window use.

	hlsl/phosphor.fx: Update semantics.

	src/osd/modules/render/d3d/d3dhlsl.cpp: Implement
shaders::delta_time member function.

	src/osd/modules/render/d3d/d3dhlsl.h: Add acc_t and delta_t
members for use by shaders::delta_time.  Member function returns the
amount of time since itself has been called, for use by time-dependent
shaders.
2016-12-12 22:09:59 -08:00
Westley M. Martinez
35035aae28 Remove iostream (used for debugging) 2016-12-11 12:11:13 -08:00
Westley M. Martinez
eba9550c42 Fix phosphor persistence shader behavior based on time.
hlsl/phosphor.fx: Add calculation time passed to be used by
shader.

	src/osd/modules/render/d3d/d3dhlsl.cpp: Make pixel shader
calculate the current pixel by factoring in the amount of time which has
passed since the last rendering.
2016-12-11 12:01:43 -08:00
Vas Crabb
c8f1954467 XML refactoring:
* move stuff to namespace util::xml
* scope down some enums
* split config load/save delegate types
* make config load take const so it can't mangle data
2016-12-11 18:15:41 +11:00
mahlemiut
844d4cbe45 debugimgui: lighten combo box list so that it's easier to read (nw) 2016-12-04 19:43:27 +13:00
Vas Crabb
2119b2bfb4 Merge pull request #1749 from bradhugh/dynamic_api
Created DYNAMIC_API macros for dynamic bind helper classes
2016-12-02 05:50:45 +11:00
Brad Hughes
6acd017c3f Update name of DYNAMIC_API macros (nw) 2016-12-01 13:35:58 -05:00
Brad Hughes
ec4acf4b36 Small 32 bit windows monitor module fix (nw) 2016-11-28 07:36:50 -05:00
Vas Crabb
7238415d1f srcclean (nw) 2016-11-27 09:56:49 +11:00
Vas Crabb
51f33cf106 Fix key names with -keyboardprovider win32 2016-11-25 12:10:14 +11:00
Vas Crabb
361f0a7691 clean up tabulation, fix some things (nw) 2016-11-25 04:12:04 +11:00
Scott Stone
30cda1d3e5 A round of spelling/typographical fixes to source comments (nw) 2016-11-24 09:24:01 -05:00
Brad Hughes
a10fcd31d3 Simpler low-cost implementation making modules and function pointers class members instead (nw) 2016-11-21 08:04:47 -05:00
Brad Hughes
39b6789c68 Fix compile issue by using std::ref wrapper (nw) 2016-11-20 15:15:15 -05:00
Brad Hughes
af289d1c30 Changing singleton to be thread safe (nw) 2016-11-20 13:42:34 -05:00
Brad Hughes
7e327d5d4e Remove LoadLibrary hack from UWP (nw) 2016-11-20 13:41:47 -05:00
Brad Hughes
fcb9f8f548 fix gcc compile issue (nw) 2016-11-20 13:41:46 -05:00
Brad Hughes
3ca391bb3a Update dwrite debugging functions with DYNAMIC_API (nw) 2016-11-20 13:41:46 -05:00
Brad Hughes
78a30a25b0 Update DirectWrite font provider to use DYNAMIC_API (nw) 2016-11-20 13:41:45 -05:00
Brad Hughes
17c9b0b784 Created DYNAMIC_API macros for cleaner definition of dynamically linked functions 2016-11-20 13:41:44 -05:00
Vas Crabb
8179a84458 Introduce u8/u16/u32/u64/s8/s16/s32/s64
* New abbreviated types are in osd and util namespaces, and also in global namespace for things that #include "emu.h"
* Get rid of import of cstdint types to global namespace (C99 does this anyway)
* Remove the cstdint types from everything in emu
* Get rid of U64/S64 macros
* Fix a bug in dps16 caused by incorrect use of macro
* Fix debugcon not checking for "do " prefix case-insensitively
* Fix a lot of messed up tabulation
* More constexpr
* Fix up many __names
2016-11-19 05:38:48 +11:00
Brad Hughes
0fb4fe79f8 UWP: keyboard scancodes start at 1 (nw)
Also thread synchronization which will be needed later when we have multiple windows (nw)
2016-11-17 09:59:29 -05:00
Brad Hughes
98f22fc6de Change window handle storage to template instead of void* (nw) (#1725)
* Change window handle storage to template instead of void* (nw)
2016-11-17 00:32:26 -05:00
Vas Crabb
54444fecff patch up Qt debugger for new xmlfile API (nw) 2016-11-17 11:12:16 +11:00
Miodrag Milanovic
d5bf30edb8 Fix compilation under VS2017 (nw)
default_semantics is used by apply so need to be public
2016-11-16 21:00:29 +01:00
Brad Hughes
0ca7ac3b2a UWP: Missing gamepad reset caused control sticking (nw) 2016-11-15 18:05:43 -05:00
Brad Hughes
4681199d4b UWP: Hotkeys for gamepad plus more time for gamepad discovery (nw) 2016-11-15 16:19:48 -05:00
Brad Hughes
13a496efd7 UWP: Better keyboard key names (nw) 2016-11-15 14:04:28 -05:00
Brad Hughes
0f060802b5 UWP: Enable gamepad support and update keyboard support (nw) 2016-11-14 21:06:42 -05:00
Brad Hughes
00cb280491 UWP: Different default font. Tahoma not available on XBOX (nw) 2016-11-14 20:44:38 -05:00
Brad Hughes
6b390947c7 UWP: Output verbose to debug plus turn off view scaling (nw) 2016-11-14 20:43:40 -05:00
yz70s
84cf1e1108 indent brace (nw) 2016-11-14 20:52:44 +01:00
Miodrag Milanovic
f999805738 Implemented GetFileSize and and proper winrt file open (nw) 2016-11-12 15:42:47 +01:00
Miodrag Milanovic
b73126e85a added OPTION_HOMEPATH to point to read/write folder,for now used by LUA scripts (nw)
Copied all needed files so plugins could be started under UWP
2016-11-12 15:27:22 +01:00
Miodrag Milanovic
b9a6f57494 UWP, added support to store files on Local storage (nw) 2016-11-12 09:42:25 +01:00
Miodrag Milanovic
6b18f90438 Revert "Added IS_ENABLED, so we have compiler check for non used part, it is checked but not compiled in (nw)"
This reverts commit c0407f073b.
2016-11-12 09:12:36 +01:00
Miodrag Milanovic
e71e37e54f Revert "using of IS_ENABLED in files used in tiny build (nw)"
This reverts commit 1efccdd38d.
2016-11-12 09:12:35 +01:00
Brad Hughes
2b6ce2a5c3 Enable sound for UWP (well that was easy) (nw) 2016-11-11 19:03:49 -05:00
Miodrag Milanovic
1efccdd38d using of IS_ENABLED in files used in tiny build (nw) 2016-11-11 20:43:19 +01:00
Brad Hughes
2e49823a06 Add basic keyboard input to UWP (nw) 2016-11-11 12:58:41 -05:00
Miodrag Milanovic
c0407f073b Added IS_ENABLED, so we have compiler check for non used part, it is checked but not compiled in (nw)
false and true now used instead of integer where used as bool
2016-11-11 18:50:14 +01:00
Miodrag Milanovic
172cadfd3e removed not used macros (nw) 2016-11-11 16:20:19 +01:00
Miodrag Milanovic
8dfbb3e6d1 let osd_process_kill just kill, rest is on osd users, watchdog only in this case (nw) 2016-11-11 16:18:21 +01:00
Miodrag Milanovic
0d87fd7cb8 Small cleanup (nw) 2016-11-11 16:12:02 +01:00
Miodrag Milanovic
7c765ea147 No need for osd_malloc, osd_malloc_array and osd_free (nw)
MALLOC_DEBUG not applicable anymore since we use new to allocate in 99.9% of cases
2016-11-11 16:12:01 +01:00
Miodrag Milanovic
5c0edceec3 clipboard handling for uwp (nw) 2016-11-11 16:12:01 +01:00
Miodrag Milanovic
f3b21bd04e simplified memory allocation for osd_module (nw) 2016-11-11 14:03:22 +01:00
Miodrag Milanovic
a9d260cf14 Fixed USE_DISPATCH_GL compile, seams no-one is actually using it since it is broken for a while (nw) 2016-11-11 12:27:44 +01:00
Miodrag Milanovic
d8bf7a88e8 MALLOC_DEBUG part is not able to compile on UWP (nw) 2016-11-11 10:11:16 +01:00
Miodrag Milanovic
dac02ddf8e Cleanup (nw) 2016-11-11 09:50:32 +01:00
Miodrag Milanovic
46fa51e60e move asset files to proper place 2016-11-11 09:43:42 +01:00
AJR
2d969228c6 Unbreak non-Windows builds yet again (nw) 2016-11-10 20:59:00 -05:00
Brad Hughes
477e47ee5f More UWP work - the UI actually renders (nw) 2016-11-10 18:58:22 -05:00
Brad Hughes
bcabf45f08 UWP builds again but by no means working (nw) 2016-11-10 16:26:05 -05:00
Miodrag Milanovic
9c364cdfa9 Adding video and window code to UWP(nw) 2016-11-10 14:53:56 +01:00
Miodrag Milanovic
a18497e7a2 Some more work on UWP (nw) 2016-11-10 13:13:51 +01:00
AJR
f2242fea78 Fix builds without OSD_UWP (nw) 2016-11-09 14:16:02 -05:00
Miodrag Milanovic
cddd8bbe7a Add more UWP support (nw) 2016-11-09 15:44:44 +01:00
Miodrag Milanovic
0d1f5b6be4 Make 3rdparty compile for UWP and start adding new OSD for UWP based on previous Brad work (nw) 2016-11-09 14:53:19 +01:00
Miodrag Milanovic
b80710c868 Make shaders compile dx9 and dx11 only on windows (nw) 2016-11-08 18:17:54 +01:00
Miodrag Milanovic
ce0e6e6a3e Add _WIN32_WINNT so H file could be used and outside OSD section (nw) 2016-11-07 10:37:37 +01:00
Miodrag Milanovic
2027d59e7f Do not use FUNC in delegate where applicable (nw) 2016-11-06 14:11:55 +01:00
ImJezze
51a81ef3aa hlsl: fixed games with off-screen backdrop artworks
- e.g. atarifb, bowler
2016-11-02 21:39:11 +01:00
Miodrag Milanovic
e2d58b6a16 ASIO - header only mode (nw) 2016-11-02 14:34:06 +01:00
therealmogminer@gmail.com
e86a0be234 Compile fix, (nw) 2016-10-31 13:03:14 +01:00
therealmogminer@gmail.com
eee821eecc Kill off another d3d optimization, (nw) 2016-10-31 13:02:22 +01:00
therealmogminer@gmail.com
a9f739df25 Hopefully fix the D3D9 issues people are having (nw) 2016-10-31 11:03:59 +01:00
Jezze
c4b8e48b57 Fixed MT#06417
- cache texture/surface were not released when render target was destructed
2016-10-30 22:22:24 +01:00
R. Belmont
86548bc507 Merge pull request #1557 from ajrhacker/inputdev
Polymorphize input_device and input_class; move to separate source fi…
2016-10-29 20:41:28 -04:00
Branimir Karadžić
a3b4058bf7 Updated BGFX and BX and recompiled shaders (nw) 2016-10-29 09:11:50 +02:00
Justin Kerk
19e9aa6729 Prevent -Wexpansion-to-defined warning in recent Clang (nw) 2016-10-28 21:59:49 +00:00
Vas Crabb
0671e2c044 Merge tag 'mame0179'
Tag for 0.179
2016-10-26 11:43:18 +11:00
Vas Crabb
d9c5fcaf6d final srcclean 2016-10-26 10:47:23 +11:00
Miodrag Milanovic
31127f8613 Fixed linking warning for ASIO (nw) 2016-10-25 20:12:30 +11:00
AJR
99c705f9de Polymorphize input_device and input_class; move to separate source file (nw) 2016-10-24 17:28:35 -04:00
therealmogminer@gmail.com
e01bcfd209 Fix visual corruption introduced a few changelists ago by me, nw 2016-10-24 19:15:46 +02:00
Miodrag Milanovic
60d3061fbc Fixed linking warning for ASIO (nw) 2016-10-24 18:26:10 +02:00
smf-
afee3ba75f fix unused variable error (nw) 2016-10-24 14:51:18 +01:00
Olivier Galibert
e33eb48ad0 SDL: fixed alt-tab from locking up the window system on Linux and Mac. [Hans Ostermeyer] 2016-10-24 10:42:30 +02:00
arbee
d6bb760543 Apollo changes: [Hans Ostermeyer]
- Enable create when non-existing image name is given for omti8621 and sc499

SDL: fixed alt-tab from locking up the window system on Linux and Mac. [Hans Ostermeyer]
2016-10-23 21:56:21 -04:00
therealmogminer@gmail.com
a684594b25 Make d3d9 a little more discerning in what level of bad hardware it will allow, nw 2016-10-23 20:53:07 +02:00
Vas Crabb
129c0feeed srcclean (nw) 2016-10-23 22:36:24 +11:00
Jezze
d9ae40b9fe Reduced defocus effect to one pass (HLSL/BGFX)
- removed second defocus pass
- limited defocus stength to a maximum of 2.0
2016-10-22 22:56:16 +02:00
Jezze
ef16086fea Disabled clearing of render targets in several passes (HLSL)
- which was quite a performance overhead and not necessary because the shaders fill every texel of a target without blending
2016-10-22 22:56:16 +02:00
Jezze
fcba2195bf Fixed null reference exception (D3D/HLSL)
- when toggling from fullscreen to window mode
2016-10-22 22:56:15 +02:00
Jezze
390e6bd43d Refactored d3d_render_target (nw)
* removed cashe_target class
* moved cashe texture and surface to d3d_render_target class
* render targets are now created per screen not per screen texture
* removed useless creation of render targets for ui textures
2016-10-22 22:56:15 +02:00
therealmogminer@gmail.com
e226786d29 -ie15: Improved performance by using a timer to determine hblank. [Ryan Holtz] 2016-10-22 19:13:47 +02:00
Miodrag Milanovic
a3d7454412 final cleanup of TRUE/FALSE, left only in windows section where it represent BOOL (nw) 2016-10-22 19:07:11 +02:00
Miodrag Milanovic
88b5a5c09f Cleanup linux OSD (nw) 2016-10-22 18:42:47 +02:00
Miodrag Milanovic
346a42383e fixed benchmarks build and cleanup U64 and S64 macro definition, it is now in standard (nw) 2016-10-22 14:32:36 +02:00
Miodrag Milanovic
ddb290d5f6 NOTICE (TYPE NAME CONSOLIDATION)
Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8
also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
2016-10-22 13:13:17 +02:00
Miodrag Milanovic
2bfd3a6ab2 [[noreturn]] instead of ATTR_NORETURN (nw) 2016-10-22 12:10:50 +02:00
Miodrag Milanovic
23ad94073f use standard types uintptr_t, char16_t and char32_t instead of FPTR, utf16_char, unicode_char (nw) 2016-10-22 11:31:49 +02:00
Miodrag Milanovic
e2f54f5333 Cleanup, TIMER_CALLBACK was only in unused parts (nw) 2016-10-21 16:26:22 +02:00
Miodrag Milanovic
d2e8f61149 dynamic_buffer is just std::vector<UINT8> (nw) 2016-10-21 12:35:05 +02:00
Tomer Verona
f6fdcc918a Merge remote-tracking branch 'mamedev/master' 2016-10-09 21:42:35 -07:00
Tomer Verona
28dfa7ce84 Incorporate product / instance directinput device ids
This change generates a more unique device id for derect input devices
by incorporating the product unique identifier and instance unique
identifier. This allows for better disambiguation on device id when
mapping controllers via mapdevice config settings.
2016-10-09 21:42:29 -07:00
AJR
0e55a0bfc0 Misc. keyboard input improvements
- Add BS, Tab, 00, 000 keys common on add-on keypads as input items; SDL may recognize these, but DirectInput does not
- Assign Keypad 00 and Keypad 000 in several drivers' input lists
- Add SDL keycode for "cancel" key
- Add keypad keys as alternates to natural keyboard
- Move has_keyboard() out of the core; enabled() test is unnecessary now that all optional keyboards are slot devices (nw)
2016-10-08 21:13:12 -04:00
Miodrag Milanovic
3628549385 Added more warning disable to support compile on various clang versions (nw) 2016-10-08 09:37:31 +02:00
Miodrag Milanovic
45aeed2474 Fix for old GCC on this place as well (nw) 2016-10-07 15:17:16 +02:00
Miodrag Milanovic
31c8b10479 Fix compile (nw) 2016-10-07 14:56:47 +02:00
Miodrag Milanovic
c0a5494de5 Replaced code usage of libuv with asio library (nw) 2016-10-07 14:15:01 +02:00
Vas Crabb
9ae59fb76b Merge pull request #1469 from npwoods/new_strconv_overloads
Adding new string conversion overloads
2016-10-05 21:08:28 +11:00
Nathan Woods
85ba2fde28 Bulk renaming of Windows string conversion functions
utf8_from_[a|w|t]string ==> osd::text::from_[a|w|t]string
[a|w|t]string_from_utf8 ==> osd::text::to_[a|w|t]string
2016-10-03 23:20:25 -04:00
Nathan Woods
8e67c061b5 Collapsing string_source class hierarchy 2016-10-03 21:50:09 -04:00
Nathan Woods
6549ec8ccf Eliminated virtual function use in strconv.cpp
Take note that in practice, this does not actually change the compiled code because the optimizer should be smart enough to remove the need for vtable lookups as a part of optimization (this is definitely true for MinGW).  If you really prefer, I can collapse the class hierarchy into a single templated class that just has overloaded constructors - this also doesn't actually change the compiled code, but I can make the change if you wish.
2016-10-03 21:50:04 -04:00
Nathan Woods
314a7e7906 Fixing const-ness on prototypes 2016-10-03 21:49:58 -04:00
Brad Hughes
3e39547742 Fix two leaks (nw) 2016-10-03 16:51:05 -04:00
Brad Hughes
d4b8b48127 Fix use of uninitialized stack memory in drawd3d.cpp (nw) 2016-10-03 13:45:10 -04:00
Nathan Woods
8695bdac87 Refactored to eliminate duplicate logic, sidestepped concerns about writing NUL into NUL terminator byte in std::[w]string 2016-10-02 12:43:09 -04:00
Nathan Woods
c0ff37c30d Adding new string conversion overloads
[a|w|t|utf8]_from_[a|w|t|utf8_]string(xyz.c_str()) seems to be common enough to justify overloads.  Also, I'm explicitly assuming that it is legal to override the NUL pointer within a C++ basic_string (e.g. - s[s.size()] = '\0').  As far as I can tell, this seems to be legal - please don't shoot if I am wrong.
2016-10-01 14:53:32 -04:00
Brad Hughes
d08fa3dde6 win32_output: Register window messages before creating window (nw) 2016-09-30 09:53:52 -04:00
Brad Hughes
3ed5ea1020 We ran out of room for OSD modules (nw) 2016-09-30 01:11:11 -04:00
Jezze
68036515ba Fixed aspect ratio of rounded corners (nw) 2016-09-29 15:19:44 +02:00
Vas Crabb
d7a9eeb64f use floorf rather than floor for float->float 2016-09-28 23:57:34 +10:00
Jezze
ecf1e166fc Fixed several small issues in HLSL/BGFX
* fixed target texture dimension when -intoverscan is used (this fixes the appereance of scanline and shadow mask)
* added target_scale and screen_count uniforms
* rounded corners now remain aligned with screen bounds when -intoverscan is used (single screen only)
2016-09-28 15:30:43 +02:00
Nathan Woods
69f23d3d84 Changed win_get_window_text_utf8() to return std::string
This eliminated an unnecessary conversion step.

Also, I have no idea what this WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) stuff is; it is hard to understand how it could possibly be correct because it ignores the 'window' parameter
2016-09-25 22:22:18 -04:00
Vas Crabb
33b2c73395 srcclean (nw) 2016-09-26 04:51:59 +10:00
Brad Hughes
31a9c62d1f Merge pull request #1405 from tverona1/master
Adding support for stable controller id's
2016-09-20 17:54:34 -04:00
Tomer Verona
845b36dae2 Adding id() property to input_device
This change adds id() property to input_device, which represents the
unique device id. This allows the osd layer when creating a device to
pass a friendly display name along with a unique identifier.

Currently the device id is only used to map a physical controller device
to controller id, but can be used more generally in the future. For raw
input devices, we use the full raw input name as the device id. For all
other devices, we fall back to device name as the device id. The
"uniqueness" of the device id is not currently enforced in code.
2016-09-20 12:19:58 -07:00
Brad Hughes
026487927f Fix compile for DirectWrite font provider and make it compile with normal windows build 2016-09-16 20:06:30 -04:00
Brad Hughes
bf52d11826 Convert OSD monitor info to modules plus add DXGI implementation 2016-09-14 08:32:05 -04:00
Tomer Verona
2bd18d5fea Support for configuring device to conrtoller id
This change adds support for configuring device to conrtoller id. This
allows for stable controller ids even if USB devices are plugged /
unplugged, system is rebooted, etc.

See documentation for additional context.
2016-09-12 18:35:36 -07:00
Brad Hughes
db54570694 Each mouse should track its own double-click status (nw) 2016-09-07 11:37:32 -04:00
Miodrag Milanovic
9a8964d5d0 Fix build (nw) 2016-09-03 13:53:44 +02:00
Miodrag Milanovic
d193abb0ad Update BGFX and BX packages and update MAME code to support new API (nw)
Generated missing shaders (nw)
2016-09-03 13:30:42 +02:00
Brad Hughes
5281612e2a Partially fix SDL joysticks with same name
Fixes #1334
2016-08-31 18:01:53 -04:00
Vas Crabb
c960435d3e srcclean and translation regeneration 2016-08-29 02:02:04 +10:00
Miodrag Milanovic
85f7413a69 Cleanup for VS2015 build (nw) 2016-08-28 11:58:12 +02:00
Brad Hughes
9af893666a Warp mode for relative mouse on OSX SDL 2.0.4
Fixes #1232
2016-08-27 14:23:34 -04:00
Miodrag Milanovic
62fe8b8980 some C++14 features are not supported by VS2013. VS2015 is free for home use so no need for legacy support (nw) 2016-08-27 11:15:38 +02:00
mahlemiut
cf8060d762 debugimgui: added very crude create image dialog 2016-08-25 20:14:14 +12:00
Brad Hughes
ab6bca008d Put back accidentally replaced conditional compile directive (nw) 2016-08-22 18:19:52 -04:00
Brad Hughes
f4b5092203 cleanup missed x11 input module (nw) 2016-08-22 18:16:52 -04:00
Brad Hughes
7d3ce203b5 osd input code cleanup (nw) 2016-08-22 15:02:56 -04:00
Nathan Woods
db53f51ffc Now reporting Windows ERROR_INVALID_NAME as osd_file::error::NOT_FOUND 2016-08-19 08:23:56 -04:00
Brad Hughes
6b83b0dbee Minor XAudio2 tweak to not always submit buffers if not needed (nw) 2016-08-17 23:40:50 -04:00
mahlemiut
8af56d841a debugimgui: added images menu, with crude file select dialog [Barry Rodewald] 2016-08-16 21:34:48 +12:00
Antonio Giner
9f21eabe21 Try to fix audio delay regression caused when fixing -refreshspeed for
-sound xaudio2
2016-08-15 00:02:26 +02:00
Vas Crabb
a2b99f8149 Attempt to fix mouse state on startup in SDL builds by initialising members 2016-08-14 13:15:54 +10:00
Jezze
7dc76d6501 - already fixed scanline issue also applied for swapped orientation (nw) 2016-08-13 20:30:56 +02:00
Antonio Giner
30cf980dd6 Fix audio distortion with -refreshspeed and -sound xaudio2 (MT 06199) 2016-08-11 14:07:51 +02:00
AJR
7835458e51 Remap "P1 Mahjong Score" to / key for OS X 2016-08-09 21:58:01 -04:00
R. Belmont
b25aca6177 Merge pull request #1179 from Pitou1/master
Patch to fix the Gun#2 not working in Mame, please refer to Bug id 61…
2016-08-02 14:06:35 -04:00
Vas Crabb
8e07fb8117 Fix UTF-16 encode, pass UTF-16 to Windows character drawing (unfortunately still no nice speaker icon) 2016-08-02 18:24:14 +10:00
Patrick Lessard
87a73f6f51 Patch to fix the Gun#2 not working in Mame, please refer to Bug id 6185 on Mametesters. 2016-08-02 00:18:36 -04:00
Vas Crabb
f04a3f1b9d Fix Qt debugger 2016-08-01 20:56:38 +10:00
Vas Crabb
15e7be7ac8 Turn image init/validate into scoped enums to avoid accidental casts to/from integer and boolean types
The image error should also be turned into a scoped enum - the menus were assuming it was the same thing as an init result
2016-08-01 18:47:22 +10:00
Miodrag Milanovic
6f5e223853 for bool type use true and false (nw) 2016-07-31 20:02:56 +02:00
Vas Crabb
0ceae26bb4 patch up on OSX 2016-08-01 01:37:39 +10:00
Vas Crabb
a0ce6c3b37 fix after pass through the diff 2016-08-01 01:20:03 +10:00
Miodrag Milanovic
f127621e13 made constexprs lower case and used constexpr for returning input value as well for rest of defines in osdcomm.h (nw) 2016-07-31 16:47:26 +02:00
Miodrag Milanovic
d20fa27c1b fix vs2015 build (nw) 2016-07-31 16:13:12 +02:00
Vas Crabb
6bf9f2fd9c macros should be turned into constexpr or they can't be used in many situations they were previously use in
the silly _partialNN functions are necessary because MSVC doesn't support C++14 properly
2016-07-31 23:50:41 +10:00
Miodrag Milanovic
185f5059fb algorithm-> utility where appropriate, fix imgtool (nw) 2016-07-31 15:37:37 +02:00
Miodrag Milanovic
2a87e99b21 fix osx compile (nw) 2016-07-31 15:24:28 +02:00
Miodrag Milanovic
9667c6a8cc std::min and std:max instead of MIN and MAX, also some more macros converted to inline functions (nw) 2016-07-31 14:41:02 +02:00
Miodrag Milanovic
4887ce1844 Cleanups and version bump 2016-07-27 09:26:22 +02:00
Nathan Woods
23175a3091 Using decltype() and removing +1/-1 "dance" 2016-07-25 07:57:54 -04:00
Nathan Woods
4a9e9742fd Fixed off by one issue and other cleanups requested by Vas 2016-07-25 07:49:26 -04:00
Nathan Woods
ab73291e47 Changed strconv.[cpp|h] functions to return their results as std::string and std::wstring 2016-07-24 22:55:00 -04:00
Miodrag Milanovic
d6179859ad Fix order of evaluation making imgui debugger not fail on starting without driver selected (nw) 2016-07-23 11:26:09 +02:00
therealmogminer@gmail.com
1cf1d00b7a Get sun4_40 happy with SCSI 2016-07-22 03:06:42 +02:00
Giuseppe Gorgoglione
14f5329fd4 BGFX: fix crash when bgfx effect folder is not present or incomplete
BGFX renderer requires some effects also when post-processing is disabled. If they are not available, MAME complains about missing effect files, but then goes on and crashes soon after printing the backtrace. This fix just exits gracefully when effect files are incomplete and falls back to a different renderer if the bgfx folder is missing at all, warning the user in advance.
2016-07-18 17:21:09 +02:00
ImJezze
89af2864ed Fixed MT #6291
* fixed copy of texture data to bitmap in BGFX
* changed AVI dimension to a lowest integral multiple of 4
  (2 was still to low for most video players, e.g. VLC)
* added audio to AVI record in HLSL
* HLSL AVI record now uses window dimension instead of snap dimension
2016-07-16 20:54:37 +02:00
ImJezze
502e02642e Fixed dimension of high-res snapshots (Alt + 12) and AVI records (Alt + Shift + F12) when screen dimension is swapped 2016-07-16 14:42:42 +02:00
R. Belmont
13c8e76cf7 Merge pull request #1093 from stevenc99/kfreebsd
GNU/kFreeBSD support
2016-07-16 06:09:32 -04:00
Scott Stone
670748c6e4 Assorted typos fixed (MT #6295, 6296) (nw) 2016-07-15 12:38:06 -04:00
Steven Chamberlain
b59412aa2c kfreebsd: use termios.h not just on regular FreeBSD 2016-07-13 13:31:10 +01:00
arbee
4a9c6b1cd0 Apollo changes: [Hans Ostermeyer]
- Keyboard mapping adjusted to fit current MAME
- Fixed screen raw parameters
- Fixed disp.dex Test 20 (Video SYNC Gen. Add. Test) for color displays

3c505: The Ethernet frame check sequence is now appended to transmit data [Hans Ostermeyer]

input_common: fixed 0.172 regression for non-US keyboards [Hans Ostermeyer]
2016-07-12 21:35:31 -04:00
Vas Crabb
3eb0e84041 fix build on debian ppc64 with -maltivec (nw)
problem is caused by <SDL2/SDL_cpuinfo.h> puling in <altivec.h> which #defines vector, pixel and bool
however when the compiler is in Apple Altivec mode, these are context-sensitive keywords and don't need to be #defined
we never need the #defines in our own code because we use the GCC-specific __vector instead of vector
so we trick the header to think the compiler is in Apple Altivec mode to suppress the #defines
2016-07-12 23:17:19 +10:00
Robbbert
1a1a22d6ca windebug: images: added Create option. 2016-07-09 20:41:42 +10:00
Robbbert
44335fc4f6 windebug: in images menu, added support for 7z. 2016-07-09 14:14:56 +10:00
Vas Crabb
13d8279e49 MT6284 flush stdout/stderr before killing process 2016-07-08 16:47:06 +10:00
Vas Crabb
ca5cf4982e Make behaviour slightly friendlier with hlsl_write option (nw) 2016-07-07 21:01:00 +10:00
Vas Crabb
6e64e3314a Patch up d3dhlsl as well (nw) 2016-07-07 20:20:38 +10:00
Vas Crabb
717e90b357 Restore ability to supply explicit name for bgfx AVI output file, auto causes it to generate ascending snap names 2016-07-07 19:10:17 +10:00
Vas Crabb
2c3fdc5221 POSIX implementation for valid filename/path character functions 2016-07-07 16:50:39 +10:00
Vas Crabb
630e7a2e98 Merge branch 'file_create_and_format_refactorings' of https://github.com/npwoods/mame 2016-07-07 16:03:39 +10:00
Vas Crabb
d68203e283 Merge pull request #1035 from GiuseppeGorgoglione/master
Direct3D HLSL: use aviwrite to record avi movies [GiuseppeGorgoglione]
2016-07-07 12:33:47 +10:00
Nathan Woods
34d537338f Changed osd_is_valid_filepath_char() to block 0x7F and C1 control characters 2016-07-05 22:47:16 -04:00
Nathan Woods
2ea76d70ea Create osd_is_valid_filename_char() and osd_is_valid_filepath_char() functions to check to see if a character is legal, and moved retired is_valid_filename_char() in filecreate.cpp. POSIX versions not implemented yet. 2016-07-05 22:19:49 -04:00
Vas Crabb
f736c7c6dd explicit <cstdlib> (nw) 2016-07-06 11:45:43 +10:00
Vas Crabb
1bd116c5c8 use allocating mode of ::realpath by default (nw) 2016-07-05 22:50:14 +10:00
Giuseppe Gorgoglione
85740d73e6 Remove bgfx_avi_name and hlsl_write options
Now the filenames for movies recorded by HLSL and BGFX renderers are automatically generated just like the ones for movies and snapshots recorded by the video core. They are generated according to the "snapname" template (eg. by default <snap_folder>/<device_name>/<numeric_index.avi>, so you can revert to the old behavior (why?) just setting "snapname  bgfx.avi" or "snapname  hlsl.avi".

The main advantage is that now you can record as many movies as you want during a single gaming session without much hassle (previously you had to move or rename the old movie file by hand before recording a new one).
2016-07-04 13:50:10 +02:00
Giuseppe Gorgoglione
2b0682196d Direct3D HLSL: use aviwrite to record avi movies
Use common infrastructure in aviwrite.c instead of equivalent local code.
In addition:
- the target textures used by the HLSL movie recorder are now allocated only when recording is ongoing
- removed shaders->begin_frame() and shaders->end_frame() hooks from the main Direct3D rendering loop
- set default HLSL movie name to hlsl.avi to match bgfx.avi setting
2016-07-04 10:48:47 +02:00
Jeremy Green
3697bd8cdc Added crt-geom and crt-geom-deluxe shaders for bgfx.
This includes several aperture grille / shadow mask patterns. Note that these are all designed to be used on a display with RGB subpixel order, and may thus suffer if rotated or used with a BGR display.
2016-07-03 22:43:16 +02:00
Vas Crabb
491ecdb025 Don't raise stuff to public unnecessarily (nw) 2016-07-02 13:11:16 +10:00
Brad Hughes
ad47988e79 Make monitor list a list of shared_ptr like window_list (nw) 2016-07-01 21:38:05 -04:00
Miodrag Milanovic
715c86f1c7 more cleanup (nw) 2016-07-01 20:50:37 +02:00
Giuseppe Gorgoglione
0312b918a8 Direct3D: convert linked lists into vectors of unique pointers 2016-07-01 01:42:29 +02:00
Giuseppe Gorgoglione
05ae871334 Misc code cleanups for Direct3D code
Removed unused methods, unused function parameters, redundant casts, doubly linked lists made into singly linked lists, etc.
2016-07-01 00:14:36 +02:00
Vas Crabb
c0fc78d341 Not needed anyway (nw) 2016-06-30 12:17:09 +10:00
Brad Hughes
7babf07020 Fix input issues on big endian systems (fixes #963) 2016-06-29 10:02:26 -04:00
Miodrag Milanovic
63f9a01f8c Cleanup and version bump 2016-06-29 08:34:30 +02:00
Vas Crabb
923151d00b Fixed incorrect implementation of win_time_point_from_filetime() 2016-06-26 22:44:21 +10:00
Nathan Woods
5009b55430 Introduced src/lib/util/timeconv.[c|h], moved code from un7z.cpp into it, and implemented win_time_point_from_filetime() in terms of it 2016-06-26 08:12:07 -04:00
Brad Hughes
eb97703a4c Fix mouse behavior on OSX 2016-06-25 20:36:54 -04:00
Nathan Woods
3232bfad89 Fixed incorrect implementation of win_time_point_from_filetime() 2016-06-25 16:08:26 -04:00
Miodrag Milanovic
f75a33f7d1 clang on windows fixes (nw) 2016-06-25 20:06:02 +02:00
Brad Hughes
def1777e74 A few minor input fixes and cleanups
- input modules exit() is called twice. Remove the unnecessary input_exit() method
- removed unnecessary pointer init in handle_input_event and should_hide_mouse
- When registering event callbacks in SDL, don't assume the SDL enum values are int-sized
2016-06-25 11:43:15 -04:00
mahlemiut
443938c991 debugimgui: allow debugger console and log window scrollbars to stay at their maximum value if already there 2016-06-25 13:41:45 +12:00
Vas Crabb
f92f3e22f8 Init (nw) 2016-06-25 11:04:14 +10:00
Vas Crabb
9fccecfcf3 Fine, be that way GCC (nw) 2016-06-25 10:46:55 +10:00
Vas Crabb
52e65cb567 Better fix (nw) 2016-06-25 10:33:59 +10:00
Vas Crabb
c33946ba0b Fix path with missing return, hopefully fix OSX build (nw) 2016-06-25 10:05:59 +10:00
Vas Crabb
e363c5e154 Revert "This worked by pure luck (nw)"
This reverts commit b3491464e4.
2016-06-25 09:56:05 +10:00
couriersud
9027566956 Fix clang compile. (nw) 2016-06-25 00:27:43 +02:00
Miodrag Milanovic
b3491464e4 This worked by pure luck (nw) 2016-06-24 21:25:02 +02:00
Vas Crabb
5cee9e9bc4 POSIX implementation for new directory read features, cleanup of Windows implementation, return directory handle as smart pointer, fix full build [Vas Crabb] 2016-06-25 03:35:23 +10:00
Nathan Woods
7509a56dc0 Incorporated cleanups requested by Vas Crabb 2016-06-24 07:55:10 -04:00
Nathan Woods
4ddfc6a6e4 Changed osd_stat() to return std::unique_ptr<osd::directory::entry> 2016-06-24 07:39:37 -04:00
Nathan Woods
cd8b414e6b C++-ified osd_directory (now osd::directory), and added last_modified to osd::directory::entry 2016-06-24 07:13:18 -04:00
mahlemiut
597b2417b4 debugimgui: don't add command to history if it's the same as the previous one 2016-06-23 00:20:48 +12:00
mahlemiut
59d73876fb debugimgui: when using history, set the cursor position to the end of the text 2016-06-20 14:40:13 +12:00