summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules
diff options
context:
space:
mode:
author ajrhacker <ajrhacker@users.noreply.github.com>2022-07-04 20:46:05 -0400
committer GitHub <noreply@github.com>2022-07-04 20:46:05 -0400
commit0d22ff1a9bec7e980a55a5ae346a6b746e298112 (patch)
tree1af2136a83ae349b09f257e854a3cfad262967cd /src/osd/modules
parent09f33c2ba35ff83006ea8efd80a8f95d20ca65aa (diff)
Clean up #includes in src/osd (#10029)
* Clean up #includes in src/osd * render/bgfx/view.cpp: Add license header
Diffstat (limited to 'src/osd/modules')
-rw-r--r--src/osd/modules/font/font_dwrite.cpp7
-rw-r--r--src/osd/modules/font/font_osx.cpp2
-rw-r--r--src/osd/modules/font/font_sdl.cpp2
-rw-r--r--src/osd/modules/font/font_windows.cpp4
-rw-r--r--src/osd/modules/lib/osdobj_common.cpp28
-rw-r--r--src/osd/modules/lib/osdobj_common.h40
-rw-r--r--src/osd/modules/monitor/monitor_common.cpp9
-rw-r--r--src/osd/modules/monitor/monitor_common.h2
-rw-r--r--src/osd/modules/monitor/monitor_dxgi.cpp2
-rw-r--r--src/osd/modules/monitor/monitor_mac.cpp2
-rw-r--r--src/osd/modules/monitor/monitor_sdl.cpp2
-rw-r--r--src/osd/modules/monitor/monitor_win32.cpp2
-rw-r--r--src/osd/modules/osdmodule.cpp1
-rw-r--r--src/osd/modules/osdmodule.h3
-rw-r--r--src/osd/modules/osdwindow.cpp19
-rw-r--r--src/osd/modules/osdwindow.h21
-rw-r--r--src/osd/modules/output/console.cpp2
-rw-r--r--src/osd/modules/render/bgfx/chain.cpp9
-rw-r--r--src/osd/modules/render/bgfx/chainentry.cpp4
-rw-r--r--src/osd/modules/render/bgfx/chainentryreader.cpp6
-rw-r--r--src/osd/modules/render/bgfx/chainmanager.cpp25
-rw-r--r--src/osd/modules/render/bgfx/chainmanager.h26
-rw-r--r--src/osd/modules/render/bgfx/chainreader.cpp6
-rw-r--r--src/osd/modules/render/bgfx/effect.cpp1
-rw-r--r--src/osd/modules/render/bgfx/effectmanager.cpp14
-rw-r--r--src/osd/modules/render/bgfx/effectreader.cpp8
-rw-r--r--src/osd/modules/render/bgfx/effectreader.h8
-rw-r--r--src/osd/modules/render/bgfx/inputpair.cpp7
-rw-r--r--src/osd/modules/render/bgfx/inputpair.h2
-rw-r--r--src/osd/modules/render/bgfx/shadermanager.cpp11
-rw-r--r--src/osd/modules/render/bgfx/shadermanager.h4
-rw-r--r--src/osd/modules/render/bgfx/slider.cpp10
-rw-r--r--src/osd/modules/render/bgfx/slider.h4
-rw-r--r--src/osd/modules/render/bgfx/sliderreader.cpp1
-rw-r--r--src/osd/modules/render/bgfx/slideruniform.cpp1
-rw-r--r--src/osd/modules/render/bgfx/slideruniformreader.cpp1
-rw-r--r--src/osd/modules/render/bgfx/statereader.cpp16
-rw-r--r--src/osd/modules/render/bgfx/statereader.h17
-rw-r--r--src/osd/modules/render/bgfx/suppressor.cpp3
-rw-r--r--src/osd/modules/render/bgfx/suppressorreader.cpp3
-rw-r--r--src/osd/modules/render/bgfx/targetreader.cpp6
-rw-r--r--src/osd/modules/render/bgfx/texturemanager.cpp5
-rw-r--r--src/osd/modules/render/bgfx/texturemanager.h3
-rw-r--r--src/osd/modules/render/bgfx/view.cpp8
-rw-r--r--src/osd/modules/render/bgfxutil.cpp2
-rw-r--r--src/osd/modules/render/bgfxutil.h4
-rw-r--r--src/osd/modules/render/binpacker.cpp3
-rw-r--r--src/osd/modules/render/binpacker.h2
-rw-r--r--src/osd/modules/render/copyutil.h4
-rw-r--r--src/osd/modules/render/draw13.h3
-rw-r--r--src/osd/modules/render/drawbgfx.cpp27
-rw-r--r--src/osd/modules/render/drawbgfx.h25
-rw-r--r--src/osd/modules/render/drawnone.cpp3
-rw-r--r--src/osd/modules/render/drawogl.h3
-rw-r--r--src/osd/modules/render/drawsdl.cpp2
-rw-r--r--src/osd/modules/sound/direct_sound.cpp2
-rw-r--r--src/osd/modules/sound/pa_sound.cpp2
-rw-r--r--src/osd/modules/sound/pulse_sound.cpp10
-rw-r--r--src/osd/modules/sound/sdl_sound.cpp2
-rw-r--r--src/osd/modules/sound/sound_module.h3
-rw-r--r--src/osd/modules/sound/xaudio2_sound.cpp7
61 files changed, 271 insertions, 190 deletions
diff --git a/src/osd/modules/font/font_dwrite.cpp b/src/osd/modules/font/font_dwrite.cpp
index a1e63c2d870..70edc24c0f1 100644
--- a/src/osd/modules/font/font_dwrite.cpp
+++ b/src/osd/modules/font/font_dwrite.cpp
@@ -13,7 +13,9 @@
#include <windows.h>
+#include <cmath>
#include <memory>
+#include <stdexcept>
// Windows Imaging Components
#include <wincodec.h>
@@ -35,6 +37,7 @@ DEFINE_GUID(GUID_WICPixelFormat8bppAlpha, 0xe6cd0116, 0xeeba, 0x4161, 0xaa, 0x85
#include "strconv.h"
#include "corestr.h"
#include "winutil.h"
+#include "osdcore.h"
using namespace Microsoft::WRL;
@@ -226,7 +229,7 @@ public:
{
if (m_designUnitsPerEm != other.m_designUnitsPerEm || m_emSizeInDip != other.m_emSizeInDip)
{
- throw emu_fatalerror("Attempted subtraction of FontDimension with different scale.");
+ throw std::invalid_argument("Attempted subtraction of FontDimension with different scale.");
}
return FontDimension(m_designUnitsPerEm, m_emSizeInDip, m_designUnits - other.m_designUnits);
@@ -236,7 +239,7 @@ public:
{
if (m_designUnitsPerEm != other.m_designUnitsPerEm || m_emSizeInDip != other.m_emSizeInDip)
{
- throw emu_fatalerror("Attempted addition of FontDimension with different scale.");
+ throw std::invalid_argument("Attempted addition of FontDimension with different scale.");
}
return FontDimension(m_designUnitsPerEm, m_emSizeInDip, m_designUnits + other.m_designUnits);
diff --git a/src/osd/modules/font/font_osx.cpp b/src/osd/modules/font/font_osx.cpp
index c357f8992e3..cde01f58b69 100644
--- a/src/osd/modules/font/font_osx.cpp
+++ b/src/osd/modules/font/font_osx.cpp
@@ -10,7 +10,9 @@
#ifdef SDLMAME_MACOSX
+#include "emucore.h"
#include "fileio.h"
+#include "osdcore.h"
#include <ApplicationServices/ApplicationServices.h>
#include <CoreFoundation/CoreFoundation.h>
diff --git a/src/osd/modules/font/font_sdl.cpp b/src/osd/modules/font/font_sdl.cpp
index 5cad4a3fab8..6c97f0a71f0 100644
--- a/src/osd/modules/font/font_sdl.cpp
+++ b/src/osd/modules/font/font_sdl.cpp
@@ -11,8 +11,10 @@
#if defined(SDLMAME_UNIX) && !defined(SDLMAME_MACOSX) && !defined(SDLMAME_HAIKU) && !defined(SDLMAME_ANDROID)
#include "corestr.h"
+#include "emucore.h"
#include "fileio.h"
#include "unicode.h"
+#include "osdcore.h"
#ifdef SDLMAME_EMSCRIPTEN
#include <SDL_ttf.h>
diff --git a/src/osd/modules/font/font_windows.cpp b/src/osd/modules/font/font_windows.cpp
index 2d4a7a93eda..8e0bd568349 100644
--- a/src/osd/modules/font/font_windows.cpp
+++ b/src/osd/modules/font/font_windows.cpp
@@ -11,12 +11,10 @@
#if defined(OSD_WINDOWS) || defined(SDLMAME_WIN32)
-#include "font_module.h"
-#include "modules/osdmodule.h"
-
#include "strconv.h"
#include "unicode.h"
#include "corestr.h"
+#include "osdcore.h"
#include <cstring>
diff --git a/src/osd/modules/lib/osdobj_common.cpp b/src/osd/modules/lib/osdobj_common.cpp
index 38d62aba8ae..9adf9f2e604 100644
--- a/src/osd/modules/lib/osdobj_common.cpp
+++ b/src/osd/modules/lib/osdobj_common.cpp
@@ -8,10 +8,19 @@
***************************************************************************/
+#include "modules/lib/osdobj_common.h"
+
+#include "modules/font/font_module.h"
+#include "modules/input/input_module.h"
+#include "modules/sound/sound_module.h"
+#include "modules/debugger/debug_module.h"
+#include "modules/netdev/netdev_module.h"
+#include "modules/midi/midi_module.h"
+#include "modules/monitor/monitor_module.h"
+#include "watchdog.h"
#include "emu.h"
-#include "osdepend.h"
-#include "modules/lib/osdobj_common.h"
+#include "../frontend/mame/ui/menuitem.h"
#include <iostream>
@@ -758,3 +767,18 @@ void osd_common_t::video_options_add(const char *name, void *type)
//m_video_options.add(name, type, false);
m_video_names.push_back(name);
}
+
+osd_font::ptr osd_common_t::font_alloc()
+{
+ return m_font_module->font_alloc();
+}
+
+bool osd_common_t::get_font_families(std::string const &font_path, std::vector<std::pair<std::string, std::string> > &result)
+{
+ return m_font_module->get_font_families(font_path, result);
+}
+
+std::unique_ptr<osd_midi_device> osd_common_t::create_midi_device()
+{
+ return m_midi->create_midi_device();
+}
diff --git a/src/osd/modules/lib/osdobj_common.h b/src/osd/modules/lib/osdobj_common.h
index 3be82fd2ee9..a013e2506ae 100644
--- a/src/osd/modules/lib/osdobj_common.h
+++ b/src/osd/modules/lib/osdobj_common.h
@@ -13,19 +13,12 @@
#ifndef MAME_OSD_LIB_OSDOBJ_COMMON_H
#define MAME_OSD_LIB_OSDOBJ_COMMON_H
+#include "osdcore.h"
#include "osdepend.h"
-#include "watchdog.h"
#include "modules/osdmodule.h"
-#include "modules/font/font_module.h"
-#include "modules/input/input_module.h"
-#include "modules/sound/sound_module.h"
-#include "modules/debugger/debug_module.h"
-#include "modules/netdev/netdev_module.h"
-#include "modules/midi/midi_module.h"
#include "modules/output/output_module.h"
-#include "modules/monitor/monitor_module.h"
#include "emuopts.h"
-#include "../frontend/mame/ui/menuitem.h"
+#include "strformat.h"
#include <list>
//============================================================
@@ -130,10 +123,10 @@ public:
const char *aspect() const { return value(OSDOPTION_ASPECT); }
const char *resolution() const { return value(OSDOPTION_RESOLUTION); }
const char *view() const { return value(OSDOPTION_VIEW); }
- const char *screen(int index) const { return value(string_format("%s%d", OSDOPTION_SCREEN, index)); }
- const char *aspect(int index) const { return value(string_format("%s%d", OSDOPTION_ASPECT, index)); }
- const char *resolution(int index) const { return value(string_format("%s%d", OSDOPTION_RESOLUTION, index)); }
- const char *view(int index) const { return value(string_format("%s%d", OSDOPTION_VIEW, index)); }
+ const char *screen(int index) const { return value(util::string_format("%s%d", OSDOPTION_SCREEN, index)); }
+ const char *aspect(int index) const { return value(util::string_format("%s%d", OSDOPTION_ASPECT, index)); }
+ const char *resolution(int index) const { return value(util::string_format("%s%d", OSDOPTION_RESOLUTION, index)); }
+ const char *view(int index) const { return value(util::string_format("%s%d", OSDOPTION_VIEW, index)); }
// full screen options
bool switch_res() const { return bool_value(OSDOPTION_SWITCHRES); }
@@ -149,8 +142,8 @@ public:
bool gl_pbo() const { return bool_value(OSDOPTION_GL_PBO); }
bool gl_glsl() const { return bool_value(OSDOPTION_GL_GLSL); }
int glsl_filter() const { return int_value(OSDOPTION_GLSL_FILTER); }
- const char *shader_mame(int index) const { return value(string_format("%s%d", OSDOPTION_SHADER_MAME, index)); }
- const char *shader_screen(int index) const { return value(string_format("%s%d", OSDOPTION_SHADER_SCREEN, index)); }
+ const char *shader_mame(int index) const { return value(util::string_format("%s%d", OSDOPTION_SHADER_MAME, index)); }
+ const char *shader_screen(int index) const { return value(util::string_format("%s%d", OSDOPTION_SHADER_SCREEN, index)); }
// sound options
const char *sound() const { return value(OSDOPTION_SOUND); }
@@ -158,7 +151,7 @@ public:
// CoreAudio specific options
const char *audio_output() const { return value(OSDOPTION_AUDIO_OUTPUT); }
- const char *audio_effect(int index) const { return value(string_format("%s%d", OSDOPTION_AUDIO_EFFECT, index)); }
+ const char *audio_effect(int index) const { return value(util::string_format("%s%d", OSDOPTION_AUDIO_EFFECT, index)); }
// BGFX specific options
const char *bgfx_path() const { return value(OSDOPTION_BGFX_PATH); }
@@ -178,6 +171,15 @@ public:
};
// ======================> osd_interface
+
+class font_module;
+class sound_module;
+class debug_module;
+class midi_module;
+class input_module;
+class output_module;
+class monitor_module;
+class osd_watchdog;
class osd_window;
// description of the currently-running machine
@@ -214,10 +216,10 @@ public:
// command option overrides
virtual bool execute_command(const char *command) override;
- virtual osd_font::ptr font_alloc() override { return m_font_module->font_alloc(); }
- virtual bool get_font_families(std::string const &font_path, std::vector<std::pair<std::string, std::string> > &result) override { return m_font_module->get_font_families(font_path, result); }
+ virtual osd_font::ptr font_alloc() override;
+ virtual bool get_font_families(std::string const &font_path, std::vector<std::pair<std::string, std::string> > &result) override;
- virtual std::unique_ptr<osd_midi_device> create_midi_device() override { return m_midi->create_midi_device(); }
+ virtual std::unique_ptr<osd_midi_device> create_midi_device() override;
// FIXME: everything below seems to be osd specific and not part of
// this INTERFACE but part of the osd IMPLEMENTATION
diff --git a/src/osd/modules/monitor/monitor_common.cpp b/src/osd/modules/monitor/monitor_common.cpp
index 8f935db7da2..baa80ed7f66 100644
--- a/src/osd/modules/monitor/monitor_common.cpp
+++ b/src/osd/modules/monitor/monitor_common.cpp
@@ -5,12 +5,15 @@
*
*/
-#include "emu.h"
-#include <algorithm>
-
#include "monitor_common.h"
+
+#include "modules/lib/osdobj_common.h"
#include "modules/osdwindow.h"
+#include "osdcore.h"
+
+#include <algorithm>
+
std::shared_ptr<osd_monitor_info> monitor_module_base::pick_monitor(osd_options& options, int index)
{
// get the aspect ratio
diff --git a/src/osd/modules/monitor/monitor_common.h b/src/osd/modules/monitor/monitor_common.h
index 4316722c9bb..c8257c36e74 100644
--- a/src/osd/modules/monitor/monitor_common.h
+++ b/src/osd/modules/monitor/monitor_common.h
@@ -7,7 +7,7 @@
#ifndef __MONITOR_COMMON_H__
#define __MONITOR_COMMON_H__
-#include "modules/lib/osdobj_common.h"
+#include "monitor_module.h"
#include <map>
//============================================================
diff --git a/src/osd/modules/monitor/monitor_dxgi.cpp b/src/osd/modules/monitor/monitor_dxgi.cpp
index 8c2c3cb334a..d4ab80d2f33 100644
--- a/src/osd/modules/monitor/monitor_dxgi.cpp
+++ b/src/osd/modules/monitor/monitor_dxgi.cpp
@@ -5,7 +5,6 @@
*
*/
-#include "emu.h"
#include "modules/osdmodule.h"
#include "monitor_module.h"
@@ -20,6 +19,7 @@
#include "strconv.h"
#include "modules/lib/osdlib.h"
#include "monitor_common.h"
+#include "osdcore.h"
#include "window.h"
#include "windows/video.h"
diff --git a/src/osd/modules/monitor/monitor_mac.cpp b/src/osd/modules/monitor/monitor_mac.cpp
index 8e79978433b..e81afa7ffae 100644
--- a/src/osd/modules/monitor/monitor_mac.cpp
+++ b/src/osd/modules/monitor/monitor_mac.cpp
@@ -8,7 +8,6 @@
//
//============================================================
-#include "emu.h"
#include "modules/osdmodule.h"
#include "monitor_module.h"
@@ -21,6 +20,7 @@
#include "modules/osdwindow.h"
#include "monitor_common.h"
+#include "osdcore.h"
#include "window.h"
//============================================================
diff --git a/src/osd/modules/monitor/monitor_sdl.cpp b/src/osd/modules/monitor/monitor_sdl.cpp
index e3a97fef7ec..13f1b847693 100644
--- a/src/osd/modules/monitor/monitor_sdl.cpp
+++ b/src/osd/modules/monitor/monitor_sdl.cpp
@@ -5,7 +5,6 @@
*
*/
-#include "emu.h"
#include "modules/osdmodule.h"
#include "monitor_module.h"
@@ -16,6 +15,7 @@
#include "modules/osdwindow.h"
#include "monitor_common.h"
+#include "osdcore.h"
#include "window.h"
inline osd_rect SDL_Rect_to_osd_rect(const SDL_Rect &r)
diff --git a/src/osd/modules/monitor/monitor_win32.cpp b/src/osd/modules/monitor/monitor_win32.cpp
index 33e9b9d1848..1766ca358a1 100644
--- a/src/osd/modules/monitor/monitor_win32.cpp
+++ b/src/osd/modules/monitor/monitor_win32.cpp
@@ -5,7 +5,6 @@
*
*/
-#include "emu.h"
#include "modules/osdmodule.h"
#include "monitor_module.h"
@@ -15,6 +14,7 @@
#include <windows.h>
#undef interface
+#include "osdcore.h"
#include "strconv.h"
#include "windows/video.h"
#include "window.h"
diff --git a/src/osd/modules/osdmodule.cpp b/src/osd/modules/osdmodule.cpp
index fec18ac5335..4f2cf079e3b 100644
--- a/src/osd/modules/osdmodule.cpp
+++ b/src/osd/modules/osdmodule.cpp
@@ -6,6 +6,7 @@
*/
#include "modules/osdmodule.h"
+#include "osdcore.h"
#include <algorithm>
diff --git a/src/osd/modules/osdmodule.h b/src/osd/modules/osdmodule.h
index cd72ad2c480..1c662417601 100644
--- a/src/osd/modules/osdmodule.h
+++ b/src/osd/modules/osdmodule.h
@@ -12,9 +12,6 @@
#pragma once
-#include "osdcore.h"
-#include "osdepend.h"
-
#include <functional>
#include <memory>
#include <string>
diff --git a/src/osd/modules/osdwindow.cpp b/src/osd/modules/osdwindow.cpp
index 797148382bf..bc20676cbad 100644
--- a/src/osd/modules/osdwindow.cpp
+++ b/src/osd/modules/osdwindow.cpp
@@ -8,6 +8,8 @@
#include "emu.h"
#include "osdwindow.h"
+#include "modules/lib/osdobj_common.h"
+#include "modules/monitor/monitor_module.h"
#include "render/drawnone.h"
#include "render/drawbgfx.h"
@@ -57,6 +59,23 @@ float osd_window::pixel_aspect() const
return monitor()->pixel_aspect();
}
+bool osd_window::swap_xy() const
+{
+ bool orientation_swap_xy =
+ (machine().system().flags & ORIENTATION_SWAP_XY) == ORIENTATION_SWAP_XY;
+ bool rotation_swap_xy =
+ (target()->orientation() & ORIENTATION_SWAP_XY) == ORIENTATION_SWAP_XY;
+ return orientation_swap_xy ^ rotation_swap_xy;
+};
+
+bool osd_window::keepaspect() const
+{
+ if (m_target != nullptr)
+ return m_target->keepaspect();
+ else
+ return false;
+}
+
std::unique_ptr<osd_renderer> osd_renderer::make_for_type(int mode, std::shared_ptr<osd_window> window, int extra_flags)
{
switch(mode)
diff --git a/src/osd/modules/osdwindow.h b/src/osd/modules/osdwindow.h
index 9cd05c29d17..f0f3813e407 100644
--- a/src/osd/modules/osdwindow.h
+++ b/src/osd/modules/osdwindow.h
@@ -9,7 +9,7 @@
#ifndef __OSDWINDOW__
#define __OSDWINDOW__
-#include "render.h"
+#include "emucore.h"
#include "osdhelper.h"
#include "../frontend/mame/ui/menuitem.h"
@@ -87,22 +87,9 @@ public:
float pixel_aspect() const;
- bool swap_xy() const
- {
- bool orientation_swap_xy =
- (machine().system().flags & ORIENTATION_SWAP_XY) == ORIENTATION_SWAP_XY;
- bool rotation_swap_xy =
- (target()->orientation() & ORIENTATION_SWAP_XY) == ORIENTATION_SWAP_XY;
- return orientation_swap_xy ^ rotation_swap_xy;
- };
-
- bool keepaspect() const
- {
- if (m_target != nullptr)
- return m_target->keepaspect();
- else
- return false;
- }
+ bool swap_xy() const;
+
+ bool keepaspect() const;
virtual osd_dim get_size() = 0;
diff --git a/src/osd/modules/output/console.cpp b/src/osd/modules/output/console.cpp
index c9983736fb0..993f9429e41 100644
--- a/src/osd/modules/output/console.cpp
+++ b/src/osd/modules/output/console.cpp
@@ -11,6 +11,8 @@
#include "output_module.h"
#include "modules/osdmodule.h"
+#include "osdcore.h"
+
class output_console : public osd_module, public output_module
{
public:
diff --git a/src/osd/modules/render/bgfx/chain.cpp b/src/osd/modules/render/bgfx/chain.cpp
index 8dbd72a0067..b677569a67f 100644
--- a/src/osd/modules/render/bgfx/chain.cpp
+++ b/src/osd/modules/render/bgfx/chain.cpp
@@ -6,7 +6,12 @@
//
//============================================================
+#include "chain.h"
+
#include "emu.h"
+#include "render.h"
+#include "rendlay.h"
+#include "screen.h"
#include <bx/timer.h>
@@ -19,13 +24,9 @@
#include "chainmanager.h"
#include "target.h"
#include "vertex.h"
-#include "rendlay.h"
-#include "screen.h"
#include "clear.h"
#include "modules/osdwindow.h"
-#include "chain.h"
-
bgfx_chain::bgfx_chain(std::string name, std::string author, bool transform, target_manager& targets, std::vector<bgfx_slider*> sliders, std::vector<bgfx_parameter*> params, std::vector<bgfx_chain_entry*> entries, std::vector<bgfx_target*> target_list, std::uint32_t screen_index)
: m_name(name)
, m_author(author)
diff --git a/src/osd/modules/render/bgfx/chainentry.cpp b/src/osd/modules/render/bgfx/chainentry.cpp
index fd19b2695a3..45c0b805882 100644
--- a/src/osd/modules/render/bgfx/chainentry.cpp
+++ b/src/osd/modules/render/bgfx/chainentry.cpp
@@ -9,13 +9,12 @@
//
//============================================================
-#include "emu.h"
+#include "chainmanager.h"
#include <bgfx/bgfx.h>
#include <bx/math.h>
#include <cmath>
-#include "chainmanager.h"
#include "chainentry.h"
#include "effect.h"
@@ -27,6 +26,7 @@
#include "vertex.h"
#include "suppressor.h"
+#include "emucore.h"
#include "render.h"
diff --git a/src/osd/modules/render/bgfx/chainentryreader.cpp b/src/osd/modules/render/bgfx/chainentryreader.cpp
index 5ac97fd1d45..c6b9953603f 100644
--- a/src/osd/modules/render/bgfx/chainentryreader.cpp
+++ b/src/osd/modules/render/bgfx/chainentryreader.cpp
@@ -6,17 +6,15 @@
//
//============================================================
-#include <string>
+#include "chainentryreader.h"
-#include "emu.h"
+#include "emucore.h"
#include "fileio.h"
#include "rendutil.h"
#include <modules/render/copyutil.h>
#include <modules/lib/osdobj_common.h>
-#include "chainentryreader.h"
-
#include "texturemanager.h"
#include "targetmanager.h"
#include "effectmanager.h"
diff --git a/src/osd/modules/render/bgfx/chainmanager.cpp b/src/osd/modules/render/bgfx/chainmanager.cpp
index b9bee6d87a8..c3b80e88d14 100644
--- a/src/osd/modules/render/bgfx/chainmanager.cpp
+++ b/src/osd/modules/render/bgfx/chainmanager.cpp
@@ -9,13 +9,16 @@
//
//============================================================
+#include "chainmanager.h"
+
#include <bx/readerwriter.h>
#include <bx/file.h>
-#include "emu.h"
+#include "emucore.h"
+#include "render.h"
#include "../frontend/mame/ui/slider.h"
-#include "osdcore.h"
+#include "modules/lib/osdobj_common.h"
#include "modules/osdwindow.h"
#include <rapidjson/document.h>
@@ -23,7 +26,6 @@
#include "bgfxutil.h"
-#include "chainmanager.h"
#include "chainreader.h"
#include "chain.h"
@@ -33,10 +35,27 @@
#include "sliderdirtynotifier.h"
+#include "osdcore.h"
+#include "osdfile.h"
+
using namespace rapidjson;
const uint32_t chain_manager::CHAIN_NONE = 0;
+chain_manager::screen_prim::screen_prim(render_primitive *prim)
+{
+ m_prim = prim;
+ m_screen_width = (uint16_t)floorf(prim->get_full_quad_width() + 0.5f);
+ m_screen_height = (uint16_t)floorf(prim->get_full_quad_height() + 0.5f);
+ m_quad_width = (uint16_t)floorf(prim->get_quad_width() + 0.5f);
+ m_quad_height = (uint16_t)floorf(prim->get_quad_height() + 0.5f);
+ m_tex_width = (float)prim->texture.width;
+ m_tex_height = (float)prim->texture.height;
+ m_rowpixels = prim->texture.rowpixels;
+ m_palette_length = prim->texture.palette_length;
+ m_flags = prim->flags;
+}
+
chain_manager::chain_manager(running_machine& machine, osd_options& options, texture_manager& textures, target_manager& targets, effect_manager& effects, uint32_t window_index, slider_dirty_notifier& slider_notifier)
: m_machine(machine)
, m_options(options)
diff --git a/src/osd/modules/render/bgfx/chainmanager.h b/src/osd/modules/render/bgfx/chainmanager.h
index 2c130354dc1..59a65dc59cf 100644
--- a/src/osd/modules/render/bgfx/chainmanager.h
+++ b/src/osd/modules/render/bgfx/chainmanager.h
@@ -14,15 +14,13 @@
#ifndef __DRAWBGFX_CHAIN_MANAGER__
#define __DRAWBGFX_CHAIN_MANAGER__
-#include <vector>
-#include <map>
-#include <string>
-
#include "texturemanager.h"
#include "targetmanager.h"
#include "effectmanager.h"
-#include "../frontend/mame/ui/menuitem.h"
-#include "render.h"
+
+#include <map>
+#include <string>
+#include <vector>
class running_machine;
class osd_window;
@@ -30,6 +28,8 @@ struct slider_state;
class slider_dirty_notifier;
class render_primitive;
+namespace ui { class menu_item; }
+
class bgfx_chain;
class bgfx_slider;
@@ -81,19 +81,7 @@ public:
{
}
- screen_prim(render_primitive *prim)
- {
- m_prim = prim;
- m_screen_width = (uint16_t)floorf(prim->get_full_quad_width() + 0.5f);
- m_screen_height = (uint16_t)floorf(prim->get_full_quad_height() + 0.5f);
- m_quad_width = (uint16_t)floorf(prim->get_quad_width() + 0.5f);
- m_quad_height = (uint16_t)floorf(prim->get_quad_height() + 0.5f);
- m_tex_width = (float)prim->texture.width;
- m_tex_height = (float)prim->texture.height;
- m_rowpixels = prim->texture.rowpixels;
- m_palette_length = prim->texture.palette_length;
- m_flags = prim->flags;
- }
+ screen_prim(render_primitive *prim);
render_primitive *m_prim;
uint16_t m_screen_width;
diff --git a/src/osd/modules/render/bgfx/chainreader.cpp b/src/osd/modules/render/bgfx/chainreader.cpp
index 20e7080dbbe..92e30df0b33 100644
--- a/src/osd/modules/render/bgfx/chainreader.cpp
+++ b/src/osd/modules/render/bgfx/chainreader.cpp
@@ -6,14 +6,12 @@
//
//============================================================
+#include "chainreader.h"
+
#include <string>
#include <vector>
#include <map>
-#include "emu.h"
-#include <modules/lib/osdobj_common.h>
-
-#include "chainreader.h"
#include "chain.h"
#include "chainmanager.h"
#include "sliderreader.h"
diff --git a/src/osd/modules/render/bgfx/effect.cpp b/src/osd/modules/render/bgfx/effect.cpp
index 06fddee66ad..c5ea8555dce 100644
--- a/src/osd/modules/render/bgfx/effect.cpp
+++ b/src/osd/modules/render/bgfx/effect.cpp
@@ -11,6 +11,7 @@
#include "uniform.h"
#include "modules/osdmodule.h"
+#include "osdcore.h"
bgfx_effect::bgfx_effect(uint64_t state, bgfx::ShaderHandle vertex_shader, bgfx::ShaderHandle fragment_shader, std::vector<bgfx_uniform*> uniforms)
: m_state(state)
diff --git a/src/osd/modules/render/bgfx/effectmanager.cpp b/src/osd/modules/render/bgfx/effectmanager.cpp
index 8fc2899482a..f57f56f708d 100644
--- a/src/osd/modules/render/bgfx/effectmanager.cpp
+++ b/src/osd/modules/render/bgfx/effectmanager.cpp
@@ -9,20 +9,22 @@
//
//============================================================
+#include "effectmanager.h"
+
+#include "effectreader.h"
+#include "effect.h"
+
+#include "osdfile.h"
+#include "modules/lib/osdobj_common.h"
+
#include <rapidjson/document.h>
#include <rapidjson/error/en.h>
#include <bx/readerwriter.h>
#include <bx/file.h>
-#include "emu.h"
-
#include <bgfx/bgfx.h>
-#include "effectmanager.h"
-#include "effectreader.h"
-#include "effect.h"
-
static bool prepare_effect_document(std::string &name, osd_options &options, rapidjson::Document &document)
{
std::string full_name = name;
diff --git a/src/osd/modules/render/bgfx/effectreader.cpp b/src/osd/modules/render/bgfx/effectreader.cpp
index fd59b0bde44..36acee2f9ea 100644
--- a/src/osd/modules/render/bgfx/effectreader.cpp
+++ b/src/osd/modules/render/bgfx/effectreader.cpp
@@ -6,11 +6,7 @@
//
//============================================================
-#include <string>
-
-#include <bgfx/bgfx.h>
-
-#include "emu.h"
+#include "effectreader.h"
#include "effect.h"
#include "blendreader.h"
@@ -21,8 +17,6 @@
#include "uniformreader.h"
#include "uniform.h"
-#include "effectreader.h"
-
bgfx_effect *effect_reader::read_from_value(const Value& value, std::string prefix, osd_options &options, shader_manager& shaders)
{
uint64_t flags = 0;
diff --git a/src/osd/modules/render/bgfx/effectreader.h b/src/osd/modules/render/bgfx/effectreader.h
index d632c7326c2..095f06a56ea 100644
--- a/src/osd/modules/render/bgfx/effectreader.h
+++ b/src/osd/modules/render/bgfx/effectreader.h
@@ -11,12 +11,16 @@
#ifndef __DRAWBGFX_EFFECT_READER__
#define __DRAWBGFX_EFFECT_READER__
-#include <string>
-
#include "statereader.h"
+#include <bgfx/bgfx.h>
+
+#include <string>
+#include <vector>
+
class bgfx_effect;
class bgfx_uniform;
+class osd_options;
class shader_manager;
class effect_reader : public state_reader
diff --git a/src/osd/modules/render/bgfx/inputpair.cpp b/src/osd/modules/render/bgfx/inputpair.cpp
index ea82ac5f814..5f1324c2581 100644
--- a/src/osd/modules/render/bgfx/inputpair.cpp
+++ b/src/osd/modules/render/bgfx/inputpair.cpp
@@ -9,16 +9,13 @@
//
//============================================================
-#include "emu.h"
-#include "../frontend/mame/ui/slider.h"
+#include "inputpair.h"
-#include "emucore.h"
+#include "../frontend/mame/ui/slider.h"
-#include "inputpair.h"
#include "texture.h"
#include "target.h"
#include "effect.h"
-#include "render.h"
#include "uniform.h"
#include "chainmanager.h"
#include "slider.h"
diff --git a/src/osd/modules/render/bgfx/inputpair.h b/src/osd/modules/render/bgfx/inputpair.h
index 6102d7eba70..668d652200d 100644
--- a/src/osd/modules/render/bgfx/inputpair.h
+++ b/src/osd/modules/render/bgfx/inputpair.h
@@ -14,7 +14,9 @@
#ifndef __DRAWBGFX_INPUT_PAIR__
#define __DRAWBGFX_INPUT_PAIR__
+#include <memory>
#include <string>
+#include <vector>
#include "../frontend/mame/ui/menuitem.h"
diff --git a/src/osd/modules/render/bgfx/shadermanager.cpp b/src/osd/modules/render/bgfx/shadermanager.cpp
index 484c14c8936..dd894426794 100644
--- a/src/osd/modules/render/bgfx/shadermanager.cpp
+++ b/src/osd/modules/render/bgfx/shadermanager.cpp
@@ -9,16 +9,19 @@
//
//============================================================
+#include "shadermanager.h"
+
+#include "emucore.h"
+
+#include "osdfile.h"
+#include "modules/lib/osdobj_common.h"
+
#include <bx/math.h>
#include <bx/readerwriter.h>
#include <bx/file.h>
-#include "emu.h"
-
#include <bgfx/bgfx.h>
-#include "shadermanager.h"
-
shader_manager::~shader_manager()
{
for (std::pair<std::string, bgfx::ShaderHandle> shader : m_shaders)
diff --git a/src/osd/modules/render/bgfx/shadermanager.h b/src/osd/modules/render/bgfx/shadermanager.h
index d58a669f22f..81fa4260f47 100644
--- a/src/osd/modules/render/bgfx/shadermanager.h
+++ b/src/osd/modules/render/bgfx/shadermanager.h
@@ -16,12 +16,12 @@
#include <bgfx/bgfx.h>
-#include "modules/lib/osdobj_common.h"
-
#include <map>
#include <string>
+class osd_options;
+
class shader_manager {
public:
shader_manager() { }
diff --git a/src/osd/modules/render/bgfx/slider.cpp b/src/osd/modules/render/bgfx/slider.cpp
index bfd472f7a8a..452c934fd37 100644
--- a/src/osd/modules/render/bgfx/slider.cpp
+++ b/src/osd/modules/render/bgfx/slider.cpp
@@ -6,11 +6,11 @@
//
//============================================================
-#include "emu.h"
-
#include "slider.h"
#include "../frontend/mame/ui/slider.h"
+#include "strformat.h"
+
bgfx_slider::bgfx_slider(running_machine &machine, std::string name, float min, float def, float max, float step, slider_type type, screen_type screen, std::string format, std::string description, std::vector<std::string>& strings)
: m_name(name)
, m_step(step)
@@ -66,7 +66,7 @@ int32_t bgfx_slider::update(std::string *str, int32_t newval)
}
if (str != nullptr)
{
- *str = string_format(m_format, m_strings[as_int()]);
+ *str = util::string_format(m_format, m_strings[as_int()]);
}
return as_int();
}
@@ -79,7 +79,7 @@ int32_t bgfx_slider::update(std::string *str, int32_t newval)
}
if (str != nullptr)
{
- *str = string_format(m_format, as_int());
+ *str = util::string_format(m_format, as_int());
}
return as_int();
}
@@ -93,7 +93,7 @@ int32_t bgfx_slider::update(std::string *str, int32_t newval)
}
if (str != nullptr)
{
- *str = string_format(m_format, *val_ptr);
+ *str = util::string_format(m_format, *val_ptr);
}
return int32_t(floor(*val_ptr / m_step + 0.5f));
}
diff --git a/src/osd/modules/render/bgfx/slider.h b/src/osd/modules/render/bgfx/slider.h
index 21fb93cbe0d..d7815765c34 100644
--- a/src/osd/modules/render/bgfx/slider.h
+++ b/src/osd/modules/render/bgfx/slider.h
@@ -13,11 +13,15 @@
#include <bgfx/bgfx.h>
+#include <cmath>
+#include <memory>
#include <string>
#include <vector>
struct slider_state;
+class running_machine;
+
class bgfx_slider
{
public:
diff --git a/src/osd/modules/render/bgfx/sliderreader.cpp b/src/osd/modules/render/bgfx/sliderreader.cpp
index e74f10adcc9..208bc241559 100644
--- a/src/osd/modules/render/bgfx/sliderreader.cpp
+++ b/src/osd/modules/render/bgfx/sliderreader.cpp
@@ -8,7 +8,6 @@
#include "sliderreader.h"
-#include "emu.h"
#include "slider.h"
#include "chainmanager.h"
diff --git a/src/osd/modules/render/bgfx/slideruniform.cpp b/src/osd/modules/render/bgfx/slideruniform.cpp
index 6770c7e10ac..7a63b1e6901 100644
--- a/src/osd/modules/render/bgfx/slideruniform.cpp
+++ b/src/osd/modules/render/bgfx/slideruniform.cpp
@@ -9,7 +9,6 @@
//
//============================================================
-#include "emu.h"
#include "slideruniform.h"
#include "slider.h"
diff --git a/src/osd/modules/render/bgfx/slideruniformreader.cpp b/src/osd/modules/render/bgfx/slideruniformreader.cpp
index eb359a01b2c..314cff0b78b 100644
--- a/src/osd/modules/render/bgfx/slideruniformreader.cpp
+++ b/src/osd/modules/render/bgfx/slideruniformreader.cpp
@@ -6,7 +6,6 @@
//
//==================================================================
-#include "emu.h"
#include "slideruniformreader.h"
#include <vector>
diff --git a/src/osd/modules/render/bgfx/statereader.cpp b/src/osd/modules/render/bgfx/statereader.cpp
index afc6d652d9b..acaeddd35b5 100644
--- a/src/osd/modules/render/bgfx/statereader.cpp
+++ b/src/osd/modules/render/bgfx/statereader.cpp
@@ -9,8 +9,24 @@
#include "statereader.h"
+#include "osdcore.h"
+
#include <cmath>
+bool state_reader::READER_CHECK(bool condition, const char* format, ...)
+{
+ if (!condition)
+ {
+ va_list ap;
+ va_start(ap, format);
+ char buf[2048];
+ vsnprintf(buf, 2048, format, ap);
+ osd_printf_error("Error: %s\n", buf);
+ va_end(ap);
+ }
+ return condition;
+}
+
uint64_t state_reader::get_enum_from_value(const Value& value, std::string name, const uint64_t default_value, const string_to_enum* enums, const int count)
{
if (value.HasMember(name.c_str()))
diff --git a/src/osd/modules/render/bgfx/statereader.h b/src/osd/modules/render/bgfx/statereader.h
index d725eb792ee..43596bf4e94 100644
--- a/src/osd/modules/render/bgfx/statereader.h
+++ b/src/osd/modules/render/bgfx/statereader.h
@@ -14,10 +14,9 @@
#include <rapidjson/document.h>
+#include <cstdint>
#include <string>
-#include "osdcore.h"
-
using namespace rapidjson;
class state_reader
@@ -45,19 +44,7 @@ protected:
static uint64_t get_param_from_string(std::string value, const string_to_enum* enums, const int count);
protected:
- static bool READER_CHECK(bool condition, const char* format, ...)
- {
- if (!condition)
- {
- va_list ap;
- va_start(ap, format);
- char buf[2048];
- vsnprintf(buf, 2048, format, ap);
- osd_printf_error("Error: %s\n", buf);
- va_end(ap);
- }
- return condition;
- }
+ static bool READER_CHECK(bool condition, const char* format, ...);
private:
static void get_vec_values(const Value& value_array, float* data, const unsigned int count);
diff --git a/src/osd/modules/render/bgfx/suppressor.cpp b/src/osd/modules/render/bgfx/suppressor.cpp
index fa592255735..83dd403adf7 100644
--- a/src/osd/modules/render/bgfx/suppressor.cpp
+++ b/src/osd/modules/render/bgfx/suppressor.cpp
@@ -7,11 +7,12 @@
//
//============================================================
-#include "emu.h"
#include "suppressor.h"
#include "slider.h"
+#include <cstring>
+
bgfx_suppressor::bgfx_suppressor(std::vector<bgfx_slider*> sliders, uint32_t condition, combine_mode combine, void* value)
: m_sliders(sliders)
, m_condition(condition)
diff --git a/src/osd/modules/render/bgfx/suppressorreader.cpp b/src/osd/modules/render/bgfx/suppressorreader.cpp
index 024a99e20f8..d7eb2b21fb8 100644
--- a/src/osd/modules/render/bgfx/suppressorreader.cpp
+++ b/src/osd/modules/render/bgfx/suppressorreader.cpp
@@ -6,9 +6,6 @@
//
//============================================================
-#include "emu.h"
-#include <string>
-
#include "suppressorreader.h"
#include "suppressor.h"
diff --git a/src/osd/modules/render/bgfx/targetreader.cpp b/src/osd/modules/render/bgfx/targetreader.cpp
index e201f3c5f6e..e66a147d7ba 100644
--- a/src/osd/modules/render/bgfx/targetreader.cpp
+++ b/src/osd/modules/render/bgfx/targetreader.cpp
@@ -6,15 +6,15 @@
//
//============================================================
-#include <string>
+#include "targetreader.h"
-#include "emu.h"
#include <modules/lib/osdobj_common.h>
#include "chainmanager.h"
-#include "targetreader.h"
#include "target.h"
+#include <cmath>
+
const target_reader::string_to_enum target_reader::STYLE_NAMES[target_reader::STYLE_COUNT] = {
{ "guest", TARGET_STYLE_GUEST },
{ "native", TARGET_STYLE_NATIVE },
diff --git a/src/osd/modules/render/bgfx/texturemanager.cpp b/src/osd/modules/render/bgfx/texturemanager.cpp
index af960707523..82225f87eb0 100644
--- a/src/osd/modules/render/bgfx/texturemanager.cpp
+++ b/src/osd/modules/render/bgfx/texturemanager.cpp
@@ -9,13 +9,14 @@
//
//============================================================
-#include <bgfx/bgfx.h>
-
#include "texturemanager.h"
+
#include "texture.h"
#include "bgfxutil.h"
+#include "emucore.h"
#include "fileio.h"
#include "rendutil.h"
+#include "osdcore.h"
#include "modules/render/copyutil.h"
texture_manager::~texture_manager()
diff --git a/src/osd/modules/render/bgfx/texturemanager.h b/src/osd/modules/render/bgfx/texturemanager.h
index 3345a1b0ed6..db71f07c0fa 100644
--- a/src/osd/modules/render/bgfx/texturemanager.h
+++ b/src/osd/modules/render/bgfx/texturemanager.h
@@ -14,8 +14,9 @@
#ifndef DRAWBGFX_TEXTURE_MANAGER
#define DRAWBGFX_TEXTURE_MANAGER
-#include "emu.h"
+#include "bitmap.h"
+#include <cstdint>
#include <map>
#include <string>
diff --git a/src/osd/modules/render/bgfx/view.cpp b/src/osd/modules/render/bgfx/view.cpp
index 1e3b2a6000d..6935e19bca7 100644
--- a/src/osd/modules/render/bgfx/view.cpp
+++ b/src/osd/modules/render/bgfx/view.cpp
@@ -1,6 +1,9 @@
-#include "emu.h"
+// license:BSD-3-Clause
+// copyright-holders:Ryan Holtz
+
+#include "view.h"
+
#include "window.h"
-#include "rendutil.h"
#include "../drawbgfx.h"
#include <bx/math.h>
@@ -8,7 +11,6 @@
#include <bgfx/platform.h>
#include "target.h"
-#include "view.h"
void bgfx_view::update() {
std::shared_ptr<osd_window> win = m_renderer->assert_window();
diff --git a/src/osd/modules/render/bgfxutil.cpp b/src/osd/modules/render/bgfxutil.cpp
index 4fa4b8fbd07..e864cb98fb4 100644
--- a/src/osd/modules/render/bgfxutil.cpp
+++ b/src/osd/modules/render/bgfxutil.cpp
@@ -7,10 +7,10 @@
//============================================================
// MAMEOS headers
-#include "emu.h"
#include "bgfxutil.h"
#include "copyutil.h"
+#include "emucore.h"
#include "render.h"
diff --git a/src/osd/modules/render/bgfxutil.h b/src/osd/modules/render/bgfxutil.h
index e1b683cd024..db07e7fba77 100644
--- a/src/osd/modules/render/bgfxutil.h
+++ b/src/osd/modules/render/bgfxutil.h
@@ -7,6 +7,10 @@
#include <bgfx/bgfx.h>
+#include "palette.h"
+
+#include <cstdint>
+
/* sdl_info is the information about SDL for the current screen */
class bgfx_util
{
diff --git a/src/osd/modules/render/binpacker.cpp b/src/osd/modules/render/binpacker.cpp
index c213b99e1e8..7c605ff7275 100644
--- a/src/osd/modules/render/binpacker.cpp
+++ b/src/osd/modules/render/binpacker.cpp
@@ -6,9 +6,10 @@
//
//============================================================
-#include "emu.h"
#include "binpacker.h"
+
#include <algorithm>
+#include <cstddef>
bool rectangle_packer::pack(const std::vector<packable_rectangle>& rects, std::vector<std::vector<packed_rectangle>>& packs, int pack_size)
{
diff --git a/src/osd/modules/render/binpacker.h b/src/osd/modules/render/binpacker.h
index 55bd03116e5..1fb84596eec 100644
--- a/src/osd/modules/render/binpacker.h
+++ b/src/osd/modules/render/binpacker.h
@@ -5,7 +5,9 @@
#ifndef __RECTPACKER_H__
#define __RECTPACKER_H__
+#include "bitmap.h"
+#include <cstdint>
#include <vector>
class rectangle_packer
diff --git a/src/osd/modules/render/copyutil.h b/src/osd/modules/render/copyutil.h
index 295b5a10200..65a47a5b332 100644
--- a/src/osd/modules/render/copyutil.h
+++ b/src/osd/modules/render/copyutil.h
@@ -11,6 +11,10 @@
#ifndef __RENDER_COPYUTIL__
#define __RENDER_COPYUTIL__
+#include "palette.h"
+
+#include <cassert>
+
class copy_util
{
diff --git a/src/osd/modules/render/draw13.h b/src/osd/modules/render/draw13.h
index 21126e8d76a..d69c84c1c9d 100644
--- a/src/osd/modules/render/draw13.h
+++ b/src/osd/modules/render/draw13.h
@@ -25,6 +25,9 @@ typedef uint64_t HashT;
// standard SDL headers
#include <SDL2/SDL.h>
+#include "emucore.h"
+#include "render.h"
+
struct quad_setup_data
{
quad_setup_data()
diff --git a/src/osd/modules/render/drawbgfx.cpp b/src/osd/modules/render/drawbgfx.cpp
index 1806d749d66..fc9214fe446 100644
--- a/src/osd/modules/render/drawbgfx.cpp
+++ b/src/osd/modules/render/drawbgfx.cpp
@@ -25,6 +25,7 @@ extern void *GetOSWindow(void *wincontroller);
// MAMEOS headers
#include "emu.h"
#include "window.h"
+#include "render.h"
#include "rendutil.h"
#include "aviwrite.h"
@@ -49,6 +50,8 @@ extern void *GetOSWindow(void *wincontroller);
#include "bgfx/target.h"
#include "bgfx/view.h"
+#include "modules/lib/osdobj_common.h"
+
#include "imgui/imgui.h"
//============================================================
@@ -1047,6 +1050,30 @@ void renderer_bgfx::setup_ortho_view()
m_ortho_view->update();
}
+render_primitive_list *renderer_bgfx::get_primitives()
+{
+ auto win = try_getwindow();
+ if (win == nullptr)
+ return nullptr;
+
+ // determines whether the screen container is transformed by the chain's shaders
+ bool chain_transform = false;
+
+ // check the first chain
+ bgfx_chain* chain = this->m_chains->screen_chain(0);
+ if (chain != nullptr)
+ {
+ chain_transform = chain->transform();
+ }
+
+ osd_dim wdim = win->get_size();
+ if (wdim.width() > 0 && wdim.height() > 0)
+ win->target()->set_bounds(wdim.width(), wdim.height(), win->pixel_aspect());
+
+ win->target()->set_transform_container(!chain_transform);
+ return &win->target()->get_primitives();
+}
+
renderer_bgfx::buffer_status renderer_bgfx::buffer_primitives(bool atlas_valid, render_primitive** prim, bgfx::TransientVertexBuffer* buffer, int32_t screen)
{
int vertices = 0;
diff --git a/src/osd/modules/render/drawbgfx.h b/src/osd/modules/render/drawbgfx.h
index 6cbf2631b9d..fc728e41d67 100644
--- a/src/osd/modules/render/drawbgfx.h
+++ b/src/osd/modules/render/drawbgfx.h
@@ -15,7 +15,6 @@
#include "bgfx/chain.h"
#include "bgfx/chainmanager.h"
#include "sliderdirtynotifier.h"
-#include "../frontend/mame/ui/menuitem.h"
class texture_manager;
class target_manager;
@@ -58,29 +57,7 @@ public:
uint32_t get_window_width(uint32_t index) const;
uint32_t get_window_height(uint32_t index) const;
- virtual render_primitive_list *get_primitives() override
- {
- auto win = try_getwindow();
- if (win == nullptr)
- return nullptr;
-
- // determines whether the screen container is transformed by the chain's shaders
- bool chain_transform = false;
-
- // check the first chain
- bgfx_chain* chain = this->m_chains->screen_chain(0);
- if (chain != nullptr)
- {
- chain_transform = chain->transform();
- }
-
- osd_dim wdim = win->get_size();
- if (wdim.width() > 0 && wdim.height() > 0)
- win->target()->set_bounds(wdim.width(), wdim.height(), win->pixel_aspect());
-
- win->target()->set_transform_container(!chain_transform);
- return &win->target()->get_primitives();
- }
+ virtual render_primitive_list *get_primitives() override;
static char const *const WINDOW_PREFIX;
diff --git a/src/osd/modules/render/drawnone.cpp b/src/osd/modules/render/drawnone.cpp
index 6d9d433ecca..6f591879038 100644
--- a/src/osd/modules/render/drawnone.cpp
+++ b/src/osd/modules/render/drawnone.cpp
@@ -9,9 +9,6 @@
// standard windows headers
#include <windows.h>
-// MAME headers
-#include "emu.h"
-
#include "drawnone.h"
//============================================================
diff --git a/src/osd/modules/render/drawogl.h b/src/osd/modules/render/drawogl.h
index 891c5cec814..61b9794353c 100644
--- a/src/osd/modules/render/drawogl.h
+++ b/src/osd/modules/render/drawogl.h
@@ -34,6 +34,9 @@ typedef uint64_t HashT;
#include "modules/opengl/gl_shader_mgr.h"
+#include "emucore.h"
+#include "render.h"
+
//============================================================
// Textures
//============================================================
diff --git a/src/osd/modules/render/drawsdl.cpp b/src/osd/modules/render/drawsdl.cpp
index 1797c5be597..9e5de59c412 100644
--- a/src/osd/modules/render/drawsdl.cpp
+++ b/src/osd/modules/render/drawsdl.cpp
@@ -15,7 +15,7 @@
#include <cstdio>
// MAME headers
-#include "emu.h"
+#include "emucore.h"
#include "ui/uimain.h"
#include "rendersw.hxx"
diff --git a/src/osd/modules/sound/direct_sound.cpp b/src/osd/modules/sound/direct_sound.cpp
index 6727f8e1432..ff4ba567c2c 100644
--- a/src/osd/modules/sound/direct_sound.cpp
+++ b/src/osd/modules/sound/direct_sound.cpp
@@ -12,7 +12,7 @@
#if defined(OSD_WINDOWS) || defined(SDLMAME_WIN32)
// MAME headers
-#include "emu.h"
+#include "osdcore.h"
#include "osdepend.h"
#include "emuopts.h"
diff --git a/src/osd/modules/sound/pa_sound.cpp b/src/osd/modules/sound/pa_sound.cpp
index ce191b6086a..9472f6812cb 100644
--- a/src/osd/modules/sound/pa_sound.cpp
+++ b/src/osd/modules/sound/pa_sound.cpp
@@ -31,6 +31,8 @@
#define LOG_FILE "pa.log"
#define LOG_BUFCNT 0
+using osd::s16;
+
class sound_pa : public osd_module, public sound_module
{
public:
diff --git a/src/osd/modules/sound/pulse_sound.cpp b/src/osd/modules/sound/pulse_sound.cpp
index 7bb3f8c2a02..e9e6ea4d428 100644
--- a/src/osd/modules/sound/pulse_sound.cpp
+++ b/src/osd/modules/sound/pulse_sound.cpp
@@ -20,11 +20,15 @@
#include <stdlib.h>
#include <poll.h>
+#include <mutex>
#include <thread>
#include <pulse/pulseaudio.h>
#include "modules/lib/osdobj_common.h"
+using osd::s16;
+using osd::u32;
+
class sound_pulse : public osd_module, public sound_module
{
public:
@@ -293,7 +297,11 @@ int sound_pulse::init(osd_options const &options)
return 1;
pa_sample_spec ss;
- ss.format = ENDIANNESS_NATIVE == ENDIANNESS_BIG ? PA_SAMPLE_S16BE : PA_SAMPLE_S16LE;
+#ifdef LSB_FIRST
+ ss.format = PA_SAMPLE_S16LE;
+#else
+ ss.format = PA_SAMPLE_S16BE;
+#endif
ss.rate = sample_rate();
ss.channels = 2;
m_stream = pa_stream_new(m_context, "main output", &ss, nullptr);
diff --git a/src/osd/modules/sound/sdl_sound.cpp b/src/osd/modules/sound/sdl_sound.cpp
index 86917eeeb07..9b65a6c176b 100644
--- a/src/osd/modules/sound/sdl_sound.cpp
+++ b/src/osd/modules/sound/sdl_sound.cpp
@@ -17,8 +17,8 @@
#include <SDL2/SDL.h>
// MAME headers
-#include "emu.h"
#include "emuopts.h"
+#include "osdcore.h"
#include "../../sdl/osdsdl.h"
diff --git a/src/osd/modules/sound/sound_module.h b/src/osd/modules/sound/sound_module.h
index d9f597ad0d9..b72f50f7c8c 100644
--- a/src/osd/modules/sound/sound_module.h
+++ b/src/osd/modules/sound/sound_module.h
@@ -8,8 +8,7 @@
#ifndef SOUND_MODULE_H_
#define SOUND_MODULE_H_
-#include "osdepend.h"
-#include "modules/osdmodule.h"
+#include <cstdint>
//============================================================
// CONSTANTS
diff --git a/src/osd/modules/sound/xaudio2_sound.cpp b/src/osd/modules/sound/xaudio2_sound.cpp
index 2ec81fde836..2b797e7ec8f 100644
--- a/src/osd/modules/sound/xaudio2_sound.cpp
+++ b/src/osd/modules/sound/xaudio2_sound.cpp
@@ -22,13 +22,14 @@
#undef interface
// stdlib includes
+#include <algorithm>
+#include <chrono>
#include <mutex>
-#include <thread>
#include <queue>
-#include <chrono>
+#include <thread>
// MAME headers
-#include "emu.h"
+#include "osdcore.h"
#include "osdepend.h"
#include "winutil.h"