Commit Graph

112 Commits

Author SHA1 Message Date
Miodrag Milanovic
8aa5c5a29c Remove OSD_UWP from rest of code 2021-10-26 11:45:04 +02:00
Vas Crabb
0ba5d664f9 Add new files to SDL OSD as well as Mac OSD. 2021-10-18 08:46:17 +11:00
Vas Crabb
e8bbea1fc6
formats, osd, util: Started refactoring file I/O stuff. (#8456)
Added more modern generic I/O interfaces with implementation backed by stdio, osd_file and core_file, replacing io_generic.  Also replaced core_file's build-in zlib compression with a filter.

unzip.cpp, un7z.cpp: Added option to supply abstract I/O interface rather than filename.

Converted osd_file, core_file, archive_file, chd_file and device_image_interface to use std::error_condition rather than their own error enums.

Allow mounting TI-99 RPK from inside archives.
2021-08-22 09:06:15 +10:00
AJR
60e518cc50 Low-level #include overhaul
- vecstream.h: Revert changes made in aa29519528. The std::string_view conversion has been made a non-member function (util::buf_to_string_view) and moved to coretmpl.h.
- strformat.h: Remove the using declaration importing util::string_format into the global namespace. It has been moved to emucore.h and a few tool sources; other references have been qualified.
- osdcore.h: Split out file, directory and path classes and methods to a new header (osdfile.h), Doxygenizing the documentation comments.
- Disaggregate many #includes that were including other standard or custom headers. emu.h now includes basically the same things that it did, but other headers have been streamlined; for instance, emucore.h no longer stealth-includes osdcore.h several ways.
2021-01-02 15:18:15 -05:00
arbee
ca1bf9a040 Add AudioToolbox framework when building SDL2 on macOS, fixes TOOLS=1 link errors [R. Belmont] 2020-12-13 16:48:55 -05:00
Vas Crabb
5bce46bd75 Removed winpcap and cleaned up network module selection.
(nw) The pcap.h header itself has the problematic original BSD license,
including the obnoxious advertising clause.  Using tap/tun networking on
Windows provides a much better experience, so the extra setup is worth
it.  This patch also allows you to enable pcap on platforms where it's
disabled by default with USE_PCAP=1 if you really want to use it.
2020-03-05 21:23:21 +11:00
Julian Sikorski
6e66a83642 Odroid n2 build fixes (#5751)
* Allow specifying NO_OPENGL manually

* Switch bgfx to OpenGL ES renderer if NO_X11 is specified

* Only link against EGL when NO_X11 is specified on linux, netbsd and openbsd

* Only switch bgfx to OpenGL ES on linux, netbsd and openbsd

* Indentation fix
2019-10-18 10:31:08 -04:00
68bit
5c482945c6 asmjs: avoid explicitly linking SDL2_ttf.
It appears that it is sufficient to include `-s USE_SDL_TTF=2`, and
emcc links in the SDL2_tff library, and it does not like attempts to
link this twice.
2019-08-28 14:25:27 +00:00
68bit
6d76d3f8f8 asmjs: can not ignore errors on missing libraries
The current Emscripten release is not happy with the use of
"-s ERROR_ON_MISSING_LIBRARIES=0" as a link option, it gives an error
stating that all libraries must now be present, so remove that use.

This leaves a missing 'util' library. This did not appear to be
needed on the few builds I have tried, and this patch avoids adding
this library for asmjs.
2019-08-28 14:25:27 +00:00
Kiall Mac Innes
16bbe847ef Disable WII Lightgun hack by default (#5056) 2019-05-14 16:55:59 -04:00
Kiall Mac Innes
489087f173 Enable Xinput by default
On Linux, enable Xinput support by default. The Xinput lightgun driver is the
only reliable+accurate method to use lightguns on Linux, we should enable this
by default to reduce the friction for Linux Lightgun users. This should have no
effect on users of Windows/Mac etc.
2019-04-21 12:48:51 -07:00
Vas Crabb
97b6717027 (nw) Clean up the mess on master
This effectively reverts b380514764 and
c24473ddff, restoring the state at
598cd52272.

Before pushing, please check that what you're about to push is sane.
Check your local commit log and ensure there isn't anything out-of-place
before pushing to mainline.  When things like this happen, it wastes
everyone's time.  I really don't need this in a week when real work™ is
busting my balls and I'm behind where I want to be with preparing for
MAME release.
2019-03-26 11:13:37 +11:00
andreasnaive
b380514764 Revert "conflict resolution (nw)"
This reverts commit c24473ddff, reversing
changes made to 009cba4fb8.
2019-03-25 23:13:40 +01:00
Vas Crabb
8ffff5d2d3 (nw) misc stuff:
* Document cross-compilation options
* Use lowercase for some libraries that are lowercase in system32 on Windows anyway
* Make USE_BUNDLED_LIB_SDL2=0 not use the bundled SDL
2019-02-18 21:13:44 +11:00
Vas Crabb
176ba64b26 attempt to fix testkeys linking in more configurations (nw) 2019-02-18 14:28:00 +11:00
couriersud
9c9fe82d4f Fix cross compile mame/sdl/windows. (nw) 2019-02-17 12:45:18 +01:00
cracyc
a99407afb5 Discord plugin try 2 (#3640)
* plugins/discord: discord presence plugin [Carl]

* plugins/discord: use domain sockets and pipes [Carl]

* winptty: fix connecting to existing socket (nw)
plugins/discord: show pause state (nw)

* plugins/discord: fix pause behavior (nw)
2018-06-08 19:25:39 -04:00
smf-
68b16a8808 added -lSDL2main to fix linking with gcc 7 [smf] 2017-12-26 11:11:50 +00:00
npwoods
3d553eda60 Attempted to sanitize/rationalize how we access UTF-8 command line arguments (#2532)
Specifically, this creates a call osd_get_command_line() that returns UTF-8 command line arguments as std::vector<std::string>.  On non-Windows platforms, this does nothing more than build the vector.  On Windows, this invokes GetCommandLineW() and CommandLineToArgvW().  This also attempts to unwind usage of wmain()/_tmain() on Windows, which is not standard.

Related to this, this fixes a bug in Imgtool; specifically, non-7 bit ASCII was not being handled correctly in Windows.

This is really an admission that the way that Windows handles Unicode and command line arguments sucks, and it is my belief that having a wmain() or _tmain() declaration specific for Windows is a worse solution.  C'est la vie.

I'm very open to the idea that src/osd/osdcore.[cpp|h] is not the best place to do this.  Let me know if I should move it.
2017-09-18 20:28:53 -04:00
dankan1890
0e638ad0a2 Lua scripts cleanup. 2017-05-14 14:20:38 +10:00
Vas Crabb
192c09b374 comma (nw) 2017-01-23 19:42:19 +11:00
Vas Crabb
2d6477f872 This isn't behaving how I expect, investigate another time (nw) 2017-01-23 19:37:51 +11:00
Vas Crabb
110bc692fa portaudio needs COM (nw) 2017-01-23 19:12:47 +11:00
Brad Hughes
bf52d11826 Convert OSD monitor info to modules plus add DXGI implementation 2016-09-14 08:32:05 -04:00
R. Belmont
13c8e76cf7 Merge pull request #1093 from stevenc99/kfreebsd
GNU/kFreeBSD support
2016-07-16 06:09:32 -04:00
Steven Chamberlain
ad91a1391c qtdbg: compile with -fPIC on freebsd also 2016-07-13 13:31:11 +01:00
Bernhard Frauendienst
cb5495f738 Take pkg-config path from env if defined 2016-07-09 22:49:30 +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
Jeffrey Clark
2e8521cde0 fix android target libSDL2 circular ref (nw)
also rename ANDROID_NDK_ROOT -> ANDROID_NDK_LLVM to point directly to
prebuilt host compiler (removes windows only restriction).
2016-06-04 00:34:43 -05:00
Miodrag Milanovic
37c94e3373 Update windows to use platform independent watchdog implementation (nw) 2016-04-15 16:01:35 +02:00
Miodrag Milanovic
59662e6c71 moved osdsync to root of OSD, removed osdmini (nw) 2016-04-15 15:19:24 +02:00
Miodrag Milanovic
39c9c8c5dc Remove os dependant output handling (nw) 2016-04-09 15:19:43 +02:00
Miodrag Milanovic
bad2e6199e Not needed anymore after move to C++11 features (nw) 2016-04-03 19:47:44 +02:00
Miodrag Milanovic
cea094a3a3 moved aueffectutil to tools (nw) 2016-04-03 19:06:06 +02:00
Miodrag Milanovic
5e80a732aa move clipboard handling on proper place (nw) 2016-04-03 17:55:10 +02:00
Miodrag Milanovic
d8aa889edf merge main.cpp for windows platform (unicode) (nw) 2016-04-03 17:55:10 +02:00
Miodrag Milanovic
796f890450 removed testkeys (nw) 2016-04-03 17:19:41 +02:00
Miodrag Milanovic
9b3788035c scrclean on lua scripts (nw) 2016-03-29 08:49:47 +02:00
Miodrag Milanovic
158c90cf11 Initial work to make MAME work on Android [Miodrag Milanovic] 2016-03-27 17:35:23 +02:00
Vas Crabb
fc87913612 Fix SDL Windows build 2016-03-14 19:32:17 +11:00
Vas Crabb
42fbb9c396 Make osd_file a polymorphic class that's held with smart pointers
Make avi_file a class that's held with smart pointers, encapsulate various AVI I/O structures
Make zip_file and _7z_file classes rather than having free functions everywhere
Hide zip/7z class implementation behind an interface, no longer need to call close() to send back to the cache
Don't dump as much crap in global namespace
Add solaris PTY implementation
Improve variable expansion for SDL OSD - supports ~/$FOO/${BAR} syntax
Rearrange stuff so the same things are in file module for all OSDs
Move file stuff into its own module

7z/zip open and destruct are still not thread-safe due to lack of interlocks around cache access
Directory functions still need to be moved to file module
SDL OSD may not initialise WinSock on Windows
2016-03-14 18:55:00 +11:00
Miodrag Milanovic
5fc2774703 Clang 3.8.0 supports -municode (nw) 2016-03-14 07:55:17 +01:00
Miodrag Milanovic
d9510ed04d Used std::thread and std::condition_variable (nw) 2016-03-01 20:52:56 +01:00
Brad Hughes
f68ad66131 Merge input modules work. 2016-02-28 14:56:54 -05:00
Brad Hughes
7dfb578559 Refactor OSD input into modules 2016-02-28 14:25:10 -05:00
Miodrag Milanovic
1adc64573f compiles but crash on OSX with bundled one (nw) 2016-02-28 15:07:43 +01:00
Miodrag Milanovic
adfae5ffe5 make possible to select if bundled SDL2 is used, made mingw and vs compile so far (nw) 2016-02-27 18:48:03 +01:00
Miodrag Milanovic
ea6b854844 Made Visual Studio use by default bundled SDL2 (nw) 2016-02-27 16:53:49 +01:00
Miodrag Milanovic
4727b0d97f OS/2 can not support SDL2 which is needed for MAME to run (nw) 2016-02-26 13:20:43 +01:00
Miodrag Milanovic
cce0696a5f Made OSD=sdl build compile out of box in Visual Studio (nw) 2016-02-22 14:23:15 +01:00