summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/video.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Skeleton driver for 600 Cellular Activation Tester (#11225) MooglyGuy2023-05-131-1/+1
| | | | | | | | | | | | | | | | | * New systems marked not working ------------------------------ 600 Cellular Activation Tester [Ryan Holtz, Leo Romo] -m6801.cpp: Fixed HD6303R to use an internal map, removed internal-only handlers from associated drivers. [Ryan Holtz] -video.cpp: Raised maximum prescale value to 20 to account for very small LCDs. [Ryan Holtz] -screen.cpp: Replaced old MCFG_ references in a warning message with member function names. [Ryan Holtz] * -timekpr: Added Dallas DS1643, a clone of the STMicro M48T58. [Ryan Holtz]
* 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-1/+0
|
* osd: Don't pump events when reading inputs. Vas Crabb2023-02-231-1/+1
| | | | | | 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: Turned video modules into actual modules, fixed various issues. Vas Crabb2023-02-011-90/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Various input and OSD refactoring: Vas Crabb2023-01-291-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | osd: Supply OSD object to modules on initialisation. Encapsulated some event handling in the OSD objects rather than leaving it in free functions. Put various stuff in namespaces. osd/modules/input: Enabled dinput, xinput and winhybrid modules for Windows SDL builds, and enabled background input for dinput and xinput (and by extension winhybrid) modules. Also fixed some COM and X11 resource leaks. osd/modules/input/input_sdl.cpp: Flipped SDL mouse button order to match Windows, and exposed vertical and horizontal scroll as Z and rZ axes. Moved SDL UI event handling out of input devices into OSD object. osd/modules/input_rawinput.cpp: Changed lightgun Z axis token so it's correctly identified as a relative axis (it maps to the scroll wheel equivalent). osd: Added an option to choose the network provider module. Mostly useful if you build with both TUN/TAP and pcap support included, or if you want to disable emulated networking completely. emu/input.cpp: Use a better strategy for assembling input code names that uses fewer temporary strings and doesn't require use of the non-Unicode-aware space trimming function (fixes MT08552). osd/modules/input_dinput.cpp: Improved polling logic. osd: Made various parts of the input code less dependent on concrete emu objects, and reduced inappropriately passing around the machine object. Made input modules less dependent on OSD implementation. Encapsulated some stuff and got rid of some vestigial newui and SDL1 support code. Cleaned up some interfaces. Moved OSD options classes to their own files. Prepare to remove main.h from emu.h - it's mostly used to get the application name, which the vast majority of emulated devices don't need to do.
* 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-1/+0
|
* fixed some modernize-use-auto clang-tidy warnings (nw) (#6238) Oliver Stöneberg2020-01-301-1/+1
|
* fixed some clang-tidy warnings (nw) (#6197) Oliver Stöneberg2020-01-221-1/+1
| | | | | | | | | | | | | | * fixed some bugprone-throw-keyword-missing clang-tidy warnings (nw) * fixed some modernize-use-nullptr clang-tidy warnings (nw) * fixed some readability-delete-null-pointer clang-tidy warnings (nw) * fixed some performance-faster-string-find clang-tidy warnings (nw) * fixed some performance-for-range-copy clang-tidy warnings (nw) * fixed some readability-redundant-string-cstr clang-tidy warnings (nw)
* 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
* Changed a number of comment declarations to read *.cpp instead of *.c npwoods2019-06-161-1/+1
|
* Move special windows.h include directives to build defines (nw) Brad Hughes2016-12-281-1/+0
|
* Change window handle storage to template instead of void* (nw) (#1725) Brad Hughes2016-11-171-1/+1
| | | | * Change window handle storage to template instead of void* (nw)
* Small cleanup (nw) Miodrag Milanovic2016-11-111-1/+1
|
* Convert OSD monitor info to modules plus add DXGI implementation Brad Hughes2016-09-141-219/+1
|
* Cleanups and version bump Miodrag Milanovic2016-07-271-1/+1
|
* Changed strconv.[cpp|h] functions to return their results as std::string and ↵ Nathan Woods2016-07-241-5/+3
| | | | std::wstring
* Make monitor list a list of shared_ptr like window_list (nw) Brad Hughes2016-07-011-33/+37
|
* Move window_list to osd_common_t Brad Hughes2016-06-111-2/+2
|
* Unify window_list in Windows and SDL OSD Brad Hughes2016-06-101-2/+2
|
* Added ability to create standalone emulators, added zexall as example (nw) Miodrag Milanovic2016-05-081-1/+1
|
* Revert "Temp revert of Brad changes (nw)" Miodrag Milanovic2016-04-251-2/+2
| | | | This reverts commit 5e831f6506ee06f8c30cb113551ee0fec53804db.
* Temp revert of Brad changes (nw) Miodrag Milanovic2016-04-251-2/+2
|
* Various cleanups suggested by static analyzer (nw) Miodrag Milanovic2016-04-241-15/+15
|
* Split UI and frontend part from core [Miodrag Milanovic] Miodrag Milanovic2016-04-231-1/+0
|
* Refactor OSD window. Brad Hughes2016-04-211-2/+2
| | | | | | | | | | Unified renderer in osd_window as std::unique_ptr Made windows all std::shared_ptr<window_type> Made window lists std::list<std::shared_ptr<window_type>> Updated OSD SDL worker_param to not use malloc (not compatible with smart pointers) Made renderer pointer to window a weak reference. May not be available during destruction of the window.
* Standardize platform window pointer storage in osd_window. Brad Hughes2016-04-181-1/+1
| | | | Also encapsulate show/hide capture/release cursor functionality.
* Add AVI writing to bgfx, nw therealmogminer@gmail.com2016-04-171-8/+6
|
* Update windows to use platform independent watchdog implementation (nw) Miodrag Milanovic2016-04-151-4/+1
|
* Make sliders use an std::vector instead of a linked list, nw therealmogminer@gmail.com2016-04-101-9/+0
|
* move common struct to common place (nw) Miodrag Milanovic2016-04-041-1/+1
|
* Implement integer scaling in core renderer [Calamity] Antonio Giner2016-03-151-15/+0
|
* cleanup (nw) Miodrag Milanovic2016-02-291-1/+0
|
* Merge input modules work. Brad Hughes2016-02-281-1/+1
|\
| * Refactor OSD input into modules Brad Hughes2016-02-281-1/+1
| |
* | Fix D3D and BGFX fullscreen toggle issues, nw therealmogminer@gmail.com2016-02-221-0/+1
| |
* | Final fixups, get sliders working again, nw therealmogminer@gmail.com2016-02-211-22/+2
| |
* | More reshuffling, nw therealmogminer@gmail.com2016-02-211-3/+35
| |
* | First take on render API reorg, nw therealmogminer@gmail.com2016-02-211-1/+4
| |
* | Dropped ddraw renderer (nw) Miodrag Milanovic2016-02-171-5/+0
| |
* | placed back OPENGL check since GL is not same as GLES (nw) Miodrag Milanovic2016-02-161-44/+48
| |
* | BGFX mandatory requirement (nw) Miodrag Milanovic2016-02-161-2/+0
| |
* | opengl as requirement (nw) Miodrag Milanovic2016-02-161-48/+44
|/
* modernized ui_input_manager (nw) Miodrag Milanovic2016-01-101-4/+4
|
* more cleanups and fix (nw) Miodrag Milanovic2015-11-111-6/+1
|
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-0/+521