Previous 199869 Revisions Next

r192030 Saturday 28th January, 2023 at 16:16:14 UTC by Vasantha Crabb
Various input and OSD refactoring:

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.
[docs/source/commandline]commandline-all.rst commandline-index.rst
[scripts/src/osd]modules.lua sdl.lua windows.lua
[src/emu]emuopts.cpp image.cpp input.cpp ioport.cpp machine.cpp main.cpp recording.cpp rendlay.cpp romload.cpp save.cpp screen.cpp sound.cpp validity.cpp video.cpp
[src/emu/debug]debugcon.cpp debugcpu.cpp
[src/emu/drivers]empty.cpp
[src/frontend/mame]infoxml.cpp mame.h mameopts.cpp
[src/frontend/mame/ui]auditmenu.cpp text.cpp
[src/mame]mame.cpp
[src/mame/ensoniq]esqpanel.cpp
[src/osd/modules]osdmodule.cpp osdmodule.h osdwindow.cpp osdwindow.h
[src/osd/modules/debugger]debug_module.h debuggdbstub.cpp debugimgui.cpp debugosx.mm debugqt.cpp debugwin.cpp none.cpp
[src/osd/modules/font]font_dwrite.cpp font_none.cpp font_osx.cpp font_sdl.cpp font_windows.cpp
[src/osd/modules/input]input_common.cpp input_common.h input_dinput.cpp input_dinput.h input_mac.cpp input_module.h input_none.cpp input_rawinput.cpp input_sdl.cpp input_sdlcommon.cpp input_sdlcommon.h input_win32.cpp input_wincommon.h* input_windows.cpp input_windows.h input_winhybrid.cpp input_x11.cpp input_xinput.cpp input_xinput.h
[src/osd/modules/lib]osdobj_common.cpp osdobj_common.h
[src/osd/modules/midi]midi_module.h none.cpp portmidi.cpp
[src/osd/modules/monitor]monitor_common.cpp monitor_common.h monitor_sdl.cpp
[src/osd/modules/netdev]netdev_module.h none.cpp pcap.cpp taptun.cpp
[src/osd/modules/output]console.cpp network.cpp none.cpp output_module.h win32_output.cpp win32_output.h
[src/osd/modules/render]draw13.cpp draw13.h drawd3d.cpp drawsdl.cpp drawsdl.h
[src/osd/modules/sound]coreaudio_sound.cpp direct_sound.cpp js_sound.cpp none.cpp pa_sound.cpp pulse_sound.cpp sdl_sound.cpp xaudio2_sound.cpp
[src/osd/sdl]osdsdl.cpp* osdsdl.h sdlmain.cpp sdlopts.cpp* sdlopts.h* video.cpp window.cpp window.h
[src/osd/windows]video.cpp window.cpp window.h winmain.cpp winmain.h winmenu.cpp winopts.cpp* winopts.h*


Previous 199869 Revisions Next


© 1997-2024 The MAME Team