| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
explicitly initialize each member of ui_gfx_state (nw)
This code honestly deserves more modernization than this, but this is enough for now.
|
| |
|
|
|
|
|
| |
* Make input mapping menus more efficient - most of the properties of a field won't change
* Get rid of the pool allocator in base menu class - it was encouraging bad design
|
|
|
|
|
|
|
| |
* Cleaned up memory management in some more menus
* Don't walk the directory every time the crosshair menu is refreshed
* Sort crosshair pictures
* Show a selector menu when crosshair picture item is selected
|
| |
|
|
|
|
|
|
| |
* Made DIP switch display scale with UI font and improved layout
* Improved analog control display giving an indication of neutral position
* Fixed menu heading sizes not being recalculated after font is changed
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Changed emu_fatalerror to use util::string_format semantics
* Fixed some incorrectly marked up stuff in build scripts
* Make internal layout compression type a scoped enum (only zlib is supported still, but at least the values aren't magic numbers now)
* Fixed memory leaks in Xbox USB
* There can only be one "perfect quantum" device - enforce that only the root machine can set it, as allowing subdevices to will cause weird issues with slot cards overiding it
* Allow multiple devices to set maximum quantum and use the most restrictive one (it's maximum quantum, it would be minimum interleave)
* Got rid of device_slot_card_interface as it wasn't providing value
* Added a helper template to reduce certain kinds of boilerplate in slots/buses
* Cleaned up some particularly bad slot code (plenty more of that to do), and made some slots more idiomatic
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Tidy up comments
* Fix typos
* Fix spelling
* Tidy
* Tidy
|
| |
|
| |
|
|\
| |
| | |
luaengine: reduce memory usage during compilation
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previous semantics were encouraged by sol2, and ThePhD admitted it was a bad idea for usertypes with lots of members. sol3 allows to assign members outside a constructor for regular usertypes, but mame can't move to sol3 because it requires C++17. Turns out sol2 also has a way to add members separately, and that is what I used. This helps immensely.
This approach required a fix to warning C5046 copied from here https://github.com/ThePhD/sol2/commit/57990845726e17fba11a39cfcb1fc0127a7ea638
Tested current mame plugins, everything seems to work.
PS: Due to come black magic, if I use simple_usertype::set() with "manager" as well, "machine" member dies (others are fine!), so I had to leave it intact.
|
|/ |
|
|
|
|
| |
naming (nw)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(nw) This has been a long time coming but it's here at last. It should
be easier now that logerror, popmessage and osd_printf_* behave like
string_format and stream_format. Remember the differences from printf:
* Any object with a stream out operator works with %s
* %d, %i, %o, %x, %X, etc. work out the size by magic
* No sign extending promotion to int for short/char
* No widening/narrowing conversions for characters/strings
* Same rules on all platforms, insulated from C runtime library
* No format warnings from compiler
* Assert in debug builds if number of arguments doesn't match format
(nw) Also removed a pile of redundant c_str and string_format, and some
workarounds for not being able to portably format 64-bit integers or
long long.
|
|\
| |
| | |
Lua callback after sound update has generated new samples
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
| |
* Changed osd_get_clipboard_text() to return std::string
This change has only been tested on Windows. The Un*x/Mac versions were
made blindly; they might not even build. This needs to be checked prior
to merging.
* Fixing Mac OS X build (hopefully)
|
| |
|
| |
|
|
|
|
| |
name in UI menu. This is most likely to occur when multiple instances of the same device type are configured on bus slots.
|
|
|
|
| |
running_machine::hard_reset_pending() to LUA
|
|
|
|
| |
multi-threaded (nw)
|
|
|
|
| |
I'm assuming atronic.cpp was supposed to be Windows-1252 with Euro currency symbol encoding. Everyone please use UTF-8 for source files.
|
|
|
|
| |
to LUA
|
| |
|
|
|
|
| |
and exposing to LUA
|
|
|
|
|
|
|
| |
- Created emu.register_before_load_settings(), to allow LUA scripts to
override default input port values before settings are loaded
- New ioport_field methods/props ([set_]default_input_seq(), port)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This seems to work around a problem that (at least for me) caused the
'sol::object seq' parameter to not properly handle a specified
sol::user<input_seq>.
This problem could be reproduced with the following command at the LUA
console:
manager:machine():input():seq_poll_start("absolute",
manager:machine():input():seq_from_tokens("KEYCODE_Q"))
I would feel more comfortable if I understood why the existing code
failed; it isn't clear to me if this is a bug in our sol handling for
input_item_class, a bug in sol itself, or a compiler bug, but this
change works for me and should definitely not introduce any problems.
|
|
|
|
| |
LUA
|
|
|
|
|
|
|
|
|
|
| |
* luaengine: manager:machine():sound():samples()
* luaengine: fix natural_keyboard docs
* tiny cleanup as requested in #5348
* fix clang build
|
|
|
|
|
|
|
| |
namespaces
This is to keep things isolated to a single translation unit as much as
possible
|
|
|
|
| |
This is primarily to make the output be deterministic.
|
| |
|
| |
|
| |
|
|
|
|
| |
This is a bug fix to an earlier PR
|
|\
| |
| |
| |
| | |
npwoods/lua_manadatory_file_manager_override_changes
Changed mechanisms for overriding the mandatory file manager
|
| |
| |
| |
| |
| |
| |
| | |
- Removed the -skip_mandatory_fileman command line option
- Created an emu.register_mandatory_file_manager_override() LUA function
to allow LUA plugins to substitute the mandatory file manager
|
| |
| |
| |
| |
| | |
Also, we are now passing the stream to every function, rather than
sloppily keeping it in a member variable
|
|/
|
|
|
|
|
|
|
| |
Specifically, this simplifies that change by collapsing the newly
introduced enum info_xml_creator::devices_disposition into a bool, more
resembling what was there before.
It occurred to me that having a tristate was unnecessary, because the
need for filtering could be expressed by a null std::function for the filter
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
existing window (#5381)
* Creating an -attach_window command line parameter on Windows to attach
to an existing window
* Moved -attach_window option to Windows-specific code
* Created an osd_set_aggressive_input_focus() function and exposed to LUA
* Created a dummy implementation of osd_set_aggressive_input_focus() for
SDL
|
|
|
|
|
|
|
| |
- The two variations of output() no longer duplicate logic
- No longer relying on driver_enumerator::config() to create
machine_config objects. Because driver_enumerator would cache all
objects created, we would needlessly hog memory
|
|
|
|
| |
plugin_options code to use them
|
| |
|
| |
|
|\
| |
| | |
Refactored MAME's plugin system
|