diff options
-rw-r--r-- | src/osd/modules/render/d3d/d3dhlsl.cpp | 6 | ||||
-rw-r--r-- | src/osd/windows/winmain.cpp | 1 | ||||
-rw-r--r-- | src/osd/windows/winmain.h | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/osd/modules/render/d3d/d3dhlsl.cpp b/src/osd/modules/render/d3d/d3dhlsl.cpp index 54d63e1029e..06e3533e04e 100644 --- a/src/osd/modules/render/d3d/d3dhlsl.cpp +++ b/src/osd/modules/render/d3d/d3dhlsl.cpp @@ -88,12 +88,12 @@ public: m_vid_surface->Release(); } - void record() + void record(const char *name) { if (!m_initialized) return; - m_avi_writer->record(); + m_avi_writer->record(name); } void save_frame() @@ -231,7 +231,7 @@ void shaders::record_movie() } recorder = std::make_unique<movie_recorder>(*machine, d3d, snap_width, snap_height); - recorder->record(); + recorder->record(downcast<windows_options &>(machine->options()).d3d_hlsl_write()); recording_movie = true; } diff --git a/src/osd/windows/winmain.cpp b/src/osd/windows/winmain.cpp index 01b1f02d418..f4197d31e55 100644 --- a/src/osd/windows/winmain.cpp +++ b/src/osd/windows/winmain.cpp @@ -160,6 +160,7 @@ const options_entry windows_options::s_option_entries[] = { WINOPTION_HLSLPATH, "hlsl", OPTION_STRING, "path to hlsl files" }, { WINOPTION_HLSL_ENABLE";hlsl", "0", OPTION_BOOLEAN, "enables HLSL post-processing (PS3.0 required)" }, { WINOPTION_HLSL_OVERSAMPLING, "0", OPTION_BOOLEAN, "enables HLSL oversampling" }, + { WINOPTION_HLSL_WRITE, nullptr, OPTION_STRING, "enables HLSL AVI writing (huge disk bandwidth suggested)" }, { WINOPTION_HLSL_SNAP_WIDTH, "2048", OPTION_STRING, "HLSL upscaled-snapshot width" }, { WINOPTION_HLSL_SNAP_HEIGHT, "1536", OPTION_STRING, "HLSL upscaled-snapshot height" }, { WINOPTION_SHADOW_MASK_TILE_MODE, "0", OPTION_INTEGER, "shadow mask tile mode (0 for screen based, 1 for source based)" }, diff --git a/src/osd/windows/winmain.h b/src/osd/windows/winmain.h index 8b8c4ff18e2..0abc85b674a 100644 --- a/src/osd/windows/winmain.h +++ b/src/osd/windows/winmain.h @@ -29,6 +29,7 @@ #define WINOPTION_HLSLPATH "hlslpath" #define WINOPTION_HLSL_ENABLE "hlsl_enable" #define WINOPTION_HLSL_OVERSAMPLING "hlsl_oversampling" +#define WINOPTION_HLSL_WRITE "hlsl_write" #define WINOPTION_HLSL_SNAP_WIDTH "hlsl_snap_width" #define WINOPTION_HLSL_SNAP_HEIGHT "hlsl_snap_height" #define WINOPTION_SHADOW_MASK_TILE_MODE "shadow_mask_tile_mode" @@ -129,6 +130,7 @@ public: const char *screen_post_fx_dir() const { return value(WINOPTION_HLSLPATH); } bool d3d_hlsl_enable() const { return bool_value(WINOPTION_HLSL_ENABLE); } bool d3d_hlsl_oversampling() const { return bool_value(WINOPTION_HLSL_OVERSAMPLING); } + const char *d3d_hlsl_write() const { return value(WINOPTION_HLSL_WRITE); } int d3d_snap_width() const { return int_value(WINOPTION_HLSL_SNAP_WIDTH); } int d3d_snap_height() const { return int_value(WINOPTION_HLSL_SNAP_HEIGHT); } int screen_shadow_mask_tile_mode() const { return int_value(WINOPTION_SHADOW_MASK_TILE_MODE); } |