| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
order to be more license-compliant. [Ryan Holtz]
|
|
|
|
|
|
|
|
|
|
| |
* Add doxygen comments for bit manipulation functions
* Add an overload of BIT that works like the AArch64 UBFX instruction
* Kill off some of the silly concatenating overloads for emu_file::open
* Make searchpath acually useful for devices
This is a checkpoint - I'm planning to improve ROM loading behaviour at
least a little.
|
|
|
|
|
|
|
|
| |
* luaengine: save state to/from binary string buffer
* account for error
* luaL_error makes it exit immediately, but explicit return is required by compiler. actual return is nil if it fails.
|
| |
|
| |
|
|
|
|
| |
This is intended as a functional replacement for lfs.env_replace, but that is now used in a fair number of plugins whose code structure I don't know well enough to trust that the simple substitution is correct.
|
|
|
|
| |
release (nw)
|
|\
| |
| | |
use C++ library includes (nw)
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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)
|
|
|
|
|
|
| |
* luaengine: allow reading a block of raw bytes for addr_space
* redo space:read_block() to be more rebust and flexible
|
|
|
|
|
|
| |
them (SDL normally strips these out)
Don't strip linefeed characters (Ctrl-J) from natural keyboard input except when pasting strings
|
|
|
|
|
|
|
|
| |
you which list it will load
XML attributes are order-insensitive - compliant validators (e.g. libxml2's
xmllint) accepted the XML how it was before. It would be better if parsers
didn't enforce rules that don't exist.
|
|
|
| |
Fixes QMC2 software list display.
|
|
|
|
|
|
| |
* lua: add address_mask and endianness to addr_space library
* lua: add space.data_width
|
| |
|
|
|
|
|
|
| |
slot cards.
(nw) These verbs are still horribly inefficient and don't preserve all the information from the input software list. This isn't supposed to solve those problems, it just makes the verbs no longer blind to stuff like the Spectrum Miles Gordon floppy list and Spectrum Wafadrive list.
|
| |
|
|
|
|
|
|
| |
(nw) This will at least let a front-end work out that a slot card allows
the use of an additional software list (e.g. spectrum -exp plusd enables
spectrum_mgt_flop.xml). I'll do a reference implementation in minimaws.
|
|
|
|
| |
discovered
|
|
|
|
| |
by default (e.g. spectrum_mgt_flop)
|
|
|
|
| |
members themselves are n-dimensional arrays - see qsoundhle.cpp for an example of loops disappearing. This can greatly reduce the number of save state registrations in some cases. Obviously I want to know if save states are broken in something by this.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
* Re-wrote localisation loader: sanitise input, check for buffer overruns, fix endianness handling, keep data in a single allocated block, do a single hash lookup when fetching a string, print diagnostic output when things go wrong
* Sort UI language menu so it's not in whatever random order the filesystem yields
* Fixed most menu code to adjust L/R border for UI aspect ratio and pass container to render manager when getting UI aspect ratio
* Converted a couple more things to use smart pointers
|
|
|
|
|
|
|
|
| |
thing as invalid (e.g. A S not A)
ioport.cpp:
* better than 50% reduction in compile time, and better locality for static data
* better encapsulation, const correctness and noexcept usage
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* When a switch-type input is selected, show feedback when it's pressed
* If an invalid code is entered (e.g. only negatives) abandon the change rather than cycling default/none
* If an invalid code is entered display a message until the user takes some other action
input.cpp updates:
* constexpr crusade on input_code and input_seq and some very slight optimisation to input_seq
* seq_poll* is a frontend function and had no business being in the core, so it's a utility class now
* seq_poll* now exposes a bit more detail, enabling improved interaction on the UI inputs menu
* global state is reduced a little, but the poll_* functions are still members of the input manager with global state
(nw) The Lua engine has been updated in a way that maintains source compatibility with existing Lua
scripts. This is less than ideal, but it minimises impact. Ideally someone (possibly me) will be
able to expose the input sequence poller helper properly. I tested the changes with the cheat and
autofire plugins and I was able to assign sequences. However I found two issues: it's seems
impossible to assign a more complex sequence than a single key/button in the autofire plugin (i.e.
no AND or NOT conditions, I confirmed this is pre-existing, not a regression), and in both the cheat
and autofire plugins I found it a bit unwieldy trying to enter a complex sequence without live
feedback of the sequence as it's built (this was also applicable to MAME's own input mapping menu
until I added the live display yesterday).
|
|
|
|
|
|
|
|
| |
PORT_CONDITION can now enabled/disabled the display of PORT_ADJUSTER
sliders in the UI, i.e.
PORT_START("SOMEPORT")
PORT_ADJUSTER(...) PORT_CONDITION("OTHERPORT", ...)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the first thing pressed
(nw) It's annoying that if you accidentally start to change an input, there's no way to
back out at all. You need to press something before it will do anything. Also, if you
go to add an additional "or" combination and press the wrong thing, you can't back out
just the change - hitting UI_CANCEL takes you back to the default. This at least
partially addresses it: if you hit UI_SELECT to modify an input then hit UI_CANCEL
immediately, it will cycle default/none; however if you press any other input first and
then hit UI_CANCEL, it will just back out the change. The implementation is a bit
whacky at the moment, but doing better would require another emu.h change which I don't
want to do right now.
|
|
|
|
| |
ae2cc6853d935d3daeadd84b0b740af82ea9c41e - it's broken in some corner cases but the regressions are fixed
|
|
|
|
| |
of what's going on
|
| |
|
|
|
|
|
|
|
|
| |
* Hook up focus next/focus prev on system/software selection menus (Tab and LShift-Tab, respectively by default)
* Allow joystick buttons to be used to change focus on system/software selection menus
* Fixed bug that allowed focus to move to hidden panels
(nw) Second attempt at doing this, and it worked fine. Must've been in bad mental health when I tried and failed to do this back in May
|
| |
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
| |
|