17 Commits

Author SHA1 Message Date
ajrhacker
bd303b15dc Remove PORT_ROTATED from the core. This automatic joystick remapping feature has not been enabled in any driver for years. (#14200) 2025-09-25 08:57:39 +02:00
Vas Crabb
20a61a456e emu/ioport.cpp: Removed the "optional" field flag.
There are multiple issues with this flag:
* It's poorly defined.  Is it an input that's software-accessible but
  not used?  Is it an input that shows in test modes but doesn't do
  anything useful?  Is it an input that the system can be configured to
  not use?  Is it an input that is useful but not strictly necessary?
* In almost a decade, it hasn’t been used widely.  It was used in less
  than ten places.  There hasn't been substantial interest in actually
  applying it across the codebase.
* It would be an absolute nightmare to try and apply to mahjong and
  hanafuda games.  Consider all the cases where a game may use some but
  not all of the double-up game controls, and some games support
  multiple control schemes that use different subsets of the standard
  mahjong matrix.
* Trying to apply it to gambling systems would also be a minefield.
* If we were to expect it to be applied, it would cause an eplosion in
  input port definitions for platforms with multiple games, adding
  further maintenance burden.  It would greatly reduce the value of
  having things like the standard mahjong panel definitions as you'd
  rarely actually be able to use them as-is.
2025-09-22 03:16:40 +10:00
Vas Crabb
0bdb4f0669 Clean up various stuff.
docs: Explicitly state that installing a read/write tap returns the
pass-through handler.

cpu/mb86235: Using lowercas integer literal suffixes hurts readability,
especially when it's 1ll (compare to 1LL, especially in a Courier-like
font).

video/ppu2c0x_vt.cpp: Look for the patterns.

mame.lst: Expunge comments that started creeping back in.

taito/taitotz.cpp: Use versions as printed on Taito's hard disk labels
in descriptions.

debug/win: Requiring every debugger window class to care about the
console window's views is bad design.  That's a clear case of
unnecessary coupling.

posix/posixptty.cpp: Testing for glibc does not guarantee pty.h is
available.  It's possible to build glibc for targets where its PTY
wrapper functions are not implemented.
2025-07-01 06:35:44 +10:00
Firehawke
e88235f7b3 Small documentation fixes (#13672) 2025-05-08 18:20:43 +02:00
hap
f68b2d87a1 sound docs: small corrections after doing a quick read 2025-04-28 12:54:29 +02:00
Olivier Galibert
d0f1c15a0f New sound infrastructure.
Should be added soon:
- mute
- speaker/microphone resampling

To be added a little later:
- compression
- reverb

Needs to be added by someone else:
- coreaudio
- direct
- portaudio
- xaudio2
- js
2025-04-27 22:23:20 +02:00
hap
e294e5598f misc internal artwork: disable orange mouse pointer (false positive clickable artwork detection) 2024-04-14 01:10:07 +02:00
Vas Crabb
8e7af961c6 emu/rendlay.cpp, ui/ui.cpp: Allow layout views to control pointer display. 2024-04-14 07:36:45 +10:00
Vas Crabb
4ddd26fe21 Initial touch input support:
* 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.
2024-04-12 02:49:15 +10:00
Vas Crabb
b807708470 emu/diimage.cpp: Added media change notifier and exposed to Lua.
This allows interested parties to receive notifications on media
changes.  This is demonstrated by the file manager and media image
information menus now updating immediately if the system ejects a
mounted image, or a mounted image is changed by a script or something.

ui/filemngr.cpp, ui/info.cpp: Update file manager and media image
information menus immediately on media image changes.

ui/menu.cpp: Return index of added item from item_append.

bus/generic/slot.cpp: Use out-of-line virtual destructors to avoid
vtable link errors in certain single-driver builds.

bus/nubus: Tidy up some #include statements.
2023-12-14 02:06:19 +11:00
Vas Crabb
143f6c4508 luaengine.cpp: Restored ability for wait functions to yield values from coroutines.
Made the documentation on what it's supposed to do a bit clearer.
2023-11-17 02:56:56 +11:00
Vas Crabb
a101939009 -luaengine.cpp: Fixed jobs waiting for frame updates sleeping forever.
-sega_beena.cpp: Removed requires external artwork flag - the internal
 artwork is adequate.
2023-11-17 02:18:28 +11:00
Vas Crabb
6e60af32c1 sega/sega_beena.cpp: Added basic book page display.
sega_beena_cart.xml: Put page scans in individual data areas.

frontend/mame/luaengine_mem.cpp: Added a raw read function for memory
regions.

plugins/layout: Added bitmap classes to layout sandbox.
2023-11-04 00:37:48 +11:00
Vas Crabb
fccbed7657 Miscellaneous fixes:
* docs: Added option for Wayland support to compiling guide.
* docs: Clarified behaviour of memory region read/write methods.
* Fixed some editing errors in Turkish UI translation.
* Added some parentheses on ternary conditional operators for clarity.
2023-11-02 02:08:05 +11:00
Vas Crabb
e4ceeee567 Added some additional layout functionality and script bindings.
Also corrected some copy/paste errors in documentation, and bumped
documentation version as it now describes features that will appear in
an upcoming release.
2023-10-30 03:11:15 +11:00
Tom Cariello
30d92e397d docs: Fixed many editing errors and spelling errors. (#11575)
Also fixed outdated link to contributing guidelines.
2023-09-29 00:41:31 +10:00
Vas Crabb
12623c3fd3 docs: Moved Lua API reference to its own section - the page was far too long. 2023-07-06 09:52:10 +10:00