summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/debugger/qt
Commit message (Collapse)AuthorAgeFilesLines
* Fix crashes in Qt debugger caused by trying to select a nonexistent ↵ AJR2021-05-112-16/+22
| | | | disassembly or memory view
* Debuger updates: Vas Crabb2021-01-302-2/+19
| | | | | * Improved behaviour of bottom line in Qt and win32 debugger views. * Ported memory tracking feature from Qt to win32 module.
* Bug fixes and usablility enhancements: Vas Crabb2021-01-291-29/+34
| | | | | | * Declare intent when requesting virtual memory (for NetBSD, 7712) * Improve scrolling behaviour in Qt debugger (MT07795) * Added prompts to input mapping menu to make it less intimidating
* -Qt debugger updates: Vas Crabb2021-01-2818-685/+666
| | | | | | | | * Added context menu with Copy Visible and Paste commands to debug views (partially addresses #6066). * Made memory view last PC display a context menu item. * Fixed crash on right-clicking a memory view showing something other than an address space. -debugger: Fixed commas in dumpkbd output.
* Fairly significant overhaul of Lua engine and some cleanup. Vas Crabb2020-11-251-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The things that were previously called device iterators are not iterators in the C++ sense of the word. This is confusing for newcomers. These have been renamed to be device enumerators. Several Lua methods and properties that previously returned tables now return lightweight wrappers for the underlying objects. This means creating them is a lot faster, but you can't modify them, and the performance characteristics of different operations varies. The render manager's target list uses 1-based indexing to be more like idiomatic Lua. It's now possible to create a device enumerator on any device, and then get subdevices (or sibling devices) using a relative tag. Much more render/layout functionality has been exposed to Lua. Layout scripts now have access to the layout file and can directly set the state of an item with no bindings, or register callbacks to obtain state. Some things that were previously methods are now read-only properties. Layout files are no longer required to supply a "name". This was problematic because the same layout file could be loaded for multiple instances of the same device, and each instance of the layout file should use the correct inputs (and in the future outputs) for the device instance it's associated with. This should also fix video output with MSVC builds by avoiding delegates that return things that don't fit in a register.
* Last memory change fixes (nw) Olivier Galibert2020-05-252-5/+6
|
* Debugger expression and memory access overhaul AJR2020-05-254-39/+65
| | | | | | | | | | | | | - Memory references in expressions no longer default to the console's visible CPU if no device name was specified, except when entered through the console itself. Expressions in view windows now use the context of the currently selected device instead. - The pcatmem debug command and similar qt mouseover function now produce an error message if the initial address translation fails. Related internal changes (nw) - The debugger_cpu class no longer interprets memory accesses. The existing routines have been moved into symbol_table (which used to invoke them as callbacks), and reimplemented in most other places. Thecode duplication is a bit messy, but could be potentially improved in the future with new utility classes. - The cheat engine no longer needs to hook into the debugger_cpu class or instantiate a dummy instance of it. - The inclusion of debug/express.h within emu.h has been undone. Some debugging structures now need unique_ptr to wrap the resulting incomplete classes; hopefully the performance impact of this is negligible. Another direct consequence is that the breakpoint, watchpoint and registerpoint classes are no longer inside device_debug and have their own source file. - The breakpoint list is now a std::multimap, using the addresses as keys to hopefully expedite lookup. - The visible CPU pointer has been removed from the debugger_cpu class, being now considered a property of the console instead. - Many minor bits of code have been simplified.
* Hey Travis, go test that for me, thanks (nw) Olivier Galibert2020-03-312-0/+6
|
* Fix some deprecations (nw) Olivier Galibert2020-03-312-3/+3
|
* misc cleanup: Vas Crabb2019-11-183-12/+32
| | | | | | | * Got rid of some more simple_list in core debugger code * Fixed a buffer overrun in wavwrite (buffer half requried size) * Slightly reduced dependencies and overhead in wavwrite * Made new disassembly windows in Qt debugger default to current CPU
* Fix QT debugger (nw) AJR2019-09-101-3/+3
|
* Use std::forward_list for breakpoint and registerpoint lists (nw) AJR2019-09-102-40/+13
|
* (nw) Clean up the mess on master Vas Crabb2019-03-262-2/+2
| | | | | | | | | | | | | This effectively reverts b380514764cf857469bae61c11143a19f79a74c5 and c24473ddff715ecec2e258a6eb38960cf8c8e98e, restoring the state at 598cd5227223c3b04ca31f0dbc1981256d9ea3ff. Before pushing, please check that what you're about to push is sane. Check your local commit log and ensure there isn't anything out-of-place before pushing to mainline. When things like this happen, it wastes everyone's time. I really don't need this in a week when real work™ is busting my balls and I'm behind where I want to be with preparing for MAME release.
* Revert "conflict resolution (nw)" andreasnaive2019-03-252-2/+2
| | | | | This reverts commit c24473ddff715ecec2e258a6eb38960cf8c8e98e, reversing changes made to 009cba4fb8102102168ef32870892438327f3705.
* Qt debugger: fix error in determining where clicks are in debugger views ↵ goldnchild2019-03-041-1/+1
| | | | [Golden Child] (#4705)
* Qt debugger: fix error in determining where clicks are in memory views ↵ R. Belmont2019-02-271-1/+1
| | | | [Golden Child]
* Remove running_machine::device() call in QT debugger (nw) AJR2018-07-071-1/+1
|
* Revert "Attempted fix for QT debugger (nw)" Vas Crabb2017-08-011-2/+2
| | | | This reverts commit d8b1cb0191e530180995c5c9f0cb890cf96cf95c.
* Attempted fix for QT debugger (nw) AJR2017-08-011-2/+2
|
* dimemory: Lift the cap on the number of address spaces per device [O. Galibert] Olivier Galibert2017-07-031-1/+1
|
* Remove emu.h from headers (nw) Olivier Galibert2017-02-1110-1/+9
| | | | | | | | | | | | Per Vas' request. If the compile fails for you (i'm thinking osx and windows native debuggers here in particular), add '#include "emu.h"' as first include of the cpp files that fail. Due to our use of precompilation and forced inclusion, emu.h must be included as the very first non-comment thing we do if we want to be sure msvc compiles are identical to gcc/clang ones. Doing it directly instead of through an include increases the correctness probability by a magnitude.
* XML refactoring: Vas Crabb2016-12-1116-32/+32
| | | | | | | * move stuff to namespace util::xml * scope down some enums * split config load/save delegate types * make config load take const so it can't mangle data
* patch up Qt debugger for new xmlfile API (nw) Vas Crabb2016-11-1716-62/+62
|
* NOTICE (TYPE NAME CONSOLIDATION) Miodrag Milanovic2016-10-223-5/+5
| | | | | Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8 also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
* Fix Qt debugger Vas Crabb2016-08-011-1/+1
|
* std::min and std:max instead of MIN and MAX, also some more macros converted ↵ Miodrag Milanovic2016-07-312-3/+3
| | | | to inline functions (nw)
* Fix keyboard shortcus for disassembly comments pane [Vas Crabb] Vas Crabb2016-06-092-2/+2
| | | | | | * Win32 previously recognised Ctrl+N but menu incorrectly showed Ctrl+M * Qt showed Ctrl+C but it was swallowed by text editing and didn't work * Ctrl+N is now shown/used by Win32 and Qt (matches Cmd-N on OS X)
* Major refactoring of debugger core [Ryan Holtz] therealmogminer@gmail.com2016-06-084-29/+29
| | | | | | | | * Eliminate globals/file statics * Remove lots of stuff from global scope * Use std::function for custom command registration * Eliminate some trampolines * Build fixes from Vas Crabb and balr0g
* Various cleanups suggested by static analyzer (nw) Miodrag Milanovic2016-04-2418-52/+52
|
* Iterate over devices C++11 style AJR2016-04-182-13/+5
| | | | | | Replace the old device_iterator and its specialized versions with functionally equivalent classes that use standard operators to yield references to devices/interfaces rather than pointers. With range-based for loops, they no longer have to be stored in named variables, though they can also be reused concurrently since the iteration state is now maintained by a subclass. Add a few more typical getters to device_t::subdevice_list.
* fix clang complain (nw) Miodrag Milanovic2016-03-311-1/+4
|
* Iterate over core classes C++11 style AJR2016-03-314-12/+8
| | | | | | | | C++11 range-based for loops can now iterate over simple_list, tagged_list, core_options, device_t::subdevice_list, device_t::interface_list, render_primitive_list and all subclasses of the above, and much code has been refactored to use them. Most core classes that have these lists as members now have methods that return the lists themselves, replacing most of the methods that returned the object at an owned list's head. (A few have been retained due to their use in drivers or OSD.) device_t now manages subdevice and interface lists through subclasses, but has given up the work of adding and removing subdevices to machine_config. memory_manager has its tagged lists exposed, though the old rooted tag lookup methods have been removed (they were privatized already).
* Replace strformat, strprintf and strcatprintf with type-safe steam_format ↵ Vas Crabb2016-02-281-11/+7
| | | | | | | | | and string_format Update MAME to use new function Instantiate ODR-used static constant members Make some of the UI code more localisable Remove use of retired functions in tools
* reverting: Miodrag Milanovic2016-01-203-6/+6
| | | | | | | SHA-1: 1f90ceab075c4869298e963bf0a14a0aac2f1caa * tags are now strings (nw) fix start project for custom builds in Visual Studio (nw)
* Revert "fixed qt build (nw)" Miodrag Milanovic2016-01-203-7/+7
| | | | This reverts commit a23a0abc768c2a56bc50195ca0379bfe6d3e95cb.
* fixed qt build (nw) Miodrag Milanovic2016-01-163-7/+7
|
* tags are now strings (nw) Miodrag Milanovic2016-01-163-6/+6
| | | | fix start project for custom builds in Visual Studio (nw)
* put debug_view back in machine due to issues with QT (nw) Miodrag Milanovic2016-01-122-5/+4
|
* Fix linux compile Miodrag Milanovic2016-01-122-1/+2
|
* created debugger_manager, now this one owns debug_view_manager (nw) Miodrag Milanovic2016-01-122-6/+6
|
* remove usage of NO_MEM_TRACKING macro (nw) Miodrag Milanovic2016-01-089-18/+0
|
* qt5 debugger port [O. Galibert] Olivier Galibert2015-12-2718-176/+109
|
* Show 64 and 80 bit floats in windows and qt debugger (issue #476) yz70s2015-12-061-1/+22
|
* Show 32 bit floating point values in qt debugger memory view (issue #476) yz70s2015-11-302-42/+67
| | | | Since i was at it also 8 byte chunks
* First commit for issue #476 yz70s2015-11-301-4/+4
| | | | | | | | | "byte per chunk" is sostituted by "data format" data formats lesser than 9 work as before, data format 9 is 32 but floating point in the debug_view_memory class method bytes_per_chunk is substituted by get_data_format, set_bytes_per_chunk is substituted by set_data_format floating point values cannot be edited currently floating point values are available only in the windows debugger, next commit will add them to the qt debugger, osx i won't be able to do it afterwards 64 and 80 bit formats will be added
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-089-0/+0
|
* Revert "debugqt: Port to Qt5 [O. Galibert]" Olivier Galibert2015-08-0118-109/+176
| | | | | Experience shows it's too early for that. I'll keep that in a corner and we'll see again later.
* debugqt: Port to Qt5 [O. Galibert] Olivier Galibert2015-07-2918-176/+109
|
* did license settings for OG and Andrew, cleared up OSD part for licenses (nw) Miodrag Milanovic2015-05-0918-36/+36
|
* Added license headers to the rest of files (nw) Miodrag Milanovic2015-05-0718-0/+36
|