summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/mac/video.cpp
Commit message (Collapse)AuthorAgeFilesLines
* osd/mac: Make compile again. Does not yet start up because BGFX tries to ↵ arbee2023-07-091-3/+0
| | | | force OpenGL. [R. Belmont]
* osd/mac, osd/sdl: Really inhibit full screen toggle in debug mode to prevent ↵ AJR2023-05-231-2/+2
| | | | accidental crashes
* Update accumulating relative inputs exactly once per frame. Vas Crabb2023-02-241-2/+2
| | | | | | | | | | | | | This fixes "amplification" effects that would happen if the frame rate rose above 100 Hz (whether by unthrottling or otherwise). Synchronise with wall clock any time inputs are read. Not doing this has weird effects on relative inputs with frame skipping and contributes to unresponsiveness of menus. Reduce visual latency for mouse movement on menus when paused or skipping frames. The rest of the code changes to menus won't provide benefits until draw can happen after event handling.
* osd: Cleaner way of dealing with input updates. Vas Crabb2023-02-231-11/+10
|
* osd: Don't pump events when reading inputs. Vas Crabb2023-02-231-1/+4
| | | | | | This was a drain on performance. If anything is trying to poll inputs in a loop, it needs to call input_update() to ensure it gets up-to-date state.
* osd: Fixed BGFX crash on toggling fullscreen on Linux. Vas Crabb2023-02-021-0/+3
| | | | Also fixed draw13.cpp upsetting older versions of clang.
* osd: Turned video modules into actual modules, fixed various issues. Vas Crabb2023-02-011-91/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Clean up #includes in src/osd (#10029) ajrhacker2022-07-041-0/+1
| | | | | * Clean up #includes in src/osd * render/bgfx/view.cpp: Add license header
* Remove keepaspect and fullstretch members of osd_video_config AJR2020-12-161-2/+0
|
* Add "Non-Integer Scaling" and "Keep Aspect" settings to UI video options ↵ AJR2020-12-171-15/+0
| | | | menu and remove SDL hotkeys for same
* video: higher maximum prescale (nw) hap2020-01-051-1/+1
|
* Remove up to one frame of input latency. (#5901) antonioginer2019-11-161-4/+12
| | | | | | | | | | * Remove up to one frame of input latency. Makes MAME virtually lagless on VRR monitors. * Use empty parentheses and clean interface member calls * Add new option -instant_blit to make this feature optional * Rename new option to -lowlatency, -ll
* Preliminary Mac native OSD. Not working yet. [R. Belmont] arbee2019-09-151-0/+316
This will compile, link, and run a driver all the way to the first info screen, provided you use -video bgfx. However, although there's a valid NSWindow created, it never actually appears on screen for unknown (but likely silly) reasons. Inputs are not implemented and fullscreen exists but is untried.