Previous 199869 Revisions Next

r194226 Tuesday 31st January, 2023 at 17:00:44 UTC by Vasantha Crabb
osd: Turned video modules into actual modules, fixed various issues.

Don't ignore the return status of OSD module initialisation.  Attempt to
fall back to an alternate module if the selected module fails to
initialise.  Log more useful diagnostic information at verbose level.

Fixed BGFX crash on exit after toggling fullscreen.  Also persist more
settings than just the selected chains across toggling fullscreen.

Turned video modules into OSD modules in the same sense as all the other
OSD modules.  They now use the same selection/fallback mechanism as all
the other modules without special extra code in the OSD implementations.

Untangled some object ownership mess.  Windows own renderers, OSD
objects own windows.  Fixed a refrence loop that caused the first window
object to always leak.

Don't create renderer object until after underlying window has been
created.  Fixed issues with order of creation/destruction when toggling
fullscreen or changing prescale in fullscreen with -switchres in SDL
builds.

Use more smart pointers in BGFX and Direct3D render modules.  Most of
the code now reutrns a smart pointer when handing over ownership or a
naked pointer when retaining ownership.  Fixed a few leaks and
simplified cleanup code.

Encapsulated various OSD modules better.
[/branches/pc_i440bx/scripts/src/osd]modules.lua sdl.lua windows.lua
[/branches/pc_i440bx/src/osd/mac]video.cpp window.cpp window.h
[/branches/pc_i440bx/src/osd/modules]osdmodule.cpp osdmodule.h osdwindow.cpp osdwindow.h
[/branches/pc_i440bx/src/osd/modules/debugger]debugwin.cpp
[/branches/pc_i440bx/src/osd/modules/debugger/win]debugwininfo.cpp
[/branches/pc_i440bx/src/osd/modules/font]font_module.h
[/branches/pc_i440bx/src/osd/modules/input]input_dinput.cpp input_rawinput.cpp input_win32.cpp
[/branches/pc_i440bx/src/osd/modules/lib]osdobj_common.cpp osdobj_common.h
[/branches/pc_i440bx/src/osd/modules/output]network.cpp output_module.h win32_output.cpp
[/branches/pc_i440bx/src/osd/modules/render]aviwrite.h blit13.h blit13.ipp* draw13.cpp draw13.h drawbgfx.cpp drawbgfx.h drawd3d.cpp drawd3d.h drawgdi.cpp drawgdi.h drawnone.cpp drawnone.h drawogl.cpp drawogl.h drawsdl.cpp drawsdl.h render_module.h*
[/branches/pc_i440bx/src/osd/modules/render/bgfx]chainmanager.cpp chainmanager.h effect.cpp effect.h effectmanager.cpp effectmanager.h effectreader.cpp effectreader.h shadermanager.cpp shadermanager.h uniformreader.cpp uniformreader.h view.cpp view.h
[/branches/pc_i440bx/src/osd/modules/render/d3d]d3dcomm.h d3dhlsl.cpp d3dhlsl.h
[/branches/pc_i440bx/src/osd/modules/sound]coreaudio_sound.cpp direct_sound.cpp js_sound.cpp pa_sound.cpp pulse_sound.cpp sdl_sound.cpp sound_module.h xaudio2_sound.cpp
[/branches/pc_i440bx/src/osd/sdl]osdsdl.cpp osdsdl.h video.cpp window.cpp window.h
[/branches/pc_i440bx/src/osd/windows]video.cpp window.cpp window.h winmain.cpp winmain.h


Previous 199869 Revisions Next


© 1997-2024 The MAME Team