summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules (follow)
Commit message (Collapse)AuthorAgeFilesLines
* debugger/debugimgui.cpp: Refuse to break if unable to take over UI input. Vas Crabb7 days1-8/+12
|
* d3dhlsl: fix possible array overflow with system name string hap7 days2-3/+3
|
* Initial touch input support: Vas Crabb7 days7-201/+579
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Feed mouse/pen/touch pointer events through UI input manager with Win32 and SDL. * Started migrating UI code to use new API and reworking mouse/touch interaction. * emu/render.cpp: Support pressing multiple clickable layout items simultaneously. * emu/render.cpp: Allow UI elements to be drawn in any window. * emu/rendlay.cpp, luaengine_render.cpp: Added layout view events for pointer input. * ui/ui.cpp: Allow the UI handler to control pointer display. * ui/analogipt.cpp: Added mouse/touch and more keys for navigating field state list. * ui/menu.cpp: Use vertical swipe to scroll and horizontal swipe to adjust. * ui/menu.cpp: Draw after processing input - greatly improves responsiveness. * ui/menu.cpp: Ignore keyboard/gamepad input during pointer actions. * ui/selmenu.cpp: Made left/right info pane arrows repeat when held. * ui/selmenu.cpp: Use middle click to move keyboard focus. * ui/selmenu.cpp: Let filter list scroll if it's too tall, and use a bit of horizontal padding. * ui/selmenu.cpp: Improved divider sizing. * ui/state.cpp: Don't allow clicks to pass through the confirm deletion prompt to the menu. * ui/simpleselgame.cpp: Fixed error message display and graphics/sound status not showing. * ui/simpleselgame.cpp: Allow tap/click to dismiss error message. * ui/utils.cpp: Show UI for choice filters when there are no choices - it's less confusing. * modules/input/input_sdl.cpp: Made scaling for mouse scroll better match RawInput and DirectInput. * modules/input/input_rawinput.cpp: Added support for horizontal scroll axis. * modules/input/input_win32.cpp: Added support for scroll axes and more buttons to mouse/lightgun. * modules/debugger/debugimgui.cpp: Don't fight over events with the UI manager - it breaks menus. * osd/windows/window.cpp: Translate mouse position to window cooridinates for scroll wheel events. * osd/sdl/window.cpp: Supply last mouse position for scroll wheel events if possible. * scripts/build/complay.py: Made zero input mask an error - it was only being used to block clicks.
* Drop support for GCC < 10.3, clang 6, SDL < 2.0.14 and Qt 5.10. Vas Crabb2024-03-283-61/+12
|
* -debugger/debuggdbstub.cpp: Don't write data to socket in text mode. Vas Crabb2024-03-251-24/+20
| | | | -mr/dribling.cpp, heathkit/h17_fdc.cpp: Tidy up a little.
* drawogl: increase texture hashtable size (emirage/robotadv were crashing ↵ hap2024-03-201-2/+2
| | | | with opengl renderer)
* -input/input_rawinput.cpp: Properly align buffers for RAWINPUT header Vas Crabb2024-03-071-7/+7
| | | | -jaleco/megasys1.cpp: Clarified comment about MCU program used for chimerab.
* osd/modules/input: Various cleanup and minor enhancements. Vas Crabb2024-03-046-326/+243
| | | | | | | | | | | | | | | | | | | input_common.h: Got rid of the DirectInput key code macros. DirectInput headers are always available on Windows - it's just an opportunity for bygs. input_common.cpp: Added default names for keys mapped to MAME's "other switch" type. input_rawinput.cpp: Simulate Pause key being held for 30ms, similarly to what's done for Caps Lock on macOS with SDL. Also added a gross hack to give "correct" names for Pause and Num Lock. input_sdl.cpp: Get default key names from SDL. Not really that useful as it isn't aware of the current keyboard layout. Key map files are still needed for anything other than a US ANSI layout. Also added some comments.
* osd: Cleaned up MIDI and network interfaces a little more. Vas Crabb2024-03-017-209/+230
|
* gdbstub: fix checksum on Windows (#12067) BartmanAbyss2024-02-271-4/+7
| | | gdbstub: fix m68000 register names
* osd/osdnet.cpp: Removed dependency from OSD network device to libemu. (#12058) Vas Crabb2024-02-252-25/+34
| | | | * This allows save states to be created and loaded when network interfaces are present. * device_network_interface may need some more attention to get save states taken while receiving a packet to work properly.
* Removed some unnecessary backslash line continuations. (#12047) amameuser2024-02-213-10/+10
| | | | | | * Removed unnecessary preprocessor line continuations from C++ code. * Use parentheses to avoid need for line continuations in expressions in Python code. * Removed line continuations at the end of lists in makefiles. * cpu/m68000: Regenerated C++ source files.
* input_windows: remove doubled key hap2024-02-161-1/+1
|
* - osd sdl default keys: remove ctrl-blocks on f3 and f4, move opengl filter ↵ hap2024-02-161-7/+8
| | | | | | | from lctrl+f5 to lalt+f10, - osd windows default keys: move post processing key from lctrl+lalt+f5 to lalt+f10, - mame default keys: move rewind step from shit+tilde to shift+f4, move cheat from shift+f6 to shift+f8, move quick save/load from (none) to shift+f6/f7
* Fixed OSD interaction with updated default keys. [R. Belmont] arbee2024-02-131-0/+5
|
* debugimgui: fix lockup and debug assert Barry Rodewald2024-02-091-6/+10
|
* Fix compilation against musl (#12000) Elaine Gibson2024-02-031-1/+1
|
* debugger/debuggdbstub.cpp: Added aliases for some MOS 6502-compatible CPUs. ↵ John Byrd2024-01-211-0/+5
| | | | | (#11953) Allows m6507, m6510, m65c02, m65ce02 and w65c02s to be debugged with GDB stub.
* modules/render/bgfx/clearreader.cpp: Use std::clamp AJR2023-11-041-3/+3
|
* Miscellaneous change roll-up: Vas Crabb2023-09-291-24/+34
| | | | | | | | | | | | | | | | | | | | | | | | render/drawbgfx.cpp: Return an error if Wayland EGL surface can't be created for additional windows. emu/emucore.h: Added explicitly defaulted copy and move constructors for emu_fatalerror. Fixed apparent misunderstanding of const. Returning const value types and casting to const value types is pointless outside very narrow use cases. Putting const value type parameters in interfaces just makes trouble. cpu/adsp2100: Use count_leading_ones_32 where it's simple rather than inverting and counting leading zeroes. util/multibyte.h: Don't pollute global namespace, constexpr implies inline, make narrowing casts explicit. imagedev/simh_tape_image.h: inline is implied for member functions with bodies supplied at declaration. Tidied up some ugly casts in various places.
* render/drawbgfx.cpp: Added initial support for Wayland on Linux. (#11451) Julian Sikorski2023-09-291-4/+44
|
* Remove flopimg.h and fsmgr.h from floppy device header AJR2023-09-241-0/+2
|
* Revert "Updated bgfx, bx and bimg to current upstream versions. (#11493)" Vas Crabb2023-09-081-5/+5
| | | | This reverts commit 1c61ccfe840cdae7a9f92292946a45f3b47e2412.
* Updated bgfx, bx and bimg to current upstream versions. (#11493) Julian Sikorski2023-09-061-5/+5
| | | | | | * Reverted "macOS, iOS: Removed OpenGL/OpenGLES support. (commit 4693983242a698eaafed87faf4ffef1789adc8f9). * Reverted "Fix macOS build" (commit ce2c2c13eda7d699051f75f598e740a447343a88). * Reverted "macOS: Fixed deprecated warnings." (commit 10a8cb61f882ebc9bb376ee2341d003880b7037f). * Added bgfx/README.mame explaining deviations from upstream.
* Fixed MinGW AArch64 issues: (#11521) invertego2023-09-021-8/+61
| | | | * 3rdparty/bimg: Don't enable SSE on MinGW arm64 targets. * diagnostics/diagnostics_win32.cpp: Added Windows arm64 support.
* render/drawogl.cpp: Size point primitives properly. This fixes ↵ AJR2023-08-221-1/+4
| | | | -beam_dot_size being effectively ignored by this renderer.
* render/draw13.cpp: Avoid divide-by-zero with low-resolution time source. ↵ Rob2023-08-011-1/+1
| | | | | (#11442) Emscripten builds are affected as clock resolution is intentionally degraded to mitigate side channel exfiltration attacks.
* render/drawsdl.cpp: Don't request OpenGL context. (#11435) hiromasa2023-07-301-1/+1
|
* js_sound.js: fix sound level default for underrunning case (#11317) holub2023-07-241-3/+4
|
* Allow the use of either Qt5 or Qt6 on Linux (#11413) Jindřich Makovička2023-07-144-2/+20
| | | | | | * Look for MOC in QT_HOME/libexec if not found in QT_HOME/bin * Use the Qt6* libraries if the Qt version is >= 6 * Switch the include paths for QAction & QActionGroup for Qt >= 6 * Replace the deprecated + operator for keys with |
* Miscellaneous cleanup Vas Crabb2023-06-247-67/+56
|
* xbox_nv2a: better fix for dangling pointer warning, hap2023-06-141-7/+7
| | | | coleco: remove romhacked bios rom
* osd/modules: Cleaned up most macOS deprecation warnings up to and including ↵ arbee2023-06-1012-71/+105
| | | | | | | | | 10.13. [R. Belmont] * This raises the hard minimum macOS and SDK versions to 10.13. * In practice, the minimum since 0.252 has been macOS 11 Big Sur. * 10.13/10.14/10.15 can be built and run with this unsupported patch: https://gist.github.com/rb6502/8a1736ee3775f998e8e71faa47ae4b59 The patch works for me, but no guarantees are offered and it may break at any time.
* BGFX and D3D9 renderer fixes for issues #11104, #11106, and #11107 (#11249) MooglyGuy2023-05-202-5/+12
| | | | | * -hlsl.json: Removed duplicate scanline_variation setting. (#11107) [Ryan Holtz] * -d3dhlsl.cpp: Fixed lack of post-pass application when bloom is disabled. (#11104) [Ryan Holtz] * -drawd3d.cpp: Always set a default texture at scene start. (#11106) [Ryan Holtz]
* 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]
* sinclair/sprinter.cpp: Added Sprinter Sp2000 enhanced Spectrum clone. (#11018) holub2023-05-121-0/+1
| | | | | | | cpu/z80: Added support for variants with address translation and implemented Z84C015 chip selects. New working clones ------------------- Peters Plus, Ivan Mak Sprinter Sp2000
* osdlib.h: Add missing #include AJR2023-05-061-0/+1
|
* taptun: fix adapter detection on windows for newer versions of taptun driver Patrick Mackinlay2023-04-251-9/+14
|
* Miscellaneous improvements: Vas Crabb2023-04-145-33/+37
| | | | | | | | | | | | | | infoxml.cpp: Thread device processing. Gives about a 10% speed improvement overall, and avoids the need to mess with the locale of the ultimate output stream. debugger/win/consolewininfo.cpp: Show image mount/create error messages on the console. emu/devdelegate.h, util/delegate.h: Added deduction guides for common delegate creation patterns (only used in sega/segas16a.cpp so far). More noexcept on things that have no business throwing exceptions.
* Allow loading PNG/JPEG/MS DIB bitmaps from Lua, and cleanup. Vas Crabb2023-04-131-2/+2
| | | | | | | | | | | Use VirtualAlloc rather than VirtualProtect on Windows to change page protection, as the latter can cause severe performance issues with some antivirus software. Added noexcept to lots of hash- and bitmap-related things, and added a little more error checking. Yes, I realise it will abort if an allocation fails while printing a log message, but if you get to that point, you're probably screwed already.
* osd/windows: Create single-threaded COM apartment on main thread. Vas Crabb2023-04-083-28/+3
|
* Restored ability of for image devices to report specific error messages. Vas Crabb2023-04-082-5/+5
| | | | | | | | | | | | | | Restores ability to give specific/detailed messages removed in 6f7e4141ea14acaaf9cb973c66788fabb3457023 while pandering to obsession with single return value. Moved responsibility for displaying the error message in the UI to the caller rather than device_image_interface, and made device_image_interface always log the error along with the full path and error condition content. Gave several image devices more detailed error messages. Added some FIXME comments for apparent bugs.
* API change for device_image_interface AJR2023-03-302-5/+6
| | | | | | | | | - Remove the seterror method for recording error messages and conditions. Condition codes have been made return values for call_load, call_create and various related callbacks. Error messages (which many devices weren't generating) are now displayed through osd_printf_error. - Eliminate the image_init_result and image_verify_result pass/fail enumeration types. Update many functions that were returning these enumerations or simply bools to return std::error_condition instead. In some cases, this type is now passed down from internal parsing/loading functions which were already returning it. In various other cases, the former default UNSPECIFIED has been used as a catchall for I/O errors; anticipated future refactorings should make these error returns more specific. - Expand the image_error categories to include INVALIDLENGTH, NOSOFTWARE and BADSOFTWARE. The first is largely self-explanatory. The second is generated by the core to indicate failure to find software items in lists. The third is provided for devices to indicate semantic errors in software list entries. - Change the return type of floppy_image_device::identify to a pair so the potential error condition can be passed along to the UI without storing it in a member variable. - Move device_image_interface::message down into snapshot_image_device and change its implementation to use string_format instead of printf. - Correct a typo in the shortname of the generic snapshot device.
* Bump version to 0.253mame0253 Vas Crabb2023-03-301-2/+2
|
* osd/modules/input/input_dinput.cpp: Adjusted heuristics to work better with ↵ Vas Crabb2023-03-292-25/+25
| | | | newer DualShock/DualSense controllers.
* input/input_dinput.h: Work around inability to have stdcall non-capturing ↵ Vas Crabb2023-03-261-4/+8
| | | | lambdas (fixes 32-bit MinGW build).
* Various optimisations to code generaton. Vas Crabb2023-03-264-6/+6
| | | | | | | | | | | | | | | util/bitmap.cpp, util/palette.cpp: Marked lots of things constexpr. Bitmaps don't throw exceptions on allocation failure, they just become invalid. Almost nothing in MAME actually checks for this. emu/profiler.cpp: Abort if the profile stack overflows rather than throwing an exception. This is a developer feature and if it overflows, the code is broken. Calling a noreturn noexcept function generates less code than throwing an exception, which adds up. util/strformat.cpp: Traded away some unnecessary flexibility for more compact code. The stream objects must derive from std::basic_ostream now - they can't just be any old objects with the expected operators.
* Retired the over-stretched "system type" flags. Vas Crabb2023-03-231-1/+1
| | | | | | | | | | | | | | | | Functionally, the only difference between the system definitions is that GAMEL lets you specify an additional internal layout and SYST lets you specify a compatible system. COMP and CONS are just aliases for SYST - the aliases can be phased out. Removed arcade.flt and mess.flt altogether - opinion seems to be split between misinterpreting them as fully supported and considering them unnecessary. They were marginally useful as a performance test for makedep.py, but that isn't important. We still have nl.flt as an example .flt file (although it doesn't use "-" exclude directives). Moved the UI active flag from the machine to the UI manager. Nothing else uses it anyway (it's still accessible to scripts).
* Miscellaneous cleanup: Vas Crabb2023-03-211-2/+4
| | | | | | | | | render/bgfx/chainmanager.cpp: Only treat source file or more sepecific INI as higher priority than CFG file for setting screen chains. sega/model2.cpp, taito/taitocchip.cpp: Got rid of bankdev. Adjusted some doucmentation files.
* -render/d3d/d3dhlsl.cpp: Fixed alpha value when clearing target. [Ryan Holtz] Vas Crabb2023-03-211-1/+1
| | | | -jaleco/tetrisp2_v.cpp: Fixed stepstag text display. [Vas Crabb]